時間:2023-07-08|瀏覽:270
·數(shù)字貨幣(數(shù)字人民幣、加密貨幣) ·通證(即“token”,暫且理解為一種代幣) ·區(qū)塊鏈+行業(yè)(溯源鏈、供應鏈金融、存證鏈.......)
那么,它們都是如何實現(xiàn)的呢?
換湯不換藥,其實任何的區(qū)塊鏈應用場景,都是基于區(qū)塊鏈架構,由底層技術開發(fā)到應用層,進行層層嵌套、封裝實現(xiàn)的。
數(shù)據(jù)層參考如下文章:
《五分鐘看懂區(qū)塊鏈的數(shù)據(jù)層》,文章都很通俗易懂,需要耐心點花費點時礦幣間去看。如有疑問之處,歡迎在線留言,探討交流。今天繼續(xù)拆解網(wǎng)絡層。
網(wǎng)絡層
區(qū)塊鏈的網(wǎng)絡層,作用是節(jié)點之間的信息交流和傳遞,參與區(qū)塊數(shù)據(jù)的校驗和記賬過程。
這句話很好理解,“A給B轉賬十塊錢”,通過網(wǎng)絡層的點對點傳播到其它節(jié)點上,節(jié)點再驗證交易的有效性,從而存儲交易信息。
P2P網(wǎng)絡
即點對點傳輸,節(jié)點地位對等。
傳播機制
按照區(qū)塊鏈系統(tǒng)中規(guī)定的某種協(xié)議進行傳播。以比特幣為例,它的傳播機制是這樣的:
1.A給B轉賬了10個比特幣,然后向全網(wǎng)廣播交易信息; 2.鄰近節(jié)點C收到了交易信息后,把這塊信息暫存到一個存儲池中,驗證有效后,再繼續(xù)向旁邊節(jié)點傳播這則交易信息...(參考下面的驗證機制); 3.然后收到了交易信息的節(jié)點C們,基于自身算力在區(qū)塊中找到一個具有足夠難度的工作量證明; 算力:計算機CPU計算哈希函數(shù)的輸出速度。 哈希函數(shù)H接受任意但有限大小的消息x并輸出固定大小的哈希值h,即h=H(x)。h1與h2的字符長度是一樣,每一個x,對應唯一的哈希值h。 x1=A轉賬10塊錢給Bh1=a3fc27b01sakhsg x2=A轉賬了10塊錢給Bh2=c6804n57s3p8dh 算力就是求解隨機數(shù)的速度。假設一個隨機數(shù)的值,然后再通過工作量證明驗證這個值的正確性。只能通過試錯碰撞去求解,官方稱為哈希碰撞。 挖礦每秒鐘做多少次的哈希碰撞(單位hash/s),就是其“算力”,也叫工作量證明機制POW。 這就好比,用無數(shù)把鑰匙去開同一扇門,只有試過所有的可能性,才能找到解開這扇門的鑰匙。 4.當某一節(jié)點C先找到區(qū)塊的工作量證明后,就向全網(wǎng)廣播這個區(qū)塊; 5.其它節(jié)點接受該數(shù)據(jù)區(qū)塊,并在該區(qū)塊的末尾制造新的區(qū)塊記錄下一筆交易信息。而且把這個區(qū)塊的哈希值則按照接受順序為新數(shù)據(jù)建立存儲池以暫存尚未記入?yún)^(qū)塊的有效數(shù)據(jù)。 ·無效,廢棄該數(shù)據(jù),從而保證該數(shù)據(jù)不會繼續(xù)在區(qū)塊鏈網(wǎng)絡中繼續(xù)傳播。 (結合文章來理解此圖)
以比特幣為例: 節(jié)點C們會收集和驗證比特幣系統(tǒng)廣播中尚未存儲的交易數(shù)據(jù); 按照預定義的標準去驗證數(shù)據(jù)有效性,比如從數(shù)據(jù)結構、語法規(guī)范性、數(shù)字簽名等各方面; 節(jié)點再對存儲池的有效交易數(shù)據(jù),完成工作量證明后,存儲到自己當前的數(shù)據(jù)區(qū)塊中,再產(chǎn)生新的區(qū)塊; 當新的區(qū)塊產(chǎn)生后,其它節(jié)點會按照預定義標準來驗證改區(qū)塊是否包含足夠工作量證明、時間戳是否有效等... 如果有效,其它節(jié)點會將該區(qū)塊鏈接到區(qū)塊鏈上,并開始下一個區(qū)塊... 正是通過這樣的傳播機制和驗證機制,才組成了一個層層嵌套、永不停歇的區(qū)塊鏈系統(tǒng)。待續(xù)....