金色財經近期推出金色硬核(Hardcore)欄目,為讀者提供熱門項目介紹或者深度解讀。
盡管3月12日比特幣大跌,讓幣圈人士很是受傷。但作為一名投資人還是應該多關注技術進展,畢竟技術進步是比特幣的價值根源。正如2017年的“隔離見證”見證了2017年的比特幣大牛市,希望比特幣新的技術突破能帶領比特幣走出泥沼。
正如我們在“BTC第三次減半全解讀”中所說,比特幣在2020年值得關注的一個進展就是Schnorr/Taproot/Tapscript軟分叉,計劃的這次分叉將包含三個比特幣改進協議BIP 340、341和342。我們將對這三個BIP進行系列解讀,上兩期金色硬核(Hardcore)解讀了Schnorr簽名的BIP340和Taproot的BIP341。
本期聚焦Tapscript。看什么是Tapscript協議以及如何激活比特幣改進協議(或BIP),enjoy it
Tapscript(BIP 342)
本次升級提案的第三部分BIP 342描述的是Schnorr和Taproot的補充升級,稱為Tapscript。如我們在Schnorr/Taproot/Tapscript的第一篇文章中所述,比特幣腳本用于決定比特幣的花費策略。
BIP 342改進了簽名的哈希算法,因此我們可以驗證taproot腳本,從而引入靈活性,添加了新的操作碼以增強比特幣的智能合約功能,并且還更改了對資源要求的一些限制。
金色午報|1月1日午間重要動態一覽:7:00-12:00關鍵詞:羅振宇、上海市數據條例、Injective
1. 羅振宇跨年演講提及Web3.0和元宇宙;
2. 中國移動:融合數字人民幣硬件錢包的和包月活用戶突破1億;
3. 2021年比特幣區塊鏈從319GB增長到383GB,增長率創近三年最低;
4. 2021年加密貨幣種類數量增長近一倍,目前超16,000種;
5. 《上海市數據條例》今日生效:支持區塊鏈、零信任技術創新,推動隱私計算技術應用;
6. Injective在2022年將專注于“Injective Chain上線支持期貨”等,以繼續為開拓新的Web3經濟鋪平道路;
7. 數據:灰度目前加密資管規模為430億美元,低于11月初的609億美元。[2022/1/1 8:18:17]
什么是操作碼(Opcodes)?
操作碼(Opcodes)是操作碼(operation codes)的縮寫,基本上是腳本語句或命令。這些命令可以返回“ TRUE”或“ FALSE”,用于發送/接收交易。
例如,腳本指令指定了解鎖腳本所需的簽名數量。它們還指示了交易的比特幣數量以及收款人地址。
操作碼可用于刪除堆棧中的項目并執行計算,然后將結果添加回堆棧中。請記住,作為基于堆棧的編程語言,腳本指令是按照從堆棧頂部到底部的順序執行的。
什么是Tapscript?
作為比特幣編程語言(腳本)的升級版,Tapscript更容易添加新功能,且提供基于Schnorr簽名的批量驗證(batch verifiability)。
金色晚報?|?9月4日晚間重要動態一覽:12:00-21:00關鍵詞:SBI、SushiSwap、Filecoin、EOS網絡、CSW
1. 我國首個金融區塊鏈國際標準通過立項。
2. 日本金融巨頭SBI計劃推出基于區塊鏈的數字證券交易所。
3. 流動性挖礦項目SushiSwap發起流動性遷移提案。
4. 慢霧科技已完成SUN項目智能合約安全審計。
?5. 數據:Filecoin大礦工測試全網有效算力突破100 PiB。
6. 數據:7月中旬以來穩定幣供應量每天增加1億美元。
7. Tether在EOS網絡增發2500萬枚USDT。
8. Kleiman訴CSW一案已推遲至2021年1月4日開庭審理。
9. Tether和Bitfinex母公司提出動議要求撤銷市場操縱指控訴訟。
10. 美國國會眾議員提出法案以深入研究商業中的區塊鏈技術。[2020/9/4]
什么是批量驗證?Schnorr/Taproot/Tapscript系列第一篇講過。
Tapscript還補充了BIP 341(Taproot)中提出的對比特幣腳本結構的改進,該結構需要更改某些操作碼,而BIP 342則涉及需要進行的更改。
理解Tapscript的另一種方法是考慮Taproot的Merkle樹,其中每個葉子(leaf)都是一個腳本,可稱之為葉子版本,類似于SegWit的腳本版本控制。
但是不同之處在于,腳本不會在付款時顯示,而只會在花費時顯示。不同的葉子可以具有不同的版本,其中僅顯示實際使用的葉子。Tapscript是Taproot下版本0的葉版本。
金色相對論 | 巖松:基礎面的改善才是之后進入大牛市的關鍵:在今日舉行的《危機向左,信仰向右》的比特幣減半特輯直播中,針對“決定2020年走勢的因素里減半因素占了多少”的問題,OKEx分析師巖松表示,目前仍在牛市的醞釀期,這也與比特幣價格通常在減半后才會真正開始飆升的歷史走勢一致。二月中旬前我們已經看到了價格的上漲和市場的討論,同時有大量礦工加入其中。另外衍生品交易的火熱使得市場杠桿率大幅攀升。杠桿牛在三月崩盤前持續了近兩個月。只是疫情帶來的巨大破壞力使得所有預期都在3月12日大跌后重置。隨著幣價的反彈,市場參與者再次寄出減半話題,同時我們仍能看到不少回應,比如“比特幣減半”的搜索量,以及三月中旬過后美國市場現貨的交易量都有大幅增長。相比于減半的炒作或者說預期,比特幣持有率的上漲是最基礎、最重要的因素,即更多人認識和購買比特幣,更多機構進入加密貨幣領域。如果能將這些著眼更長時間維度的機構投資者帶入加密貨幣領域,必然會使比特幣的整體波動性下降,因為市場中存在了更穩定的多頭方,而非目前不停進出的短線資金。基礎面的改善才是之后進入大牛市的關鍵。[2020/5/11]
Tapscript與傳統和SegWit的比特幣腳本共享大多數操作,但有一些區別:
簽名操作碼驗證Schnorr簽名(而不是ECDSA簽名)。
多簽操作碼OP_CHECKMULTISIG和OP_CHECKMULTISIGVERIFY被操作碼OP_CHECKSIGADD代替,允許使用Schnorr進行簽名批量驗證。
由于簽名驗證是比特幣腳本中最耗費CPU的操作,因此這些操作碼對實現與基于Schnorr的多重簽名方案相關的效率提升至關重要。
金色財經行情播報 | BTC局部上升趨勢依舊延續,但多頭整理需求已經顯現:據火幣行情顯示,截至10:00,今日BTC行情在凌晨0點擴大整理后一舉突破7200壓力位,形成上升楔形突破,局部上升趨勢依然延續。從4小時圖看連續收漲7根K線,多頭過于強勁,有一定整理需求。[2020/4/7]
當前,用于2-of-3的多重簽名交易的腳本如下所示:
2 <公鑰A> <公鑰B> <公鑰C> 3 CHECKMULTISIG
使用Taproot/Tapscript,可以以批量驗證的方式創建相同的多重簽名策略,其腳本是:
<A pubkey> OP_CHECKSIG <B pubkey> OP_CSADD <C pubkey> OP_CHECKSIGADD OP_2 OP_EQUAL
許多操作碼被重新定義為OP_SUCCESS操作碼,它無條件使整個腳本有效,以簡化軟分叉升級。
與現在正使用的機制OP_NOP相比,新操作碼OP_SUCCESS的引入更容易驗證。
以前無法使用的操作碼通常返回“FALSE”狀態,Tapscript會將它們返回“TRUE”狀態。只要腳本中存在這些操作碼,你就可以無條件地使用它,而實際的好處是可以將操作碼重新定義為任意值,并且不需要向后兼容。
這種用新的操作碼擴展腳本的新機制,比現有的見證版本控制機制更易于協調和使用。后果是,它有望為將來比特幣腳本添加更多有用的操作碼開辟道路。
現場 | 金色財經頒發“2019最受用戶信任錢包”獎 共10家企業獲獎:2019年12月27日,由金色財經主辦的“與時共創”頒獎盛典在京舉行。金色財經“與時共創”對2019最受用戶信任錢包進行評選,經評委的評選,Cobo錢包、庫神錢包、幣信、虎符錢包、ImToken、火幣錢包、Bitpie、TokenPocket、MEET. ONE、AToken十家企業獲“2019最受用戶信任錢包”獎項。
本次活動邀請到國內外百余家知名區塊鏈企業、300多名行業領袖、眾多產業上下游服務機構代表等業界知名人士共同見證此次頒獎盛典。金色財經“與時共創”活動邀請到40余名資深行業專家作為專業評選團,結合網絡投票進行綜合評審,通過不同的獎項,對各個企業對實現賦能實體創新引領行業未來發展的努力進行表彰,實現與時代共同探索區塊鏈,共創行業美好藍圖。[2019/12/27]
現有的NOP操作碼可能是專門為了具有升級機制而添加的,以便我們可以輕松地向比特幣腳本語言添加新的操作碼。
但到目前為止,它們僅用于CHECKLOCKTIMEVERIFY和CHECKSEQUENCEVERIFY。為了與軟叉兼容,這些NOP只能執行以下兩項操作之一:1)中止或2)根本不執行任何操作。
由于它們重新定義了NOP,目前CHECKLOCKTIMEVERIFY和CHECKSEQUENCEVERIFY兩操作碼無法以任何方式修改堆棧。結果是,它們不會從堆棧中彈出參數,而你總是需要在后面跟一個OP_DROPafter。
操作碼不執行任何操作(即NOP),Tapscript是一種解決方案,它引入了一個新的操作碼OP_SUCCESS,它“返回TRUE”。這些操作碼只有在被使用時才被用到,并且直到它們在網絡上定義了鎖定的語義后才被使用。
結果是,禁用和從未定義的操作碼編號將變為“return TRUE”。隨后,可以將這些操作碼重新定義為任何內容,因為所有內容是軟分叉的,與“return TRUE”兼容。
簽名哈希(SIGHASH)的計算方式不同于舊腳本或BIP143 v0隔離見證中的計算方式。
什么是簽名哈希?簡而言之,簽名哈希是比特幣簽名的標志,用于指示對交易的哪些部分進行簽名。
使用scriptsigs,簽名可以證明你有權花費某些比特幣。這些簽名以某種方式構造,簽名后附加了一個字節,用于指定以哪種方式對交易進行簽名。因此已經有一些SIGHASH被部署和實施。
最常用的是SIGHASH_ALL,其中除scriptsigs之外的所有內容均被簽名。而當僅對當前輸入進行簽名并且交易中的所有其他內容均不視為簽名的一部分時,將使用諸如SIGHASH_ANYONECANPAY,承諾(commitment)不包括在內。
對于這些SIGHASH類型,已經提出了許多改進建議,比如你只想在交易的某些方面簽名,以及可以指定在花費比特幣時對什么條件感興趣(不感興趣)的條件。SIGHASH已經提出了許多有關如何執行此操作的標志,包括SIGHASH_NOINPUT。
它的工作方式是屏蔽交易的不同部分。SIGHASH_NOINPUT背后的想法是,你不在乎提供的是什么特定輸入,你不在乎為交易提供輸入的交易ID是什么,但你在乎的是金額。在SegWit之前,這是在2015年提出的可延展性修復程序,它本身就是可延展性修復的。因為圍繞SIGHASH_NOINPUT的擔憂和風險,社區沒有將其合并到比特幣協議中(但是SegWit的引入重新打開了此升級的大門)。
SIGHASH_NOINPUT的主要好處是,它極大地簡化了諸如閃電網絡等支付渠道。一個關于改變閃電工作方式的提議是eltoo,當有人試圖作弊時,對其進行處罰時,它通過傳輸已失效的先前狀態從而不必再關閉通道,簡化通道使用。
這需要更改比特幣腳本。尤其是,更改涉及將簽名應用于交易(即Sighash系統)的方式,這使用戶可以重新平衡到其他輸入。
盡管對現有的某些Sighash類型進行了一些調整,但是Schnorr/Taproot/Tapscript提案所提供的功能與BIP 118即SIGHASH_NOINPUT完全不相似(已經有很多關于使其安全的各種方法的討論)。
Tapscript并未包括SIGHASH_NOINPUT,而是提供了幾種靈活性機制(比如帶標簽的公共密鑰),這些機制將允許在不增加成本的情況下開放此功能。這種機制將使以后的軟分叉很容易使用新的Sighash類型,或其他更改來擴展簽名檢查操作碼。
使用Tapscript,以你不知道的字節開頭的公鑰會自動生效。因此,可以引入新型的簽名方案和新的Sighash方案,而無需為每種方案添加新的Checkig操作碼。像SIGHASH_NOINPUT這樣的功能,可以作為新的公共密鑰版本不增加成本地包含在內。
Tapscript還更改了資源限制。
例如,今天的比特幣腳本有10000字節的腳本大小限制,該限制將被刪除。它還消除了操作碼數量的限制。
由于簽名哈希中沒有直接包含scriptCode(僅通過可預先計算的tapleaf哈希間接包含),因此簽名檢查所花費的CPU時間不再與所執行腳本的大小成比例。
在Tapscript中,簽名操作碼的數量不會計入BIP141或舊的sigop限制。舊的sigop限制使在創建區塊中選擇交易很繁瑣,因為它是一個隨著權重附加的約束。相反,Tapscript簽名操作碼的數量受見證人權重的限制。
Tapscript與BIP 340/341一起擴大了比特幣可能的有趣應用的數量,例如特殊的Taproot合約。特殊的Taproot合約允許執行更復雜的多方合約,并為基于比特幣的分散式自治組織(DAO)開辟了可能性。
在比特幣上激活BIP 340–342
如何將升級添加進比特幣協議?
提交BIP后,將編寫代碼以匹配規范,然后將其作為拉取請求(pull request)提交。此階段之后,用戶和開發人員對拉取請求進行投票。即使將其合并,用戶也可以通過運行新代碼(或不運行并堅持使用舊代碼)進行實際投票。
Schnorr/Taproot/Tapscript升級目前處于社區反饋階段(如下圖所示)。下一步是處理代碼,獲取對比特幣的拉取請求,并準備好測試網絡。
盡管下圖表明進展是線性發生的,但是在社區反饋和協議實施階段之間可能會有一些反饋循環(例如,當規范轉換為工作代碼時,提案可能會進行進一步的更改)。
BIP如何進入比特幣協議中概覽
從2017年的SegWit升級可以看出,BIP 9的使用(需要95%的礦工表示已做好激活準備)可能導致社區不同參與者、開發人員/用戶與礦工之間進行拔河比賽。
一些人認為,比特幣礦工可能將BIP 9用作強大的工具,并根據自己的利益打造協議。例如,SegWit無法通過BIP 9激活,而是轉向了由shaolinfry創建的變體,即用戶激活的軟叉或BIP 148。
為了激活BIP 340–342,比特幣開發人員Matt Carallo借鑒了SegWit升級的經驗教訓,提出了“大共識清理”作為一種可能的方法。該提議結合了BIP 8和BIP 9的理想特性,看起來像這樣:
1、激活方法最初以類似于標準的BIP 9的方式部署(通常在一年的時間范圍內需要95%的礦工準備就緒),
2、如果此途徑激活失敗,則需要六個月的時間來讓社區討論未激活升級的原因,
3、用戶可以選擇兩年激活期的BIP 8部署。
這種激活方法試圖在遵循社區意愿的基礎上進行平衡,但同時又要使激活期足夠長,以確保比特幣協議的更改不會成為負面先例。
時間是不確定的,因為不知道將這些建議轉換為工作代碼時是否會發生意外的問題。到2020年末或許更晚,我們才能看到BIP 340-342的激活。
Schnorr/Taproot/Tapscript可以說是比特幣迄今為止最重大的變化,它可以改善擴展性,提高隱私性和智能合約功能。以SegWit采用作為標準,盡管至少要花兩年甚至兩年以上的時間才能看到它們的廣泛采用,但比特幣的收益將是深遠的。
延伸閱讀:
金色硬核 | Schnorr簽名哪里好 2020年比特幣可能為它軟分叉(1)
金色硬核 | 什么是Taproot?它將為比特幣帶來什么好處(2)
3月17日,根據Coindesk報道,Steemit社區計劃在3月20日對Steemit區塊鏈進行硬分叉,以在新鏈上銷毀Steemit控制的創始開發基金.
1900/1/1 0:00:003月19日,互鏈脈搏與獵聘聯合制作的《2020年中國區塊鏈人才發展報告》將線上發布。據《2020年中國區塊鏈人才發展報告》顯示,2019年區塊鏈從業者年薪在20—40萬元區間占比最高,約為43.
1900/1/1 0:00:00根據民主黨女眾議員馬克西娜·沃特斯(Maxine Waters)提議,每月向美國的每個成年人免費發放2000美元,向每個兒童提供1000美元,以幫助他們度過COVID-19金融危機.
1900/1/1 0:00:00“又雙叒叕”都不夠用了!在3月份,泰達公司對USDT的增發可謂到了“肆無忌憚”的地步,說起泰達的USDT增發史,那可以說太多故事,其在穩定幣領域的地位和商業模式也是令多少人抨擊和眼紅啊.
1900/1/1 0:00:00如果你剛開始學習數字貨幣交易的技巧,那么很可能已經遇到過術語“移動平均線”。對于任何類型的分析來說,移動平均線都是非常重要的元素。投資者,交易員和分析師在采取行動時,都會將移動平均線考慮在內.
1900/1/1 0:00:00巴西預計2024年底對公眾開放使用數字貨幣:金色財經報道,巴西中央銀行當地時間8月7日對外公布了該國第一款數字貨幣的正式名稱,為“德雷克斯 ”(Drex).
1900/1/1 0:00:00