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

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

比特币之隔离见证

發布時間:2025/3/21 编程问答 17 豆豆
生活随笔 收集整理的這篇文章主要介紹了 比特币之隔离见证 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

1. 延展性攻擊問題

1.1 交易驗證

保證一個交易有效并且不被修改:
step1. 每個交易都必須簽名才能花費輸入(UTXO);
step2. 所有交易的哈希以Merkle Tree計算并存儲到區塊頭。

對于每個交易,假設有一個輸入和一個輸出,它類似:tx = … input#index … signature … output-script …
而整個交易的哈希可直接根據交易本身計算:tx-hash = dhash(tx)

1.2 延展性攻擊

ECDSA簽名算法基于私鑰計算的簽名實際上是兩個整數,記作(r, s),但由于橢圓曲線的對稱性,(r, -s mod N)實際上也是一個有效的簽名(N是橢圓曲線的固定參數之一)。換句話說,對某個交易進行簽名,總是可以計算出兩個有效的簽名,并且這兩個有效的簽名還可以互相計算出來。

黑客可以在某一筆交易發出但并未落塊的時間內,對簽名進行修改,使之仍是一個有效的交易。注意黑客并無法修改任何輸入輸出的地址和金額,僅能修改簽名。但由于簽名的修改,使得整個交易的哈希被改變了。如果修改后的交易先被打包,雖然原始交易會被丟棄,且并不影響交易安全,但這個延展性攻擊可用于攻擊交易所。

2. 定義

隔離見證通過去除簽名信息(或者也被稱為 “見證人” 信息)并將其存儲在基本交易塊(base transaction block)之外,來修復了交易擴展性的問題。憑借該措施,可以在不影響交易 ID 的情況下更改簽名和腳本(scripts)。

2.1 隔離見證之前的“比特幣交易的數據結構”

  • part1. 發送方和接收方的錢包地址
  • part2. 包含交易簽名的“見證數據”。

2.2 隔離見證之后的“數據結構”

從原始部分中刪除解鎖簽名(“見證”數據)并將其作為單獨的結構附加到末尾。原始部分將繼續保存發送方和接收方數據,而新的“見證”結構將包含腳本和簽名。原始數據段將被正常計算,但“見證”段實際上將被計算為其實際大小的四分之一。

2.3 兩個功能

  • 防止非故意的比特幣交易延展性,允許可選的數據傳輸,并通過軟分叉繞過某些協議限制(例如塊大小限制)。

  • 隔離見證從主區塊中刪除了“見證數據”,因此顯著減少了交易規模。因此,交易需要的空間更少,每個區塊可以進行更多的交易,并大大增加了比特幣網絡的容量。

參考

四份有關隔離見證的比特幣改善方案:

  • 隔離見證軟分叉 https://github.com/CodeShark/bips/blob/segwit/bip-codeshark-jl2012-segwit.mediawiki
  • 隔離見證通信層 https://github.com/CodeShark/bips/blob/segwit_peer_services/bip-codeshark-segwit-peer-services.mediawiki
  • 隔離見證交易地址 https://github.com/jl2012/bips/blob/segwit-address/bip-segwitaddress.mediawiki
  • 隔離見證簽署檢查 https://github.com/jl2012/bips/blob/segwit-checksig/bip-segwit-checksig.mediawiki 5. 系統擴展常見問題解答: https://bitcoin.org/zh_CN/bitcoin-core/capacity-increases-faq
  • 需要30秒檢查的交易: https://blockchain.info/tx/bb41a757f405890fb0f5856228e23b715702d714d59bf2b1feb70d8b2b4e3e08
  • 總結

    以上是生活随笔為你收集整理的比特币之隔离见证的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。