39
Cryptography and Network Security Chapter 18 Fifth Edition by William Stallings Lecture slides by Lawrie Brown

Cryptography and Network Security Chapter 18 Fifth Edition by William Stallings Lecture slides by Lawrie Brown

Embed Size (px)

Citation preview

Cryptography and Network Security

Chapter 18

Fifth Edition

by William Stallings

Lecture slides by Lawrie Brown

2

Chapter 15 – Electronic Mail Security

Despite the refusal of VADM Poindexter and LtCol North to appear, the Board's access to other sources of information filled much of this gap. The FBI provided documents taken from the files of the National Security Advisor and relevant NSC staff members, including messages from the PROF system between VADM Poindexter and LtCol North. The PROF messages were conversations by computer, written at the time events occurred and presumed by the writers to be protected from disclosure. In this sense, they provide a first-hand, contemporaneous account of events.—The Tower Commission Report to President Reagan on the Iran-Contra Affair, 1987

3

Email Security

email is one of the most widely used and regarded network services

currently message contents are not secure may be inspected either in transit or by suitably privileged users on destination

system

4

Email Security Enhancements

confidentiality protection from disclosure

authentication of sender of message

message integrity protection from modification

non-repudiation of origin protection from denial by sender

5

Pretty Good Privacy (PGP)

widely used de facto secure email program

developed by Phil Zimmermann selected best available crypto algs to use integrated into a single program on Unix, PC, Macintosh and other systems originally free, now also have commercial

versions available

6

PGP Operation – Authentication

1. sender creates message2. make SHA-1160-bit hash of message 3. attached RSA signed hash to message4. receiver decrypts & recovers hash code5. receiver verifies received message hash

7

PGP Operation – Confidentiality

1. sender forms 128-bit random session key2. encrypts message with session key3. attaches session key encrypted with RSA4. receiver decrypts & recovers session key5. session key is used to decrypt message

8

PGP Operation – Confidentiality & Authentication

can use both services on same message create signature & attach to message encrypt both message & signature attach RSA/ElGamal encrypted session key

9

PGP Operation – Compression

by default PGP compresses message after signing but before encrypting so can store uncompressed message &

signature for later verification & because compression is non deterministic

uses ZIP compression algorithm

10

PGP Operation – Email Compatibility

when using PGP will have binary data to send (encrypted message etc)

however email was designed only for ASCII text hence PGP must encode raw binary data into

printable ASCII characters uses radix-64 algorithm

maps 3 bytes to 4 printable chars also appends a CRC(A cyclic redundancy check is an

error-detecting code commonly used in digital networks and storage devices to detect accidental changes to raw data)

PGP also segments messages if too big

11

PGP Operation – Summary

12

PGP Session Keys PGP makes use of four types of keys one-

time session symmetric keys, public keys, private keys, and passphrase-based symmetric keys.

need a session key for each message of varying sizes: 56-bit DES, 128-bit CAST or

IDEA, 168-bit Triple-DES Random numbers generated using ANSI

X12.17 mode uses random inputs taken from previous

uses and from keystroke timing of user

13

PGP Public & Private Keys

since many public/private keys may be in use, need to identify which is actually used to encrypt session key in a message

could send full public-key with every message but this is inefficient

rather use a key identifier based on key is least significant 64-bits of the key will very likely be unique

also use key ID in signatures

14

PGP Message Format

A message consists of three components: the message component, a signature (optional), and a session key component (optional). The message component includes the

actual data to be stored or transmitted, as well as a filename and a timestamp that specifies the time of creation.

The signature component includes a timestamp, encrypted SHA-1 message digest, leading two digest octets for verification, and the Key ID of the sender’s public key. The session key component includes the

session key and the identifier of the recipient's public key that was used by the sender to encrypt the session key. The entire block is usually encoded with radix-64 encoding.

17

PGP Key Rings

each PGP user has a pair of keyrings: public-key ring contains all the public-keys of

other PGP users known to this user, indexed by key ID

private-key ring contains the public/private key pair(s) for this user, indexed by key ID & encrypted keyed from a hashed passphrase

