در چند روز گذشته، افرادی که سعی داشتند همه چیز را به درستی انجام دهند، بیتکوین خود را از دست دادند. آنها یک امضاکننده سختافزاری معتبر خریدند، یک دانه را به صورت آفلاین با استفاده از آن دستگاه تولید کردند و به دستگاه اعتماد کردند تا تنها کاری را که یک امضاکننده برای آن وجود دارد انجام دهد: تولید عددی که هیچکس نمیتواند حدس بزند. اما Coldcard این کار را نکرد. یک گارد پیشپردازش که چیز اشتباهی را بررسی میکرد، به آرامی تولید دانه را به یک PRNG نرمافزاری ضعیف (تولیدکننده عدد شبهتصادفی) به نام Yasmarang در MicroPython هدایت کرد، به جای منبع آنتروپی سختافزاری. در برخی مدلها، آنتروپی مؤثر به حدود ۴۰ بیت کاهش یافت. این نقص در مارس ۲۰۲۱ منتشر شد و بیش از پنج سال در فریمور قابل خواندن عمومی باقی ماند. مهاجمان ۵۰۰ آدرس را قبل از اینکه کسی بفهمد چرا، مورد هدف قرار دادند؛ در عرض چند روز، تعداد آدرسها به ۴،۵۸۵ و نزدیک به ۹۰ میلیون دلار رسید؛ این حمله در تاریخ این مقاله همچنان ادامه دارد.
فرضیه کاری Coinkite، با توافق گسترده در X، این است که کسی از هوش مصنوعی برای جستجوی فریمورهای عمومی در جهت یافتن این باگ استفاده کرده است. اینکه آیا اینگونه این مهاجم آن را پیدا کرده است یا نه، مهاجم بعدی این کار را خواهد کرد. در حالی که یک ممیزی با کمک هوش مصنوعی چند هفته قبل از سرقت انجام شد، هیچ چیزی پیدا نکرد (احتمالاً به دلیل قابلیتهای مدل، احتمالاً به دلیل ساختار خاص جستجو). از زمان شروع حمله، محققان چندین مدل پیشرفته را نشان دادهاند که همان نقص را در عرض چند دقیقه از یک درخواست واحد شناسایی میکنند. این کد به مدت پنج سال در دسترس بررسی انسانی بود و هیچ انسانی آن را پیدا نکرد.
Coinkite فریمور خود را از مجوز نرمافزار آزاد به شرایط قابل دسترسی برای منبع، MIT با یک بند عمومی، تغییر داد، پس از اینکه Foundation Devices از کد در یک محصول رقیب استفاده کرد. شما میتوانستید منبع را بخوانید اما نمیتوانستید بر اساس آن کسبوکار بسازید. این تغییر هیچ چیزی را تغییر نداد. این باگ در کدی زندگی میکرد که یک ماشین میتوانست بخواند، صرف نظر از اینکه مجوز چه چیزی را مجاز میکرد؛ در واقع، این کد در بازنویسیای وارد درخت شد که آخرین کد GPL را حذف کرد. تغییر مجوز حفاظت را افزایش نداد؛ بلکه فقط اقتصاد یافتن باگ را تغییر داد.
در عصر هوش مصنوعی با مهارتهای بالا، هر چیزی که توزیع میشود قابل خواندن است، یا به زودی خواهد بود. یک باینری را از نمادهایش خالی کنید، آن را از طریق یک دیکامپایلر اجرا کنید و کد شبه-C که به هر کسی که Ghidra را باز کرده است خوشامد میگوید، بیرون میآید: متغیرهای بینام، جریان کنترل مسطح، توابع با برچسب FUN_00401a20. برای اکثر مردم غیرقابل خواندن است. آن مانع بالای درک انسانی، تمام حق بیمه امنیتی "کد بسته" بود.
یک برنامه کامپایل شده چارهای جز گفتن حقیقت ندارد. کدی که رمزگذاری شده باقی میماند نمیتواند اجرا شود. در لحظه اجرای آن، پردازنده باید دستورات واقعی را دریافت کند، بنابراین هر کاری که برنامه انجام دهد، به ماشین یک حساب کامل و دقیق از چگونگی انجام آن میدهد. تمام اطلاعات در کد ماشین وجود دارد. ابهامسازی نمیتواند و نمیتواند آن را حذف کند.
اگر خواندن یک باینری به نظر میرسد که برای یک ماشین به زودی خیلی سخت است، آن را با آنچه که ماشینها در حال حاضر برای مشکلات بسیار سختتر انجام میدهند مقایسه کنید. خواندن یک باینری تحلیل است: هر حقیقتی که نیاز دارید در مقابل شماست و کار استخراج است. اختراع ریاضی یک سطح دیگر از دشواری است، زیرا به یک شیء نیاز دارد که هیچکس هرگز آن را ندیده است. در ساعت ۰۲:۱۹ UTC در ۲۰ ژوئیه، Levent Alpöge، یک ریاضیدان که با Claude Fable 5 از Anthropic کار میکرد، یک مثال مخالف برای حدس جاکوبی کلر ارائه داد، یک مسئلهای که از سال ۱۹۳۹ باز بوده و به اندازه کافی سخت است که در لیست چالشهای قرن بیست و یکم استیون اسمال قرار گیرد. نسلها سعی کرده بودند. این نقیض سه چندجملهای در سه متغیر است. Lean آن را در عرض چند ساعت تأیید کرد و به اندازهای کوتاه است که هر کسی میتواند در یک سیستم جبر کامپیوتری در حدود یک دقیقه آن را تأیید کند.
حدس جاکوبی در یک بعدازظهر سقوط کرد، در حالی که پرسشگر ظاهراً در حال تماشای آخرین مسابقه جام جهانی فوتبال بود. در ماه مه، یک مدل OpenAI حدس فاصله واحد اردوش را سرنگون کرد، سؤالی که از سال ۱۹۴۶ باز بوده است؛ در اواخر ژوئیه، یک حدس نظریه گراف ۳۰ ساله به چهار درخواست سقوط کرد؛ بین آنها نقیض جاکوبی و یک سری نتایج دیگر که دههها پابرجا مانده بودند، آمدند.
سرعتی که در کنار وظیفهی متواضع خواندن کد ماشین که در حال حاضر در اینترنت موجود است، قرار میگیرد. مدلهای امروز خروجیهای منبع و دیکامپایلر را بهتر از بایتهای خام مدیریت میکنند، بنابراین یک باینری کاملاً بسته حاشیهی نازکی را حفظ میکند. این حاشیه یک مانع هزینهای است و با سرعتی که در جاهای دیگر مشاهده میکنید در حال فرسایش است. شرطبندی بر روی امنیت به مدت زمان باقیمانده به معنای شرطبندی علیه ساعتی است که فقط در حال سرعت گرفتن است.
همان قابلیت که باگ انتروپی شما را پیدا میکند، روش اختصاصی شما را نیز میخواند. این آسیبدیدگی ساکتتر است و بر شرکتهایی تأثیر میگذارد که هرگز خود را در معرض هر چیزی از منبع باز نمیدانستند. راز تجاری در نرمافزارهای ارسال شده همیشه فقط ابهام در یک لباس بوده است. قانون از زمانی که قانون راز تجاری وجود داشته، این را گفته است: مهندسی معکوس یک محصول که بهطور قانونی در اختیار دارید، بازی منصفانهای است و بنابراین یک راز تنها در صورتی زنده میماند که مهندسی معکوس آن پرهزینه باشد. وقتی هزینه استخراج به یک اشتراک و یک درخواست کاهش یابد، راز نهفته در کدی که به مشتریان خود میدهید دیگر یک راز نیست. الگوریتم هوشمند شما، فرمت مستند نشده شما، برتری شما در باینری: قابل خواندن برای هر کسی که بخواهد نگاه کند، در زمانی که به طور فزایندهای به دقیقهها اندازهگیری میشود.
هیچیک از اینها لزوماً منبع باز را ایمن نمیکند. Heartbleed به مدت دو سال در گستردهترین کتابخانه TLS در جهان پنهان بود، زیرا دید بدون توجه مالی هیچ چیزی را پیدا نمیکند. درب پشتی xz نشان داد که مدل مشارکت باز خود یک سطح حمله است، که یک دشمن صبور میتواند با چهرهای دوستانه و دو سال تعهدات خوب از آن عبور کند. در حالی که روزگاری باز بودن یک سپر بود، دیگر اینگونه نیست. آنچه خریداری میکند بازبینیکنندگان است که مجاز به نگاه کردن هستند، ساختهایی که میتوانند بهطور مستقل بازتولید و تأیید شوند، خروجی زمانی که یک فروشنده میمیرد یا تغییر میکند، و اذعان به اینکه همه اینها اتفاق خواهد افتاد چه شما بخواهید و چه نخواهید.
اکنون باید فرض کنیم هر خط ارسال شده توسط کسی که خواهان آسیب است خوانده خواهد شد، زیرا اینگونه خواهد بود. مدافع یک مزیت ساختاری دارد که مهاجم هرگز نخواهد داشت: زمان. شما میتوانید همان مدلهای مرزی را بر روی کد خود قبل از انتشار، در فضای بین تعهد و ارسال، اجرا کنید، در حالی که مهاجم منتظر باینری است که هنوز وجود ندارد. ساختهای خود را قابل بازتولید کنید، بنابراین به منبع متصل میشود و منبع میتواند بررسی شود. طراحی کنید تا بسته بماند و هستهی مورد اعتماد را به اندازهای کوچک نگه دارید که یک باگ نتواند همه چیز را تحت تأثیر قرار دهد. برای کسب و کار خاص نگهداری بیتکوین، درسهایی را که Coldcard در زمان واقعی آموزش میدهد یاد بگیرید: انتروپی را که نمیتوانید اجازه دهید حدس زده شود، مالک باشید، عنصر ایمن را حداقل و پشت یک رابط منتشر شده نگه دارید و کلیدهای خود را در پیادهسازیهای مستقل پخش کنید، به طوری که هیچ دستگاه واحد و هیچ اشتباه یک فروشنده واحد، کل معرض شما نباشد.
برای بیتکوین، ریسکها به گونهای بیرحمانه هستند که در جاهای دیگر نیستند، زیرا تنها دانش کلیدهای خصوصی مالکیت را اعطا میکند. باگ انتروپی زخمهای دائمی به جا گذاشته است. وصله زدن به ژنراتور هیچ کاری برای دانههایی که قبلاً تولید کرده است انجام نمیدهد؛ یک فضای کلید ضعیف برای همیشه قابل جارو کردن باقی میماند و افشاگری دستورالعمل را به مهاجم میدهد. ما این را قبلاً دیدهایم. آسیبپذیری Milk Sad در ابزار اکسپلورر libbitcoin، bx، کلیدهای خصوصی را از یک مقدار 32 بیتی تولید میکرد و مهاجمان قبل از اینکه نقص هرگز عمومی شود، کیف پولهایی را که تولید کرده بود تخلیه میکردند. مهاجمان برنامه خود را دارند، دعوت شده یا نه. برای پولی که نمیتوان آن را پس گرفت، "در نهایت قابل پیدا کردن" معادل "در نهایت رفته است" است.
بیتکوین هرگز به ابهام اعتماد نکرد. پروتکل باز است، قوانین آن توسط هر کسی قابل بررسی است و امنیت آن بر اساس رازها نیست، بلکه بر اساس ریاضیات و مشوقهایی است که در دید کامل قرار دارند. سختافزار و نرمافزاری که ما در اطراف آن میسازیم شایسته همان استاندارد است، زیرا گزینهی دیگری دیگر روی میز نیست. انتخاب هرگز باز یا بسته نبود. این انتخاب منظم یا در معرض خطر بودن بود.
درس بزرگتر از این وضعیت Coldcard این است که داشتن نرمافزار منبع بسته مانند داشتن یک کلید تولید شده توسط یک Coldcard خراب است؛ به نظر خوب میرسد اما اساساً بر روی شن ساخته شده است. همه میتوانند کد را بخوانند --- تنها سوال باقیمانده این است که آیا این واقعیت را میپذیرید یا شما و کاربرانتان آن را به روشی که کاربران Coldcard یاد گرفتند، یاد میگیرید، یک آدرس خالی در یک زمان.
این یک پست مهمان از کالین کراسمن است که تولیدکننده محتوا در Fedi است. نظرات بیان شده کاملاً متعلق به خود اوست و لزوماً منعکس کننده نظرات BTC Inc یا Bitcoin Magazine نیست.
این محتوا صرفاً برای اطلاعرسانی عمومی ارائه شده است و بهمنزله مشاوره مالی، سرمایهگذاری، حقوقی یا مالیاتی تلقی نمیشود. هرگونه رویداد، جایزه، کمپین آنلاین یا اطلاعات مرتبط که در اینجا ذکر شده است، نباید بهعنوان توصیه، ترغیب یا دعوت به خرید، فروش، معامله یا هرگونه دادوستد دیگر داراییهای رمزارزی تلقی شود. داراییهای رمزارزی از نوسان بالایی برخوردار هستند و ممکن است منجر به زیان شوند. دسترسی به خدمات، محصولات و رویدادهای مرتبط با WEEX ممکن است بسته به منطقه جغرافیایی متفاوت باشد. اطمینان از اینکه استفاده شما از این خدمات با قوانین و مقررات محلی مطابقت دارد، بر عهده خود شماست.





























