| নির্বাচিত পোস্ট | লগইন | রেজিস্ট্রেশন করুন | রিফ্রেস |
মাথার ভিত্তে ডুকে পড়েছে ক্রিপ্টোলজি নামক ভূত।শেষ করব আজকেই চলুন ঘুরে আসি।
Word Frequency
তরংগ শব্দের সাথে আমরা প্রায় সবাই পরিচিত। এর একেবারে কাছের বন্ধু Time period অর্থাৎ পর্যায়কাল আর একে একদম উলটো করে দিলে হয় কম্পাংক বা Frequency. "শব্দ" নামক পরিচ্ছেদের নানারকম গানিতিক সমস্যা সমাধানে আমরা এই টার্ম গুলো ব্যবহার করেছি। হয়তো বুঝে উঠতে পারছেন না!এখানে আবার সেটা আসবে কেন তাও আবার Sound frequency এর বদলে Word frequency! চলুন দেখা যাক:
এই ‘ওয়ার্ড ফ্রিকোয়েন্সি’ ব্যাপারটি এতটাই মজার যে এর আগে কোড ব্রেকিংয়ের যতগুলো পদ্ধতি নিয়ে আলোচনা করা হয়েছে তার মাঝে এটি ব্যতিক্রম হলেও কম মজার না..
বর্তমানে আমরা পৃথিবীতে যতগুলো ভাষার কথা জানি তাদের প্রত্যেকের বর্ণমালার ক্ষেত্রেই প্রতিটি বর্ণের কিছু স্বকীয় বৈশিষ্ট আছে। এর মাঝে একটি হলো, সেই ভাষায় বর্ণটির উপস্থিতির মাত্রা কেমন সেটি। আর এই উপস্থিতির মাত্রা বা হারকেই বলা হচ্ছে ‘ওয়ার্ড ফ্রিকোয়েন্সি’।
বুঝতে অসুবিধা হচ্ছে? তাহলে নিচের চিত্র দুটো দেখুন, সব পরিষ্কার হয়ে যাবে আপনার কাছেঃ
উপরের গ্রাফ ও রোমান হরফের তালিকাটি থেকে দেখা যাচ্ছে, ইংরেজীতে সবচেয়ে বেশি ব্যবহৃত শব্দটি হলো E যার ফ্রিকোয়েন্সি ১২.৭। এরপরই আছে T এবং A, যাদের ফ্রিকোয়েন্সি যথাক্রমে ৯.১এবং ৮.২। এভাবে চলতে থাকলে দেখা যাবে, তালিকার একেবারে শেষের দিকের তিনটি বর্ণ হলোঃ X, Q এবং Zযাদেরফ্রিকোয়েন্সি যথাক্রমে ০.১৫, ০.১০এবং ০.০৭। অর্থাৎ ইংরেজিতে সবচেয়ে কম ব্যবহৃত বর্ণটি হলো Z।
“আচ্ছা, ওয়ার্ড ফ্রিকোয়েন্সি কি জিনিস তা না হয় বুঝলাম, কিন্তু এই ফ্রিকোয়েন্সি বের করে কীভাবে?”
সে ক্ষেত্রে উত্তরটি হবে- “এই ওয়ার্ড ফ্রিকোয়েন্সি বের করাটা বেশ জটিল একটা কাজ। এজন্য আপনি যে ভাষার বর্ণমালার ফ্রিকোয়েন্সি বের করতে চান, সেই ভাষার সাহিত্য কিংবা নানাবিধ লেখালেখি নিয়ে আপনাকে বিস্তর গবেষণা করা লাগবে। তবে ভয়ের কিছু নেই, আপনাকে এখন আর খাতা-কলম নিয়ে বসে একটা একটা করে বর্ণ গুণতে হবে না। বরং মানুষের চেয়েও আরো দ্রুত এবং সঠিকভাবে লক্ষ লক্ষ টেক্সট যাচাই-বাছাই করে এই ওয়ার্ড ফ্রিকোয়েন্সি আমাদের জানিয়ে দিচ্ছে নানা কম্পিউটার অ্যালগরিদম।
কাজের কথায় ফিরে আসি, এতক্ষন ওয়ার্ড ফ্রিকুয়েন্সী সম্পর্কে যা জানলাম তা দিয়ে খুব সহজেই Mono Alphabetic substitution cipher এর কোড ব্রেক করা যাবে।
মনে করে নেই, মূল অক্ষর ‘E’ কে কোডিং করার সময় প্রতিস্থাপন করা হলো ‘X’ দিয়ে। তার মানে আমাদের যত জায়গায় E লেখা দরকার, কোড করা মেসেজে এখন থেকে সেখানে X ব্যবহৃত হবে।
আরো একটু বেশি কল্পনা করলে, হাতে একটি কোড করা মেসেজ আছে যাতে সবচেয়ে বেশি ব্যবহৃত বর্ণটি হলো ‘P’। তাহলে এতক্ষণ ধরে জেনে আসা ওয়ার্ড ফ্রিকোয়েন্সির ধারণাকে কাজে লাগিয়ে আমরা খুব সহজেই বলতে পারবো, এই ‘P’ আসলে ‘E’ এর পরিবর্তে ব্যবহার করা হয়েছে। তখন কাজ কেবল এই P কে E দিয়ে প্রতিস্থাপন করে দেয়া।
আপনার মাথায় হয়তো চিন্তা আসতে পারে- “কিন্তু T আর A বর্ণদুটির ফ্রিকোয়েন্সিও তো বেশি, তাহলে সেখানে যে E এর পরিবর্তে T অথবা A আসবে না তার গ্যারান্টি কি?”
এর উত্তর হলো- “আপনার ধারণাটি পুরোপুরিই সঠিক। এজন্যই প্রথমে সর্বাধিক বেশি ফ্রিকোয়েন্সির বর্ণটিকে বেছে নেয়া হয়েছে। তবে E দিয়ে আমরা যদি কোনো অর্থপূর্ণ শব্দ গঠন করতে না পারি তাহলে ধাপে ধাপে কম ফ্রিকোয়েন্সির বর্ণগুলোর দিকে এগোতে হবে।”
এরপরও মাথায় ডুকতে কষ্ট হয়! একটু মাথা খাটালেই হবে। “প্রতিটা বর্ণ দেখো, ফ্রিকোয়েন্সি অনুসারে সাজাও, কাঙ্ক্ষিত শব্দ না পেলে আবার পরের ফ্রিকোয়েন্সিতে যাও...”।
ঠিক যেন কম্পিউটার প্রোগ্রামিংয়ের একটা For Loop!!!” তবে চিন্তা নেই, এই জটিলতা কমানোরও একটা উপায় আছে।
আমরা খেয়াল করে থাকবো যে, ইংরেজীতে কিছু বর্ণ আছে যারা কখনো কখনো একসাথে দুইটি করে বসে থাকে। যেমনঃ SS, EE, TT, OO এবং FF। এখন যদি আমরা আমাদের হাতে আসা কোড করা মেসেজটিতে এরকম কিছু খুঁজে পাই, তাহলে খুব সহজেই উপরের বর্ণগুলো দিয়ে প্রতিস্থাপন করা যাবে।
আবার কিছু শব্দ আছে যাদের দিকে তাকালেই বোঝা যায় তারা কি হতে পারে। যেমন- আপনি হয়তো দেখলেন কোথাও কোড করে লেখা ‘tMe’। তাহলে বুঝতে আর অসুবিধা হয় না যে এই M আসলে H এর পরিবর্তে ব্যবহৃত হয়েছে, আর তাই মূল শব্দটি হলো ‘the’।
এই নিয়েই শেষ হল, ক্রিপ্টোলজি নিয়ে আমার স্বল্প আয়োজন।
তথ্যসূত্রঃ
১.Wikipedia
২.z2i.blog
৩.Cryptography:Theory and Practice..by Douglas R. Stinson
৪.ক্রিপ্টোলজিঃগোপন সংকেতের রহস্যভেদ... মুহাইমিনুল ইসলাম অন্তিক। জিরো টু ইনফিনিটি প্রকাশনী।
৫.The Telegraph
৬.Internet(for pictures)
০৬ ই জানুয়ারি, ২০১৭ দুপুর ২:৪৯
অর্থহীন চিন্তাবিদ বলেছেন: আপনাকে ধন্যবাদ। গাণিতিক ইকুয়েশন ব্যবহার করতে চাইনি। কিন্তু একটা না দিয়ে পারিনি। আর উদাহরণ আর গ্রাফ গুলো ব্যাখ্যা করতে গেলে লেখার দৈর্ঘ্য অনেক বড় হয়ে যায়। তাই সংক্ষিপ্তভাবেই অইসব উল্লেখ করেছি। ধন্যবাদ আপনাকে সাজেশন এর জন্য!
©somewhere in net ltd.
১|
২৯ শে ডিসেম্বর, ২০১৬ রাত ৮:২৯
পুলহ বলেছেন: প্রথম পর্বটা দেখেছিলাম, অপেক্ষা করছিলাম রেফারেন্সের জন্য। রেফারেন্স যথেষ্ট নির্ভরযোগ্য দেখে এখনি তিনটা পড়ে শেষ করলাম।
আমি সায়েন্সের ছাত্র হওয়ায় আমার বুঝতে অসুবিধা হয় নি আল্লাহর রহমতে। তবে আপনাকে দু'টো সাজেশন দিতে পারি পাঠক হিসেবে-
১। এ ধরণের লেখা যদি সবাইকে উদ্দেশ্য করে লিখে থাকেন, তবে লিখার সময় ম্যাথমেটিকাল ইকুয়েশন এভয়েড করাটাই বোধহয় ভালো। যদিও আপনি এই তিন পর্ব মিলে মাত্র একটা ইকুএশনই ব্যবহার করেছেন (২য় পর্বে), যেটা এপ্রিসিয়েবল।
২। গ্রাফ, চিত্রগুলো যতটা সম্ভব ব্যাখ্যা করে লিখতে পারেন। এবং পর্যাপ্ত উদাহরণ সহ। (এ পোস্টগুলোতে পাঠকের কাছে বিষয়গুলো ক্লিয়ার করার জন্য উদাহরণ কি আরেকটু বেশি দিতে পারতেন??)
ফ্রিকুয়েন্সি নিয়ে আল জাজিরাতে একটা ডকুমেন্টারি দেখেছিলাম ক্রিপ্টগ্রাফির ওপর। বলা বাহুল্য- তখনো মুগ্ধ হয়েছি। আপনার লেখা পড়েও হলাম।
পোস্ট প্রিয়তে। খুব ভালো লিখেছেন!