Artificial Intelligence - هوش مصنوعی  
انجمن را در گوگل محبوب کنيد :

بازگشت   Artificial Intelligence - هوش مصنوعی > پردازش تصویر > پردازش تصوير(Image Processing) > رمزنگاری تصویر (Image Encryption)


 
تبليغات سايت
Iranian Association for the Advancement of Artificial Intelligence
 
 
LinkBack ابزارهاي تاپيک نحوه نمايش
قديمي ۰۳-۱۳-۱۳۹۳, ۰۹:۰۹ بعد از ظهر   #14 (لینک دائم)
عضو فوق فعال
 
آواتار zeyton
 
تاريخ عضويت: تير ۱۳۹۰
محل سكونت: همه جای ایران سرای من است..
پست ها: 26
تشكرها: 4
21 تشكر در 17 پست
My Mood: Mehrabon
Post مبانی رمزنگاری (قسمت سیزدهم)

رمزنگاری AES:
DES قربانی حمایت دولت فدرال آمریکا شد. NIST نخواست که تجربه ناموفق DES را تکرار کند. بنابراین رقابتی چند مرحله ای از ژانویه 1977 تا نوامبر 2001 ترتیب داد تا استاندارد جدیدی برای رمزنگاری از بین روش هایی که توسط شخصیتهای حقیقی پیشنهاد شده اند، انتخاب شود و هر گونه شائبه دخالت در فرآیند طراحی و وجود (Backdoor) را از بین ببرد.
پس از طی مراحل چندگانه این رقابت:
دو جوان بلژیکی Rijmen و Daemen پیروز این رقابت شدند.
الگوریتم این دو توسط NIST استاندارد سازی و در سند FIPS 197 تحت نام AES (Advanced Encryption Standard ) عرضه شد. این الگوریتم در ابتدا Rijndael نامیده شد. این روش نه تنها DES را که الگوریتمهای دیگری مثل RC4 را نیز به حاشیه رانده است.

دلایل شگفتی سازی روش رمزنگاری Rijndael در دنیای رمزنگاری کلید متقارن :

1) عدم پیروی این روش از الگوی سنتی روشهای فیستلی و مبتنی بر حالت خاصی از «میدان های گالوا» (Galios Field ) می باشد.
2) انتخاب این روش بعنوان استاندارد دولت فدرال آمریکا در فضائی آزاد و بدون اعمال نفوذ عوامل جاسوسی یا امنیتی ایالات متحده و ثبت تحت قوانین غیر انحصاری و لذا بهره برداری آزاد از آن در محصولات مختلف
3) امنیت بسیار بالا، سرعت زیاد، پیاده سازی ساده، فضای حافظه مورد نیاز کم و قابلیت انعطاف بالا

اختلاف بين Rijndael و AES :

1) در Rijndael، طول کلید و طول بلوک داده می تواند 128، 192 و 256 بیت باشند لذا می توان گفت که Rijndael دارای 9 انتخاب متفاوت برای رمزنگاری اطلاعات است.
2) در AES طول بلوک داده صرفاً باید 128 بیتی (معادل 4 کلمه 32 بیتی) باشد ولی طول کلید را از بین یکی از مقادیر 128، 192 و 256 بیتی انتخاب می کنند بدین ترتیب AES کلاً دارای سه انتخاب است.
این پارامترها باید به الگوریتم رمزنگاری وارد شوند:
Nb: طول بلوک داده ورودی (در AES هميشه 4 است.)
Nk: طول کليد (4 ، 6 يا 8)
Nr : تعداد دورهای رمزنگاری( به طول کليد وابسته است)


بلوک داده و کليد طبق الگوی شکل زير در ماتريسی با 4 سطر ذخيره می شود و عمليات پردازش بر روی ستون های 4 بايتی انجام می گيرد.


بررسی شبه کد AES برای حالت خاص AES-128:


تابع رمزنگار rijndael دارای 3 آرگومان است:
1) plaintext: آرايه ای به طول 16بايت حاوی داده های رمز نشده اصلی
2) Ciphertext: آرايه ای به طول 16 بايت برای برگرداندن معادل رمزنگاری شده ی داده های ورودی
3) Key : آرايه ای به طول 16 بايت حاوی کليد رمزنگاری
متغير دو بعدی state يک آرايه 4*4 است که داده های ورودی درون آن منتقل و پردازش ها بر روی آن انجام می گیرد. (متغير حالت)
متغير سه بعدی rk دارای 11 عنصر است، که هر عنصر يک کليد است. هر عنصر آن خود یک ماتریس 4×4 است بنابراین rk[0] تا rk[10] همگی ماتریس هائی هستند که باید در هر دور از برنامه با «متغیر حالت» XOR شوند.
فقط یک شاه کلید 16 بایتی وجود دارد مابقی ده کلید فرعی، طبق الگوریتم نسبتاً پیچیده ای از روی شاه کلید اصلی تولید می شود.

اولین اختلاف AES با DES:
DESبر روی بیت ها کار می کند و AES بر روی کلمات 32 بیتی

متغیر سه بعدی rk:


1) در ابتدای برنامه با فراخوانی تابع() expand-key، شاه کلید (یعنی متغیر key) به یازده کلید فرعی، توسعه داده می شود و درون متغیر rk قرار می گیرد تا در برنامه از آنها استفاده شود.
2) در مرحله بعدی ،متن اصلی به درون آرایه state منتقل می شود تا در ده دور متوالی پردازش شود. عمل کپی داده ها به درون آرایه state باید به صورت ستونی انجام گیرد: یعنی چهار بایت اول در ستون اول، چهار بایت دوم در ستون دوم و...... شماره گذاری سطر ها و ستونها از صفر آغاز می شود.
3) قبل از شروع حلقه تکرار،rk[0] با آرایه state، بایت به بایت XOR می شود.
__________________

هرگاه خداوند تو را به لبه پرتگاه هدایت کرد به او اعتماد کن،
زیرا یا تو را از پشت میگیرد
یا به تو پرواز را می آموزد.

zeyton آفلاين است   پاسخ با نقل قول
 

« - | - »


كاربران در حال ديدن تاپيک: 1 (0 عضو و 1 مهمان)
 

قوانين ارسال
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is فعال
شکلکها فعال است
كد [IMG] فعال است
كدهاي HTML غير فعال است
Trackbacks are فعال
Pingbacks are فعال
Refbacks are فعال




زمان محلي شما با تنظيم GMT +3.5 هم اکنون ۰۷:۵۱ قبل از ظهر ميباشد.


Powered by vBulletin® Version 3.8.3
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Search Engine Friendly URLs by vBSEO 3.1.0 ©2007, Crawlability, Inc.

Teach and Learn at Hexib | Sponsored by www.Syavash.com and Product In Review

استفاده از مطالب انجمن در سایر سایت ها، تنها با ذکر انجمن هوش مصنوعي به عنوان منبع و لینک مستقیم به خود مطلب مجاز است

Inactive Reminders By Icora Web Design