Introduction to PKI Technology

Size: px
Start display at page:

Download "Introduction to PKI Technology"


1 Introduction to PKI Technology Version 1.5 Elaborated by Sylvain Maret & Cédric Enzler October 1999 Rev. 1.5: August

2 Course Map Day One Introduction Key Terms Cryptosystems Services, Mechanisms, Algorithms Cryptography in History Cryptanalysis Secret-Key Cryptography AES Lab exercise 1 Course Map Day One Public-Key Cryptography RSA Diffie-Hellman Message Digests Lab exercise 2 Random Numbers Key Length Lab exercise 3 File encryption 2

3 Course Map Day One Message Authentication Code (MAC, HMAC) Digital Signature RSA, DSS / DSA, ElGamal Hybrid Cryptosystems RSA Key Wrapping Diffie-Hellman Lab exercise 4 PGP (encryption and signature) Course Map Day One PKCS Standard Smart Card Lab exercise 5 SSH SSH Tunneling End of day one 3

4 Course Map Day Two Questions to day one? Revision quiz! PKI introduction Digital certificates X.509 certificates (Demo) Certificate Revocation (Demo) Certification Authorities RA, LRA Data Repositories (LDAP) S/MIME: How it works? Course Map Day two Lab exercise 6 S/MIME and LDAP SSL: How it works? Lab exercise 7 Web server SSL Lab exercise 8 Client SSL authentication End of day two 4

