日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

区块链中utxo模型是什么意思_区块链100讲:UTXO 和 Account 模型对比

發(fā)布時間:2024/1/1 编程问答 43 豆豆
生活随笔 收集整理的這篇文章主要介紹了 区块链中utxo模型是什么意思_区块链100讲:UTXO 和 Account 模型对比 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

在當(dāng)前區(qū)塊鏈?zhǔn)澜缰?#xff0c;主要有兩種記錄保存方式,UTXO 模式(Unspent Transaction Output) 和 Account 模式。Bitcoin 采用的是 UTXO 模型,Ethereum 采用的 Account 模型,同樣 CITA 也采用了 Account 模型。

Bitcoin 的設(shè)計初衷是點對點的電子現(xiàn)金系統(tǒng),在比特幣中,每個交易消耗之前交易生成的 UTXO 然后生成新的 UTXO,賬戶的余額即所有屬于該地址的未花費 UTXO 集合,Bitcoin 的全局狀態(tài)即當(dāng)前所有未花費的 UTXO 集合。Ethereum 意圖創(chuàng)建一個更為通用的協(xié)議,該協(xié)議支持圖靈完備的編程語言,在此協(xié)議上用戶可以編寫智能合約,創(chuàng)建各種去中心化的應(yīng)用。由于 UTXO 模型在狀態(tài)保存以及可編程性方面的缺陷,Ethereum 引入了 Account 模型。下面我們對兩種模型的優(yōu)缺點做進一步展開。

1

UTXO 模型

UTXO 模型中,交易只是代表了 UTXO 集合的變更。而賬戶和余額的概念是在 UTXO 集合上更高的抽象,賬號和余額的概念只存在于錢包中。

優(yōu)點:

計算是在鏈外的,交易本身既是結(jié)果也是證明。節(jié)點只做驗證即可,不需要對交易進行額外的計算,也沒有額外的狀態(tài)存儲。交易本身的輸出 UTXO 的計算是在錢包完成的,這樣交易的計算負擔(dān)完全由錢包來承擔(dān),一定程度上減少了鏈的負擔(dān)。

除 Coinbase 交易外,交易的 Input 始終是鏈接在某個 UTXO 后面。交易無法被重放,并且交易的先后順序和依賴關(guān)系容易被驗證,交易是否被消費也容易被舉證。

UTXO 模型是無狀態(tài)的,更容易并發(fā)處理。

對于 P2SH 類型的交易,具有更好的隱私性。交易中的 Input 是互不相關(guān)聯(lián)的,可以使用 CoinJoin 這樣的技術(shù),來增加一定的隱私性。

缺點:

無法實現(xiàn)一些比較復(fù)雜的邏輯,可編程性差。對于復(fù)雜邏輯,或者需要狀態(tài)保存的合約,實現(xiàn)難度大,且狀態(tài)空間利用率比較低。

當(dāng) Input 較多時,見證腳本也會增多。而簽名本身是比較消耗 CPU 和存儲空間的。

2

ACCOUNT 模型

對于 Account 模型,Account 模型保存了世界狀態(tài),鏈的狀態(tài)一般在區(qū)塊中以 StateRoot 和 ReceiptRoot 等形式進行共識。交易只是事件本身,不包含結(jié)果,交易的共識和狀態(tài)的共識本質(zhì)上可以隔離的。

優(yōu)點:

合約以代碼形式保存在 Account 中,并且 Account 擁有自身狀態(tài)。這種模型具有更好的可編程性,容易開發(fā)人員理解,場景更廣泛。

批量交易的成本較低。設(shè)想礦池向礦工支付手續(xù)費,UTXO 中因為每個 Input 和 Out 都需要單獨 Witness script 或者 Locking script,交易本身會非常大,簽名驗證和交易存儲都需要消耗鏈上寶貴的資源。而 Account 模型可以通過合約的方式極大的降低成本。

缺點:

Account 模型交易之間沒有依賴性,需要解決重放問題。

對于實現(xiàn)閃電網(wǎng)絡(luò)/雷電網(wǎng)絡(luò),Plasma 等,用戶舉證需要更復(fù)雜的 Proof 證明機制,子鏈向主鏈進行狀態(tài)遷移需要更復(fù)雜的協(xié)議。

