Academic Year:
 2012/3 
Owning Department/School:
 Department of Computer Science 
Credits:
 6 
Level:
 Honours (FHEQ level 6) 
Period: 
Semester 2

Assessment:
 EX 100% 
Supplementary Assessment:  CM30173 Mandatory Extra Work (where allowed by programme regulations) 
Requisites:
 Before taking this unit you must take CM10196 and take CM20217 and take CM20218 or have an elementary knowledge of number theory, as in chapters 12 of Davenport The Higher Arithmetic, or CM10139 Computation 1: numbers & structures and 20144, or MA10209 (and for transitional arrangements an elementary knowledge of number theory, as in chapters 12 of Davenport The Higher Arithmetic, or CM10139 Computation 1: numbers & structures and 20144, or MA10209). 
Description:
 Aims: To introduce students to the techniques, tools and pitfalls of cryptography (including authentication etc.).
Learning Outcomes: 1. Students will understand the basic mathematics behind privatekey and publickey cryptography;
2. Students will be able to describe several wellknown techniques for cryptographic security and authentication.
Skills: Application of Number (T/F, A), Problem Solving (T/F).
Content: Introduction to the problem: security, privacy, authentication, repudiation, revocation. The key distribution problem: public vs private keys. The mathematics of cryptography: FermatEuler Theorem, structure of finite fields and elliptic curves. Cryptographic algorithms: DiffieHellman, RSA, ElGamal. Cryptanalysis: discrete logarithms, factoring. The Coppersmith attack. Elliptic Curve analogues. Privatekey algorithms: DES, 3DES and AES. Common hashing algorithms: MD5, SHA1. Characteristics of safe keys.
Using cryptography: digital signatures: how to find the public key.Repudiation and revocation, examples in practice: PGP, digital certificates.

Programme availability:

CM30173 is Optional on the following programmes:
Department of Computer Science
 USCMAFB01 : BSc Computing (Fulltime)  Year 3
 USCMAKB01 : BSc Computing (Fulltime with Thick Sandwich Placement)  Year 4
 USCMAFB06 : BSc (hons) Computer Science (Fulltime)  Year 3
 USCMAKB07 : BSc (hons) Computer Science (Fulltime with Thick Sandwich Placement)  Year 4
 USCMAFB20 : BSc (hons) Computer Science and Mathematics (Fulltime)  Year 3
 USCMAKB20 : BSc (hons) Computer Science and Mathematics (Fulltime with Thick Sandwich Placement)  Year 4
 USCMAAB20 : BSc (hons) Computer Science and Mathematics with Study Year Abroad (Fulltime with Study Year Abroad)  Year 4
 USCMAKB15 : BSc (hons) Computer Science with French Language (with Industrial Placement) (Fulltime with Thick Sandwich Placement)  Year 4
 USCMAAB15 : BSc (hons) Computer Science with French Language (with Study Year Abroad) (Fulltime with Study Year Abroad)  Year 4
 USCMAKB16 : BSc (hons) Computer Science with German Language (with Industrial Placement) (Fulltime with Thick Sandwich Placement)  Year 4
 USCMAAB16 : BSc (hons) Computer Science with German Language (with Study Year Abroad) (Fulltime with Study Year Abroad)  Year 4
 USCMAFB13 : BSc (hons) Computer Science with Mathematics (Fulltime)  Year 3
 USCMAKB14 : BSc (hons) Computer Science with Mathematics (Fulltime with Thick Sandwich Placement)  Year 4
 USCMAAB14 : BSc (hons) Computer Science with Mathematics with Study Year Abroad (Fulltime with Study Year Abroad)  Year 4
 USCMAKB17 : BSc (hons) Computer Science with Spanish Language (with Industrial Placement) (Fulltime with Thick Sandwich Placement)  Year 4
 USCMAAB17 : BSc (hons) Computer Science with Spanish Language (with Study Year Abroad) (Fulltime with Study Year Abroad)  Year 4
 USCMAAB07 : BSc (hons) Computer Science with Study Year Abroad (Fulltime with Study Year Abroad)  Year 4
 USCMAFM01 : MComp (hons) Computer Science (Fulltime)  Year 3
 USCMAKM02 : MComp (hons) Computer Science (Fulltime with Thick Sandwich Placement)  Year 4
 USCMAFM14 : MComp (hons) Computer Science and Mathematics (Fulltime)  Year 3
 USCMAKM14 : MComp (hons) Computer Science and Mathematics with Industrial Placement (Fulltime with Thick Sandwich Placement)  Year 4
 USCMAAM14 : MComp (hons) Computer Science and Mathematics with Study Year Abroad (Fulltime with Study Year Abroad)  Year 4
 USCMAAM02 : MComp (hons) Computer Science with Study Year Abroad (Fulltime with Study Year Abroad)  Year 4
Department of Mathematical Sciences
 USMAAFB15 : BSc (hons) Mathematical Sciences (Fulltime)  Year 3
 USMAAKB16 : BSc (hons) Mathematical Sciences (Fulltime with Thick Sandwich Placement)  Year 4
 USMAAAB16 : BSc (hons) Mathematical Sciences with Study Year Abroad (Fulltime with Study Year Abroad)  Year 4
 USMAAFB13 : BSc (hons) Mathematics (Fulltime)  Year 3
 USMAAKB14 : BSc (hons) Mathematics (Fulltime with Thick Sandwich Placement)  Year 4
 USMAAFB01 : BSc (hons) Mathematics and Statistics (Fulltime)  Year 3
 USMAAKB02 : BSc (hons) Mathematics and Statistics (Fulltime with Thick Sandwich Placement)  Year 4
 USMAAAB02 : BSc (hons) Mathematics and Statistics with Study Year Abroad (Fulltime with Study Year Abroad)  Year 4
 USMAAAB14 : BSc (hons) Mathematics with Study Year Abroad (Fulltime with Study Year Abroad)  Year 4
 USMAAFB05 : BSc (hons) Statistics (Fulltime)  Year 3
 USMAAKB06 : BSc (hons) Statistics (Fulltime with Thick Sandwich Placement)  Year 4
 USMAAAB06 : BSc (hons) Statistics with Study Year Abroad (Fulltime with Study Year Abroad)  Year 4
 USMAAFM14 : MMath Mathematics (Fulltime)  Year 3
 USMAAFM14 : MMath Mathematics (Fulltime)  Year 4
 USMAAAM15 : MMath Mathematics with Study Year Abroad (Fulltime with Study Year Abroad)  Year 4
 TSMAAFM08 : MSc Modern Applications of Mathematics (Fulltime)  Year 1
 TSMAAFL02 : PG Dip Modern Applications of Mathematics (Fulltime)  Year 1
Department of Physics
 USPHAFB05 : BSc (hons) Physics with Computing (Fulltime)  Year 3
 USPHAKB06 : BSc (hons) Physics with Computing (with Placement) (Fulltime with Thick Sandwich Placement)  Year 4
 USPHAAB06 : BSc (hons) Physics with Computing with Year Abroad (Fulltime with Study Year Abroad)  Year 4
