Anthropic کا کہنا ہے کہ Claude کے ایک تحقیقی ورژن نے اس کی کرپٹوگرافی ٹیم کو کئی شائع شدہ بیضوی منحنیات کی سیڈ کی اصل ازسرنو معلوم کرنے میں مدد دی۔ 16 اکتوبر کی رپورٹ NIST کی پرائم فیلڈ منحنیات کی پانچ سیڈ اور NIST کی بائنری منحنیات کی چار سیڈ کو lrand48 کے آؤٹ پٹ سے جوڑتی ہے۔ یہ ایک پرانا C شبه اتفاقی عددی جنریٹر ہے، جسے گھڑی سے اخذ شدہ قدروں سے ابتدائی حالت دی گئی تھی۔ رپورٹ ایسا کوڈ بھی فراہم کرتی ہے جو بتائی گئی سیڈ پرنٹ کرتا اور منتخب بنیادی نقاط کے محددات دوبارہ پیدا کرتا ہے۔

یہ نتیجہ معیاری بنائے گئے پیرامیٹرز کی تاریخ سے متعلق ایک سوال کو مخاطب کرتا ہے۔ Anthropic کسی نئے حملے یا کرپٹوگرافی توڑنے کی اطلاع نہیں دیتا۔ اس کی بازتعمیر میں بھی کچھ فیصلے غیر واضح ہیں، مثلاً بعض موزوں امیدوار منحنیات کیوں چھوڑ دی گئی تھیں۔

بڑی تبدیلی

  • کیا بدلا: Anthropic نے NIST P-192، P-224، P-256، P-384 اور P-521، چار NIST بائنری منحنیات اور ANSI X9.62 کی مثالوں میں دی گئی پانچ منحنیات کی سیڈ کے لیے مخصوص طریقۂ تخلیق اور کوڈ شائع کیا۔ بنیادی نقاط کے لیے اس کا الگ طریقہ P-192 اور پانچ ANSI مثالوں سے مطابقت رکھتا ہے۔
  • کیسے: ٹیم کے مطابق Claude نے شائع شدہ سیڈ کے بِٹس میں نمونے پہچانے، جنریٹر کی حالت بازیافت کی اور اسے پیچھے لے جا کر گھڑی کی قدروں جیسی ابتدائی قدروں تک پہنچا۔ چھ بنیادی نقاط کے لیے اس نے پرانے طویل صحیح اعداد کے سافٹ ویئر میں استعمال ہونے والا جنریٹر شناخت کیا۔
  • حد: کوڈ سے مجوزہ مطابقتوں کا معائنہ ممکن ہے، لیکن ایک جیسی قدریں دینے والا طریقہ ہر تاریخی انتخابی فیصلے کی دستاویز نہیں بنتا، نہ ہی منحنیات کی سلامتی ثابت کرتا ہے۔ BIG CHANGE نے عوامی پوسٹ اور تاریخی معیار کا جائزہ لیا؛ آزادانہ طور پر نتائج دوبارہ پیدا کر کے نہیں دیکھے۔

منحنی کی سیڈ کیا سمجھاتی ہے

NIST کا محفوظ شدہ FIPS 186-2، جس کی تاریخ 27 جنوری 2000 ہے، اپنی پانچ پرائم فیلڈ منحنیات میں سے ہر ایک کے لیے 160 بِٹ کی سیڈ درج کرتا ہے۔ SHA-1 پر مبنی مقررہ عمل سیڈ کو منحنی کے ضریب میں بدلتا ہے۔ معیار فیلڈ، منحنی کا آرڈر اور بنیادی نقطے کے محددات بھی الگ درج کرتا ہے۔ اس کے مطابق دی گئی سیڈ سے قاری جانچ سکتا ہے کہ ضریب مقررہ عمل کے مطابق بنتا ہے یا نہیں؛ اس میں یہ نہیں بتایا گیا کہ سیڈ خود کیسے چنی گئی۔ سیڈ بنیادی نقطے کا تعین بھی نہیں کرتی، جو عوامی کلیدیں بنانے کے لیے استعمال ہونے والا مستقل نقطہ ہے۔

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

Anthropic نے سیڈ کا سراغ کیسے لگایا

Anthropic کے مطابق Claude نے پہلے شائع شدہ قدروں میں پرانے C شبه اتفاقی عددی جنریٹرز کی علامات تلاش کیں۔ بعض بائنری منحنیات کی سیڈ میں ہر 32 بِٹ ورڈ کا سب سے اوپر والا بِٹ صفر تھا۔ Anthropic کہتا ہے کہ اس نمونے نے lrand48 کی طرف اشارہ کیا، جو 48 بِٹ کی داخلی حالت سے 31 بِٹ واپس دیتا ہے۔ پھر ماڈل نے ممکنہ حالتیں بازیافت کیں اور جانچا کہ مسلسل آؤٹ پٹ سیڈ سے ملتے ہیں یا نہیں۔ پرائم فیلڈ منحنیات میں ہر آؤٹ پٹ کے کم بِٹس محفوظ رکھے گئے تھے، اس لیے Anthropic کے مطابق Claude نے چھپی حالت بازیافت کرنے کے لیے لیٹس طریقہ استعمال کیا۔

