Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> Javascript

Crypto.createHmac () Node.js में विधि

<घंटा/>

Crypto.createHmac() विधि एक Hmac ऑब्जेक्ट बनाएगी और फिर उसे वापस कर देगी। यह Hmac पारित एल्गोरिथ्म और कुंजी का उपयोग करता है। स्ट्रीम व्यवहार को नियंत्रित करने के लिए वैकल्पिक विकल्पों का उपयोग किया जाएगा। परिभाषित कुंजी HMAC कुंजी होगी जिसका उपयोग क्रिप्टोग्राफ़िक HMAC हैश उत्पन्न करने के लिए किया जाता है।

सिंटैक्स

crypto.createHmac(algorithm, key, [options])

पैरामीटर

उपरोक्त पैरामीटर नीचे वर्णित हैं -

  • एल्गोरिदम - इस एल्गोरिथम का उपयोग Hmac ऑब्जेक्ट्स को जनरेट करने के लिए किया जाता है। इनपुट प्रकार स्ट्रिंग है।

  • कुंजी - क्रिप्टोग्राफ़िक एचएमएसी हैश उत्पन्न करने के लिए उपयोग की जाने वाली एचएमएसी कुंजी।

  • विकल्प - ये वैकल्पिक पैरामीटर हैं जिनका उपयोग स्ट्रीम व्यवहार को नियंत्रित करने के लिए किया जा सकता है।

  • एन्कोडिंग - उपयोग करने के लिए स्ट्रिंग एन्कोडिंग।

उदाहरण

नाम के साथ एक फाइल बनाएं - createHmac.js और नीचे दिए गए कोड स्निपेट को कॉपी करें। फ़ाइल बनाने के बाद, इस कोड को चलाने के लिए निम्न कमांड का उपयोग करें जैसा कि नीचे दिए गए उदाहरण में दिखाया गया है -

node createHmac.js

createHmac.js

// crypto.createHmac() demo example

// Importing the crypto module
const crypto = require('crypto');

// Defining the secret key
const secret = 'TutorialsPoint';

// Initializing the createHmac method using secret
const hmacValue = crypto.createHmac('sha256', secret)

   // Data to be encoded
   .update('Welcome to TutorialsPoint !')

   // Defining encoding type
   .digest('hex');

// Printing the output
console.log("Hmac value Obtained is: ", hmacValue);

आउटपुट

C:\home\node>> node createHmac.js
Hmac value Obtained is:
dd897f858bad70329fad82087110059f5cb920af2736d96277801f70bd57618e

उदाहरण

आइए एक और उदाहरण देखें।

// crypto.createHmac() demo example

// Importing the crypto & fs module
const crypto = require('crypto');
const fs = require('fs');

// Getting the current file path
const filename = process.argv[1];

// Creting hmac for current path using secret
const hmac = crypto.createHmac('sha256', "TutorialsPoint");

const input = fs.createReadStream(filename);
input.on('readable', () => {
   // Reading single element produced by hmac stream.
   const val = input.read();
   if (val)
      hmac.update(val);
   else {
      console.log(`${hmac.digest('hex')} ${filename}`);
   }
});

आउटपुट

C:\home\node>> node createHmac.js
0489ce5e4bd940c06253764e03927414f79269fe4f91b1c75184dc074fa86e22
/home/node/test/createHmac .js

  1. क्रिप्टो.प्राइवेटएन्क्रिप्ट () Node.js में विधि

    Crypto.privateEncrypt() का उपयोग फ़ंक्शन में दिए गए निजी कुंजी पैरामीटर का उपयोग करके दी गई डेटा सामग्री को एन्क्रिप्ट करने के लिए किया जाता है। सिंटैक्स crypto.privateEncrypt(privateKey, बफर) पैरामीटर उपरोक्त पैरामीटर नीचे वर्णित हैं - निजी कुंजी - इसमें निम्नलिखित डेटा प्रकार हो सकते हैं - ऑब

  1. क्रिप्टो.प्राइवेटडिक्रिप्ट () Node.js में विधि

    क्रिप्टो.प्राइवेटडिक्रिप्ट () का उपयोग पैरामीटर में पारित एक निजी कुंजी का उपयोग करके दी गई डेटा सामग्री को डिक्रिप्ट करने के लिए किया जाता है जिसे पहले क्रिप्टो.पब्लिकएनक्रिप्ट () विधि के साथ संबंधित सार्वजनिक कुंजी का उपयोग करके एन्क्रिप्ट किया गया था। सिंटैक्स crypto.privateDecrypt(privateKey, बफ

  1. क्रिप्टो.getHashes () Node.js में विधि

    क्रिप्टो.getHashes() विधि एक सरणी लौटाएगी जिसमें सभी समर्थित हैश एल्गोरिदम के नाम होंगे। क्रिप्टो पैकेज में हैश एल्गोरिदम की एक विशाल सूची है जिसका हम उपयोग कर सकते हैं। लेकिन सबसे अधिक इस्तेमाल किया जाने वाला सिफर एल्गोरिथम MD5 - Message-Digest Algorithm5 है। सिंटैक्स crypto.getHashes() पैरामीटर च