Derived from
|
20402110 IN450 - INFORMATICS 6: ALGORITHMS FOR CRYPTOGRAPHY in Mathematics LM-40 PEDICINI MARCO
(syllabus)
Introduction to modern cryptography: definition of security in encryption, Distinguisher, integrity, digital signature, authentication, abstract cryptographic primitives.
Basic concepts of the theory of numbers: MCD, modular arithmetic and basic algorithms, polynomials and rational polynomials, finite fields, solution of equations. Vector spaces and linear maps.
Algorithms: products of matrices in GF (2), products of dense arrays, Strassen algorithm, Gaussian elimination, matrix inversion, linear algebra on sparse matrices, iterative algorithms. Groebner bases: Buchberger algorithm.
Brute-force cryptanalysis: attacks by dictionaries, block ciphers, substitution-permutation networks, Feistel type systems, DES, brute force on DES, AES. Hash functions, the family of hash functions SHA, linear model for SHA-0, looking for collisions, brute force and parallelism, efficient brute force.
Birthday paradox: operating modes ECB, CBC, CBC-MAC, sorting algorithms, hash tables, binary trees, analysis of pseudo-random functions. Security of block ciphers. Time memory trade-off.
Walsh-Hadamard transform: linear cryptanalysis, differential cryptanalysis, the study of the S-box, Walsh transform, differential characteristics, normal algebraic form, generalization of the Walsh transform in the case of finite fields GF (p). Analysis of complexity.
Algebraic attacks, stream ciphers, the key stream generators based on LFSRs, correlation attacks, decoding methods, fast correlation attacks, algorithmic aspects of correlation based attacks.
(reference books)
[1] Antoine Joux, Algorithmic Cryptanalysis, (2010) CRC Press;
[2] Douglas Stinson, Cryptography: Theory and Practice, 3rd edition, (2006) Chapman and Hall/CRC.
|