استاندارد رمزنگاری یا DES

الگوریتم DES دارای دو جزء است: یک الگوریتم رمزنگاری و کلید. الگوریتم DES منتشر شده شامل چندین تکرار از یک تغییر شکل ساده با استفاده از هر دو تکنیک جابجایی و جایگزینی (به رمزنگاری چیست مراجعه کنید) است. این الگوریتم تنها از یک کلید برای رمزنگاری و رمزگشایی استفاده می کند و به همین جهت به آن رمزنگاری کلید اختصاصی نیز گفته می شود. همان طور که در مقاله کلیدهای رمزنگاری توضیح دادیم در این حالت حفظ کلید به صورت محرمانه توسط فرستنده و گیرنده پیغام بسیار اهمیت دارد زیرا الگوریتم به صورت عمومی در اختیار همگان است و در صورت لو رفتن کلید، هر کسی می تواند پیغام محرمانه را ببیند. به همین جهت در رمزنگاری DES معمولاً عمر کلید به اندازه عمر تراکنش است.
کلید DES یک توالی هشت بایتی است که هر بایت شامل یک کلید هفت بیتی و یک بیت توازن است. در حین رمزنگاری، الگوریتم DES متن اصلی را به بلوک های ۶۴ بیتی می شکند. این الگوریتم در هر زمان بر روی یک بلوک کار می کند و آن را از نصف شکسته و کاراکتر به کاراکتر رمزنگاری می کند. کاراکترها ۱۶ بار تحت نظارت کلید تغییر شکل پیدا کرده و در نهایت یک متن رمزنگاری شده ۶۴ بیتی تولید می شود. کلید حاوی ۵۶ بیت معنادار و هشت بیت توازن است.
در سال ۱۹۹۷ در یک تلاش همگانی و با استفاده از ۱۴ هزار رایانه یک پیغام رمزنگاری شده توسط DES شکسته شد که البته چندان باعث نگرانی نیست. زیرا در بیشتر انتقال پیغام ها، به خصوص در نقل و انتقالات مالی، یک بازه زمانی وجود دارد که در آن اطلاعات باید کاملاً محرمانه نگه داشته شود و بعد از آن فاش شدن آنها چندان اهمیت نخواهد داشت.
بعد از سقوط DES بسیاری از مؤسسات از DES سه گانه استفاده کردند که به عنوان ۳DES شناخته می شود و در آن DES سه بار تکرار می شود(دو مرتبه با استفاده از یک کلید به سمت جلو (رمزنگاری) و یک مرتبه به سمت عقب (رمزگشایی) با یک کلید دیگر). به این صورت طول کلید به طرز مؤثری افزایش پیدا می کند و منجر به ارتقای امنیت می شود، هر چند که هیچ کس مطمئن نیست این روش تا کی جواب می دهد.
به هرحال DES به حیات خود ادامه می دهد زیرا اولاً هر کسی می تواند به راحتی از آن استفاده کند و ثانیاً قابلیت حفظ محرمانگی را برای مدت کوتاهی دارد که برای بسیاری از برنامه های کاربردی، زمان مناسبی محسوب می شود.
رمزنگاری DES چهار مد مجزا را فراهم می کند که از لحاظ پیچیدگی و موارد کاربرد متفاوت هستند. در زیر هر کدام از مد ها به صورت خلاصه شرح داده شده اند:

۱٫     ECB
این مد همان Electronic Codebook است و برای هر بلوک از داده مشخص و یک کلید مشخص، همواره یک متن رمزنگاری شده ثابت تولید می شود. از مد ECB برای رمزنگاری کلیدها استفاده می شود.

۲٫     CBC
این مد Cipher Block Chaining است که مد ارتقایافته ECB است. در این مد بلوک های رمزنگاری شده به هم زنجیر می شوند. برخلاف مد ECB که در آن بلوک های ورودی یکسان خروجی یکسانی داشتند و ممکن بود منجر به افشای الگو شوند، در اینجا CBC هر بلوک را با استفاده از متن اصلی، کلید و یک مقدار سوم رمزنگاری می کند که وابسته به بلوک قبلی است و لذا تکرار رمزنگاری که به آن زنجیرسازی گفته می شود منجر به پنهان سازی الگوهای تکراری می شود.

۳٫     CFB
مد Cipher Feedback از متونی که قبلاً رمزنگاری شده اند به عنوان ورودی DES برای تولید شبه تصادفی خروجی استفاده می کند. این خروجی با متن اصلی ترکیب شده تا متن رمزنگاری شده را تولید کند. از این مد برای رمزنگاری کاراکترهای تنها استفاده می شود.

۴٫     OFB
مد Output Feedback بسیار شبیه به CFB است ولی مانند آن به زنجیر کردن متون رمزنگاری شده نمی پردازد و به جای آن یک سری پردازش دیگر بر روی متن اصلی انجام می دهد. از این مد برای رمزنگاری ارتباطات ماهواره ای استفاده می شود.

مدهای CBC و CFB تأیید پیغام و رمزنگاری را تؤاماً انجام می دهند. تأیید پیغام جهت اطمینان از مطابقت متن ارسال شده و متن دریافت شده است. در هنگام رمزنگاری DES بلوک های متن به هم لینک می شوند، در مدهای CFB و CBC رمزنگاری هر بلوک وابسته به رمزنگاری بلوک قبل از آن است. به علت وجود همین اتصال، در صورت ایجاد تغییر حتی در یک کاراکتر، بلوک نهایی رمزنگاری شده نیز تغییر خواهد کرد. لذا بلوک آخر به عنوان یک کد تأیید هویت کار می کند و از یک cryptographic checksum برای آزمایش دقت انتقال و تشخیص دستکاری پیغام استفاده می شود.
کلیدهای DES ۴۰بیتی امروزه در عرض چندین ساعت توسط کامپیوترهای معمولی شکسته می‌شوند و بنابراین نباید برای محافظت از اطلاعات مهم و با مدت اعتبار طولانی استفاده شود. کلید ۵۶ بیتی عموما توسط سخت‌افزار یا شبکه‌های بخصوصی شکسته می‌شوند.

 

دیدگاه‌تان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *