কম্পিউটার টিউটোরিয়াল

Node.js-এ crypto.createVerify() মেথড

Node.js-এ crypto.createVerify() মেথডটি প্যারামিটারে দেওয়া অ্যালগরিদম ব্যবহার করে একটি ভেরিফাই অবজেক্ট তৈরি করে এবং রিটার্ন করে। সব উপলব্ধ সাইনিং অ্যালগরিদমের নাম পেতে crypto.getHashes() ব্যবহার করা যাবে। কিছু ক্ষেত্রে ডাইজেস্ট অ্যালগরিদমের বদলে সিগনেচার অ্যালগরিদমের নাম (যেমন 'RSA-SHA256') ব্যবহার করে Verify ইনস্ট্যান্স তৈরি করা যায়।

সিনট্যাক্স

crypto.createVerify(algorithm, [options])

প্যারামিটারসমূহ

  • algorithm – ভেরিফাই অবজেক্ট/ইনস্ট্যান্স তৈরি করার সময় ব্যবহৃত অ্যালগরিদমের নাম।

  • options – এটি একটি অপশনাল প্যারামিটার যা স্ট্রিম আচরণ নিয়ন্ত্রণ করতে ব্যবহৃত হয়।

উদাহরণ ১

createVerify.js নামে একটি ফাইল তৈরি করুন এবং নিচের কোড স্নিপেটটি কপি করুন। ফাইল তৈরি করার পর নিচের কমান্ড দিয়ে কোডটি রান করুন:

node createVerify.js

createVerify.js

// Node.js প্রোগ্রাম createVerify() মেথডের ব্যবহার দেখানোর জন্য
// crypto মডিউল ইম্পোর্ট করুন
const crypto = require('crypto');

// ইনপুট অ্যালগরিদম দিয়ে ভেরিফাই অবজেক্ট তৈরি করুন
const verify = crypto.createVerify('SHA256');

// ভেরিফাই অবজেক্ট রিটার্ন করুন
console.log(verify);

আউটপুট

C:\home\node>> node createVerify.js
Verify {
    _handle: {},
    _writableState: WritableState {
        objectMode: false,
        highWaterMark: 16384,
        finalCalled: false,
        needDrain: false,
        ending: false,
        ended: false,
        finished: false,
        destroyed: false,
        decodeStrings: true,
        defaultEncoding: 'utf8',
        length: 0,
        writing: false,
        corked: 0,
        sync: true,
        bufferProcessing: false,
        onwrite: [Function: bound onwrite],
        writecb: null,
        writelen: 0,
        bufferedRequest: null,
        lastBufferedRequest: null,
        pendingcb: 0,
        prefinished: false,
        errorEmitted: false,
        emitClose: true,
        autoDestroy: false,
        bufferedRequestCount: 0,
        corkedRequestsFree: {
            next: null,
            entry: null,
            finish: [Function: bound onCorkedFinish]
        }
    },
    writable: true,
    _events: [Object: null prototype] {},
    _eventsCount: 0,
    _maxListeners: undefined
}

উদাহরণ ২

আরেকটি উদাহরণ দেখি।

// Node.js প্রোগ্রাম createVerify() মেথডের ব্যবহার দেখানোর জন্য
// crypto মডিউল ইম্পোর্ট করুন
const crypto = require('crypto');

// SHA256 অ্যালগরিদম থেকে ভেরিফাই অবজেক্ট তৈরি করুন
const verify = crypto.createVerify('SHA256');

// সাইন এবং ভেরিফাই করার জন্য ডেটা লিখুন
verify.write('TutorialPoint');
// মেথড শেষ করুন
verify.end();

// পাবলিক কী এক্সিকিউশন শুরু
const l1 = "-----BEGIN PUBLIC KEY-----\n"
// এনক্রিপ্টেড ডেটা
const l2 = "MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEXIvPbzLjaPLd8jgiv1TL/X8PXpJNgDkGRj9U9Lcx1 yKURpQFVavcMkfWyO8r7JlZNMax0JKfLZUM1IePRjHlFw=="
// পাবলিক কী এক্সিকিউশন শেষ
const l3 = "\n-----END PUBLIC KEY-----"
// সব পাবলিক কী কনক্যাটেনেট করুন
const publicKey = l1 + l2 + l3

// যেই সিগনেচারটি ভেরিফাই করা হবে
const signature = "MEYCIQCPfWhpzxMqu3gZWflBm5V0aetgb2/S+SGyGcElaOjgdgIhALaD4lbxVwa8HUUBFOLz+CGvI ioDkf9oihSnXHCqh8yV";

// সিগনেচার ভেরিফাই হলে true প্রিন্ট করবে, না হলে false
console.log(verify.verify(publicKey, signature));

আউটপুট

C:\home\node>> node createVerify.js
false
  1. Node.js-এ crypto.publicDecrypt() মেথড

  2. Node.js-এ crypto.privateEncrypt() মেথড

  3. Node.js-এ crypto.privateDecrypt() মেথড

  4. Node.js-এ crypto.getHashes() মেথড