Reverse Engineering ও এর ইতিকথা
Reverse Engineering এর মানে বুঝাতে গেলে বলতে হবে কোন মেশিন বা সিস্টেমের ডিজাইন দেখে সেটার মতই আরেকটা ডিজাইন করা। কিন্তু সফটওয়ার ইঞ্জিনিয়ারিং এর ক্ষেত্রে কোন প্রোগ্রামের সোর্স কোড বের করাকে Reverse Engineering বলা হয়। একে আবার Back Engineering ও বলা যায়! আর এর ইতিহাস ঘাটতে গেলে বলে বলা যায় Dos Disk Operating System এর গেমস গুলোর সময়ে গেমসগুলোর রিভার্স করা হত ফুল লাইফ আর এমোর জন্য! তখন গেমসের মেমোরি লোকেশন থেকে ভ্যালু চেঞ্জ করে দিয়ে একরকম চিটিং করে গেমস খেলা হত, আর সেখান থেকেই Reverse Engineering শুরু! যেসব পেইড সফটওয়্যার আমরা প্রতিনিয়ত ফ্রি তে ইউস করছি এগুলো কিন্তু সবই Reverse Engineering ছাড়া আর কিছুই না! যেটাকে 'Cracked' বললেই সবাই এক কথায় বুঝতে পারি। Reverse Engineering এর ক্ষেত্রে প্রোগ্রামিং ল্যাঙ্গুয়েজের কম্পাইল্ড ল্যাঙ্গুয়েজ বাইনারি ০,১ বের করা হয় আর সেটাকে লজিকাল প্রসেসরের মধ্যে নিয়ে এর থেকে প্রোগ্রামের সোর্স কোড আবার বের করা হয়। আর এরপরই সেটাকে আবার রিবিল্ড করা হয় নিজের ইচ্ছামত। আর তখনই পেইড সফটওয়ারগুলোর স্ক্রিপ্টের যে অংশগুলোতে পেমে...