struct block_header { //時(shí)間戳 block_timestamp_type timestamp; //哪個(gè)超級節點(diǎn)生產(chǎn)的區塊 account_name producer; //確認節點(diǎn)的數量 //默認自己是確認的 //達到15就是21節點(diǎn)的一多半,就不可逆了 uint16_t confirmed = 1; //指向前一個(gè)區塊 block_id_type previous; //EOS包含了兩個(gè)Merkel Tree的根 checksum256_type transaction_mroot; checksum256_type action_mroot; //版本號 uint32_t schedule_version = 0; //下一個(gè)producer是誰(shuí) optional<producer_schedule_type> new_producers; //擴展字段 extensions_type header_extensions; //指紋信息 digest_type digest()const; block_id_type id() const; uint32_t block_num() const { return num_from_id(previous) + 1; } static uint32_t num_from_id(const block_id_type& id); };
3.區塊結構并行化設計
允許多賬戶(hù)之間原子交易執行
EOS目標是使兩個(gè)賬戶(hù)能夠在同一個(gè)區塊內來(lái)回進(jìn)行交換的操作,不必為每次操作都等待0.5秒
定義區塊的文件位置:eos\libraries\chain\include\eosio\chain\block_header.hpp
只讀操作可以并行處理,寫(xiě)操作必須串行
如果2個(gè)節點(diǎn)比較不一樣,可以快速查找樹(shù)中哪個(gè)節點(diǎn)不一樣,能快速定位修改
超級節點(diǎn)自主優(yōu)化并行調度
EOSIO程序模塊圖
1.EOS核心框架介紹
EOS通過(guò)Merkle Tree做驗證,成本比比特幣低的多
架構圖
2.區塊結構
Merkel Tree:比較兩個(gè)節點(diǎn)數據是否同步,直接比較樹(shù)根是否一樣就可以,EOS節點(diǎn)數據是用Merkel Tree組織的
互相驗證時(shí),密碼學(xué)中叫零知識證明,比較Merkel Tree是否相同就可以
免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng )、來(lái)自本網(wǎng)站內容采集于網(wǎng)絡(luò )互聯(lián)網(wǎng)轉載等其它媒體和分享為主,內容觀(guān)點(diǎn)不代表本網(wǎng)站立場(chǎng),如侵犯了原作者的版權,請告知一經(jīng)查實(shí),將立刻刪除涉嫌侵權內容,聯(lián)系我們QQ:712375056,同時(shí)歡迎投稿傳遞力量。
Copyright ? 2009-2022 56dr.com. All Rights Reserved. 特網(wǎng)科技 特網(wǎng)云 版權所有 特網(wǎng)科技 粵ICP備16109289號
域名注冊服務(wù)機構:阿里云計算有限公司(萬(wàn)網(wǎng)) 域名服務(wù)機構:煙臺帝思普網(wǎng)絡(luò )科技有限公司(DNSPod) CDN服務(wù):阿里云計算有限公司 百度云 中國互聯(lián)網(wǎng)舉報中心 增值電信業(yè)務(wù)經(jīng)營(yíng)許可證B2
建議您使用Chrome、Firefox、Edge、IE10及以上版本和360等主流瀏覽器瀏覽本網(wǎng)站