فهرست:
تقدیم به:
پیشگاه مقدس بقیه الله العظم امام زمان روحی له الفداء
تقدیم به:
همسر وفرزند عزیزم که آرامش خویش را فدای آسایشم نمود
تشکر و قدردانی
در اینجا بر خود لازم میدانم که از استاد بزرگوارم سرکار خانم دکتر راهبه نیارکی کمال تشکر و سپاسگزاری را داشته باشم. ایشان همانند خواهری دلسوز، بنده را در طول تحصیل و در مسیر پایاننامه مورد لطف و راهنمایی ویژه خود قراردادند. همچنین قدردان مشاوره های ارزشمند استاد گرامی جناب آقای دکتر سیاوش امین نژاد هستم.
دانشگاه آزاد اسلامی
علوم وتحقیقات گیلان
تعهد نامه اصالت رساله یا پایان نامه
اینجانب بهرام شریفی مرجقل دانش آموخته مقطع کارشناسی ارشد ناپیوسته در رشته مهندسی برق و الکترونیک که در تاریخ 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