প্রবলেম - 63

সিজার সাইফার ১

প্রবলেম সেটার: দ্বিমিক কম্পিউটিং


ডেটা এনক্রিপশন (data encryption) মানে হচ্ছে, ডেটাকে এমনভাবে প্রকাশ করা যেন সঠিক গ্রাহক ব্যাতীত অন্য কেউ সেই ডেটার মর্মোদ্ধার করতে না পারে। বর্তমানে ডেটা এনক্রিপশনের জন্য অনেক জটিল অ্যালগরিদম আছে। মজার ব্যাপার হচ্ছে শত শত বছর আগেও মানুষ ডেটা এনক্রিপ্ট করতো। এরকম পুরনো একটি পদ্ধতি হচ্ছে সিজার সাইফার, যা রোমান সম্রাট জুলিয়াস সিজারের আমলে প্রচলিত হয়।

সিজার সাইফার পদ্ধতিতে একটি টেক্সটের সঙ্গে একটি সংখ্যা দেওয়া হয়, যাকে কি (key) বলা হয়। কি-এর মান যত, টেক্সটের অক্ষরগুলো তত ঘর পরের অক্ষর দিয়ে বদলে দেওয়া হয়। যেমন, কি-এর মান যদি 2 হয়, তখন abc-কে লেখা হবে cde (a-এর জায়গায় c, b-এর জায়গায় d, d-এর জায়গায় e)। এই কি এর মান কেবল প্রাপকই জানে, যার ফলে অন্য কেউ এই টেক্সটের মর্মোদ্ধার করতে পারে না।

এখন একটি টেক্সট ও কি দেওয়া থাকলে টেক্সটি এনক্রিপ্ট করার জন্য একটি প্রোগ্রাম লিখতে হবে।

ইনপুট

প্রথম লাইনে একটি স্ট্রিং দেওয়া থাকবে, যেটিকে এনক্রিপ্ট করতে হবে। দ্বিতীয় লাইনে কি দেওয়া থাকবে, যেটি একটি ধনাত্মক সংখ্যা এবং এর মান 0 থেকে 26-এর মধ্যে হবে।

আউটপুট

এনক্রিপ্ট করা টেক্সটি প্রিন্ট করতে হবে।

স্যাম্পল ইনপুট আউটপুট

স্যাম্পল #1

ইনপুট
Abcd Wxyz
2
আউটপুট
Cdef Yzab
প্রবলেম-63 পরিসংখ্যান

140 টি সাবমিশন

39 টি অ্যাকসেপ্টেড

34 জন সমাধান করেছেন

সাইট পরিসংখ্যান

34695 টি সাবমিশন

70 টি প্রোগ্রামিং সমস্যা

2441 জন ইউজার

দ্বিমিকএর সব বই
অ্যাডভান্সড  জাভা প্রোগ্রামিং
অ্যাডভান্সড জাভা প্রোগ্রামিং

ক্রয় করুন

কম্পিউটার প্রোগ্রামিং-দ্বিতীয় খণ্ড
কম্পিউটার প্রোগ্রামিং-দ্বিতীয় খণ্ড

ক্রয় করুন

কম্পিউটার প্রোগ্রামিং ৩য় খণ্ড : ডেটা স্ট্রাকচার ও অ্যালগরিদম পরিচিতি
কম্পিউটার প্রোগ্রামিং ৩য় খণ্ড : ডেটা স্ট্রাকচার ও অ্যালগরিদম পরিচিতি

ক্রয় করুন

জাভা থ্রেড প্রোগ্রামিং
জাভা থ্রেড প্রোগ্রামিং

ক্রয় করুন

কম্বিনেটরিকসে হাতে খড়ি ১ম খণ্ড
কম্বিনেটরিকসে হাতে খড়ি ১ম খণ্ড

ক্রয় করুন