پرانی ڈائجسٹ فہرستیں کرپٹوگرافک فیصلوں کی نقل کی طرح پڑھی جاتی ہیں، اور وہ ایسی نہیں ہیں۔ SHA1، DSA-SHA1-old یا RSA-SHA1-2 جیسے نام پرانے OpenSSL بلڈز میں ایک دوسرے کے ساتھ کھڑے ہوتے ہیں کیونکہ لائبریری نے متعلقہ ہیش مشینری کے گرد کئی داخلی مقامات رجسٹر کیے تھے۔ اس فہرست میں RSA یا DSA کا لیبل OpenVPN اس بارے میں کچھ نہیں کہتا کہ اس نے پیکٹ کے ساتھ کیا کیا۔ جو آپ پڑھ رہے ہیں وہ لائبریری کی فہرست ہے، کسی سیشن کا ریکارڈ نہیں۔

کسی بھی نتیجے کا مطلب ہونے سے پہلے تین چیزیں الگ کرنی ہوں گی: رجسٹر شدہ نام، اس کے نیچے ڈائجسٹ کا حساب اور وہ کارروائی جو اسے استعمال کرتی ہے۔

رجسٹریشن ایک انٹرفیس ہے، طاقت کی درجہ بندی نہیں

OpenSSL 1.0.2 میں ڈائجسٹ رجسٹریشن ٹیبل ناموں، عرفی ناموں اور نفاذات کو ایک ہی فائل میں جوڑتی ہے۔ پرانا DSS1 وضاحت کنندہ سب سے واضح معاملہ ہے: یہ SHA-1 کی آؤٹ پٹ لمبائی بتاتا ہے اور SHA-1 کے اختتامی روٹین کو کال کرتا ہے جبکہ ایسا نام رکھتا ہے جو بالکل مختلف الگورتھم کی طرف اشارہ کرتا ہے۔ اس لیے رجسٹریشن میں اضافی حروف کسی اور ہیش، طویل آؤٹ پٹ یا نئی سیکیورٹی سطح کے معنی نہیں رکھتے۔

یہی ماخذ پرانے کال کرنے والوں کے لیے عرفی ناموں کے تعلقات محفوظ رکھتا ہے، جس سے واضح ہوتا ہے کہ فہرست بھری ہوئی کیوں نظر آتی ہے۔ یہ مطابقت کی دستاویز ہے، یہ وعدہ نہیں کہ موجودہ OpenSSL فراہم کنندہ وہی نام دکھائے گا۔

دستخط کے نام دستخط نہیں بناتے

دستخط کا فریم ورک ڈائجسٹ کو کسی دوسرے الگورتھم کے انٹرفیس سے باندھ سکتا ہے تاکہ موجودہ کال کرنے والے کمپائل ہوتے رہیں۔ حقیقی پبلک کی دستخط کے لیے کلید اور اسے استعمال کرنے والا دستخط کا مرحلہ دونوں درکار ہیں، اور مینو میں موجود نام ان میں سے کوئی ایک بھی فراہم نہیں کرتا۔ RSA ذائقے والی ڈائجسٹ اندراج ایسا نام ہے جو کال کرنے والا استعمال کر سکتا ہے، یہ ثبوت نہیں کہ ہر VPN پیکٹ پر RSA دستخط تھا۔

اسی مرحلے پر پرانی تحریریں لوک کہانیوں میں پھسل جاتی ہیں۔ اگر آپ جاننا چاہتے ہیں کہ پیکٹوں کی تصدیق کیسے ہوئی، تو وہ اختیار تلاش کریں جس نے طریقہ منتخب کیا اور پڑھیں کہ یہ اس ورژن میں کیا کرتا ہے جو آپ واقعی چلاتے ہیں۔ اس ریلیز کے ساتھ آیا دستی صفحہ ہی واحد وضاحت ہے جو آپ کے سامنے کے پروگرام سے میل کھاتی ہے۔ محفوظ شدہ گائیڈز اس ریلیز کو بیان کرتی ہیں جس کے لیے لکھی گئیں، اور وہ کئی نام رکھنے کے طریقوں سے پیچھے ہو سکتی ہے۔

وہ اختیار تلاش کریں جس نے نام استعمال کیا

OpenVPN 2.6 کی دستاویز کردہ پیکٹ تصدیق کی صورت میں، auth وہ ڈائجسٹ منتخب کرتا ہے جو HMAC استعمال کرتا ہے، یہ سرٹیفکیٹ دستخط نہیں بلکہ کلیدی پیغام کی تصدیق کا ڈھانچہ ہے۔ TLS سرٹیفکیٹ کا دستخط الگورتھم مصافحہ کی الگ خصوصیت ہے۔

AEAD ڈیٹا سائفر کے ساتھ الگ auth ترتیب ڈیٹا چینل پر لاگو ہونا بند کر دیتی ہے، جبکہ tls-auth کے لیے اس کا کردار الگ سوال رہتا ہے۔ اس لیے ڈائجسٹ فہرست آپ کو یہ نہیں بتا سکتی کہ موجودہ پیکٹوں کو کون سا ہیش محفوظ رکھ رہا تھا، کون سا TLS سیٹ طے ہوا یا ساتھی کا سرٹیفکیٹ کیسے دستخط شدہ ہوا۔ صرف مؤثر ترتیب اور ورژن ہی اس کا جواب دے سکتے ہیں، اور صرف آپ کے سامنے کے کنکشن کے لیے۔

جو واقعی آپ کے پاس ہے وہ لکھیں

OpenVPN کا ورژن، منسلک کرپٹو لائبریری، پروفائل میں درست اختیارات اور حقیقی کنکشن کا نتیجہ لکھیں۔ یہ مجموعہ ان سوالوں کا جواب دیتا ہے جن کا ڈائجسٹ مینو کا اسکرین شاٹ نہیں دے سکتا، اور اگلی اپ گریڈ کے بعد بھی قائم رہتا ہے کیونکہ یہ تاثرات کے بجائے ورژن بتاتا ہے۔

سب سے بڑھ کر، پرانا عرفی نام اس لیے نہ چنیں کہ اس کا نام زیادہ مضبوط یا زیادہ مخصوص لگتا ہے۔ پورے کنکشن کے لیے معاون پالیسی چنیں، اور پرانے ناموں کو اس بات کا ریکارڈ سمجھیں کہ لائبریری پہلے خود کو کیسے پیش کرتی تھی۔

متعلقہ مضامین