کوانٹم کمپیوٹر کیا ہے؟
کمپیوٹر کی ایجاد بیسویں صدی کی سب سے اہم پیش رفتوں میں شامل ہے۔ بنیادی طور پر تو کمپیوٹر کا مقصد ریاضی کے پیچیدہ مسائل کو حل کرنا تھا، لیکن وقت کے ساتھ کمپیوٹر ہماری زندگیوں کے مختلف پہلوؤں پر اثر انداز ہو گیا ہے اور آج یہ ہر شخص کی ضرورت بن چکا ہے۔ کمپیوٹر کا سب سے اہم اثر یہ ہے کہ اس نے انٹرنیٹ کے ذریعے دنیا کو ایک دوسرے سے نزدیک کر دیا ہے۔ کمپیوٹر نہ صرف ہر قسم کی معلومات کا اہم ذریعہ بن گیا ہے ، بلکہ اس پر تفریحی پروگرام بھی دیکھے جا سکتے ہیں، اور ایک دوسرے سے رابطے کا انتہائی موثر ذریعہ بن گیا ہے۔
جس طور عام کمپیوٹر نے بیسویں صدی پر گہرے نقوش چھوڑے، اسی طرح توقع کی جاتی ہے کہ کوانٹم کمپیوٹر اکیسویں صدی کو اثر انداز کرے گا۔
اس مضمون کا مقصد عام فہم زبان میں یہ بتانا ہے کہ کوانٹم کمپیوٹر عام کمپیوٹر سے کس طور مختلف ہے، یہ کس قسم کے مسائل کو حل کرنے میں مددگار ثابت ہو سکتا ہے اور اس کی ہماری زندگی میں کیا اہمیت متوقع ہے۔
سب سے پہلے یہ بتانا ضروری ہے کہ ابھی تک کوانٹم کمپیوٹر ریسرچ کے مراحل میں ہے اور ایک کارآمد کوانٹم کمپیوٹر کے حصول کی منزل ابھی دور ہے۔ لیکن یہ بھی درست ہے کہ اس شعبے میں بے تحاشا ریسرچ جاری ہے اور یہ توقع کی جاتی ہے کہ مستقبل قریب میں کوانٹم کمپیوٹر کچھ سادہ مسائل کو حل کرنے کے قابل ہو گا۔
ایک اور اہم نکتہ یہ ہے کہ موجودہ کمپیوٹر کی نوعیت ایسی ہے کہ یہ ہر قسم کے ریاضیاتی مسائل کو حل کرنے کی صلاحیت رکھتا ہے، جبکہ کوانٹم کمپیوٹر سے یہ توقع کی جاتی ہے کہ یہ بہت سے ریاضیاتی مسائل کو اتنی آسانی سے حل کرنے کے قابل نہیں ہو گا، لیکن ایسا کمپیوٹر بعض خصوصی مسائل روایتی کمپیوٹر کے مقابلے میں غیر معمولی رفتار سے حل کر سکے گا۔ اس وقت ایسے مسائل کی تعداد بہت محدود ہے اور میں ان کا تذکرہ بعد میں کروں گا۔ لیکن یہ بھی ایسا شعبہ ہے جہاں بہت ریسرچ جاری ہے۔ اس طور کوانٹم کمپیوٹر کی ساخت ایک عام کمپیوٹر کے مقابلے میں بہت مختلف ہو گی۔ کوانٹم کمپیوٹر کی غیر معمولی رفتار کوانٹم میکانکس کی کون سی خصوصیات کی وجہ سے ہوتی ہیں، اس کا ذکر درج ذیل میں کیا جائے گا۔
سب سے پہلے کوانٹم کمپیوٹر کی ایک مختصر تاریخ۔
کوانٹم کمپیوٹنگ کے بارے میں سب سے پہلے تصورات رچرڈ فائن مین نے 1982 میں پیش کیے جب انہوں نے تجویز کیا کہ کوانٹم کمپیوٹر ایسے پیچیدہ کوانٹم مکینیکل مسائل کو حل کرنے کی صلاحیت رکھتا ہے جو عام کمپیوٹر پر حل کرنا تقریباً ناممکن ہے۔ کوانٹم کمپیوٹنگ کا ریاضیاتی فریم ورک ڈیوڈ دوائچ نے 1980 کی دہائی کے آخر میں تیار کیا تھا۔ تاہم، اس وقت تک کسی نے کوئی ایسا عملی مسئلہ پیش نہیں کیا تھا جو روایتی کمپیوٹرز کے مقابلے میں کوانٹم کمپیوٹر پر کافی تیز رفتاری کے ساتھ حل کیا جا سکے۔ اس دوران کوانٹم کمپیوٹنگ کے شعبے میں دلچسپی بہت کم محققین تک محدود رہی۔ لیکن 1990 کی دہائی کے وسط میں صورتحال یکسر تبدیل ہو گئی جب کوانٹم کمپیوٹنگ کے ذریعے دو ایسے اہم مسائل کا حل تجویز کیا گیا جن کو عام کمپیوٹر پر حل کرنا ناممکن تصور کیا جاتا تھا۔ ان مسائل کا ذکر اس مضمون میں بعد میں آئے گا۔
اب میں یہ سمجھا نے کی کوشش کرتا ہوں کہ کوانٹم کمپیوٹر اور ایک عام کمپیوٹر میں بنیادی فرق کیا ہے۔
کسی بھی کمپیوٹر کا بنیادی بلڈنگ بلاک ایک بٹ (bit) کہلاتا ہے، جو دو قدروں کو لے سکتا ہے، ’0‘ یا ’1‘ ۔ ایک روایتی کمپیوٹر میں، یہ bits کلاسیکی اشیاء ہیں جیسے وولٹیج، ہائی وولٹیج ’1‘ کے مساوی ہے اور کم وولٹیج ’0‘ کے مساوی ہے۔ لہذا ان کو کلاسیکیbit یا محض ’bit‘ کہا جاتا ہے۔
دوسری طرف، ایک quantum bit (یا ’qubit‘ ) ایک ایسا نظام ہے جو دو ممکنہ کوانٹم حالتوں میں موجود ہو سکتا ہے۔ لیبارٹری میں qubit بہت سی مختلف صورتوں میں حاصل کیے جا سکتے ہیں۔
مثال کے طور پر، ایک فوٹون جو افقی اور عمودی پولرائزیشن حالت میں موجود ہو سکتا ہے، ایک qubitہے جس میں افقی یا عمودی پولرائزیشن بالترتیب ’0‘ یا ’1‘ کے مماثل ہے۔
اس طرح ایک ایٹم جس میں توانائی کے دو لیول ہوں، زمینی اور پرجوش، ایک qubit کے طور پر استعمال ہو سکتا ہے۔
ایک آخری مثال ایسے فوٹون کی ہو سکتی ہے جو موجود ہو سکتا ہے یا نہیں۔ فوٹون ہے یا نہیں بالترتیب ’0‘ یا ’1‘ سے مماثل ہے۔
کوئی بھی کمپیوٹر جو کلاسیکل بٹس کے بجائے کیوبٹ qubits کا استعمال کرتے ہوئے مسائل کو حل کرتا ہے، کوانٹم کمپیوٹر کہلا یا جائے گا۔
لیکن سوال پیدا ہوتا ہے کہ کیوبٹ میں ایسی کیا خوبی ہے جس کی بدولت ایک انتہائی تیز رفتار کمپیوٹنگ ممکن ہوتی ہے؟
کوانٹم بٹس، کوانٹم سٹیٹس ہونے کے ناتے، دو نئی خصوصیات کے حامل ہوتے ہیں جو ان کے کلاسیکی ہم منصبوں کے لیے ناقابل رسائی ہیں۔ پہلا یہ امکان ہے کہ کیوبٹس مربوط سپر پوزیشن کی حالت میں موجود ہوسکتے ہیں۔ مثال کے طور پر، ایک ایٹم زمینی حالت میں یا پرجوش حالت میں یا دونوں حالتوں کی مربوط سپر پوزیشن میں موجود ہو سکتا ہے۔ دوم، دو یا دو سے زیادہ کیوبٹس پر مشتمل نظام ایک دوسرے سے مربوط entangled حالت میں پایا جا سکتا ہے۔ اس صورت حال میں دونوں کیوبٹس اپنی آزاد شناخت کھو دیتے ہیں۔ اور ایک کیوبٹ کی حالت دوسرے کی حالت پر منحصر ہو جاتی ہے۔
کوانٹم کمپیوٹر کی ممکنہ طاقت کو سمجھنے کے لیے، آئیے پہلے ایک سادہ سی مثال پر غور کریں جس کو سمجھنا آسان ہے۔ فرض کریں کہ ایک کھڑکی ہے جو دو ممکنہ حالتوں میں ہو سکتی ہے :کھڑکی کھلی ہے یا بند۔ اگر دو کھڑکیاں ہیں تو چار امکانات ہیں : دونوں کھڑکیاں کھلی ہیں، پہلی کھڑکی کھلی ہے اور دوسری بند ہے، پہلی کھڑکی بند ہے اور دوسری کھلی ہے، اور دونوں کھڑکیاں بند ہیں۔ اس صورت حال میں دو کھڑکیوں میں امکانات کی تعداد
4 = 2 x 2
ہے۔
اسی طرح یہ دیکھا جا سکتا ہے کہ تین کھڑکیوں کے لیے امکانات کی تعداد 2 × 2 × 2 = 8 ہو گی۔ جیسے جیسے کھڑکیوں کی تعداد بڑھاتے جائیں، امکانات کی تعداد تیزی سے بڑھنے لگتی ہے۔ مثلاً اگر کھڑکیوں کی تعداد 1000 ہے، تو امکانات کی تعداد 2 × 2 ×⋯× 2، 1000 گنا ہے۔ یہ ایک بہت بڑی تعداد ہے، جو پوری کائنات میں موجود تمام ایٹموں کی تعداد سے بڑی ہے۔ تاہم، امکانات کی بہت بڑی تعداد کے باوجود، کسی ایک وقت میں صرف ایک ہی امکان موجود ہے۔
مثال کے طور پر، اگر ہمارے پاس صرف دو کھڑکیاں ہیں، تو ہمیں چار امکانات میں سے ایک ملے گا۔ یا تو دونوں کھڑکیاں کھلی ملیں گی یا پھر پہلی کھڑکی کھلی ملے گی اور دوسری بند، وغیرہ۔ اگر کوئی ہمیں یہ بتائے کہ ایک ہی وقت میں یہ تمام امکانات بیک وقت موجود ہوتے ہیں تو ہم اس شخص کو انتہائی حیرانی کی حالت میں دیکھیں گے، اور اس کی بات کا یقین نہیں کریں گے۔ یہ کیسے ہو سکتا ہے کہ دونوں کھڑکیاں بیک وقت کھلی بھی ہوں اور بند بھی۔ لیکن کوانٹم میکانکس کے قوانین کے تحت ایسا ممکن ہے۔
کوانٹم مکینیکل سسٹم کے لیے صورتحال واضح طور پر مختلف ہے۔ ایک کوانٹم سسٹم پر غور کریں، جیسے ایک ایٹم، جو دو ممکنہ حالتوں میں موجود ہو سکتا ہے، زمینی اور پرجوش۔ اگر 1000 ایٹم موجود ہوں، تو اصولی طور پر، وہ بیک وقت تمام ممکنہ امتزاج میں یعنیentangled state میں موجود ہو سکتے ہیں۔ اس طرح، اگر ہمارے پاس صرف 1000 کیوبٹس، جیسے 000 1 ایٹم، موجود ہوں تو ہمارے پاس ایک ایسی طاقت کا حامل کمپیوٹر ہو سکتا ہے جو ایک روایتی کمپیوٹر صرف اسی صورت میں حاصل کر سکتا ہے جب وہ معلوم کائنات میں موجود تمام ایٹموں کوبٹس کے طور پر استعمال کرے۔ یہ احساس ذہن کو ہلا دینے والا ہے۔ اس مشاہدے سے یہ بھی واضح ہوجاتا ہے کہ کیوں سائنسدان کوانٹم کمپیوٹر کے امکانات پر انتہائی پرجوش آتے ہیں۔
اب ایک سوال ذہن میں آتا ہے کہ اگر 1000 کیوبٹس کی معمولی تعداد کے ساتھ بھی، ہم ممکنہ طور پر ایک ایسا کمپیوٹر بنا سکتے ہیں جس کی کارکردگی ایک ایسے عام کمپیوٹر کے برابر ہو جس کی تعمیر میں کائنات کے تمام ایٹم شامل ہوں، تو ایسا کمپیوٹر اب تک حقیقت کیوں نہیں بن سکا ہے؟
اس سوال کا جواب کوانٹم مکینکس کے دو پہلوؤں سے وابستہ ہے جو کوانٹم کمپیوٹر کے امکانات کی نفی کرتے دکھائی دیتے ہیں۔ جس طرح ہم کوانٹم مکینکس کی اس خاصیت کہ تمام ایٹم بیک وقت تمام امکانات کے حامل ہو سکتے ہیں، ہمیں تقریباً ناقابل یقین صلاحیت کے حامل کوانٹم کمپیوٹر کے امکان کی طرف لے جاتا ہے، اسی طرح کوانٹم میکانکس کے دیگر دو پہلو، یعنی پیمائش کے نتائج کی امکانی نوعیت اور decoherence، ایک مضبوط اور قابل اعتماد کمپیوٹر کے ڈیزائن میں رکاوٹ ڈالتے نظر آتے ہیں۔
میں ایک پچھلے مضمون میں کوانٹم میکانکس کی امکانی نوعیت کے بارے میں تفصیل سے بات کر چکا ہوں۔ اس کی روشنی میں جو بات کہی جا سکتی ہے وہ یہ کہ موجودہ تناظر میں یہ کہنا کہ تمام ایٹم بیک وقت تمام امکانات کے حامل ہو سکتے ہیں، اس وقت تک درست ہے جب تک کہ ہم کیوبٹس کی حالت کی پیمائش نہ کریں۔ تاہم، اگر ہم ہر ایٹم کی پیمائش کریں تو ان لاتعداد امکانات میں سے صرف ایک حاصل ہو گا اور یہ نتیجہ امکانی ہو گا اس طور کہ اس کی پیشن گوئی ناممکن ہو گی۔ اس طور پیمائش کے نتیجے میں ان لاتعداد امکانات میں سے، ہم صرف ایک امکان کا مشاہدہ کر سکیں گے اور سب سے اہم بات یہ ہے کہ اس امکان کی پیشن گوئی کرنا ممکن نہیں۔
یہ صورت حال تو بہت مایوس کن دکھائی دیتی ہے کیونکہ کسی بھی ریاضی کے مسئلے کا امکانی جواب عام طور پر قابل قبول نہیں ہوتا ہے۔ لہذا، یہ ’کوانٹم کمپیوٹر‘ سے وابستہ خواب کا خاتمہ ہونا چاہیے۔
دوسرا مسئلہ کا تعلق decoherenceسے ہے۔ اس کو سمجھنا نسبتاً مشکل ہے۔ جب کوئی سسٹم اپنے ارد گرد کے ماحول سے تعامل کر تا ہے، تو اس سسٹم میں تبدیلی آنے لگتی ہے۔ اہم بات یہ ہے کہ اس تبدیلی کو کنٹرول کرنا ناممکن ہے۔ نتیجہ یہ ہوتا ہے کہ سسٹم کو بغیر غلطی کے چلانا ناممکن ہو جاتا ہے۔
ہوتا یوں ہے کہ ماحول کے ساتھ تعامل کے ذریعہ کیوبٹس کی حالت میں غلطیوں کا احتمال ہوتا ہے۔ ہمارے روزمرہ کے تجربے میں، ہم جانتے ہیں کہ ماحول کے ساتھ کسی بھی نظام کا تعامل نظام کی حالت میں تبدیلی کا باعث بن سکتا ہے یہاں تک کہ جب ہم ایسا کرنے کا ارادہ نہ رکھتے ہوں۔ مثال کے طور پر، یہ ایک عام مشاہدہ ہے کہ گرم چائے آہستہ آہستہ ٹھنڈی ہوتی جاتی ہے اور بالآخر اس کا درجہ حرارت کمرے کے درجہ حرارت کے برابر ہو جاتا ہے۔
اس صورتحال میں چائے سے توانائی کمرے میں موجود مالیکیولز میں منتقل ہوتی ہے۔ اگر کمرہ بڑا ہو تو ہم کمرے کے درجہ حرارت میں کوئی تبدیلی محسوس نہیں کرتے ہیں۔ تاہم، ہمارے چھوٹے سے کپ میں چائے کا درجہ حرارت کم ہو جاتا ہے۔ یہ عمل ناقابل واپسی ہے کیونکہ چائے ٹھنڈے ہونے کے عمل میں توانائی چائے کے مالیکیولز سے اردگرد کے مالیکیولز میں منتقل ہوتی ہے۔ لیکن ایسا کبھی نہیں ہوتا کہ ایک کپ میں موجود ٹھنڈی چائے اپنے اردگرد سے توانائی حاصل کر کے اچانک گرم ہو جائے۔
کوانٹم میکانکی طور پر صورتحال اور بھی پیچیدہ ہے۔ اس کا تعلق خلا کی نوعیت سے ہے۔ جیسا کہ میں نے ایک سابق مضمون میں بتایا تھا، کوانٹم میکانکس کی آمد سے پہلے، خلا کا تصور ایک ایسی جگہ کا تھا جہاں کوئی روشنی موجود نہیں، کوئی حرکت نہیں، اور کوئی توانائی موجود نہیں۔ بس کچھ بھی نہیں۔ خلا یا ویکیوم کی کوانٹم مکینیکل تصویر ڈرامائی طور پر مختلف نکلی۔ کوانٹم مکینکس کے مطابق، ویکیوم میں، یہاں تک کہ جب درجہ حرارت تقریباً مطلق صفر ہوتا ہے اور کوئی چیز حرکت نہیں کرتی، توانائی کی لامحدود مقدار موجود ہوتی ہے۔
خلا جس کے بارے میں ہم سوچتے تھے کہ روشنی اور مادہ سے بالکل خالی ہے، درحقیقت لامحدود توانائی رکھتی ہے۔ لیکن صورت حال مزید دلچسپ ہے۔ ہائزنبرگ سے وابستہ ایک اصول کے مطابق جب کسی ذرے کی پوزیشن متعین ہو تو اس کی رفتار غیر متعین ہو جاتی ہے۔ اسی طرح کا تعلق توانائی اور وقت میں بھی ہے۔ یعنی ہمارے پاس ایک مقررہ وقت میں توانائی کی ایک صحیح مقدار نہیں ہو سکتی۔ توانائی کے اتار چڑھاؤ (fluctuations) کے نتیجے میں کوئی بھی کیوبٹ، جیسے ایٹم، ہماری کسی مداخلت کے بغیر اپنی حالت تبدیل کر سکتا ہے۔ اس طور بغیر غلطی کیے کوئی نتیجہ حاصل کرنا ناممکن ہو جاتا ہے۔
یوں ہمیں ایک دلچسپ صورت حال کا سامنا ہے۔ ایک طرف تو مربوط سپر پوزیشن میں ایک یا بہت سارے کیوبٹ تیار کرنے کی صلاحیت اس امکان کو فروغ دیتی ہے کہ صرف ایک ہزار کیوبٹس کی موجودگی میں ایسا کمپیوٹر بنایا جائے جس کی صلاحیت ایک ایسے عام کمپیوٹر کے برابر ہو جس کو بنانے میں کائنات کے تمام ایٹم شامل ہوں۔
دوسری طرف پیمائش کا امکانی نتیجہ اور ماحول کے ساتھ کیوبٹ کے تعامل کی وجہ سے غلطیوں کے امکان کی موجودگی میں کوانٹم کمپیوٹنگ کا خواب شرمندہ تعبیر ہوتا نظر نہیں آتا۔
اس طور کوانٹم کمپیوٹنگ کا سب سے بڑا چیلنج ایسے ریاضیاتی مسائل کی تلاش ہے جن کو ایک طرف تو کوانٹم مکینکس سے وابستہ entanglement جیسی حیرت انگیز خصوصیت کو استعمال کر کے حل کیا جا سکے لیکن دوسری طرف پیمائش کے نتائج کی ممکنہ نوعیت سے متاثر نہیں ہوتے ہوں۔ کوانٹم کمپیوٹنگ میں decoherence اب بھی بڑی رکاوٹ ہے۔ یہ ایک عملی مسئلہ ہے جس کے لیے ایسے سسٹم کی تلاش کی ضرورت ہے جہاں ہم سسٹم پر ماحول کے اثر کو کم کر سکتے ہیں یا کچھ غلطیوں کی اصلاح کے کوڈز اور طریقہ کار استعمال کر سکتے ہیں۔ اس چیلنج کو اب تک بہت محدود تعداد میں مسائل میں پورا کیا جاسکتا ہے۔
کوانٹم کمپیوٹر سے وابستہ سب سے مشہور اور سب سے اہم مسئلہ یہ ہے کہ اگر ایک ایسا نمبر دیا جائے جو دو پرائم نمبروں کو ضرب دے کر حاصل کیا گیا ہو، تو یہ دونوں پرائم نمبر کیسے حاصل کیے جائیں۔
پرائم نمبر وہ اعداد ہیں جو 1 کے علاوہ کسی بھی نمبر سے تقسیم نہیں ہوتے ہیں۔ مثال کے طور 7، 13، اور 23۔ کوئی بھی شخص جس کے پاس جیبی کیلکولیٹر ہو، جانتا ہے کہ دو پرائم نمبروں کو ضرب دینا معمولی بات ہے، چاہے وہ کتنے ہی بڑے کیوں نہ ہوں۔ مثال کے طور پر، 113 اور 169 پرائم نمبر ہیں۔ انہیں آسانی سے ضرب دیا جا سکتا ہے اور نتیجہ 19,097 ہے۔ تاہم، معکوس کو انجام دینا، یعنی یہ معلوم کرنا کہ ایک نمبر کن پرائم نمبروں کو ضرب دے کر بنا ہے، انتہائی مشکل ہے۔ اس مشکل کو سمجھنے کے لیے، ذرا یہ معلوم کر نے کی کوشش کریں کہ 21583 کوکن دو پرائم نمبروں کو ضرب دے کر حاصل کیا گیا ہے۔
اس مسئلے کی دشواری کو سمجھنے کے لیے ہم نوٹ کرتے ہیں کہ آج کے تیز ترین کمپیوٹر پر 256 ہندسوں پر مشتمل نمبر کے پرائم فیکٹرز کو تلاش کرنے میں کئی دہائیاں لگیں گی، 1000 ہندسوں کا نمبر تقریباً 10 ارب سال لے گا۔ اگر یہ سوچا جائے کہ کائنات کی عمر کا موجودہ تخمینہ 13.8 بلین سال ہے، تو اندازہ ہو گا کہ یہ کتنا طویل وقت ہے۔ اس طرح، جتنا بڑا نمبر ہو گا، ان پرائم نمبروں کا ادراک جن کو آپس میں ضرب دے کریہ نمبر بنا ہے، اتنا مشکل ہوتا جائے گا۔
کوانٹم کمپیوٹر کی تاریخ کا اہم ترین لمحہ وہ تھا جب 1994 میں، پیٹر شور نے کوانٹم کمپیوٹر پر مبنی ایک اسکیم تجویز کی جس کے مطابق کسی بڑے سے نمبر سے وابستہ ان دو پرائم نمبروں، جن کو ضرب دے کر وہ نمبر حاصل کیا گیا ہے، کو ایک محدود مدت میں بہت موثر طریقے سے تلاش کیا جا سکے۔ اس نتیجے نے تو سائنسی دنیا میں ایک زبردست ہلچل پیدا کر دی۔ کوانٹم کمپیوٹر کی تحقیق، جو اب تک بہت محدود حد تک جاری تھی، اب ہر کوئی اس میں دلچسپی لیتا نظر آنے لگا۔ یہ دلچسپی آج تک جاری ہے۔
سوال یہ ہے کہ اس بے اندازہ دلچسپی کا سبب کیا ہے؟
کسی نمبر کے پرائم فیکٹرز کو تلاش کرنا تو خالص ریاضی کا ایک عام سا مسئلہ معلوم ہوتا ہے جس کی بظاہر کوئی اہمیت نہیں۔ تو پھر اس دریافت نے سائنسی حلقوں میں کیوں کھلبلی مچا دی؟
اس مسئلے کی اہمیت کا اندازہ اس بات سے لگایا جا سکتا ہے، کہ اگر کسی بڑے نمبر کے پرائم فیکٹرز کو آسانی سے تلاش کرنا ممکن ہو جائے تو یہ ممکن نہیں رہے گا کہ ہم انٹرنیٹ کے ذریعے کوئی مخفی معلومات کا تبادلہ کر سکیں۔ اس طور موجودہ دور کے ملٹی ٹریلین ڈالر ای کامرس ختم ہو جائے گی۔
1970 کے آس پاس تک ہزاروں سال تک محفوظ مواصلات کے لیے روایتی cryptography کا استعمال کیا جاتا رہا جس کا ذکر میں ایک پچھلے مضمون میں کر چکا ہوں۔ عوامی کلیدی الگورتھم کی آمد نے cryptography کی نوعیت کو ڈرامائی طور پر تبدیل کر دیا۔ اس سے پہلے کہ انٹرنیٹ مواصلات کا وسیع پیمانے پر استعمال ہونے والا ذریعہ بن گیا، عوامی چینل کے ذریعے کلیدی تبادلے کی ضرورت تھی۔ مثال کے طور پر اگر کوئی بینک دنیا بھر میں پھیلی ہوئی شاخوں کے ساتھ حساس مالیاتی معلومات کا تبادلہ کرنا چاہتا ہے، تو جسمانی رابطے کے ذریعے چابیوں کا تبادلہ کرنا بہت غیر عملی اور مہنگا ہو گا۔
کلید کا تبادلہ ان مواصلاتی چینلز پر ہونا چاہیے جو ہر کسی کے لیے آسانی سے دستیاب ہوں، جیسے کہ ٹیلی فون لائن یا انٹرنیٹ۔ 1990 کی دہائی میں انٹرنیٹ کی آمد اور ای کامرس میں اس کی افادیت کے ساتھ، یہ ضروری ہو گیا کہ ڈیٹا اور معلومات کی منتقلی صرف عوامی چینلز پر ہونی چاہیے، اور ساتھ ہی یہ معلومات محفوظ بھی ہونی چاہئیں۔
1978 میں تین ریاضی دانوں، رونالڈ ریوسٹ، اڈی شامیر، اور لیونارڈ ایڈلمین نے ایک پروٹوکول وضع کیا جس کو ان ریاضی دانوں کی مناسبت سے RSA پروٹوکول کا نام دیا گیا۔ اس پروٹوکول کی خاصیت یہ تھی کہ یہ انتہائی اعلیٰ سطح کی سیکیورٹی کے ساتھ عوامی چینلز کے ذریعے چابیوں کے تبادلے کی اجازت دیتا ہے۔ RSA پروٹوکول ریاضی کی خالص ترین شاخ، نمبر تھیوری، کی ایک خوبصورت (اور مفید) مثال ہے۔
فرض کریں کہ زید دنیا میں بکھرے بہت سے دوستوں، مثلاً عمر، بکر، علی سے اس طرح معلومات کا تبادلہ کرنا چاہتے ہیں کہ زید اور عمر کے مابین پیغام بکر، علی اور دوسرے دوستوں سے مخفی رہے۔ اسی طرح زید اور بکر کے مابین پیغام عمر، علی اور دوسرے دوستوں سے مخفی رہے۔ اس مقصد کے لیے زید اپنے تمام دوستوں کو نمبروں کی شکل میں ایک کلید یا چابی ان پبلک چینلز جیسے ٹیلیفون لائن یا انٹرنیٹ پر اس طرح بھیجتے ہیں جن تک زید کے دشمنوں تک ہر کسی کی پہنچ ہوتی ہے۔
ایسا کرنا کیسے ممکن ہے؟
ایسا کرنے کا طریقہ یہ ہے کہ زید ایک بڑے نمبرN کا انتخاب کرتے ہیں جو دو پرائم نمبروں p اور qکو ضرب دینے سے بنا ہے، یعنی N=pq۔ ان تین نمبروں N، p، اور q سے، زید نمبر تھیوری کے مخصوص طریقوں کا استعمال کرتے ہوئے مزید دو نمبر e اور d بناتے ہیں۔ پھر انکرپشن چابی دو نمبروں e اور N پر مشتمل ہوتی ہے جس کا اعلان زید اپنے تمام دوستوں کو کسی عوامی چینل جیسے انٹرنیٹ، سیل فون، یا ٹیلی فون لائن پر کر دیتے ہیں۔ یہ انکرپشن چابی کسی غیر متعلقہ شخص کے لیے بھی قابل رسائی ہوتی ہے۔
لیکن زید ڈکرپشن کلیدdکو اپنے پاس محفوظ رکھتے ہیں اور ہر کسی سے خفیہ رکھتے ہیں۔ اب اگر زید کے کوئی دوست ایک نمبر کی شکل میں خفیہ پیغام زید کو بھیجنا چاہتے ہیں تو وہ میسج کو کلید e اور N کے ساتھ ایک مقررہ طریقے سے انکوڈ کر کے زید کو بھیج سکتے ہیں۔ زید اس پیغام کو سمجھنے کے لیے ڈی کوڈنگ کلیدd کا استعمال کرتے ہوئے پیغام وصول کر لیتے ہیں۔
پروٹوکول کا حیرت انگیز پہلو یہ ہے کہ، اگرچہ تمام دوستوں اور سننے والوں کو انکوڈ شدہ پیغام اور انکوڈنگ چابی (e اور N) دونوں تک رسائی حاصل ہے، لیکن ان کے لیے پیغام کو سمجھنا تقریباً ناممکن ہے۔
یہ کیسے ممکن ہے کہ ہر کسی کو انکوڈنگ چابی معلوم ہے لیکن کوئی بھی دوسرے کے بھیجے پیغام کو سمجھنے سے قاصر ہے؟
یہ کیسے ممکن ہے؟
اسے دیکھنے کے لیے، ہم نوٹ کرتے ہیں کہ RSA پروٹوکول میں انکرپشن چابی e اور Nکا علم ہر کسی کو ہے۔ سیکیورٹی کو توڑنے کے لیے، ڈیکرپشن کلیدd کو جاننا ضروری ہے۔ یہ اسی وقت ممکن ہے جب کہ پرائم نمبروں p اور q کا علم ہو۔ اس کے لیے N کو فیکٹرائز کرنا ہو گا۔ مگر N کے فیکٹرز p اور q معلوم کرنا ریاضی کا ایک انتہائی مشکل مسئلہ ہے۔ N کو فیکٹرائز کرنے کی دشواری RSA پروٹوکول کی حفاظت کو یقینی بناتی ہے۔ لیکن اگر کوانٹم کمپیوٹر کے ذریعے ایسا ممکن ہو جائے تو RSA پروٹوکول کی افادیت ختم ہو جائے گی۔
اس پس منظر میں، یہ سمجھنا آسان ہے کہ، جب، 1994 میں، پیٹر شور نے نمبر N کے پرائم فیکٹرز p اور q کو زیادہ موثر طریقے سے تلاش کرنے کے لیے کوانٹم کمپیوٹنگ الگورتھم کی تجویز پیش کی، تو انہوں نے پوری بین الاقوامی برادری میں ایک بڑے خطرے کی گھنٹی بجا دی۔ ای کامرس کی بنیاد پر سنجیدگی سے حملہ کرنے کے لیے کوانٹم مکینکس کی صلاحیت نے سیکیورٹی کمیونٹی میں بڑی ہلچل مچا دی اور کوانٹم کمپیوٹنگ کے ابھرتے ہوئے شعبے میں بڑی دلچسپی پیدا کی۔ شور الگورتھم کوانٹم کمپیوٹنگ کی صلاحیتوں کی سب سے طاقتور مثال ہے۔
- میری زندگی کا مقصد کیا تھا؟ - 21/04/2025
- حقیقت کی حقیقت کیا ہے؟ - 16/04/2025
- کیا اس کائنات کا کوئی خالق ہے؟ - 08/04/2025
Facebook Comments - Accept Cookies to Enable FB Comments (See Footer).