Sağlamlık - Kriptografik İşlevler
Solidity, dahili kriptografik işlevler de sağlar. Aşağıdakiler önemli yöntemlerdir -
keccak256(bytes memory) returns (bytes32) - girişin Keccak-256 hash değerini hesaplar.
sha256(bytes memory) returns (bytes32) - girişin SHA-256 hash değerini hesaplar.
ripemd160(bytes memory) returns (bytes20) - girdinin RIPEMD-160 karmasını hesaplayın.
sha256(bytes memory) returns (bytes32) - girişin SHA-256 hash değerini hesaplar.
ecrecover(bytes32 hash, uint8 v, bytes32 r, bytes32 s) returns (address)- genel anahtarla ilişkili adresi eliptik eğri imzasından kurtarmak veya hata durumunda sıfır döndürmek. Fonksiyon parametreleri imzanın ECDSA değerlerine karşılık gelir: r - imzanın ilk 32 baytı; s: ikinci 32 bayt imza; v: son 1 bayt imza. Bu yöntem bir adres döndürür.
Aşağıdaki örnek, Solidity'de kriptografik fonksiyonun kullanımını göstermektedir.
Misal
pragma solidity ^0.5.0;
contract Test {
function callKeccak256() public pure returns(bytes32 result){
return keccak256("ABC");
}
}
Solidity First Application bölümünde verilen adımları kullanarak yukarıdaki programı çalıştırın .
Çıktı
0: bytes32: result 0xe1629b9dda060bb30c7908346f6af189c16773fa148d3366701fbaa35d54f3c8