Introduction to Cryptography
What is cryptography? Practice and study of techniques for secure communication in the presence of third parties called adversaries Modern cryptography includes data confidentiality data integrity authentication etc. Cryptography prior to the modern age was effectively synonymous with encryption conversion of information from a readable state to apparent nonsense
Encryption and Decryption
Substitution Cipher One simple example of encryption/decryption
Cryptosystem (Cipher)
Types of Cryptosystems Secret-key cryptosystem Symmetric system Same key is used for both encryption and decryption Key has to be kept secret Public-key cryptosystem Asymmetric system A pair of keys Public key Private key Private key needs to be kept secret
Secret-key (Symmetric) Cryptosystems
Key Distribution Problem A lot of keys among users Each pair of uses needs a unique key How to send a key to the other Key needs to be plain text
Public-key (Asymmetric) Cryptosystem
Key distribution in public-key cryptosystem Alice says to Bob “Hi Bob, could you send me your public key?” Bob replies back to Alice “Here you go. The attached is my public key.” Alice receives the public key of Bob and starts sending messages to Bob Messages are encrypted by Bob’s public key Bob uses the corresponding private key to decrypt the messages Any concerns? How can Alice make sure that the received key is indeed the public key of Bob? How can Alice make sure that the received key is indeed the public key of Bob?
Certificate Authority A certificate authority or certification authority (CA) is an entity that issues digital certificates A digital certificate certifies the ownership of a public key by the named subject of the certificate A CA acts as a trusted third party—trusted both by the subject (owner) of the certificate and by the party relying upon the certificate Format of these certificates is specified by the X.509 standard Top 5 CAs as of May 2018 IdenTrust, Comodo, DigiCert, GoDaddy, GlobalSign
Procedure of obtaining a public key certificate
How to obtain the public keys of CAs Public keys are embedded in root certificates Root certificates are contained in the release of operating systems (and their updates) and the trustable web browsers (and their updates)