আমি একটি বাইনারি ফাইল পেয়েছি এবং আমার পাসওয়ার্ডটি (হোমওয়ার্ক) ক্র্যাক করার কথা। এছাড়াও একটি ফাংশন দেওয়া হয়েছিল (একটি ফাংশন যা বাইনারি ফাইলের একটি অংশ)। এই ফাংশনটি দেখিয়েছিল যে ইনপুট স্ট্রিংটি চরিত্র অনুসারে সঠিক পাসওয়ার্ডের চরিত্রের সাথে তুলনা করা হয়েছিল এবং কোনও চরিত্র ভুল হলে তাত্ক্ষণিকভাবে মিথ্যা ফিরে এসেছিল (এটি করার নিরাপদ উপায় নয় বলে আমি অনুমান করি কারণ এটি সময় ফাঁস হয়ে গেছে এবং আমরা সঠিক পাসওয়ার্ডের দৈর্ঘ্যের ধারণা পেয়েছি) উদাহরণস্বরূপ)। তবে আমাদের শিক্ষক একটি এলোমেলো টাইমার যুক্ত করেছেন যা ফলটি (সঠিক / ভুল) ফিরিয়ে দেয় এটি আমাদের জন্য আরও শক্ত করে তোলার জন্য ...
যাইহোক, আমি ইতিমধ্যে বিপরীত প্রকৌশল দ্বারা এটি সফলভাবে সম্পন্ন করেছি এবং সঠিক পাসওয়ার্ড পেয়েছি। এখন আমি কমান্ড লাইনে এটি নিয়ে খেলছি:
/usr/bin/time -v ./program_name enter_password
এই কমান্ডের সাহায্যে আমি প্রচুর তথ্য পেয়েছি যেমন সিস্টেম সময়, অদলবদল, কার্যকরকরণের সময়..কিন্তু আমার কাছে সবচেয়ে মজার বিষয় হ'ল "স্বেচ্ছাসেবী প্রসঙ্গটি স্যুইচ" কারণ আমি যে পাসওয়ার্ডটি প্রবেশ করি তার তত বেশি সঠিক অক্ষর, কম "স্বেচ্ছাসেবী প্রসঙ্গটি স্যুইচ" " আমি পাই!
আমি যত বেশি ভুল চরিত্র প্রবেশ করি, তত বেশি "স্বেচ্ছাসেবী প্রসঙ্গ স্যুইচ" পাই।
পাসওয়ার্ডটি ক্র্যাক করতে আমার প্রায় দুই ঘন্টা সময় লেগেছিল কেবলমাত্র সেই আদেশটি প্রবেশ করে, অক্ষরগুলি প্রবেশ করে এবং "স্বেচ্ছাসেবী প্রসঙ্গের সুইচ" পর্যবেক্ষণ করে। যখনই ওয়ান অক্ষরটি সঠিক ছিল, "স্বেচ্ছাসেবী প্রসঙ্গের স্যুইচগুলি" একটিতে কমেছে।
আমার প্রশ্ন, "স্বেচ্ছাসেবী প্রসঙ্গের সুইচগুলি" আসলে কী এবং তারা কেন আমাকে পাসওয়ার্ড ক্র্যাক করতে সহায়তা করেছিল?