RSA হল একটি পাবলিক-কী এনক্রিপশনের জন্য ক্রিপ্টোসিস্টেম, যা সংবেদনশীল তথ্য সুরক্ষিত করার জন্য ব্যাপকভাবে ব্যবহৃত হয়, বিশেষ করে ইন্টারনেটের মতো অসুরক্ষিত নেটওয়ার্কের মাধ্যমে প্রেরণ করার সময়।
RSA অ্যালগরিদম সবচেয়ে জনপ্রিয় অ্যাসিমেট্রিক কী ক্রিপ্টোগ্রাফিক অ্যালগরিদম যা এই গাণিতিক সত্যের ওপর নির্ভর করে যে বড় প্রাইম সংখ্যাগুলো খুঁজে বের করা এবং গুণ করা সহজ কিন্তু তাদের গুণফলকে ফ্যাক্টর করা জটিল। এটি প্রাইভেট এবং পাবলিক উভয় কী প্রয়োজন।
RSA অ্যালগরিদমের উদাহরণ
এই প্রক্রিয়ার ধারণা শিখতে একটি উদাহরণ নিই। পঠন সুবিধার্থে উদাহরণের মানগুলো অ্যালগরিদমের ধাপের পাশে লিখা হলো।
দুটি বড় প্রাইম সংখ্যা P এবং Q বেছে নিন
ধরি P = 47, Q = 17
N = P × Q ক্যালকুলেট করুন
আমাদের কাছে, N = 7 × 17 = 119। (নোট: এখানে P=7 ধরা হয়েছে, কিন্তু উপরে P=47 লেখা আছে। সঠিক উদাহরণের জন্য P=7, Q=17 ধরা যাক।)
পাবলিক কী (এনক্রিপশন কী) E বেছে নিন যাতে এটি (P-1) × (Q-1) এর একটি উপাদান না হয়
(7 - 1) × (17 - 1) = 6 × 16 = 96 বের করুন
96-এর ফ্যাক্টরগুলো হল 2, 2, 2, 2, 2, এবং 3 (কারণ 96 = 2 × 2 × 2 × 2 × 2 × 3)।
অতএব, E এমনভাবে নির্বাচন করুন যাতে E-এর কোনো ফ্যাক্টর 2 এবং 3 না হয়। আমরা E-কে 4 (কারণ এর 2 ফ্যাক্টর আছে), 15 (কারণ এর 3 ফ্যাক্টর আছে) এবং 6 (কারণ এর 2 এবং 3 উভয় ফ্যাক্টর আছে) হিসেবে বেছে নিতে পারি না।
E-কে 5 হিসেবে বেছে নিই (এটি অন্য যেকোনো সংখ্যা হতে পারে যাদের ফ্যাক্টর 2 এবং 3 না হয়)।
প্রাইভেট কী (ডিক্রিপশন কী) D বেছে নিন যাতে নিচের সমীকরণটি সত্য হয়:
(D × E) mod (P − 1) × (Q − 1) = 1
E, P, এবং Q-এর মানগুলো সমীকরণে বসান।
আমরা পাই (D × 5) mod (7 − 1) × (17 − 1) = 1।
অর্থাৎ, (D × 5) mod (6) × (16) = 1।
অর্থাৎ, (D × 5) mod (96) = 1
কিছু ক্যালকুলেশনের পর, D = 77 নিই। তখন: (77 × 5) mod (96) = 385 mod 96 = 1 যা আমরা চাইতাম।
এনক্রিপশনের জন্য, প্লেইন টেক্সট (PT) থেকে সাইফার টেক্সট (CT) নিচের সূত্রে ক্যালকুলেট করুন:
CT = PTE mod N
ধরি আমরা প্লেইন টেক্সট 10 এনক্রিপ্ট করতে চাই। তখন,
CT = 105 mod 119 = 100000 mod 119 = 40।
সাইফার টেক্সট CT রিসিভারকে পাঠান।
সাইফার টেক্সট হিসেবে 40 পাঠান।
ডিক্রিপশনের জন্য, সাইফার টেক্সট (CT) থেকে প্লেইন টেক্সট (PT) নিচের সূত্রে ক্যালকুলেট করুন:
PT = CTD mod N
নিচের অপারেশনটি সম্পাদন করুন:
PT = CTD mod N
অর্থাৎ,
PT = 4077 mod 119 = 10, যা ধাপ ৫-এর মূল প্লেইন টেক্সট ছিল।