《區(qū)塊鏈技術(shù)及應(yīng)用》區(qū)塊鏈技術(shù)改進(jìn)_第1頁
《區(qū)塊鏈技術(shù)及應(yīng)用》區(qū)塊鏈技術(shù)改進(jìn)_第2頁
《區(qū)塊鏈技術(shù)及應(yīng)用》區(qū)塊鏈技術(shù)改進(jìn)_第3頁
《區(qū)塊鏈技術(shù)及應(yīng)用》區(qū)塊鏈技術(shù)改進(jìn)_第4頁
《區(qū)塊鏈技術(shù)及應(yīng)用》區(qū)塊鏈技術(shù)改進(jìn)_第5頁
已閱讀5頁,還剩26頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

區(qū)塊鏈技術(shù)改進(jìn)目錄/CONTENTS1.1增強(qiáng)匿名性1.2加強(qiáng)去中心化1.3能源消耗與生態(tài)環(huán)保1.4功能擴(kuò)展與性能改進(jìn)1.5編程案例本章小結(jié)1.1.1增強(qiáng)匿名性區(qū)塊鏈目前的弊端:區(qū)塊鏈技術(shù)是一個共享的、不可更改的分布式賬本系統(tǒng),任何人都可以查詢包含給定地址的所有交易。如果某人可以使用區(qū)塊鏈上的用戶地址鏈接到你的真實(shí)身份,那么你參與的所有交易記錄(不管是過去的、現(xiàn)在的,還是未來的)都可以被其查詢到。更糟糕的是,在區(qū)塊鏈中鏈接地址和真實(shí)身份并不困難。對區(qū)塊鏈提出的問題:(1)現(xiàn)有的區(qū)塊鏈技術(shù)真的能保證匿名性嗎?(2)能完美地做到去中心化嗎?(3)是否存在一種能夠用于區(qū)塊鏈的更加有效的分布式算法?(4)是否有辦法改進(jìn)區(qū)塊鏈網(wǎng)絡(luò)的性能?1.1.2區(qū)塊鏈的匿名性分析區(qū)塊鏈中易遭到的攻擊與防范措施:(1)旁路攻擊,即使沒有直接的關(guān)聯(lián),用戶的匿名身份也可能由于側(cè)面渠道或一些間接的信息泄露而被暴露。如,將交易記錄與活動信息等進(jìn)行關(guān)聯(lián),在一個匿名的區(qū)塊鏈與一個真實(shí)的用戶建立聯(lián)系。(2)增強(qiáng)無關(guān)聯(lián)性,同一個用戶的不同地址之間,不同交易之間,一個交易的交易雙方之間都不應(yīng)關(guān)聯(lián)。(3)增強(qiáng)匿名集,讓攻擊者只能確定交易發(fā)生在某一集合,而無法鎖定具體是哪一個。(4)污點(diǎn)分析,可以根據(jù)污點(diǎn)分析確定兩個地址是否像關(guān)聯(lián),但是在應(yīng)用中準(zhǔn)確率并不高,它只是簡單地認(rèn)定對手在使用相同的計算方式關(guān)聯(lián)成對的地址。1.1.3混幣交易

混幣交易的原理混幣原理是割裂交易中輸入地址和輸出地址間的關(guān)系。所謂的混幣交易,就是幾個互不相干的人,把幾個互不相干的交易放到一個交易中,那么外人就不知道到底哪一個輸入對應(yīng)了哪一個輸出,從而無法準(zhǔn)確地知道誰花錢干了什么。(簡單來說就是把錢弄混了,這樣就不知道到底是誰買了相應(yīng)的物品)圖1-1

(a)混幣交易的模式圖1-1(b)多重混幣交易的模式

混幣交易也存在增加交易費(fèi)用,延遲,被第三方節(jié)點(diǎn)發(fā)現(xiàn),資金可能被盜的缺點(diǎn)和風(fēng)險。1.1.4零知識證明1.零知識證明的概念以及本質(zhì)它指的是證明者(即被驗(yàn)證者)能夠在不向被證明者(即驗(yàn)證者)提供任何有用信息的情況下,使被證明者相信某個論斷是正確的。零知識證明的實(shí)質(zhì)是一種涉及兩方或多方的協(xié)議。舉例:Bob要向Alice證明自己知道某個秘密卻不想告訴她內(nèi)容,就可以用到零知識證明,Bob在Alice不知情的時候到達(dá)C或D點(diǎn),Alice再到達(dá)B點(diǎn),要求Bob從左邊或右邊出來,Bob在必要時需要用秘密打開CD之間的門,以此證明自己的確知道秘密。多次重復(fù)即可零知識證明。ABCD圖-2洞穴模型1.2加強(qiáng)去中心化挖礦工具的變化過程:圖1-3

