رمز قالبی: تفاوت میان نسخهها
بدون خلاصۀ ویرایش |
بدون خلاصۀ ویرایش |
||
خط ۲۴: | خط ۲۴: | ||
اين ساختار از دو اصل در هم پيچيدگي( 2)و انتشار( 3) شانون تبعيت ميكند . با استفاده از در هم پيچيدگي،رابطه بين بيتهاي كليد و بيتهاي متن رمزشده، غيرخطي و پيچيده ميگردد. با استفاده از انتشار، [[افزونگي]] موجود در متن اصلي پس از رمزكردن در متن رمز شده پخش ميشود. |
اين ساختار از دو اصل در هم پيچيدگي( 2)و انتشار( 3) شانون تبعيت ميكند . با استفاده از در هم پيچيدگي،رابطه بين بيتهاي كليد و بيتهاي متن رمزشده، غيرخطي و پيچيده ميگردد. با استفاده از انتشار، [[افزونگي]] موجود در متن اصلي پس از رمزكردن در متن رمز شده پخش ميشود. |
||
در اين ساختار از شبكه هاي جابجايي- جانشيني بصورت متوالي در چند دور استفاده ميگردد. در هر دور، بیتهای کلید دور با بیتهای متن اصلی XOR میشود. همچنین S_BOXها بیتهای یک بلوک از متن اصلی را با بیتهای دیگر جایگزین کرده P_BOXها بیتهای خروجی از S_BOXهای یک دور را با یکدیگر جابجا می کنند. درواقع درهمپیچیدگی توسط S_BOX و انتشار توسط P_BOX انجام میگیرد. در دور آخر جابجایی بیتی صورت نمیگیرد. |
در اين ساختار از شبكه هاي جابجايي- جانشيني بصورت متوالي در چند دور استفاده ميگردد. در هر دور، بیتهای کلید دور با بیتهای متن اصلی XOR میشود. همچنین S_BOXها بیتهای یک بلوک از متن اصلی را با بیتهای دیگر جایگزین کرده P_BOXها بیتهای خروجی از S_BOXهای یک دور را با یکدیگر جابجا می کنند. درواقع درهمپیچیدگی توسط S_BOX و انتشار توسط P_BOX انجام میگیرد. در دور آخر جابجایی بیتی صورت نمیگیرد.نحوه رمزگشایی نیز ماندد رمزگذاری است با این تفاوت که در رمزگشایی نحوه اعمال زیرکلید برعکس رمزگذاری است. |
||
اگر يک بيت از متن اصلی تغيير کند، بواسطه S_BOXها چندين بيت از خروجی تغيير خواهد نمود. سپس اين تغييرات توسط P_BOXها در S_BOXهای بعدی منتشر خواهد شد. در يک سيستم رمز بلوکی خوب، P_BOXها بيتهای مربوط به خروجی يک S_BOX را بطور کامل در S_BOXهای بعدی پراکنده میسازد. بدين ترتيب با تغيير يک بيت از متن اصلی، احتمال اين که يک بيت خاص از متن رمزشده تغيير کند، 0.5 است. به اين خاصيت، خاصيت بهمنی میگويند. |
|||
==منابع== |
==منابع== |
نسخهٔ ۴ دسامبر ۲۰۱۱، ساعت ۲۰:۴۵
رمز قالبی نوعی رمز کليد متقارن است که در آن ابتدا بيتهای متن اصلی به بلوکهايی مجزا تقسيمبندی میشود، سپس الگوريتم رمزگذاری روی هر بلوک اعمال میگردد. طبق تعريف رياضی، رمز قالبی تابعی است که n بيت متن اصلی را تحت کنترل کليد K، به n بيت متن رمزشده تبديل میکند و نيز n بيت متـن رمزشده را تحت کنترل کليـد K، به n بيت متـن اصلی تبديل میکند . قالبهای متن اصلی و متن رمزشده تعداد بيت یکسانی دارند. اندازه قالب را با n يا b نمایش میدهند، که همان تعداد بيتهای آن قالب است.
تابع رمزنگاری برای قالبهای n بيتی متن رمزشده، و قالبهای n بيتی متن اصلی همراه با کليد ثابت(k)، يک تابع يک به يک و پوشا است. یعنی اگر تابع رمزگذاری(E) را تحت کنترل کليد (k) به يک قالب از متن اصلی(M) اعمال کنيم، يک قالب از متن رمزشده(c) بدست میآيد. حال اگر تابع رمزگشایی(D) را تحت کنترل همان کليد(k) به اين قالب متن رمز شده(c) اعمال کنيم، متن اصلی(M) دوباره بازيابی میشود:
E(D(M)) = M.
همچنين اگر تابع رمزگشایی(D) را تحت کنترل کليد (k) به يک قالب از متن رمزشده(C) اعمال کنيم، يک قالب از متن اصلی(M) بدست میآيد. حال اگر تابع رمزگذاری(E) را تحت کنترل همان کليد(k) به اين قالب متن اصلی(M) اعمال کنيم، متن رمزشده(C) دوباره بازيابی میشود:
D(E(C)) = C.[۱]
ساختارهاي مختلف رمزهاي بلوكي
رمزهاي بلوكي، دو ساختار كلي دارند:
ساختار مبتني بر شبكه فيستل: مانند رمز DES.
ساختار مبتني بر شبكه جابجايي- جانشيني: مانند رمز AES.
البته همه رمزهاي بلوكي لزوماً از اين دو ساختار تبعيت نميكنند، بلكه رمزهاي بلوكي ديگري نيز هستند كه ساختارهاي منحصر بفردي دارند؛ مانند الگوریتم رمز Keeloq که رمز بلوکی مبتنی بر ساختار NLFSR (شیفترحیسترهای غیرخطی) است. [۲]
ساختار مبتني بر شبكه جابجايي - جانشيني
اين ساختار از دو اصل در هم پيچيدگي( 2)و انتشار( 3) شانون تبعيت ميكند . با استفاده از در هم پيچيدگي،رابطه بين بيتهاي كليد و بيتهاي متن رمزشده، غيرخطي و پيچيده ميگردد. با استفاده از انتشار، افزونگي موجود در متن اصلي پس از رمزكردن در متن رمز شده پخش ميشود.
در اين ساختار از شبكه هاي جابجايي- جانشيني بصورت متوالي در چند دور استفاده ميگردد. در هر دور، بیتهای کلید دور با بیتهای متن اصلی XOR میشود. همچنین S_BOXها بیتهای یک بلوک از متن اصلی را با بیتهای دیگر جایگزین کرده P_BOXها بیتهای خروجی از S_BOXهای یک دور را با یکدیگر جابجا می کنند. درواقع درهمپیچیدگی توسط S_BOX و انتشار توسط P_BOX انجام میگیرد. در دور آخر جابجایی بیتی صورت نمیگیرد.نحوه رمزگشایی نیز ماندد رمزگذاری است با این تفاوت که در رمزگشایی نحوه اعمال زیرکلید برعکس رمزگذاری است.
اگر يک بيت از متن اصلی تغيير کند، بواسطه S_BOXها چندين بيت از خروجی تغيير خواهد نمود. سپس اين تغييرات توسط P_BOXها در S_BOXهای بعدی منتشر خواهد شد. در يک سيستم رمز بلوکی خوب، P_BOXها بيتهای مربوط به خروجی يک S_BOX را بطور کامل در S_BOXهای بعدی پراکنده میسازد. بدين ترتيب با تغيير يک بيت از متن اصلی، احتمال اين که يک بيت خاص از متن رمزشده تغيير کند، 0.5 است. به اين خاصيت، خاصيت بهمنی میگويند.
منابع
- ↑ A. Menezes, P. van Oorschot and S. Vanstone, “Handbook of Applied Cryptography”, 1997,PP 191-282. http://www.cacr.math.uwaterloo.ca/hac
- ↑ sidechannelattack