Registry
Module Specifications
Archived Version 2020 - 2021
| |||||||||||||||||||||||||||||||||||||
Description The purpose of this module is to introduce the student to some of the latest ideas, algorithms and protocols from modern cryptology and secure communications, and to equip the student to apply this theory to the problems of building secure computer applications, and securing communications in the context of the internet and e-commerce. Modern symmetric cryptography techniques, hash functions and their applications are covered. Then, based on the students prior experience of elementary arithmetic, the basics of number theory are taught, as needed to fully understand the main algorithms for public-key cryptography, including Diffie-Helman, the RSA method and El Gamal. Applications of public-key cryptography including encryption and digital signatures are also covered. Based on this introduction to cryptology, the student is introduced to the basic concepts of security protocols and their implementation. Simple protocols for key exchange and authentication, leading on to more involved protocols for implementing secure e-mail, S/MIME and secure wireless communications. | |||||||||||||||||||||||||||||||||||||
Learning Outcomes 1. Describe historial ciphers and identify their weaknesses. 2. Define and contrast contemporary symmetric cryptographic techniques and show their applications. 3. Solve elementary problems in number theory relating to cryptography. 4. Explain hash functions, specify their desirable properties and illustrate their applications. 5. Define and contrast contemporary public-key cryptographic techniques and show their applications. 6. Describe and analyse security protocols for applications such as authentication and key-exchange, e-mail and wireless communication. 7. Describe the fundamental concepts underpinning security protocols, key management and public key infrastructures. 8. Explain the basic threat models that need to be countered in secure systems, and describe how cryptography can help. 9. Identify the techniques available for meeting security objectives in the context of the modern world. 10. Integrate cryptographic code into software projects. 11. Design and write software to implement security protocols. | |||||||||||||||||||||||||||||||||||||
All module information is indicative and subject to change. For further information,students are advised to refer to the University's Marks and Standards and Programme Specific Regulations at: http://www.dcu.ie/registry/examinations/index.shtml |
|||||||||||||||||||||||||||||||||||||
Indicative Content and
Learning Activities Historical CiphersShift cipher. Substitution cipher. Vigenere cipher. The one-time pad. Mechanical rotor systems.Symmetric CryptographyStream ciphers. Block ciphers. The Data Encryption Standard (DES) and the Advanced Encryption Standard (AES). Modes of operation.Elementary Number TheoryModular arithmetic. Groups, rings and fields. Fast algorithms for calculating multiplicative inverses and modular exponentiation. Quadratic residues and modular square roots. Primality testing.Hash FunctionsDesirable properties. Collisions. Merkle-Damgard construction. Applications of hash functions. Manipulation Detection Codes (MDCs) and Message Authentication Codes (MACs).Public Key CryptographyThe key distribution problem. Diffie-Hellman key exchange. Public key infrastructures. The RSA method. El Gamal and Rabin. The DSA digital signature.Hard ProblemsOne way functions. Hard problems including the integer factorisation problem and the discrete logarithm problem. Reductions.Random Number GenerationCryptographically secure random numbers and their generation. Using one-way hash functions. Linear congrentual generator. Blum Blum Shub generator.Security ObjectivesConfidentiality, integrity, authentication and non-repudiation.Security ProtocolsAuthentication and key-exchange protocols. Nonces and timestamps. Secure email. S/MIME. Secure wireless protocols; WEP and WPA. Attacks on protocols. | |||||||||||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||||||||
Indicative Reading List
| |||||||||||||||||||||||||||||||||||||
Other Resources None | |||||||||||||||||||||||||||||||||||||
Programme or List of Programmes | |||||||||||||||||||||||||||||||||||||
Archives: |
|