در این بخش سورس کد الگوریتم رمزگذاری DES در متلب قرار داده شده است. استاندارد رمزنگاری دیتا Data Encryption StandardDES پراستفاده ترین روش رمزنگاری، بر مبنای استاندارد رمزنگاری دیتا (DES) قرار دارد. رمزنگاری Encryption و رمزگشایی Decryption اصلی ترین بحث در این پروژه می باشد. سورس کد الگوریتم در متلب به دو صورت در اختیار شما قرار می گیرد که یکی بر اساس طول کلید متغیر و داده ها بصورت باینری رمز گذاری می شوند و در نوع دوم طول کلید بصورت ثابت 64 بیتی و بصورت Hex هگزا دسیمال است. همچنین این پروژه دارای یک فایل توضیح الگوریتم DES در 13 صفحه و بصورت PDF می باشد. در در ادامه توضیحات کلی از الگوریتم و پروژه بیان می شود.

الگوریتم رمزگذاری DES

الگوریتم DES جزو الگوریتم های رمزنگاری متقارن است. ساده ترین الگوریتم های بکار رفته برای رمزگذاری متقارن، رمزهای قالبی هستند. یک رمز قالبی، متن ساده ورودی را در قالب بلوک هایی با اندازه ثابت پردازش کرده و یک بلوک متن رمز شده با همان اندازه را، برای هر بلوک متن ساده تولید می کند. استاندارد رمزنگاری دیتا Data Encryption Standard – DES پراستفاده ترین روش رمزنگاری، بر مبنای استاندارد رمزنگاری دیتا (DES) قرار دارد که در سال ۱۹۷۷ توسط دفتر ملی استانداردها در آمریکا که امروز مؤسسه ملی استانداردها و تکنولوژی (NIST) خوانده می شود، تحت عنوان استاندارد فدرال پردازش اطلاعات ۴۶ (FIP PUB46) پذیرفته شد. از خود الگوریتم، با نام الگوریتم رمزنگاری دیتا (DEA) یاد می شود.

در الگوریتم DES متن ساده دارای طول ۶۴ بیت بوده و طول کلید ۵۶ بیت است، متون ساده طویل تر در بلوک های ۶۴ بیتی مورد پردازش قرار می گیرند. ساختار الگوریتم DES تقریبا همان ساختار شبکه Feistel با کمی تغییرات است. ۱۶ دور پردازش وجود دارد؛ از کلید اولیه ۵۴ بیتی، شانزده زیر کلید تولید می شود که هر کدام در یک دور پردازش مورد استفاده قرار می گیرند. نحوه رمزگشایی با الگوریتم DES ضرورتا شبیه نحوه رمزنگاری با آن است. قاعده چنین است: متن رمز شده را به عنوان ورودی الگوریتم DES بکار برده ولی از زیر کلیدها با نظم معکوس استفاده کنید. یعنی در اولین تکرار کلید K16 در دومین تکرار کلید K15، و بهمین نحو جلو رفته و در شانزدهمین و آخرین تکرار کلید K1 را بکار برید.

سورس کد الگوریتم رمزگذاری DES در متلب

همانطور که در ابتدا هم توضیح داده شد. سورس کد الگوریتم در متلب به دو صورت در اختیار شما قرار می گیرد که یکی بر اساس طول کلید متغیر و داده ها بصورت باینری رمز گذاری می شوند و در نوع دوم طول کلید بصورت ثابت 64 بیتی و بصورت Hex هگزا دسیمال است. سورس کد ها با استفاده از محیط گرافیکی متلب برنامه نویسی شده است. محتویات کدها در هر دو پروژه بصورت زیر است.

محتویات پروژه 1

  • Main_DES.m: فایل اصلی برنامه برای اجرا این فایل است.
  • encrypt.m: تابع استفاده شده برای رمز نگاری است.
  • decrypt.m: تابع استفاده شده برای رمزگشایی است.

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

محتویات پروژه 2

  • Main_DES.m: فایل اصلی برنامه برای اجرا این فایل است.
  • des.m: تابع اصلی الگوریتم برای فراخوانی سایر توابع است.
  • check_key.m: چک کردن اندازه کلید و نوع ورودی با این تابع انجام می شود.
  • decrypt.m: تابع استفاده شده برای رمزگشایی است.
  • encrypt.m: تابع استفاده شده برای رمز نگاری است.
  • gerkey.m: تابع استفاده شده برای ایجاد کلید است.
  • hexatodesimal.m: تبدیل به هگزادسیمال توسط این تابع انجام می شود.
  • mr.m: تابع ایجاد M است.
  • rebit.m: تابع ایجاد rebit است.
  • sbox.m: تابع ایجاد Substitution boxes است.
  • str2bin.m: تبدیل رشته به باینری توسط این تابع انجام می شود.

تصاویر پروژه

الگوریتم رمزگذاری DES در متلب

 

الگوریتم رمزگذاری DES در متلب

درباره محصول

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

1 دیدگاه برای الگوریتم رمزگذاری DES در متلب

  1. امین جلیل زاده

    نظرات و پیشنهادات خود را با ما در میان بگذارید.

دیدگاه خود را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *