healym3 / EncryptionApp2

0 stars 0 forks source link

EncryptionApp2

Building upon the foundation of cryptography research and previous academic research work by Vipin Menon and Manuel Rivero in 2013, my senior project involves the creation of a mobile application with a set of cryptographic tools from substitution to block ciphers. While there are plenty of computer solutions for cryptographic needs, this project explores solutions available in a mobile environment. First, the user will be able to encrypt plain text and decrypt cipher text using a randomly generated substitution key or a key chosen by the user. Originally, the next plan was to provide the user with cryptanalysis tools such as frequency analysis of letters and n-grams to allow user-assisted cracking of substitution cipher text without a key. After working with Dr. Emre Yilmaz, he encouraged me to take it a step further. Rather than user-assisted cracking, the mobile application will automatically decipher imported cipher text. In an examination of the dangers of improper block cipher implementations, the app will allow a user to select a bitmap image, encrypt the image using AES in both Electronic Code Book and Cipher Block Chaining modes, and then display the original image and both encrypted images side-by-side for comparison. Next, the application will allow a user to encrypt files using AES in Cipher Block Chaining mode and email those files along with a unique Initial Vector nonce. Plus, the application will allow a user to decrypt these files received through email. Lastly, the application will encrypt an input file chosen by the user using AES and DES, displaying the duration each took to complete in milliseconds. References from Academic Research:

Waldvogel, Benedikt, and mandev. “Create File with given Size in Java.” Stack Overflow, 6 Oct. 2019, https://stackoverflow.com/questions/245251/create-file-with-given-size-in-java. Al-Sabaawi, Aiman. “Cryptanalysis of Vigenère Cipher: Method Implementation.” 2020 IEEE Asia-Pacific Conference on Computer Science and Data Engineering (CSDE), 2020, https://doi.org/10.1109/csde50874.2020.9411383. Alomari, Mohammad Ahmed, et al. “A Study on Encryption Algorithms and Modes for Disk Encryption.” 2009 International Conference on Signal Processing Systems, 2009, https://doi.org/10.1109/icsps.2009.118. Android, Google. “Android Developers.” Android Developers, https://developer.android.com/. Azimi, Mohammadreza, et al. “An Intelligent Key Related Attack Using NSGA II Algorithm.” The 16th CSI International Symposium on Artificial Intelligence and Signal Processing (AISP 2012), 2012, https://doi.org/10.1109/aisp.2012.6313737. Coppersmith, D. “The Data Encryption Standard (DES) and Its Strength against Attacks.” IBM Journal of Research and Development, vol. 38, no. 3, 1994, pp. 243–250., https://doi.org/10.1147/rd.383.0243. Griffiths, Dawn, and David Griffiths. Head First Android Development. O'Reilly, 2021. “Hill Climbing in A.I.” Java T Point, 16 Apr. 2019, https://static.javatpoint.com/tutorial/ai/images/hill-climbing-algorithm-in-ai.png. Inc., Apple. “Apple Developer.” Apple Developer, https://developer.apple.com/. Kuusisto, Finn. “Ancient and Modern Cryptography.” XRDS: Crossroads, The ACM Magazine for Students, vol. 21, no. 3, 2015, pp. 57–57., https://doi.org/10.1145/2748053. “Letter Frequencies in the English Language.” Frequency Table, Cornell Math Explorer's Club, 31 July 2015, http://pi.math.cornell.edu/~mec/2003-2004/cryptography/subs/frequencies.html. Lyons, James. “Cryptanalysis of the Simple Substitution Cipher.” Practical Cryptography, 2013, http://practicalcryptography.com/cryptanalysis/stochastic-searching/cryptanalysis-simple-substitution-cipher/. Lyons, James. “Quadgram Statistics as a Fitness Measure.” Practical Cryptography, 2013, http://practicalcryptography.com/cryptanalysis/text-characterisation/quadgrams/. Menon, Vipin, and Manuel Rivero. “Developing an IPhone App for a More Safe and Secure Encrypted Conversation/Text/Chat.” Journal of Computing Sciences in Colleges, vol. 28, no. 4, Apr. 2013, pp. 75–80. Metwalli, Sara A. “Version Control 101: Definition and Benefits.” Medium, Towards Data Science, 14 Oct. 2020, https://towardsdatascience.com/version-control-101-definition-and-benefits-6fd7ad49e5f1. Nie, Tingyuan, and Teng Zhang. “A Study of DES and Blowfish Encryption Algorithm.” TENCON 2009 - 2009 IEEE Region 10 Conference, 2009, https://doi.org/10.1109/tencon.2009.5396115. Paar, Christof, et al. Understanding Cryptography a Textbook for Students and Practitioners. Springer Berlin, 2014. Reisen, Jan. “Golden Retrievers: 10 Fun Facts about the Iconic Scottish Sporting Dogs.” American Kennel Club, American Kennel Club, 24 Sept. 2021, https://www.akc.org/expert-advice/dog-breeds/10-facts-about-golden-retrievers/. Singh, Simon. The Code Book: The Science of Secrecy from Ancient Egypt to Quantum Cryptography. Anchor Books, a Division of Random House, Inc, 2000. Yassein, Muneer Bani, et al. “Comprehensive Study of Symmetric Key and Asymmetric Key Encryption Algorithms.” 2017 International Conference on Engineering and Technology (ICET), 2017, https://doi.org/10.1109/icengtechnol.2017.8308215.