सॉलिडिटी - क्रिप्टोग्राफ़िक फ़ंक्शंस

सॉलिडिटी इनबिल्ट क्रिप्टोग्राफिक कार्यों को भी प्रदान करती है। निम्नलिखित महत्वपूर्ण तरीके हैं -

  • keccak256(bytes memory) returns (bytes32) - इनपुट के Keekak-256 हैश की गणना करता है।

  • sha256(bytes memory) returns (bytes32) - इनपुट के SHA-256 हैश की गणना करता है।

  • ripemd160(bytes memory) returns (bytes20) - इनपुट के RIPEMD-160 हैश की गणना करें।

  • sha256(bytes memory) returns (bytes32) - इनपुट के SHA-256 हैश की गणना करता है।

  • ecrecover(bytes32 hash, uint8 v, bytes32 r, bytes32 s) returns (address)- अण्डाकार वक्र हस्ताक्षर से सार्वजनिक कुंजी से जुड़े पते को पुनर्प्राप्त करें या त्रुटि पर शून्य लौटें। फ़ंक्शन पैरामीटर हस्ताक्षर के ईसीडीएसए मूल्यों के अनुरूप हैं: आर - हस्ताक्षर के पहले 32 बाइट्स; एस: हस्ताक्षर के दूसरे 32 बाइट्स; v: हस्ताक्षर के अंतिम 1 बाइट। यह विधि एक पता देती है।

निम्नलिखित उदाहरण से सॉलिडिटी में क्रिप्टोग्राफिक फ़ंक्शन के उपयोग से पता चलता है।

उदाहरण

pragma solidity ^0.5.0;

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

सॉलिडिटी फर्स्ट एप्लीकेशन चैप्टर में दिए गए चरणों का उपयोग करके उपरोक्त प्रोग्राम को चलाएं ।

उत्पादन

0: bytes32: result 0xe1629b9dda060bb30c7908346f6af189c16773fa148d3366701fbaa35d54f3c8