লেখক:

দেবানিক দত্ত 

নবম শ্রেণী 

খুলনা জিলা স্কুল, খুলনা 


পূর্ববর্তী ক্রিপ্টোগ্রাফি সম্পর্কিত পেপারগুলিতে আমরা এই বিষয় সম্পর্কে ধারণা  নিয়েছি । আমারা দেখেছি সময়ের সাথে সাইফারের ধরন বদলেছে । আমি একটি নতুন সাইফার আবিষ্কার করেছি যা গতি-সমীকরণ মেনে চলে। এখন এই সাইফার নিয়ে আমি আলোচনা করব।

আমাদের চারপাশে যা কিছু আছে একটু ভাবলে আমরা তা থেকে সাইফার আবিষ্কার করতে পারি। গতি-সমীকরণের মাধ্যমে সাইফার আবিষ্কার এই ধারনার প্রকাশ মাত্র। তবে গতি-সমীকরণ বলতে আমি শুধু দুটি সমীকরণ ব্যবহার করেছি। সেগুলি হলঃ

 

এখানে a হলো ত্বরণ, u হলো আদি বেগ, v হলো শেষ বেগ এবং t  হলো সময়।

তবে সাধারণ গতির সমীকরণের রাশির নাম থেকে সাইফারে ব্যবহৃত রাশির নাম আলাদা। সমীকরণগুলির সাইফারে নাম হলঃ  

a = এন্সক্রিপ্টেড  বাক্য

u=প্রথম বর্ণ

v=শেষ বর্ণ

t=সকল আদি এবং শেষ বর্ণ আলাদা করার পর যে বর্ণ থাকে।

মোটামুটি এই হল সাধারন ব্যাবস্থা ।তবে যখন প্রয়োগ কর হবে তখন তা দুর্বোধ্য । গতি সমিকরন ব্যাবহার করা হয়েছে বলে এর নাম গতি সাইফার বা motion cipher বলা যেতে পারে।

এন্সক্রিপ্সন বা কোড  গঠন ঃ

যেকোনো সিফার আবিস্কার করার জন্য বর্ণ  এন্সক্রি প্সন বা বর্ণ লুকানো একটি বড় সমস্যা। এই সাইফারের  এন্সক্রিপ্সন  পদ্ধতি দুই প্রকার । সেগুলি হলঃ

১) সহজ

২) কঠিন


সহজঃ এক্ষেত্রে কোন বাক্য এর প্রথম বর্ণ কে আদি বর্ণ u  এবং শেষ  বর্ণ কে v ধরা হবেএকটা উদাহরন দেওয়া হলঃ

My gift is inferno

সহজ পদ্ধতি এর মাধ্যমে প্রথম দিকের  বর্ণ গুলি হল u এবং শেষদিকের বর্ণগুলি হল v . একটু  ভেঙ্গে দেখান হলঃ

U=M,Y,G,I,F,T,I

V=O,N,R,E,F,N,I

U এবং V  তে আমরা  বর্ণ গুলি  ভাগ করে নিলাম । তবে দেখা   যায়  যে  S কোন ভাগেই পড়ে না  । এই হল সেই t  যার সাহায্যে সাইফারের  সমাধান সম্ভব। t এর মান  অবশ্যই হবে  মাঝখানে  বর্ণের মান। তবে অনেক সময় t এর যথাযথ ভাবে পাওয়া  যায় না। তখন t এর মান দুই পক্ষ আলোচনা করে নেবে।

গতি সমীকরন এ আরেকটি প্রস্ন আসে। সেটি হল u and v এর মান। তখন a=0,1,2 ইত্যাদি ধরা যায়। এভাবে  অন্য  অক্ষরগুলির মান ঠিক করতে হয়।

এখন আমরা কোড তৈরি করব :  

মুল বাক্যঃ MY GIFT IS INFERNO

u =

M =

12

 

Y =

24

 

G =

6

 

I =

8

 

F =

5

 

T =

19

 

I =

8

v =

O =

14

 

N =

13

 

R =

17

 

E =

4

 

F =

5

 

N =

13

 

I =

8

A=0 ধরে  অক্ষর গুলির মান নির্ণয় করা হয়েছে। t=19=s=key

এবার সমীকরণে মান বসিয়ে পাই,

  (o=14,m=12)

 =0.105263157

এভাবে যথাক্রমে  vu  এর মান বসিয়ে  a এর মান বেরবেঃ

