Public-Key

解析比特幣輸出腳本以從創世塊中提取地址

  • December 25, 2021

我已經看過類似的問題 -連結創世紀塊,但我有一個不同的問題。

我正在解析39ed112558fd501424e3b33bbcbf853ef9f24536ef0f8e6fbad2f5c5098173ad具有 COINBASE 輸入和 1 個輸出的事務。下面是輸出腳本

41046669fa7aa0167f2ec25f903e331668bf2b8f51aba721cb0dfd7857bd03836397e4d7da5d21830fc92c4b5606c94b1882d532d0806817f37c9942ddd987dc0482ac

我嘗試解析它以提取輸出地址,但被卡住了。下面是我執行的

41 - Push(65)
046669fa7aa0167f2ec25f903e331668bf2b8f51aba721cb0dfd7857bd03836397e4d7da5d21830fc92c4b5606c94b1882d532d0806817f37c9942ddd987dc0482
ac - OP_CHECKSIG 

我嘗試散列並將 stack( 046669fa7aa0167f2ec25f903e331668bf2b8f51aba721cb0dfd7857bd03836397e4d7da5d21830fc92c4b5606c94b1882d532d0806817f37c9942ddd987dc0482) 中的值轉換為 Base58 並嘗試雙散列但無法提取地址1FVJ9qoD9di6cXXi47SUsNN18SLzYMaunP。我知道我必須在這裡做錯/不完整的事情,但無法確定問題。

節日快樂!

這被稱為支付公鑰 (P2PK) 輸出,因為公鑰是直接編碼的,而不是公鑰的散列。

以 1 開頭的比特幣地址對公鑰的雜湊進行編碼。當在輸出中使用散列而不是密鑰本身時,這被稱為 Pay-to-Public-Key-Hash (P2PKH)。

因此,傳統上沒有與此輸出直接相關的地址。從這樣的輸出中派生地址並不打算這樣做,而且可能會產生很大的誤導。但是,可以按照此處的比特幣 wiki 上的步驟來完成。

引用自:https://bitcoin.stackexchange.com/questions/111428