5 Course Map Day Three Questions to day two? Lab exercise 9 Smart Card installation (PKCS #11) Lab exercise 10 Playing the security officer with Keon Certificate Server Lab exercise 11 Revocation with client SSL authentication IPSEC: How it works? Course Map Day Three Lab exercise 12 IPSEC (SecuRemote Checkpoint) Demo IPSEC Cisco with CEP Cases study VPN RadGuard Secure Gate Encryption references sites Open discussion End of day three 5

6 Course Objectives Understand cryptographic fundamentals and how cryptographic technology is applied in a Public Key Infrastructure Know the elements of Public Key Infrastructure and how they interact with each other Understand and be able to describe some of the practical applications of PKI Understand why PKI is an attractive technology to enable e-commerce and enhance security Lab Topology Ayrton: Ayrton: SSL SSL Cerbere: CA Cerbere: CA LDAP, Mail LDAP, Mail Router IPsec Router IPsec Checkpoint Checkpoint fw1 fw1 Londron Londron Rome Rome Paris Paris Madrid Madrid Geneve Geneve Berlin Berlin Newton: Newton: DNS, DNS, SSH SSH 6

7 Lab Topology Domain name: Password: abc123 for all applications Be careful! You are an administrator Do not forget to change name site for labs! For Labs, you will work together with a partner (London and Rome for instance) Lab applications Netscape (example labs) Outlook 98 Lotus notes Internet browsers Netscape fortified (domestic) Microsoft Internet Explorer 5.0 export SSH Client Ldap Browser etc. 7

8 PKI, WHY? The rise of public data networks. Internet is a new platform for business relationships: E-business Business rules need to be translated into this new language. Hope behind PKI: to preserve classical business rules in this new virtual world. Drawbacks for E-E business Let s say you have an electronic contract which you need to distribute to another party over the Internet With existing Internet tools like www and you lose a lot compared to paper No assurance that the contract has been signed No guarantee that the contract is authentic No assurance of the contract s source Basically, it is worth than the paper where everything is printed on! 8

9 About needs... You need to know who you are dealing with (Authentication) You need to keep private things private (Confidentiality) You need to make sure that people do not cheat (Non-Repudiation) You need to be sure that information has not been altered (Integrity) If PKI is the answer then What is the question? On the Internet no one knows you're a dog! 9

10 Key Terms A message will be defined as plaintext or cleartext The process of disguising a message to hide its substance is encryption The encrypted message is referred to as ciphertext Decryption is the process turning ciphertext back into plaintext Key Terms Cryptography is the science allowing messages to be kept secure Cryptoanalysis is the art and science of breaking ciphertext Cryptology is the mathematics field Cryptologist are theoretical mathematicians 10

11 Cryptosystems A cryptosystem is a collection of cryptographic algorithms, cryptographic keys, and all possible plaintexts and theirs corresponding ciphertexts. Security Services Authentication: Provides the assurance of someone s identity Confidentiality: Protects against disclosure to unauthorized identities Non-Repudiation: Protects against communications originator to later deny it Integrity: Protects from unauthorized data alteration 11

12 Security Mechanisms Three basic building blocks are used: Encryption is used to provide confidentiality and integrity protection Digital Signatures are used to provide authentication, integrity protection and nonrepudiation Checksums / hash algorithms are used to provide integrity protection and can provide authentication One or more security mechanisms are combined to provide a security service Cryptography Algorithms All Cryptosystems are based on only three algorithms: 1 - Secret-Key algorithms 2 - Public-Key algorithms 3 - Message-Digest algorithms 12

13 Services, Mechanisms, Algorithms A typical security protocol provides one or more services SSL, IPSEC, TLS, SSH, etc... Services Signatures Encryption Hashing Mechanisms DSA RSA RSA DES SHA MD5 Algorithms Services are built from Mechanisms Mechanisms are implemented using Algorithms Security Protocol Layers Application Presentation Session Transport Network DataLink Physical S/MIME, PGP SSL, TLS, SSH IPSEC Hardware link encryption Application Presentation Session Transport Network DataLink Physical The further down you go, the more transparent it is The further up you go, the easier it is to deploy 13

14 Cryptography in History 2000 B.C. Hieroglyphics Cryptography as an Art Ancient Chinese First to transform messages in Ideographs for privacy India First Networks spies using phonetics encryption (Javanese or reverse speaking) Mesopotamia Numbers associate to letters (cuneiform table) Cryptography in History ATBASH cipher: In the Bible ABCDEFGH (clear) ZYXWVU (encrypted) Skytale Cipher (Greek) key: stick papyrus enrolled Polybius square (Greek) 14

15 Cryptography in History Runiques Stones by Vikings (Arts) Cryptography in History World War II: Electromechanical cryptography Rotor based machine transforming plaintext into ciphertext, using electrical signals as encryption key Example: Enigma machine used by Germans Ciphers were not new, but their processing was 1970-today: New ciphers: based on numbers properties issued from Mathematical theories RSA: Prime numbers factorization Diffie-Hellman: discrete logarithm ECDSA: Elliptic curve cryptography 15

16 Cryptanalysis Two categories of security levels Computationally secure: Question of time and money (Brute force attack) (Most of the cryptosystems: DES, 3DES, IDEA, RSA, DH etc.) Unconditionally secure: Can never be broken independently of the resources One-time pads Several Cryptanalytic Attacks Ciphertext only Brute force attack and dictionary attacks on keys Chosen ciphertext Start from a known ciphertext and try to appear as someone else to get information from others behavior Known Plain ciphertext Derive the key from knowledge of both plain and ciphertext 16

17 Secret-Key Cryptography Use a secret key to encrypt a message into a ciphertext Use the same key to decrypt the ciphertext into the original message Secret-key cryptography is referred also as symmetric cryptography or conventional cryptography The secret key is also known as session key or bulk encryption key Secret-Key Cryptography Let us imagine Alice and Bob who use Secret-Key to protect their messages Plaintext Plaintext Ciphertext Ciphertext Plaintext Plaintext Secret-Key Secret-Key 17

18 Secret-Key Cryptography How to share the Secret-Key? Alice and Bob can use the phone, fax, a meeting point, etc. But!?: Could someone steal the key? How to proceed without partner knowledge? Secret-Key Cryptography The Advantages Implementation is efficient to encrypt large volume of data (100 to faster than Public-Key Cryptography) Simple to implement in either software or hardware Most of the algorithms are well know and secure Seem to be safe to brute force attack Widely used 18

19 Secret-Key Cryptography The Disadvantages Hard to share Secret-Keys Large number of keys No non-repudiation (Signature) Subject to interception (Secret-Key) Secret-Key Cryptography Number of needed keys Suppose Alice, Bob and Chris want to use Secret- Key Cryptography! They need only 3 keys 19

20 Secret-Key Cryptography Increase of keys number Suppose they want to add Dawn and Eric Now they need ten keys Secret-Key Cryptography If n persons want to communicates we have this formula: Key s number = ((n)*(n-1)) / 2 As example: A company of people = keys! 20

21 Secret-Key Cryptography Block cipher: Encrypts data in predefined block size Most well-known ciphers are block ciphers Stream cipher: Encrypts data stream, one-bit at the time Only few algorithms use it Secret-Key Cryptography Common Secret-Key Ciphers DES Triple DES (3DES) RC2 IDEA Blowfish CAST-128 Skipjack RC4 (Stream cipher) etc. 21

22 Secret-Key Cryptography DES Data Encryption Standard (1973) by IBM World Standard for 20 years DES was broken in 22 hours (DES challenge III, January 18th, 1999) Key size = 56 bits Block cipher Recommendation: should be replaced by 3DES for high confidentiality requirements! Secret-Key Cryptography Triple DES (3DES) Block cipher Encrypt + decrypt + encrypt with 2 (112 bits) or 3 (168 bits) DES keys DES s replacement for Banking (1998) Recommendation: Use it for high confidentiality! 22

23 Secret-Key Cryptography RC2 Designed by Ron Rivest from RSA Block cipher Key size = up to 2048 Encryption speed: independent from the key size Trade secret from RSA, posted on the net in 1996 Designed as a DES replacement Faster than DES Recommendation: like DES but faster! Secret-Key Cryptography CAST-128 Designed by C.Adams and S. Tavares (1993) Block cipher Key size = 128 bits Used in PGP 5.x Recommendation: unknown 23

24 Secret-Key Cryptography IDEA International Data Encryption Algorithm Designed by X.Lai and J. Massey (ETH Zurich) in 1990 Block cipher Key size = 128 bits More efficient than DES for software implementation Used in PGP Recommendation: Better than DES Secret-Key Cryptography Blowfish Designed by B. Schneier in 1993 Optimized for high-speed execution on 32-bit processors Block cipher Key size = up to 448 bits key Recommendation: Use for fast performances and with a maximum key size 24

25 Secret-Key Cryptography Skipjack Designed by NSA (National Security Agency) Block cipher Key size = 80 bits Recommendation: Inadequate for long term security (key size too short) Secret-Key Cryptography GOST Acronym for GOsudarstvennyi STandard Russian answer to DES Key size = 256 bits Recommendation: Incompletely specified to give an answer... 25

26 Secret-Key Cryptography RC4 Designed by Ron Rivest from RSA Stream cipher Key size = up to 2048 bits Optimized for fast software implementation Trade secret from RSA, posted on the net in 1994 Very fast Used in SSL, Lotus Note, Windows password encryption, Oracle etc. Recommendation: Highly recommended for long keys (>40 bits) Secret-Key Cryptography Many, many others There is no good reason not to use one of above proven algorithms! 26

27 Secret-Key Relative Performance FAST RC4 Blowfish, CAST-128 Skipjack DES, IDEA, RC2 3DES, GOST SLOW AES National Institute of Standard and Technology expressed a formal call for algorithm on The aim is to define the next century s symmetric encryption standard or Advanced Encryption Standard AES1 conf. (08.98): 15 potential candidates AES2 conf. (03.99): 5 retained candidates Final choice expected for summer

28 AES candidates MARS (IBM) RC6 (RSA Laboratories) Rijndael (J. Daemen, V. Rijmen) Serpent (R. Anderson, E. Biham, L. Knudsen) Twofish (B. Schneier - Counterpane) AES requirements Block cipher of minimum 128 bits Must implement symmetric keys of 128, 192, 256 bits Must be efficient on software and hardware basis (high speed encryption) 28

29 Secret-Key Cryptography Use a symmetric encryption to encrypt a text file (DES and IDEA) Time: 15 minutes P.27 Public-Key Cryptography Use two distinct keys, one public and one private The private is kept secret The public can be freely shared Referred as asymmetric cryptography A public-key and its corresponding key are mathematically related A public-key and its associated private-key are called a key-pair 29

30 Public-Key Cryptography A message encrypted with a public-key can be only decrypted by the private-key A message encrypted with a private-key can be only decrypted by the public-key (Signature) Public-Key Cryptography Suppose Alice wants to send a message to Bob using Public-Key Cryptography Plaintext Plaintext Ciphertext Ciphertext Plaintext Plaintext Bob s Bob s public public key key Bob s Bob s private private key key 30

31 Public-Key Cryptography How to obtain the public-key? Any publishing way can be used to get the publickey (Directory servers, Phone, Web server, Newspapers etc.) No more confidentiality issues in key distribution Public-Key Cryptography Advantages No secret sharing Fewer keys No prior relationship needed Easier to administrate Offers useful mechanisms like digital signature (offering non repudiation) 31

32 Public-Key Cryptography Disadvantages Not efficient (slow) to encrypt large volume of data Keys need to be much longer than with secret-key encryption Impossible to encrypt a plaintext with size > key Types of public-key algorithm A public-key algorithm is reversible if encryption and decryption can be processed with either a private or a public-key A public-key algorithm is irreversible if a privatekey is mandatory for encryption Key exchange algorithm: neither used for encryption nor decryption (Diffie-Hellman) 32

33 RSA Inventors: Rivest, Shamir, Adleman in 1977 Most popular Provide confidentiality, digital signature and key exchange Key length up to 4096 Plaintext length < Key length Ciphertext size = Key size RSA RSA is protected by a patent. Patent expires on 20th September 2000 Relies on irreversible mathematics functions (Prime numbers) PDAs, WAPs: RSA Multi-Prime 33

34 Diffie-Hellman Published in 1976 by W. Diffie and M. Hellman Oldest known public-key cryptosystem Key agreement algorithm Enables secret-key exchange without prior knowledge Agrees on shared secret used in conjunction with a secret-key Cryptosystem (DES, 3DES, IDEA, etc.) Diffie-Hellman Hellman: : How it works? Alice s private key Bob s public key Alice s public key Bob s private key Share Share Secret Secret Key Key = Share Share Secret Secret Key Key 34

35 DSA Compliant to Digital Signature Standard (DSS) Published in 1994 Irreversible algorithm (encryption with private key only) Used in Digital signature only Performance tuned for smart cards Comparative Public-Key table Algorithm DSA Type Digital Signature El-Gamal Digital Signature RSA Diffie-Hellman Confidentiality Digital Signature Key exchange Key exchange 35

36 Message-Digest Algorithms Take a variable-length message and produce a fixed-length digest as output The fixed-length output is called the message digest, a digest or a hash A message-digest algorithm is also called a one-way hash algorithm or a hash algorithm Message-Digest Algorithms Input Message Hash Function Fixed-length Digest 36

37 Message-Digest Algorithms Message-Digest Algorithms properties required to be cryptographically secure It must not be feasible to determine the input message based on its digest It must not be possible to find an arbitrary message that has a particular, desired digest It should be impossible to find two messages that have the same digest (collision) It should be very sensitive to input message changes Message-Digest Algorithms Some Common Message-Digest Algorithms MD2: 128-bit-output, deprecated, by Ronald Rivest MD4: 128-bit-output, broken, by Ronald Rivest MD5: 128-bit-output, weaknesses, by Ronald Rivest SHA-1: 160-bit-output, NSA-Designed RIPEMD-160: 160-bit-output Haval: 128 to 256 bit-output (3 to 5 Passes) CRC-32: 32-bit-output Recommendation: Use SHA-1 37

38 Message-Digest Algorithms Message-Digest at work Creation of digital signatures Creation of MAC, HMAC Creation of secret-key with a passphrase File checksum (FTP server, Patches, etc.) FIA (File Integrity Assessment like Tripwire) Powerful tool to detect small changes Message-Digest Algorithms Use Message-Digest Algorithms to compute a file s digest (MD5 and SHA-1) Time: 15 minutes p.31 38

39 Random Numbers Random numbers are usually required to generate cryptographic keys or challenge. Two main categories (PRNG) Pseudo Random Number Generator uses a deterministic algorithm to generate a pseudo random number based on a seed (mouse, keyboard, etc..) A random number generator generates truly unpredictable numbers. Based generally on special hardware (white noise, radioactive-decay, etc ) Random Numbers A very secure cryptosystem can be broken if it relies on random numbers that can be guessed Netscape browser using SSL broken! Some PRNG Yarrow from B. Schneier CryptPack etc. 39

40 Keys Length To break a secret-key cryptosystem with no weakness, an attacker must try each possible key. This is called a brute force attack To break a public-key cryptosystem an attacker should use smarter brute force attack based on mathematics Key space dimension = 2n (n:keylength) What is the right key size? The goals of cryptography are to make the value of encrypted information less than the money spent to decrypt it! the value of information usually decreases over time 40

41 RSA s Challenge on DES (III) Method: splitting the Key space for distributed Brute Force Attack (space dimension = 2n, where n is the key-length) Starting date: Ending: 22h15 min. later Brute Force Attack frequency: 245 Billions keys/sec. Platforms: Cray/Sun/SGI/Pentium etc.. RSA s Challenge on RSA-155 Key-length: 512 bits = 155 digits Method: Prime number factorization Starting Date: August 99. Ending: 5 months later Time: 35.7 CPU years Platforms: SGI/Sun/Pentium etc. 292 computers 41

42 Keys time of life Most of the time, session keys are changing (IPSec, etc.) to enforce security Can be triggered by time or by encrypted data quantity Public-Key vs Secret-key Secret-key (bits) Public-Key (bits)

43 Blowfish Advanced CS: How it works? Blowfish Advanced CS File encryption software using symmetric encryption Used secret-key from a password or a keydisk Support key splitting Wipes sensitive information Used secret-key ciphers like: Blowfish 3DES Twofish 43

44 Blowfish Advanced CS Use SHA-1 to generate secret-key from a password Use random (PRNG) to create the key file and to overwrite (wiping) data File Encryption Setup a file s encryption software to protect sensitive information Time: 20 min p.38 44

45 Message Authentication Code MAC is a fixed-length data item that is send together with a message to prove integrity and origin Provide authentication and integrity without confidentiality Also referred as message integrity code (MIC) Most common form is HMAC ( Hashed Mac) Example: HMAC-MD5 Message Authentication Code Input Message + Secret-Key Hash Function HMAC HMAC 45

46 Digital Signature Digital signature is a data item that guarantees the origin and integrity of a message The signer of the message uses a signing key The recipient uses a verification key to verify the origin and integrity Signing key = private-key Verification key = public-key Digital Signature By using his own private key, the signer can not repudiate the fact he has signed the message This mechanism provide non-repudiation Think about the difference with MAC 46

47 Digital Signature: Basics Simple signature using PRIVATE-key Plaintext Plaintext Ciphertext Ciphertext (Signature) (Signature) Plaintext Plaintext Alice s Alice s private private key key Alice s Alice s public public key key Digital Signature: How it works? Plaintext Plaintext Plaintext Plaintext Alice s private key Digest Digest MD1 MD1 = MD2 MD2?????? Alice s Public key Signature Signature Signature Signature 47

48 Digital Signature Why signing a message involves Hashing? Signature (data item) is too big Performance (public-key is very slow) Possible attack (known plaintext attack) Common Signature Algorithms RSA Well known Export limitation DSA Similar to RSA (algebraic properties of numbers) Non-reversible algorithm, suitable for digital signature only ElGamal Another cipher for digital signature only 48

49 Hybrid Cryptosystems A Hybrid Cryptosystem combines the best features of both Secret-Key and Public-Key cryptography Used to exchange session key to initiate a symmetric encryption Example: PGP, SSL, IPSEC using Diffie-Hellman or RSA Example: Diffie-Hellman and Secret-Key cryptosystem Asymmetric Symmetric Share Share Secret Secret Key Key = Share Share Secret Secret Key Key Plaintext Plaintext Ciphertext Ciphertext Plaintext Plaintext 49

50 RSA Key wrapping encryption Suppose Alice wants to send an encrypted text to Bob across the Internet, using RSA key wrapping RSA Key wrapping encryption How it works? Alice creates a session key, which is a one-timeonly secret-key Alice encrypts the data with the session key Alice encrypts the session key with Bob s publickey Alice sends the ciphertext + the encrypted session key to Bob 50

51 RSA Key wrapping encryption RSA Key wrapping decryption How it works? Bob receives the message from Alice Bob uses his private-key to recover the temporary session key Bob uses the session key to decrypt the ciphertext 51

52 RSA Key wrapping decryption RSA Key wrapping question? How sure can Alice be about Bob s presumed public-key? 52

53 Man in the Middle Attack! PGP: How it works? 53

54 PGP: introduction Stands for Pretty Good Privacy By Phil Zimmerman (1991) Worldwide distributed in 1991 Provides mail and file encryption/signature Today: PGP Available on many platforms like: Unix Windows Linux Atari, Macintosh, OS/2 etc. PGP Introduction Contains a set of algorithms for Message digest: MD5, SHA1 and RIPEMD Public-key: RSA, DSA Secret-key: DES, 3DES, CAST-128 and IDEA Data compression: LZH 54

55 Original PGP signature Using RSA and MD5 for example Quiz! 55

56 Original PGP encryption Encryption based on RSA key wrapping Original PGP decryption Decryption based on RSA key wrapping 56

57 Quiz! PGP today To enforce security, PGP offers today DSS and DH key exchange Support for x.509 certificate as well 57

58 PGP Trust model Originally, PGP trust models were: Direct trust (hosts mutually and directly trusted) Web-of-Trust If Alice trusts Bob and Bob trusts Charlie, then Alice will trust Charlie In other words friends of my friends are my friends Today, hierarchical trust is also possible Other PGP products PGP Phone to transform a desktop into a secure phone via real-time encryption PGP disk offering privacy to file system PGP SDK development kit 58

59 PGP Use PGP for sending a signed and encrypted Time: 40 min P.49 SSH: How it works? 59

60 SSH SSH = Secure Shell Originally developed in 1995 as a secure replacement for rsh, rlogin,rcp, ftp, telnet Originally implemented in Finland Available worldwide About users around the world SSH Also allows port forwarding (tunneling over SSH) X11 connection forwarding SSH v2 submitted to IETF Can be run and used in a short space of time Many SSH clients available Secure CRT F-Secure Java Client etc. 60

61 SSH: Why? Unix Unix Host Host Login: rome Password: abc123 Network Attacker with sniffer Original TCP Packet Telnet Telnet to to Unix Unix Host Host SSH-1 1 Protocol (Hybrid Crypto) Client Server TCP 22 Auth request S S Session SSH DATA SSH Handshake Public Key Symmetric Encrypted data Client performs TCP handshake with the server at port 22 for SSH standard port Start authentication process. Client send authentication request The server responds with two keys. Host key 1024 bit RSA and a Server key 768 bit RSA (Generated hourly) Client verify host key and generate a secret key that is used for bulk encryption then encrypt this secret key twice with Host and Server public keys and send it to the server SSH Server decrypt the session key with the two private keys. Begin bulk encrypted data exchange. Client encrypts Server decrypts request, encrypts and sends response 61

62 SSH Ciphers SSH v1 RSA DES, 3DES, Blowfish, IDEA SSH v2 Diffie-Hellman for key exchange algorithm DSA, RSA 3DES, Blowfish, IDEA, Twofish, Arcfour, Cast-128 SSH Authentication Multiple Authentication mechanisms Static password (protected by SSH encryption) RSA or DSA authentication (client decrypts challenge from server) Plug-in authentication (Securid, Radius, ldap, PAM *).rhosts or /etc/hosts.equiv (Based on IP address) * 62

63 SSH Authentication (RSA/DSA) Client decrypts challenge from server Provides strong authentication (client uses his private-key plus a PIN code) Server sends encrypted challenge with client s public key Client decrypts challenge and sends it to the server The challenge is chosen randomly SSH Tunneling mode HTTP HTTP SSH SSH Client Client Corporate Net Web Web server server Encrypted SSH tunnel Clear text SSH SSH Server Server DMZ 63

64 SSH Setup a SSH client to replace Telnet. Use two authentication mechanisms. Setup a SSH tunnel Time: 60 min p. 64 PKCS Public Key Cryptographic Standard (PKCS) Standardization of public-key algorithmic, in order to maintain interoperability Developed by RSA Laboratories, a consortium of information technology vendors and academic institutions. Apple Microsoft Compaq Lotus Sun MIT etc. 64

65 PKCS list #1: Encrypting and signing using RSA public key cryptosystem #3: Key agreement with Diffie-Hellman key exchange #5: Encrypting with a secret key derived from a password #7: Syntax for message with digital signature #8: Format for private key information #9: Attribute type for use in other PKCS standard #10: Syntax for certification request #11: Define a cryptoki programming interface (API for smart cards) #12: Portable format for storing and transporting private keys #13: Encrypting and signing data using elliptic curves cryptography #14: Standard for pseudo number generation #15: Standard to store credentials on tokens Smart Card Smart Cards consist of a chip (processor or/and memory), a contact plate and a piece of plastic (ISO x85x0.8 mm) Smart Cards are used for multi-applications GSM, Banking, Medical, E-Commerce, Pay TV, etc 65

66 Smart Card and PKI Storing the private-key and/or X.509 certificate on the Smart Card Provide Strong Authentication Something you have, Something you know Access protected by a PIN (like credit card) Types of Smart Card Memory Cards PKI smart cards using Crypto-processor (RSA, etc.) Some Smart Card are brute force protected Smart Card Standard (interface) PKCS #11 also call Cryptoki Interface for the communication to Smart Card Netscape, RSA PC/SC and their Crypto API Bull, Gemplus, HP, Intel, Microsoft, Schlumberger Siemens, SUN, Toshiba 66

67 Smart Card Reader Keyboard USB Serial PCMCIA Diskette reader SCSI Today s s Smart Card Drawbacks Hardware... Multi-Services rarely used Users leave Smart Card on the reader 67

68 End Day One Questions Day One? 68

69 Quiz! Describe Secret-Key? Advantages / Disadvantages Describe Public-Key? Advantages / Disadvantages Describe Messages Digest? Describe Digital Signature and verification? Differences between MAC and signature? Describe two Hybrid Cryptosystems? Describe a challenge response based authentication? PKI introduction The aim of PKI is to integrate all the previous mechanisms and algorithms into a coherent and efficient structure. It will answer the following fundamental security needs: Authentication Confidentiality Non-Repudiation Integrity The basis of PKI relies on the concept of certificates 69

70 PKI basis function PKI will include at least: One Certificate Authority who delivers certificates One Directory who stores active Certificates and/or Revoked Certificates One Registration Authority who allows certificates enrollment One centralized Management Remember Alice, Bob and Charlie... Bob has no proof of the link between Alice s public-keys and her identities So What? 70

71 Third Trusted Party Trusted Authority Direct Trust Direct Trust No more Charly Implicit Trust Digital Certificates A public-key certificate is a bond between an entity s public-key and one entity The entity can be: A person A role (Manager Director) An organization A piece of hardware (Router, Server, IPSEC, SSL, etc.) A software process (JAVA Applet) A file (Image, Databases, etc.) etc. 71

72 Digital Certificates A Public-key certificate provides assurance that the public-key belongs to the identified entity A Public-key certificate is also called a digital certificate, digital ID or certificate The entity identified is referred to as the certificate subject If the certificate subject is a person, it is referred to as a subscriber Digital Certificates A certificate is like a passport... 72

73 How to obtain a certificate As with passports, you give proof of your identity to an official (or trusted) authority. The authority checks this proof. The authority delivers a signed passport. This procedure is defined as an enrollment Instead of enrolling for a passport we ll enroll for digital certificate. Digital Certificates Graphical representation of a certificate 73

74 Demo: certificate view X.509 Certificate Standard X.509 is a standard for digital certificate by International Telecommunications Union (ITU) First published in 1988 (V1.0) Version 2.0 (1993) adds two new fields Current version is v3.0 (1996) and allows additional extension fields 74

75 X.509 Basic Certificate Fields Version: X509 version 1,2 and 3 Certificate serial number: Integer assigned by the CA (unique) Signature algorithm identifier: RSA/MD5 etc. Issuer name: name of CA having signed and issued the certificate Validity period: time interval Subject name: the entity name (this name must be unique = distinguished name (DN) ) X.509 Basic Certificate Fields Subject public-key information: contains the public-key plus the parameters Issuer unique identifier: optional field Subject unique identifier: optional field Extensions: may provide additional data for specific applications. And the Certification Authority's Digital Signature 75

76 SSL X.509 example Data and Signature section in human-readable format! SSL X.509 example Here is the same certificate in the 64-byte-encoded format interpreted by a software 76

77 How to build a Certificate X.509 Certificate X.509 Fields Public key Identity etc. Digital Signature Process CA CA s Signature Think of it like a credit card Digital Credit Union DCU GOOD THRU LAST DAY OF 06/98 Andrew Nash Validity Period Signature Issuer Name Subject Name AUTHORIZED SIGNATURE Andrew K Nash Public Key 77

78 How to verify a certificate? Obtain the Signer s (CA) public-key Pass the X.509 fields into the message digest algorithm and keep the digest (= your digest 1) Decrypt the Certificate signature with the Signer s (CA) public-key. The decrypting plaintext will be the digest (= your digest 2) Compare the digest 1 with the digest 2 Does this match together? Verifying a certificate? X.509 Fields Public key Identity etc. CA s Signature MD1 MD1 = MD2 MD2?????? CA s CA s public public key key 78

79 A few words about CAs Entities that issue and manage digital certificates including maintaining revoking publishing status information CAs security policy defined in CPS (Certification Practice Statement) Security measures to guarantee CA s integrity Security measures to check enrollment s identity Trust level relies upon CPS and not technology Few words about CAs PKI security relies on CA s private-key secrecy Should never be acceded Should be backed-up Solution: store it inside dedicated tamperproof hardware 79

80 Type of CAs Private CAs: Hold by a private entity (Company, Administration, the Military) Public CAs: Verisign, Swisskey, GTE, Thawte, Global-sign, Certplus, etc. A CA can be hybrid as for instance On-site services of Verisign Registration Authority (RA) A Registration Authority is the entity receiving the certification requests and managing them before sending them to the CA. RA acts as a front end. As in hybrid CAs, the registration authority can be separate from the CA itself. In this case we talk about Local Registration Authority (LRA) Multiple sites for big companies Distributed environment 80

81 (L)RA Front End LDAP X.500 Directories required more effort and complexity than most companies were prepared to invest Lightweight Directory Access Protocol was proposed by the Internet community LDAP uses the X.500 naming conventions but simplifies the way you interact with a directory 81

82 LDAP LDAP is a front end that is used to implement simple directory services An LDAP Server may be implemented over: a full X.500 Directory a database a flat file Most of structured data set CA will use LDAP to publish certificates and CRLs Demo: browsing ldap 82

83 Certificate Revocation Certificate Revocation: Mechanism used by the CA to publish and disseminate revoked certificates Revocation is triggered in the following cases: Key compromise CA compromise Cessation of operation Affiliation change etc... Certificate Revocation Several data structures exist to publish revocation CRL (Certificate Revocation List) ARL (Authority Revocation List) CRT (Certificate Revocation Trees) by Valicert Also Online query mechanisms OCSP (Online Certificate Status Protocol) 83

84 CRL s publication and retrieval Certificate-using applications must be aware of revoked certificates Get CRL via ldap Get CRL via FTP, Http, Https, etc. Check certificate status via OCSP Etc. Problem to solve: Revocation delay! Not yet fully standardized (Delta CRLs, OCSP etc.) CRL Version 2 structure Version Signature algorithm Issuer DN Update Date Next Update Date List of revoked certificates per-certificates extensions Extensions 84

85 CRL Version 1 view (text) CRL Version 1 view (PEM) 85

86 Demo: get a CRL OSCP CA Pushing Revocation LDAP PKI enable Applications OCSP over http OCSP Responder OCSP FTP, http others Backend 86

87 Distinguish Names X.509 certificates bind a Distinguish Name (DN) to a public-key A DN is a set of name-value pairs, such as uid=cenzler, that uniquely identify an entity Example: a typical DN of a Datelec employee: C=CH, O=Datelec, OU=Engineering, L=Geneva, CN=Cedric Enzler, Distinguish Names DNs may include a variety of other name-value pairs (see X.500 standard) Most CAs are LDAP compliant. Thus, DNs will be used as entries in Directories that support LDAP 87

88 Single CA Until now, we assumed the presence of a unique CA certifying all users. Thus, there s a direct relation between users and their CA X509 X509 X509 X509 X509 X509 Multiple CAs top-down Typical CA implementation for large companies Root CA X509 Trust relation Subordinate CAs X509 X509 Subordinate CAs X509 X509 Certificates X509 X509 X509 X509 X509 88

89 Trust Because a CA has a certificate itself and represents the highest possible trust level, the CA has its self-signed certificate A self-signed certificate is a Root Certificate or Meta-Introducer A certificate-using application (any X.509 holders) must trust the Root certificate Importing a Root certificate into such an application is called Bootstrapping a CA Bootstrapping must be considered as a very critical operation! Trusted Root certificates Many applications (as http browsers) have already embedded root certificates 89

90 Demo: Bootstrap Swisskey Trust architecture Assume Alice, Bob and Charly are exchanging s Root CA X509 CA3 X509 X509 CA1 X509 X509 CA2 X509 X509 X509 X509 X509 A B C 90

91 Simple Case Alice receives Bob s and the X.509 certificate How can Alice check Bob s certificate? She looks at Bob s signer Does she know the signer? Yes: Is it a self-signed? No: Is the upper level CA trusted? X509 Root 3 X509 Bob X509 CA3 2 1 More complicated... Alice receives Charly and the X.509 certificate How can Alice check Charly certificate? Charly sent intermediary CAs certificates along with his own certificate. This is the chain of certificates Thus, the validation process will be... X509 Charly 1 X509 CA2 2 X509 CA1 3 X509 Root 4 91

92 Cross certification A typical case: merging of Certification Islands: X509 X509 X509 X509 X509 X509 X509 X509 X509 X509 X509X509 X509 X509 X509 X509X509 X509 X509 X509 Let s s be practical! User enrolls for certificate Admin mailed notification User mailed acknowledgement RA User mailed retrieval PIN Security Officer User Admin Approves request User retrieves certificate CA Certificate installed LDAP 92

93 Some X.509 certificate types CA certificate (Root) S/MIME SSL server/client IPSec gateway/client Object signing certificates Java script Image signature for copyright File detection intrusion (binary certifications) etc. PKI Standards Some standard organizations: IETF PKI Working Group (PKIX) ITU SPKI RSA with PKCS 93

94 PKI Vendors Some Public CA 94

95 PKI Summary Based on Certificates (X.509) Trusted third party (CA) (L)RA CRL Data repositories Mechanisms and protocols between all these elements S/MIME: How it works? 95

96 S/MIME Secure Multipurpose Internet Mail Exchange Developed by RSA, Microsoft, Lotus, Banyan, and Connectsoft in 1995 Implemented at application layer Build on top of PKCS #7 and PKCS #10 Very strong commercial vendor acceptance Netscape, Microsoft, Lotus, etc. IETF developed S/MIME v3 (last version) Use X.509 certificates S/MIME S/MIME provides four services: Security Services Security Mechanism Message origin authentication Digital Signature Message integrity Digital Signature Non-repudiation of origin Digital Signature Message confidentiality Encryption 96

97 S/MIME Ciphers Symmetric encryption 3DES 168 bit DES 56 bit RC2 128, 64 and 40 bit Public-Key RSA 512 to 1024 bit S/MIME Signature Suppose Alice sends a S/MIME signed to Bob Mime format Alice s Private Key Digest MIME encoded format 97

98 S/MIME Encryption Suppose Alice sends a S/MIME encrypted to Bob Random Session Key Bob s Public Key Mime Format Plaintext Encoding Ciphertext MIME encoded format S/MIME dual Key? Dual Key Pair One key pair for encryption One key pair for signature and non repudiation CA must support key backup and recovery Key pair for encryption generated on the CA itself! Draw back: Not all client support Dual Key Pair 98

99 S/MIME The student will setup an system using S/MIME. He will use digital signature and encryption. Certificates retrieval done by ldap. Time: 45 min p.77 SSL: How it works? 99

100 SSL Secure Sockets Layer TCP/IP socket encryption Provides end-to-end protection of communications sections Confidentiality protection via encryption Integrity protection with MAC s Usually authenticates server using a digital signature (option) Can authenticate client (option) SSL History SSL v1 designed by Netscape in 1994 Netscape internal usage SSL v2 shipped with Navigator 1.0 and 2.0 Microsoft proposed PCT (Private Communications Technology), which overcame some SSL v2 shortcomings SSL v3 latest version The progresses of PCT were echoed in SSL v3 TLS v1 developed by IETF 100

101 SSL Protocol The SSL protocol runs above TCP/IP The SSL protocol runs below higher-level protocols such as HTTP or IMAP SSL Ports from IANA nsiiops 261/tcp # IIOP Name Service over TLS/SSL https 443/tcp # http protocol over TLS/SSL smtps 465/tcp # smtp protocol over TLS/SSL (was ssmtp) nntps 563/tcp # nntp protocol over TLS/SSL (was snntp) imap4-ssl 585/tcp # IMAP4+SSL (use 993 instead) sshell 614/tcp # SSLshell ldaps 636/tcp # ldap protocol over TLS/SSL (was sldap) ftps-data 989/tcp # ftp protocol, data, over TLS/SSL ftps 990/tcp # ftp protocol, control, over TLS/SSL telnets 992/tcp # telnet protocol over TLS/SSL imaps 993/tcp # imap4 protocol over TLS/SSL ircs 994/tcp # irc protocol over TLS/SSL pop3s 995/tcp # pop3 protocol over TLS/SSL (was spop3) msft-gc-ssl 3269/tcp # Microsoft Global Catalog with LDAP 101

102 SSL Ciphers The SSL protocol supports the use of a variety of different cryptographic algorithms or ciphers DES (56) 3DES (168) RC4 (40 or 128) RC2 (40) Fortezza (96) IDEA (128) SHA-1, MD5 DSA RSA (Key exchange) SSL Handshake Negotiate the cipher suite Establish a shared session key Authenticate the server (Optional) Authenticate the client (Optional) 102

103 SSL Handshake Client performs TCP handshake with the server at port 443 for HTTPS which is HTTP in SSL Client S TCP Hello Cert GET URL DATA Server 443 S SSL Handshake Asymmetric KB Bulk Encrypted HTTP Protocol Symmetric Start Cipher negotiation. Client sends SSL HELLO containing ciphers supported by the client and a random number. The server responds with a HELLO containing the ciphers to use and a random number. Note the server selects the ciphers to be used. RSA, RC4 and MD5 are most common. Start pass secret. Server sends it s CERTIFICATE. Client uses certificate to encrypt the pre-master Secret and sends to Server. Both compute bulk encryption KEYS from secret and random numbers. Client and Server exchange CHANGE CIPHER SPEC and FINISH messages. Begin bulk encrypted data exchange. Client encrypts and sends HTTP GET. Server decrypts request, encrypts and sends response Server sends FINISH and closes with TCP handshake A SSL connection consists of an SSL handshake followed by bulk encrypted protocol Client authenticate server Is today's date within the validity period? Is the issuing CA a trusted CA? Does the issuing CA's public-key validate the issuer's digital signature? Does the domain name in the server's certificate match the domain name of the server itself? 103

Guidelines for the Selection, Configuration, and Use of Transport Layer Security (TLS) Implementations

Guidelines for the Selection, Configuration, and Use of Transport Layer Security (TLS) Implementations NIST Special Publication 800-52 Revision 1 Guidelines for the Selection, Configuration, and Use of Transport Layer Security (TLS) Implementations Tim Polk Kerry McKay Santosh Chokhani

More information

Payment Card Industry (PCI) Data Security Standard (DSS) and Payment Application Data Security Standard (PA-DSS)

Payment Card Industry (PCI) Data Security Standard (DSS) and Payment Application Data Security Standard (PA-DSS) Payment Card Industry (PCI) Data Security Standard (DSS) and Payment Application Data Security Standard (PA-DSS) Glossary of Terms, Abbreviations, and Acronyms Version 3.0 January 2014 AAA Access Control

More information

Guidelines on Firewalls and Firewall Policy

Guidelines on Firewalls and Firewall Policy Special Publication 800-41 Revision 1 Guidelines on Firewalls and Firewall Policy Recommendations of the National Institute of Standards and Technology Karen Scarfone Paul Hoffman NIST Special Publication

More information

Data protection. Protecting personal data in online services: learning from the mistakes of others

Data protection. Protecting personal data in online services: learning from the mistakes of others Data protection Protecting personal data in online services: learning from the mistakes of others May 2014 Contents Introduction... 2 What the DPA says... 4 Software security updates... 5 Software security

More information

The Handbook by Daniele Raffo with Robert J. Hansen and Patrick Brunschwig v 1.0.0 and earlier

The Handbook by Daniele Raffo with Robert J. Hansen and Patrick Brunschwig v 1.0.0 and earlier EnigMail openpgp email security for mozilla applications The Handbook by Daniele Raffo with Robert J. Hansen and Patrick Brunschwig v 1.0.0 and earlier 1. Table of Contents 2. Introduction...5 3. Acknowledgements...8

More information

Recommendation for Key Management Part 1: General (Revision 3)

Recommendation for Key Management Part 1: General (Revision 3) NIST Special Publication 800-57 Recommendation for Key Management Part 1: General (Revision 3) Elaine Barker, William Barker, William Burr, William Polk, and Miles Smid C O M P U T E R S E C U R I T Y

More information

The case for ubiquitous transport-level encryption

The case for ubiquitous transport-level encryption The case for ubiquitous transport-level encryption Andrea Bittau Stanford Michael Hamburg Stanford Mark Handley UCL David Mazières Stanford Dan Boneh Stanford Abstract Today, Internet traffic is encrypted

More information

Symantec Encryption Management Server

Symantec Encryption Management Server Symantec Encryption Management Server Administrator's Guide 3.3 The software described in this book is furnished under a license agreement and may be used only in accordance with the terms of the agreement.

More information

Off-the-Record Communication, or, Why Not To Use PGP

Off-the-Record Communication, or, Why Not To Use PGP Off-the-Record Communication, or, Why Not To Use PGP Nikita Borisov UC Berkeley Ian Goldberg Zero-Knowledge Systems Eric Brewer UC Berkeley

More information

Public Key Encryption and Digital Signature: How do they work?

Public Key Encryption and Digital Signature: How do they work? White Paper Public Key Encryption and Digital Signature: How do they work? Business solutions through information technology Entire contents 2004 by CGI Group Inc. All rights reserved. Reproduction of

More information

Data security in multi-tenant environments in the cloud

Data security in multi-tenant environments in the cloud Institute of Parallel and Distributed Systems University of Stuttgart Universitätsstraße 38 D 70569 Stuttgart Diplomarbeit Nr. 3242 Data security in multi-tenant environments in the cloud Tim Waizenegger

More information

Machine Readable Travel Documents

Machine Readable Travel Documents Doc 9303 Machine Readable Travel Documents Part 3 Machine Readable Official Travel Documents Volume 2 Specifications for Electronically Enabled MRtds with Biometric Identification Capability Approved by

More information

Electronic Authentication Guideline. -- OR --

Electronic Authentication Guideline. -- OR -- The attached Special Publication 800-63-1 document (provided here for historical purposes) has been superseded by the following publication: Publication Number: Special Publication 800-63-2 Title: Publication

More information

Siebel Security Guide. Version 8.0, Rev. C February 2011

Siebel Security Guide. Version 8.0, Rev. C February 2011 Siebel Security Guide Version 8.0, Rev. C February 2011 Copyright 2005, 2011 Oracle and/or its affiliates. All rights reserved. The Programs (which include both the software and documentation) contain

More information

ZyWALL 5. Support Notes. Internet Security Appliance. Version 4.02 Dec. 2006

ZyWALL 5. Support Notes. Internet Security Appliance. Version 4.02 Dec. 2006 ZyWALL 5 Internet Security Appliance Support Notes Version 4.02 Dec. 2006 INDEX Application Notes...12 Seamless Incorporation into your network...12 Using Transparent (Bridge Mode) Firewall...12 Internet

More information

Siebel Security Guide. Siebel Innovation Pack 2013 Version 8.1/8.2 September 2013

Siebel Security Guide. Siebel Innovation Pack 2013 Version 8.1/8.2 September 2013 Siebel Security Guide Siebel Innovation Pack 2013 Version 8.1/8.2 September 2013 Copyright 2005, 2013 Oracle and/or its affiliates. All rights reserved. This software and related documentation are provided

More information

VMG1312-B Series Support Notes VMG1312-B Series Support Notes Jun2012 Edition 1.0 All contents copyright (c) 2012 ZyXEL Communications Corporation.

VMG1312-B Series Support Notes VMG1312-B Series Support Notes Jun2012 Edition 1.0 All contents copyright (c) 2012 ZyXEL Communications Corporation. VMG1312-B Series Support Notes Jun2012 Edition 1.0 Index General Application Notes... 6 Why use VMG1312-B Series?...6 Application Scenario...8 Prologue... 10 Access Application Notes...12 Web GUI... 12

More information

BusinessLink Software Support

BusinessLink Software Support BusinessLink Software Support STRATEGI ADMINISTRATOR S GUIDE Version V1R9 This manual applies to Strategi version V1R9 and later and was last revised in July 2005. ADVANCED BusinessLink Corp. may have

More information

Cisco VPN Client User Guide for Linux and Solaris

Cisco VPN Client User Guide for Linux and Solaris Cisco VPN Client User Guide for Linux and Solaris Release 4.0 Corporate Headquarters Cisco Systems, Inc. 170 West Tasman Drive San Jose, CA 95134-1706 USA Tel: 408 526-4000 800 553-NETS

More information

The Critical Security Controls for Effective Cyber Defense. Version 5.0

The Critical Security Controls for Effective Cyber Defense. Version 5.0 The Critical Security Controls for Effective Cyber Defense Version 5.0 1 Introduction... 3 CSC 1: Inventory of Authorized and Unauthorized Devices... 8 CSC 2: Inventory of Authorized and Unauthorized Software...

More information

Computer Science and Artificial Intelligence Laboratory Technical Report. MIT-CSAIL-TR-2015-026 July 6, 2015

Computer Science and Artificial Intelligence Laboratory Technical Report. MIT-CSAIL-TR-2015-026 July 6, 2015 Computer Science and Artificial Intelligence Laboratory Technical Report MIT-CSAIL-TR-2015-026 July 6, 2015 Keys Under Doormats: Mandating insecurity by requiring government access to all data and communications

More information

Ciphermail Gateway Administration Guide

Ciphermail Gateway Administration Guide CIPHERMAIL EMAIL ENCRYPTION Ciphermail Gateway Administration Guide September 23, 2014, Rev: 9112 Copyright 2008-2014, Acknowledgements: Thanks goes out to Andreas Hödle for feedback. CONTENTS

More information

IT Administrators Guide

IT Administrators Guide IT Administrators Guide Skype for Windows version 4.2 Version 2.0 Copyright Skype Limited 2010 Overview Skype lets your business work the way you want to, whatever the message, wherever people are. This

More information

SecurEnvoy Security Server Administration Guide

SecurEnvoy Security Server Administration Guide SecurEnvoy Security Server Administration Guide SecurEnvoy Global HQ Merlin House, Brunel Road, Theale, Reading. RG7 4AB Tel: 0845 2600010 Fax: 0845 260014 SecurEnvoy Security Server

More information

Why Johnny Can t Encrypt: A Usability Evaluation of PGP 5.0

Why Johnny Can t Encrypt: A Usability Evaluation of PGP 5.0 Why Johnny Can t Encrypt: A Usability Evaluation of PGP 5.0 Alma Whitten School of Computer Science Carnegie Mellon University Pittsburgh, PA 15213 J. D. Tygar 1 EECS and SIMS University

More information

Architectural Overview

Architectural Overview Architectural Overview Table of Contents SOLUTION HIGHLIGHTS... 1 PHONEX ONE KEY FEATURES... 2 Fully Web-based Solution... 3 SQL Database... 3 MS SQL Express Database...3 Dynamic Hierarchy... 3 Modular

More information

Security Guidance for Deploying IP Telephony Systems

Security Guidance for Deploying IP Telephony Systems Report Number: I332-016R-2005 Security Guidance for Deploying IP Telephony Systems Systems and Network Attack Center (SNAC) Released: 14 February 2006 Version 1.01 ii This Page Intentionally

More information

Security Considerations for Voice Over IP Systems

Security Considerations for Voice Over IP Systems Special Publication 800-58 Security Considerations for Voice Over IP Systems Recommendations of the National Institute of Standards and Technology D. Richard Kuhn, Thomas J. Walsh, Steffen Fries II NIST

More information

FOREWORD. A key component in protecting a nation s critical infrastructure and key resources (CIKR) is the security of control systems.

FOREWORD. A key component in protecting a nation s critical infrastructure and key resources (CIKR) is the security of control systems. FOREWORD A key component in protecting a nation s critical infrastructure and key resources (CIKR) is the security of control systems. WHAT ARE CONTROL SYSTEMS? Supervisory Control and Data Acquisition

More information

Cumulus 8.1. Administrator Guide

Cumulus 8.1. Administrator Guide Cumulus 8.1 Administrator Guide Copyright 2010, Canto GmbH. All rights reserved. Canto, the Canto logo, the Cumulus logo, and Cumulus are registered trademarks of Canto, registered in the U.S. and other

More information