কম্পিউটার

ব্লোফিশ অ্যালগরিদমে ডেটা এনক্রিপশন এবং ডিক্রিপশন কী?


ব্লোফিশ হল একটি সিমেট্রিক ব্লক সাইফার অ্যালগরিদম যা ব্রুট স্নাইয়ার ডিসেম্বর 1993 সালে উদ্ভাবন করেছিলেন। ব্লোফিশ অ্যালগরিদমের বেশ কিছু সুবিধা রয়েছে। এটি হার্ডওয়্যার বাস্তবায়নের জন্য প্রযোজ্য এবং দক্ষ এবং কোন লাইসেন্সের প্রয়োজন নেই। ব্লোফিশ অ্যালগরিদমের প্রাথমিক অপারেটরগুলিতে টেবিল লুকআপ, সংযোজন এবং XOR রয়েছে। টেবিলে চারটি এস-বক্স এবং একটি পি-অ্যারে রয়েছে।

ব্লোফিশ হল একটি সাইফার যা ফিস্টেল রাউন্ডের উপর নির্ভর করে এবং সফ্টওয়্যারে উচ্চ গতি এবং কার্যকারিতা সহ একই সুরক্ষা সমর্থন করার জন্য ডিইএস-এ ব্যবহৃত নীতিগুলির সরলীকরণের জন্য ব্যবহৃত এফ-ফাংশনের নকশা।

ব্লোফিশ হল একটি 64-বিট সিমেট্রিক ব্লক সাইফার যার জন্য 32 থেকে 448-বিট (14 বাইট) পর্যন্ত একটি পরিবর্তনশীল-দৈর্ঘ্য কী প্রয়োজন। অ্যালগরিদমটি কার্যকরভাবে এবং নিরাপদে 64-বিট প্লেইন টেক্সট 64-বিট সাইফার টেক্সটে এনক্রিপ্ট করার জন্য তৈরি করা হয়েছিল।

অ্যালগরিদমের জন্য নির্বাচিত ক্রিয়াকলাপগুলি ছিল টেবিল লুকআপ, মডুলাস, সংযোজন এবং বিটওয়াইজ এক্সক্লুসিভ-অথবা 32-বিট প্রসেসরগুলিতে তথ্য এনক্রিপ্ট এবং ডিক্রিপ্ট করার জন্য প্রয়োজনীয় সময় কমানোর জন্য৷

ডিইএস-এর মতো, ব্লোফিশ এনক্রিপশন এবং ডিক্রিপশনের জন্য একটি 16 রাউন্ড ফিস্টেল নেটওয়ার্ক অন্তর্ভুক্ত করে। কিন্তু ব্লোফিশের প্রতিটি রাউন্ডের সময়, DES এর বিপরীতে বাম এবং ডান 32-বিট ডেটা পরিবর্তিত হয় যা পরবর্তী রাউন্ডের বাম 32-বিটে বিকাশের জন্য শুধুমাত্র ডান 32-বিটগুলিকে পরিবর্তন করে৷

ব্লোফিশ একটি বিটওয়াইজ এক্সক্লুসিভ-অথবা F ফাংশন দ্বারা পরিবর্তন করার আগে বা নিম্নলিখিত রাউন্ডের জন্য ডান 32-বিটে প্রচার করার আগে বাম 32-বিটে প্রয়োগ করা হয়৷

ব্লোফিশের মধ্যে রয়েছে দুটি এক্সক্লুসিভ-অথবা 16 রাউন্ড এবং একটি অদলবদল অপারেশনের পরে কার্যকর করা অপারেশন। এই ক্রিয়াকলাপটি DES-এ বাস্তবায়িত পারমুটেশন ফাংশন থেকে আলাদা।

এনক্রিপশন প্রক্রিয়া − এনক্রিপশন প্রক্রিয়ার দুটি খবর রয়েছে যার মধ্যে রয়েছে তথ্যের ছবি প্লেইন টেক্সট এবং এনক্রিপশন কী। এই পদ্ধতিতে, মূল চিত্র ডেটা বিট স্ট্রীম ব্লোফিশ অ্যালগরিদমের ব্লক দৈর্ঘ্যে বিভক্ত।

ইমেজ হেডার এনক্রিপ্ট করার জন্য অননুমোদিত এবং বিটম্যাপ পিক্সেল বা অ্যারের শুরু ফাইলের হেডারের ঠিক পরে শুরু হয়। অ্যারের বাইট উপাদানটি বাম থেকে ডানে সারি ক্রমে সংরক্ষিত হয় এবং প্রতিটি সারিতে ছবির একটি স্ক্যান লাইন সংজ্ঞায়িত করা হয় এবং ছবির সারিগুলি উপরে থেকে নীচে এনক্রিপ্ট করা হয়৷

ডিক্রিপশন প্রক্রিয়া − এনক্রিপ্ট করা চিত্রটি ব্লোফিশ অ্যালগরিদমের সমতুল্য ব্লক দৈর্ঘ্যের উপর থেকে নীচে বিভক্ত। প্রথম ব্লকটি ডিক্রিপশন ফাংশনে প্রবেশ করানো হয় এবং সমতুল্য এনক্রিপশন কী ব্যবহার করে ইমেজ ডিক্রিপ্ট করা যায় কিন্তু সাব কীগুলির প্রয়োগ বিপরীত হয়। ডিক্রিপশন প্রক্রিয়াটি উপরের থেকে নীচে পর্যন্ত ছবির বিভিন্ন ব্লকের সাথে প্রসারিত হয়৷

ব্লোফিশের মৌলিক অ্যালগরিদম নিম্নরূপ -

x কে দুটি 32-বিট অর্ধে ভাগ করুন:xL , xR .

তারপর, i =1 থেকে 16;

এর জন্য

xL =xL XOR Pi

xR =F(xL ) XOR xR

অদলবদল xL এবং xR

16 th এর পরে বৃত্তাকার, অদলবদল xL এবং xR আবার শেষ অদলবদল পূর্বাবস্থায় ফেরাতে।

তারপর, ciphertext =xL এর সংমিশ্রণ এবং xR , xR =xR XOR P17 এবং xL =xL XOR P18 .


  1. Blowfish এনক্রিপশন অ্যালগরিদম কি?

  2. তথ্য সুরক্ষায় AES এনক্রিপশন এবং ডিক্রিপশন কী?

  3. সি ভাষায় অ্যালগরিদম এবং ফ্লোচার্ট কী?

  4. ডেটা স্ট্রাকচারে সময় এবং স্থানের জটিলতা