Академический Документы
Профессиональный Документы
Культура Документы
Introduction
• Largely the effort of a single person, Phil Zimmermann
– selected the best available cryptographic algorithms
as building blocks
– integrated these algorithms into a general-purpose
application
– made the package and its documentation, including
the source
code, freely via the internet, bbs, and commercial
networks
– entered into an agreement with a company to
provide a fully
compatible, low-cost commercial version of PGP
Notation
• Ks = session key
• Kra = private key of user A
• Kua = public key of user A
• EP = public-key encryption
• DP = public-key decryption
• EC = conventional encryption
• DC = conventional decryption
• H = hash function
• || = concatenation
• Z = compression using ZIP algorithm
• R64 = conversion to radix 64 ASCII format
Operational Description(1/2)
• Digital signature(authentication)
• Message encryption(confidentiality)
• Compression
• Email compatibility
• Segmentation
Operational Description(2/2)
E-mail Compatibility(1/2)
publ
priv
ic
ate
key
Cryptographic Keys and Key Rings
• PGP makes use of four types of keys
– one-time session conventional keys
– public keys
– private keys
– passphrase-based conventional keys
• Three separate requirements can be identified with respect
to these keys
– a means of generating unpredictable session key is
needed
– multiple public-key/private-key pairs are allowed
– each PGP entity must maintain a file of its own
KU/KR pairs
as well as a file of public keys of correspondents
Session Key Generation
• Based on the one specified in ANSI X12.17
• Random 128-bit numbers are generated using CAST-128
• Using cipher feedback mode
• Two 64-bit cipher text block are concatenated to form the
128-bit session key
Key Identifiers
• Any given user may have multiple public/private key pairs
• The key ID of KUa = KUa mod 264
• Very high probability, unique within a user ID
• Signature component includes Key ID of senders’ public
key
• Session key component includes Key ID of recipients’
public key.
Key Rings(2/4)
Private-Key Ring
Encrypted
Timestamp Key ID* Public Key User ID
Private Key
…
…
Ti KUi mod 264 KUi EH(Pi) [KRi] User i
…
…
Public-Key Ring
Key Rings(4/4)