區塊鏈技術原理
以位元幣的區塊鏈為例,你可以把區塊鏈想象成乙個位元幣的公共賬本,這個賬本:
1.存放在網際網路的各個位元幣節點上,每個節點都有乙份完整的備份
2.裡面記錄著自位元幣誕生以來的所有位元幣轉賬交易
3.賬本是分割槽塊儲存的,每一塊包含一部分交易記錄。
每乙個區塊都會記錄著前一區塊的id,形成乙個鏈狀結構,因而稱為區塊鏈
4.當你要發起一筆位元幣交易的時候只需把交易資訊廣播到p2p網路中,礦工把你的交易資訊記錄成乙個新的區塊連到區塊鏈上,交易就完成了。
這裡有幾個問題:
1.如何保證使用者有足夠的餘額,例如你只有十個幣,而你居然發起了一筆轉20個幣的交易怎麼辦。
這個問題很好解決,因為區塊鏈上記錄了所有的位元幣交易記錄,只需要回溯所有的和你賬戶相關的歷史交易就能知道你這個賬戶上到底有多少餘額,餘額不對礦工是會拒絕記錄你的交易的。
由此你可能又會產生乙個疑問,那麼最初的位元幣是從**來的呢?
最初的位元幣是由系統獎勵給記錄區塊的礦工的。每乙個區塊在生成的時候就會在生成這個區塊的礦工的賬戶上生成一定數量的新位元幣作為獎勵。
2.如何保證你的賬戶不被冒名頂替
這問題也很好解決,用數字簽名技術就好了。每個位元幣賬戶都有公鑰和私鑰。你發起交易的時候用私鑰對交易資訊簽名,礦工收到資訊後用公鑰檢查一下簽名就好了。
3.那麼多礦工,如何決定該由哪個礦工生成下乙個區塊?
解決方案是這樣的:
中本聰設計了乙個數學問題,這個數學問題會耗費大量的計算機cpu時間才能得出答案,同時每一次得出的答案都會作為下一次計算的初始條件進行技術。全世界的礦工一起來計算這個問題,誰先得出答案,他就可以用這個答案生成乙個新的區塊,再廣播到網路中。收到這個新塊資料的礦工會立即停止當前的計算,用新塊裡的資料重新進行下一次計算。這就是所謂的「挖礦」。礦工產生的區塊一旦被網路接受,他就能獲得一筆位元幣作為酬勞。
這時要考慮一種情況:如果同時有兩個礦工各自得到乙個正確答案,並各自生成了乙個區塊廣播出去會發生什麼呢?
這時候在區塊鏈上同乙個位置就有了兩個區塊,所謂的「分叉」就出現了。
分叉是絕對不允許的,所以當礦工發現區塊鏈分叉之後,會選擇最長的一條繼續計算,短的那條區塊鏈會被丟棄。
仔細思考下這個體系,你會發現它幾乎無懈可擊。首先你不能憑空造出位元幣,只能挖礦獲得;其次你無法偽造交易,無法控制不屬於你的賬戶。一旦交易被確認,幾乎無法取消。我這裡說「幾乎」,是因為有「51%攻擊」的存在。51%攻擊條件非常苛刻,這裡就不擴充套件開講了。感興趣的朋友可以自行查閱相關資料。
好吧,現在你應該大概明白了區塊鏈是怎麼回事。乙個公開透明的可信賴的帳務系統,聽起來還不錯,是吧? 不過,我想告訴你區塊鏈遠遠不止是乙個帳務系統那麼簡單,它的意義之重大、用途之廣泛,一旦你意識到,你一定會像我一樣激動萬分的。
區塊鏈技術使得dac成為可能。dac是一種能夠從根本上顛覆人類社會組織模式的東西。我相信它對社會的影響,會超過工業革命,成為網際網路給世界帶來的最為深刻的變革。
區塊鏈技術原理
區塊鏈技術原理 我盡量不涉及太多細節,把區塊鏈大概的工作原理用盡可能簡單的語言描述一下,相信你能很快對區塊鏈有所了解。以位元幣的區塊鏈為例,你可以把區塊鏈想象成乙個位元幣的公共賬本,這個賬本 1.存放在網際網路的各個位元幣節點上,每個節點都有乙份完整的備份 2.裡面記錄著自位元幣誕生以來的所有位元幣...
區塊鏈技術原理
區塊鏈是什麼?區塊鏈 技術最初是由一位化名中本聰的人為位元幣 一種數字貨幣 而設計出的一種特殊的資料庫技術,它基於密碼學中的橢圓曲線數字簽名演算法 ecdsa 來實現去中心化的p2p系統設計。但區塊鏈的作用不僅僅侷限在位元幣上。現在,人們在使用 區塊鏈 這個詞時,有的時候是指資料結構,有時是指資料庫...
區塊鏈技術原理
區塊鏈技術 pos 以太坊將來會轉到pos,目前是pow。casper the friendly finality gadget ffg 過渡到pos前先增加 區塊鏈技術 以太坊共識協議和挖礦 基於ghost協議修改。由於以太坊出快快,15秒左右乙個,所以分叉會多,沒有合到主鏈上的分叉塊稱為orph...