比特幣完整節點錢包
1. 比特幣的數字錢包有哪些
冷錢包、熱錢包、全節點錢包、輕錢包、中心化錢包。
2. 比特幣錢包
比特幣(bitcoin)誕生於2008年的一篇論文。
一個署名為中本聰的人,提出了革命性的構想:讓我們創造一種不受政府或其他任何人控制的貨幣!這個想法堪稱瘋狂:一串數字,背後沒有任何資產支持,也沒有任何人負責,你把它當作錢付給對方,怎麼會有人願意接受?
Merkle tree
跟二叉樹長得很像,只是這個是下面兩個節點取哈希值得到上面節點。只需要記住根節點,就可以檢測整棵樹有沒有被篡改。
根哈希值存在block header里,交易過程存在block body里。全節點包括block header和block body,但是輕節點(比如手機上比特幣錢包)只包括block header。這棵樹可以證明包含某個交易已經被寫進了區塊鏈。
3.共識協議
去中心化的貨幣要注意的兩個問題:
1.誰能發行數字貨幣:挖礦。
2.怎麼驗證交易的合法性:區塊鏈。
雙花攻擊(double spending attack)
雙花攻擊是數字貨幣的一個主要挑戰。
比特幣中的交易都要有輸入和輸出,幣從哪來,花到哪去。
正常情況也可能有兩個分叉,因為兩個節點同時獲得記賬權,兩個節點打包的區塊,同時計算出了那個隨機數。此時會暫時兩個分叉共存,直到其中某一個區塊搶先找到了下一個區塊,這條就成了最長合法鏈,另一個分叉就被丟棄。
女巫攻擊(sybil attack)
某惡意節點不停產生賬戶,賬戶總數超過總賬戶的一半,則取得了區塊鏈的控制權。
比特幣中的共識協議(Consensus)
一些節點是有惡意的,大部分節點是好的。
想法1:把一些交易打包到區塊里作為候選區塊,讓每個區塊投票,如果通過就寫入區塊鏈。
不行,因為有的惡意節點一直發布一些含有惡意交易的區塊,則一直投票,佔用資源。而且有的節點不投票。
想法2:不按賬戶個數投票,而是按照計算力投票。每個節點都可以產生合法交易放入區塊,這些節點就開始試隨機數,直到找到H(block header)≤ target,則這個節點有記賬權。
唯一產生比特幣的途徑
coinbase transaction。這個不用指出幣的來源,有了記賬權的節點(找到了隨機數)會有出塊獎勵。
50BTC->25BTC->12.5BTC,每21萬個比特幣,獎勵就減半。
比特幣爭奪記賬權的過程叫挖礦。爭奪記賬權的節點叫礦工。
3. 比特幣錢包需要同步區塊數據,那數據量是不是很大
如果你想為比特幣網路作點貢獻,那麼運行一個要同步區塊數據的全節點是個不錯的選擇;如果你只是想用比特幣,完全不需要全結點錢包,只需安裝一個新錢包,國內比較好的是幣包。
4. 比特幣節點是什麼
那麼在說說節點是什麼?
節點是區塊鏈分布式賬本系統中的網路節點,通過網路連接伺服器、計算機等設備,不同性質的區塊鏈,成為節點的方式也不同,比如,比特幣是參與交易和挖礦,EOS是參與競選成為節點。
下面要說的就是什麼是比特幣全節點。
比特幣全節點就是通過載入比特幣比特幣客戶端(包括 BitcoinUnlimited版和bitcoincore版等), 下載並保全完整區塊鏈數據的節點。
因為區塊鏈交易網路的擁堵,作者通過調整廣播通信、信息加密解密、共識機制、交易驗證機制來解決問題,在整個比特幣的網路中,從礦工到普通用戶都可以看作是比特幣網路中的一個節點,但是因為比特幣具有多中心化的特點,在整個網路中其重要作用的是「比特幣全節點。」
5. 比特幣區塊鏈是1個比特幣就有一個區塊鏈嗎每個節點都有完整的區塊鏈數據嗎
比特幣區塊鏈是1個比特幣就有一個區塊鏈嗎? 不是,區塊保存交易的,前期你成功建立一個區塊會得到一個幣,後期只能得到交易所付出的費用。一枚貨幣是一串數字簽名,是上一個擁有的人發給接受者的數字簽名,所有人都可以從交易中看出誰擁有這枚貨幣。
每個節點都有完整的區塊鏈數據嗎? 你說的節點指的是一個用戶節點? 一個用戶節點需要保留最長的工作量證明鏈條的區塊頭的拷貝,所以是知道所有區塊頭的數據的可以向前推進知道所有區塊鏈上的數據,但是沒有全部保存下來。一個區塊頭是很小隻有80位元組,是完全能夠保存下來的,因為節點的生成是很慢的。就算隨著時間遷移現在來看量也不是太大的。
6. 全節點錢包、輕錢包分別是什麼東西啊
錢包有哪些分類呢?
前面我們知道了錢包的多種形態,也知道了錢包其實就是「私鑰、地址和區塊鏈數據的管理工具」。根據區塊鏈數據的維護方式和錢包的去中心化程度,我們可以把錢包分為:全節點錢包、輕錢包、中心化錢包。
全節點的代表是bitcoin-core 核心錢包,需要同步所有區塊鏈數據,佔用很大的內存,但是可以完全實現去中心化。輕錢包依賴比特幣網路上其他全節點,僅同步與自己相關的數據,基本可以實現去中心化。
中心化錢包不依賴比特幣網路,所有的數據均從自己的中心化伺服器中獲得,但是交易效率很高,可以實時到賬,你在交易平台注冊的賬號就是中心化錢包。
7. 為什麼比特幣的官方錢包需要更新大量數據,而輕量級
全節點需要保存所有數據 一般節點不需要
8. 比特幣在控制了超過全網路多少記帳結點下,可以偽造出一條不存在的記錄
比特幣的攻擊不是按照記賬點算的,是按照算力算的,當你控制超過51%算力的情況下,你可以 把任意已經完成的交易退回到交易前的姿態,但是不能偽造交易
假如:你有100塊比特幣,在賣掉後,等待記賬完成(得到一個完整的數據塊),這個時候你可以從交易前的 區塊上重新開始 計算 ,開一條新的區塊鏈,這個是你控制的算力大於其他人的算力,你新開的區塊鏈生成的速度要大於之前記錄你交易的區塊鏈的速度,由於區塊鏈的特性,當你新開是這個鏈長度超過 記錄你交易的鏈之後,你這個新的鏈將會是主鏈,之前記錄你交易的區塊會被拋棄,這個時候你就實現了修改交易
如果你真想偽造 交易的話需要掌握全部比特幣的錢包和記賬點,但是到了這個時候偽造不偽造也沒了意義
9. 比特幣錢包更新完所有節點後重新打開時一直掃描
沒事,把錢包文件(.wallet)拿出來,重裝一遍就可以了。你不登陸比特幣也會到賬的
10. 全節點錢包、輕錢包、中心化錢包有什麼區別
全節點的代表是bitcoin-core
核心錢包,需要同步所有區塊鏈數據,佔用很大的內存,但是可以完全實現去中心化。輕錢包依賴比特幣網路上其他全節點,僅同步與自己相關的數據,基本可以實現去中心化。中心化錢包不依賴比特幣網路,所有的數據均從自己的中心化伺服器中獲得,但是交易效率很高,可以實時到賬,你在交易平台注冊的賬號就是中心化錢包。