Embedded Security
Code  Completion  Credits  Range  Language 

NIEBVS  Z,ZK  5  2P+2C  English 
 Garant předmětu:
 Lecturer:
 Tutor:
 Supervisor:
 Department of Digital Design
 Synopsis:

Students gain basic knowledge in selected topics of cryptography and cryptanalysis. The course focuses particularly on efficient implementations of cryptographic primitives in hardware and software (in embedded systems). Students gain a good overview of functionality of (hardware) cryptographic accelerators, smart cards, and resources for securing internal functions of computer systems.
 Requirements:

Basic fundamentals of cryptography.
Basic fundamentals of digital design.
Knowledge of VHDL or C.
 Syllabus of lectures:

1. Embedded Systems with Cryptographic Features, SmartCards.
2. Attacks on Cryptographic Systems I: Differential Power Analysis.
3. Introduction to Elliptic Curve Cryptography (ECC).
4. ECC, Arithmetics over GF(p), Montgomery Domain.
5. ECC, Arithmetics over GF(2^m) with Polynomial Basis Representation.
6. ECC, Arithmetics over GF(2^m) with Normal Basis Representation.
7. (Pseudo)Random Number Generators in Embedded Systems.
8. Efficient Exponentiation.
9.Efficient Implementation of RSA, Efficient Multiplication.
10. Attacks on Cryptographic Systems II: TimeMemory TradeOff (TMTO) Tables Attacks.
11. Attacks on Cryptographic Systems III: GuessandDetermine Attack.
12. Attacks on Cryptographic Systems iV: SideChannel and FaultInjection Attacks.
 Syllabus of tutorials:

1. Implementation of a symmetric cipher in an FPGA or a microcontroller.
2. Differential Power Analysis
3. Elliptic Curve Cryptography (ECC). Point addition over elliptic curve; its implementation in the FPGA or the microcontroller.
4. DiffieHellman key exchange over elliptic curve (ECDH); its implementation in the FPGA or the microcontroller.
5. RSA.
 Study Objective:

Students will gain basic knowledge in selected chapters of cryptography and cryptanalysis. Emphasis is placed on the effective implementation of cryptographic primitives in hardware and software (embedded systems), which students will verify on specific laboratory tasks.
Students will gain knowledge about the function of (hardware) accelerators of cryptographic operations, smart cards and means for securing the internal functions of the computer.
In addition, the course deals with some selected attacks on cryptographic systems, thanks to which students will gain knowledge about some potential risks of cryptographic systems and will be better able to face them.
 Study materials:

1. Menezes, A., Oorschot, P., Vanstone, S. ''Handbook of Applied Cryptography''. CRC Press, 1996. ISBN 0849385237.
2. Paar, C., Pelzl, J. „Understanding Cryptography“. Springer, 2010, ISBN 9783642041006
3. Rankl, W., Effing W. ''Smart Card Handbook''. Third Edition, Wiley, ISBN 0470856688.
4. Ross J. Anderson, ''Security Engineering: A Guide to Building Dependable Distributed Systems'', Second Edition, Wiley, 2008, ISBN 9780470068526.
5. John R. Vacca, ''Biometric Technologies and Verification Systems'', Elsevier, 2007, ISBN: 978075067967.
6. Ecks, M., ''Smartcard development with JavaCard and the OpenCard Framework: A feasibility study'', VDM Verlag Dr. Müller, 2008, ISBN: 3836499894.
 Note:
 Further information:
 No timetable has been prepared for this course
 The course is a part of the following study plans:

 Master specialization Software Engineering, in English, 2021 (elective course)
 Master specialization Computer Security, in English, 2021 (elective course)
 Master specialization Computer Systems and Networks, in English, 2021 (elective course)
 Master specialization Design and Programming of Embedded Systems, in English, 2021 (PS)
 Master specialization Computer Science, in English, 2021 (VO)