Solidity
Solidity 中 sha256 函式的參數
在Solidity中,我發現
sha256
函式可以這樣使用a = sha256(uint b, string c, bool d, ......)
(參數可以是不同類型的組合,也可以包含其他類型。)不同類型的參數有什麼作用
sha256
?
Solidity 文件說
sha256
(andsha3
,ripemd160
) 參數非常緊湊:“緊密包裝”意味著參數連接在一起而沒有填充。這意味著以下內容都是相同的:
sha3(“ab”, “c”)
sha3(“abc”)
sha3(0x616263)
sha3(6382179)
sha3(97, 98, 99)
使用問題的範例
a = sha256(uint b, string c, bool d)
,
- 如果我們分配一些值,例如
b
is 31415,c
is"abc"
, andd
is false,- 那麼
a
將等於sha256(31415, 6382179, 0)
,與 相同sha256(0x7ab761626300)
。為了完整起見,文件提到:
如果需要填充,可以使用顯式類型轉換:sha3(“x00x12”) 與 sha3(uint16(0x12)) 相同。