比特幣交易所 比特幣交易所
Ctrl+D 比特幣交易所
ads
首頁 > LTC > Info

是誰控制了比特幣,是你?還是錢包?BTC地址與交易原理大剖析_ASH

Author:

Time:1900/1/1 0:00:00

編者按:本文來自安比實驗室,作者:安比實驗室,星球日報經授權發布。回到這一節的問題:為什么說比特幣從未實現真正意義上的轉賬功能。答案很簡單,因為比特幣系統中根本就不存在賬戶的概念,賬戶之間的轉賬也無從談起。一個人能在未來打開多少個保險箱,也是未知數。通過上面的解釋,我們可知:當pywallet開源庫誤將1-地址識別為3-地址時,就好像將原本的1-類保險箱改造成了3-類保險箱,而賬戶持有者還是拿著1-類保險箱的鑰匙去解鎖,那么自然無法打開保險箱。那么之前zer0to0ne發現的被誤鎖住的OmniLayer數字資產是否能恢復?是否存在一種可能性,采用1-地址的鑰匙去開啟3-保險箱?zer0to0ne接著向我們詳細解釋了兩個重要概念P2PKH與P2SH的來龍去脈。這兩個名詞分別代表了兩種不同的比特幣交易類型。下面是zer0to0ne的精彩技術細節分析P2PKH——中本聰的偉大發明

PaytoPublicKeyHash顧名思義,是將比特幣放入一個保險箱,鑰匙孔為公鑰Hash。我們最常見到的1-地址本質上就是PublicKeyHash的一種編碼。1-地址的生成過程也很簡單,將公鑰經過Hash160運算得到PublicKeyHash,在PublicKeyHash頭部補上前綴0x00,Hash尾部補上校驗和,經過Base58便得到了1開頭的比特幣地址。Base58(0x00+<PublicKeyHash>+Checksum)我們來看看P2PKH交易類型的保險箱構造過程,Alice發送比特幣給Bob為例:付款方Alice在構造保險箱的時候需要設置一個鎖定腳本:OP_DUPOP_HASH160(Bob收款地址蘊含的PublicKeyHash)OP_EQUALVERIFYOP_CHECKSIG注:我們可以把這一步理解為Alice為Bob定制了一個保險箱,把比特幣放入保險箱并用Bob的公鑰PubKeyHash上鎖。現在這把鎖除了持有私鑰的Bob,誰都無法打開。當Bob需要花費Alice給他的比特幣時,需要提供必要的參數:交易簽名+公鑰來開啟保險箱,使得鎖定腳本執行后返回True,這一步通常由錢包自動完成。我們來看看比特幣節點是如何校驗scriptSig合法性的。

富國銀行資管官員:XRP的價值可能會飆升至500美元:金色財經報道,在最近的一份聲明中,富國銀行的資金管理官員Shannon Thorp對XRP做出了引人注目的價格預測。他預計短期內,特別是在未來4到7個月內,XRP的價值可能會飆升至100美元至500美元之間。此次價格上漲預測較當前交易價值增加了??14,200%至71,400%,[2023/7/31 16:09:28]

腳本執行過程如圖所示,Bob將交易簽名后得到的數據,真正的scriptSig應該為<siglen><sig><pubKeylen><pubKey>,比特幣腳本執行器從PUSH數據開始,PUSH操作會讀取第一個字節獲取將要入棧的數據長度信息,然后持續執行比特幣腳本,直到最后執行完畢檢查執行結果。首先入棧的是<sig>,然后將<PubK>入棧,一次DUP操作將在棧頂復制一份<PubK>,HASH160彈出棧頂的并計算Hash,將結果壓回棧中,之后使用EQUALVERIFY彈出Hash對比是否合相等,如果相等則返回True,不相等便標記交易為無效。執行到這一步,暴露了公鑰,確保了簽名者的身份的正確性,但是黑客或礦工可以通過暴露的公鑰構造出一個新的交易替換原始交易,無法保證安全,那么便需要下一步來保證交易無法偽造。此時棧上還有<PubK>和<sig>,執行CHECKSIG,將校驗數字簽名的正確性,確保了簽名者擁有地址對應的私鑰。數字簽名除了持有私鑰的人,誰也無法偽造,執行至此,一筆比特幣P2PKH交易已經安全地完成了。再解釋一遍:當Bob要花費Alice給他的比特幣時,Bob只有用正確的鑰匙才能打開Alice留給他的保險箱,把錢放入Bob新構造的一個保險箱里。這時候一些聰明的讀者會注意到一個細節:如果Bob取出鑰匙,在還未打開保險箱的時刻,區塊鏈上的任何礦工都能看得見這把鑰匙的形狀,理論上他們是可以立即復制一把鑰匙,把Alice留給Bob的保險箱打開并花掉。真的可以這樣做嗎?顯然中本聰考慮了這個問題,這把鑰匙中的交易簽名是Bob發起的交易的完整簽名。假設Bob要將Alice構造的保險箱中的比特幣裝入一個新的保險箱,這時候Bob出示的鑰匙包含了Charlie的公鑰Hash,礦工雖然可以復制Bob的鑰匙,但是這把鑰匙已經隱藏了下一個新保險箱的關鍵信息,因此礦工無法使用這個復制鑰匙來完成別的動作。P2SH——后中本聰時代的重大創新

