THE SOFTWARES OF E-MAIL SECURITY
INTRODUCTION
Internet was designed specifically as a public network for sharing information.
Correspondence over internet known as e-mail is said to be more convenient than trying
to reach someone by telephone. However, the use of e-mail has s security problem as it
is quit easy for someone to intercept your electronic mail. Security, that is, confidential,
reliable, and known delivery is essential to the success of e-mail. In other words, people
will not use a mail system that they cannot trust to deliver their messages. The
fundamental mechanism for providing security for binary encoded messages in an open
network is encryption. The aim of encryption is to turn an otherwise intelligible message
into gibberish so that anyone who intercepts the message can’t read it. There are two
currently hottest encryption programs available in the market that can provide reliable
protection of electronic mail. These programs are the Pretty Good Privacy (PGP) and the
Privacy Enhanced Mail (PEM).
Pretty Good Privacy (PGP)
PGP is an e-mail security program developed a few years ago by Phil Zimmermann.
According to Stalling (1994), PGP combines confidentiality and digital signature
capabilities to provide a powerful, virtually unbreakable and easy-to-use page Free ware
versions are available for windows, the Macintosh, DOS, OS/2, and other platforms.
PGP Security Features
PGP and PEM provides a variety of security features for electronic mail. These
features are:
Confidentiality
Confidentiality protects the contents of the e-mail message against unauthorized
disclosure. Confidentiality is provided by encrypting messages to be transmitted or to be
stored locally as files.
Authentication
Authentication permits the authorized receiver of the message to reliably determine
the identity of the sender. In the case of forwarded messages, the authentication feature
identifies the forwarder of the message and not the original sender.
Message Integrity
Message integrity gives the authorized receiver of the message assurance that the
message has not been modified in transit. The message received is identical to the
message that the sender sent.
Nonrepudiation of Origin
Nonrepudiation is the feature that allows one person to forward message to another
person, who can then verify the identity of the original sender.
The PGP Environment
PGP is designed to work within existing electronic mail system, primarily those used
on the internet. Although the program is not integrated with any mail program or text
editor, it can be used with all of them.
Cryptographic Algorithms
As Stalling (1994) reports, PGP employs the RSA public key encryption method that
is named after its investors: Riverst, Shamrir, and Adleman and the MD 5 ( Message
Digest Version 5 ) to form a digital signature that assures the receiver that an incoming
message is authentic.
Further more, PGP use the conventional encryption algorithm known as IDEA (
International Data Encryption Algorithm ) for data encryption. IDEA is substantially
faster than RSA, so to reduce encryption time, the IDEA/RSA combination is used.
Besides that, the use of RSA solves the section-key distribution problem because only the
receiver is able to receive the session key that is bound to the message. Thus, to the
extent that RSA is secure, the entire scheme is secure. To this end, PGP provides the user
with several RSA key-size options:
Sending a PGP Message
Sending a PGP message consists of four steps stated as belows:
Signing
PGP message can be digitally signed by the sender. Signatures are optional, the sender
does not have to sign her message. PGP signatures allow the receiver to verify both the
identity of the sender and that the message has not been tampered with the transit. PGP
also supports detached signatures. A detached signature may be stored and transmitted
separated from the message it signs.
Compression
After signing, PGP compresses the message. This compression reduces the size of the
message. Because the compressed message has less redundancy than the original
plaintext, cryptanalysis is more difficult. The compression algorithm used for PGP is
ZIP. Note that the signature is generated before compression. It is preferably to sign an
uncompressed message so that you can store only the uncompressed message together
with the signature for future verification. If you were either to store a compressed
version of the message for later verification or to recompress the message when
verification is required.
Encryption
PGP can both encrypt and sign a single message. First, a signature is generated for the
message and prepended to the message. Then, the message plus signature is encrypted
using a random encryption key. Finally, the random encryption key is encrypted using
RSA and prepended to the encrypted block. Note that the digital signature is encrypted
along with the message. It is impossible to verify the signature on an encrypted message
without decrypting it first.
Transmission Encoding
PGP converts the raw 8-bits binary stream of ciphertext to a stream of printable ASCII
characters.
Receiving a PGP Message
Receiving a PGP message involves unraveling everything done by the sender. This
step involves transmission decoding, decrypting, signature verification and message
disposition.
Transmission Decoding
If a message is encoded for transmission, it is decoded from ASCII back into 8-bits
ciphertext.
Decrypting
PGP attempts to decrypt the message which is encrypted. First, the software looks at
the packet that contain the encrypted random encryption key, to see if it can decrypt the
message. Assuming PGP is able to, it decrypts the random encryption key using the
receiver’s private key. Then, it decrypts the message using the random encryption key.
Remember that the encryption is an option step. If the original PGP message was
not encrypted, no decryption is necessary.
Signature Verification
PGP determines if the message is signed. If it is, PGP decrypts the hash value using
the sender’s public key. Then, it generated a new hash value for the received message
and compare it to the decrypted hash value. If the two match, the message is accepted as
authentic. This is also an optional step; without a signature, there is nothing to verify.
Message Disposition
After the receiver has read the PGP message, he has a number of options. He can
store the message in decrypted form without the signature attached. He can store the in
decrypted form with the signature information. This form of storage is appropriate if the
receiver wants to forward a signed message to a third party, and also provides protection
against modification while the message is being stored. If the receiver wants to protect
the confidentiality of the message, he can choose to save the message in the encrypted
form.
Privacy Enhanced Mail (PEM)
The PEM effort began in 1985 as an activity of the privacy and Security Research
Group (PSRG) under the auspices of the Internet Architecture Board (IAB) (Kent, 1993).
The effort has yielded a series of specifications of which the most recent set, Requests for
Comments (RFCs) are proposed Internet standards. These RFCs are product of the PEM
Working Group within the Internet Engineering Task Force, a subsidiary group of the
IAB.PEM is intended to be compatible with a wide range of key management
approaches. It has mechanisms for using conventional (secret-key) cryptography or
public key cryptography for key management.
PEM Security Features
PEM provides all essential security features for e-mail users. These features are:
The security services for e-mail as provided by the PGP and PEM are almost the same
with the exception that PGP is designed to automatically the essential features such as
confidentiality, authentication and integrity for all messages. It is possible to send a PGP
protected message without providing confidentiality. It is also possible to send a PGP
protected message without providing for authentication integrity. However, all messages
processed by PEM incorporate the authentically, integrity and non-repudiation support
facilities whereas confidentiality is an optional security service.
The PEM Environment
PEM is designed to work with existing electronic-mail systems primarily the e-mail
systems used in the Internet. As such PEM was designed to fit into existing mail system
architectures. PEM messages can be created with test editors, and most mail system do
not destroy PEM messages in transit.
The major features of PEM are stated as follows:
interoperability among broad range of systems.
Sending a PEM Message
Submission processing in PEM involves four major steps:
Canonicalization
This is the first step in the PEM submission processing. Canonicalization involves
transforming the message content from the "native" representation for the computer from
which the message is submitted, into a network standard representation. The
canonicalization step must be performed as part of the PEM processing, prior to when the
e-mail system would normally perform the equivalent step. Any change to the message
content after the PEM integrity service has been applied would cause the integrity check
performed by a recipient to fail. Hence, PEM must apply this transformation before the
normal email processing. In addition, if the message content is enciphered for
confidentiality, it would be impossible for the normal email canonicalization to take place
i.e. the message content would be just as unintelligible to this email software as it would
be to a potential dropper.
Message Integrity and originator authentication
The second step in PEM message processing begins with calculation of the message
integrity code (MIC). PEM treats the choice of the MIC algorithm as a parameter that
can differ among user communities or evolve as better MIC algorithms are developed.
The MIC is calculated based on the canonicalized version of the message so that it can
be verified in any computing environment. To provide both authentication of the sender
and integrity of the message, the MIC must be protected in somewhat manner that binds
it to the message originator. That is , there must be something about the MIC that shows
that it was created by the same person who created the message, and not by someone else.
Encryption
This step is optional. PEM only encrypts messages if the type is "ENCRYPTED."
The PEM standards can support multiple encryption algorithms, but currently specify just
one : DES in Cipher Block Chaining mode. The algorithm is specified in the "DEK-
Info" field of the message header along with any data that the algorithm needs. "DES-
CBC" specifies DES in Cipher Block Chaining mode, and the string of the characters
afterward specifies the initialization vector (IV).
Transmission Encoding
The last step involved in sending a PEM message is encoding it for transmission. This
step is also optional. The ENCRYPTED an MIC-ONLY message are encoded. Most e-
mail systems are designed to handle text messages and not binary messages. An
encrypted message is binary and hence may be inadvertently modified in transit. Any
modification will make the message decrypt to nonsense at the receiving end, and so
must be encoded to avoid transmission problems.
Receiving a PEM Message
When PEM software receive a PEM message, it first scans the message to find the
PEM message boundary, and then looks through the PEM header to find out which
version of PEM was used to process the message. Then it proceeds to deal with the
message.
There are five stages in the process of receiving a PEM message. These stages are
decoding, decrypting, verifying message integrity and authenticity, translation and m
message disposition. The decoding, decrypting and message disposition stages are similar
to those described in receiving a PGP message.
Verifying Message Integrity and Authenticity
The receiver first checks the PEM header to determine which MIC algorithm and
signature is used for this message. Assuming that the sender used RSA as digital
signature algorithm, the receiver gets the public key of the sender form the originator
certificate field and decrypts the signed MIC value. Finally, the receiver computes the
MIC on the canonical form of the message, and then compares this value with the value
he just decrypted. If they match, then the message has been authenticated.
Translation
Finally, after verifying integrity and authenticity the canonical form of the message is
translated into what ever representation is proper for the receiver’s system, and then is
displayed for the receiver to read.
CONCLUSIONS
PGP and PEM are both electronic-mail security programs. They both encrypt
messages; they both sign messages. They are both based on public-key crytography.
They have different philosophies, though. PEM is based on the concept of a hierarchical
organization, while PGP is based on a distributed network of individuals. The PEM
might be more suited for applications in the companies, governments and other
organizations. PGP is definitely more suited for people on the Internet