پرش به محتوای اصلی
امنیتخبر
۴ دقیقه مطالعه

هوش مصنوعی Claude معمای ۳۰ ساله بذرهای منحنی‌های بیضوی NIST را حل کرد

تیم سرخ Anthropic با کمک Claude نشان داد بذرهای مرموز منحنی‌های P-256 و هم‌خانواده‌هایش از مولد تصادفی rand48 و زمان سیستم در سال‌های ۱۹۹۷ و ۱۹۹۸ ساخته شده‌اند.

سید محمد بهبهانی‌زاده
برنامه‌نویس فول‌استک
منبع خبر:Claude reveals ECDSA curve origins – Anthropicanthropic.com

تیم سرخ (Frontier Red Team) شرکت Anthropic روز ۱۶ اکتبر ۲۰۲۶ اعلام کرد که با کمک یک مدل پژوهشی داخلی Claude منشأ بذرهای (seed) منحنی‌های بیضوی استاندارد NIST را پیدا کرده است. این منحنی‌ها شامل P-256 هستند و منشأ بذرهایشان نزدیک به سه دهه نامعلوم بود. طبق یافته‌ها، این بذرها خروجی مولد اعداد تصادفی کتابخانه استاندارد C هستند که با زمان سیستم در سال‌های ۱۹۹۷ و ۱۹۹۸ مقداردهی شده است. پس پای عبارت مخفی یا دست‌کاری عمدی در میان نیست.

ماجرا از کجا شروع شد

NIST در سال ۲۰۰۰ استاندارد FIPS 186-2 را منتشر کرد و برای هر منحنی یک «بذر» ۱۶۰ بیتی هم آورد. ضریب b هر منحنی از هش SHA-1 همین بذر به دست می‌آید. هدف این بود که نشان دهند منحنی‌ها دلخواه انتخاب نشده‌اند. این بذرها را آژانس امنیت ملی آمریکا (NSA) فراهم کرده بود، ولی هیچ‌وقت نگفت از کجا آمده‌اند. همین ابهام سال‌ها به گمانه‌زنی درباره درِ پشتی در منحنی‌هایی مثل P-256 دامن زد. P-256 امروز در TLS، امضای دیجیتال و بسیاری از کتابخانه‌های رمزنگاری کاربرد گسترده دارد.

روایت رایج این بود که بذرها از هش یک جمله شوخی‌آمیز ساخته شده‌اند. چند پژوهشگر هم این سرنخ را دنبال کرده بودند و به نتیجه نرسیده بودند. یک رمزنگار مستقل حدود سه سال پیش برای پیدا کردن منشأ این بذرها جایزه گذاشته بود.

Claude چطور به جواب رسید

به گفته Anthropic، یکی از کارکنان این شرکت در اکتبر ۲۰۲۶ از مدل پرسید که بذرها چطور ساخته شده‌اند. سرنخ «جمله شوخی» به مدل داده نشد. مدل در کمتر از نیم ساعت منشأ بذرهای P-192، P-224، P-256، P-384 و P-521 را پیدا کرد.

فرض اولیه مدل این بود که نرم‌افزار سازنده بذرها از یک مولد تصادفی ضعیف دهه ۱۹۹۰ استفاده کرده است. در چند بذر، بیت بالای همه کلمه‌های ۳۲ بیتی صفر بود. این الگو ردپای تابع lrand48 است که از وضعیت داخلی ۴۸ بیتی فقط ۳۱ بیت بالایی را برمی‌گرداند. مدل وضعیت داخلی را برای بعضی بذرها با جست‌وجوی کامل و برای بعضی دیگر با روش کاهش شبکه (LLL) بازیابی کرد. سپس مولد را به عقب برگرداند تا به نقطه مقداردهی اولیه با srand48 برسد. در هر ده بذر منحنی‌های اول (prime) از استانداردهای NIST و ANSI X9.62، آن نقطه یک برچسب زمانی یونیکس بین مه ۱۹۹۷ تا آوریل ۱۹۹۸ بود. مثلاً بذر P-256 هزار و هشتصد و چهل و دومین نامزد اجرایی بود که در اوت ۱۹۹۷ آغاز شده است.