security of private keys thus depends on the pass-phrase security

18

PGP Key Rings

19

PGP Message Generation

The sending PGP entity performs the following steps:

1. Signing the message: a. PGP retrieves the sender's private key

from the private-key ring using your_userid as an index. If your_userid was not provided in the command, the first private key on the ring is retrieved.

b. PGP prompts the user for the passphrase to recover the unencrypted private key.

c. The signature component of the message is constructed.

2. Encrypting the message: a. PGP generates a session key and

encrypts the message. b. PGP retrieves the recipient's public

key from the public-key ring using her_userid as an index.

c. The session key component of the message is constructed.

22

PGP Message Reception

PGP crypto services (again ignoring compression and radix-64 conversion for simplicity). The receiving PGP entity performs the following steps:

1. Decrypting the message: a. PGP retrieves the receiver's private

key from the private-key ring, using the Key ID field in the session key component of the message as an index.

b. PGP prompts the user for the passphrase to recover the unencrypted private key.

c. PGP then recovers the session key and decrypts the message.

2. Authenticating the message: a. PGP retrieves the sender's public key

from the public-key ring, using the Key ID field in the signature key component of the message as an index.

b. PGP recovers the transmitted message digest.

c. PGP computes the message digest for the received message and compares it to the transmitted message digest to authenticate.

25

PGP Key Management rather than relying on certificate authorities in PGP every user is own CA

can sign keys for users they know directly

forms a “web of trust” trust keys have signed can trust keys others have signed if have a chain of

signatures to them

key ring includes trust indicators users can also revoke their keys

26

PGP Trust Model Example

27

S/MIME (Secure/Multipurpose Internet Mail Extensions)

security enhancement to MIME email original Internet RFC822 email was text only MIME provided support for varying content

types and multi-part messages with encoding of binary data to textual form S/MIME added security enhancements

have S/MIME support in many mail agents eg MS Outlook, Mozilla, Mac Mail etc

28

S/MIME Functions

enveloped data encrypted content and associated keys

signed data encoded message + signed digest

clear-signed data cleartext message + encoded signed digest

signed & enveloped data nesting of signed & encrypted entities

29

S/MIME Cryptographic Algorithms

digital signatures: DSS & RSA hash functions: SHA-1 & MD5 session key encryption: ElGamal & RSA message encryption: AES, Triple-DES,

RC2/40 and others MAC: HMAC with SHA-1 have process to decide which algs to use

30

S/MIME Messages

S/MIME secures a MIME entity with a signature, encryption, or both

forming a MIME wrapped PKCS(public-key cryptography specifications) object

have a range of content-types: enveloped data signed data clear-signed data registration request certificate only message

31

S/MIME Certificate Processing

S/MIME uses X.509 v3 certificates managed using a hybrid of a strict X.509

CA hierarchy & PGP’s web of trust each client has a list of trusted CA’s certs and own public/private key pairs & certs certificates must be signed by trusted CA’s

32

Certificate Authorities

have several well-known CA’s Verisign one of most widely used Verisign issues several types of Digital IDs increasing levels of checks & hence trust

Class Identity ChecksUsage

1 name/email check web browsing/email

2 + enroll/addr check email, subs, s/w validate

3 + ID documents e-banking/service access

33

S/MIME Enhanced Security Services

3 proposed enhanced security services: signed receipts security labels secure mailing lists

34

Domain Keys Identified Mail

a specification for cryptographically signing email messages

so signing domain claims responsibility recipients / agents can verify signature proposed Internet Standard RFC 4871 has been widely adopted

35

Internet Mail Architecture

36

Email Threats

see RFC 4684- Analysis of Threats Motivating DomainKeys Identified Mail

describes the problem space in terms of: range: low end, spammers, fraudsters capabilities in terms of where submitted,

signed, volume, routing naming etc outside located attackers

37

DKIM Strategy

transparent to user MSA sign MDA verify

for pragmatic reasons

38

DCIM Functional

Flow

39

Summary

have considered: secure email PGP S/MIME domain-keys identified email