String

Zokrates教程中如何驗證整數5的sha256結果?

  • September 12, 2019

此處的 Zokrates 教程從計算(數字)5 的 SHA256 雜湊開始。

結果的十六進製表示顯示在此處的底部:

在此處輸入圖像描述

但是,我無法在我的 ubuntu 18.04 命令行上重現這一點:

(venv3.6) ~/zokrates_tutorial$ echo 5 | sha256sum
f0b5c2c2211c8d67ed15e75e656c7862d086e9245420892a7de62cd9ec582a06  -

那麼這裡發生了什麼?

因此,我通過此連結找到了令人信服的驗證。

在 python 中,有一個函式可以將十六進製字元串轉換為字節表示,如下所示:

>>> preimage = bytes.fromhex('00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 05')

然後可以從中計算十六進制摘要:

>>> hashlib.sha256(preimage).hexdigest()
'c6481e22c5ff4164af680b8cfaa5e8ed3120eeff89c4f307c4a6faaae059ce10'

這在教程中確實是一樣的。

引用自:https://ethereum.stackexchange.com/questions/75888