توضیحات
پیاده سازی یک سیستم رمزنگاری متقارن (AES) با شبکه های عصبی در متلب
اجرای پروژه:
برای اجرای پروژه متلب فایل Main.m را در متلب اجرا می کنید. پس از پایان پروژه خروجی ها نمایش داده می شوند. ابتدا تعدادی متن تصادفی تولید می شوند و این متن ها با استفاده از AES رمز نگاری می شوند و پس از آن دو شبکه عصبی برای رمزنگاری و رمزگشایی آموزش داده می شوند. شبکه های به کار رفته از نوع MLP سه لایه با اتصال کامل هستند که با استفاده از SGD آموزش داده می شوند. پس از انجام مراحل خطای بیتی در تست و آموزش در ترمینال نمایش داده می شود.
فایل ها:
Main.m اسکریپت اصلی برنامه است.
AES.m تابع پیاده سازی AES است که برای تولید داده های آموزشی ANN استفاده می شود.
ANN.m تابع پیاده سازی ANN است.
M_sys جدول حاوی ماتریس های مورد نیاز AES است.
پارامترها:
متغیر های اولیه در ابتدای فایل Main مقدار دهی می شوند.
ANN_h1_size : تعداد نرون های لایه اولیه شبکه عصبی است.
ANN_h2_size: تعداد نرون های لایه دوم شبکه عصبی است.
ANN_eta : نرخ اولیه یادگیری است.
ANN_Miter : حداکثر تعداد حلقه یادگیری است.
Nos: تعداد متن های تصادفی یادگیری است.
Not: تعداد متن های تصادفی تست است.
Key: رمز مورد استفاده در رمز نگاری است.
ساختار روش:
با استفاده از رمز و متن اولیه و روش AES تعدادی متن رمزنگاری شده تولید می شوند این متن ها به عنوان خروجی مورد انتظار به شبکه عصبی داده می شوند و شبکه با استفاده از آن ها آموزش داده می شود. سپس متن رمز نگاری شده به عنوان ورودی و متن اولیه به عنوان خروجی به شبکه دوم داده می شود و آن برای رمز گشایی آموزش می بیند. ساختار AES به کار رفته فقط روی متن هایی با طول 16 کاراکتر کار می کند پس شبکه هم 16 ورودی و 16 خروجی دارد. تابع فعالیت لایه های پنهان از نوع سیگموئید و لایه خروجی خطی است.
خروجی نمونه:
میزان RMSE در رمزگزاری:
در این نمودار خطای RMSE در برابر آموزش نشان داده می شود.
میزان RMSE رمزگشایی:
نکات قابل ذکر:
- فایل های پروژه پیاده سازی یک سیستم رمزنگاری متقارن (AES) با شبکه های عصبی در متلب به صورت کامل پس از خرید فایل بلافاصله در اختیار شما قرار خواهد گرفت.
سفارش پروژه مشابه
درصورتیکه این پروژه دقیقا مطابق خواسته شما نمی باشد، با کلیک بر روی کلید زیر پروژه دلخواه خود را سفارش دهید.
دیدگاهها
هیچ دیدگاهی برای این محصول نوشته نشده است.