Soliditas - Fungsi Kriptografi
Soliditas juga menyediakan fungsi kriptografi bawaan. Berikut adalah metode penting -
keccak256(bytes memory) returns (bytes32) - menghitung hash Keccak-256 dari input.
sha256(bytes memory) returns (bytes32) - menghitung hash SHA-256 dari input.
ripemd160(bytes memory) returns (bytes20) - hitung hash RIPEMD-160 dari input.
sha256(bytes memory) returns (bytes32) - menghitung hash SHA-256 dari input.
ecrecover(bytes32 hash, uint8 v, bytes32 r, bytes32 s) returns (address)- memulihkan alamat yang terkait dengan kunci publik dari tanda tangan kurva elips atau mengembalikan nol pada kesalahan. Parameter fungsi sesuai dengan nilai ECDSA dari tanda tangan: r - 32 byte pertama tanda tangan; s: 32 byte tanda tangan kedua; v: 1 byte terakhir dari tanda tangan. Metode ini mengembalikan alamat.
Contoh berikut menunjukkan penggunaan fungsi kriptografi di Solidity.
Contoh
pragma solidity ^0.5.0;
contract Test {
function callKeccak256() public pure returns(bytes32 result){
return keccak256("ABC");
}
}
Jalankan program di atas menggunakan langkah-langkah yang disediakan di bab Aplikasi Solidity First .
Keluaran
0: bytes32: result 0xe1629b9dda060bb30c7908346f6af189c16773fa148d3366701fbaa35d54f3c8