क्वांटम का सवाल: आखिर क्वांटम कंप्यूटिंग है क्या बला?

बिटकॉइन मैगज़ीन
क्वांटम का मुद्दा: WTF, क्वांटम कंप्यूटिंग क्या है?
क्वांटम कंप्यूटिंग क्या है? क्वांटम कंप्यूटर, सामान्य कंप्यूटर से किस तरह अलग होता है? इसका बिटकॉइन से क्या संबंध है?
बिटकॉइन के नए उपयोगकर्ताओं के सामने अनिवार्य रूप से ये सवाल आ रहे हैं और उन्हें उन मुद्दों का सामना करना पड़ रहा है जिन्हें ये सवाल उजागर करते हैं—यानी इस बात का कि अगर कोई व्यावहारिक क्वांटम कंप्यूटर विकसित हो गया, तो बिटकॉइन के अस्तित्व पर बहुत बड़ा, यहाँ तक कि अस्तित्वगत ख़तरा मंडरा सकता है।
बिटकॉइन का स्वामित्व इस बुनियादी मान्यता पर टिका है कि उसकी कॉपी सीधे लीक किए बिना, निजी कुंजी रखने वाले व्यक्ति के अलावा कोई भी उस कुंजी से सुरक्षित कॉइनों के लेन-देन के लिए हस्ताक्षर नहीं कर सकता। क्वांटम कंप्यूटिंग इस मान्यता पर सवाल खड़ा करती है।
क्वांटम कंप्यूटर सिर्फ़ “कंप्यूटर, लेकिन तेज़” नहीं होते। वे शास्त्रीय कंप्यूटरों से बिल्कुल बुनियादी तौर पर अलग तरीके से काम करते हैं और इस वजह से शास्त्रीय कंप्यूटरों की तुलना में कहीं अधिक कुशल होते हैं बहुत विशिष्ट प्रकार की गणनाओं में. अब ज़ाहिर है, मैं चार पन्नों में यह विस्तार से नहीं समझाने वाला कि क्वांटम कंप्यूटर कैसे काम करते हैं, लेकिन मैं आपको इस बात की मूल समझ ज़रूर दूँगा कि वे शास्त्रीय कंप्यूटर से बुनियादी तौर पर कैसे अलग हैं।
तो आइए देखें कि दोनों तरह के कंप्यूटर बड़ी क्रिप्टोग्राफ़िक कुंजियों जैसी चीज़ों के साथ कैसे काम करते हैं।
शास्त्रीय कंप्यूटर
शास्त्रीय कंप्यूटर (या आगे से सिर्फ़ कंप्यूटर) में संग्रहित हर चीज़ को 1 और 0 की एक श्रृंखला के रूप में रखा जाता है। हर बिट (1 या 0) बिल्कुल 1 या 0 ही होता है; इसमें कोई अस्पष्टता नहीं होती। डेटा का कोई अंश संग्रहीत किया जाता है, तो वह 1 और 0 के रूप में होता है। डेटा के किसी अंश में बदलाव या हेरफेर किया जाता है, तो यह बिट-दर-बिट, चरण-दर-चरण, हर 1 या 0 पर किया जाता है।
कंप्यूटर इसी तरह काम करता है। वह संग्रहीत डेटा के अलग-अलग और स्पष्ट अंशों में क्रमशः, एक के बाद एक, बदलाव करता है। वह आगे के चरणों पर नहीं जा सकता या कोई शॉर्टकट नहीं अपना सकता (यहाँ मतलब उठाए जा रहे चरणों से है, गणितीय रूप से काम करने के अधिक कुशल तरीकों से नहीं); उसे अपनी गणना के हर चरण से एक-एक करके गुजरना होता है।
जब आप कंप्यूटर का उपयोग करके निजी कुंजी बनाते हैं, तो वह एक यादृच्छिक मान प्राप्त करता है (जैसे आपके द्वारा पासा फेंकना, सामान्य उपयोगकर्ता इनपुट, डिवाइस के हार्डवेयर से मिलने वाली यादृच्छिकता आदि) और उसे मेमोरी में 1 और 0 के रूप में संग्रहीत करता है। इसके बाद, सार्वजनिक कुंजी पाने के लिए उसे इस मान का गुणन एलिप्टिक कर्व के जनरेटर बिंदु से करना होता है। यह एक एल्गोरिदम से किया जाता है। अपने सबसे बुनियादी स्तर पर, यह सचमुच ऐसे निर्देश होते हैं कि कौन-से बिट लेने हैं, उनमें बदलाव कैसे करना है, और यह करने के लिए भौतिक स्तर पर उन्हें किन सर्किटों से “गुजारना” है; अंत में, बिट-दर-बिट बदले गए नए मान को वापस मेमोरी में रखा जाता है।
वास्तव में एक मान्य पता पाने के लिए कुछ और चरण भी होते हैं, लेकिन इस लेख के उद्देश्य से उन पर चर्चा करना ज़रूरी नहीं है (वे भी ऊपर बताए गए चरण जैसे ही हैं—मेमोरी में मौजूद 1 और 0 में बदलाव करने के चरण-दर-चरण निर्देश)।
तो क्या होगा अगर कोई व्यक्ति किसी और की निजी कुंजी का अनुमान लगाने के लिए कंप्यूटर का इस्तेमाल करना चाहे?
2⁵⁶ संभावित निजी कुंजियाँ हैं। यानी 115,792,089,237,316,195,423,570,985,008,687,907,853,269,984,665,640,564,039,457,584,007,913,129,639,936 अलग-अलग संभावित कुंजियाँ।
एक कंप्यूटर को आज़मानी होंगी उनमें से हर एक संभावित निजी कुंजी, एक के बाद एक (या जितनी वह एक साथ समानांतर रूप से आज़मा सके), कुंजियाँ बनाने के लिए ऊपर दिए गए सटीक निर्देशों का चरण-दर-चरण पालन करते हुए। जितनी अधिक कुंजियों को आप एक साथ जाँचने की कोशिश करेंगे, उतनी ही अधिक कंप्यूटिंग शक्ति की ज़रूरत होगी—और इस लागत से बचने का कोई आसान रास्ता नहीं है।
आप जितनी कम कंप्यूटिंग शक्ति इस्तेमाल करना चाहेंगे, इसमें उतना ही अधिक समय लगेगा; और जितना कम समय लेना चाहेंगे, उतनी ही अधिक कंप्यूटिंग शक्ति की ज़रूरत होगी।
कंप्यूटर से यह काम पूरा करना असंभव है। एक तरफ़ ऐसी गणना की लागत है जिसे चुकाने के लिए पृथ्वी के सभी कंप्यूटर भी पर्याप्त नहीं हैं, और दूसरी तरफ़ समय की ऐसी लागत है कि सभी कुंजियों की जाँच पूरी होने से पहले ब्रह्मांड का हर तारा मर जाएगा।
अपने लक्ष्य को वास्तव में हासिल करने के लिए, आपको एक-एक करके क्रम से या समानांतर में जाँच करने के अलावा कोई दूसरा विकल्प चाहिए। यहीं पर क्वांटम कंप्यूटिंग काम आती है।
क्वांटम कंप्यूटर
क्वांटम कंप्यूटर असतत अवस्थाओं के साथ काम नहीं करते। हर चीज़ बिल्कुल 1 या 0 होती है। क्वांटम कंप्यूटर में जानकारी की सबसे बुनियादी इकाई क्यूबिट होती है (जो बिट का क्वांटम रूप है)। बिट के विपरीत, क्यूबिट एक सुपरपोज़िशन में जहाँ वह एक साथ 1 और 0 भी होता है। यह केवल तभी दो असतत अवस्थाओं में से किसी एक में स्थिर होता है, जब इसे देखा जाता है.
यह उन प्रमुख घटकों में से एक है जो क्वांटम कंप्यूटर को अलग ढंग से गणना करने में सक्षम बनाते हैं। दूसरा है क्वांटम उलझाव। क्यूबिट को अलग-अलग ही संग्रहीत नहीं किया जाता; उनका प्रतिनिधित्व करने वाले भौतिक परमाणु, जो देखे जाने पर एक असतत अवस्था में सिमट जाते हैं, आपस में उलझे होते हैं। इसका मतलब है कि जब उलझे हुए परमाणुओं को देखा जाता है और वे एक ही अवस्था में सिमट जाते हैं, तो उलझे हुए परमाणु उसी अवस्था में सिमट जाते हैं, चाहे वे एक-दूसरे से कितनी भी दूर हों।
अब यहाँ चीज़ें अजीब होने लगती हैं, और मुझे थोड़ी अस्पष्ट भाषा का सहारा लेना पड़ेगा; फिर भी आपको सहज रूप से समझ आ जाना चाहिए कि क्वांटम कंप्यूटर मूल रूप से शास्त्रीय कंप्यूटर से किस तरह अलग होते हैं। शास्त्रीय कंप्यूटर पर एल्गोरिदम निर्देशों का एक ऐसा समूह होता है, जो बिट्स के एक निश्चित समूह को लेता है और एल्गोरिदम के निर्देशों के अनुसार चरण-दर-चरण उनमें बदलाव करता है, जब तक कि प्रक्रिया पूरी होकर नए बिट्स का अंतिम समूह न दे दे। यानी एल्गोरिदम चरण-दर-चरण एक असतत अवस्था को दूसरी अवस्था में बदलता है।
क्यूबिट तब तक असतत अवस्थाएँ संग्रहीत नहीं करते, जब तक उनका अवलोकन न किया जाए और वे किसी एक अवस्था में सिमट न जाएँ। वे संभावनाएँ संग्रहीत करते हैं। जब आपके पास किसी भी आकार के उलझे हुए क्यूबिटों का एक समूह हो (जैसे इस काल्पनिक मामले में 2256), तो हर संभावित अवस्था, जिसमें वे सिमट सकते हैं, के लिए एक निश्चित संभावना होती है कि वे उसी अवस्था में सिमटेंगे।
क्वांटम एल्गोरिदम, असतत अवस्थाओं पर काम करने के चरण-दर-चरण निर्देश होने के बजाय, ऐसे निर्देशों का समूह होते हैं जो काम करते हैं उन उलझे हुए क्यूबिटों पर और विभिन्न परिणामों की संभावनाओं को बदलते हैं। रचनात्मक व्यतिकरण का उपयोग सही परिणाम की संभावना बढ़ाने के लिए किया जाता है, और विनाशी व्यतिकरण गलत परिणामों की संभावना घटाने के लिए (ध्यान दें कि यह वह शोर या व्यतिकरण नहीं है जो भौतिक क्वांटम कंप्यूटरों के लिए सटीक रूप से काम करना कठिन बनाता है; वह एक अलग अवधारणा है)।
इसलिए, जहाँ किसी शास्त्रीय कंप्यूटर को किसी विशिष्ट सार्वजनिक कुंजी से मेल खाने वाली निजी कुंजी खोजने के लिए हर निजी कुंजी को एक-एक करके जाँचना होगा, वहीं क्वांटम कंप्यूटर सही एल्गोरिदम का उपयोग करके बस कुछ बार प्रक्रिया चलाकर सही उत्तर तक पहुँच सकता है। यह नहीं करता कि “सभी संभावनाओं को एक साथ जाँच ले।” यह बस उन संभावनाओं की प्रायिकताओं को बदलता है जिनमें एक सुपरपोज़िशन ढह सकता है।
इसीलिए क्वांटम कंप्यूटर दीर्घवृत्तीय वक्र क्रिप्टोग्राफी की आधारभूत मान्यताओं को तोड़ सकता है, जबकि शास्त्रीय कंप्यूटर ऐसा नहीं कर सकता (और यही कारण है कि क्वांटम कंप्यूटर केवल कुछ प्रकार की गणनाओं के लिए उपयोगी होते हैं, जिनमें जाँचे जाने वाले संभावित उत्तरों का एक विशाल संभावित क्षेत्र हो)।
घबराएँ नहीं
शास्त्रीय और क्वांटम संगणना के बीच इस मूलभूत अंतर का अर्थ है कि हाँ, यदि वास्तव में ऐसा व्यवहार्य क्वांटम कंप्यूटर बनाया जाता है जो सही ढंग से काम करता हो, तो सभी बिटकॉइन धारकों के व्यक्तिगत बिटकॉइन को सुरक्षित रखने वाली मूलभूत धारणा टूट जाती है। वे सभी निधियाँ असुरक्षित हो जाती हैं।
हाँ, यदि ऐसा उपकरण वास्तव में बनाया जाता है और काम करता है, तो यह एक गंभीर जोखिम है। लेकिन हम पूरी तरह से बेख़बर नहीं हैं। हम समस्या को समझते हैं, इससे होने वाले जोखिम को समझते हैं, और समस्या के कई अलग-अलग पहलुओं के लिए कई संभावित समाधान सामने आ रहे हैं।
साँस लें और शांत रहें। इस अंक के बाकी हिस्से में हम आपको पूरी समस्या से रूबरू कराएँगे।
यह लेख Bitcoin Magazine के नवीनतम प्रिंट संस्करण, The Quantum Issue में प्रकाशित है। पूरे अंक में शामिल विचारों की एक झलक के तौर पर हम इसे यहाँ साझा कर रहे हैं।
यह पोस्ट, The Quantum Issue: क्वांटम कंप्यूटिंग आखिर है क्या?, पहली बार Bitcoin Magazine पर प्रकाशित हुई थी और इसे Shinobi ने लिखा है।
स्रोत: BitcoinMagazine