decipher.final() ডিসিফার অবজেক্টের মান সম্বলিত একটি বাফার বা স্ট্রিং ফেরত দিতে ব্যবহৃত হয়। এটি একটি অন্তর্নির্মিত পদ্ধতি যা ক্রিপ্টো মডিউলের মধ্যে ক্লাস সাইফার দ্বারা সরবরাহ করা হয়। একবার decipher.final মেথড কল করা হলে ডেটা ডিক্রিপ্ট করতে ডিসিফার পদ্ধতি ব্যবহার করা যাবে না। cipher.final পদ্ধতিতে একাধিকবার কল করলে একটি ত্রুটি হবে।
সিনট্যাক্স
decipher.final([outputEncoding])
পরামিতি
উপরোক্ত পরামিতিগুলি নীচে −
হিসাবে বর্ণনা করা হয়েছে-
আউটপুট এনকোডিং - এটি একটি প্যারামিটার হিসাবে আউটপুট এনকোডিং নেয়। এই প্যারামিটারের জন্য ইনপুট টাইপ হল স্ট্রিং। সম্ভাব্য ইনপুট মানগুলি হল হেক্স, বেস64, ইত্যাদি।
উদাহরণ
নাম দিয়ে একটি ফাইল তৈরি করুন – decipherFinal.js এবং নীচের কোড স্নিপেটটি অনুলিপি করুন। ফাইল তৈরি করার পরে, নীচের উদাহরণে দেখানো এই কোডটি চালানোর জন্য নিম্নলিখিত কমান্ডটি ব্যবহার করুন −
node decipherFinal.js
decipherFinal.js
// Example to demonstrate the use of cipher.final() method // Importing the crypto module const crypto = require('crypto'); // Initialising the AES algorithm const algorithm = 'aes-192-cbc'; // Initialising the password used for generating key const password = '12345678123456789'; // Retrieving key for the decipher object const key = crypto.scryptSync(password, 'old data', 24); // Initializing the static iv const iv = Buffer.alloc(16, 0); const decipher = crypto.createDecipheriv(algorithm, key, iv); // Initializing the cipher object to get cipher const encrypted1 = 'a05e87569f3f04234812ae997da5684944c32b8776fae676b4abe9074b31cd2a'; // const encrypted2 = '8d11772fce59f08e7558db5bf17b3112'; let decryptedValue1 = decipher.update(encrypted1, 'hex', 'utf8'); // let decryptedValue1 = decipher.update(encrypted1, 'hex', 'utf8'); decryptedValue1 += decipher.final('utf8'); // Printing the result... console.log("Decrypted value -- " + decryptedValue1); // console.log("Base64 String:- " + base64Value)
আউটপুট
C:\home\node>> node decipherFinal.js Decrypted value -- Welcome to tutorials point
উদাহরণ
আসুন আরও একটি উদাহরণ দেখি।
// Example to demonstrate the use of cipher.final() method // Importing the crypto module const crypto = require('crypto'); // Initialising the AES algorithm const algorithm = 'aes-192-cbc'; // Initialising the password used for generating key const password = '12345678123456789'; // Retrieving key for the decipher object const key = crypto.scryptSync(password, 'old data', 24); // Initializing the static iv const iv = Buffer.alloc(16, 0); const decipher = crypto.createDecipheriv(algorithm, key, iv); // Initializing the cipher object to get cipher const encrypted = 'a05e87569f3f04234812ae997da5684944c32b8776fae676b4abe9074b31cd2a'; // const encrypted2 = '8d11772fce59f08e7558db5bf17b3112'; var buf = []; // Updating the decopher data let decrypted = decipher.update(encrypted, 'hex', 'utf8'); // Pushinf the data into buffer after decryption buf.push(decrypted); buf.push(decipher.final('utf8')); // Printing the result console.log(buf.join(' '));প্রিন্ট করা হচ্ছে
আউটপুট
C:\home\node>> node decipherFinal.js Welcome to tutor ials point