Computer Science 4730 --  Applied Cryptography  

Test 2 -- Review

 

1. Number Theory

Fermat's and Euler's theorems, relevance to public key cryptography
Testing for primality: Miller-Rabin algorithm and repeated use, Chinese remainder Theorem
Discrete logarithms, calculational complexity
 

2. Public Key Cryptography and Key Management

Basic principles of public key cryptography, terminology, uses (encryption, digital signature, key exchange)
Requirements: key generation, encryption & decryption, infeasibility to recover message or private key
RSA algorithm: based on Fermat's Theorem for mod p*q,  details of making private & public keys,
            encryption, decryption; efficient calculation methods; security and effort to break
Key management: distribution methods for public keys, public-key use to distribute secret keys
Diffie-Hellman key exchange
Elliptic curve arithmetic and cryptography; use for key exchange; challenge for encryption
 

3. Message Authentication and Message Hashing

Message authentication: definition,  principles and terminology, requirements  
Authentication by message encryption: secret key, public key, disadvantages & weaknesses:
Ways of using hash functions to support message and sender authentication
Message Authentication Codes (MACs): definition, versus digital signature, uses, role of hash functions;
            requirements, DES-based MACs (X9.17) -- algorithm details
Hash functions: requirements, weak models with XOR, birthday attacks, block chaining methods, security analysis
Hash algorithms: MD5, SHA-1, RIPEMD; general model (message padding & size, 32-bit adds, mix functions);  
            differences (result size, big/little-endian, 4/5 registers, shifts, constants, word permutations)  
HMAC: building a MAC from a hash algorithm, HMAC structure and calculation
           

5. Digital Signatures and Authentication

Digital signature principles: purpose, properties, requirements  
Direct digital signature: only sender & receiver, methods & weakness, secret key and public key methods
Arbitrated digital signature: requires trusted 3rd party (arbiter), approaches, message visibility to arbiter?
Authentication protocols: definition, Needham-Schroeder and Denning secret key, Denning public key
One-way authentication: for E-mail, no receiver feed-back
DSS: RSA vs DSS; global public-key components (p, q, g), user private key (x), public key (g^x mod p);  
            signing algorithm (r, s); verifying algorithm (w, u1, u2, v=r)