ہیکر Hacker کون ہے؟
اس لفظ کے لفظی معنی ہیں بہت زیادہ سمجھدار، یہ اصطلاح بیسویں صدی کی ساٹھ کی دہایوں میں رائج ہوئی جو اصل میں Massachusetts Institute of Technology کے ایک گروپ کا نام تھا جنہیں ‘ما بعد البنیادیات’ پڑھایا جاتا تھا، یہ اس کا لقب ہوتا جو کسی مسئلہ کا حل دریافت کر لے، یا کسی مسئلہ کے وقوع پذیر ہونے سے پہلے اس سے آگاہ کردے تاکہ نقصانات سے بچا جاسکے، لیکن میڈیا نے اس لفظ کا غلط استعمال کرتے ہوئے اسے معلومات کے مجرموں (جو مختلف طریقوں سے شہرت حاصل کرنے یا منافع حاصل کرنے کے لئے معلومات کی چوری کرتے ہیں اور کوئی بھی مفید یا نئی چیز دریافت نہیں کرتے) پر لاگو کردیا اور انہیں ہیکر کہنے لگے، کچھ لوگوں کو بے چارے اصل ہیکروں کی یہ توہین پسند نہیں آئی اور انہوں نے ان تخریب کاروں کے لئے کریکر cracker کی اصطلاح وضع کردی جو ابھی تک دونوں فریقین میں تفریق کے لئے مستعمل ہے، چنانچہ ہیکر اصل میں وہ نہیں جنہیں ہم ہیکر سمجھتے ہیں، بلکہ وہ اصل میں کریکر ہیں.
ٹِپ:
To hack a program کا مطلب ہے کہ اس میں کوئی ایسی خاصیت ڈالی یا شامل کردی جائے جو اس میں پہلے موجود نہیں تھی، a system hack کا مطلب ہے کوئی مفید کام کرنے کے لئے کوئی سجھدارانہ طریقہ دریافت کرنا (مثال کے طور پر رفتار بڑھانا)، To crack a password کا مطلب ہے کسی دوسرے کا پاس ورڈ معلوم کرنا، To crack a program کا مطلب ہے کہ اس میں ایسی خامی دریافت کرنے کی کوشش کرنا (یا دریافت کرہی لینا) جس سے اسے غیر قانونی طور پر استعمال کرنے کے قابل بنالیا جائے.
لیکن افسوس کہ ہمارا میڈیا (بلکہ ہمارے نصاب کے کرتا دھرتابھی) اس سب سے بالکل انجان بیٹھے ہیں.
یونکس Unix سسٹم کیا ہے؟
مثبت معنوں میں اسے اکثر ہیکر دوست Hackers Friendly! سسٹم کہا جاتا ہے، لیکن رسمی طور پر کوئی بھی نظام (آپریٹنگ سسٹم) جو POSIX کے معیارات پر پورا اترے وہ یونکس کہلائے گا.. جس کا مطلب ہے کہ یہ کوئی ایک نظام نہیں ہے، یہ معیارات اس بات کی ضمانت دیتے ہیں کہ بنایا گیا کوئی بھی پروگرام POSIX کے معیارات پر پورا اترنے والے ہر سسٹم پر کام کرے گا، ان سسٹمز کی باقاعدہ شروعات ستر کی دہائیوں میں ہوئی جب بِل لیبز www.Bell-Labs.com (بِل گِٹس نہیں) کے Ken Thompson اور Ritchie نے 1973 میں پہلا یونکس آپریٹنگ سسٹم بنایا جو دنیا کا سب سے پہلا یونکس آپریٹنگ سسٹم تھا، جسے بعد میں AT&T کو فروخت کردیا گیا، یہ اس قدر مقبول ہوا کہ اس کے لئے سپورٹ فراہم کرنا ایک مشکل امر ہوگیا، چنانچہ AT&T نے اس کا مصدر (source code) یونیورسٹیوں، ریسرچ کے مراکز، اور غیر تجارتی مقاصد کے لئے فراہم کردیا، چنانچہ مصدر کے ہوتے ہوئے سپورٹ فراہم کرنے کی کوئی ضرورت نہ رہی (صرف V سسٹم کے لئے اور وہ بھی غیر آزاد لائسنس کے تحت یعنی یہ اب بھی AT&T ہی کی ملکیت ہے اور کسی کو بھی اس میں بغیر اجازت کے تبدیلی کرنے کی اجازت نہیں) یہ سسٹم C لینگویج میں لکھا گیا تاکہ اس کی ہر قسم کے کمپیوٹرز پر چلنے کی ضمانت دی جاسکے اور ہارڈویئر Hardware سے بالکل الگ رہتے ہوئے کام کرسکے، یہ خصوصیات اس کے پانچھویں ورژن میں تھیں جسے سسٹم وی system V بھی کہا جاتا ہے، بعد میں اس سے ملتے جلتے سسٹم کئی مختلف کمپنیوں نے نکالے، لیکن اس سے سب سے زیادہ مشابہہ سسٹم BSD ہے یعنی Berkeley Software Distribution، اور پھر POSIX کے معیارات وضع کئے گئے جس کا میں نے اوپر تذکرہ کیا ہے تاکہ ایک ایسا متفقہ معیار وضع کیا جاسکے جس کے اندر رہتے ہوئے تمام کمپنیاں اس پر کام کر سکیں، یونکس کے مختلف ورژن مختلف کمپنیوں نے مختلف ناموں سے جاری کئے ہیں جیسے:
IBM کا AIX
HP/UX
SunOS
Solaris
SCO UNIX
مائکروسوفٹ کا Xenix
مگر یہ سسٹم بہت مہنگے تھے (ایک ملک کا بجٹ) چنانچہ ان کا استعمال ریسرچ کے مراکز، یونیورسٹیوں، اور عسکری اداروں تک ہی محدود رہا، اگرچہ اب یہ سسٹم کافی پرانے ہوگئے ہیں مگر یہ شروع ہی سے بہت ساری خصوصیات کے حامل رہے ہیں، یہ سسٹمز اس وقت بھی ملٹی یوزرز کی سپورٹ رکھتے تھے اور یہ بذریعہ نیٹ ورک بھی ایک دوسرے سے منسلک تھے (انٹرنیٹ پروٹوکول کی دریافت سے بھی پہلے جیسے UUCP کے ذریعے IP) اور بہت زیادہ محفوظ بھی تھے، ان کے مقابلے میں سستے سسٹم بھی دستیاب تھے جو یونکس کی اصل خصوصیات سے بالکل عاری تھے، یہ سسٹم گھریلو استعمال کے لئے بازاروں میں عام دستیاب تھے مگر یہ POSIX کے معیارات پر پورا نہیں اترتے تھے اور اصل یونکس کے مقابلے میں ان کی حیثیت ایک ‘کیلکولیٹر’ سے زیادہ نہیں تھی.
گِنو GNU سسٹم کیا ہے؟
جی ہاں.. اسے گِنو ہی پڑھا جاتا ہے جو کہ ایک جانور کا نام ہے اور جو اس کا لوگو بھی ہے اور یہ مخفف ہے GNU is Not Unix کا یعنی گِنو یونکس نہیں ہے، چنانچہ اس سے پتہ چلتا ہے کہ GNU نہ صرف یونکس کا متبادل ہے (زیادہ صحیح معنوں میں یونکس کے ٹولز) بلکہ یونکس (بہت طاقتور مشینوں کو چلانے والا نظام جسے صرف ملک ہی خریدنے کی استطاعت رکھتے ہیں اور جس کا استعمال nondisclosure agreement لائسنس سے مشروط ہے) کے فلسفہ کا بھی، گِنو کے بانی Massachusetts Institute of Technology کے پروفیسر Richard M. Stallman ہیں ( ان کا صفحہ stallman.org) جو مذکورہ انسٹی ٹیوٹ میں مصنوعی ذہانت کے پروفیسر ہیں، اس آزاد مصدر نظام کو بنانے کا خیال انہیں اسی کی دہائی میں آیا جو ایک ٹیکسٹ ایڈیٹر EMACS سے شروع ہوا، اور پھر انہوں نے fsf آرگنائزیشن بنانے کے لئے فراغت حاصل کی اور پوری دنیا سے ہزاروں پروگرامروں نے یہ نظام بنانے کے لئے ان کی آواز پر لبیک پڑھی اور یہی ہوا، مگر یہ پراجیکٹ آپریٹنگ سسٹم کا کرنل kernel بنانے کے لئے نہیں تھا بلکہ صرف سسٹم کے ٹولز (جیسے احکامات کا مترجم shell مصنف compiler اور ٹیکسٹ ایڈیٹر editor) بنانے کے لئے تھا.
لینکس Linux سسٹم کیا ہے؟
یہ اصل میں یونکس سے کمپیٹبل نظام کا کرنل ہے، جو نہ ہی یونکس کے پانچویں ورژن System V سے بنایا گیا ہے اور نہ ہی اسے بنانے میں BSD سے استفادہ کیا گیا ہے، بلکہ اسے بالکل صفر سے لکھا گیا ہے، یہ نظام نہ صرف مفت ہے بلکہ آزاد مصدر یعنی اوپن سورس بھی ہے یعنی آپ اس میں اپنی مرضی کی تبدلیاں کرنے اور اسے اپنے حساب سے ترقی دینے اور بنانے میں بالکل آزاد ہیں اور وہ بھی بغیر کسی کی اجازت لیے، (یہ مضمون اسی میں لکھا گیا ہے) اس نظام کو فِنلینڈ Finland کے Linus Benedict Torvalds نے 1991 میں شروع کیا جب وہ Helinki یونیورسٹی میں ایک طالبعلم تھے (ان کا صفحہ cs.helsinki.fi/u/torvalds) ان کی تمنا تھی کہ ان کے پاس بھی اپنے گھر کے کمپیوٹر میں یونکس سسٹم ہو (جس کا خرچہ ایک ملک کے بجٹ کے برابر ہے جیسا کہ ہم نے اوپر ذکر کیا ہے) چنانچہ انہوں نے یونکس کے ابتدائی مراحل minix کو پڑھ کر ایک ایسا مکمل آپریٹنگ سسٹم صفر سے لکھنا شروع کیا جو نہ صرف عام آپریٹنگ سسٹمز پر فوقیت رکھتا ہو بلکہ یونکس کے دوسرے سسٹمز پر بھی، جس کے بعد انہوں نے تمام فائلیں انٹرنیٹ پر رکھ کر لینکس کرنل پراجیکٹ شروع کیا (kernel.org) سب سے پہلا کرنل 1994 میں جاری کیا گیا اور آج دنیا بھر سے ایک ہزار سے زائد پروگرامرز ان کے اس پراجیکٹ میں شامل ہوکر صرف کرنل پر کام کر رہے ہیں، یہ سسٹم اکثر کمپیوٹرز پر کام کر تا ہے جو کہ یہ ہیں:
IA32(32-bit Intel Arch x86 including Pentium