solidity 0.5.0中keccak256(password) 报错。

browser/contract.sol:39:65: TypeError: Invalid type for argument in function call. Invalid implicit conversion from string memory to bytes memory requested. This function requires a single bytes argument. Use abi.encodePacked(...) to obtain the pre-0.5.0 behaviour or abi.encode(...) to use ABI encoding.
userPool[username] = Administrators(addr, username, keccak256(password));

上面上报错内容。

按照提示把keccak256(password)修改成 keccak256( abi.encode(password)) 或者 keccak256( abi.encodePacked(password))都是正确的。

 

你可能感兴趣的:(学习历程)