الگوریتم کلید متقارن

از ویکی‌پدیا، دانشنامهٔ آزاد
پرش به: ناوبری، جستجو

الگوریتم کلید متقارن

الگوریتم های کلید متقارن ، یک کلاس از الگوریتم ها ، برای رمزنگاری است که با استفاده از کلید های رمزنگاری مشابه برای هر دو رمزگذاری متنی و رمزگشایی متن رمز استفاده میشود. کلید ها ممکن است مشابه باشند و یا ممکن است رابطه‌ای ساده بین دو کلید وجود داشته باشد. کلید، در عمل، نشان دهنده یک راز مشترک بین دو یا چند طرف است که می تواند برای حفظ اطلاعات خصوصی مورد استفاده قرار گیرد. این نیاز که هر دو طرف، دسترسی به کلیدهای مخفی داشته باشند یکی از اشکالات اصلی رمزنگاری کلید متقارن ، در مقایسه با رمزنگاری کلید عمومی است.

انواع الگوریتم کلید متقارن[ویرایش]

در رمزنگاری کلید متقارن می توانید از رمز جریانی و یا رمز قالبی استفاده کنید. در رمزگذاری رمزهای جریانی، رقمی (معمولاً بیت) از یک پیام را در یک زمان رمز میکنند. در رمزگذاری رمزهای قالبی (بلوکی)، تعدادی بیت را در قالب یک واحد رمز گذاری میکنند.الگوریتم تایید شده توسط NIST در دسامبر سال 2001 به وسیله استاندارد رمزگذاری پیشرفته (AES) با استفاده از بلوک های 128 بیتی، تایید شد.همچنین الگوریتم های رمزجریانی سرعت بهتری نسبت به الگوریتم های رمز قالبی دارند. چون رمزهای جریانی دارای پیچیدگی درالگوریتم نیستند.مانند الگوریتم salsa20.

پیاده سازی[ویرایش]

نمونه هایی از الگوریتم های متقارن محبوب و شناخته شده عبارتند از Twofish، Serpent ، AES ، Blowfish، CAST5، RC4، DES، و IDEA

شکلهای هندسی اولیه رمزنگاری بر اساس رمزهای متقارن رمزهای متقارن اغلب برای رسیدن به شکلهای هندسی اولیه رمزنگاری و نه فقط رمزگذاری استفاده میشوند. رمزگذاری یک پیام تضمین نمی‌کند که این پیام رمزگذاری شده در طول مسیرانتقال، تغییر نیافته است. ازاین رو اغلب یک کد تأیید هویت پیام به متن رمزنگاری اضافه می‌شود تا اطمینان حاصل شود که متن اصلی، کاملاً توسط گیرنده ذکر شده است. کد تأیید هویت پیام را می توان با کمک رمزهای متقارن ساخت. با این حال، رمزهای متقارن نیز می تواند برای مقاصد غیرانکار نیز استفاده شود.استاندارد ISO 13،888-2 را ببینید. برای ساخت توابع هش نیز از رمزهای بلوک استفاده می شود.

ساختار رمزهای متقارن[ویرایش]

ساختار بسیاری از رمزنگاری های بلوک مدرن توسط Horst Feistel ارائه شده است. ساختار هورست امکان ساخت توابع معکوس از روی دیگر توابع که خودشان معکوس نیستند را میدهد.

امنیت رمزنگاری متقارن[ویرایش]

رمزنگاری متقارن در طول تاریخ در معرض ابتلا به حملات شناخته شده ساده متن بوده است . ساختار دقیق توابع برای هر مرحله تا حد زیادی می تواند احتمال یک حمله موفق را کاهش دهد.

نسل های کلید[ویرایش]

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

منابع[ویرایش]

  • مشارکت‌کنندگان ویکی‌پدیا، «Symmetric-key algorithm»، ویکی‌پدیای انگلیسی، دانشنامهٔ آزاد (بازیابی در ۱۷ نوامبر ۲۰۰۸).