تصور کنید معمایی رمزنگاری وجود داشته باشد که بیش از دو دهه هیچکس نتوانسته آن را حل کند. در ۱۶ اکتبر ۲۰۲۶، تیم قرمز (Red Team) شرکت آنتروپیک (Anthropic) گزارش داد که یکی از مدلهای داخلی کلود (Claude) موفق شده است منشأ بذرهای منحنیهای ECDSA را در یک مولد اعداد تصادفی (RNG) متعلق به دهه ۱۹۹۰ ردیابی کند.
این کشف، تردیدهای دیرینه درباره منشأ استانداردهای الگوریتم امضای دیجیتال منحنی بیضوی (ECDSA) را برطرف میکند. از سال ۲۰۰۰، مؤسسه ملی استاندارد و فناوری آمریکا (NIST) از این منحنیها در استاندارد FIPS 186-2 استفاده کرده است، اما بذرهای ارائه شده توسط آژانس امنیت ملی آمریکا (NSA) بدون هیچ توضیحی درباره نحوه تولیدشان منتشر شده بودند.
زمینه و ابهامات بذرهای NSA
الگوریتم ECDSA پرکاربردترین استاندارد رمزنگاری منحنی بیضوی است. برای منحنیهایی که بر روی میدانهای اول (Prime) و باینری (Binary) تعریف شدهاند، مشخصات FIPS 186-2 یک پارامتر به نام بذر (Seed) منتشر کرده است که مقدار هش آن، ضریب b منحنی را تعیین میکند. NSA این بذرها را بدون ارائه هیچگونه توجیه یا مستندی درباره نحوه استخراجشان منتشر کرد.
برای درک این ابهام و عدم شفافیت، بذر P-256 را در نظر بگیرید: C49D3608 86E70493 6A6678E1 139D26B7 819F7E90. این مقدار بدون هیچ اطلاعاتی درباره نحوه مشتق شدن یا منشأ آن منتشر شده بود.
همانطور که در تحلیل قبلی ما درباره استراتژیهای ایمنی و قابلیتهای داخلی آنتروپیک اشاره کردیم، این اتفاق توانایی مدل در انجام تحلیلهای جنایی فنی (Technical Forensics) بهصورت خودگردان و عمیق را نشان میدهد. سالها در جامعه رمزنگاری گمان میرفت که این بذرها از عبارات رمز عبور طنزآمیز (Humorous Passphrases) مشتق شدهاند؛ موضوعی که در مقاله «معمایی پیچیده در یک معمای بزرگتر» (A Riddle Wrapped in an Enigma) توسط نیل کوبلیتز و آلفرد منزس خلاصه شد و بعدها منجر به یک تحقیق آماتوری و تعیین جایزه برای حل آن گشت.
این توانایی کلود در گشودن گرههای رمزنگاری پیچیده، یادآور دستاوردهای اخیر مدلهای زبانی در تحلیل متون رمزگذاری شده است، مشابه زمانی که مدلهای OpenAI و Anthropic توانستند پیامهای رمزنگاریشدهٔ انیگما را بگشایند.
این نظریه توسط جری سولیناس، کارمند سابق NSA، حمایت شده بود. او در بیانیهای در سال ۲۰۱۵ به یاد آورد که پیام مورد استفاده چیزی شبیه به «به باب و جری افزایش حقوق بدهید» (Give Bob and Jerry a raise) یا «باب و جری حاکمند» (Bob and Jerry rule) بوده است. او اشاره کرد که باب رایتر (Bob Reiter) کد مربوطه را نوشته بود، اما هیچ آرشیوی از آن دوره یافت نشد. با مرگ سولیناس در سال ۲۰۲۳ و عدم پاسخگویی سایر همکارانش، این پرسش برای سالها باز ماند.
سازوکار کشف توسط هوش مصنوعی
بر اساس گزارش unite.ai، چندین کارمند آنتروپیک پیشتر سعی کرده بودند با تکیه بر سرنخ عبارات طنزآمیز به نتیجه برسند، اما این مسیر اشتباه بود و آنها شکست خوردند. در اکتبر ۲۰۲۶، یکی از کارکنان از یک مدل پژوهشی داخلی خواست تا بدون استفاده از سرنخهای شایعهشده، روش تولید بذرها را بیابد. کلود در کمتر از نیم ساعت، منشأ بذرهای P-192، P-224، P-256، P-384 و P-521 را شناسایی کرد.
مدل کلود فرضیه عبارات رمز عبور را نادیده گرفت و در عوض این فرضیه را مطرح کرد که بذرها توسط یک مولد اعداد شبهتصادفی (PRNG) که در کتابخانههای C دهه ۹۰ رایج بود، تولید شدهاند. مدل با بررسی بیتبهبیت بذرهای منتشر شده و تست ۳۴ ترکیب مختلف از مولدها و برشهای خروجی (Output Slices)، به یک الگوی خاص رسید: در چهار بذر از ده بذر، وقتی به صورت پنج کلمه ۳۲ بیتی نوشته میشدند، بیت اول (Top Bit) در تمام ۲۰ کلمه صفر بود. احتمال رخ دادن تصادفی این اتفاق تنها ۱ از ۵۸۱۰ است.
این الگو مستقیماً به lrand48 اشاره داشت؛ یک مولد خطی همنهاد (Linear Congruential Generator) که تنها ۳۱ بیت از یک وضعیت ۴۸ بیتی را برمیگرداند. برای تأیید این موضوع، مدل مراحل زیر را طی کرد:
- بازیابی وضعیت مولد از طریق تست تمام ۲ به توان ۱۷ مقدار ممکن برای بیتهای پنهان کلمه اول و تأیید اینکه چهار کلمه بعدی مطابق با آن هستند.
- حل یک مسئله شبکه (Lattice Problem) کلاسیک با استفاده از کاهش پایه LLL (Lenstra–Lenstra–Lovász) برای بذرهای کوتاه شده، و اعمال این حلکننده روی هر پنجره (Window) ممکن.
- تطبیق تمام ۵ بذر منحنیهای اول NIST و ۵ بذر ANSI X9.62 با الگوی
lrand48() >> 23. - تأیید اینکه هر وضعیت ۴۸ بیتی بازیابی شده، تمام ۱۶۰ بیت بذر مربوطه را بازتولید میکند.
در طول این فرآیند، زنجیره تفکر (Chain-of-Thought) داخلی کلود نشان داد که مدل در حال بررسی این است که آیا در یک محیط تست شبیهسازی شده قرار دارد یا خیر. مدل در نهایت نتیجه گرفت: «با محاسبات مستقیم در سمت من تأیید شد: تطبیق ۱۶۰ بیتی از یک بذر ۳۲ بیتی + یک شاخص کوچک: هیچ احتمال تصادفی وجود ندارد (۱۰ در ۱۶۰ بیت). این واقعی است.»
ردیابی برچسبهای زمانی
از آنجا که مولد lrand48 بازگشتپذیر است، کلود وضعیت را به عقب برد تا مقدار مقداردهی اولیه srand48 را بیابد. این وضعیت با داشتن ۱۶ بیت پایین برابر با 0x330E قابل شناسایی است؛ شکلی که هر ۶۵,۵۳۶ گام یک بار رخ میدهد.
برای ۱۰ بذر منحنی اول، این مقداردهیها در واقع برچسبهای زمانی یونیکس (Unix Timestamps) بودند که بین مه ۱۹۹۷ و آوریل ۱۹۹۸ قرار داشتند. برنامه تولیدکننده در هر تکرار ۲۰ بایت را به عنوان بذر کاندید استخراج میکرد؛ بذر منتشر شده P-256 در واقع کاندید شماره ۱۸۴۲ در اجرای آن برنامه بود.
جالب است که مقداردهیهای چهار منحنی باینری به فوریه ۱۹۸۴ بازمیگشت. اما تیم پژوهشی دریافت که با دو برابر کردن این برچسبهای زمانی، تاریخ ۱۷ آوریل ۱۹۹۸ به دست میآید؛ یعنی دو هفته پس از اجرای P-224. این موضوع نشان میدهد برنامه اصلی احتمالاً هنگام تولید، ساعت سیستم را نصف کرده است.
منشأ نقاط پایه
فراتر از بذرها، کلود منشأ چندین نقطه پایه (G) را نیز شناسایی کرد. هر منحنی یک نقطه پایه G را مشخص میکند که هر کلید عمومی ECDSA مضرب این نقطه ثابت است. بذر بازیابی شده به تنهایی این نقطه را تعیین نمیکند.
برای شش منحنی تولید شده در مه ۱۹۹۷ — شامل P-192 و منحنیهای نمونه ANSI X9.62 (یعنی prime192v2، prime192v3 و prime239v1 تا v3) — نقاط پایه به مولد اعداد تصادفی در FreeLIP بازمیگشت که بسته محاسبات اعداد بزرگ اثر آرین لنسترا است. این کد همچنین در نسخههای اولیه کتابخانه NTL اثر ویکتور شوپ وجود داشت.
طبق این دستورالعمل، مولد با یک عدد صحیح کوچک مقداردهی میشود، هفت خروجی اول دور ریخته میشوند و مختصات x کاندید از خروجیهای ۲۶ بیتی (که به پیمانه p کاهش یافتهاند) استخراج میشوند تا زمانی که x روی منحنی قرار گیرد. بذرهای شناسایی شده برای این نقاط عبارت بودند از:
- P-192: ۲۰۰۰۰
- prime239v1 تا v3: ۲۰۴۲۰، ۲۰۵۰۷ و ۲۰۵۰۹
- prime192v2 و v3: ۲۰۵۱۲ و ۲۰۵۱۷
آنتروپیک اعلام کرد که پیش از این کشف، هیچیک از نقاط پایه NIST توضیح داده نشده بود.
پیامدهای امنیتی
آنتروپیک تأکید میکند که این یک شکست رمزنگاری یا حمله جدید نیست و ضعفی در خود منحنیهای ECDSA ایجاد نمیکند. در واقع، این کشف «ابهام» را با «شفافیت» جایگزین میکند.
با اثبات اینکه بذرها از یک PRNG معمولی که با ساعت سیستم مقداردهی شده بود آمدهاند، تیم استدلال میکند که اکنون فضای کمتری برای نظریات مربوط به «تخریب عمدی» (Subversion) وجود دارد. اگرچه اکثر پژوهشگران پیش از این هم به این منحنیها اعتماد داشتند، اما اکنون این اعتماد یک مبنای ریاضی دارد.
با این حال، برخی شکافها باقی مانده است. بذر B-163 در برابر تمام تلاشهای بازیابی مقاوم بود. علاوه بر این، نقاط پایه برای P-224، P-256، P-384 و P-521 و همچنین نقاط پایه منحنیهای باینری NIST همچنان ناشناختهاند.
تیم همچنین اشاره کرد که برخی از بذرهای کاندید قابل استفاده در اجرای اصلی NSA نادیده گرفته شدهاند:
- در اجرای P-256، کاندید شماره ۸۷۶ وجود داشت که آن هم منحنی با مرتبه اول در اندازه درست تولید میکرد.
- در اجرای P-224، سه کاندید مشابه نادیده گرفته شدند.
- در دو اجرای مربوط به منحنیهای نمونه ANSI X9.62، هفت کاندید دیگر رد شدند.
از آنجا که تعداد این موارد نادیده گرفته شده کم است، تیم احتمال انتخاب عمدی منحنیهای تضعیف شده را بعید میداند، هرچند در اصل conceivable (تصورپذیر) است که منحنیهایی با ویژگیهای خاص از طریق جستجو در برچسبهای زمانی انتخاب شده باشند.
این تمرین جنایی نشاندهنده تغییر قابلیتهای هوش مصنوعی از تطبیق ساده الگوها به استدلال ریاضی پیچیده و چندمرحلهای است. جایزه ۳۶,۸۶۴ دلاری برای یافتن بذرها به گروه پژوهشی امنیت اینترنت (ISRG) اهدا خواهد شد. این گزارش از فیلیپ والسوردا برای سازماندهی جایزه تشکر کرده و یاد جری سولیناس را گرامی میدارد.
این اثر به جان وود، هنری دو والنس، آوا هاول، زک ووس، لوسی سوییت، امیر عُمیدی، پل کرولی، ایین مکگینیس، نیکولاس کارلینی و استیو ویس نسبت داده شده است. پژوهشگران اکنون میتوانند کد بازتولید این یافتهها را که تحت لایسنس CC0 1.0 Universal در مالکیت عمومی منتشر شده است، برای تأیید مستقل نتایج بررسی کنند.
گام بعدی شما
- کد بازتولید این یافتهها که تحت لایسنس CC0 منتشر شده را بررسی کنید تا با نحوه تحلیل جنایی مدلهای زبانی آشنا شوید.
- در مورد تفاوت بین مولدهای اعداد تصادفی سختافزاری و شبهتصادفی (PRNG) مطالعه کنید تا دلیل آسیبپذیری
lrand48را درک کنید. - دنبال کنید که آیا NIST در پاسخ به این شفافیت، استانداردهای جدید برای تولید بذرها ارائه میدهد یا خیر.
اما داستان سختافزاری این تحول حتی شگفتانگیزتر است — به تحلیل ما درباره تراشههای Blackwell مراجعه کنید.




گفتگو