ছবি: FNV-1 32-বিট হ্যাশ অ্যালগরিদম – ভিজ্যুয়াল ওভারভিউ
প্রকাশিত: ১২ জানুয়ারী, ২০২৬ এ ১:২৯:২৯ PM UTC
সর্বশেষ আপডেট: ৯ জানুয়ারী, ২০২৬ এ ৯:৪১:২৩ PM UTC
FNV-1 32-বিট হ্যাশ অ্যালগরিদমের প্রধান ধাপগুলি ব্যাখ্যা করে এমন একটি পরিষ্কার ল্যান্ডস্কেপ ফ্লোচার্ট, ইনপুট বাইট থেকে চূড়ান্ত হ্যাশ ফলাফল পর্যন্ত।
FNV-1 32-Bit Hash Algorithm – Visual Overview

এই ছবির উপলব্ধ সংস্করণগুলি
নিচে ডাউনলোডের জন্য উপলব্ধ ছবির ফাইলগুলি কম সংকুচিত এবং উচ্চ রেজোলিউশনের - এবং এর ফলে, উচ্চ মানের - এই ওয়েবসাইটের নিবন্ধ এবং পৃষ্ঠাগুলিতে এমবেড করা ছবির তুলনায়, যা ব্যান্ডউইথ খরচ কমাতে ফাইলের আকারের জন্য আরও অপ্টিমাইজ করা হয়েছে।
নিয়মিত আকার (1,536 x 1,024)
বড় আকার (3,072 x 2,048)
খুব বড় আকারের (4,608 x 3,072)
অতিরিক্ত বড় আকার (6,144 x 4,096)
কৌতুকপূর্ণভাবে বড় আকারের (1,048,576 x 699,051)
- এখনও আপলোড করা হচ্ছে... ;-)
ছবির বর্ণনা
ছবিটি একটি প্রশস্ত, ল্যান্ডস্কেপ-ভিত্তিক ইনফোগ্রাফিক যার শিরোনাম "FNV-1 32-বিট হ্যাশ অ্যালগরিদম" যা উপরে বড় গাঢ় লেখায় প্রদর্শিত হয়েছে। সামগ্রিক শৈলীটি পরিষ্কার, সমতল এবং নির্দেশনামূলক, দর্শকদের বাম থেকে ডানে নির্দেশিত করার জন্য গোলাকার আয়তক্ষেত্র, বৃত্ত এবং তীর ব্যবহার করা হয়েছে। পটভূমি সাদা, যা চিত্রটিকে শিক্ষাদানের জন্য উপযুক্ত একটি হালকা, অগোছালো চেহারা দেয়।
বাম দিকে "ইনপুট ডেটা" লেবেলযুক্ত একটি নীল গোলাকার আয়তক্ষেত্র রয়েছে। এই বাক্সের নীচে বহু রঙের ব্লকের একটি ছোট অনুভূমিক সারি রয়েছে যা ডেটার পৃথক বাইট প্রতিনিধিত্ব করে। এই ইনপুট বাক্স থেকে একটি ছোট তীর চিত্রের কেন্দ্রের দিকে নিয়ে যায়, যা হ্যাশিং প্রক্রিয়ার শুরু নির্দেশ করে।
এরপরে একটি হলুদ গোলাকার আয়তক্ষেত্র রয়েছে যার নাম "অফসেট বেসিস", যার নীচে একটি ছোট ক্যাপশন রয়েছে যার নীচে "32-বিট মান" লেখা আছে। এই বাক্সটি কোনও ইনপুট বাইট প্রক্রিয়া করার আগে অ্যালগরিদম দ্বারা ব্যবহৃত প্রাথমিক অভ্যন্তরীণ অবস্থাকে প্রতিনিধিত্ব করে। ইনপুট ডেটা থেকে তীরটি এই অফসেট বেসিস বাক্সের দিকে নির্দেশ করে, যা দেখায় যে অ্যালগরিদমটি এই পূর্বনির্ধারিত প্রারম্ভিক মান দিয়ে শুরু হয়।
অফসেট ভিত্তি থেকে, প্রবাহটি "XOR" লেবেলযুক্ত একটি কমলা বৃত্তাকার নোডে চলতে থাকে। এই বৃত্তের ঠিক নীচে একটি ছোট জোড়া রঙিন বাইট আইকন থাকে, যা "ইনপুট বাইট" হিসাবে টীকাযুক্ত, যা জোর দিয়ে বলে যে মূল ডেটা থেকে প্রতিটি বাইট বর্তমান হ্যাশ অবস্থার সাথে বিটওয়াইজ XOR অপারেশন ব্যবহার করে একত্রিত করা হয়েছে। ভিজ্যুয়ালটি বোঝায় যে এই XOR ধাপটি প্রতিটি বাইটের জন্য পুনরাবৃত্তি করা হয়।
XOR ধাপের পরে, একটি তীর চিহ্ন একটি নীল বৃত্তাকার নোডের দিকে নির্দেশ করে যা একটি গুণ প্রতীক দ্বারা চিহ্নিত, যা ধারণাগতভাবে "FNV প্রাইম দ্বারা গুণ করুন" হিসাবে লেবেলযুক্ত। এটি বোঝায় যে অ্যালগরিদম বিটগুলিকে আরও মিশ্রিত করতে এবং হ্যাশ জুড়ে পরিবর্তনগুলি ছড়িয়ে দেওয়ার জন্য একটি নির্দিষ্ট প্রাইম সংখ্যা দ্বারা মধ্যবর্তী মানকে গুণ করে।
গুণন বৃত্তের ডানদিকে "32-বিট হ্যাশ ফলাফল" লেবেলযুক্ত একটি সবুজ গোলাকার আয়তক্ষেত্র রয়েছে। এটি এক বা একাধিক বাইট প্রক্রিয়াকরণের পরে বিকশিত হ্যাশ মান এবং পরিশেষে সমস্ত ইনপুট ডেটা ব্যবহার করার পরে অ্যালগরিদম দ্বারা উত্পাদিত চূড়ান্ত 32-বিট হ্যাশকে প্রতিনিধিত্ব করে।
বাক্স এবং বৃত্তের মূল সারির উপরে, ছোট নিম্নমুখী তীর সহ একটি পাতলা অনুভূমিক রেখায় "অফসেট বেসিস দিয়ে শুরু করুন," "বাইট দিয়ে XOR," "FNV প্রাইম দ্বারা গুণ করুন," এবং "32-বিট হ্যাশ মান" এর মতো লেখা রয়েছে। এই ক্যাপশনগুলি সরল ভাষায় অ্যালগরিদমের পর্যায়গুলি সংক্ষিপ্ত করে ধাপে ধাপে নির্দেশিকা হিসাবে কাজ করে।
চিত্রের নীচে, বাম থেকে ডানে একটি লম্বা তীরচিহ্ন বিস্তৃত, যার লেখা "প্রতিটি বাইট ডেটার জন্য পুনরাবৃত্তি করুন"। এটি স্পষ্ট করে যে XOR এবং গুণনের ধাপগুলি ইনপুট ক্রমের প্রতিটি বাইটে প্রয়োগ করা একটি লুপ তৈরি করে, কেবল একটি একক ক্রিয়াকলাপ নয়।
সামগ্রিকভাবে, চিত্রটি নির্দিষ্ট সংখ্যাসূচক ধ্রুবকগুলিকে এড়িয়ে যায় এবং পরিবর্তে ধারণাগত প্রবাহের উপর দৃষ্টি নিবদ্ধ করে: ইনপুট বাইটগুলি প্রক্রিয়াটিতে প্রবেশ করে, একটি অভ্যন্তরীণ অবস্থা শুরু হয়, প্রতিটি বাইট বর্তমান মান দিয়ে XOR করা হয়, ফলাফলকে গুণ করা হয় এবং চূড়ান্ত 32-বিট হ্যাশ তৈরি না হওয়া পর্যন্ত চক্রটি পুনরাবৃত্তি হয়। প্রতিটি পর্যায়ে স্বতন্ত্র রঙের ব্যবহার অ্যালগরিদমটিকে এমনকি নতুনদের জন্যও অনুসরণ করা সহজ করে তোলে।
ছবিটি এর সাথে সম্পর্কিত: Fowler-Noll-Vo FNV1-32 হ্যাশ কোড ক্যালকুলেটর
