Cryptography

advertisement
Cryptography was an art until the late 20th century. Building good codes, or breaking
existing ones, relied on creativity and personal skill. There was very little theory that could
be relied upon and there was not even a well-defined concept of what creates a good code.
This picture of cryptography is completely changed. A rich theory developed, enabling the
rigorous study of cryptography as a science. Furthermore, the field of cryptography now
covers much more than secret communication, including digital signatures, message
authentication, protocols for exchanging secret keys, authentication protocols, electronic
auctions and elections, and digital cash. In fact, modern cryptography can be said to be
concerned with problems that have arisen in any distributed computation that may come
under internal or external attack. Without attempting to provide a perfect definition of
modern cryptography, we would say that it is the scientific study of techniques for securing
digital information, distributed computations, and transactions.
Historically, the main consumers of cryptography were military and intelligence
organizations. Today, cryptography is everywhere, Security mechanisms that depend on
cryptography are an integral part of almost any computer system. Users rely on
cryptography every time they access a secured website. Cryptographic methods are used to
enforce access control in multi-user operating systems, and to prevent thieves from
extracting trade secrets from stolen laptops. Software protection methods employ
encryption, authentication, and other tools to prevent copying. In short, cryptography has
gone from an art form that dealt with secret communication for the military to a science that
helps to secure systems for ordinary people all across the globe. This also means that
cryptography is becoming a more and more central topic within computer science.
Course Description
This course provides a broad education in the area of cryptography and security covering the
main topic deemed necessary to appreciate and understand the basics of this important
subject. Specific topics to be examined include Basic theory, mathematical background
material, symmetrical crypto systems, block ciphers, stream ciphers, DES, Advanced
Encryption Algorithm (AES), hash functions and message authentication (MAC),
asymmetric cryptosystems, RSA and El Gamal, digital signatures, elliptic curves, provable
security, and Key management. Student-centered learning and hands-on practical work are
central to the learning approach taken.
Learning Outcomes - After finishing the module, the student will be able to:
1- Understand the role of cryptography in information security.
2- Describe the major types of cryptographic algorithms and typical applications.
3- Recognize the different modes of operation for block ciphers and their applications.
4- Write code to encrypt and decrypt information using some of the standard algorithms.
5- Understand authentication protocols and processes.
6- Understand how digital signatures are performed and the role of digital certificates.
7- Understand the role of hash functions in Information Security.
Course Timing
Day1 (31/01/2105):
Lectures:
- Introduction and Classical Ciphers.
- Classical Encryption Techniques.
Lab:
- Write code to encrypt and decrypt information using: DES
Day2: (01/02/2105):
Lectures:
- Block Cipher Operation: Triple DES, Electronic Codebook (ECB) Mode, Cipher Block
Chaining (CBC), cipher feedback (CFB), output feedback (OFB)
- Advanced Encryption Standard: AES
- Stream Ciphers and Random Number Generation
Lab:
- Write code to encrypt and decrypt information using: AES
Day3: (02/02/2105):
Lectures:
- Public-Key Cryptography and RSA
- Other Public-Key Cryptosystems: Diffie-Hellman Key Exchange
Lab:
- Write code to encrypt and decrypt information using: RSA
Day4: (03/02/2105):
Lectures:
- Other Public-Key Cryptosystems: ElGamal, and Elliptic Curve Cryptography.
Lab:
- Write code to encrypt and decrypt information using: Diffie-Hellman
Day5: (04/02/2105)
Lecture:
- Cryptographic Hash Functions
- Message Authentication Codes: CBC-MAC, private key authentication
Lab:
- Write code for Cryptographic Hash Functions
Day6: (05/02/2105)
Lecture:
- Digital Signatures: ElGamal Digital Signature Scheme, Digital Signature Standard
(DSS), Schnorr Digital Signature Scheme
- Key Management and Distribution
Lab:
- Write code to encrypt and decrypt information using: ElGamal Digital Signature
Instructor
Samir Gaber received his PhD from department of electronic and electrical engineering,
University College London (UCL), UK, 2010. He is currently honorary lecturer in
department of electronic and electrical engineering, University College London (UCL), UK.
Since 2011, he is the head of malware analysis and reveres engineering department, Egyptian
Computer Emergency Readiness Team (EG-CERT), Egypt. Since 2010, he is assistant
professor in electronics, communications, and computer engineering department, Helwan
University, Egypt. From 2010 to 2014, he was honorary research associate in department of
electronic and electrical engineering, University College London (UCL), UK.
Download