Cryptography symmetric - رمزنگاری متقارن

Ashkan Kamyab
Ashkan Kamyab
485 بار بازدید - 4 سال پیش - در گذشته برای رساندن پیامهای
در گذشته برای رساندن پیامهای مهم ایالتی به داریوش اول از رمزنگاری استفاده می شد.تا اگر چاپارهای پارسی از بابل به سمت پاسارگاد در حرکت بودند و مورد حمله مهاجمان قرار می گرفتند متن نامه گویا نباشد.نامه‌ هایی را که فرمانروهای ایالات برای داریوش مینوشتند با یک اصطلاحا کلید که صرفا خود داریوش از آن خبر داشت بازنویسی میکردند و اصل نامه را از بین می بردند، به این ترتیب داریوش میتوانست با همان کلید مشخص آن را رمزگشایی کند. با این روش می توان نوشته‌های خام را نیز رمزگذاری کرد. جهت انجام این کار الگوریتمهای زیادی در دسترس میباشد که مهمترین آنها DES یا Data Encryption Standard و نسخه تکامل یافته آن AES یا Advanced Encryption Standard است. حال برای اینکه این دو را توضیح بدیم باید بپرسیم که اساسا الگوریتمهای رمزنگاری به چه صورتند که این دو مهم‌ترین این رمزنگاریها هستند که به استاندارد تبدیل شده اند. DES خوب به لطف چاپارهای پارسی با مدل متقارن آشنا شدیم و این فقط شکل شماتیک مسئله است. در واقع در عمق ماجرا تقسیم بندیهای بیشتری وجود دارد. علی القاعده وقتی وارد دنیای کامپیوترها می شویم. پیشرفتهای رمزنگاری از زمان چاپارها تا عصر ربات ها شامل تحولات عمده‌ای است. مثلا در عصر ارتباطات از الگوریتم RC4 یا Ron Rivest's Cipher که از آن در تجارت الکترونیک استفاده شد و یا A5 که از آن در ارتباطات GSM مورد استفاده قرار گرفت. اما اینها در تقسیم بندی Stream Cipher گنجانده میشود. با توجه به گستردگی زیاد و تقسیم بندی مباحث از اکثر آنها گذر میکنیم و روی موضوع اصلی تمرکز میکنم. Block Cipher موضوع اصلی این بحث است. در این تقسیم بندی الگوریتم DES سالها نقش مرد زحمت کش داستان را ایفا میکرد. زمانی که از رمزنگاری روی بلاکهای داده صحبت میکنیم در دنیای کامپیوتر هستیم و دیگر هیچ … در این تقسیم بندی DES میتواند بلاک به بلاک یک داده را رمزنگاری میکند و این در حالیست که تقسیم بندی Stream این بیت به بیت صورت میگیرد. تفاوت اینجاست که اگر یک حجم مشخص که مثلا در DES با ۶۴ بیت از داده در نظر گرفته میشود و با ۵۶ بیت رمزنگاری شود تا بلاکهای ۶۴ بیتی رمزشده تولید بشود. در واقع در این مدل هر بیت داده خام در کل بلاک رمز شده گسترانیده شده است. الگوریتم DES در سال ۱۹۷۵ توسط IBM بر اساس طراحی Horst Feistel منتشر شد. بعد از این در ۱۹۷۶ توسط NSA به عنوان کارآمدترین الگوریتم و مقاوم ترین الگوریتم شناخته شد و در سال ۱۹۷۷ توسط FIPS منتشر شد. اما صلابت و صلاحیت این قهرمان سالهای دور هم جایی توسط آدم‌بدهای دنیای کامپیوتر زیر سوال رفت. از این رو مدلی با اسم Modes معرفی شد. این مدل تلفیق DES با نوشته خام است. بطور خلاصه در نظر بگیرید که اگر دو نفر در حال رد و بدل کردن اطلاعاتی هستند که موضوع مشترک داشته باشند، شخص سومی میتواند با تکرار به خواندن این اطلاعات و حدس زدن از اینکه موضوع بحث دو نفر اصلی چیست، اطلاعات زیادی پیدا کند، چرا که در آن الگوهای مشترکی پیدا خواهد کرد که با مقایسه آن با الگوهایی که خود توسط حدس هایش باز تولید می کند همخوانی خواهد داشت. این مدل جدید سه زیر مجموعه داشت که استاندارد شده و منتشر شده‌اند CBC, CFB و OFB که هر مدل روش خود را برای مرحله رمزنگاری و ترکیب آن با دیتای خام دارند و بنابراین هر کدام مشخصا نتیجه‌های متفاوت تولید می کردند. و در نهایت مدلی چهارمی ECB یا Electronic code book ارائه شده که از مدلهای فوق بهره نمی گرفت و صرفا استفاده دیتا بلاک رمزشده خودش بود. در نهایت هنر همه این مدلها عهده دار مخفی کردن الگوهای قابل رویت از DES بودند. در نهایت همه اینها جواب داد DES به همراه مدلهای پیرو به صورت عمومی و در وسعت جهانی استاندارد شدند. بد این نیست اینجا به این اشاره کنیم که رمزگذاری خوب چه ویژگیهای باید داشته باشد: زیر ساختی که مجری رمز کردن است. اگر شما در حال رمز کردن اطلاعات بسیار مهم هستید و این اطلاعات توسط آدم بدها به راحتی از طریق فیزیکی قابل دسترس باشد، به راحت قبل از رمز شدن آنها قابل کپی شدن هستند. همچنین نگهداری از کلید. اگر کلید به هر دلیلی به دست کسانی که نباید بیفتد تمام این الگوریتمها و مدلها و زحمتهای طراحان و توسعه دهندگان آن هیچ میشود. آدم بد داستان با کلید در گاوصندوق را مثل ماست باز میکند. حجم کلید هم مسئله حائز اهمیتی است. وقتی آدم بده دسترسی به اصل کلید نداشته باشد یکی از اولین کارهای که می‌آزماید حدس زدن کلید توسط روش Brute-Force است. به معنی آزمون و خطا که خود روشها و الگوریتمهای متفاوتی دارد و حوصله این بحث خارج است. بنابراین هر چه حجم بزرگ کلید(به زبان ساده تعداد کارکترهای آن) بزرگتر باشد حدس زدن آن نیز به روش سیستماتیک سخت تر است. کیفیت الگوریتم. که در این باب قضاوت کردن بسیار سخت است. در نهایت یکی از الگوریتمها از بین همه الگوریتمهای خوب به عنوان بهترین انتخاب و استاندارد می شود، سپس به صورت گسترده در سطح جهان مورد استقبال قرار میگیرد. نگارنده مایل است که شما خواننده عزیز تشویق به مطالعه بیشتر در این خصوص نماید.
4 سال پیش در تاریخ 1399/03/01 منتشر شده است.
485 بـار بازدید شده
... بیشتر