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

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

Node.js-এ crypto.randomFillSync() মেথডটি একটি বাফার আর্গুমেন্ট নেয় এবং সেটি এর এনক্রিপ্টেড ভ্যালু দিয়ে পূরণ করে রিটার্ন করে। নাম অনুযায়ী, এটি একটি সিঙ্ক প্রসেস।

সিনট্যাক্স

crypto.randomFillSync(buffer, [offset], [size])

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

  • buffer – এই ফিল্ডে ডেটা কন্টেন্ট থাকে। সম্ভাব্য বাফার টাইপ: string, TypedArray, Buffer, ArrayBuffer, DataView। বাফারের সাইজ 2**31-1-এর চেয়ে বড় হতে পারবে না।

  • offset – যে অফসেট থেকে randomFill শুরু হবে। ডিফল্ট ভ্যালু: 0।

  • size – অফসেটের পর বাফারের সাইজ, অর্থাৎ (buffer.length - offset)। এই ভ্যালু 2**31-1-এর চেয়ে বড় হতে পারবে না।

উদাহরণ ১

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

node randomFillSync.js

randomFillSync.js

// crypto.randomFillSync() উদাহরণ ডেমো
// crypto মডিউল ইম্পোর্ট করুন
const crypto = require('crypto');

// বাফার দৈর্ঘ্য সংজ্ঞায়িত করুন
const buffer = Buffer.alloc(15);

// বাফার
console.log(crypto.randomFillSync(buffer).toString('base64'));

// বাফার এবং অফসেট
crypto.randomFillSync(buffer, 4);
console.log(buffer.toString('base64'));

// বাফার, অফসেট এবং সাইজ
crypto.randomFillSync(buffer, 4, 4);
console.log(buffer.toString('base64'));

আউটপুট

C:\home\node>> node randomFillSync.js
wVBZ+i/nvmL3Ce4kBOl0
wVBZ+hkP5DB/4Ci8yTGs
wVBZ+stVWJZ/4Ci8yTGs

উদাহরণ ২

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

// crypto.randomFillSync() উদাহরণ ডেমো
// crypto মডিউল ইম্পোর্ট করুন
const crypto = require('crypto');

// TypedArray ইনস্ট্যান্স তৈরি করুন অর্থাৎ Int8Array
const data = new Int8Array(16);

// বাফার, অফসেট এবং সাইজ
console.log(Buffer.from(crypto.randomFillSync(data).buffer, data.byteOffset, data.byteLength).toString('base64'));
console.log();

// TypedArray ইনস্ট্যান্স তৈরি করুন অর্থাৎ BigInt64Array
const data2 = new BigInt64Array(4);
console.log(Buffer.from(crypto.randomFillSync(data2).buffer, data2.byteOffset, data2.byteLength).toString('ascii'));
console.log();

// DataView ইনস্ট্যান্স তৈরি করুন
const data3 = new DataView(new ArrayBuffer(7));
console.log(Buffer.from(crypto.randomFillSync(data3).buffer, data3.byteOffset, data3.byteLength).toString('hex'));

আউটপুট

C:\home\node>> node randomFillSync.js
iNm8tiwDATcV6I8xjTSTbQ==
ra+I=(6&Xse"hjw?!EO?D#S7M
d957fb1dbdfa00
  1. Node.js-এ crypto.publicDecrypt() মেথড

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

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

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