Pretty Good Privacy Dan Fleck CS 469: Security Engineering These slides are modified with permission from Bill Young (Univ of Texas) Coming up: Pretty.

Slides:



Advertisements
Similar presentations
1 Pretty Good Privacy (PGP) Security for Electronic .
Advertisements

Security 1. is one of the most widely used and regarded network services currently message contents are not secure may be inspected either.
03/21/06 Hofstra University – Network Security Course, CSC290A 1 Assignment 1 Pick sun.com and one other site. Using whois and ARIN, get as much information.
Lecture 5: security: PGP Anish Arora CSE 5473 Introduction to Network Security.
Lecture 5: security: PGP Anish Arora CIS694K Introduction to Network Security.
Cryptography and Network Security Third Edition by William Stallings Lecture slides by Lawrie Brown.
Chapter 5 Electronic mail security. Outline Pretty good privacy S/MIME Recommended web sites.
1 Pertemuan 12 Security Matakuliah: H0242 / Keamanan Jaringan Tahun: 2006 Versi: 1.
NS-H / Security. NS-H / Security is one of the most widely used and regarded network services currently message.
Electronic mail security
Electronic mail security -- Pretty Good Privacy.
Henric Johnson1 Electronic mail security Henric Johnson Blekinge Institute of Technology, Sweden
Cryptography and Network Security Chapter 15 Fourth Edition by William Stallings Lecture slides by Lawrie Brown.
Electronic Mail Security. Authentication and confidentiality problems Two systems: - PGP (Pretty Good Privacy) - S/MIME (Science Multipurpose Internet.
Lecture 9: Security via PGP CS 436/636/736 Spring 2012 Nitesh Saxena.
SMUCSE 5349/49 Security. SMUCSE 5349/7349 Threats Threats to the security of itself –Loss of confidentiality s are sent in clear over.
Electronic Mail Security
Secure r How do you do it? m Need to worry about sniffing, modifying, end- user masquerading, replaying. m If sender and receiver have shared secret.
Cryptography and Network Security Chapter 18
16.1 Copyright © The McGraw-Hill Companies, Inc. Permission required for reproduction or display. Chapter 16 Security at the Application Layer: PGP and.
Security Keys, Signatures, Encryption. Slides by Jyrki Nummenmaa ‘
Chap 81 Electronic mail security. Chap 82 Outline Pretty good privacy S/MIME Recommended web sites.
Electronic mail security. Outline Pretty good privacy S/MIME.
Security.  is one of the most widely used and regarded network services  currently message contents are not secure may be inspected either.
Network Security Essentials Chapter 7 Fourth Edition by William Stallings (Based on Lecture slides by Lawrie Brown)
Chapter 6 Electronic Mail Security MSc. NGUYEN CAO DAT Dr. TRAN VAN HOAI 1.
Cryptography and Network Security (CS435) Part Twelve (Electronic Mail Security)
Chapter 15: Electronic Mail Security
1 Electronic Mail Security Outline Pretty good privacy S/MIME Based on slides by Dr. Lawrie Brown of the Australian Defence Force Academy, University College,
1 Chapter 5 Electronic mail security. 2 Outline Pretty good privacy S/MIME Recommended web sites.
Pretty Good Privacy (PGP) Security for Electronic .
CSCE 815 Network Security Lecture 11 Security PGP February 25, 2003.
SECURITY – Chapter 15 SECURITY – Chapter 15 ….for authentication and confidentiality PGP 1.Uses best algorithms as building blocks 2.General.
NETWORK SECURITY.
Security PGP IT352 | Network Security |Najwa AlGhamdi 1.
X.509 Topics PGP S/MIME Kerberos. Directory Authentication Framework X.509 is part of the ISO X.500 directory standard. used by S/MIME, SSL, IPSec, and.
Security Using PGP - Prajakta Bahekar. Importance of Security is one of the most widely used network service on Computer Currently .
Encryption Basics Module 7 Section 2. History of Encryption Secret - NSA National Security Agency –has powerful computers - break codes –monitors all.
PGP & IP Security  Pretty Good Privacy – PGP Pretty Good Privacy  IP Security. IP Security.
Authentication Applications 1. Kerberos 2. Key Management and Distribution 3. X.509 Directory Authentication service 4. Public Key Infrastructure 5. Electronic.
Electronic Mail Security Prepared by Dr. Lamiaa Elshenawy
2/19/2016clicktechsolution.com Security. 2/19/2016clicktechsolution.com Threats Threats to the security of itself –Loss of confidentiality.
Security  is one of the most widely used and regarded network services  currently message contents are not secure may be inspected either.
By Marwan Al-Namari & Hafezah Ben Othman Author: William Stallings College of Computer Science at Al-Qunfudah Umm Al-Qura University, KSA, Makkah 1.
2013Prof. Reuven Aviv, Mail Security1 Pretty Good Privacy (PGP) Prof. Reuven Aviv Dept. of Computer Science Tel Hai Academic College.
@Yuan Xue Case Study (Mid-term question) Bob sells BatLab Software License Alice buys BatLab Credit card information Number of.
Prof. Wenguo Wang Network Information Security Prof. Wenguo Wang Tel College of Computer Science QUFU NORMAL UNIVERSITY.
1 CNLab/University of Ulsan Chapter 16 Electronic Mail Security  PGP (Pretty Good Privacy)  S/MIME.
Lecture 8 (Chapter 18) Electronic Mail Security Prepared by Dr. Lamiaa M. Elshenawy 1.
第五章 电子邮件安全. Security is one of the most widely used and regarded network services currently message contents are not secure –may be inspected.
Electronic mail security. Outline Pretty good privacy S/MIME.
Security Depart. of Computer Science and Engineering 刘胜利 ( Liu Shengli) Tel:
Electronic mail security
K. U. Khimani Asst. Prof. IT Dept. VVP Engineering College
Security is one of the most widely used and regarded network services
Chapter 15 – Electronic Mail Security
Selected Research Topics Electronic Mail Security
Electronic Mail Security
MAIL AND SECURITY PERTEMUAN 13
University of Houston Network Security Datacom II Lecture 8
ELECTRONIC MAIL SECURITY
ELECTRONIC MAIL SECURITY
Secure How do you do it? Need to worry about sniffing, modifying, end-user masquerading, replaying. If sender and receiver have shared secret keys,
Cryptography and Network Security Chapter 18
Electronic Mail Security
Cryptography and Network Security
….for authentication and confidentiality PGP
Presentation transcript:

Pretty Good Privacy Dan Fleck CS 469: Security Engineering These slides are modified with permission from Bill Young (Univ of Texas) Coming up: Pretty Good Privacy 11

Pretty Good Privacy Various crypto algorithms and products provide strong encryption, but are not particularly easy to use. Phil Zimmermann had the goal of providing strong encryption to everyone, in the form of an encryption system that is: extremely strong, using state of the art cryptographic algorithms; easy to use and accessible to all. – Ver 1 (1991) PGP is “the closest you’re likely to get to military-grade encryption.” –Bruce Schneier, Applied Cryptography Coming up: Zimmermann’s Motivation 22

Zimmermann’s Motivation Zimmermann had a strong distrust of the government, and believed strongly that everyone had an absolute right to privacy. The government generally believes that the right to privacy is limited by the need of the government to read messages under certain circumstances. Historically, the government restricted access to strong encryption. PGP is a “end-run” around government restrictions, and almost landed Zimmermann in jail. Coming up: Did Zimmermann Succeed? 33

Did Zimmermann Succeed? From Wikipedia page on PGP: In 2003, an incident involving seized Psion PDAs belonging to members of the Red Brigade indicated that neither the Italian police nor the FBI were able to decode PGP-encrypted files stored on them. A more recent incident in December 2006 (see United States v. Boucher) involving US customs agents and a seized laptop PC which allegedly contained child pornography indicates that US Government agencies find it “nearly impossible” to access PGP- encrypted files. Coming up: PGP 44

PGP Zimmermann developed PGP (Pretty Good Privacy) in the late 1980’s and early 1990’s. Some characteristics include: 1.Uses the best available cryptographic algorithms as building blocks. 2.Integrates these into a general-purpose algorithm that is processor-independent and easy to use. 3.Package and documentation, including source code, are freely available on-line. 4.PGP is now provided by Viacrypt in a compatible, low-cost commercial version. Why would anyone buy this software from Viacrypt when it’s available free? Coming up: Growth of PGP 55

Growth of PGP PGP has grown explosively and is widely used. 1.Available free worldwide for Windows, UNIX, Macintosh, and others. The commercial version satisfies businesses needing vendor support. 2.Based on algorithms with extensive public review. Public key encryption: RSA, DSS, Diffie-Hellman. Symmetric encryption: CAST-128, IDEA, and 3DES. Hash coding: SHA-1. 3.Wide applicability: standardized scheme for encryption, supports secure communication over Internet and other networks. 4.Not developed by or controlled by any government. 5.Now on track to become an Internet standard ( OpenPGP RFC 3156) Coming up: Lessons 66

Lessons PGP illustrates that strong encryption can be packaged conveniently and accessible to everyone. PGP is very widely used and extremely secure Coming up: PGP Services 77

PGP Services PGP supplies five basic services: 1.Authentication 2.Confidentiality 3.Compression 4. compatibility 5.Segmentation Coming up: PGP Authentication 88

PGP Authentication This is a digital signature function. 1.Sender creates a message M. 2.Sender generates a hash of M. 3.Sender signs the hash using his private key and prepends the result to the message. 4.Receiver uses the sender’s public key to verify the signature and recover the hash code. 5.Receiver generates a new hash code for M and compares it with the decrypted hash code. Abstractly: Coming up: PGP Confidentiality 99

PGP Confidentiality PGP provides encryption for messages sent or stored as files. 1.Sender generates a message M and a random session key K. 2.M is encrypted using key K. 3.K is encrypted using the recipient’s public key, and prepended to the message. 4.Receiver uses his private key to recover the session key. 5.The session key is used to decrypt the message. Abstractly: Coming up: Confidentiality and Authentication 10 But why? Why not just use private key to encrypt the message instead of session key?

Confidentiality and Authentication Both authentication and confidentiality may be combined for a given message. 1.Apply the authentication step to the original message. 2.Apply the confidentiality step to the resulting message. Why is it preferable to generate a signature for the plaintext message, rather than for the encrypted message? Coming up: Lessons 11

Lessons PGP offers five basic services. Two of those are authentication and confidentiality; these can be combined. Coming up: PGP Services 12

PGP Services Recall that PGP supplies five basic services: 1.Authentication 2.Confidentiality 3.Compression 4. compatibility 5.Segmentation Actually, only authentication and confidentiality are really “services.” The others are engineering features designed to make PGP efficient and robust. Coming up: Compression 13

Compression As a default, PGP compresses the message, using the ZIP compression algorithm, after applying the signature and before encryption. It is done in this order because: It is preferable to sign an uncompressed message so that the signature does not depend on the compression algorithm. Versions of the compression algorithm behave slightly differently, though all version are interoperable. Encryption after compression strengthens the encryption, since compression reduces redundancy in the message. Coming up: Compatibility 14 Signature Compression Encryption

Compatibility PGP always involves encryption. Encrypted text contains arbitrary 8-bit octets. However, many systems would choke on certain bit strings they’d interpret as control commands. PGP uses radix-64 conversion to map groups of three octets into four ASCII characters. Also appends a CRC for data error checking. By default, even ASCII is converted. Use of radix-64 expands the message by 33%. This is usually more than offset by the compression. Coming up: Segmentation and Reassembly 15

Segmentation and Reassembly systems often restrict message length. Longer messages must be broken into segments, which are mailed separately. PGP automatically segments messages that are too large. This is done after all of the other steps, including radix-64 conversion. Thus, signature and session key appear only once. At the receiving end, PGP strips off mail headers and reassembles the message from its component pieces. Coming up: Lessons 16

Lessons PGP provides the “services” of compression, compatibility, and segmentation to make the system more robust and efficient. Coming up: PGP: Key Management 17

PGP: Key Management Dan Fleck CS 469: Security Engineering These slides are modified with permission from Bill Young (Univ of Texas) Coming up: Key Management 18

Key Management PGP makes use of four types of keys: one-time session symmetric keys, public keys, private keys, passphrase-based symmetric keys. Session keys: used once and generated for each new message Public keys: used in asymmetric encryption Private keys: also used in asymmetric encryption Passphrase-based keys: used to protect private keys A single user can have multiple public/private key pairs. Coming up: Session Key Generation 19

Session Key Generation Each session key is associated with a single message and used only once. Key size depends on the chosen encryption algorithm E; e.g. CAST-128: 128 bits, 3DES: 168-bits, etc. The encryption algorithm E is used to generate a new n-bit key from a previous session key and two n/2-bit blocks generated based on user keystrokes, including keystroke timing. The two blocks are encrypted using E and the previous key, and combined to form the new key. Coming up: Public/Private Key Generation 20

Public/Private Key Generation For new RSA keys, an odd number n of sufficient size (usually > 200 bits) is generated and tested for primality. If it is not prime, then repeat with another randomly generated number, until a prime is found. Primes appear in the neighborhood of n about every ln(n) = lg e (n) numbers. Since we can exclude even numbers, to find a prime of around 200 bits, it takes about ln(2 200 )/2 = 70 tries. This is an expensive operation, but performed relatively infrequently. Coming up: Encrypting the Private Key 21

Encrypting the Private Key The private key is stored encrypted with a user-supplied passphrase: 1.The user selects a passphrase for encrypting private keys. 2.When a new public/private key pair is generated, the system asks for the passphrase. Using SHA-1, a 160-bit hash code is generated from the passphrase, which is discarded. 3.The private key is encrypted using CAST-128 with 128 bits of the hash code as key. The key is then discarded. Whenever the user wants to access the private key, he must supply the passphrase. Coming up: Lessons 22

Lessons PGP uses four kinds of keys: session keys, public and private keys, and passphrase generated keys. Public / private key pairs are the most expensive to generate. Since the security of the system depends on protecting private keys, these are encrypted using a passphrase system. Coming up: Key Management 23

Key Management In PGP, session keys and passphrase-based keys are generated on the fly, used once and discarded. Public and private keys are persistent and need to be preserved and managed. Recall that a user can have multiple public/private key pairs. Coming up: Managing Key Pairs 24

Managing Key Pairs Given that a user may have multiple public/private key pairs, how do we know which public key was used to encrypt a message. Send the public key along with the message. Inefficient, since the key might be thousands of bits. Associate a unique ID with each key pair and send that with the message. Would require that all senders know that mapping of keys to ID’s for all recipients. Generate an ID likely to be unique for a given user. This is PGP’s solution. Use the least significant 64-bits of the key as the ID. This is used by the receiver to verify that he has such a key on his “key ring.” The associated private key is used for the decryption. Coming up: Key Rings: Private Key Ring 25

Key Rings: Private Key Ring Each user maintains two key ring data structures: a private-key ring for his own public/private key pairs, and a public-key ring for the public keys of correspondents. The private key ring is a table of rows containing: Timestamp: when the key pair was generated. Key ID: 64 least significant digits of the public key. Public key: the public portion of the key. Private key: the private portion, encrypted using a passphrase. User ID: usually the user’s address. May be different for different key pairs. Coming up: Public Key Ring 26

Public Key Ring Public keys of other users are stored on a user’s public-key ring. This is a table of rows containing (among other fields): Timestamp: when the entry was generated. Key ID: 64 least significant digits of this entry. Public key: the public key for the entry. User ID: Identifier for the owner of this key. Multiple IDs may be associated with a single public key. The public key can be indexed by either User ID or Key ID. Coming up: Retrieving a Private Key 27

Retrieving a Private Key Whenever PGP must use a private key, it must decrypt it. For example, suppose R receives a message encrypted with K R. 1.PGP retrieves receiver’s encrypted private key from the private-key ring, using the Key ID field in the session key component of the message as an index. 2.PGP prompts the user for the passphrase to recover the unencrypted private key. 3.PGP recovers the session key and decrypts the message. Coming up: Validity of Public Key 28

Validity of Public Key Associated with each public key in the user’s public key ring is a key legitimacy field that indicates the extent to which PGP trusts that this is a valid public key for this user. Legitimacy is determined from certificates and chains of certificates, the user’s assessment of the trust to be assigned to the key, and various heuristics for computing trust. Coming up: Revoking Public Keys 29

Revoking Public Keys A user may wish to revoke a public key because: compromise is suspected, or to limit the period of use of the key. The owner issues a signed key revocation certificate. Recipients are expected to update their public-key rings. Coming up: Lessons 30

Lessons Each PGP user must manage his own private keys and the public keys of others. These are stored on separate keys rings. Private keys are protected by encryption; public keys are stored with certificates attesting to their trustworthiness. Keys can be revoked. End of presentation 31