Solidity

keccak256(abi.encodePacked()) 函式中可以輸入的最大輸入數是多少?

  • March 16, 2022

我正在學習在加密殭屍上使用 keccak 函式,並且看到該函式需要三個輸入:

uint(keccak256(abi.encodePacked(now, msg.sender, randNonce)))

讓我想知道允許輸入多少個輸入。

這裡 abi.encodePacked 對輸入數量沒有限制。它只是將您的輸入連接到一次。

範例:根據您的功能。

now = 1647410149
msg.sender = 0x6774A9dA5152d9c4BF9c468f0748d191Ac146720
randNonce = 15456

Assume your function input types : (uint32,address,uni256)

abi.encodePacked(now, msg.sender, randNonce) = 0x62317be56774A9dA5152d9c4BF9c468f0748d191Ac1467200000000000000000000000000000000000000000000000000000000000003c60

有關 abi.encodePacked 的更多資訊,您可以參考solidity -docs

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