0x7641開頭巨鯨地址在CPI公布后買入超3000枚以太坊:5月10日消息,據Lookonchain監測,0x7641開頭巨鯨地址在CPI公布后花費700萬枚DAI買入3726枚以太坊,均價為1879美元。該地址于四日前以太坊基金會向交易所轉入以太坊后出售了9140枚以太坊。[2023/5/11 14:55:50]

中本聰設計了一個這么強大的腳本系統,只用來構造轉賬交易似乎太浪費了,我們試試用其他指令構造一些特別的鎖定腳本,并使用其他方式來解鎖。例如我們可以構造一個用Hash原象來解鎖交易的腳本:OP_HASH160<Hash>OP_EQUAL這個腳本的含義是:當滿足Hash160(Pre-image)==<Hash>這個條件時,便可成功將腳本解鎖。我們繼續通過保險箱的例子來解釋,并給這類保險箱起名為3-類保險箱。現在Alice給Bob的比特幣鎖定在一個由上述Hash160保護的保險箱里,我們姑且稱之為哈希鎖吧。這把鎖依然需要正確的形狀才能開啟,但是安全性卻弱很多,缺少數字簽名機制導致鑰匙隱藏的關鍵信息不會隨著Bob新建的保險箱而變化。任何礦工都能在Bob亮出鑰匙的一瞬間復制出一摸一樣的鑰匙,搶著去開Alice留給Bob的保險箱,將幣轉給另一個人Eve,于是原本屬于Bob的比特幣會被洗劫一空。雖然這個腳本非常不安全,但是它卻有兩個非常神奇的功能:1.交易構造的輸出足夠短,意味著比特幣節點維護的UTXO緩存占用空間將會大大減小2.Pre-image總是在交易被花費時作為input來引用,不會在交易的output側出現,UTXO依然保持精簡,同時可以把手續費負擔轉嫁給接收方。既然所述的輸出腳本好處很多,那我們是否有辦法讓這種交易方式變得安全呢?這就需要講講什么是P2SH了。比特幣核心開發者GavinAdresen提出了一種叫做PaytoScriptHash(P2SH)的技術。P2SH的交易輸出依然是判斷Hash160(Script)==<ScriptHash>,這里Script就是上文中提到的Pre-image但是在判斷完畢后又增加了一個步驟:使用比特幣腳本執行器再次運行Script本身。比特幣開發者為這類交易創建了特殊的地址,用3作為開頭,地址生成規則為:Base58(0x05+<ScriptHash>+Checksum)這樣事情就變得有趣了,在前P2SH時代Script僅僅作為Hash160的原象存在,但是一旦激活了P2SH,Script必須要求是一段有意義、可執行的比特幣腳本。我們可以在Script中加入數字簽名檢查的指令,或者多重簽名檢查功能,甚至智能合約都可以在P2SH的基礎上進行開發,既使用了強大的比特幣腳本,又能讓交易保持精簡。并且由于P2SH交易地址中只存有ScriptHash,相當于保險箱上只有Hash。在交易被成功花費之前,任何人都無法知曉Script內容,很好的保護了隱私。P2SH在2012年4月1日激活,開啟了比特幣的P2SH時代現在全世界的3-類保險箱經過了升級,再也不怕鑰匙被復制了,因為保險箱的鑰匙會內置芯片。升級后的保險箱除了能夠校驗鑰匙形狀,更能讀取鑰匙中內置的芯片的數據,芯片中的內容會影響鑰匙的形狀。Bob制作了一個能夠校驗鑰匙芯片中數字簽名的保險箱,讓Alice把錢放進這個保險箱然后鎖起來。Bob開啟保險箱的鑰匙形狀雖然可以被復制,但是這把鑰匙內置了芯片,芯片中可以包含各種高級約束條件,保證鑰匙不會被越權濫用。保險箱會在校驗完形狀后,會執行鑰匙芯片內的程序查有效性,只有兩個檢查都通過才能開啟保險箱。被鎖死的幣是否有挽回可能

