Festigkeit - kryptografische Funktionen

Solidity bietet auch integrierte kryptografische Funktionen. Es folgen wichtige Methoden -

  • keccak256(bytes memory) returns (bytes32) - berechnet den Keccak-256-Hash der Eingabe.

  • sha256(bytes memory) returns (bytes32) - berechnet den SHA-256-Hash der Eingabe.

  • ripemd160(bytes memory) returns (bytes20) - RIPEMD-160-Hash der Eingabe berechnen.

  • sha256(bytes memory) returns (bytes32) - berechnet den SHA-256-Hash der Eingabe.

  • ecrecover(bytes32 hash, uint8 v, bytes32 r, bytes32 s) returns (address)- Stellen Sie die dem öffentlichen Schlüssel zugeordnete Adresse aus der Signatur der elliptischen Kurve wieder her oder geben Sie bei einem Fehler Null zurück. Die Funktionsparameter entsprechen den ECDSA-Werten der Signatur: r - erste 32 Bytes der Signatur; s: zweite 32 Bytes Signatur; v: letzte 1 Byte Signatur. Diese Methode gibt eine Adresse zurück.

Das folgende Beispiel zeigt die Verwendung der kryptografischen Funktion in Solidity.

Beispiel

pragma solidity ^0.5.0;

contract Test {   
   function callKeccak256() public pure returns(bytes32 result){
      return keccak256("ABC");
   }  
}

Führen Sie das obige Programm mit den im Kapitel Solidity First Application beschriebenen Schritten aus .

Ausgabe

0: bytes32: result 0xe1629b9dda060bb30c7908346f6af189c16773fa148d3366701fbaa35d54f3c8