درب پشتی در طراحی الگوریتم های رمزنگاری

یکی از ارائه های جذاب در کنفرانس بلک هت اروپا ۲۰۱۷ ، به موضوع بنیادین اعتماد به الگوریتم های رمز می پردازد.  الگوریتم های رمز، زیربنای بخش عمده ای از آنچه به عنوان امنیت داده و امنیت ارتباطات می شناسیم را تشکیل داده اند. وقتی از RSA، AES یا SHA استفاده می کنیم، مادامی که ناامن بودن آنها اثبات و رسماً تایید نشده، آنها را به عنوان اجزای کاملاً مورد اعتماد از یک راه حل امنیتی در نظر می گیریم. بخش بزرگی از این اعتماد، حاصل اثبات ریاضی خواص امنیتی آنها و تایید آن در مجامع معتبر علمی رمزنگاری، و بخشی دیگر ناشی از تایید نهادهای اعتباربخشی  و استانداردسازی مثل ایزو، FIPS ، NIST و غیره است.

رمزنگاری مبتنی بر روابط دقیق ریاضی و خواصی است که امکان می دهد برای ایجاد امنیت به آن اعتماد و اتکا شود. بنابراین انتظار می رود در یک الگوریتم رمز استاندارد، خواص و روابط خاصی از لحاظ ریاضی در تک تک اجزا و نیز بین اجزای الگوریتم برقرار باشد.  حال اگر طراح الگوریتم عمداً برخی از خواص اجزاء یا روابط بین آنها را تضعیف کند، طبیعتاً الگوریتم حاصل نمی تواند حداقل امنیت مورد انتظار را تامین کند. این نکته ای است که در این ارائه با عنوان قرار دادن درب پشتی در طراحی الگوریتم رمز به آن پرداخته شده است.  نمونه مشابه این موضوع،  توافق افشا شده بین RSA و NSA برای استفاده از یک تولید کننده اعداد شبه تصادفی ضعیف در ابزارهای رمزنگاری شرکت RSA است که جنجال زیادی ایجاد کرد، همچنین عدم تایید ایزو برای دو الگوریتم طراحی شده توسط NSA که گفته شد ناشی از سابقه این نهاد در قرار دادن درب های پشتی در سیستم های امنیتی بود.

در این ارائه، یک الگوریتم مشابه AES با نام BEA-1 پیشنهاد شده که در مرحله طراحی، s-box های مورد نظر طراح که دارای نقطه ضعف هستند  در بعضی بخش های آن قرار می گیرد. نتیجه، الگوریتمی متقارن است که با وجود پشتیبانی از کلید رمز ۱۲۰ بیتی، به نفوذگر آگاه از این درب پشتی امکان می دهد با داشتن ۳۰۰ کیلوبیت متن ورودی و ۳۰۰ کیلوبیت متن رمز شده متناظر (تعداد ۳۰ هزار جفت متن واضح رمز شده با یک کلید)، و با یک لپ تاپ Core i7،  کلید را ظرف ۱۰ ثانیه کشف کند.

اشتراک گذاری

پاسخ دهید

نشانی ایمیل شما منتشر نخواهد شد.