ব্র্যান্ড, মূল্য এবং ধরন নির্বিশেষে সকল SSL সার্টিফিকেটের একটি সাধারণ স্পেসিফিকেশন হল SHA-256 অ্যালগরিদম। আপনি শংসাপত্রের বিশদ বা পণ্যের তথ্যে তালিকাভুক্ত বৈশিষ্ট্যগুলিতে এটির একটি উল্লেখ দেখতে পাবেন। নন-টেকিদের জন্য, SHA-256 সাধারণত একটি সম্পূর্ণ রহস্য।
এই প্রবন্ধে, আমরা আপনাকে দেখাতে চাই SHA-256 কি এবং কিভাবে এটি কাজ করে, প্রযুক্তিগত পরিভাষা এবং এর পেছনের গণিতের মধ্যে খুব বেশি না গিয়ে।
সুচিপত্র
- হ্যাশিং কি?
- SHA-256 অ্যালগরিদম কী?
- এসএইচএ-২৫৬ এর ব্যাখ্যা
- SHA-256 অ্যালগরিদমের মূল বৈশিষ্ট্য
- SHA-256 নিরাপদ?
- SHA-256 কিভাবে কাজ করে?
- SHA-256 কি কাজে ব্যবহৃত হয়?
- এসএইচএ অ্যালগরিদমের ইতিহাস
SHA-256 অ্যালগরিদম বুঝতে হলে আমাদের প্রথমে হ্যাশিং ব্যাখ্যা করতে হবে।
হ্যাশিং কি?
হ্যাশিং হচ্ছে কোন প্রদত্ত তথ্যকে অন্য মানে রূপান্তর করার প্রক্রিয়া। মূলত, এটিতে ডেটা ব্লক রয়েছে, যা মূল স্ট্রিং থেকে একটি সংক্ষিপ্ত স্থির-দৈর্ঘ্যের কী বা মানতে রূপান্তরিত হয়। এটিতে একটি গাণিতিক ফাংশনের মাধ্যমে ডেটা চালানো জড়িত যা এটিকে অক্ষরের একটি অনন্য এবং জটিল সিরিজে রূপান্তরিত করে।
হ্যাশিং ডেটা অখণ্ডতা যাচাই করার জন্য একটি নিরাপদ এবং কার্যকর উপায় সরবরাহ করে। আপনি যখন কোনও ডেটা হ্যাশ করেন, আপনি ফলস্বরূপ হ্যাশটিকে একটি পরিচিত বা প্রত্যাশিত মানের সাথে তুলনা করতে পারেন যাতে ডেটাটি হস্তক্ষেপ বা দূষিত না হয় তা নিশ্চিত করতে। যদি হ্যাশ মানগুলি মিলে যায় তবে আপনি নিশ্চিত হতে পারেন যে মূলত হ্যাশ হওয়ার পরে ডেটা পরিবর্তন বা সংশোধন করা হয়নি।
হ্যাশিংয়ের অন্যতম সুবিধা হ’ল এটি অপরিবর্তনীয়। আপনি মূল ডেটা পুনরুদ্ধার করতে হ্যাশ মানটি ব্যবহার করতে পারবেন না। এই সম্পত্তিটি পাসওয়ার্ড স্টোরেজের জন্য হ্যাশিংকে দরকারী করে তোলে, কারণ এটি আপনাকে পাসওয়ার্ডের পরিবর্তে পাসওয়ার্ডের হ্যাশ সঞ্চয় করতে দেয়। যখন কোনও ব্যবহারকারী তাদের পাসওয়ার্ড প্রবেশ করে, সিস্টেমটি হ্যাশ করতে পারে এবং প্রকৃত পাসওয়ার্ডের প্রয়োজন ছাড়াই এটি সঠিক কিনা তা যাচাই করতে সঞ্চিত হ্যাশ মানের সাথে তুলনা করতে পারে।
SHA-256 অ্যালগরিদম কী?
SHA-256 একটি ক্রিপ্টোগ্রাফিক হ্যাশ ফাংশন যা একটি নির্দিষ্ট আকারের, 256-বিট (32-বাইট) হ্যাশ মান তৈরি করে। এসএইচএ-২৫৬ অ্যালগরিদমের উদ্দেশ্য হলো একটি মেসেজ বা ফাইলের মতো ডেটার একটি অনন্য ডিজিটাল ফিঙ্গারপ্রিন্ট তৈরি করা।
SHA-256 একটি ক্রিপ্টোগ্রাফিক হ্যাশিং অ্যালগরিদমকে বোঝায় যেখানে ইনপুট ডেটা একটি অত্যাধুনিক গাণিতিক ফাংশনের মাধ্যমে প্রক্রিয়া করা হয়, যার ফলে একটি স্বতন্ত্র আউটপুট হ্যাশ হয়। এই হ্যাশটি ডিজিটাল ফিঙ্গারপ্রিন্ট হিসাবে কাজ করে, অনন্যভাবে মূল ডেটা উপস্থাপন করে।
এসএইচএ-২৫৬ এর ব্যাখ্যা
SHA-256, সিকিউর হ্যাশ অ্যালগরিদম ২৫৬-বিটের সংক্ষিপ্ত রূপ, NSA দ্বারা পরিকল্পিত SHA-2 ক্রিপ্টোগ্রাফিক হ্যাশ ফাংশনের সদস্য। এটি সাধারণত বিভিন্ন নিরাপত্তা অ্যাপ্লিকেশনগুলিতে (যেমন ডিজিটাল স্বাক্ষর, পাসওয়ার্ড প্রমাণীকরণ এবং ব্লকচেইন প্রযুক্তি) এবং টিএলএস এবং এসএসএল, পিজিপি, এসএসএইচ, আইপিসেক এবং আরও অনেক কিছু সহ প্রোটোকলগুলিতে ব্যবহৃত হয়।
SHA-256 একটি একমুখী ফাংশন হিসাবে ডিজাইন করা হয়েছে, যার অর্থ এর হ্যাশ আউটপুট থেকে মূল ইনপুটটি রিভার্স-ইঞ্জিনিয়ার করা কার্যত অসম্ভব। এই বৈশিষ্ট্যটি ডেটা অখণ্ডতা যাচাইয়ের জন্য এটি একটি প্রয়োজনীয় সরঞ্জাম তৈরি করে, কারণ ইনপুট ডেটাতে যে কোনও পরিবর্তন, এমনকি একটি একক অক্ষর, নাটকীয়ভাবে ভিন্ন হ্যাশ মান ফলাফল করে।
SHA-256 কিভাবে কাজ করে?
SHA-256 একটি ইনপুট (প্রায়ই পাঠ্য বা উপাত্তের একটি স্ট্রিং) গ্রহণ করে এবং গাণিতিক ক্রিয়াকলাপের একটি সিরিজের মাধ্যমে এটি প্রক্রিয়া করে কাজ করে। অ্যালগরিদমটি ইনপুটটিকে 512 বিটের ব্লকে বিভক্ত করে, প্রতিটি 64 রাউন্ডের ক্রিয়াকলাপে প্রক্রিয়াজাত হয়। এই অপারেশনগুলির মধ্যে বিটওয়াইজ লজিক্যাল ফাংশন যেমন এবং, ওআর, এক্সওআর, পাশাপাশি সংযোজন এবং বিটওয়াইজ ঘূর্ণন অন্তর্ভুক্ত রয়েছে।
আসুন হ্যাশিং কীভাবে কাজ করে তার একটি বাস্তব উদাহরণ দেখি। বলুন আপনি “আমি আপেল ভালবাসি” বার্তাটি লিখুন এবং এটিতে একটি SHA-256 হ্যাশ ফাংশন প্রয়োগ করুন। আপনি যা পাবেন তা এখানে:
40b7df43f24bea395b2c0c3c9d48a3db4db631fa396dd0dd8fe7dc64c9de6f6d
এখন, আসুন আপনার বার্তার শেষে একটি বিস্ময়বোধক চিহ্ন যুক্ত করি যাতে এটি দেখতে এরকম দেখায়: “আমি আপেল পছন্দ করি!” এবং একটি আউটপুট তৈরি করুন। ফলাফল আপনাকে অবাক করতে পারে:
1751c183f35ed15c2977e5ae7e439fdca79eeae28527ece6efc1a24e4388096f
আপনি দেখতে পারেন, মাত্র একটি অতিরিক্ত অক্ষর সঙ্গে, আউটপুট সম্পূর্ণ ভিন্ন কিন্তু দৈর্ঘ্য একই থাকে। আপনি কোনও শব্দ বা প্রবন্ধ লিখেন না কেন, মূল ইনপুটটির আকার গোপন করে হ্যাশ মানটি অভিন্ন হবে।
আপনি যদি কোনও বন্ধুর কাছে এই বার্তাটি প্রেরণ করেন তবে আপনি হ্যাশ মান সরবরাহ করবেন এবং অ্যালগরিদমটি নির্দিষ্ট করবেন। আপনার বন্ধু তাদের শেষে হ্যাশ তৈরি করবে এবং যদি এটি মেলে তবে তারা জানবে যে বার্তাটি আসল।
এবার আসা যাক টেকনিক্যাল দিকটি।
SHA-256 অ্যালগরিদমের মূল বৈশিষ্ট্য
এসএইচএ-২৫৬ অ্যালগরিদমের মূল বৈশিষ্ট্য হলো বার্তার দৈর্ঘ্য, হজমের দৈর্ঘ্য এবং অপরিবর্তনীয়তা।
- বার্তার দৈর্ঘ্য: প্লেইনটেক্সটের দৈর্ঘ্য (এটি এনক্রিপ্ট করার আগে পঠনযোগ্য পাঠ্য) 264 বিটের চেয়ে কম হওয়া উচিত।
- ডাইজেস্টের দৈর্ঘ্য: হ্যাশ ডাইজেস্ট (ডেটাতে ক্রিপ্টোগ্রাফিক হ্যাশ ফাংশন প্রয়োগের ফলাফল) দৈর্ঘ্য 256 বিট হওয়া উচিত। আপনার সার্ভারে একটি SSL সার্টিফিকেট ইনস্টল করার সময়, আপনি SHA-512 এবং বড় ডাইজেস্ট নির্বাচন করতে পারেন। এসএইচএ-৫১২ অধিকতর নিরাপদ হলেও অধিকাংশ সিস্টেমে এটি সুপারিশ করা হয় না, কারণ এর জন্য অধিক গণনা এবং কম্পিউটার শক্তি প্রয়োজন।
- অপরিবর্তনীয়তা: সকল হ্যাশ ফাংশন যেমন SHA-256 ডিজাইন অনুসারে অপরিবর্তনীয়। প্রতিটি ইনপুটের জন্য, আপনার কাছে ঠিক একটি আউটপুট রয়েছে, তবে অন্যভাবে নয়। একাধিক ইনপুট একই আউটপুট উত্পাদন করে। আউটপুট একটি নির্দিষ্ট আকার আছে, কিন্তু ইনপুট আকার সীমাবদ্ধতা নেই।
SHA-256 নিরাপদ?
যদিও কোন ক্রিপ্টোগ্রাফিক অ্যালগরিদম আক্রমণ থেকে অনাক্রম্য নয়, এসএইচএ-২৫৬ অ্যালগরিদম ডিজিটাল ডেটা সুরক্ষিত করার জন্য একটি অপরিহার্য উপাদান হিসাবে ব্যাপক বিশ্লেষণ এবং সময়ের পরীক্ষায় উত্তীর্ণ হয়েছে।
SHA-256 নিরাপত্তা হ্যাশ মান উৎপন্ন করতে জটিল গাণিতিক এবং বিটওয়াইজ অপারেশনের সমন্বয় ব্যবহার করে।
এই নকশাটি একই হ্যাশ উত্পাদন করে এমন দুটি ইনপুট খুঁজে পাওয়া অত্যন্ত কঠিন করে তোলে। যাইহোক, SHA-256 এর নিরাপত্তা সঠিক প্রয়োগ এবং এটি ব্যবহার করে এমন অ্যাপ্লিকেশনটিতে ব্যবহৃত নিরাপত্তা প্রোটোকলগুলির শক্তির উপর নির্ভর করে।
SHA-256 অ্যালগরিদমের একটি দুর্বলতা হল সংঘর্ষ আক্রমণের সম্ভাবনা। এটি ঘটে যখন দুটি ভিন্ন ইনপুট একই হ্যাশ মান উত্পাদন করে। যদিও SHA-256 এর সাথে এটি অত্যন্ত অসম্ভাব্য, কারণ এটি 256-বিট হ্যাশ মান (যেমন, একাধিক সম্ভাব্য আউটপুট) তৈরি করে, এটি এখনও তাত্ত্বিকভাবে সম্ভব। যদি একটি সংঘর্ষ আক্রমণ সফল হয়, তবে এটি ডেটা অখণ্ডতা যাচাই করতে SHA-256 হ্যাশ মানগুলির উপর নির্ভর করে এমন অ্যাপ্লিকেশনটির সাথে আপস করতে পারে।
SHA-256 অ্যালগরিদমের ধাপগুলি কী কী?
আপনি ইতিমধ্যে জানেন যে, SHA-256 ইনপুট ডেটা নেয় এবং রাউন্ড নামক গাণিতিক ক্রিয়াকলাপগুলির একটি সিরিজের মাধ্যমে এটি প্রক্রিয়া করে। প্রতিটি রাউন্ডে ডেটা প্রিপ্রসেসিং, বার্তা সম্প্রসারণ এবং বার্তা সংক্ষেপণ ফাংশন সহ বেশ কয়েকটি পদক্ষেপ থাকে।
এখানে SHA-256 অ্যালগরিদমের প্রধান ধাপগুলো দেওয়া হল:
- ডেটা প্রিপ্রসেসিং: ইনপুট ডেটা প্যাড করা হয় এবং এটি দৈর্ঘ্যে 512 বিটের গুণিতক নিশ্চিত করার জন্য প্রসারিত করা হয় এক-বিট যুক্ত করে শূন্য দ্বারা অনুসরণ করে এবং তারপরে বিটগুলিতে মূল বার্তার দৈর্ঘ্য যুক্ত করে।
- বার্তা সম্প্রসারণ: 512-বিট ইনপুট ব্লকটি 16 32-বিট শব্দে বিভক্ত এবং তারপরে লজিক্যাল অপারেশনগুলির একটি সিরিজের মাধ্যমে 64 32-বিট শব্দে প্রসারিত হয়।
- বার্তা সংক্ষেপণ: প্রসারিত 64৪-শব্দের বার্তা ব্লকটি তারপরে 64৪ রাউন্ডের একটি সিরিজের মাধ্যমে প্রক্রিয়া করা হয়, যার প্রতিটিটিতে বেশ কয়েকটি পদক্ষেপ জড়িত:
– বৃত্তাকার ধ্রুবক নির্ধারণ করুন: প্রতিটি রাউন্ডের ক্রমের অবস্থানের উপর ভিত্তি করে উত্পন্ন একটি অনন্য 32-বিট ধ্রুবক মান রয়েছে।
– বার্তার সময়সূচী গণনা করুন: 64-শব্দের বার্তা ব্লক এবং বৃত্তাকার ধ্রুবকের উপর ভিত্তি করে একটি 64-এন্ট্রি বার্তা সময়সূচী তৈরি করা হয়।
– ওয়ার্কিং ভেরিয়েবলগুলি আপডেট করুন: ওয়ার্কিং ভেরিয়েবলগুলি, যা 8 32-বিট শব্দ যা হ্যাশিং প্রক্রিয়া চলাকালীন মধ্যবর্তী মানগুলি সঞ্চয় করে, বার্তা সময়সূচী এবং লজিক্যাল অপারেশনগুলির একটি সেটের উপর ভিত্তি করে আপডেট করা হয়।
– হ্যাশ মান গণনা করুন: সমস্ত 64 রাউন্ড সম্পন্ন হওয়ার পরে, কার্যকরী ভেরিয়েবলের চূড়ান্ত মানগুলি 256-বিট হ্যাশ মান উত্পাদন করতে একত্রিত হয়।
SHA-256 হ্যাশ অ্যালগরিদমের আউটপুট একটি 256-বিট চূড়ান্ত হ্যাশ মান যা ইনপুট ডেটার ডিজিটাল ফিঙ্গারপ্রিন্ট হিসাবে কাজ করে।
SHA-256 কি কাজে ব্যবহৃত হয়?
এসএইচএ-২৫৬ হল ডিজিটাল স্বাক্ষর যাচাইকরণ, এসএসএল হ্যান্ডশেক, পাসওয়ার্ড সুরক্ষা এবং অন্যান্য নিরাপত্তা সম্পর্কিত ক্রিয়াকলাপগুলির জন্য স্ট্যান্ডার্ড হ্যাশিং অ্যালগরিদম।
- ডিজিটাল স্বাক্ষর যাচাইকরণ। ডিজিটাল স্বাক্ষর হ’ল এক ধরণের ইলেকট্রনিক স্বাক্ষর যা কোনও বার্তার সত্যতা এবং অখণ্ডতা যাচাই করতে ব্যবহৃত হয় (উদাঃ, একটি ইমেল, একটি ক্রেডিট কার্ড লেনদেন, বা একটি ডিজিটাল নথি)। এটি ফাইলটি হ্যাশ করে এবং এটি এনক্রিপ্ট করতে পিকেআই (পাবলিক কী ইনফ্রাস্ট্রাকচার) ব্যবহার করে তৈরি করা হয়েছে।
পুরো প্রক্রিয়ায় এসএইচএ-২৫৬ হ্যাশ অ্যালগরিদমের ভূমিকা ডিজিটাল স্বাক্ষরের অখণ্ডতা নিশ্চিত করা। প্রাপকের ক্লায়েন্ট তার শেষে হ্যাশিং অ্যালগরিদম পরীক্ষা করে এবং বার্তাটি ডিক্রিপ্ট করতে সর্বজনীন কী ব্যবহার করে। যদি এটি মেলে তবে ডেটা খাঁটি এবং অপরিবর্তিত। - এসএসএল হ্যান্ডশেক। এসএসএল হ্যান্ডশেক ওয়েব ব্রাউজিং সেশনের একটি গুরুত্বপূর্ণ উপাদান এবং এটি SHA-256 সামঞ্জস্যতা এবং ফাংশনগুলির উপর নির্ভর করে। এসএস / টিএলএসের মাধ্যমে যোগাযোগগুলি সর্বদা এসএসএল হ্যান্ডশেক দিয়ে শুরু হয় যা অসমমিতিক ক্রিপ্টোগ্রাফি যা ব্রাউজারকে ওয়েব সার্ভার যাচাই করতে, সর্বজনীন কী পেতে এবং ডেটা স্থানান্তর শুরুর আগে একটি সুরক্ষিত সংযোগ স্থাপন করতে দেয়।
- পাসওয়ার্ড সুরক্ষা। ওয়েবসাইটগুলি হ্যাশড ফর্ম্যাটে ব্যবহারকারীর পাসওয়ার্ড সংরক্ষণ করে। ইতিমধ্যে আলোচনা করা হয়েছে, নিরাপদ পাসওয়ার্ড হ্যাশিং একটি এনক্রিপশন অ্যালগরিদম ব্যবহার করে অক্ষর এবং / অথবা সংখ্যার একটি সংক্ষিপ্ত স্ট্রিংয়ে পরিণত করে। যদি কোনও ওয়েবসাইট হ্যাক হয় তবে সাইবার আক্রমণকারীরা হ্যাশড পাসওয়ার্ডের অ্যাক্সেস পায় না।
- ব্লকচেইন লেনদেন যাচাইকরণ। SHA-256 হ্যাশ অ্যালগরিদম হল প্রথম অ্যালগরিদম যা বিটকয়েন তৈরির সময় ক্রিপ্টোকারেন্সির সাথে ব্যবহৃত হয়েছিল। ব্লক হেডারগুলি ব্লকচেইনগুলির একটি অপরিহার্য উপাদান, কারণ তারা লেনদেনের একটি ব্লককে একটি নির্দিষ্ট ক্রমে পরবর্তী ব্লকে চেইন / সংযুক্ত করতে সহায়তা করে। SHA-256 hash নিশ্চিত করে যে নতুন ব্লকের হেডারে হস্তক্ষেপ না করে পূর্ববর্তী কোনও ব্লক পরিবর্তন করা হবে না।
এসএইচএ অ্যালগরিদমের ইতিহাস
সুরক্ষিত ক্রিপ্টোগ্রাফিক হ্যাশ অ্যালগরিদমগুলি জাতীয় সুরক্ষা সংস্থা (এনএসএ) এর সৃষ্টি। মার্কিন যুক্তরাষ্ট্র সরকার প্রযুক্তিটি পেটেন্ট করে এবং তারপরে এটি প্রত্যেকের ব্যবহারের জন্য রয়্যালটি-মুক্ত লাইসেন্সের অধীনে প্রকাশ করে।
প্রথম এসএইচএ-০ অ্যালগরিদম তৈরি হয় ১৯৯৩ সালে। এর উত্তরসূরি এসএইচএ-১ ১৯৯৫ সালে আসে এবং ক্র্যাক হওয়া সত্ত্বেও, এটি এখনও পুরোনো সার্ভার এবং ক্লায়েন্টগুলিতে ব্যবহৃত হচ্ছে। ছয় বছর পর, ২০০১ সালে, এনএসএ হ্যাশিং অ্যালগরিদমের এসএইচএ -২ পরিবার প্রকাশ করে যা SHA-256 এবং অন্যান্য পাঁচটি হ্যাশ ফাংশন অন্তর্ভুক্ত করে:
- এসএইচএ ২২৪
- এসএইচএ ৩৮৪
- এসএইচএ ৫১২
- এসএইচএ ৫১২/২২৪
- এসএইচএ ৫১২/২৫৬
আগস্ট 5, 2015 এ, এনআইএসটি (ন্যাশনাল ইনস্টিটিউট অফ স্ট্যান্ডার্ডস অ্যান্ড টেকনোলজি) এসএইচএ -3 প্রকাশ করেছে, একটি ভিন্ন অভ্যন্তরীণ অ্যালগরিদম ডিজাইনের সাথে সর্বশেষ নিরাপদ হ্যাশ অ্যালগরিদম। যদিও NIST বর্তমানে SHA-2 অ্যালগরিদম প্রত্যাহারের পরিকল্পনা করছে না, প্রয়োজনে SHA-3 বর্তমান প্রয়োগে এটি প্রতিস্থাপন করতে পারে।
এসএসএল/টিএলএস সাপোর্টের মান পর্যবেক্ষণের জন্য গ্লোবাল ড্যাশবোর্ড এসএসএল পালসের তথ্য অনুযায়ী, বিশ্বের সবচেয়ে জনপ্রিয় সাইট অ্যালেক্সার তালিকার ভিত্তিতে ৯৭.২ শতাংশ এসএইচএ-২৫৬ অ্যালগরিদম ব্যবহার করে।
শেষ কথা
SHA-256 হ্যাশ অ্যালগরিদম ওয়েবে ডেটা সুরক্ষার অবিচ্ছেদ্য অংশ। এই নিবন্ধে, আমরা গণিত এবং এর পিছনে ফাংশনগুলিতে গভীরভাবে ডুব না দিয়ে কেবল এর পৃষ্ঠটি স্ক্র্যাচ করেছি। তবুও, আপনার এখন অ্যালগরিদমের উদ্দেশ্য এবং ব্যবহার সম্পর্কে একটি সাধারণ ধারণা রয়েছে।
যতক্ষণ পর্যন্ত আমরা জটিল হ্যাশ ফাংশন ক্র্যাক করার ক্ষমতা সম্পন্ন একটি কোয়ান্টাম কম্পিউটার তৈরি না করছি, ততক্ষণ পর্যন্ত এসএইচএ-২৫৬ ডাটা এবং ফাইলের শুদ্ধতার জন্য ইন্ডাস্ট্রি-স্ট্যান্ডার্ড হ্যাশিং অ্যালগরিদম হিসেবেই থাকবে। আমরা এখনও এই ধরনের পরিস্থিতি থেকে কয়েক দশক দূরে রয়েছি, তাই আপাতত, SHA-256 এনক্রিপশন এবং প্রমাণীকরণ প্রোটোকলের একটি অংশ হবে।
আজ অর্ডার করার সময় SSL শংসাপত্রে 10% সংরক্ষণ করুন!
দ্রুত ইস্যু, শক্তিশালী এনক্রিপশন, 99.99% ব্রাউজার বিশ্বাস, নিবেদিত সমর্থন, এবং 25 দিনের অর্থ ফেরত গ্যারান্টি। কুপন কোড: SAVE10