مرکز دانش IT |
Data Encryption Standard (DES)
استاندارد رمزنگاری دادهها
الگوریتم DES در دههٔ ۷۰ میلادی در آمریکا بهعنوان یک استاندارد کدگذاری مطرح شد. این الگوریتم اینگونه عمل میکند که رشتهای از متن اصلی با طول ثابت را به عنوان ورودی میگیرد و پس از انجام یک سری اعمال پیچیده روی آن خروجی را که طولی برابر طول ورودی دارد تولید میکند. DES هم چنین از یک کلید برای ایجاد رمز استفاده میکند و تنها کسانی قادر به رمزگشایی خواهند بود که مقدار کلید را میدانند. اگرچه تحلیلهایی که دربارهٔ DES انجام شدهاست از هر روش رمز قطعهای دیگری بیشتر است ولی عملیترین حمله علیه این الگوریتم جستجوی جامع فضای کلید است. سه حمله تئوریکی برای این الگوریتم وجود دارند که زمان کمتری نسبت به جستجوی جامع فضای کلید نیاز دارند ولی این روشها در عمل امکانپذیر نیستند.
با شکسته شدن الگوریتم DES این استاندارد در سال ۱۹۹۸ تمدید نشد و در سال ۲۰۰۱، الگوریتم AES به عنوان استاندارد جایگزین آن تصویب شد. این الگوریتم مانند DES یک الگوریتم رمزقطعهای است ولی بر خلاف DES از ساختار فیستل استفاده نمیکند. تا سال ۲۰۰۶ تنها حمله مؤثر علیه الگوریتمAES حمله side channel بودهاست. در ژوئن سال ۲۰۰۳ دولت آمریکا اعلام کرد که از AES میتوان برای حفاظت از اطلاعات ردهبندی شده و سری نیز استفاده کرد. برای اطلاعات فوق سری و محرمانه باید از کلیدهایی با طول ۱۹۲ یا ۲۵۶ بیت استفاده کرد.
در سال ۱۹۷۲ مؤسسه بینالمللی استاندارد و فناوری آمریکا اعلام کرد که به یک الگوریتم برای حفاظت از اطلاعات غیر ردهبندی شده خود نیاز دارد. این الگوریتم میبایست ارزان، قابل دسترس و بسیار مطمئن میبود. در سال ۱۹۷۳، NIST فراخوانی برای چنین الگوریتمی اعلام نمود ولی هیچیک از الگوریتمهایی که در پاسخ به این فراخوان ارائه شدند شرایط لازم را نداشتند. دومین فراخوان در سال ۱۹۷۴ مطرح شد در این زمان IBM الگوریتم خود را مطرح نمود که به نظر میرسید میتواند نیازهای NIST را بر طرف کند. این الگوریتم به عنوان یک استاندارد فدرال در سال ۱۹۷۶ تصویب شد و در سال ۱۹۷۷ منتشر شد. با امکانپذیر شدن حمله جستجوی جامع فضای کلید برای این الگوریتم، سازمان ملی استاندارد و فناوری آمریکا در آغاز سال ۱۹۹۷اعلام کرد که برای تدوین استاندارد پیشرفته رمزنگاری تلاشی را آغاز کردهاست. در سپتامبر همان سال این سازمان به طور رسمی فراخوانی را برای ارائه الگوریتمهای رمزنگاری اعلام نمود.
در کنفرانس اول، AES-1، ۱۵ الگوریتم کاندیدا انتخاب شدند، NIST از تمام دانشمندان و مؤسسههای علمی خواست که نظرات خود را در مورد این الگوریتمها ارائه دهند. هم چنین NIST با کمک جامعه بینالمللی رمزنگاری و تشکیل کمیتههایی، اقدام به بررسی قابلیتها و تواناییهای الگوریتمهای ارائه شده نمود. در آگوست سال بعد، در سمینار دوم، AES-2، پنچ الگوریتم انتخاب و برای رقابت نهایی معرفی شدند. این الگوریتمها عبارت بودند از: Rijndael - RC6 - MARS - Twofish - Serpent
آخرین نظرات و انتقادات تا تاریخ ۱۵ مه ۱۹۹۹ جمعآوری شد و بالاخره در سمینار AES-3، پس از بررسی گزارش کمیتههای بررسی کننده، الگوریتم Rijndael به عنوان الگوریتم استاندارد پذیرفته شد.