3

UTXO VS ACCOUNT

對于以上幾個優(yōu)點和缺點,我們再做一些分析和對比。

第一,關(guān)于計算的問題的。

UTXO 交易本身對于區(qū)塊鏈并沒有復(fù)雜的計算,這樣簡單的講其實并不完全準(zhǔn)確,原因分有兩個,一是 Bitcoin 本身的交易多為 P2SH,且 Witness script 是非圖靈完備的,不存在循環(huán)語句。而對于 Account 模型,例如 Ethereum,由于計算多在鏈上,且為圖靈完備,一般計算較為復(fù)雜,同時合約安全性就容易成為一個比較大的問題。當(dāng)然是否圖靈完備對于是否是賬戶模型并沒有直接關(guān)聯(lián)。但是賬戶模型引入之后,合約可以作為一個不受任何人控制的獨立實體存在,這一點意義重大。

第二,關(guān)于 UTXO 更易并發(fā)的問題。

在 UTXO 模型中,世界狀態(tài)即為 UTXO 的集合,節(jié)點為了更快的驗證交易,需要在內(nèi)存中存儲所有的 UTXO 的索引,因此 UTXO 是非常昂貴的。對于長期不消費的 UTXO,會一直占用節(jié)點的內(nèi)存。所以對于此種模型,理論上應(yīng)該鼓勵用戶減少生產(chǎn) UTXO,多消耗 UTXO。但是如果要使用 UTXO 進行并行交易則需要更多的 UTXO 作為輸入,同時要產(chǎn)生更多的 UTXO 來保證并發(fā)性,這本質(zhì)上是對網(wǎng)絡(luò)進行了粉塵攻擊。并且由于交易是在錢包內(nèi)構(gòu)造,所以需要錢包更復(fù)雜的設(shè)計。反觀 Account 模型,每個賬戶可以看成是單獨的互不影響的狀態(tài)機,賬戶之間通過消息進行通信。所以理論上用戶發(fā)起多筆交易時,當(dāng)這些交易之間不會互相調(diào)用同一 Account 時,交易是完全可以并發(fā)執(zhí)行的。

第三,關(guān)于 Account 模型的交易重放問題。

Ethereum 使用了在 Account 中增加 nonce 的方式,每筆交易對應(yīng)一個 nonce,nonce 每次遞增。這種方式雖然意在解決重放的問題,但是同時引入了順序性問題,同時使得交易無法并行。例如在 Ethereum中,用戶發(fā)送多筆交易,如果第一筆交易打包失敗,將引起后續(xù)多筆交易都打包不成功。在 CITA 中我們使用了隨機 nonce 的方案,這樣用戶的交易之間沒有順序性依賴,不會引起串聯(lián)性失敗,同時使得交易有并行處理的可能。

第四,存儲問題。

因為 UTXO 模型中,只能在交易中保存狀態(tài)。而 Account 模型的狀態(tài)是在節(jié)點保存,在 Ethereum 中使用MPT 的方式存儲,Block 中只需要共識 StateRoot 等即可。這樣對于鏈上數(shù)據(jù),Account 模型實際更小,網(wǎng)絡(luò)傳輸?shù)牧扛?#xff0c;同時狀態(tài)在節(jié)點本地使用 MPT 方式保存,在空間使用上也更有效率。例如 A 向 B 轉(zhuǎn)賬,如果在 UTXO 中假設(shè)存在 2 個 Input 和2個 Output,則需要 2 個 Witness script 和 2 個Locking script;在 Account 模型中則只需要一個簽名,交易內(nèi)容只包含金額即可。在最新的隔離見證實現(xiàn)后,Bitcoin的交易數(shù)據(jù)量也大大減少,但是實際上對于驗證節(jié)點和全節(jié)點仍然需要針對 Witness script 進行傳輸和驗證。

第五,對于輕節(jié)點獲取某一地址狀態(tài),UTXO 更復(fù)雜。