صاحب جایزه این نتیجه را در وبلاگش تأیید کرد و الگوریتم را جداگانه با زبان Go بازسازی کرد. در توصیف او نام تابع drand48 آمده است. هر دو تابع عضو یک خانواده‌اند و در هر دو توصیف، بذرها از همان برچسب‌های زمانی بازتولید می‌شوند. جایزه‌ای به ارزش ۳۶٬۸۶۴ دلار هم به ISRG، سازمان غیرانتفاعی گرداننده Let's Encrypt، اهدا می‌شود.

c
// منطق کلی تولید بذر (ساده‌شده و فقط برای توضیح)
srand48(unix_timestamp);          // مقداردهی با زمان سیستم
for (;;) {
    uint8_t seed[20];
    for (int i = 0; i < 20; i++)
        seed[i] = lrand48() >> 23; // یک بایت از هر خروجی
    if (curve_is_valid(sha1_derive(seed)))
        break;                     // نامزد معتبر
}

چرا مهم است

Anthropic تأکید می‌کند که این کشف ضعف یا شکستی در منحنی‌ها نیست و برنامه‌نویس‌ها لازم نیست کاری انجام دهند. برعکس، این یافته اطمینان را بیشتر می‌کند که منحنی‌ها بدون در پشتی انتخاب شده‌اند. به گفته صاحب جایزه، وقتی منشأ بذر یک برچسب زمانی محدود و شماره نامزد است، فقط حدود ۳۰ بیت آزادی در انتخاب باقی می‌ماند. این مقدار برای هدف گرفتن عمدی منحنی‌های ضعیف کافی نیست. حمله‌ای که پیش‌تر به‌صورت نظری مطرح شده بود حدود ۷۰ بیت آزادی لازم داشت.

برای برنامه‌نویس‌ها این ماجرا دو پیام دارد. اول اینکه P-256 و ECDSA، که در گواهی‌های TLS، کلیدهای سخت‌افزاری و امضای کد همه‌جا حضور دارند، از یک شبهه قدیمی رها می‌شوند. دوم اینکه مدل‌های زبانی بزرگ حالا در تحلیل رمزنگاری و مهندسی معکوس به ابزاری جدی تبدیل شده‌اند.

نکات کلیدی

  • منشأ بذرها مولد rand48 بوده که با زمان سیستم در ۱۹۹۷ تا ۱۹۹۸ مقداردهی شده است
  • بذر منحنی باینری B-163 و نقاط پایه P-256، P-384 و P-521 هنوز توضیحی ندارند
  • معیار رد بعضی نامزدهای معتبر، مثلاً نامزد ۸۷۶ برای P-256، هنوز روشن نیست

جمع‌بندی

یکی از قدیمی‌ترین معماهای رمزنگاری مدرن ظاهراً جواب ساده‌ای داشته است: یک مولد تصادفی معمولی کتابخانه C و ساعت سیستم. پرسش‌هایی هنوز باز است، از جمله معیار انتخاب میان نامزدها و منشأ چند بذر و نقطه پایه. با این حال یافته‌ها، که مستقل هم تأیید شده‌اند، گمانه‌زنی درباره در پشتی در منحنی‌های NIST را به‌شدت تضعیف می‌کنند.

منابع

  1. Claude reveals ECDSA curve origins – Anthropicanthropic.com
  2. The NIST Elliptic Curves Seeds Bounty Has Been Claimedwords.filippo.io

این خبر بر اساس منابع بالا به فارسی بازنویسی و خلاصه شده است؛ برای جزئیات کامل به منبع اصلی مراجعه کنید.

داده و دیتابیسخبر
۴ دقیقه مطالعهtheregister.com

تعویق PostgreSQL 19؛ بازبینی کد با هوش مصنوعی بیش از توان توسعه‌دهندگان باگ یافت

انتشار PostgreSQL 19 به حدود ۱۹ نوامبر عقب افتاد. بازبینی کد با هوش مصنوعی آن‌قدر باگ پیدا کرد که بین ۸ تا ۱۰ قابلیت مهم، از جمله SQL/PGQ، از این نسخه کنار رفت.

خواندن خبر#PostgreSQL