摘要:在比特幣白皮書中,有三段話很關鍵的話,解釋了交易是什么。電子貨幣從所有者轉移給下一個人是通過,所有者使用私鑰,對交易和下一個人的公鑰進行數(shù)字簽名,并將數(shù)字簽名附在這枚電子貨幣數(shù)字簽名鏈的后面。
在比特幣白皮書中,有三段話很關鍵的話,解釋了交易 Transactions 是什么。
雖然數(shù)字簽名(Digital signatures)部分解決了電子現(xiàn)金系統(tǒng)的問題,但是仍然需要第三方的支持才能防止雙重支付(double-spending)的話,那么這種系統(tǒng)也就失去了存在的價值。
將一枚電子貨幣定義為數(shù)字簽名鏈( a chain of digital signatures)。電子貨幣從所有者轉移給下一個人是通過,所有者使用私鑰,對交易 Transactions 和下一個人的公鑰進行數(shù)字簽名 digital signatures,并將數(shù)字簽名附在這枚電子貨幣(數(shù)字簽名鏈)的后面。收款人對數(shù)字簽名進行檢驗,就能校驗自己是否收到了電子貨幣。
在每一筆交易 Transactions 結束后,這枚電子貨幣就要被造幣廠回收,而造幣廠將發(fā)行一枚新的電子貨幣;而只有造幣廠直接發(fā)行的電子貨幣,才算作有效,這樣就能夠防止雙重支付 double-spend。
第一段話,講清楚了誕生的電子貨幣交易的土壤是數(shù)字簽名。
第二段話,講清楚了比特幣中的電子貨幣是什么、如何交易的原理。
第三段話,講清楚了比特幣創(chuàng)建和銷毀電子貨幣流程,保證電子貨幣唯一。
數(shù)字簽名在密碼學上,喜歡用 Alice 和 Bob 兩個虛擬人物來舉例的。Alice 代表路人 A,Bob 代表路人 B。后文會經(jīng)常用到。
在現(xiàn)實世界中,交易達成基于的是文字形式的簽名。比如,Alice 給一張 "Alice 給 Bob 的 100 元" 的支票簽名后,并把通過秘書,將這張簽名后的支票給了 Bob, Bob 找專家驗證簽名無誤后,確認了本次交易。在互聯(lián)網(wǎng)上,交易達成基于的是數(shù)字簽名。
數(shù)字簽名(digital signatures)是基于非對稱加密實現(xiàn)的。先來看下維基百科關于非對稱加密的定義:
非對稱加密(asymmetric cryptography),是密碼學的一種算法,它需要兩個密鑰,一個是[公鑰](),另一個是[私鑰]();一個用作加密的時候,另一個則用作解密。使用其中一個密鑰把明文加密后所得的密文,只能用相對應的另一個密鑰才能解密得到原本的明文;甚至連最初用來加密的密鑰也不能用作解密。
數(shù)字簽名是非對稱加密的一種應用方式。數(shù)學上,可以通過一個簡單公式來表示,整個數(shù)字簽名的大概流程如下:
hash: x = hash(data) send: c(x) and data ------- network ------- receive: c(x) and data verify: d(c(x)) = x = hash(data)
Alice 需要轉 100 元電子貨幣給 Bob。Bob 需要一種手段,驗證該交易是來自 Alice,且 Alice 不能抵賴。
Alice 寫好交易信息 data: Alice 給 Bob 100 元電子貨幣。
Alice 使用哈希算法生成交易信息的哈希值 x = hash(data)。
Alice 通過通過隨機數(shù)生成器生成一對秘鑰,其中一個作為公鑰 d,一個作為私鑰 c。
Alice 使用私鑰 c 對交易信息 x 進行簽名,得到數(shù)字簽名 c(x)。
Alice 使用互聯(lián)網(wǎng)將數(shù)字簽名 c(x) 和交易信息 data 傳遞給 Bob。
Bob 使用公鑰 d,對數(shù)字簽名進行解密 d(c(x)) 得到交易信息哈希值 x。
Bob 用公鑰 d 解密數(shù)字簽名 c(x) 的值得到交易信息的哈希值 x。
Bob 用哈希算法生成交易信息的哈希值 hash(data)。
如果 Bob 生成的交易信息的哈希值 hash(data) 等于 Alice 生成的交易信息的哈希值 x ,那么 Alice 擁有私鑰,否則 Alice 沒有私鑰。
如果 Alice 抵賴,任何人都可重復 Bob 的校驗步驟,并確認交易 data:Alice 給 Bob 100 元電子貨幣。
電子貨幣那么如何定義這 100 元的電子貨幣呢?回到比特幣白皮書。
將一枚電子貨幣定義為**數(shù)字簽名鏈**( a chain of digital signatures)。電子貨幣從所有者轉移給下一個人是通過,所有者使用私鑰,對交易 Transactions 和下一個人的公鑰進行數(shù)字簽名,并將數(shù)字簽名附在這枚電子貨幣(數(shù)字簽名鏈)的后面。收款人對數(shù)字簽名進行檢驗,就能校驗自己是否收到了電子貨幣。
在比特幣源碼中,將電子貨幣定義為數(shù)字簽名鏈,只要 Alice 在電子貨幣后簽名,就相當于這枚電子貨幣屬于了 Bob。這個過程基于的就是前面提到的數(shù)字簽名。
到現(xiàn)在為止,基本已經(jīng)把比特幣交易的整體思路講清楚了。還有很多細節(jié)問題,要深入到源碼層面去講,比如
如何把電子貨幣分割?比如,Alice 給 Bob 100 元,Bob 要找給 Alice 90 元。
如何把電子貨幣整合起來?比如,Alice 有兩個 50 元電子貨幣,想換成一個 100 元的電子貨幣。
如何統(tǒng)計現(xiàn)存有效的電子貨幣?比如,Alice 和 Bob 分別有多少電子貨幣。
如何創(chuàng)建、銷毀電子貨幣?比如,Alice 支付給了 Bob 100 元,交易結束后那么 Alice 的電子貨幣就要被銷毀,而 Bob 的電子貨幣需要被創(chuàng)建。
文章版權歸作者所有,未經(jīng)允許請勿轉載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/23956.html
摘要:側鏈側鏈協(xié)議允許資產在比特幣區(qū)塊鏈和其他區(qū)塊鏈之間互轉。實現(xiàn)了比特幣區(qū)塊鏈的擴展證明在比特幣系統(tǒng)中驗證交易時,涉及交易合法性檢查雙重花費檢查腳本檢查等。 比特幣項目簡介 比特幣是基于區(qū)塊鏈技術的一種數(shù)字貨幣實現(xiàn),比特幣網(wǎng)絡是歷史上首個經(jīng)過大規(guī)模、長時間檢查的數(shù)字貨幣系統(tǒng) 比特幣網(wǎng)絡在功能上具有如下特點: 去中心化: 意味著沒有任何獨立個體可以對網(wǎng)絡中的交易進行破壞,任何交易請求都需要...
摘要:作為加密數(shù)字貨幣的開山鼻祖,比特幣合理的激勵機制設計是它成功的重要因素。目前比特幣的區(qū)塊獎勵是。目前的號提案計劃將基礎獎勵調整至。在的共識機制中,所有的區(qū)塊被保留了下來。但這樣的策略為激勵設計帶來了巨大的挑戰(zhàn)。 showImg(https://segmentfault.com/img/remote/1460000017789191?w=893&h=380); 在比特幣系統(tǒng)中,為了保證...
摘要:作為加密數(shù)字貨幣的開山鼻祖,比特幣合理的激勵機制設計是它成功的重要因素。目前比特幣的區(qū)塊獎勵是。目前的號提案計劃將基礎獎勵調整至。在的共識機制中,所有的區(qū)塊被保留了下來。但這樣的策略為激勵設計帶來了巨大的挑戰(zhàn)。 showImg(https://segmentfault.com/img/remote/1460000017789191?w=893&h=380); 在比特幣系統(tǒng)中,為了保證...
閱讀 2081·2021-11-24 09:39
閱讀 1536·2021-10-11 10:59
閱讀 2489·2021-09-24 10:28
閱讀 3367·2021-09-08 09:45
閱讀 1263·2021-09-07 10:06
閱讀 1657·2019-08-30 15:53
閱讀 2056·2019-08-30 15:53
閱讀 1411·2019-08-30 15:53