প্রথমে আমাদের অবশ্যই ধরে নিতে হবে যে ইভটি কেবল প্যাসিভ। এর মাধ্যমে, আমার অর্থ এই যে তিনি সত্যবাদী কার্ডটি ববকে প্রেরণ করেছেন, এবং এলিসের কাছে তিনি যা কিছু ফিরিয়ে আনেন তা হ'ল বব এর প্রতিক্রিয়া। ইভ যদি উভয় বা উভয় দিক দিয়ে ডেটা পরিবর্তন করতে পারে (এবং তার ক্রিয়াটি সনাক্ত করা যায় না) তবে কিছু যায়।
(দীর্ঘদিনের traditionsতিহ্যকে সম্মান জানাতে, কথোপকথনের সাথে জড়িত দুটি সৎ দলকে অ্যালিস এবং বব বলা হয় your আপনার পাঠ্যে আপনি "আপনি" বলেছিলেন My আমার আসল নাম "অ্যালিস" নয়, তবে আপনি যেমন লিখেছেন ঠিক তেমন প্রতিক্রিয়া জানাব যে এলিস ববসের ফোন নম্বর যাচাই করতে চায়))
সহজ (তবে দুর্বল) উত্তর হ্যাশ ফাংশন ব্যবহার করা। অ্যালিস কার্ডে লিখেছেন: "আপনার ফোন নম্বরটির SHA-256 হ্যাশ আমাকে ফিরিয়ে দিন"। SHA-256 একটি ক্রিপ্টোগ্রাফিক হ্যাশ ফাংশন যা হ্যাশ ফাংশনগুলি যতদূর যায় নিরাপদ বলে মনে করা হয়। এটি হাতে হাতে গণনা করা ক্লান্তিকর তবে এখনও করণীয় (এটি প্রায় 2500 32-বিট অপারেশন, যেখানে প্রতিটি অপারেশন একটি সংযোজন, একটি শব্দ শিফট বা ঘোরানো, বা বিটগুলির সাথে বিটওয়াইসের সংমিশ্রণ; ববকে এটি একদিনে করতে সক্ষম হতে হবে বা তাই)।
এখন এ সম্পর্কে দুর্বলতা কী? SHA-256, একটি ক্রিপ্টোগ্রাফিক হ্যাশ ফাংশন হ'ল "প্রিমাইজেসস" এর বিরুদ্ধে প্রতিরোধী: এর অর্থ হ্যাশ আউটপুট দেওয়া হলে এটি সম্পর্কিত একটি ইনপুট পুনরুদ্ধার করা খুব কঠিন (এটি হ্যাভ যে সমস্যার মুখোমুখি হয়)। তবে, "খুব শক্ত" অর্থ "সহজতম পদ্ধতি হ'ল বক্ষ শক্তি: কোনও ম্যাচ না পাওয়া পর্যন্ত সম্ভাব্য ইনপুটগুলি চেষ্টা করা"। সমস্যাটি হ'ল এখানে নিষ্ঠুর শক্তি এখানে সহজ: এখানে খুব বেশি সম্ভাব্য ফোন নম্বর নেই (উত্তর আমেরিকাতে, এটি 10 ডিজিট, অর্থাৎ মাত্র 10 বিলিয়ন)। বব হাত দিয়ে জিনিসগুলি করতে চায়, তবে আমরা ধরে নিতে পারি না যে ইভটি এতটা সীমাবদ্ধ। একটি বেসিক পিসি প্রতি সেকেন্ডে কয়েক মিলিয়ন SHA-256 হ্যাশ চেষ্টা করতে পারে তাই ইভটি এক ঘন্টােরও কম সময়ে (যদি সে জিপিইউ ব্যবহার করে তবে 5 মিনিটেরও কম) হয়ে যাবে।
এটি একটি জেনেরিক ইস্যু: বব যদি নির্বিচারবাদী হয় (যেমন এলিসের প্রদত্ত বার্তার জন্য, তিনি সর্বদা একই প্রতিক্রিয়া ফিরিয়ে দিতেন), ইভটি তাকে অনুকরণ করতে পারে। যেমন, ইভ ফোন নম্বর বাদে বব সম্পর্কে সমস্ত কিছু জানেন, তাই তিনি কার্যত 10 বিলিয়ন বব চালান, যারা কেবল তাদের ধরে নেওয়া ফোন নম্বর দ্বারা পৃথক; এবং আসল বব যা কিছু ফিরিয়ে দিয়েছে তা ফিরিয়ে দেওয়ার জন্য তিনি ভার্চুয়াল ববসের একজনের জন্য অপেক্ষা করছেন। ত্রুটিটি বিভিন্ন ধরণের "স্মার্ট" সমাধানগুলিকে এলোমেলো ন্যামেস এবং প্রতিসামগ্রী এনক্রিপশন এবং কী জড়িত তা প্রভাবিত করে। এটি একটি শক্তিশালী ত্রুটি, এবং এর মূলটি হবা এবং ববয়ের মধ্যে কম্পিউটিং পাওয়ারের বিশাল পার্থক্যের মধ্যে রয়েছে (এখন, যদি ববও হাবের মতো একটি কম্পিউটার রাখে তবে তিনি ধীর গতিতে ব্যবহার করতে পারেন)অনেক পুনরাবৃত্তির ব্যবহারের মাধ্যমে হ্যাশ ফাংশন; পাসওয়ার্ডের পরিবর্তে ফোন নম্বর সহ পাসওয়ার্ড হ্যাশিংয়ের বিষয়টিই কমবেশি; দেখতে bcrypt এবং এই উত্তর )।
সুতরাং, একটি অ-দুর্বল সমাধান বব এর অংশে কিছু এলোমেলোতা জড়িত করা আবশ্যক : বব অবশ্যই একটি মুদ্রা উল্টানো বা বারবার পাশা নিক্ষেপ করা উচিত, এবং তার গুনে মান ইনজেকশন। অধিকন্তু, বব যা করেছে তা হ্যাভকে অবশ্যই উন্মোচন করতে সক্ষম হবে না, তবে অ্যালিসকে অবশ্যই সক্ষম করতে হবে, তাই কিছু তথ্য গোপনে বব থেকে অ্যালিসে পৌঁছে দেওয়া হয়েছিল। এটাকে বলা হয় সামঁজস্যহীন এনক্রিপশন বা, অন্তত সামঁজস্যহীন কী চুক্তি। গণনা করার জন্য class শ্রেণীর সহজ অ্যালগরিদম তবে এখনও যুক্তিসঙ্গতভাবে সুরক্ষিত হয়, তারপরে পিকেসিএস # 1 ভি 1.5 প্যাডিং সহ আরএসএ হয় । আরএসএ সর্বজনীন ঘাঁটি হিসাবে ব্যবহার করতে পারে । প্রোটোকলটি এভাবে চলে:e=3
এলিস একটি বড় পূর্ণসংখ্যার যেখানে এবং একই আকারের প্রধান পূর্ণসংখ্যার যেমন এর আকার সুরক্ষা নিশ্চিত করার জন্য যথেষ্ট (যেমন ২০১২ পর্যন্ত কমপক্ষে 1024 বিট) ensure এছাড়াও, এলিসকে অবশ্যই এবং এর 3 এর গুণক না হওয়ার ব্যবস্থা করতে হবে।পি পি কি এন পি - 1 কিউ - 1n=pqpqnp−1q−1
অ্যালিস কার্ডে লিখেছেন ।n
বব প্রথম প্যাড যতদিন একটি বাইট ক্রম মধ্যে তার ফোন নম্বর , সাথে PKCS # 1 দ্বারা বর্ণনা অনুযায়ী (এই উপায়ে: 00 02 xx xx ... xx 00 BB BB .. BB, যেখানে 'বিবি' দশ বাইট যা সঙ্কেতাক্ষরে লিখা ফোন নম্বর এবং 'এক্সএক্স' -1024-বিট পূর্ণসংখ্য হলে 128 বাইটের মোট দৈর্ঘ্যের জন্য এলোমেলো অ-শূন্য বাইট মান byএনnn
বব তার বাইট ক্রমটি একটি বড় পূর্ণসংখ্যার মান (বিগ-এডিয়ান এনকোডিং) হিসাবে ব্যাখ্যা করে এবং গণনা করে (যাতে এটি খুব বড় পূর্ণসংখ্যার সাথে কয়েক গুণ, তার পরে বিভাজন, ফলাফলটি বিভাগের বাকি)। এটি এখনও হাতে কলমে (তবে আবার সেখানে, এটি সম্ভবত একটি দিনের আরও ভাল অংশ নেবে)। ফল হ'ল বব অ্যালিসের কাছে কী পাঠায়।মি 3 মি ও ডি এনmm3 mod n
এলিস তার জ্ঞান ব্যবহার এবং পুনরুদ্ধার করতে থেকে বব দ্বারা প্রেরিত। আরএসএ- তে উইকিপিডিয়া পৃষ্ঠাতে সেই প্রক্রিয়া সম্পর্কে কিছু যুক্তিসঙ্গতভাবে পরিষ্কার ব্যাখ্যা রয়েছে। একবার অ্যালিসের হয়ে গেলে , সে প্যাডিংটি সরিয়ে ফেলতে পারে ('এক্সএক্স' শূন্য নয়, সুতরাং প্রথম 'বিবি' বাইটটি নির্বিঘ্নে অবস্থিত হতে পারে) এবং তার পরে তার ফোন নম্বর রয়েছে, যা তার কাছে থাকা একটিটির সাথে তুলনা করতে পারেন।কুই মি মি 3 মিটার ণ ঘ N মিpqmm3 mod nm
অ্যালিসের গণনার জন্য একটি কম্পিউটারের প্রয়োজন হবে (একটি কম্পিউটার যা যা করা যায় তা সর্বদা প্রাথমিক এবং হাত দিয়ে করা যায়, তবে কম্পিউটারটি শয়তানভাবে দ্রুত হয়, তাই "ডাবল" অনুশীলনে খুব বেশি সময় নিতে পারে; আরএসএ ডিক্রিপশন হাতে নিতে অনেক সময় নিতে পারে সপ্তাহ)।
(আসলে আমরা ম্যাকেলিস এনক্রিপশন ব্যবহার করে দ্রুত হাতে হাতে গণনা করতে পারতাম , তবে তারপরে পাবলিক কী - অ্যালিস কার্ডে যা লিখেছে - বিশাল হবে, এবং একটি কার্ড সহজভাবে তা করবে না; ইভকে একটি পুরো বই পরিবহন করতে হবে সংখ্যার।)