
میں آج کسی کو یہ تجویز نہیں کرتا کہ وہ گھبراہٹ میں اپنے فنڈز نئے والیٹس میں منتقل کرے۔ لیکن ہمیں AI-تیز رفتار ریاضی سے cryptography کو درپیش خطرات کو سنجیدگی سے لینا چاہیے، اور نہ صرف quantum-کمزور cryptography بلکہ ممکنہ طور پر AI-کمزور cryptography کے سامنے اپنی نمائش کو کم سے کم کرنا چاہیے۔ اس نقطہ نظر سے خطرے کا بنیادی نیا میدان، بدقسمتی سے، ML-DSA / FHE / lattices ہے۔ (اور یہ ایک اور وجہ بھی ہے، quantum کے ساتھ، کہ ECDSA توقع سے بھی زیادہ تیزی سے گر سکتا ہے، اسی لیے "fresh address" کی سفارش کی جاتی ہے) اب تک زیادہ تر لوگ اس موڈ میں رہے ہیں کہ "elliptic curves ٹوٹ سکتے ہیں، hashes محفوظ ہیں، lattices محفوظ ہیں"۔ لیکن اس بات کا کافی امکان ہے کہ lattices کی concrete security کو آنے والے دو سال کی AI ریاضی سے سنجیدہ نقصان پہنچے گا۔ بنیادی threat model یہ ہے: factoring ایک ایسا کام ہے جو سادہ طور پر 2^(n/2) وقت لیتا ہے، لیکن دہائیوں کے دوران ذہین لوگوں نے number field sieves ایجاد اور بہتر کیے، اور اسے 2^O(n^(1/3)) تک گرا دیا، یہی وجہ ہے کہ RSA keys اور signatures کو تقریباً ~400 bytes ہونا پڑتا ہے (اور 64 bytes نہیں)۔ اگر elliptic curves اور lattices دونوں کے لیے ایسے ہی چھپے ہوئے "skeletons in the closet" ہوں جنہیں دریافت کرنے کے لیے ہم ابھی تک کافی ہوشیار نہیں ہیں، لیکن bots جلد ہی ہو جائیں گے، تو کیا ہوگا؟ یہ بڑی حد تک وہی وجہ ہے کہ گزشتہ سال سے ethereum کا lean roadmap "صرف hash" کی سمت میں جا رہا ہے: نہ lattices، نہ ML-DSA، نہ Falcon، نہ ZK proofs کے اندر lattice-based commitments وغیرہ۔ lean ethereum میں signatures سب hash-based ہیں، یا تو WOTS یا SPHINCS-۔ signatures اور proofs کے لیے، ہم پہلے ہی جانتے ہیں کہ صرف hashes سے کیسے کام چلایا جائے۔ بڑا چیلنج *public-key encryption* کے لیے ہے — اور یہ blockchains سے کہیں آگے جاتا ہے۔ محفوظ مواصلات، anonymizing protocols، بہت سی چیزوں کو public-key encryption کی ضرورت ہوتی ہے۔ اور بدقسمتی سے، طویل عرصے سے موجود ریاضیاتی تھیورمز دکھاتے ہیں کہ public-key encryption صرف hashes کے ساتھ نہیں کیا جا سکتا۔ آپ کے پاس کسی نہ کسی قسم کی trapdoor چیز ہونی چاہیے جس میں کم از کم کسی ایک شکل میں قابلِ استعمال "ساخت" (structure) ہو — یا تو group theory (جس میں isogenies شامل ہیں) یا lattices یا code-based، یا ممکنہ طور پر مستقبل میں مزید نئی اور عجیب و غریب چیزیں (local mixing?)۔ لیکن جس بھی چیز میں ساخت ہو، آپ کو فرض کرنا چاہیے کہ AI اس ساخت کو توڑنے میں کم از کم کچھ پیش رفت ضرور کرے گا۔ یہاں ایک معقول نتیجہ یہ ہے کہ اگر آپ کسی چیز کو بظاہر طویل مدت کے لیے محفوظ رکھنا چاہتے ہیں، تو key sizes کو 10 گنا بڑھا دیں۔ میرے لیے یہ ایک بہت قابلِ یقین دنیا ہے اور بالکل بھی کوئی انتہا پسندانہ پیش گوئی نہیں۔ اگر AI ہمیں 2 سال میں 50 سال کی ریاضی دے دے گا، تو یہ بہت قابلِ یقین ہے کہ وہ 50 سال کی ریاضی lattices کو توڑنے کی ہماری صلاحیت میں "naive factoring -> GNFS" سطح کی بہتری بھی شامل کرے۔ ایسی دنیا میں lattices موجود تو رہیں گے، لیکن انہیں وہی سطح کی سکیورٹی کی ضمانت دینے کے لیے بہت زیادہ بڑا ہونا پڑے گا۔ اور ان نئی بڑی sizes پر، hash-based constructions ہر اُس استعمال میں concrete efficiency کے لحاظ سے lattice-based constructions کو پیچھے چھوڑ دیں گے، جہاں hash-based constructions کسی حد تک ممکن ہوں۔ نظریاتی طور پر، یقیناً یہ بھی ممکن ہے کہ hashes بھی ٹوٹ جائیں (مثال کے طور پر، P = NP اس کا مطلب ہو گا)۔ لیکن میرے خیال میں P = NP بہت ہی غیر محتمل ہے۔ اور بدیہی طور پر، یہ کہیں زیادہ محتمل ہے کہ ایک ریاضیاتی آبجیکٹ میں بالکل کوئی exploitable structure نہ ہو (جیسا کہ hashes کے لیے ارادہ کیا گیا ہے)، بنسبت اس کے کہ ایک ریاضیاتی آبجیکٹ میں بالکل ~3 قسم کی exploitable structure ہو (elliptic curves کے لیے: associativity، Schoof، pairings) اور کوئی چوتھی خفیہ ساخت نہ ہو جسے ہم نے ابھی تک دریافت نہ کیا ہو اور جو اس کی سکیورٹی کو بہت زیادہ کمزور کر دے (elliptic curves کے لیے، ECDLP اور pairing security)۔ LWE، SVP، RLWE اور lattice problems کے zoo کے لیے بھی معاملہ ایسا ہی ہے۔ اسی وجہ سے، ہم ابھی تک hashes کے byte size میں padding کے بارے میں فکر کرنے یا شروع کرنے کی کوئی وجہ نہیں دیکھتے (اگر ہم زیادہ فکر مند ہوئے، تو byte size میں کچھ بھی کرنے سے پہلے round count میں padding کریں گے)۔ Concrete TLDR، میرے ذاتی خیالات: * جہاں کہیں بھی hash-based ممکن ہو، hash-based > lattice-based * جس بھی چیز میں lattices استعمال ہوں، وہاں param sizes کے بارے میں کہیں زیادہ paranoid رہیں۔ یاد رکھیں کہ blockchains cryptography کی کہانی کا صرف ایک چھوٹا حصہ ہیں؛ یہ نکتہ blockchains سے کہیں آگے جاتا ہے اور مثال کے طور پر websites تک رسائی، secure messaging، Tor / VPNs وغیرہ پر بھی لاگو ہوتا ہے... * privacy protocols کے لیے، مضبوطی سے ترجیح دیں کہ encrypted notes کو onchain نہ رکھا جائے۔ اس کے بجائے، انہیں offchain کسی تیسرے فریق کے میکانزم کے ذریعے بھیجیں۔ * اگر آپ کے لیے مشکل نہیں، تو اپنے فنڈز کو ایسی addresses میں رکھنا جو ابھی تک کسی transaction کے لیے استعمال نہیں ہوئیں، ایک اچھا خیال ہے۔ اگر یہ آپ کے لیے آسان ہے تو یہ کریں۔ **لیکن migrations کے بارے میں محتاط رہیں؛ میں نے ذاتی طور پر خراب migrations میں اتنا زیادہ پیسہ کھویا ہے جتنا میں نے تمام hacks میں ملا کر بھی نہیں کھویا**۔ * multisig والٹس کے لیے، offchain confirmations کرنا onchain سے بہتر ہے، کیونکہ اس طرح signer wallets کی signatures عوام کے سامنے ظاہر نہیں ہوتیں، تو اگر ECDSA توقع سے کہیں تیزی سے AI کے ہاتھوں گر جائے، تو کم از کم multisig "خوبصورتی سے degrade" ہو کر 1-of-1 میں بدل جائے گا، جہاں وہ 1 وہ شخص ہوگا جو signatures جمع کر رہا تھا — یہ "کوئی بھی پیسہ لے سکتا ہے" کی نسبت کہیں بہتر پوزیشن ہے۔ https://t.co/oVjwZog2lL