0.105263157

-0.578947398

0.578947368

-0.210526315

0

-0.315789473

0

A এর মান  সারিবদ্ধ ভাবে সাজিয়ে পাই,

0.105263157,-0.578947368,0.578947368,-0.210526315,0,-0.315789473,0

এই হল এন্সক্রিপ্সন।


কোড ব্রেকিং

কোড  তো বানালাম, এখন কোড ব্রেক করতে হবে। কোড ভাঙ্গার সমিকরন হলঃ at=v-u

তবে t এর মান অবশ্যই জানা থাকতে হবে। আর জানতে হবে range of number এর অর্থ  হল অক্ষরের ছোট মান থেকে বৃহত্তম মান পর্যন্ত সকল সংখ্যা। এখানে সেটি হল(4—24)

কঠিন পদ্ধতিতে যেকোনো এক সেট বর্ণও কে u এবং আরেক সেট বর্ণ কে v ধরা হবে। t এর মান সহজ পধতির মত

অন্যান্য বিষয় :

সাইফার টি মূলত key নির্ভর সাইফার । আর এখানে t এবং range of numbers  হল key.

এই key ছাড়া সাইফারের সমাধান হবে না। প্রশ্ন আসে যে এই key হস্তান্তর হবে কি করে? আমাদের কাছে তিনটি পথ খুলা আছে। সেগুলি হলঃ

১) প্রথম পদ্ধতি হল সেট পদ্ধতি। বাক্যটিতে  number of range  হল (4—24)  সুতরাং সেটটি হবে {x:x,3 

T সেট হবে{x:x,16নিরাপত্তার স্বার্থে তিনটি সংখ্যা key হিসাবে রাখা হয়েছে

এই পদ্ধতিতে এক পক্ষ প্রথমে সেট প্রেরন করবে তারপর বাক্য প্রেরন করবে । আরেক পক্ষ তাদের সেট প্রেরন করবে এর পর বাক্য প্রেরন করবে। এভাবে বাক্য আদান প্রদান এর কাজ চলবেt এর মান আলোচনা করে নিলে শুধু number of range  প্রেরন করলেও চলবে।


২) বাক্যের সাথে key উল্লেখ করে দেওয়া। number of range উল্লেখ করা  প্রয়োজনীয়। উদাহরন দিলে বিষয়টি  পরিস্কার হবে।

MY GIFT IS INFERNO

=0.105263157,-0.578947368,0.578947368,-0.210526315,0,-0.315789473,04,5,6,7,8,9,10,11,12,13,14,15,16,17,18,0.19,18,19,20,21,22,23,24

এঈ গুচ্ছে 0.19 হোলো ৪—২৪ এর মধ্যে  ০.১৯ হল দশমিক সংখ্যা ।এটি কে স্বাভাবিক  সংখ্যা তে রুপান্তরিত করে(0.19=19)key হিসাবে ব্যাবহার করা যায়। উল্টোটাও হতে পারে। যেমনঃ ১৯ কে স্বাভাবিক  রেখে  সব  দশমিক সংখ্যায় রুপান্তরিত করা।


৩) t এর মান আলোচনা করে ঠিক করা এই ক্ষেত্রে যে বর্ণ u এবং v তে ভাগ করার পর থেকে যায় তার সাথে ০ যোগ করে নির্ধারিত key দিয়ে  ভাগ করলে হল। একাধিক বাক্যের ক্ষেত্রে এই পদ্ধতি অতি কার্যকর।


শক্তিশালী দিকঃ

১) t মান আলোচনা  সাপেক্ষ এবং  পরিবর্তনশীল ( একটি বাক্যের ক্ষেত্রে) বলে key আবিস্কার অসম্ভভ ব্যাপার। কোড ব্রেক করা ত দুরের কথা।

২) বাক্য লেখকের মনে দয়া থাকলে number of range উল্লেখ করতে পারেন (key হস্তান্তর পদ্ধতি ২)তখন অকুল সাগরে কূল পাওয়া যেতে পারে । নাহলে কোড ব্রেক করা যাবে না।

৩) t এর মান পরিবর্তন  হয় বলে  তথ্য সুরক্ষিত থাকে।

এই হল সংক্ষেপে নতুন সাইফারের বর্ণনা। আবিস্কার করতে প্রচুর চিন্তা ভাবনার দরকার  হয়েছে। ভবিষ্যতে আমি এর উপর আর গবেষণা করব।