Anthropic کی پوسٹ میں موجود کوڈ ایک srand48 طرز کی حالت سے شروع ہو کر lrand48 کے تکراری سلسلے کو آگے بڑھاتا ہے اور 20 بائٹ کی امیدوار سیڈ پرنٹ کرتا ہے۔ اس کی جدول P-192، P-224، P-256، P-384 اور P-521 کے ساتھ ANSI مثالوں prime192v2، prime192v3 اور prime239v1 سے prime239v3 تک کے لیے وقت کی مہریں اور امیدوار نمبر متعین کرتی ہے۔ P-256 کے لیے مقررہ رن شائع شدہ سیڈ تک امیدوار 1,842 پر پہنچتا ہے۔ Anthropic کی مثال میں پرنٹ ہونے والی P-256 قدر FIPS 186-2 کی سیڈ سے ملتی ہے۔

Anthropic B-233، B-283، B-409 اور B-571 کے لیے متعلقہ مطابقت کی اطلاع دیتا ہے۔ اس کا کوڈ جنریٹر کو ابتدائی حالت دینے سے پہلے گھڑی کی قدر کو دو پر تقسیم کر کے استعمال کرتا ہے۔ Anthropic گھڑی کی قدر آدھی لینے کی اس تعبیر کو ایک امکان کہتا ہے: بازیافت شدہ حالت کو پیچھے لے جانے سے فروری 1984 کی تاریخیں ملیں، جبکہ قدروں کو دوگنا کرنا 17 اپریل 1998 سے مطابقت رکھتا ہے۔ شائع شدہ مطابقت جنریٹر کے طریقے کی تائید کرتی ہے؛ اس سے ثابت نہیں ہوتا کہ اصل مصنفین نے گھڑی کی قدروں کو سنبھالنے کا کون سا طریقہ چنا تھا۔

Anthropic اس کام کو ایک ملازم کے سوال، داخلی تحقیقی ماڈل کی تلاش اور کوڈ، اور اپنی ٹیم کی جانچوں کے اشتراک کے طور پر بیان کرتا ہے۔ رپورٹ ایسا کوڈ اور آؤٹ پٹ کی مثالیں دیتی ہے جنہیں دوسرے جانچ سکتے ہیں۔ اس مضمون میں حوالہ دینے کے لیے ہمیں کوئی آزاد بازتولید نہیں ملی، اور BIG CHANGE نے کوڈ نہیں چلایا۔ اس لیے ماخذ اسے Anthropic کی بتائی ہوئی بازتعمیر کہنے کی بنیاد فراہم کرتا ہے؛ تاریخی NIST قدریں مطلوبہ پیرامیٹرز کے بیرونی ریکارڈ کا کام کرتی ہیں۔

چھ بنیادی نقاط اور باقی خلا

Anthropic کے مطابق Arjen Lenstra کے طویل صحیح اعداد کے FreeLIP پیکیج اور Victor Shoup کے NTL کے ابتدائی ورژنز کا ایک الگ پرانا جنریٹر P-192 اور پانچ ANSI مثالوں کے بنیادی نقاط کے x محددات سے مطابقت رکھتا ہے۔ اس کی دوسری کوڈ فہرست چھوٹے صحیح اعداد سے اس جنریٹر کی سیڈ مقرر کرتی ہے، سات آؤٹ پٹ خارج کرتی ہے، پھر اس وقت تک امیدوار x محددات لیتی ہے جب تک کوئی منحنی پر نہ آجائے۔ چھ مثالیں P-192، prime192v2، prime192v3 اور prime239v1 سے prime239v3 تک ہیں۔ Anthropic ہر شائع شدہ x محدد کے لیے مطابقت پرنٹ کرتا ہے۔ NIST کی تاریخی P-192 فہرست اس موازنے میں استعمال ہونے والی قدر دیتی ہے۔

Anthropic کے اپنے بیان میں کئی حدود باقی ہیں۔ وہ B-163 کی سیڈ بازیافت نہیں کر سکا۔ اس نے P-224، P-256، P-384 یا P-521 کے بنیادی نقاط، یا NIST کی بائنری منحنیات کے بنیادی نقاط نہیں سمجھائے۔ رنز نے ایسے امیدوار بھی چھوڑے جو Anthropic کے مطابق بتائی گئی جسامت اور پرائم آرڈر کی شرائط پوری کرتے۔ P-256 کا امیدوار 876 ایک مثال ہے، جو شائع شدہ امیدوار 1,842 سے پہلے آتا ہے؛ Anthropic P-224 رن میں تین موزوں امیدوار اور ANSI کی دو مثالوں کے رنز میں مجموعی طور پر سات امیدوار چھوڑے جانے کی اطلاع دیتا ہے۔ ٹیم نہ انتخاب کا معیار جانتی ہے، نہ یہ کہ ان کا چھوڑا جانا کوئی آرٹی فیکٹ تھا یا نہیں۔

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

ماخذ اور مزید مطالعہ