হ্যাশিং
হ্যাশিং হলো একটি গাণিতিক প্রক্রিয়া, যা যেকোনো আয়তনের ইনপুট ডেটাকে নির্দিষ্ট দৈর্ঘ্যের অনন্য স্ট্রিংয়ে (হ্যাশ সাম) রূপান্তর করে। এটি একটি একমুখী অপারেশন, যা ডেটার দ্রুত শনাক্তকরণ, তার অখণ্ডতা যাচাই এবং পাসওয়ার্ড নিরাপদে সংরক্ষণের জন্য ব্যবহৃত হয়।
সূচিপত্র
সহজ ভাষায় হ্যাশিং কী
হ্যাশিং হলো যেকোনো ডেটার (টেক্সট, ফাইল, পাসওয়ার্ড) নির্দিষ্ট দৈর্ঘ্যের অনন্য স্ট্রিংয়ে — হ্যাশে — রূপান্তরের প্রক্রিয়া। এটি ডিজিটাল ফিঙ্গারপ্রিন্টের মতো: প্রতিটি ডেটা সেটের নিজস্ব অনন্য হ্যাশ থাকে, এবং তা দিয়ে তাৎক্ষণিকভাবে পরীক্ষা করা যায় ফাইল পরিবর্তন হয়েছে কি না।
হ্যাশিংয়ের গুরুত্বপূর্ণ বৈশিষ্ট্য — অপ্রত্যাবর্তনীয়তা। হ্যাশ থেকে মূল ডেটা পুনরুদ্ধার করা অসম্ভব। এটি এমন, যেন আপনি রঙগুলো মিশিয়ে ফেলেছেন: মূল রংগুলো আর ফিরে পাওয়া যায় না। এই কারণেই পাসওয়ার্ড সংরক্ষণের জন্য হ্যাশিং আদর্শ।
এনক্রিপশন কী এবং তা হ্যাশিং থেকে কীভাবে আলাদা জানতে এনক্রিপশন নিবন্ধটি পড়ুন।
হ্যাশিং কীভাবে কাজ করে
- ইনপুট ডেটা: যেকোনো আয়তনের তথ্য — একটি অক্ষর থেকে গিগাবাইট সাইজের ফাইল পর্যন্ত।
- হ্যাশ ফাংশন (অ্যালগরিদম): গাণিতিক সূত্র, যা ডেটাকে নির্দিষ্ট দৈর্ঘ্যের স্ট্রিংয়ে রূপান্তর করে (যেমন SHA-256-এর জন্য 256 বিট)।
- আউটপুট (হ্যাশ): অক্ষরের অনন্য স্ট্রিং। মূল ডেটার সামান্যতম পরিবর্তনও হ্যাশকে সম্পূর্ণ বদলে দেয় — একে বলা হয় "অ্যাভালাঞ্চ ইফেক্ট"।
উদাহরণ: "Privet" ও "privet" (আলাদা কেস) সম্পূর্ণ আলাদা হ্যাশ দেবে।
হ্যাশিং কোথায় ব্যবহৃত হয়
- পাসওয়ার্ড সংরক্ষণ: সাইটগুলো আপনার পাসওয়ার্ড খোলা আকারে সংরক্ষণ করে না, শুধু হ্যাশ সংরক্ষণ করে। লগইনের সময় সিস্টেম প্রবেশ করানো পাসওয়ার্ডের হ্যাশ করে ডেটাবেসে থাকা মানের সঙ্গে তুলনা করে। ডেটাবেস চুরি হলেও হ্যাকাররা আপনার পাসওয়ার্ড জানতে পারবে না।
- ফাইলের অখণ্ডতা যাচাই: প্রোগ্রাম বা ডিস্ক ইমেজ ডাউনলোড করার সময় আপনি অফিসিয়াল সাইটে ঘোষিত হ্যাশ সামের সঙ্গে তা মিলিয়ে দেখতে পারেন। মিললে — ফাইল ক্ষতিগ্রস্ত নয় এবং পরিবর্তনও হয়নি।
- ডিজিটাল স্বাক্ষর: মেসেজ সাইন করার আগে তার "ডাইজেস্ট" তৈরিতে হ্যাশিং ব্যবহৃত হয়।
- ব্লকচেইন ও ক্রিপ্টোকারেন্সি: ব্লকচেইনের প্রতিটি ব্লকে আগের ব্লকের হ্যাশ থাকে, যা পুরো শৃঙ্খলের অপরিবর্তনীয়তা নিশ্চিত করে।
ব্লকচেইন সম্পর্কে জানতে ব্লকচেইন নিবন্ধটি পড়ুন।
জনপ্রিয় হ্যাশিং অ্যালগরিদম
- MD5: পুরনো অ্যালগরিদম, 128 বিটের হ্যাশ দেয়। কলিজনের (আলাদা ডেটার জন্য হ্যাশ মিলে যাওয়া) কারণে আজ এটি নিরাপদ বলে বিবেচিত হয় না।
- SHA-1: 160 বিটের হ্যাশ দেয়। এটিও পুরনো হয়ে গেছে এবং ব্যবহারের সুপারিশ করা হয় না।
- SHA-256 (SHA-2): 256 বিটের হ্যাশ দেয়। বেশিরভাগ সিকিউরিটি সিস্টেম ও ক্রিপ্টোকারেন্সির (Bitcoin সহ) প্রধান স্ট্যান্ডার্ড।
- SHA-3: উন্নত ও আরও বেশি সুরক্ষিত সংস্করণ।
- Argon2 / bcrypt: পাসওয়ার্ড হ্যাশিংয়ের জন্য বিশেষায়িত অ্যালগরিদম। ধীর ও রিসোর্স-নিবিড় — এটিই প্লাস, কারণ পাসওয়ার্ড অনুমান করা কঠিন হয়।
হ্যাশ কলিজন কী
কলিজন হলো এমন পরিস্থিতি, যখন দুটি আলাদা ডেটা সেট একই হ্যাশ দেয়। ভালো হ্যাশ ফাংশনের কাজ কলিজনের সম্ভাবনা কমিয়ে রাখা। পুরনো অ্যালগরিদমে (MD5, SHA-1) কলিজন পাওয়া গেছে, তাই সেগুলো নিরাপদ বলে বিবেচিত হয় না। আধুনিক অ্যালগরিদমে (SHA-256, SHA-3) কলিজন কার্যত অসম্ভব।
ডেটা সুরক্ষা সম্পর্কে জানতে তথ্য নিরাপত্তা নিবন্ধটি পড়ুন।
হ্যাশিং এবং এনক্রিপশনের পার্থক্য কী
- রিভার্সিবিলিটি: এনক্রিপশন রিভার্সিবল (কি দিয়ে ডিক্রিপ্ট করা যায়), হ্যাশিং — অপ্রত্যাবর্তনীয়।
- কি-এর উপস্থিতি: এনক্রিপশনের জন্য কি লাগে, হ্যাশিংয়ের জন্য — লাগে না।
- রেজাল্টের সাইজ: হ্যাশ সবসময় নির্দিষ্ট দৈর্ঘ্যের; সাইফারটেক্সটের সাইজ ডেটার আয়তনের ওপর নির্ভর করে।
- লক্ষ্য: এনক্রিপশন — ডেটা লুকানো, হ্যাশিং — অখণ্ডতা যাচাই।
এনক্রিপশন সম্পর্কে জানতে এনক্রিপশন নিবন্ধটি পড়ুন।
Frequently asked questions
সহজ ভাষায় হ্যাশিং কী?
হ্যাশিং হলো ডেটাকে নির্দিষ্ট দৈর্ঘ্যের অনন্য স্ট্রিংয়ে (হ্যাশ) রূপান্তর। এটি ডিজিটাল ফিঙ্গারপ্রিন্টের মতো: ডেটার সামান্যতম পরিবর্তনও হ্যাশ সম্পূর্ণ বদলে দেয়। হ্যাশ থেকে উল্টো করে ডেটা ফিরিয়ে আনা যায় না। এনক্রিপশন জানতে এনক্রিপশন নিবন্ধটি পড়ুন।
এনক্রিপশন ও হ্যাশিংয়ের মধ্যে পার্থক্য কী?
এনক্রিপশন রিভার্সিবল — কি দিয়ে ডেটা ডিক্রিপ্ট করা যায়। হ্যাশিং অপ্রত্যাবর্তনীয় — হ্যাশ থেকে মূল ডেটা পুনরুদ্ধার করা যায় না। এনক্রিপশন ডেটা লুকায়, হ্যাশিং অখণ্ডতা যাচাই করে। এনক্রিপশনের জন্য কি লাগে, হ্যাশিংয়ের জন্য — লাগে না। এনক্রিপশন জানতে এনক্রিপশন নিবন্ধটি পড়ুন।
কোন হ্যাশিং অ্যালগরিদম সবচেয়ে নিরাপদ?
সাধারণ উদ্দেশ্যে — SHA-256 ও SHA-3। পাসওয়ার্ড সংরক্ষণে — bcrypt, Argon2 বা scrypt। এগুলো ইচ্ছাকৃতভাবে ধীর, যা পাসওয়ার্ড অনুমান থেকে সুরক্ষা দেয়। MD5 ও SHA-1 পুরনো ও নিরাপত্তাহীন বলে বিবেচিত। নিরাপত্তা সম্পর্কে জানতে তথ্য নিরাপত্তা নিবন্ধটি পড়ুন।
ব্লকচেইনে হ্যাশিং কেন প্রয়োজন?
ব্লকচেইনে প্রতিটি ব্লকে আগের ব্লকের হ্যাশ থাকে। এটি ব্লকগুলোকে শৃঙ্খলে বাঁধে এবং সিস্টেমকে অপরিবর্তনীয় করে — একটি ব্লক বদলালে পরবর্তী সব হ্যাশ বদলে যাবে, আর নেটওয়ার্ক জালকরণ ধরে ফেলবে। মাইনিংয়েও হ্যাশিং ব্যবহৃত হয়। ব্লকচেইন জানতে ব্লকচেইন নিবন্ধটি পড়ুন।
হ্যাশ কেন ডিক্রিপ্ট করা যায় না?
হ্যাশিং এনক্রিপশন নয় — এর কোনো কি নেই, কোনো ইনভার্স ফাংশনও নেই। আমরা ডেটা "লুকাই" না, বরং তাকে নির্দিষ্ট দৈর্ঘ্যে কমিয়ে আনি এবং তথ্যের কিছু অংশ হারিয়ে ফেলি। তাই শুধু হ্যাশ থেকে মূল ডেটা পুনরুদ্ধার করা অসম্ভব। এনক্রিপশন জানতে এনক্রিপশন নিবন্ধটি পড়ুন।
Other terms in «ক্রিপ্টোকারেন্সি ও ব্লকচেইন»
Was this information helpful?
Need help with implementation?
Leave a request — our specialists will contact you and help solve the হ্যাশিং task. Individual approach and guaranteed results.