礦機(jī)的發(fā)展過程1.2.1加強(qiáng)去中心化算法1.反ASIC礦機(jī)定義:設(shè)計一個解密程序,盡可能地減少最有效率的定制運(yùn)算設(shè)備與普通計算機(jī)之間的效率差距。2.Scrypt算法3.混合哈希函數(shù)4.礦池與反礦池挖礦算法1.2.1加強(qiáng)去中心化算法Scrypt算法被使用最廣泛的反礦機(jī)挖礦算法是剛性內(nèi)存解謎(Memory-HardPuzzles)算法。這類算法解謎計算需要大量的內(nèi)存,而不是靠大量的CPU和時間。Scrypt算法是最受歡迎的剛性內(nèi)存解謎算法。但是Scrypt算法缺乏仔細(xì)的審察和廣泛的函數(shù)庫支持,所以Scrpyt算法一直沒有被推廣應(yīng)用,沒有在生產(chǎn)環(huán)境中大規(guī)模應(yīng)用,但是由于其內(nèi)存依賴的設(shè)計特別符合當(dāng)時對抗專業(yè)礦機(jī)的設(shè)計,因此成為區(qū)塊鏈技術(shù)發(fā)展的一個方向。步驟第一步是用隨機(jī)數(shù)據(jù)填充隨機(jī)存取存儲器(RandomAcessMemory,RAM)里面的緩存空間;第二步是從這塊內(nèi)存區(qū)域里虛擬隨機(jī)地讀取或者更新數(shù)據(jù),同時要求整個緩存都存儲在RAM里。1.2.1加強(qiáng)去中心化算法混合哈希函數(shù)混合哈希函數(shù)就是把多個哈希函數(shù)混合在一起,從而增加礦機(jī)的設(shè)計難度,起到抵抗礦機(jī)的作用。合理地混合哈希函數(shù)還可以抵御彩虹表攻擊,提高系統(tǒng)安全性。混合哈希函數(shù)主要有兩種設(shè)計模式,即串聯(lián)和并聯(lián)。串聯(lián)哈希算法的弱點(diǎn)沒有提高整體的抗碰撞性,其安全性更是因木桶效應(yīng)而由其中安全性最弱的算法決定,其中任何一種哈希函數(shù)遭遇碰撞性攻擊,都會危及整個算法的安全性。這好比一根鏈條,環(huán)環(huán)相扣,只要其中一環(huán)斷裂,整個鏈條就一分為二。并聯(lián)哈希算法HVC算法,是將4種算法并聯(lián)在一起,其中一種算法被破解只會危及結(jié)果中的64位,4種算法同時被破解才會危及貨幣系統(tǒng)的安全性。1.2.1加強(qiáng)去中心化算法礦池與反礦池挖礦算法礦池:礦池實(shí)際上是一個礦工的互助會,通過將許多礦工集合到一起,減小挖礦這個隨機(jī)過程的方差,同時也提高礦工應(yīng)對風(fēng)險的能力。反礦池挖礦算法可以看到,反礦池挖礦算法中,曠工必須要使用私鑰加密,得到數(shù)字簽名才能完成工作量證明。風(fēng)險:礦池會導(dǎo)致算力的集中,影響系統(tǒng)的去中心化程度,此外,礦池還在一定程度上增大了系統(tǒng)遭遇攻擊的風(fēng)險。圖1-4

反挖礦算法示意1.2.2中心化與去中心化之爭中心化與去中心化中心化的優(yōu)勢:(1)去中心化系統(tǒng)抗風(fēng)險能力更強(qiáng)。(2)去中心化系統(tǒng)里的用戶更加平等。(3)去中心化系統(tǒng)的意識是自下而上地控制的。(4)去中心化系統(tǒng)避免了由于中心節(jié)點(diǎn)的腐敗和貪婪等負(fù)面因素對整個系統(tǒng)造成嚴(yán)重的破壞的問題。(5)去中心化系統(tǒng)的規(guī)則通常要盡可能簡單。中心化的不足:(1)因?yàn)橐菁{所有節(jié)點(diǎn)相互的可能性,去中心化系統(tǒng)往往會變成一個臃腫的組織,而臃腫意味著資源浪費(fèi)。(2)去中心化系統(tǒng)意味著進(jìn)化和優(yōu)化效率低下。(3)去中心化系統(tǒng)不可控和不可預(yù)知。1.3能源消耗與生態(tài)環(huán)保能源消耗的爭議礦機(jī)的制造、運(yùn)輸和銷售會耗費(fèi)大量資源,同時無論是哈希函數(shù)、剛性內(nèi)存解謎算法,還是混合哈希函數(shù)的運(yùn)算,都不可避免地會消耗大量能源。并且,無論哪種算法都很難說得上對社會有多大幫助,因此許多批評者甚至認(rèn)為區(qū)塊鏈的挖礦就是在浪費(fèi)資源。但如果將挖礦與志愿者運(yùn)算項(xiàng)目相結(jié)合,將有望解決矛盾。項(xiàng)目成立時間目標(biāo)影響GreatInternetMersennePrimeSearch1996年找到大的梅森質(zhì)數(shù)連續(xù)12次發(fā)現(xiàn)最大的質(zhì)數(shù)1997年密碼學(xué)的暴力破解演示首次公開成功地破解了64位的密碼私鑰SETI@home1999年尋找外星人迄今為止最大的分布式計算項(xiàng)目,有500萬以上的參與者Folding@home2000年在原子級別上實(shí)現(xiàn)蛋白質(zhì)折疊模型史上最大算力的志愿者運(yùn)算項(xiàng)目,幫助發(fā)表了118篇科技論文圖1-5

歷史上較有名的志愿者運(yùn)算項(xiàng)目1.3.1有效工作量證明什么是有效工作量證明通過修改工作量證明機(jī)制的目標(biāo),使得傳統(tǒng)工作量證明最后得到的結(jié)果變得有意義,使得消耗大量能源得出的結(jié)果能在其它地方得到應(yīng)用。有效工作量證明要滿足的4個條件(1)擁有一個機(jī)會均等的解密區(qū)域。(2)擁有永不枯竭的解密問題。(3)解密問題可以通過算法自動生成。(4)擁有可以調(diào)節(jié)的難度特征。1.3.1改進(jìn)的PBFT算法傳統(tǒng)PBFT算法的劣勢傳統(tǒng)PBFT算法每次都完整執(zhí)行三階段廣播協(xié)議,這樣節(jié)點(diǎn)增多時會給系統(tǒng)帶來極大的通信負(fù)擔(dān),且復(fù)雜度較高,效率較低。為了簡化通信過程,在沒有拜占庭錯誤的情況下進(jìn)行優(yōu)化,降低通信復(fù)雜度。改進(jìn)方面(1)將傳統(tǒng)PBFT的C/S架構(gòu)模式改進(jìn)為P2P的網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)。(2)增加節(jié)點(diǎn)的可信度評價。(3)參與該共識機(jī)制的節(jié)點(diǎn)可以動態(tài)地加入、離開網(wǎng)絡(luò)。(4)優(yōu)化傳統(tǒng)PBFT算法的三階段廣播協(xié)議,提高共識效率。1.3.1改進(jìn)的PBFT算法對三階段協(xié)議進(jìn)行簡化,流程步驟:(1)主節(jié)點(diǎn)發(fā)送給所有從節(jié)點(diǎn)預(yù)準(zhǔn)備消息,從節(jié)點(diǎn)接收到預(yù)準(zhǔn)備消息后對消息進(jìn)行驗(yàn)證,驗(yàn)證通過后從節(jié)點(diǎn)回復(fù)認(rèn)可消息。(2)主節(jié)點(diǎn)等待接收認(rèn)可消息,當(dāng)認(rèn)可消息數(shù)量達(dá)到3f時,主節(jié)點(diǎn)打包所有認(rèn)可消息后將其發(fā)送給所有從節(jié)點(diǎn),從節(jié)點(diǎn)收到后驗(yàn)證其他從節(jié)點(diǎn)的認(rèn)可信息是否正確。驗(yàn)證通過后節(jié)點(diǎn)進(jìn)入確認(rèn)階段,并加入新的區(qū)塊。(3)如果主節(jié)點(diǎn)接收到的認(rèn)可消息數(shù)量不足3f個,則該段共識流程結(jié)束。系統(tǒng)進(jìn)行完整的三階段協(xié)議。圖1-6觸發(fā)視圖切換協(xié)議的流程1.3.1改進(jìn)的PBFT算法檢查點(diǎn)協(xié)議,檢查是否有節(jié)點(diǎn)發(fā)生網(wǎng)絡(luò)延遲或故障,導(dǎo)致無法完成系統(tǒng)發(fā)出的任務(wù)。步驟:(1)從節(jié)點(diǎn)接收并驗(yàn)證主節(jié)點(diǎn)發(fā)送的消息,如果驗(yàn)證不通過,則該從節(jié)點(diǎn)不再信任主節(jié)點(diǎn),并發(fā)起視圖切換請求。(2)若有節(jié)點(diǎn)接收到2f個確認(rèn)消息后,向其他節(jié)點(diǎn)發(fā)送創(chuàng)建新視圖請求。(3)節(jié)點(diǎn)驗(yàn)證收到的新視圖創(chuàng)建請求是否正確,若正確,視圖切換完成。圖1-7檢查點(diǎn)協(xié)議的執(zhí)行流程1.4功能擴(kuò)展與性能改進(jìn)區(qū)塊鏈面臨的主要問題:網(wǎng)絡(luò)的處理能力太低。擴(kuò)展與改進(jìn)方案:(1)共同挖礦(2)側(cè)鏈技術(shù)(3)閃電網(wǎng)絡(luò)(4)基于區(qū)塊鏈的隨機(jī)數(shù)發(fā)生器1.4.1共同挖礦共同挖礦:一種區(qū)塊鏈系統(tǒng),允許同時在該系統(tǒng)和其他區(qū)塊鏈系統(tǒng)上進(jìn)行挖礦。圖1-8共同挖礦示意圖優(yōu)點(diǎn)與缺點(diǎn):(1)可以使一個新區(qū)塊鏈系統(tǒng)更容易實(shí)現(xiàn)自我增長的循環(huán)發(fā)展,即通過增加總算力從而提高其抗攻擊能力。(2)共同挖礦很有可能只是一個安全假象,因?yàn)閻阂飧偁帉κ挚梢栽诠粜袨橹型ㄟ^共同挖礦來產(chǎn)生收益,收回一部分前期投資。1.4.2側(cè)鏈結(jié)構(gòu)側(cè)鏈:讓鏈上的價值跨過鏈和鏈之間的障礙直接流通,從而打破區(qū)塊鏈的“孤島效應(yīng)”。單一托管模式:實(shí)現(xiàn)主鏈和側(cè)鏈雙向錨定最簡單的方法。這種模式的最大問題是過于中心化。圖1-9單一托管模式

