Animating Cryptographic Primitives
Total Page:16
File Type:pdf, Size:1020Kb
Animating Cryptographic Primitives A dissertation submitted to The University of Manchester for the degree of Master of Science in the Faculty of Engineering and Physical Sciences 2017 Richard Lenin Leiva Atiaga School of Computer Science 2 Contents List of Tables .................................................................................................................... 5 List of Figures ................................................................................................................... 6 Glossary ........................................................................................................................... 9 Abbreviations ................................................................................................................. 10 Abstract ......................................................................................................................... 11 Declaration .................................................................................................................... 12 Copyright ....................................................................................................................... 13 Chapter 1: Introduction................................................................................................... 14 1.1 Chapter Overview ................................................................................................ 14 1.2 Introduction ........................................................................................................ 14 1.3 Project Aims ........................................................................................................ 15 1.4 Project Objectives ............................................................................................... 15 1.5 Dissertation Outline ............................................................................................ 15 Chapter 2: Background and Theory ................................................................................. 17 2.1 Chapter Overview ............................................................................................ 17 2.2 Cryptography ................................................................................................... 17 2.3 Classical Ciphers .............................................................................................. 19 2.4 Modern Ciphers ............................................................................................... 19 2.4.1 Symmetric Key Algorithms ................................................................................... 19 2.4.1.1 AES ............................................................................................................... 20 2.4.2 Asymmetric Key Algorithms ................................................................................. 25 2.5 Animations in the teaching environment ......................................................... 26 3 2.6 Related Works ................................................................................................. 27 2.6.1 CrypTool ............................................................................................................... 27 2.6.2 CryptoWorkflow ................................................................................................... 28 2.6.3 YouTube ............................................................................................................... 29 2.7 Summary ......................................................................................................... 29 Chapter 3: Research Methods ......................................................................................... 31 3.1 Chapter Overview ............................................................................................ 31 3.2 Website and Animation Technologies .............................................................. 31 3.2.1 3D Animation Tools .............................................................................................. 31 3.2.2 Flash (ActionScript 3.0) ........................................................................................ 32 3.2.3 HTML5, CSS3 and JavaScript ................................................................................ 34 3.3 Evaluation Tools and Integrated Development Environments ........................... 35 3.3.1 Adobe Animate CC, Flash Develop and NetBeans IDEs ....................................... 35 3.3.2 SWFScan ............................................................................................................... 36 3.3.3 Adobe Scout CC .................................................................................................... 37 3.3.4 Browser Shots ...................................................................................................... 39 3.4 Summary ......................................................................................................... 39 Chapter 4: System Design and Implementation ............................................................... 41 4.1 Chapter Overview ............................................................................................ 41 4.2 Development Methodology ............................................................................. 41 4.3 Design Considerations ..................................................................................... 43 4.4 Graphical User Interface .................................................................................. 45 4.5 Audio files ....................................................................................................... 47 4.6 Third Party Libraries ........................................................................................ 48 4.6.1 GSAP ..................................................................................................................... 48 4.6.2 AS3 Crypto ............................................................................................................ 49 4.7 Implementation ............................................................................................... 50 4.7.1 Menus .................................................................................................................. 51 4 4.7.2 Dynamic Screens .................................................................................................. 52 4.7.3 Static Screens ....................................................................................................... 58 4.7.4 Size Optimisations ................................................................................................ 60 4.8 Summary ......................................................................................................... 61 Chapter 5: Evaluation ..................................................................................................... 62 5.1 Chapter Overview ............................................................................................ 62 5.2 Performance testing ........................................................................................ 62 5.3 Security testing ................................................................................................ 65 5.4 Compatibility testing ....................................................................................... 67 5.5 Comparison with Cryptool, CryptoWorkflow and YouTube ............................... 68 5.6 Questionnaire.................................................................................................. 69 5.7 Summary ......................................................................................................... 81 Chapter 6: Conclusions and Future Work ......................................................................... 82 6.1 Chapter Overview ............................................................................................ 82 6.2 Conclusions ..................................................................................................... 82 6.3 Future Work .................................................................................................... 83 References...................................................................................................................... 85 Appendix A: Important Code Snippets ............................................................................. 92 Appendix B: Source Labs Results ..................................................................................... 96 Appendix C: Questionnaire ............................................................................................. 98 WORD COUNT: 17328 5 List of Tables Table 2.1: AES Versions ............................................................................................................ 20 Table 5.1: E-Learning Tools Comparison.................................................................................. 69 6 List of Figures Figure 2.1: Block representation of the plaintext .................................................................... 21 Figure 2.2: AES encryption and decryption structure .............................................................. 22 Figure 2.3: AES Substitute Bytes step ...................................................................................... 22 Figure 2.4: AES Shift rows step ................................................................................................ 23 Figure 2.5: AES Mix columns step ...........................................................................................