.區塊鏈使用場景算法
#登記、清算系統數據庫
下降帳本維護成本,下降結算成本編程
#智能合約安全
合約公開透明,下降合約的創建、執行、仲裁等成本網絡
#拓展…架構
.分層分佈式
#應用層:可編程貨幣/金融/社會 (智能合約)區塊鏈
#數據層:公共總帳本/共識算法/密碼學spa
#網絡層:P2P網絡、TCP/IP協議接口
.架構特色
#去中心化:全部節點都有同等權利和義務
#可靠數據庫:任意節點都有完整數據庫,一半以上的算力才能對數據進行修改
#開源可編程:數據和程序公開,可經過接口查詢數據;提供腳本支持系統,支持智能合約
#集體維護:個體損壞不影響總體
#安全可信:
非對稱密碼學原理對交易數據進行簽名,防止交易僞造
hash算法保證交易不可輕易被篡改
各節點共識算法(如:工做量證實)造成強大算力,抵制攻擊
#交易準匿名:
用戶只需公開地址,無需公開真實身份
同一用戶能夠不斷變換地址
.共識機制
#一、pow(工做量證實)
還沒有記錄的現有交易打包到一個區塊+經過遍歷生成隨機數的hash值,
若知足必定難度,則獲取了區塊鏈本輪記帳權,並廣播出去,
全網其它節點驗證挖礦難度+交易數據,加入此區塊到本身的鏈。
##優勢:
去中心化、節點自由進出;
攻擊者算力不超過總算力的50%就能夠保證安全;
##缺點:
挖礦形成大量資源浪費;
挖礦的激勵機制形成礦池算力高度集中,違背去中心化理念;
此機制達成共識時間週期長(7筆交易/秒),不適合商業應用;
#二、pos(權益證實)
節點提供擁有必定數量的代幣證實來獲取競爭區塊鏈的記帳權。
避免中心化:會在pos機制基礎上,採用其餘方式來增長隨機性
##優勢:
縮短共識機制時間,下降pow機制造成的資源浪費
##缺點:
攻擊的成本低,網絡安全有待驗證;
代幣多的節點得到記帳權概率更大,失去公正性
#三、dpos(股份受權證實)
a、持股者投票選出必定數量的見證人
b、見證人按序在兩秒內生成區塊,若生成失敗需交給下一見證人
c、持股人能夠隨時投票更換見證人
##優勢:
大幅度縮少了參與驗證和記帳的節點
秒級快速共識
##缺點:
固定數量的見證人進行記帳不適合徹底去中心化場景;
在節點較少的場景下,選舉的見證人表明性弱
#四、分佈式一致算法
基於傳統的分佈式一致性技術;
適用於聯盟鏈和私有鏈;
pbft(拜占庭容錯算法)/paxos/raft
##優勢:
秒級快速共識,保證一致性
##缺點:
去中心化程度弱於公有鏈共識機制;
適用於多方參與的多中心商業模式;
.交易流程
#交易建立:全部者A用私鑰對前一次交易和下一全部者B簽署數字簽名,把此簽名附加到貨幣末尾,製做成交易單
#交易傳播:A將交易單廣播,每一個節點把交易信息歸入一個區塊中
#工做量證實:節點進行計算,得到建立區塊的權利,並獲取相應獎勵
#網絡節點驗證:某一節點找到解,把全部交易廣播至網絡中,由其它節點進行驗證
#記錄區塊:區塊經過驗證後記錄到區塊鏈中,繼續進行下一區塊的競爭
【完】