本系列內容包含:基本概念及原理、密碼學、共識算法、錢包及節點原理、挖礦原理及實現。
挖礦
以比特幣網絡為例,比特幣挖礦主要使用到的算法是SHA-256,其具體流程參見下圖。
我們從上往下進行分析:
第一層是:nVersion;
第二層是:hashPrebBlock;
第三層是:hashMerkleRoot,
第四層是:nTime;
第五層是:nBits;
第六層是:nNonce;
第七層是:Hash。
三星美國公司與veritree合作使用區塊鏈植樹200萬棵:1月4日消息,三星電子美國公司周一在拉斯維加斯舉行的 CES 技術會議上宣布,它與基于區塊鏈的氣候解決方案平臺 veritree 建立合作伙伴關系,將在未來三個月內在馬達加斯加種植 200 萬棵紅樹。 veritree 使用區塊鏈技術來管理重新造林過程并驗證種植的每棵樹。該植樹計劃是三星基于自然的環境可持續性行動計劃的一部分,特別是從大氣中捕獲和隔離二氧化碳 (CO2)。 目標是在 25 年內恢復大約 200 公頃的土地并封存大約 10 億磅的二氧化碳。(Cointelegraph )[2022/1/4 8:23:10]
里面的n代表連續0的個數,該值要小于當前區塊難度目標值m,挖到塊的條件是前n個比特位全部為0,n越大,難度越大。假設最低難度對應最大目標值為M,則區塊難度為:M/m
聲音 | 浩云科技:與廣州大學共建的公共安全智能研究院有區塊鏈相關技術:浩云科技(300448.SZ)在互動平臺上表示,公司和廣州大學共建的公共安全智能研究院有相關的區塊鏈技術,其中,廣州大學在物聯網、區塊鏈關鍵算法、安全問題方面都有比較深入的研究;浩云在物聯網平臺、綜合解決方案方面有深刻的技術積累。目前雙方可以結合各自優勢,在物聯網+區塊鏈方面進行深入布局,就解決物聯網環境下海量設備、數據的管理、信任機制、信息安全、隱私方面問題提出新的思路。[2019/11/18]
看過前面課程的朋友應該會有印象,這些全部是區塊頭中的數據字段。
再來看左邊,我們分析一下為什么其中有些是固定而有些是可變的。
1.版本號和前一個區塊哈希是固定的,以比特幣為例,假設當前比特幣區塊高度為N,如果某人想挖接下來N+1區塊的話,那么這個時候版本號必須是固定的,前一個區塊的哈希必須也是固定的。因為在不存在分叉的情況下,當前區塊包含上一個區塊的哈希值;
聲音 | 人大代表胡冶:區塊鏈技術增加了食品安全追溯系統的信用度:據現代物流報消息,近日,全國人大代表、江蘇省質量和標準化研究院物聯網標準化研究所所長胡冶接受采訪時表示,區塊鏈是“分布式記賬”,區塊鏈技術的提升增加了食品安全追溯系統的信用度,保障從生產源頭到消費終端的順向追蹤以及從消費終端到生產源頭的逆向回溯的可靠性。電子貨幣就是區塊鏈的應用,區塊鏈技術在金融領域能應用,在信息領域也能應用,目前“區塊鏈加追溯鏈形成信任鏈”成為研究所工作的重點領域。[2019/3/21]
也就是N-1區塊的哈希值加上N區塊數據算出N區塊哈希值,然后將N區塊哈希值當成N+1區塊的的前一區塊哈希值。這里有點繞,希望大家多理解一下;
2.交易Merkle根是可變的,為什么說可變呢?因為在挖礦的時候,肯定會準備一個打包區塊,打包區塊形成的時候,礦工會根據自己的需求或根據利益算法,將交易打包進去,最后整理成一個Merkle根;
聲音 | 李國慶:區塊鏈對我最大的啟發是它的經濟制度:金色財經訊,今日,水晶CRYSTO公鏈創始人&CEO馬銘澤與水晶CRYSTO生態讀書會DAPP創始人&CEO李國慶在水晶社群進行了對話,并接受了包括金色財經在內的媒體訪談。李國慶表示,一個社會的進步,要么是偉大經濟制度的誕生,要么是重大的技術革新。區塊鏈對我最大的啟發是它的經濟制度,區塊鏈構建的經濟制度是多中心化,讓社群的參與者共商共建共享。在知識領域讓作者、篩選者、傳播者、用戶都成為社群的參與者,在讓他們有利可圖的同時讓他們參與到治理,當然是代議制的治理,這樣用戶跟平臺就不是博弈關系,而是成為了平臺的一份子,這就是我說的偉大實踐。[2019/2/22]
3.時間戳是可變的,挖礦有個時間范圍,在這個時間范圍內挖出的礦都為有效,所以在有效時間內的時間是可以任意調節的;
4.難度值在一定周期內是固定的,會隨著周期的改變而變化;
5.Nonce是可變的,這里就不展開講了,忘記的朋友可以翻閱前面的講解。
在挖礦的時候,到Nonce的時候,由于時間戳和Merkle根都已經經過計算固定了,這時只需要改變Nonce就可以了。此時可以把這7個數據看成一個整體,前面6個數據是X,把X放在哈希函數里面,會出來一個值,比如說Y值。
由于比特幣網絡里使用的哈希算法是SHA-256,當Y值出來之后,就會得到一個256個由0和1組成的字符串。這個字符串出來之后,它會和X里面的難度值比較大小。
每計算一次,也就是通過了一個Nonce,就會產生一個Y值,Y值會和難度值比較大小,如果Y值小于難度值,此時就找到了一個有效的Nonce,礦也就挖出來了。
生成地址
地址的生成中也用到了哈希算法。從下圖可以看到從公鑰到比特幣地址生成的流程。
第一層:生成公鑰;
第二層:兩層哈希算法,SHA-265和RIPMD-160;
第三層:然后雙層哈希計算,會產生公鑰哈希;
第四層:Base58Check編碼;
第五層:經過編碼,得到一個編碼串,這個編碼串就是公鑰哈希即比特幣地址。
形成Merkletree和交易Hash
在默克樹樹結構和形成交易哈希里面也使用到了哈希算法。
上圖的默克樹中,最底層有4個葉子節點,最左邊HA下面有個Hash,意思是:Tx表示交易,A表示交易編號。
假設現在使用的哈希算法是SHA-256,那么交易產生時,會對HA、HB分別進行哈希計算,會分別得到2個由256個0和1組成的字符串。同理,HC、HD也會得到相應的字符串,這樣四個交易會形成總的默克爾根。
區塊鏈
大家都知道在區塊鏈中,每個區塊都是一環套一環銜接上去的,就像一個鏈條一樣。我們通過下面的圖片,具體分析一下。
從圖中可以看出鏈的順序是從下往上增長的,最下面塊的高度是277314,這個區塊里面包含上一個區塊的哈希值:0000…0bdf,這里的0000…0bdf是上一個區塊區塊頭的哈希值。
同理,277315區塊里面包含的上一區塊頭哈希值:0000…2249,也是區塊277314的區塊頭哈希值,即:0000…2249。同理277316區塊也是這樣的情況,這也是我們第一節希望大家多理解的問題。
這樣的情況就保證了任何人可以從某一個區塊中,找到這個區塊里面包含的上一區塊的哈希值,也就是其父區塊。
現在我們討論的問題都是針對于區塊鏈沒有分叉的一個情況,到后面我們詳細分析區塊鏈分叉之后情況又是怎樣的。
通過這三個區塊我們能發現,從某種程度上來說區塊鏈就是一個哈希鏈。最新產生的區塊通過哈希值指向上一個區塊,上一個區塊在指向上上一個區塊……一直指向創世區塊。通過這個關系,這些區塊形成了鏈條,也就是我們常說的區塊鏈。
這是哈希算法在區塊鏈中常用到的具體應用,大家可以預先想一下,為什么區塊鏈中會使用哈希算法,而不是其他算法呢?后面的課程我們會給大家進行解答。
下節預告:什么是哈希
Tags:區塊鏈比特幣NCEONC區塊鏈運用的技術中不包括哪一項基本技術比特幣暴跌要完了Lanceriapigeoncoin
前言:7月30日,北京互聯網法院作出宣判,認定抖音、微信讀書兩款App均有侵害用戶個人信息的情形。隨著個體對數據隱私的敏感度越來越高,此類案件也越來越受關注.
1900/1/1 0:00:00轉自:MYKEY?LAB作者:蔣海波,MYKEY研究員為幫助加密市場參與者對穩定幣發展狀態保持更新,我們推出MYKEY穩定幣報告,分享我們對穩定幣發展狀態的解讀、對其發展趨勢的分析.
1900/1/1 0:00:00今年5月,在成都舉辦的礦業大會上,園區電成為會上大家討論的熱點話題之一,今年的豐水期已經過半,知礦大學邀請了兩位不愿透露姓名的礦圈大佬進行了訪談.
1900/1/1 0:00:00據比推數據,市值最高的加密貨幣比特幣北京時間周一午間上行突破12000美元,但是好景不長,在創下一年內高點之后急跌,迅速回落至11500美元上方.
1900/1/1 0:00:00本文來源:第一財經網,作者:綦曉光?林益松?蘇京春,原題《航運+區塊鏈:抗疫危中有機》全球新冠肺炎疫情累計確診病例突破2000萬,為拯救重創的經濟,多國近日開啟帶疫重啟模式.
1900/1/1 0:00:00本文原發于“彩云區塊鏈” 作者:cncoin 最近在AI領域出了一件比較轟動的新聞,就是一個名為OpenAI團隊做了GPT-3的AI模型,使用1750億參數,投喂了45T的數據.
1900/1/1 0:00:00