中國園林博物館首發數字藏品:金色財經報道,據中國園林博物館官方公眾號,中國園林博物館推出首款主題數字藏品系列《典籍中的園林》。[2022/6/28 1:35:24]

再回到開頭的那個問題,zer0to0ne遇到的錢包錯誤鎖死資產的事故,能否采用1-地址的鑰匙去開啟3-保險箱,挽救保險箱中的資產呢?這個問題可以解釋為:Alice按照Bob的要求制作了一個3-類保險箱,但是這個保險箱是被pywallet錯誤修改的,實際上Bob的本意是需要一個1-類保險箱,因為Bob手里只有一個1-類保險箱的鑰匙。當Bob請求Alice把比特幣鎖定到3-類保險箱時,這個保險箱就需要同時校驗鑰匙形狀和鑰匙芯片內容了,但是Bob的1-類保險箱的鑰匙形狀是PublicKey決定的,在保險箱誤變為3-類保險箱后,鑰匙形狀校驗卻沒有改變,也沒有相應的鑰匙芯片內容。Bob嘗試在鑰匙芯片中寫入PublicKey,使得鑰匙形狀和鎖匹配,但是芯片中的PublicKey卻無法被保險箱正確執行,所以Bob可能再也無法將他的比特幣從保險箱中解鎖了。SegWit——全新時代來臨

比特幣開核心發者EricLombrozo,JohnsonLau,PieterWuille提出來了一種全新的概念,隔離見證。這是一種有效緩解比特幣區塊擁堵的技術,并且徹底解決了交易延展性問題。在SegWit升級之前,每一個用完的鑰匙都插在保險箱上,鑰匙占據了一定的體積導致倉庫無法密集堆積這些用完的保險箱,總是要為了露在外面一大截的鑰匙騰空間。那我們想想能不能把鑰匙體積減小,并且用足夠廉價的材料來制作,節約成本。于是便有了隔離見證,它干脆直接把鎖從保險箱上移走,變成一個遠程無線校驗的保險箱,用戶可以把鑰匙統一插在遠離保險箱的地方來遠程開啟對應的保險箱。2017年08月24日,SegWit軟分叉被正式激活,結束了曠日持久的礦工開發者對峙為了兼容3-類保險箱,比特幣開發者使用了一種叫做P2SH-P2WPKH的技術,即通過P2SH來包裹P2WPKH交易,讓P2WPKH交易可以騙過不支持SegWit的老舊節點。還有一種類似P2SH包裹的P2WSH技術,在此不多做介紹。我們先來解釋一下P2WPKH是什么:P2WPKH全稱PaytoWitnessPublicKeyHash,相較于P2PKH,P2WPKH把scriptSig移動到交易外部,節省了占用的區塊空間。為了向前兼容未及時升級的比特幣節點,這個P2SH需要如何構造呢?Bob首先產生一個P2PKH地址,從地址中解析出PubKeyHash,然后構造一個這樣的腳本:Script=0x0014+<PubkeyHash>然后計算Script的Hash160得到ScriptHash,構造出一個3地址:Base58(0x05+<ScriptHash>+Checksum)當Alice把幣鎖定到Bob提供的<ScriptHash>中,意味著Bob需要提供正確的Script才能解鎖。Bob通過構造有效的Script通過了Hash160檢查,即成功的通過了鑰匙形狀檢查,并且鑰匙里的程序也能被保險箱正確解析并執行。細心的讀者應該又發現了問題,這個鑰匙卻少了相關安全性約束,很容易被復制,礦工有機會將交易篡改,把幣轉給Eve。但是升級了SegWit之后,支持SegWit的比特幣節點會在校驗P2SH后再額外地校驗Bob的簽名是否正確,數字簽名作為獨立于交易之外的安全約束,不再占用寶貴的區塊空間。zer0to0ne:SegWit為比特幣擴容做出了貢獻的同時,也同時在保持向前兼容性上面付出了一些代價。在原生SegWit交易被廣泛采用之前,使用了混亂的P2SH兼容技術。如果未來比特幣全部統一到bc1-地址,那么就可以徹底避免使用P2SH包裹技術,并且最大限度地利用區塊容量。對三個問題的回復

