cipher.update() প্রদত্ত এনকোডিং বিন্যাস অনুযায়ী প্রাপ্ত তথ্য সহ সাইফার আপডেট করতে ব্যবহৃত হয়। এটি একটি অন্তর্নির্মিত পদ্ধতি যা ক্রিপ্টো মডিউলের মধ্যে ক্লাস সাইফার দ্বারা সরবরাহ করা হয়। যদি একটি ইনপুট এনকোডিং নির্দিষ্ট করা হয়, তবে ডেটা আর্গুমেন্ট একটি স্ট্রিং, অন্যথায় ডেটা আর্গুমেন্ট একটি বাফার হয়
সিনট্যাক্স
cipher.update(data, [inputEncoding], [outputEncoding])
পরামিতি
উপরোক্ত পরামিতিগুলি নীচে −
হিসাবে বর্ণনা করা হয়েছে-
ডেটা – এটি একটি ইনপুট হিসাবে ডেটা নেয় যা সাইফার বিষয়বস্তু আপডেট করার জন্য পাস করা হয়৷
-
ইনপুট এনকোডিং - এটি একটি প্যারামিটার হিসাবে ইনপুট এনকোডিং নেয়। সম্ভাব্য ইনপুট মানগুলি হল হেক্স, বেস64, ইত্যাদি।
-
আউটপুট এনকোডিং - এটি একটি প্যারামিটার হিসাবে আউটপুট এনকোডিং নেয়। এই প্যারামিটারের জন্য ইনপুট টাইপ হল স্ট্রিং। সম্ভাব্য ইনপুট মানগুলি হল হেক্স, বেস64, ইত্যাদি।
উদাহরণ
নাম দিয়ে একটি ফাইল তৈরি করুন – cipherUpdate.js এবং নীচের কোড স্নিপেটটি অনুলিপি করুন। ফাইল তৈরি করার পরে, নীচের উদাহরণে দেখানো এই কোডটি চালানোর জন্য নিম্নলিখিত কমান্ডটি ব্যবহার করুন −
node cipherUpdate.js
cipherUpdate.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 cipher object const key = crypto.scryptSync(password, 'old data', 24); // Initializing the static iv const iv = Buffer.alloc(16, 0); // Initializing the cipher object to get cipher const cipher = crypto.createCipheriv(algorithm, key, iv); //Getting the updated string value with new data let updatedValue = cipher.update('Welcome to tutorials point', 'utf8', 'hex'); //Adding the old value and updated value updatedValue += cipher.final('hex'); // Printing the result... console.log("Updated String:- " + updatedValue);
আউটপুট
C:\home\node>> node cipherUpdate.js Updated String:- a05e87569f3f04234812ae997da5684944c32b8776fae676b4abe9074b31cd2a
উদাহরণ
আসুন আরও একটি উদাহরণ দেখি।
// 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 cipher object crypto.scrypt(password, 'salt', 24, { N: 512 }, (err, key) => { if (err) throw err; // Initializing the static iv const iv = Buffer.alloc(16, 0); // Initializing the cipher object to get cipher const cipher = crypto.createCipheriv(algorithm, key, iv); //Getting the updated string value with new data let updatedValue = cipher.update('Some new text data', 'utf8', 'hex'); //Adding the old value and updated value updatedValue += cipher.final('hex'); // Printing the result... console.log("Updated String:- " + updatedValue); });
আউটপুট
C:\home\node>> node cipherUpdate.js Updated String:- 91d6d37e70fbae537715f0a921d15152194435b96ce3973d92fbbc4a82071074