সরল পাঠ্য হিসাবে শংসাপত্রগুলি প্রেরণ ছাড়া ডাইজেস্ট প্রমাণীকরণ বেসিক প্রমাণীকরণের চেয়ে আলাদা কীভাবে?
সরল পাঠ্য হিসাবে শংসাপত্রগুলি প্রেরণ ছাড়া ডাইজেস্ট প্রমাণীকরণ বেসিক প্রমাণীকরণের চেয়ে আলাদা কীভাবে?
উত্তর:
মূল পার্থক্য হ'ল এর জন্য প্লেইন্টেক্সটে তারের জুড়ে ব্যবহারকারীর নাম এবং পাসওয়ার্ড প্রেরণের দরকার নেই। এটি পুনরায় প্লে-আক্রমণগুলি থেকেও অনাক্রম্য, কারণ এটি সার্ভার থেকে এককালীন নম্বর ব্যবহার করে।
সার্ভার ক্লায়েন্টকে এক সময়ের ব্যবহারের নম্বর দেয় (একটি ননস) যা এটি ব্যবহারকারীর নাম, রাজ্য, পাসওয়ার্ড এবং ইউআরআই অনুরোধের সাথে একত্রিত হয়। একটি হ্যাশ কী তৈরি করতে ক্লায়েন্ট একটি MD5 হ্যাশিং পদ্ধতির মাধ্যমে এই সমস্ত ক্ষেত্র চালায়।
এটি ব্যবহারকারীর নাম এবং রাজ্যটির সাথে প্রমাণীকরণের চেষ্টা করার সাথে সার্ভারে এই হ্যাশ কীটি প্রেরণ করে।
সার্ভার-সাইড একই পদ্ধতিতে একটি হ্যাশকি তৈরি করতে ব্যবহৃত হয়, কেবল ব্রাউজারে টাইপ করা পাসওয়ার্ড ব্যবহার না করে সার্ভারটি তার ব্যবহারকারী ডিবি থেকে ব্যবহারকারীর জন্য প্রত্যাশিত পাসওয়ার্ডটি সন্ধান করে। এটি এই ব্যবহারকারীর নামের জন্য সঞ্চিত পাসওয়ার্ডটি সন্ধান করে, একই অ্যালগরিদমের মধ্য দিয়ে চলে এবং ক্লায়েন্ট যা প্রেরণ করেছে তার সাথে এটির তুলনা করে। যদি তারা মেলে তবে অ্যাক্সেস অনুমোদিত হয়, অন্যথায় এটি 401 অননুমোদিত (কোনও লগইন বা ব্যর্থ লগইন নয়) বা 403 নিষিদ্ধ (অ্যাক্সেস অস্বীকৃত) প্রেরণ করতে পারে।
ডাইজেস্ট প্রমাণীকরণ আরএফসি 2617 এ মানিক করা হয়েছে । উইকিপিডিয়ায় এটির একটি সুন্দর ওভারভিউ রয়েছে :
আপনি এটি এরকমভাবে ভাবতে পারেন:
শংসাপত্রগুলির একটি হ্যাশ তারের মাধ্যমে প্রেরণ করা হয়।
HA1 = MD5(username:realm:password)
শংসাপত্রগুলির হ্যাশ এইচএ 1 পাওয়ার একমাত্র উপায় হ'ল পাসওয়ার্ডটি জানা। সার্ভার HA1 জানে তবে এটি তৈরি হওয়া পাসওয়ার্ডটি নয়। যদি এইচএ 1 কোনও আক্রমণকারীকে জানত তবে এটি সিস্টেমে যেতে পারে। সুতরাং এটি তারের মাধ্যমে প্রেরণ করা হয় না। ননস ইত্যাদির উপর ভিত্তি করে আরও একটি হ্যাশ এটি করার আগে করা হয় এবং এটি অবশ্যই সার্ভারে করা অনুরূপ গণনার সাথে একমত হতে হবে। সুতরাং, যতক্ষণ না সার্ভার HA1 ব্যক্তিগত রাখে ততক্ষণ সিস্টেম নিরাপদ।