پایان نامه بررسی الگوریتم ‌های بهینه رمزنگاری مقاوم به‌منظور پیاده‌سازی روی FPGA

  • Code: # 31344

  • تعداد صفحات: 142
  • فرمت فایل: word
  • سال: 1393
  • مقطع: کارشناسی ارشد
  • دسته بندی: مهندسی برق
قیمت: ۳۵,۰۰۰ تومان
۶۵,۰۰۰ تومان
دانلود فایل
  • خلاصه
  • فهرست و منابع
  • خلاصه پایان نامه بررسی الگوریتم ‌های بهینه رمزنگاری مقاوم به‌منظور پیاده‌سازی روی FPGA

     پایان‌نامه برای دریافت درجه ی کارشناسی ارشد (‌M.Sc)

    رشته مهندسی برق –‌ گرایش الکترونیک

    چکیده

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

    موسسه ملی استاندارد و فناوری، مسابقه‌ای را برای بهبود بخشیدن الگوریتم‌های چکیده ساز رایج، آغاز کرد الگوریتم‌های چکیده ساز ارسالی به این مسابقه که SHA-3 نام‌گذاری شد، شامل 5 الگوریتم مقاوم که توانست به دور پایانی مسابقات راه یابد از طرفی الگوریتم JH در دور پایانی به‌عنوان الگوریتم دوم مسابقات معرفی شود لذا هدف این پایان‌نامه بررسی الگوریتم چکیده ساز JH به‌منظور پیاده‌سازی روی FPGA بوده است در این الگوریتم، مشاهدات به‌دست‌آمده شامل منابع واهی نیستند. این شبیه‌سازی‌ها نشان می‌دهند که عملکرد الگوریتم چکیده ساز JH به چه میزان توانسته است روی FPGA شبیه‌سازی و سنتز شود.

    کلیدواژه‌ها: رمزنگاری، تابع چکیده ساز، Cryptographic،Algorithm Hash Function .]

    فصل 1-                مروری بر مفاهیم اولیه رمزنگاری

     

     

    1-1-مقدمه

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

    1-2-  لزوم امنیت شبکه

    استفاده از شبکه‌های کامپیوتری و اینترنت، خطرات امنیتی متعددی را به همراه دارد. به همین دلیل انواع رمزها برای داده استفاده می‌شود تا امنیت داده در برقراری ارتباطات تضمین گردد [1].

    1-3- انواع حملات

    1-3-1-              تغییر اطلاعات

    در این نوع حمله فعال، اطلاعات در حین انتقال به مقصد موردحمله قرار می‌گیرد و جامعیت داده‌ها از دست می‌رود. حمله‌کننده با دریافت اطلاعات، آن‌ها را تغییر می‌دهد و یا آن‌ها را با اطلاعات دیگر جایگزین می‌کند. مقصد نیز این مسئله را تشخیص نداده و داده‌ها را استفاده می‌نماید. برای جلوگیری از این نوع حمله از توابع چکیده ساز[1] استفاده می‌شود [1].

    1-3-2-              جعل هویت

    در این نوع حمله فعال، حمله‌کننده خود را به‌عنوان یک کاربر مجاز به سامانه‌های محلی معرفی می‌کند و بدین ترتیب از سرویس‌های مختلف شبکه محلی استفاده می‌کند. برای جلوگیری از این نوع حملات و فراهم کردن احراز هویت کاربران و نرم‌افزارها از امضاء دیجیتال استفاده می‌شود. در این روش، حمله‌کنندگان از ارائه سرویس‌های یک موسسه جلوگیری می‌نمایند. راه‌اندازی این نوع حملات راحت است و اغلب از روش‌های جعل هویت و نیز ارسال مقادیر زیادی از سامانه‌های پروتکل اینترنت[2] انجام می‌گیرد. این حملات به‌اختصار DOS [3] نامیده می‌شود؛ و جزء حملات فعال هستند. با استفاده از دیواره آتش می‌توان این حملات را کاهش داد [1].

    1-3-3-              استراق سمع

       در این حمله نوع حمله غیرفعال[4]، اطلاعات تغییر نمی‌یابند ولی محرمانگی آن‌ها از دست می‌رود. اگر بخواهید اطلاعات را به متن عادی و رمز نشده به سامانه‌های راه دور ارسال کنید آنگاه ممکن است این اطلاعات توسط افراد غیرمجاز دریافت شوند. دستبرد اطلاعات ممکن است در مکان‌های مختلفی همانند شبکه‌های محلی، سوئیچ‌های انتقال داده‌ها و یا شبکه اینترنت انجام شود. هم‌اکنون نرم‌افزارهای مختلفی برای دریافت اطلاعات مختلف از روی شبکه محلی وجود دارد و ویروس‌ها و حمله‌کنندگان نیز می‌توانند اطلاعات انتقال‌یافته بر روی یک شبکه عمومی را دریافت کنند. برای جلوگیری از این مشکل امنیتی از فن‌های رمزنگاری متقارن و نامتقارن داده‌ها استفاده می‌شود [1].

    1-4- رمزنگاری داده‌ها

    رمزنگاری فرآیندی است که در طی آن، داده‌ها از فرم عادی خود خارج و به صورتی تبدیل می‌شوند که بدون داشتن اطلاعات لازم (کلید گشایی) خواندن آن‌ها تقریباً غیرممکن است؛ بنابراین در این روش با رمز نمودن داده‌ها از دسترسی افراد غیرمجاز به داده‌ها جلوگیری شده و محرمانگی داده به دست می‌آید. در این روش ابتدا در مبدأ عمل رمزنگاری انجام‌شده و سپس رمز شده داده‌ها به مقصد ارسال می‌گردند. حمله‌کننده‌ای که استراق سمع می‌کند و بسته‌های داده‌ها را در حین انتقال از شبکه دریافت می‌کند، رمز شده داده‌ها را به دست می‌آورد که برای او قابل‌استفاده نیست. دریافت‌کننده داده‌ها در مقصد هم داده رمز شده را دریافت می‌نماید ولی او به دلیل اینکه، اطلاعات رمزگشایی داده‌ها را دارد می‌تواند داده‌ها را رمزگشایی نموده و استفاده کند. برای رمزنگاری داده‌ها دو روش متقارن و نامتقارن وجود دارد. ایده رمزنگاری متقارن از سال‌های پیش وجود داشته است و مسئله جدیدی نیست ولی رمزنگاری نامتقارن از اصول ریاضی و الگوریتم‌های پیچیده‌ای استفاده می‌کند و روش جدیدی در رمزنگاری داده‌ها به شمار می‌آید [1].

    1-5- رمزنگاری متقارن داده‌ها

    در این روش رمزنگاری، ترکیبی از جابجایی و جایگزینی داده‌ها در مراحل متعدد انجام می‌شوند تا پیچیدگی لازم برای داده‌ها به وجود آید. همچنین برای انجام عملیات رمزنگاری از یک کلید مشترک و محرمانه بین فرستنده و گیرنده انجام می‌شود. در این روش داده در مبدأ با کلید مشترک، رمز شده و به مقصد ارسال می‌گردند و در مقصد نیز داده‌ها با کلید مشترک رمزگشایی می‌شوند. در رمزنگاری متقارن فرض بر این است که حمله‌کننده از الگوریتم رمزنگاری مطلع است و تنها بر محرمانگی کلید رمزنگاری مشترک تکیه می‌شود. به‌طورکلی هر چه طول کلید بیشتر باشد مدت‌زمان بیشتری برای شکستن داده‌ها صرف می‌گردد و امنیت بیشتری به دست می‌آید. با توجه به قدرت پردازش فعلی، انتخاب کلیدهای بیشتر از128 بیت مناسب به نظر می‌رسد. همچنین کلیدهای رمزنگاری مدتی پس از استفاده باید تعویض شوند و کلیدهای جدید حتی‌الامکان باید به‌صورت تصادفی انتخاب گردند تا حداکثر امنیت به دست آید. الگوریتم‌های رمزنگاری متقارن به 2 دسته الگوریتم‌های بلاکی[5] و جریانی و داده‌ها بیت به بیت رمزنگاری و یا رمزگشایی می‌شوند. الگوریتم‌های جریانی سریع‌تر از بلاکی هستند. الگوریتم‌های همانند  [6] DES، بلاکی و الگوریتم‌هایی همانند RCCL ، جریانی است البته لازم به ذکر است که رمزنگاری متقارن، احراز هویت را نیز فراهم می‌آورد. درصورتی‌که داده رمز شده‌ای دریافت شد با توجه به کلید مورداستفاده می‌توان از هویت شخص ارسال‌کننده داده نیز مطمئن شد زیرا این کلیدها محرمانه فرض می‌شوند. رمزنگاری متقارن از کارایی مطلوبی برخوردار است و تأخیر کمی را در عملیات رمزنگاری و رمزگشایی داده‌ها فراهم می‌آورد؛ بنابراین از آن می‌توان برای رمزنگاری حجم بزرگی از داده‌ها استفاده نمود. از این نوع رمزنگاری در پروتکل‌های امنیتی محیط باسیم و بی‌سیم به‌طور گسترده استفاده می‌شود. الگوریتم 3DES، DES، IDEA [7]، RC4 [8]و غیره از الگوریتم‌های متقارن می‌باشند [1].

     

    1-6- رمزنگاری نامتقارن داده‌ها

    رمزنگاری نامتقارن یا رمزنگاری کلید عمومی، بزرگ‌ترین و شاید تنهاترین انقلاب موجود در تاریخ رمزنگاری است. در این الگوریتم به‌جای جایگشت و جایگزینی داده‌ها، توابع ریاضی استفاده می‌شود و به‌جای یک کلید محرمانه مشترک، یک کلید عمومی و یک کلید خصوصی ایجاد و کلید عمومی در اختیار همه و کلید خصوصی تنها در دسترس کاربر قرار می‌گیرد. برای محرمانگی کلید خصوصی، رمز عبوری برای دسترسی پایگاه داده کلید خصوصی در نظر گرفته می‌شود. مفهوم رمزنگاری کلید عمومی، در پی تلاش برای حل دو مشکل توزیع کلید به روش امن و امضاء دیجیتال به وجود آمده و دارای دو خصوصیات مهم و اساسی زیر می‌باشند. 1- به‌طور محاسباتی محاسبه کلید رمزگشایی از کلید رمزنگاری غیرممکن است. 2- هر دو کلید عمومی و خصوصی را می‌توان برای رمزنگاری استفاده نمود. البته برای رمزگشایی باید کلید دیگر استفاده نمود. در این روش رمزنگاری، ابتدا کلید عمومی مقصد به روشی معتبری فراهم‌شده و سپس داده‌ها توسط کلید عمومی مقصد، رمزنگاری و به آن ارسال می‌گردند. حمله‌کننده بین مسیر مبدأ و مقصد می‌تواند کلید عمومی مقصد را به‌راحتی به دست آورد ولی با این کلید، قادر به رمزگشایی داده‌ها نخواهد بود. در مقصد، داده‌ها توسط کلید خصوصی، رمزگشایی و استفاده می‌شوند. البته عکس این روش محرمانگی داده‌ها را به وجود نمی‌آورد زیرا درصورتی‌که داده‌ها ابتدا توسط کلید خصوصی رمزنگاری شوند و سپس منتقل گردند چون همه افراد کلید عمومی را می‌دانند؛ بنابراین همه می‌توانند داده‌های رمز شده را رمزگشایی نمایند و محرمانگی داده‌ها از دست می‌رود. برای به دست آوردن کلید عمومی به روشی معتبر می‌توان از گواهی دیجیتال استفاده نمود. در مقایسه با رمزنگاری متقارن این روش از محاسبات پیچیده و زمان‌گیری استفاده می‌نماید و لذا برای رمزنگاری حجم زیادی از داده بکار نمی‌رود. اغلب از این نوع رمزنگاری، برای ارسال مقادیر کمی از داده‌ها کلیدهای رمزنگاری متقارن استفاده می‌شود. متداول‌ترین الگوریتم برای رمزنگاری، کلید عمومی الگوریتم  RSA[9] است [1].

    1-7- امضاء دیجیتال

    فن امضاء دیجیتال برای تأمین احراز هویت وعدم انکار بکار می‌رود. برای ایجاد امضاء دیجیتال باید از یک تابع هش و رمزنگاری کلید عمومی استفاده نماییم [1].

    1-8- تابع چکیده ساز[10]

    تابع چکیده ساز یا درهم‌ساز نقش اساسی در رمزنگاری نوین بازی می‌کند. این توابع معمولاً یک عنصر مهم از غالب روش‌های اعتبار سنجی و امضای دیجیتال می‌باشند [2].

    1-9- خصوصیات کلی توابع چکیده ساز

    توابع چکیده ساز، یک پیام را به‌عنوان ورودی گرفته و یک خروجی تولید می‌کنند که از آن با عنوان Hash-value، Hash-result، Hash code و یا برای سادگی Hash یاد می‌شود یا به‌طورکلی توابع چکیده ساز، داده‌ای با طول دلخواه را دریافت و خروجی با طول ثابت n بیت را به وجود می‌آورند [2].

     

                                               شکل 1-1: شمای کلی تابع Hash [2]

     

    1-10-     دسته‌بندی توابع چکیده ساز

    در بالاترین سطح توابع چکیده ساز ممکن است به دودسته تقسیم شوند:

    توابع چکیده ساز بدون کلید[11] که یک پارامتر ورودی پیام اصلی را می‌پذیرد.

    توابع چکیده ساز کلیددار که دو ورودی مجزا می‌پذیرند، یکی پیام اصلی و دیگری کلید محرمانه [2].

    1-11-      ویژگی‌های توابع چکیده ساز

    1-فشردگی Compression: تابع چکیده ساز یک ورودی x با طول بیت متناهی

    2-دلخواه را به یک خروجی دلخواه با طول بیت ثابت n نگاشت می‌دهد.

    3-سادگی محاسبه Ease Off Computation: با داشتن h و یک ورودی x، h(x) به‌سادگی محاسبه می‌شود [2].

    1-12-      دسته‌بندی توابع چکیده ساز ازنظر کاربرد:

    1-کدهای تشخیص تغییر MDCs[12]: این گروه همچنین به نام کدهای تشخیص دستگاهی MDC یا کدهای جامعیت پیام (MICs) نیز مشهورند. هدف از یک MDC به‌صورت غیررسمی مهیاکردن یک تصویر نماینده یا چکیده از پیام، به‌منظور برآوردن بعضی خواص اضافی است. هدف نهایی، تسهیل اطمینان از جامعیت داده، به همراه سازوکارهای اضافی موردنیاز با کاربرد خاص است. MDC ها یک زیر بخش از توابع چکیده ساز بدون کلید هستند و خودشان ممکن است به دسته‌های بیشتر دسته‌بندی شوند.

    2-توابع چکیده ساز یک‌طرفه OWHFS[13]: برای این دسته، یافتن یک ورودی که یک چکیده پیام از پیش تعیین‌شده باشد مشکل است.

    3-توابع چکیده ساز مقاوم در برابر تصادم CRHFS[14]: برای این دسته، دو ورودی مختلف که یک مقدار چکیده پیام را داشته باشند، مشکل است.

    4-کدهای اعتبار سنجی پیام MACS[15]: هدف از یک MAC به‌صورت غیررسمی تسهیل اطمینان یافتن هم از منبع یک پیام و هم از جامعیت آن بدون استفاده از هر سازوکار اضافی است. MAC ها در عمل دو پارامتر مجزا دارند، یک پیام ورودی و یک کلید محرمانه، آن‌ها یک بخش از توابع چکیده ساز کلیددار می‌باشند [2].

    تقسیم‌بندی کلی توابع چکیده ساز را می‌توان در شکل 2-1 مشاهده کرد که معمولاً بر اساس توابع چکیده ساز با کلید و توابع چکیده ساز بدون کلید تقسیم‌بندی می‌شوند که در توابع چکیده ساز بدون کلید دسته‌بندی متفاوت از توابع چکیده ساز با کلید است [2].

     

    شکل 2‑1: تقسیم‌بندی تابع چکیده ساز [2]

     

    کاربردهای دیگر توابع چکیده ساز بدون کلید

    تأیید آگاهی [16] : کسب اطمینان از یک آگاهی، بدون فاش شدن خودآگاهی، مانند سازوکار مورداستفاده برای کلمه‌ی عبور، همان‌طور که هست، درجایی ذخیره نمی‌گردد، بلکه تنها یک مقدار چکیده از آن نگهداری می‌شود که در صورت لزوم، با مقدار چکیده کلمه عبور واردشده توسط کاربر، مقایسه شود.

     

    اشتقاق کلید[17] : محاسبه‌ی دنباله‌ی کلیدهای جدید از کلید قبلی. یک مثال اولیه‌ی اشتقاق کلید در پایانه‌های Pop [18] می‌باشد، در اینجا یک نیاز مهم این است که مصالحه‌ی (فاش شدن) کلیدهای قبلی مبادله [19] ، نباید باعث مصالحه‌ی امنیت کلیدهای فعال فعلی شود [2].

    1-13-     خواص توابع چکیده ساز یک‌طرفه

    1-نابستگی[20] : بیت‌های ورودی و خروجی نباید وابستگی داشته باشند.

    2-مقاومت تصادم نزدیک[21] : باید یافتن هر دو ورودی x و x' که h(x) و (h(x' فقط در تعداد کمی از بیت‌ها متفاوت باشند، سخت باشد.

    3-مقاومت پیش تصویر جزئی[22] : باید بازیافت هر زیررشته به‌اندازه بازیافت همه ورودی‌ها مشکل باشد.

    4-مقاومت پیش تصویر[23] : اساساً برای هر خروجی از پیش مشخص‌شده، به‌صورت محاسباتی، یافتن هر ورودی که به آن خروجی کشیده شود غیرممکن است.

  • فهرست و منابع پایان نامه بررسی الگوریتم ‌های بهینه رمزنگاری مقاوم به‌منظور پیاده‌سازی روی FPGA

    فهرست:

    تقدیم به:

     

    پیشگاه مقدس بقیه ‌الله العظم امام زمان  روحی له الفداء

     

    تقدیم به:

     

    همسر وفرزند عزیزم که آرامش خویش را فدای آسایشم نمود

     

     

    تشکر و قدردانی

     

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

     

     

     

     

     

     

     

     

     

     دانشگاه آزاد اسلامی

    علوم وتحقیقات گیلان

     

    تعهد نامه اصالت رساله یا پایان نامه

     

    اینجانب بهرام شریفی مرجقل دانش آموخته مقطع کارشناسی ارشد ناپیوسته در رشته مهندسی برق و الکترونیک که در تاریخ 24/6/93  از پایان نامه خود تحت عنوان "بررسی الگوریتم‌های بهینه رمزنگاری مقاوم به‌منظور پیاده‌سازی روی  "FPGAبا کسب نمره 17 و درجه ....... دفاع نموده ام بدینوسیله متعهد می شوم:

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

    2) این  پایان نامه قبلاً برای دریافت هیچ مدرک تحصیلی (هم سطح، پائین تر یا بالاتر) در سایر دانشگاه ها و مؤسسات  آموزش عالی ارائه نشده است.

    3) چنانچه بعد از فراغت از تحصیل ، قصد استفاده و هرگونه بهره برداری اعم از چاپ کتاب، ثبت اختراع و...از این پایان نامه داشته باشم. از حوزه معاونت پژوهشی واحد مجوزهای مربوطه را اخذ نمایم.

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

     

     

    نام ونام خانوادگی : بهرام شریفی مرجقل

    ................................................................

    تاریخ وامضا       

     

     

     

     

     

     

     

    فهرست مطالب

     

     

     

    عنوان                                                                                              

    فهرست          ‌ح

    فهرست شکل ها ‌ل

    فهرست جدول‌ها ‌س

    چکیده           1

    فصل 1-   مروری بر مفاهیم اولیه رمزنگاری.. 3

    1-1-   مقدمه      3

    1-2-   لزوم امنیت شبکه. 3

    1-3-   انواع حملات... 3

    1-3-1-   تغییر اطلاعات   3

    1-3-2-   جعل هویت    4

    1-3-3-   استراق سمع  4

    1-4-   رمزنگاری داده‌ها 4

    1-5-   رمزنگاری متقارن داده‌ها 5

    1-6-   رمزنگاری نامتقارن داده‌ها 6

    1-7-   امضاء دیجیتال. 7

    1-8-   تابع چکیده ساز. 7

    1-9-   خصوصیات کلی توابع چکیده ساز. 7

    1-10- دسته‌بندی توابع چکیده ساز. 8

    1-11- ویژگی‌های توابع چکیده ساز. 8

    1-12- دسته‌بندی توابع چکیده ساز ازنظر کاربرد: 8

    1-13- خواص توابع چکیده ساز یک‌طرفه. 10

    1-14- توابع چکیده ساز مهم. 11

    1-15- امنیت هَش یا تابع چکیده ساز. 12

    فصل 2-   معرفی الگوریتم پایانی رقابت... 15

    مقدمه    15

    2-1-   تاریخچه 15

    2-2-   وضعیت دور دوم رقابت SHA-3. 16

    2-3-   بررسی و ارزیابی الگوریتم‌های چکیده ساز دور نیمه‌نهایی رقابت SHA-3. 17

    2-4-   بررسی الگوریتم چکیده ساز BLAKE. 17

    2-4-1-   ویژگی‌های BLAKE.. 18

    2-4-2-   ساختار تابع چکیده  ساز BLAKE.. 18

    2-4-3-   نتیجه: 19

    2-5-   بررسی الگوریتم چکیده ساز Skein. 19

    2-5-1-   ویژگی‌های Skein. 20

    2-5-2-   ساختار تابع چکیده ساز. 21

    2-5-3-   نتیجه. 21

    2-6-   بررسی چکیده ساز Keccak. 21

    2-6-1-   ویژگی‌های Keccak. 22

    2-6-2-   ساختار تابع چکیده ساز. 23

    2-6-3-   نتیجه. 25

    2-7-   بررسی الگوریتم چکیده ساز Grostl 25

    2-7-1-   ساختار تابع چکیده ساز. 25

    2-7-2-   ساختار تابع فشرده‌ساز Grostl 25

    2-7-3-   نتیجه. 28

    2-8-   بررسی الگوریتم چکیده ساز JH.. 28

    2-8-1-   معرفی الگوریتم JH.. 28

    2-8-2-   ساختار تابع فشرده‌ساز JH.. 28

    2-8-3-   آنالیز امنیت JH.. 29

    2-8-4-   مزیت JH 30

    2-8-5-   نتیجه. 30

    2-9-   نتیجه‌گیری.. 30

    2-10- دلایل انتخاب الگوریتم JH  و ارزیابی آن. 31

    فصل 3-   الگوریتم JH.. 33

    مقدمه       33

    3-1-   معرفی الگوریتم چکیده  ساز JH.. 33

    3-2-   نماد ریاضی و پارامترهای به کار گرفته‌شده در تابع چکیده ساز JH.. 37

    3-3-   لایه S-box تابع چکیده ساز JH.. 38

    3-4-   تبدیل خطی لایه L. 39

    3-5-   جایگشت Pd. 40

    3-6-   جایگشت 𝛑d. 40

    3-7-   جایگشت P´d. 41

    3-8-   جایگشت ..... 41

    3-9-   رابطه جایگشت Pd. 41

    3-10- تابع دور Rd. 42

    3-11- گروه‌بندی Grouping. 43

    3-12- Grouping و De-grouping برای محاسبه دور چرخش: 43

    3-13- چرخش ثابت روی تابع Ed. 45

    3-14- ساختار تابع فشرده‌ساز Fd. 45

    3-15- مروری بر FPGA.. 47

    3-15-1- روش های مختلف طراحی با استفاده از FPGA.. 49

    3-15-2- مراحل مختلف انجام یک پروژه FPGA به صورت زیر می باشد. 51

    3-15-3- نگاهی بر معماری FPGA های امروزی.. 51

    3-15-4- سلول های منطقی.. 51

    3-15-5- منابع اتصالات داخلی.. 52

    3-15-6- منابع حافظه    52

    3-15-7- نتیجه گیری    53

    فصل 4-   شبیه‌سازی و سنتز. 55

    مقدمه:  55

    4-1-   معماری مورد استفاده در شبیه سازJH.. 55

    4-1-1-   تجزیه و تحلیل شکل کلی طرح اصلی.. 56

    4-1-2-   معماری واجزای بلوک برای 42 دور. 58

    4-1-3-   ماشین حالت (FINITE STATE MACHINE) 59

    4-2-   بررسی الگوریتم شبیه‌سازی برای JH-224 بیتی.. 61

    4-2-1-   بلوک (Data unit)Top module. 61

    4-2-2-   بلوک مدار Control unit 62

    4-2-3-   مدار کنترل    63

    4-2-4-   مدار حالت و بلوک FSM Controller 64

    4-2-5-   رابط ورودی و خروجیi/o. 67

    4-2-6-   ارتباط بین ورودی و خروجی مدار. 68

    4-3-   برنامه شبیه ساز ISE. 69

    4-3-1-   برنامه شبیه ساز Implemention. 69

    مرحله به مرحله هریک از بلوک ها نشان داده شده است. 69

    4-3-2-   برنامه شبیه ساز سیمیلاتور(Simulatior) 72

    4-4-   نتیجه‌گیری.. 89

    فصل 5- نتیجه‌گیری و پیشنهادها 91

    مراجع            94

    پیوست 1: کدهای VHDL. 98

    پیوست 2: واژه نامه فارسی به انگلیسی.. 127

    پیوست 3: واژه نامه انگلیسی به فارسی.. 129

    Abstract        130

    منبع:

    مراجع 

    [1] ذاکرالحسینی، علی.1387. امنیت داده‌ها.  تهران : موسسه علمی فرهنگی - نص   

    [2] شیخ زادگان، جواد. 1389. رمزشناسی مقدماتی. تهران : موسسه فرهنگی - هنری پردازش علائم 

     

    [3]  http://www.isc.org.ir/ShowPage.asp/monadi

     

    [4] The Second Cryptographic Hash Workshop, August 24-25, 2006, Santa Barbara, CA, http://csrc.nist.gov/groups/ST/hash/second_workshop.html

     

    [5] Announcing the Development of New Hash Algorithm(s) for the Revision ofFederal Information Processing Standard (FIPS) 180–2, Secure Hash Standard, Federal Register / Vol. 72, No. 14 / Tuesday, January 23, 2007 / Notices 2861,         

     http://csrc.nist.gov/groups/ST/hash/documents/FR_Notice_Jan07.pdf

     

    [6] http://csrc.nist.gov/groups/ST/hash/sha-3/Round2/submissions_rnd2.html

    WWW.nist.gov/hash-competition

                                                                                                                         

    [7] Bos. J. W, Stefan. D, March 2010, “Performance Analysis of the SHA-3 Candidates on     Exot ic Multi-Core Architectures”, Cryptographic Hardware and Embedded Systems, vol. 6225 of LNCS, pp. 279-293 Springer, www.springerlink.com/content/9p48014n967455r7//                                     //http:

     

    [8] Aumasson. J. P, December 2010, “The Skein Hash Function Family SHA-3 proposal BLAKE”, Submission to NIST Round 3, Switzerland, http://131002.net/blake/

     

    [9] http://cr.yp.to/chacha.html

      

    [10] Kavun . E. B, Yalcin. T, March 2012, “On the Suitability of SHA-3 Finalists for Lightweight Applications” 6th Chair of Embedded Security,csrc.nist.gov, Ruhr University Bochum Germany

     

    [11] Ferguson. N, Oct 2010, “The Skein Hash Function Family - Schneier on Security”, the NIST hash function competition, University in Weimar Germany

     

    [12] Berton. Guido, Feb  2013, “The Keccak Team made a presentation at NIST sha-3”, National Institute of Standards and Technology, University of Rochester Medical Center New York

     

    [13] Namin. A. H, June 2010, “FPGA Implementation of CubeHash, Grøstel, JH, and Grøstel, JH, and SHAvite-3 hash”,8th NEWCAS Conference IEEE International, Department of Electrical and Computer Engineering University of Waterloo Canada

     

    [14] Murvay. P. S, Groza. B, September 2011 “Performance improvements for SHA-3 finalists by exploiting microcontroller on-chip parallelism”, 6th International Conference on Risks and Security of Internet and Systems, crisis, pp.1-7, IEEE

     

    [15] Wu. H, January 2011, “The Hash Function JH”, One of the five SHA-3 candidates in the final round of the NISThash competition, Nanyang Technological University Singapore

    http://www3.ntu.edu.sg/home/wuhj/research/jh

     

    [16] Athanasiou. G, May 2013,“High-performance FPGA implementations of the cryptographic hash function JH”, IET Comput. Digit. Tech, Vol. 7, Iss. 1, pp. 29–40, IEEE

     

    [17] Wu.H, Feb2009,“The Hash Function JH”, Cryptography NIST hash function competition, Institute for Infocomm Research, Nanyang Technological University Singapore

    http://csrc.nist.gov/groups/ST/hash/sha-3/Round1/Feb2009/documents/jh_nist.pdf

       

    [18] Wu.H, june 2012,“ Hash Function JH and the NIST SHA3 Hash Competition”, 10th International Conference on Applied Cryptography and Network Security, Presented ACNS, Nanyang Technological University Singapore

     

    [19] Adamcek. P, Nov 2012,“ A comparison of local reduction and SAT-solver based algebraic cryptanalysis of JH and Keccak”, Tatra Mountains Mathematical Publications, Vol. 53,1-20, Slovak Academy of Sciences

     

    [20] Athanasiou. G. S, May 2013,“Methodologies for deriving hardware architectures and VLSI implementations for cryptographic embedded systems”, Dissertation for the degree of PhD, Department of Electrical and Computer Engineering Faculty of Engineering, University of Patras Greece

     

    [21] Tehranipoor. M, Sep 2011,“Introduction to Hardware Security and Trust”, Springer New York Dordrecht Heidelberg London, University Stanford

     

    [22] http://www.chesworkshop.org

     

    [23] Maxfield, M., 2004, The Design Warrior’s Guide to FPGAs, Burlington, MA 01803, USA, Mentor Graphics Corporation and Xilinx, Inc, Elsevier.

     

    [24]  http://www.Xilinx.com

     

    [25] Amira, A., Bouridane, A., Milligan, P. and Roula., M., 2001,  novel FPGA Implementations of walsh-hadamard transforms for signal processing, IEE proceedings on vision, Image and signal processing, vol. 198, no. 6, pp: 377-383.

     

    [26] Rouvroy, G., Standaert, F.X., Quisquater, J.J. and Legat, J.D., 2003, Efficient uses of FPGAs for implementations of DES and its experimental linear cryptanalysis, IEEE Transactions on computers, vol. 52, no. 4, pp: 473-482.

     

    [27] Pramstaller, N. and Wolkerstorfer, J., 2004, A universal and efficient AES Co-processor for field programmable logic arrays, In 14th International Conference on Field Programmable Logic and its Applications (FPL), Lecture Notes in computer science, pp: 565-574, Springer verlag.

     

    [28] Bisdounis, L., Dre, C., Blionas, S., Metafas, D., Tatsaki, A., Ieromnimon, F., Macii, E., Rouzet, P., Zafalon, R. and Benini.L., 2004, Low-power System-on-chip architecture for wireless lans, IEE Proceedings on computers and Digital Techniques, vol. 151, no. 1, pp: 2-15

     

    [29] Hadzic, I. and Smith, J.M., 2003, Balancing performance and flexibility with hardware support for network architectures, ACM Transactions on computer systems, vol. 21, no. 4, pp: 375-411.

     

    [30] Tahir, M.A., Bouridane, A. and Kurugollu, F., 2004, An FPGA based coprocessor for the classification of tissue patterns in prostatic cancer, In 14th International Conference on Field Programmable Logic and its Applications (FPL), Lecture Notes in computer science, pp: 771-780, Springer verlag.

     

    [31] Miller, N.L. and Quigley, S.F., 1998, A Reconfigurable Integrated Circuit For High Performance Computer Arithmetic, Digital Systems & Vision Processing Group, Edgbaston, Birmingham, IEEE.

     

    [32] Tahir, M.A., Bouridane, A. and Kurugollu, F., 2005, An FPGA Based Coprocessor for GLCM and Haralick Texture Features and their Application in prostate cancer classification, Analog Integrated circuits and signal processing, vol. 43, pp: 205-215.

     

    [33] Rushton. A., 1998, VHDL for Logic Synthesis, John Wiley & Sons, New York.

     

    [34] Xilinx, 2010, Powerpc 405 processor block reference guide, ug018 (V 2.4) ed.

     

    [35] http://www.altera.com

     

    [36] http:// www.actel.com

     

    [37] Battezzati, N., Sterpone, L. and Violante, M., 2011, Reconfigurable Field Programmable Gate Arrays for Mission-critical Applications.

     

    [38] U.S. Department of Commerce,”Secure Hash Standard”, NIST FIPS 180-3,  October

     

    [39] “Understanding Cryptography: A Textbook for Students and Practitioners”,  Christof Paar , Jan Pelzl, Bart Preneel, 2010

     

    [40] “Xilinx Power Tools Tutorial “, XILINX

     

    [41] “ISE In-Depth Tutorial”, XILINX

     

    [42] “ISE Simulator (ISim) In-Depth Tutorial”, XILINX

     

    [43]  http://www.1-core.com/library/digital/fpga-logic-cells

     

    [44] “Virtex-5 FPGA Family: Data Sheet”, XILINX

     

    [45]  “Spartan-3 FPGA Family: Data Sheet”, XILINX

  • ثبت سفارش
    عنوان محصول
    قیمت