的工作流程示意圖1.4.2側(cè)鏈結(jié)構(gòu)聯(lián)盟模式:聯(lián)盟模式利用公證人聯(lián)盟代替單一的托管方,利用公證人聯(lián)盟的多重簽名來確認(rèn)側(cè)鏈的數(shù)字資產(chǎn)流動。圖1-9聯(lián)盟模式

的工作流程示意圖單一托管模式與聯(lián)盟模式的最大優(yōu)點(diǎn)是它們不需要對現(xiàn)有的比特幣協(xié)議進(jìn)行任何的改變。1.4.2側(cè)鏈結(jié)構(gòu)SPV模式:SPV是一種用來證明交易存在的方法,通過少量數(shù)據(jù)可以驗(yàn)證特定塊中是否存在交易。SPV模式的問題是,它需要對主鏈進(jìn)行軟分叉。圖1-10SPV模式模式

的工作流程示意圖1.4.2側(cè)鏈結(jié)構(gòu)驅(qū)動鏈模式:驅(qū)動鏈中,礦工作為“算法代理監(jiān)護(hù)人”,需要對側(cè)鏈的當(dāng)前狀態(tài)進(jìn)行檢測。圖1-11驅(qū)動鏈模式

的工作流程示意圖1.4.2側(cè)鏈結(jié)構(gòu)混合模式:上述模式都是對稱的,而混合模式是將上述獲得雙向錨定的方法進(jìn)行有效結(jié)合的模式。混合模式是在主鏈和側(cè)鏈?zhǔn)褂貌煌慕怄i方法,例如在側(cè)鏈上使用SPV模式,而在主鏈網(wǎng)絡(luò)上使用驅(qū)動鏈模式。同樣,混合模式也需要對主鏈進(jìn)行軟分叉。側(cè)鏈?zhǔn)且匀诤系姆绞綄?shí)現(xiàn)區(qū)塊鏈生態(tài)的目標(biāo),而不是像其他數(shù)字資產(chǎn)一樣排斥現(xiàn)有的系統(tǒng)。側(cè)鏈技術(shù)擴(kuò)展了區(qū)塊鏈技術(shù)的應(yīng)用范圍,使傳統(tǒng)區(qū)塊鏈可以支持多種資產(chǎn)類型,包括小微支付、安全處理機(jī)制、智能合約、財產(chǎn)注冊等服務(wù),增強(qiáng)了區(qū)塊鏈的隱私保護(hù)。1.4.3閃電網(wǎng)絡(luò)閃電網(wǎng)絡(luò)是一個分布式網(wǎng)絡(luò),通過智能合約功能支持跨參與者網(wǎng)絡(luò)的即時付款,同時利用區(qū)塊鏈的特性消除將資金托管給第三方帶來的風(fēng)險。智能合約的核心概念主要有兩個:序列到期可撤銷合約和哈希時間鎖定合約。目的:實(shí)現(xiàn)安全的鏈下交易,其本質(zhì)上是使用哈希時間鎖定智能合約來安全地進(jìn)行零確認(rèn)交易的一種機(jī)制。優(yōu)點(diǎn):閃電網(wǎng)絡(luò)采用了更合理的支付網(wǎng)絡(luò)架構(gòu),代表著效率的提高。與其向所有人廣播交易,交易不如更直接地發(fā)送給收款人。1.4.3閃電網(wǎng)絡(luò)序列到期可撤銷合約(RSMC)思想步驟:(1)首先雙方各出一些比特幣,在比特幣區(qū)塊鏈上設(shè)立一個共同賬戶。這需要一次鏈上交易。(2)每次轉(zhuǎn)賬,雙方只是對這個共同賬戶的分配達(dá)成共識。這些操作由兩個賬戶私下完成,不需要上區(qū)塊鏈,不產(chǎn)生費(fèi)用,不需要等待確認(rèn)。(3)最終結(jié)算時把這個共同賬戶的比特幣按最終確認(rèn)的分配方案分配給雙方,這也需要鏈上交易。圖1-12RSMC:共同賬戶和鏈下共識1.4.3閃電網(wǎng)絡(luò)哈希時間鎖定合約(HTLC)

:HTLC提供一種技術(shù),把已有的RSMC鏈接成網(wǎng)絡(luò),使得沒有直接RSMC合約的兩個賬戶可以把其他賬戶作為中轉(zhuǎn),進(jìn)行低費(fèi)用的極速轉(zhuǎn)賬。HTLC轉(zhuǎn)賬過程:通過智能合約,雙方約定轉(zhuǎn)賬方先凍結(jié)一筆錢,并提供一個哈希值,如果在一定時間內(nèi)有人能提出一個字符串,使得它哈希后的值與已知值匹配,則這筆錢轉(zhuǎn)給接收方。圖1-13HTLC:A和B把C作為中轉(zhuǎn)賬戶建立轉(zhuǎn)賬通道1.4.4基于區(qū)塊鏈的隨機(jī)數(shù)發(fā)生器提出背景:現(xiàn)存在的隨機(jī)數(shù)發(fā)生器雖然能很好地解決了隨機(jī)數(shù)的隨機(jī)性、不可控制性、不可預(yù)測性等方面的問題,但是缺乏去中心性與可證公平性。而區(qū)塊鏈作為一個去中心化的平臺,為可證公平的隨機(jī)數(shù)生成提供了天

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論