কম্পিউটার

হ্যাশিং এর কাজ কি?


হ্যাশিং হল প্রদত্ত কীকে একটি কোডে ব্যাখ্যা করার পদ্ধতি। একটি হ্যাশ ফাংশন একটি নতুন উত্পাদিত হ্যাশ কোডের সাথে ডেটা প্রতিস্থাপন করতে ব্যবহৃত হয়। তদুপরি, হ্যাশিং হল একটি স্ট্রিং বা ইনপুট কী নেওয়ার অভ্যাস, বর্ণনামূলক তথ্য সংরক্ষণের জন্য তৈরি একটি পরিবর্তনশীল, এবং এটিকে একটি হ্যাশ মান দিয়ে সংজ্ঞায়িত করা, যা সাধারণত একটি অ্যালগরিদম দ্বারা নির্ধারিত হয় এবং আসলটির চেয়ে অনেক ছোট স্ট্রিং তৈরি করে৷

হ্যাশিং সাধারণত একমুখী ক্রিপ্টোগ্রাফিক ফাংশন। যেহেতু হ্যাশগুলি অপরিবর্তনীয়, একটি হ্যাশিং পদ্ধতির আউটপুট বোঝা আমাদের একটি ফাইলের বিষয়বস্তু পুনরায় তৈরি করতে সক্ষম করে না। এটি আমাদের দুটি ফাইলের বিষয়বস্তু না বুঝে একই কিনা তা মূল্যায়ন করতে দেয়৷

তথ্য নিরাপত্তা এবং ইন্টারনেট প্রমাণীকরণে হ্যাশিং ব্যবহার একটি সাধারণ অভ্যাস। উদাহরণস্বরূপ, এটি একটি ডাটাবেসে নিরাপদে পাসওয়ার্ড সংরক্ষণ করতে ব্যবহার করা যেতে পারে, তবে ফাইল এবং নথি সহ তথ্যের অন্যান্য উপাদানের নিরাপত্তা প্রদান করতে পারে৷

হ্যাশিং ডেটা স্ট্রাকচার অ্যারেগুলিকে কার্যকরভাবে তথ্য খুঁজে পেতে এবং সঞ্চয় করতে দেয়, তথ্য খোঁজার এবং সংরক্ষণ করার জন্য একটি কার্যকর কাঠামোকে সমর্থন করে। মনে করুন যে এটিতে 20,000 নম্বরের একটি তালিকা থাকতে পারে এবং এটিকে সেই তালিকায় একটি নির্দিষ্ট নম্বর খুঁজতে বলা হয় এবং এটি তালিকার প্রতিটি নম্বর স্ক্যান করে দেখতে পারে যে এটি প্রবেশ করা নম্বরের সাথে মেলে কিনা।

হ্যাশিং হল অক্ষরের একটি স্ট্রিংকে ঘন ঘন ছোট এবং স্থির-দৈর্ঘ্যের মানের মধ্যে রূপান্তর করার পদ্ধতি। একটি ডাটাবেসে উপাদান অনুসন্ধান করার জন্য হ্যাশড কী ব্যবহার করার কারণ হল যে আইটেমটিকে তার আসল মান ব্যবহার করে আবিষ্কার করা ছোট হ্যাশড কী ব্যবহার করার চেয়ে বেশি সময়সাপেক্ষ৷

এটি উপাদানগুলিকে অনুসন্ধান করার সময় সংগ্রহে কার্যকরভাবে সনাক্ত বা সংরক্ষণ করতে ব্যবহার করা যেতে পারে। উদাহরণস্বরূপ, যদি এটিতে 10,000টি ইংরেজি শব্দের একটি তালিকা থাকতে পারে এবং একটি প্রদত্ত শব্দ তাদের মধ্যে আছে কিনা তা পরীক্ষা করতে চান, তাহলে একটি মিল আবিষ্কার না হওয়া পর্যন্ত প্রদত্ত শব্দটি মোট 10,000 আইটেমের সাথে তুলনা করা অকার্যকর হবে৷

একটি রেঞ্জের কীগুলির মান দ্বারা একটি অ্যারেকে সূচী করা যেতে পারে, যা অ্যাশশিং হিসাবে পরিচিত। মডুলো অপারেটরটি মূল মানগুলির একটি পরিসর অর্জন করতে ব্যবহার করা হবে। এই ক্ষেত্রে, এটি একটি 20x20 হ্যাশ টেবিলে নিম্নলিখিত আইটেমগুলি সংরক্ষণ করতে পারে। প্রতিটি আইটেম asa (কী, মান) ফর্ম্যাট করা হয়।

MD5, SHA-1, SHA-2, NTLM এবং LANMAN সহ হ্যাশিং অ্যালগরিদমগুলি আজকের বিশ্বে সাধারণভাবে ব্যবহৃত হয়৷ একটি বার্তা ডাইজেস্ট 5টি সংস্করণে বিভক্ত, এটি হল MD5। পূর্বে, MD5 সবচেয়ে বিখ্যাত হ্যাশিঙ্গলগরিদমগুলির মধ্যে একটি ছিল। MD5 এর আউটপুটগুলির জন্য 128 বিট প্রয়োজন৷

হ্যাশিং-এ, ডেটা ব্লকের প্রতিটি বিট একটি নির্দিষ্ট আকারের বিট স্ট্রিং ভ্যালুতে রূপান্তরিত হয়। একটি ফাইলে ডেটা ব্লক অন্তর্ভুক্ত থাকে। একটি ঝুঁকি আছে যে দুটি একাধিক ইনপুট একই হ্যাশ মান তৈরি করবে। একে বলা হয় সংঘর্ষ, যা দেখা যায় যখন দুটি একাধিক ইনপুট একই হ্যাশ মান সমর্থন করে।


  1. 10.0.0.1 IP ঠিকানা কি?

  2. সি ভাষায় শিফট অপারেশন কি কি?

  3. জাভাতে স্ট্রিক্টম্যাথ ক্লাসের ব্যবহার কী?

  4. আইফোন মাইক্রোফোন কাজ না করলে কী করবেন?