প্রযুক্তি ব্যাখা

রিভার্স ইঞ্জিনিয়ারিং কি ?

আপনারা অনেকেই পেইড সফটওয়্যারগুলোর ক্র্যাক ভার্সন ব্যবহার করে থাকেন। যেমনঃ ফটোশপ। এটি একটি পেইড সফটওয়্যার যা কিনে ব্যবহার করা অনেকের কাছেই অসম্ভব। তাই ক্র্যাক সফটওয়্যার ই একমাত্র ভরসা। কিন্তু আপনার মাথায় কি কখনো এই প্রশ্নটি এসেছে, যে কিভাবে এই সফটওয়্যারগুলো ক্র্যাক করা হয়? জ্বি, আজ আমরা এই বিষয় নিয়েই কথা বলবো।

আমরা যেসকল ক্র্যাক সফটওয়্যার ইউজ করে থাকি সেসকল সফটওয়্যার ক্র্যাক করা হয় রিভার্স ইঞ্জিনিয়ারিং এর মাধ্যমেই। যদিও এটা রিভার্স ইঞ্জিনিয়ারিং এর একটি আন-ইথিক্যাল উদাহারণ। ইথিক্যাল হ্যাকিং এর ক্ষেত্রে একজন সাইবার সিকিউরিটি স্পেশালিস্টকে বিভিন্ন ক্ষতিকর ফাইল এর বিহেভিয়ার (Behavior) পর্যবেক্ষন করতে হয়। আর এ কারণে তাকে রিভার্স ইঞ্জিনিয়ারিং এর সহায়তা নিতে হয়। চলুন আরো একটু গভীরে যাওয়া যাক।

রিভার্স ইঞ্জিনিয়ারিং বিষয়টি ভালো ভাবে বুঝতে হলে আগে জানতে হবে ইঞ্জিনিয়ারিং শব্দটির অর্থ কি। ইঞ্জিনিয়ারিং শব্দটির অর্থ হলো কোনো কিছু তৈরি করা। আর রিভার্স ইঞ্জিনিয়ারিং অর্থ হচ্ছে কোনো তৈরি করা বস্তুকে আবার তার আগের অবস্থায় ফিরিয়ে নিয়ে গিয়ে তার খুটিনাটি বিষয় জেনে আবার তাকে তৈরি করা।

ছোটবেলায় খেলনা গাড়িকে ভেঙ্গে সব কিছু বের করে ফেলে পুনরায় সেটিকে জোড়া লাগানোর কাজটি নিশ্চয়ই সবাই করেছেন? রিভার্স ইঞ্জিনিয়ারিং এ ও ঠিক সেম প্রসেসটি করা হয়ে থাকে।

একজন ডেভেলপার বিভিন্ন প্রোগ্রামিং ল্যাঙ্গুয়েজ দিয়ে সফটওয়্যার তৈরি করে থাকে। ডেভেলপার সফটওয়্যার তৈরির জন্য প্রয়োজনীয় প্রোগ্রামিং করার পর সেটিকে কম্পাইলেশন প্রসেস এর মাধ্যমে exc ফাইলে পরিনত করে। এই কম্পাইলেশন প্রসেসে প্রথমে সোর্স কোডকে এসেম্বলি ল্যাংগুয়েজ এ কনভার্ট করে এরপর তাকে বাইনারি কোডে কনভার্ট করা হয়। কারণ কম্পিউটার শুধু মেশিন ল্যাংগুয়েজ বা বাইনারি ল্যাংগুয়েজ ই বুঝতে পারে।

কোনো প্রোগ্রামকে একবার exc ফাইলে কনভার্ট করে ফেললে সেটি থেকে আর কখনোই সোর্স কোড বের করা সম্ভব না। তবে তাকে এসেম্বলি ল্যাংগুয়েজ এ কনভার্ট করা যায়। আর এই এসেম্বলি ল্যাঙ্গুয়েজ এ থাকে সফটওয়্যার এর বিভিন্ন ইনস্ট্রাকশন। আর এসকল ইনস্ট্রাকশনকে মোডিফাই করে সফটওয়্যারটি রিবিল্ড করা হয়। এই কাজের জন্য যেসকল সফটওয়্যার ব্যবহার করা হয় তাদের বলা হয় ডিএসেম্বলার বা ডিবাগার। এই প্রক্রিয়ায় মুলত সফটওয়্যার রিভার্স ইঞ্জিনিয়ারিং করা হয়।

Leave a Reply

Your email address will not be published. Required fields are marked *

Back to top button