crypto.pbkdf2Sync(), যা পাসওয়ার্ড-ভিত্তিক কী ডেরিভেশন ফাংশন 2 নামেও পরিচিত, ডেরিভেটিভ ফাংশনের একটি সিঙ্ক্রোনাস বাস্তবায়ন প্রদান করে। পাসওয়ার্ড, লবণ এবং পুনরাবৃত্তি থেকে একটি নির্দিষ্ট অ্যালগরিদমের Hmac ডাইজেস্ট ব্যবহার করে একটি কী উদ্ভূত হয়। এটি একটি সিঙ্ক প্রক্রিয়ায় কী তৈরি করবে৷
৷সিনট্যাক্স
crypto.createHmac(অ্যালগরিদম, কী, [বিকল্প])
পরামিতি
উপরের পরামিতিগুলি নীচে −
হিসাবে বর্ণনা করা হয়েছে-
পাসওয়ার্ড - অনুরোধ করা বাইট দৈর্ঘ্যের কী পাওয়ার জন্য পাসওয়ার্ড সংজ্ঞায়িত করা হয়েছে। সম্ভাব্য মানগুলি হল স্ট্রিং, ডেটাভিউ, বাফার, ইত্যাদি।
-
লবণ - কী পাওয়ার জন্য পাসওয়ার্ডের অনুরূপ। সম্ভাব্য মানগুলি হল স্ট্রিং, ডেটাভিউ, বাফার, ইত্যাদি।
-
পুনরাবৃত্তি - অনুরোধ করা বাইট দৈর্ঘ্যের পছন্দসই কী পাচ্ছেন। এটি সংখ্যা হিসাবে মান গ্রহণ করে।
-
কিলেন - এটি কীটির অনুরোধকৃত বাইট দৈর্ঘ্য। এটি টাইপ নম্বর।
-
ডাইজেস্ট - Hmac অ্যালগরিদম এই ডাইজেস্ট মান দ্বারা নির্দিষ্ট করা হয়। ডিফল্ট মান হল 'sha1'
উদাহরণ
নাম দিয়ে একটি ফাইল তৈরি করুন – pbkdf2Sync.js এবং নীচের কোড স্নিপেটটি অনুলিপি করুন। ফাইল তৈরি করার পরে, নীচের উদাহরণে দেখানো এই কোডটি চালানোর জন্য নিম্নলিখিত কমান্ডটি ব্যবহার করুন -
নোড pbkdf2Sync.js
pbkdf2Sync.js
// crypto.pbkdf2() ডেমো উদাহরণ// ক্রিপ্টো মডিউলকনস্ট ক্রিপ্টো আমদানি করা =প্রয়োজন('ক্রিপ্টো');// pbkdf2 সংজ্ঞায়িত করা নিম্নলিখিত বিকল্পগুলির সাথে pbkdfKey =crypto.pbkdf2Sync('secret', ',' 100000, 64, 'sha512');// derivedKeyconsole.log("কী হল:",pbkdfKey.toString('hex'));
আউটপুট
C:\ HOME \ NODE>> NODE PBKDF2SYNC.JEDEDE35DA0139E797157F4A5DA669DAD7D5DA88EF87E47471CC47ED941C7AD618E827304F083F8707F12B7CFDD5F489B782F10CFDD5F48C08D55CHCC269E3C08D59AEউদাহরণ
আসুন আরও একটি উদাহরণ দেখি।
// crypto.pbkdf2Sync () ডেমো উদাহরণ// ক্রিপ্টো মডিউলকনস্ট ক্রিপ্টো =প্রয়োজন('ক্রিপ্টো');// pbkdf2Syncকে নিম্নোক্ত বিকল্পগুলির সাথে সংজ্ঞায়িত করা হচ্ছে 100, 32, 'sha1');// derivedKeyconsole.log("কী হল:",pbkdfKey); console.log("কী(হেক্সে) হল:",pbkdfKey.toString('hex')) প্রিন্ট করা; console.log("কী(বেস64-এ) হল:",pbkdfKey.toString('base64'));
আউটপুট
C:\home\node>> নোড pbkdf2Sync.jskey হল:কী(হেক্সে) হল:b73635f7c0882e1fc3ba6e29b14af1274df84828b4d18fcc222eb574455f505dkey(বেস64-এ) হল:tzY198CILh/Dum4psUrxiF03/45JFY/4PREV03