پیاده سازی /dev/random برای هسته لینوکس پیشنهاد شده است که از اتصال به SHA-1 آزاد شده است.

Jason A. Donenfeld، نویسنده VPN WireGuard، یک پیاده سازی به روز شده از مولد اعداد شبه تصادفی RDRAND را پیشنهاد کرده است که مسئول عملکرد دستگاه های /dev/random و /dev/urandom در هسته لینوکس است. در پایان ماه نوامبر، جیسون در جمع نگهبانان درایور تصادفی قرار گرفت و اکنون اولین نتایج کار خود را بر روی پردازش آن منتشر کرده است.

پیاده سازی جدید به دلیل تغییر آن به استفاده از تابع هش BLAKE2s به جای SHA1 برای عملیات اختلاط آنتروپی قابل توجه است. این تغییر با حذف الگوریتم مشکل ساز SHA1 و حذف رونویسی بردار اولیه سازی RNG، امنیت مولد اعداد شبه تصادفی را بهبود بخشید. از آنجایی که الگوریتم BLAKE2s از نظر عملکرد نسبت به SHA1 برتری دارد، استفاده از آن نیز تأثیر مثبتی بر عملکرد مولد اعداد شبه تصادفی داشت (تست بر روی سیستمی با پردازنده Intel i7-11850H افزایش 131 درصدی سرعت را نشان داد). مزیت دیگر انتقال اختلاط آنتروپی به BLAKE2 یکسان سازی الگوریتم های مورد استفاده بود - BLAKE2 در رمز ChaCha استفاده می شود که قبلاً برای استخراج دنباله های تصادفی استفاده می شد.

علاوه بر این، بهبودهایی در تولید کننده اعداد شبه تصادفی امن رمزنگاری شده CRNG که در تماس تصادفی استفاده می‌شود، انجام شده است. بهبودها به محدود کردن تماس به ژنراتور RDRAND آهسته در هنگام استخراج آنتروپی خلاصه می شود که عملکرد را 3.7 برابر بهبود می بخشد. جیسون نشان داد که فراخوانی RDRAND فقط در شرایطی معنا دارد که CRNG هنوز به طور کامل مقداردهی اولیه نشده باشد، اما اگر مقداردهی اولیه CRNG کامل شود، مقدار آن بر کیفیت دنباله تولید شده و در این مورد فراخوانی به RDRAND تأثیر نمی گذارد. می توان صرف نظر کرد.

این تغییرات برای گنجاندن در هسته 5.17 برنامه ریزی شده است و قبلاً توسط توسعه دهندگان Ted Ts'o (نگهدار دوم درایور تصادفی)، Greg Kroah-Hartman (مسئول حفظ شاخه پایدار هسته لینوکس) و Jean-Philippe بررسی شده است. Aumasson (نویسنده الگوریتم های BLAKE2/3).

منبع: opennet.ru

اضافه کردن نظر