Possible Cryptology Projects This is a list of some project ideas you may find interesting. It is not meant to be exhaustive or exclusive, so you are welcome to propose a project not on this list. Crypto Pedagogy Develop tools to help those learning crypto to understand, explore, and experiment with cryptographic methods. These can include classic and modern symmetric ciphers and cryptanalysis, as well as mathematical tools/mechanisms important to crypto, and public key cryptography. The emphasis is on exposing clearly what is going on with each of the methods. Secure Hash Function/Pseuo-random Number Generator Devise and/or test secure hash functions/PRNGs. This would involve researching the various tests for randomness and applying them to various hash functions, and possibly developing a new or tweaking an existing secure hash function or PRNG. In particular, I am interested in the one based on cellular automata, and the student (Garrett Cotton) who started the project is available for help and guidance. Factorization/Primality Testing Research the current state of the art in prime factorization and/or primality testing. Write a term paper and/or develop code to implement various approaches. Protocol Vulnerability Report Pick a particular system or protocol in use today and research its vulnerabilities. Write a report and/or develop code to exploit these vulnerabilities and report on your results. There are numerous systems from SSL/TLS to WEP and many, many more that have identified problems in them ranging from implementation to the protocol itself. Cryptographic Function Vulnerability Report Pick a particular cryptographic function (cipher, hash function) in use today and research its vulnerabilities. Write a report and/or develop code to exploit these vulnerabilities. There are numerous ciphers from RC4 to RSA that have identified weaknesses in them. Back Doors In light of recent revelations concerning certain government agency influence in the systems that are widely used for cryptography (and security in general), pick a particular system or type of system and research how back door access or weaknesses could have been introduced into it (them). Then write a report and/or implement code to try to exercise or demonstrate the weakness/back door. Challenges to Cryptography The world is changing in many ways, much of them driven by new and possibly disruptive technologies. Security is often an afterthought in the rush to get a new gizmo to market, which can leave people and systems unprotected or poorly protected. From the cloud to the Internet of Things, from utilities to health care, pick a particular type of system and research the security issues it has, and how they are being addressed with cryptography (or not). Usability "If it ain't usable, it ain't secure" I say this and it is true. Where are there mis-matches between the technology we could have and the use of that technology, and why? For example, email has long had provisions for encryption, but nobody uses it. Why not? What are the barriers to adoption? How can these be overcome? Write a research paper or do a proof-of-concept demo of a system that improves usability. There are many other good and interesting projects you can do. Explore and see what catches your imagination and interest, then follow up and determine what you can do with it.