Script

OP_SHA256 - 散列字元串表示

  • October 6, 2022

我正在建構自己的比特幣腳本解釋器用於學習目的。我已經將我的結果與https://siminchen.github.io/bitcoinIDE/build/editor.html進行了比較

以及由此產生的腳本OP_16 OP_SHA256

0x4A44DC15364204A80FE80E9039455CC1608281820FE2B24F1E5233ADE6AF1DD5

那是'10’的字元串表示的雜湊(十六進制的16)

而不是位的散列(即c555eab45d08845ae9f10d452a99bfcb06f74a50b988fe7e48dd323789b88ee3:)

比特幣腳本解釋器是否對任何十六進制值的字元串表示進行雜湊處理,而不是對原始數字進行雜湊處理?

編輯:這是一種正常的行為,以防止類似的事情SHA256(1) == SHA256(01)嗎?

謝謝大家的答案。

不,正確的結果應該是c555eab45d08845ae9f10d452a99bfcb06f74a50b988fe7e48dd323789b88ee3

我認為這個解釋器是錯誤的。查看原始碼,它與協議有其他偏差(例如OP_MUL,它不存在)。

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