例如錢包中,需要向全節(jié)點請求所有關(guān)于某個地址的所有 UTXO,全節(jié)點可以發(fā)送部分 UTXO,錢包要驗證該筆 UTXO 是否已經(jīng)被消費,有一定的難度,而且錢包很難去證明 UTXO 是全集而不是部分集合。而對于 Account 模型則簡單很多,根據(jù)地址找到 State 中對應(yīng)狀態(tài),當(dāng)前狀態(tài)的 State Proof 則可以證明合約數(shù)據(jù)的真?zhèn)巍.?dāng)然對于 UTXO 也可以在每個區(qū)塊中對 UTXO 的 root 進行驗證,這一點與當(dāng)前 Bitcoin 的實現(xiàn)有關(guān),并非 UTXO 的特點。

4

總結(jié)

綜上來看,Account 模型在可編程性,靈活性等方面更有優(yōu)勢;在簡單業(yè)務(wù)和跨鏈上,UTXO 有其非常獨到和開創(chuàng)性的優(yōu)點。對于選擇何種模型,要從具體的業(yè)務(wù)場景進行出發(fā)。

5

參考資料

houghts on UTXOs by Vitalik Buterin:

內(nèi)容來源:NervosNetwork

以下是我們的社區(qū)介紹,歡迎各種合作、交流、學(xué)習(xí):)

總結(jié)

以上是生活随笔為你收集整理的区块链中utxo模型是什么意思_区块链100讲:UTXO 和 Account 模型对比的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 国产一线在线 | 久久久欧洲 | 国产在线操 | 久久伊人网站 | 免费黄色高清视频 | 亚洲v欧美v另类v综合v日韩v | 欧美精品色婷婷五月综合 | 不许穿内裤随时挨c调教h苏绵 | 美女写真福利视频 | www.久久久精品 | 欧美三级三级三级爽爽爽 | 日本一区视频在线观看 | 中文字幕欧美色图 | 另类欧美亚洲 | 免费毛片视频 | 成人在线h | 久久精品免费av | 欧美日韩一区精品 | 伦理片一区二区 | 天天射网站 | 欧美三级在线观看视频 | 强伦人妻一区二区三区视频18 | 无码乱人伦一区二区亚洲 | 狂野欧美性猛交xxxx | 韩国成年人网站 | 精品一区二区免费 | 人人干人人插 | 国产精品自拍第一页 | 在线观看免费黄视频 | 色av一区 | 欧美大色| 成人免费视频国产免费网站 | 亚洲综合精品国产一区二区三区 | 国模在线观看 | 肉体粗喘娇吟国产91 | 国产露脸国语对白在线 | 少妇高潮一区二区三区69 | 国产精品777777 | 五月激情六月 | 午夜精品久久久久久久99热黄桃 | 欧美色88 | 欧美一区二区视频在线 | 欧美国产中文 | 亚洲精品久久久久久久久久久久久 | 日本电影成人 | 欧美一区二区三区国产 | 日韩第一页 | 国产美女引诱水电工 | 少妇熟女一区二区三区 | 女人叫床高潮娇喘声录音mp3 | 国产一级片精品 | 欧美日韩视频在线播放 | 麻豆精品网站 | 91天天综合 | 青青青青青青草 | 色爱亚洲 | 天天干b | 亚洲国产黄色 | 三级黄色生活片 | 激情av网| 三级一区二区 | 五月天色婷婷综合 | 国产精品乱子伦 | 青娱乐av在线 | 男男在线观看 | 国产三级成人 | 色com| 国内少妇精品 | av永久免费观看 | 久草一区二区 | 亚洲综合在线中文字幕 | 婷婷色视频 | 国产综合在线观看 | 日本视频网址 | 久久99精品国产麻豆91樱花 | 天天干妹子 | 毛片链接 | 男人天堂伊人 | 国产高清视频免费观看 | 亚洲最大看欧美片网站 | 操操操爽爽爽 | 午夜国产福利在线 | 国产精品av免费观看 | 亚洲欧美另类综合 | www.欧美视频| 日本欧美一区 | 成人做爰69片免费观看 | 美日韩一二三区 | 91视频在线看 | 成a人v | 强开小受嫩苞第一次免费视频 | 日本中文字幕高清 | 日本黄色一区 | 亚洲精品久久久久av无码 | 日日草夜夜草 | 亚洲激情视频在线播放 | 久久最新免费视频 | 欧美精品国产一区二区 | 日韩伦理一区二区 |