কম্পিউটার

জাভাস্ক্রিপ্টে সিজার সাইফার ব্যবহার করে একটি স্ট্রিং এনক্রিপ্ট করা


সিজার সাইফার অ্যালগরিদম

সিজার সাইফার অ্যালগরিদম হল সবচেয়ে সহজ এবং সর্বাধিক পরিচিত এনক্রিপশন কৌশলগুলির মধ্যে একটি। এটি এক ধরনের প্রতিস্থাপন সাইফার যেখানে প্লেইনটেক্সটের প্রতিটি অক্ষর বর্ণমালার নিচে কিছু নির্দিষ্ট সংখ্যক অবস্থানে একটি অক্ষর দ্বারা প্রতিস্থাপিত হয়।

উদাহরণস্বরূপ

3 এর একটি বাম স্থানান্তরের সাথে, D এর পরিবর্তে A, E হয়ে যাবে B, ইত্যাদি। আমাদের একটি জাভাস্ক্রিপ্ট ফাংশন লিখতে হবে যা প্রথম আর্গুমেন্ট হিসাবে এনক্রিপ্ট করার জন্য একটি স্ট্রিং নেয় এবং দ্বিতীয় আর্গুমেন্ট হিসাবে একটি শিফট পরিমাণ।

স্থানান্তরের পরিমাণ একটি ধনাত্মক বা ঋণাত্মক পূর্ণসংখ্যা হতে পারে (একটি ধনাত্মক স্থানান্তরটি ডানে স্থানান্তর নির্দেশ করে যেখানে ঋণাত্মক থেকে বামে)।

উদাহরণ

নিম্নলিখিত কোড -

const str = 'thisIsAString';
const getMap = (legend, shift) => {
   return legend.reduce((charsMap, currentChar, charIndex) => {
      const copy = { ...charsMap };
      let ind = (charIndex + shift) % legend.length;
      if (ind < 0) {
         ind += legend.length;
      };
      copy[currentChar] = legend[ind];
      return copy;
   }, {});
};
const encrypt = (str, shift = 0) => {
   const legend = 'abcdefghijklmnopqrstuvwxyz'.split('');
   const map = getMap(legend, shift);
   return str
   .toLowerCase()
   .split('')
   .map(char => map[char] || char)
   .join('');
};
console.log(encrypt(str, 6));

আউটপুট

নিম্নোক্ত কনসোলে আউটপুট -

znoyoygyzxotm

  1. জাভাস্ক্রিপ্ট অ্যারে শিফট()

  2. জাভাস্ক্রিপ্টে অ্যারে শিফট()

  3. জাভাস্ক্রিপ্ট আমদানিতে '{ }' ব্যবহার করছেন?

  4. জাভাস্ক্রিপ্ট ব্যবহার করে একটি স্ট্রিং এ বর্ণমালা উল্টানো