RACA聯合創始人French Montana在USM畫廊與用戶進行互動:據官方消息,美國時間5月21日下午3:00點,RACA聯合創始人French Montana在USM元宇宙畫廊中與用戶進行近距離互動。用戶在USM元宇宙中實現了與偶像近距離溝通,共同慶祝RACA一周年慶典。在一年時間內,RACA確立了自己在元宇宙領域的地位,并將與來自世界各地的更多人共同創建社區。[2022/5/23 3:34:28]

比特幣地址有1打頭地址,也有3打頭的地址,你知道這兩者有什么區別嗎?1-地址是用做P2PKH交易的目標地址,而3-地址是用作P2SH,SegWit交易的目標地址。在哪種情況下,地址上的比特幣會被鎖死?假設一個比特幣地址為3-地址,如果世界上沒有人能夠提供一個可以通過Hash160校驗并有效可執行的腳本,那么這個地址上的比特幣會被鎖死。到底是誰擁有比特幣的控制權,是你?還是你在使用的錢包?如果一個比特幣地址為1-地址,那么該地址上的比特幣被鎖在一個1-類保險箱中,擁有私鑰的用戶擁有該地址上的比特幣。這里請注意“擁有私鑰”有兩層含義:自己牢記私鑰,其他人無從知曉。如果一個比特幣地址為3-地址,那么在某個用戶披露一個“解鎖腳本”之前,沒人知道該地址上的比特幣歸屬。因為腳本由錢包來生成的,而用戶只“擁有私鑰”,如果你不知道地址對應的腳本,就相當于交出了地址控制權。腳本的內容才真正決定了比特幣的歸屬。

英國央行副行長坎利夫:我們并不認為加密貨幣存在系統性風險:5月17日消息,英國央行副行長坎利夫表示,正在密切關注加密貨幣;加密貨幣現在被視為一種風險資產;我們并不認為加密貨幣存在系統性風險;但你永遠無法確定什么會引發信心的喪失; 隨著量化緊縮政策的啟動,我們將看到投資者撤出風險資產;許多散戶投資者不懂加密貨幣。(金十)[2022/5/18 3:23:27]

Tags:比特幣ASHHASHBOB1比特幣等于多少美元HexHashhashflow幣價bobt幣怎么挖

LTC
八大區塊鏈共識機制綜述_Chain

編者按:本文來自TokenClub研究院,作者:研究院1組,星球日報經授權發布。區塊鏈技術的偉大之處就是它的共識機制,在去中心化的思想上解決了節點間互相信任的問題.

1900/1/1 0:00:00
高盛再次出手,華爾街將成為幣圈“救世主”?_加密貨幣

本文來自:巴比特資訊,作者:kyle,星球日報經授權轉發。近日消息,華爾街金融巨頭高盛集團領投了區塊鏈創業公司Axoni的3200萬美元B輪融資,這成為高盛在區塊鏈和加密貨幣行業最新動向.

1900/1/1 0:00:00
咖啡與區塊鏈 | 一份完美的區塊鏈應用實戰指南_OFF

編者按:本文來自鏈內參,作者:AnnEwan和CurtisMiles,星球日報經授權發布。區塊鏈是一種在網絡參與者之間交換貨物、服務和信息的安全途徑.

1900/1/1 0:00:00
星物種 | 金山云發布區塊鏈云,“想打破限制用聯盟鏈做游戲”_區塊鏈

9月25日,金山云在GIEC2018全球互聯網經濟大會上正式發布金山區塊鏈云,包含一站式區塊鏈技術服務平臺KBaaS和區塊鏈生態合作計劃Project-X.

1900/1/1 0:00:00
星球日報 | 深圳有望率先試水法定數字貨幣;網易星球正式宣布對外公測;以太坊團隊宣布推遲Casper開發12個月_AMC

頭條 央行數字貨幣研究所多地布局科創中心,深圳有望率先試水法定數字貨幣2018年深圳市政府工作報告顯示,深圳市要推動央行金融科技研究院項目落地,該研究院目前正在籌建中.

1900/1/1 0:00:00
區塊鏈投資:沒有反思,就沒有收獲_區塊鏈

編者按:本文來自藍狐筆記,作者:CryptoYoda,編譯:Leo,星球日報經授權發布。前言:本文適合區塊鏈的交易者學習,尤其是初學者,本文作者是CryptoYoda,是一位資深的交易者,有豐富.

1900/1/1 0:00:00
ads