基于UTXO模型的區(qū)塊鏈交易算法的研究與實(shí)現(xiàn)
發(fā)布時(shí)間:2021-09-28 06:19
區(qū)塊鏈技術(shù)的本質(zhì)是去中心化的分布式賬本,交易被交易發(fā)起者產(chǎn)生,經(jīng)過(guò)P2P網(wǎng)絡(luò)傳播到其它節(jié)點(diǎn),最終被挖礦節(jié)點(diǎn)存儲(chǔ)到區(qū)塊上。本文針對(duì)UTXO(Unspent Transaction Output,未花費(fèi)的交易輸出)模型的交易,詳細(xì)介紹了交易發(fā)起者生成交易的過(guò)程以及挖礦節(jié)點(diǎn)選擇交易的過(guò)程,在不改變交易結(jié)構(gòu)的基礎(chǔ)上,提出了一種創(chuàng)新的交易級(jí)別的區(qū)塊擴(kuò)容方法:減小交易的體積和在區(qū)塊上存儲(chǔ)更多的交易,即分別從交易發(fā)起者生成交易和挖礦節(jié)點(diǎn)生成區(qū)塊的角度實(shí)現(xiàn)區(qū)塊擴(kuò)容,其中,交易的體積指的是交易數(shù)據(jù)所占的字節(jié)數(shù)。交易生成是根據(jù)所需支付金額來(lái)構(gòu)造交易輸入以及根據(jù)所需支付的對(duì)象構(gòu)造交易輸出的過(guò)程,本文改進(jìn)了交易生成的數(shù)學(xué)模型,并通過(guò)減少交易輸入數(shù)量和交易輸出數(shù)量的方法來(lái)減小交易的體積。為一個(gè)交易接收者創(chuàng)建一個(gè)交易輸出就能實(shí)現(xiàn)交易輸出的數(shù)量最少,對(duì)于交易輸入,本文使用貪心算法與遺傳算法聯(lián)合搜索數(shù)量最少但是金額總和最接近所需支付金額的交易輸入。區(qū)塊中用于存儲(chǔ)交易的字節(jié)數(shù)是有上限的,減小交易的體積可以使一個(gè)區(qū)塊容納更多的交易進(jìn)而實(shí)現(xiàn)區(qū)塊擴(kuò)容,此外,由于交易費(fèi)的計(jì)算與交易的體積有關(guān),減小交易的體積降低了交易費(fèi)。挖礦節(jié)...
【文章來(lái)源】:電子科技大學(xué)四川省 211工程院校 985工程院校 教育部直屬院校
【文章頁(yè)數(shù)】:81 頁(yè)
【學(xué)位級(jí)別】:碩士
【部分圖文】:
圖2-1區(qū)塊鏈技術(shù)架構(gòu)??4??
輸出,稱為哈希值。哈希??算法獨(dú)特的散列功能,能讓相似的輸入,得到的散列值卻差別極大,被廣泛應(yīng)用??于K塊鏈技術(shù)中[29,31]?<?本文中后續(xù)涉及到的哈希算法均指SHA(Secure?Hash??Algorithm)系列算法中的SHA256算法[32周。??默克爾樹是一類基于哈希值的二叉樹或者多叉樹,它的葉子節(jié)點(diǎn)上的值通常??是數(shù)據(jù)塊的哈希值,而父節(jié)點(diǎn)的值是該節(jié)點(diǎn)的所有子節(jié)點(diǎn)的組合結(jié)果的哈希值[34]。??它是區(qū)塊中的數(shù)據(jù)存儲(chǔ)結(jié)構(gòu),其作甩是快速歸納和校驗(yàn)區(qū)塊數(shù)據(jù)的完整性%。如??圖2-5所示,默克爾樹是自底向上進(jìn)行構(gòu)建,最常見的是比特幣采用的二叉默克爾??樹。其運(yùn)算過(guò)程如下:首先將交易數(shù)據(jù)哈希化,然后將哈希值存儲(chǔ)到相應(yīng)的葉子??節(jié)點(diǎn)通過(guò)串聯(lián)相鄰葉子節(jié)點(diǎn)的哈希值然后進(jìn)行兩次哈希運(yùn)算,得到這兩個(gè)葉子??節(jié)點(diǎn)的父節(jié)點(diǎn)。不斷進(jìn)行這樣的操作直到只剩下一個(gè)節(jié)點(diǎn),該節(jié)點(diǎn)就是默克爾樹??樹根。默克爾樹使得區(qū)塊頭只需包含根哈希值而不必封裝所有底層數(shù)據(jù),交易查??詢非常方便,提高了區(qū)塊鏈技術(shù)的運(yùn)行效率和可擴(kuò)展性。默克爾樹結(jié)構(gòu)如圖2-5??所示。??默克爾樹根??哈希?12345678??1^^—????哈希1234?|?|哈希5?6?78??|哈希12?I?|哈希34?I?|哈希56?I?哈希7?8??哈希1?哈希2?哈希3?哈希4?哈希5?哈希6?哈希7?哈希8??交易1?交易2?交易3?交易4?交易5?交易6?交易7?交易8??圖2-5默克爾樹??9??
模型6本節(jié)將介紹并對(duì)比UTXO模型和余額模型,闡明選擇UTXO模型作為研??宄對(duì)象的原因《??UTXO模型是中本聰發(fā)明的交易模型,是比特幣中所使用的交易模型。UTXO??模型將資金的轉(zhuǎn)移表現(xiàn)為交易輸入和交易輸出,未花費(fèi)的交易輸出作為另外一筆??交易的交易輸入。交易被分開成了交易輸入和交易輸出兩個(gè)部分。交易的交易輸??入消耗UTXO,表明交易的來(lái)源,而交易輸出則產(chǎn)生新的UTXO,表明交易的目??的。一個(gè)UTXO不能作為多筆交易的交易輸入,否則會(huì)產(chǎn)生雙花[37]。UTXO交易??模型如圖2-6所示?????大小(字節(jié))?名稱?描述??4?version?交易版本號(hào)??varint?txincount?交易輸入數(shù)量??v?aries?tx_in?交易輸入??varint?tx_out_count?交易輸出數(shù)量??varies?tx_out?交易輸出??4?locktime?鎖定時(shí)間??圖2-6?UTXO交易模型??在圖2-6中可以看到,每筆交易都含有的定長(zhǎng)字段為:交易版本號(hào)、鎖定時(shí)間s??10??
【參考文獻(xiàn)】:
期刊論文
[1]區(qū)塊鏈技術(shù)及其在信息安全領(lǐng)域的研究進(jìn)展[J]. 孫鳳毛. 計(jì)算機(jī)產(chǎn)品與流通. 2020(07)
[2]可編程社會(huì)到來(lái) 技術(shù)共治時(shí)代升級(jí)[J]. 陳端,杜雨薇. 經(jīng)濟(jì). 2020(05)
[3]公益慈善何以更透明——基于區(qū)塊鏈的數(shù)字證書認(rèn)證策略[J]. 王麗榮. 蘭州學(xué)刊. 2020(04)
[4]區(qū)塊鏈技術(shù)在跨境支付中的應(yīng)用分析[J]. 李美丹. 現(xiàn)代商業(yè). 2020(10)
[5]基于區(qū)塊鏈技術(shù)的網(wǎng)絡(luò)安全技術(shù)研究[J]. 黃旅軍. 網(wǎng)絡(luò)安全技術(shù)與應(yīng)用. 2020(03)
[6]區(qū)塊鏈共識(shí)機(jī)制的發(fā)展現(xiàn)狀與展望[J]. 劉明熹,甘國(guó)華,程郁琨,肖琳,劉帥,房勇. 運(yùn)籌學(xué)學(xué)報(bào). 2020(01)
[7]國(guó)產(chǎn)密碼體系在區(qū)塊鏈中的應(yīng)用與挑戰(zhàn)[J]. 陳鐘,關(guān)志. 中國(guó)信息安全. 2019(11)
[8]區(qū)塊鏈共識(shí)機(jī)制研究綜述[J]. 劉懿中,劉建偉,張宗洋,徐同閣,喻輝. 密碼學(xué)報(bào). 2019(04)
[9]比特幣擴(kuò)容技術(shù)的發(fā)展現(xiàn)狀與展望[J]. 常興,趙運(yùn)磊. 計(jì)算機(jī)應(yīng)用與軟件. 2019(03)
[10]TPS和區(qū)塊鏈的關(guān)系以及解決方案的相關(guān)探索[J]. 張翼. 中國(guó)新通信. 2018(22)
碩士論文
[1]區(qū)塊鏈安全技術(shù)的研究與應(yīng)用[D]. 張成成.西華大學(xué) 2018
[2]橢圓曲線數(shù)字簽名算法的優(yōu)化及軟件實(shí)現(xiàn)[D]. 陳亮.杭州電子科技大學(xué) 2011
[3]橢圓曲線密碼算法及應(yīng)用研究[D]. 石潤(rùn)華.廣西大學(xué) 2004
本文編號(hào):3411394
【文章來(lái)源】:電子科技大學(xué)四川省 211工程院校 985工程院校 教育部直屬院校
【文章頁(yè)數(shù)】:81 頁(yè)
【學(xué)位級(jí)別】:碩士
【部分圖文】:
圖2-1區(qū)塊鏈技術(shù)架構(gòu)??4??
輸出,稱為哈希值。哈希??算法獨(dú)特的散列功能,能讓相似的輸入,得到的散列值卻差別極大,被廣泛應(yīng)用??于K塊鏈技術(shù)中[29,31]?<?本文中后續(xù)涉及到的哈希算法均指SHA(Secure?Hash??Algorithm)系列算法中的SHA256算法[32周。??默克爾樹是一類基于哈希值的二叉樹或者多叉樹,它的葉子節(jié)點(diǎn)上的值通常??是數(shù)據(jù)塊的哈希值,而父節(jié)點(diǎn)的值是該節(jié)點(diǎn)的所有子節(jié)點(diǎn)的組合結(jié)果的哈希值[34]。??它是區(qū)塊中的數(shù)據(jù)存儲(chǔ)結(jié)構(gòu),其作甩是快速歸納和校驗(yàn)區(qū)塊數(shù)據(jù)的完整性%。如??圖2-5所示,默克爾樹是自底向上進(jìn)行構(gòu)建,最常見的是比特幣采用的二叉默克爾??樹。其運(yùn)算過(guò)程如下:首先將交易數(shù)據(jù)哈希化,然后將哈希值存儲(chǔ)到相應(yīng)的葉子??節(jié)點(diǎn)通過(guò)串聯(lián)相鄰葉子節(jié)點(diǎn)的哈希值然后進(jìn)行兩次哈希運(yùn)算,得到這兩個(gè)葉子??節(jié)點(diǎn)的父節(jié)點(diǎn)。不斷進(jìn)行這樣的操作直到只剩下一個(gè)節(jié)點(diǎn),該節(jié)點(diǎn)就是默克爾樹??樹根。默克爾樹使得區(qū)塊頭只需包含根哈希值而不必封裝所有底層數(shù)據(jù),交易查??詢非常方便,提高了區(qū)塊鏈技術(shù)的運(yùn)行效率和可擴(kuò)展性。默克爾樹結(jié)構(gòu)如圖2-5??所示。??默克爾樹根??哈希?12345678??1^^—????哈希1234?|?|哈希5?6?78??|哈希12?I?|哈希34?I?|哈希56?I?哈希7?8??哈希1?哈希2?哈希3?哈希4?哈希5?哈希6?哈希7?哈希8??交易1?交易2?交易3?交易4?交易5?交易6?交易7?交易8??圖2-5默克爾樹??9??
模型6本節(jié)將介紹并對(duì)比UTXO模型和余額模型,闡明選擇UTXO模型作為研??宄對(duì)象的原因《??UTXO模型是中本聰發(fā)明的交易模型,是比特幣中所使用的交易模型。UTXO??模型將資金的轉(zhuǎn)移表現(xiàn)為交易輸入和交易輸出,未花費(fèi)的交易輸出作為另外一筆??交易的交易輸入。交易被分開成了交易輸入和交易輸出兩個(gè)部分。交易的交易輸??入消耗UTXO,表明交易的來(lái)源,而交易輸出則產(chǎn)生新的UTXO,表明交易的目??的。一個(gè)UTXO不能作為多筆交易的交易輸入,否則會(huì)產(chǎn)生雙花[37]。UTXO交易??模型如圖2-6所示?????大小(字節(jié))?名稱?描述??4?version?交易版本號(hào)??varint?txincount?交易輸入數(shù)量??v?aries?tx_in?交易輸入??varint?tx_out_count?交易輸出數(shù)量??varies?tx_out?交易輸出??4?locktime?鎖定時(shí)間??圖2-6?UTXO交易模型??在圖2-6中可以看到,每筆交易都含有的定長(zhǎng)字段為:交易版本號(hào)、鎖定時(shí)間s??10??
【參考文獻(xiàn)】:
期刊論文
[1]區(qū)塊鏈技術(shù)及其在信息安全領(lǐng)域的研究進(jìn)展[J]. 孫鳳毛. 計(jì)算機(jī)產(chǎn)品與流通. 2020(07)
[2]可編程社會(huì)到來(lái) 技術(shù)共治時(shí)代升級(jí)[J]. 陳端,杜雨薇. 經(jīng)濟(jì). 2020(05)
[3]公益慈善何以更透明——基于區(qū)塊鏈的數(shù)字證書認(rèn)證策略[J]. 王麗榮. 蘭州學(xué)刊. 2020(04)
[4]區(qū)塊鏈技術(shù)在跨境支付中的應(yīng)用分析[J]. 李美丹. 現(xiàn)代商業(yè). 2020(10)
[5]基于區(qū)塊鏈技術(shù)的網(wǎng)絡(luò)安全技術(shù)研究[J]. 黃旅軍. 網(wǎng)絡(luò)安全技術(shù)與應(yīng)用. 2020(03)
[6]區(qū)塊鏈共識(shí)機(jī)制的發(fā)展現(xiàn)狀與展望[J]. 劉明熹,甘國(guó)華,程郁琨,肖琳,劉帥,房勇. 運(yùn)籌學(xué)學(xué)報(bào). 2020(01)
[7]國(guó)產(chǎn)密碼體系在區(qū)塊鏈中的應(yīng)用與挑戰(zhàn)[J]. 陳鐘,關(guān)志. 中國(guó)信息安全. 2019(11)
[8]區(qū)塊鏈共識(shí)機(jī)制研究綜述[J]. 劉懿中,劉建偉,張宗洋,徐同閣,喻輝. 密碼學(xué)報(bào). 2019(04)
[9]比特幣擴(kuò)容技術(shù)的發(fā)展現(xiàn)狀與展望[J]. 常興,趙運(yùn)磊. 計(jì)算機(jī)應(yīng)用與軟件. 2019(03)
[10]TPS和區(qū)塊鏈的關(guān)系以及解決方案的相關(guān)探索[J]. 張翼. 中國(guó)新通信. 2018(22)
碩士論文
[1]區(qū)塊鏈安全技術(shù)的研究與應(yīng)用[D]. 張成成.西華大學(xué) 2018
[2]橢圓曲線數(shù)字簽名算法的優(yōu)化及軟件實(shí)現(xiàn)[D]. 陳亮.杭州電子科技大學(xué) 2011
[3]橢圓曲線密碼算法及應(yīng)用研究[D]. 石潤(rùn)華.廣西大學(xué) 2004
本文編號(hào):3411394
本文鏈接:http://sikaile.net/kejilunwen/shengwushengchang/3411394.html
最近更新
教材專著