Chapter04 Crypto
Chapter04 Crypto
FUNDAMENTALS OF
INFORMATION SECURITY
Chapter 4
Cryptographic Tools
BIT 21403 1
Symmetric Encryption
• The universal technique for providing confidentiality for
transmitted or stored data
• Also referred to as conventional encryption or single-key
encryption
BIT 21403 2
BIT 21403 3
Attacking Symmetric
Encryption
Cryptanalytic Attacks Brute-Force Attacks
Rely on: Try all possible keys on some
Nature of the algorithm ciphertext until an intelligible
Some knowledge of the general translation into plaintext is obtained
characteristics of the plaintext On average half of all possible keys
must be tried to achieve success
Some sample plaintext-ciphertext
pairs
Exploits the characteristics of the
algorithm to attempt to deduce a
specific plaintext or the key being
used
If successful all future and past
messages encrypted with that key are
compromised
BIT 21403 4
Table 2.1
Strength concerns:
• Concerns about the algorithm itself
• DES is the most studied encryption algorithm
in existence
• Concerns about the use of a 56-bit key
• The speed of commercial off-the-shelf processors makes
this key length woefully inadequate
BIT 21403 6
Table 2.2
BIT 21403 8
Advanced Encryption
Standard (AES)
NIST called for
Needed a Selected
proposals for a
replacement for Rijndael in
new AES in
3DES November 2001
1997
Should have a security
strength equal to or better
than 3DES
Significantly improved
3DES was not efficiency
Published as
reasonable for
long term use FIPS 197
Symmetric block cipher
BIT 21403 9
Practical Security Issues
Typically symmetric encryption is applied to a unit of data
larger than a single 64-bit or 128-bit block
Electronic codebook (ECB) mode is the simplest approach to
multiple-block encryption
Each block of plaintext is encrypted using the same key
Cryptanalysts may be able to exploit regularities in the plaintext
Modes of operation
Alternative techniques developed to increase the security of symmetric
block encryption for large sequences
Overcomes the weaknesses of ECB
BIT 21403 10
BIT 21403 11
Block & Stream Ciphers
Block Cipher
Stream Cipher
• Processes the input elements continuously
• Produces output one element at a time
• Primary advantage is that they are almost always faster and use far less
code
• Encrypts plaintext one byte at a time
• Pseudorandom stream is one that is unpredictable without knowledge of
the input key
BIT 21403 12
Message Authentication
Protects against
active attacks
Can use
• Only sender and receiver share a
conventional key
encryption
BIT 21403 13
Message Authentication
Without Confidentiality
• Message encryption by itself does not provide a secure form of
authentication
• It is possible to combine authentication and confidentiality in a single
algorithm by encrypting a message plus its authentication tag
• Typically message authentication is provided as a separate function from
message encryption
• Situations in which message authentication without confidentiality may
be preferable include:
• There are a number of applications in which the same message is broadcast to a number of
destinations
• An exchange in which one side has a heavy load and cannot afford the time to decrypt all incoming
messages
• Authentication of a computer program in plaintext is an attractive service
BIT 21403 18
Security of Hash Functions
There are two
Additional secure
approaches to SHA most widely
hash function
attacking a secure used hash algorithm
applications:
hash function:
Cryptanalysis Passwords
• Exploit logical weaknesses in • Hash of a password is stored
the algorithm by an operating system
BIT 21403 19
Public-Key Encryption Structure
Asymmetric
• Uses two
Publicly separate keys Some form of
proposed by Based on • Public key and protocol is
Diffie and mathematical private key needed for
Hellman in functions • Public key is
distribution
1976 made public for
others to use
BIT 21403 20
Plaintext
Readable message or data that is fed into the algorithm as input
Encryption algorithm
Performs transformations on the plaintext
Public and private key
Pair of keys, one for encryption, one for decryption
Ciphertext
Scrambled message produced as output
Decryption key
BIT 21403 Produces the original plaintext 21
User encrypts data using his or her own
private key
BIT 21403 23
Requirements for Public-Key
Cryptosystems
Computationally easy to
create key pairs
Computationally easy
Useful if either key can for sender knowing
be used for each role public key to encrypt
messages
Computationally
infeasible for opponent to
determine private key
from public key
BIT 21403 24
Asymmetric Encryption
Algorithms
RSA (Rivest, Most widely accepted and
Block cipher in which the
Shamir, Developed in 1977 implemented approach to
public-key encryption
plaintext and ciphertext are
integers between 0 and n-1 for
Adleman) some n.
Digital
Signature Provides only a digital
signature function with SHA-1
Cannot be used for encryption
or key exchange
Standard (DSS)
Elliptic curve
cryptography Security like RSA, but with
much smaller keys
BIT 21403(ECC) 25
Digital Signatures
NIST FIPS PUB 186-4 defines a digital signature as:
”The result of a cryptographic transformation of data that,
when properly implemented, provides a mechanism for
verifying origin authentication, data integrity and signatory non-
repudiation.”
Thus, a digital signature is a data-dependent bit pattern, generated by an
agent as a function of a file, message, or other form of data block
FIPS 186-4 specifies the use of one of three digital signature algorithms:
Digital Signature Algorithm (DSA)
RSA Digital Signature Algorithm
Elliptic Curve Digital Signature Algorithm (ECDSA)
BIT 21403 26
BIT 21403 27
BIT 21403 28
BIT 21403 29
Random Keys for public-key
Numbers algorithms
Stream key for symmetric
stream cipher
Uses include
generation of: Symmetric key for use as a
temporary session key or in
creating a digital envelope
Handshaking to prevent
replay attacks
BIT 21403 30
Random Number
Requirements
Randomness Unpredictability
Criteria:
Uniform distribution Each number is statistically
Frequency of occurrence of each
of the numbers should be independent of other
approximately the same numbers in the sequence
Independence
No one value in the sequence
can be inferred from the others
Opponent should not be
able to predict future
elements of the sequence
on the basis of earlier
elements
BIT 21403 31
Random versus
Pseudorandom
Cryptographic applications typically make use of algorithmic techniques
for random number generation
• Algorithms are deterministic and therefore produce sequences of numbers that are not statistically
random
Use a commercially
Library based tape Background laptop/PC
available encryption Back-end appliance
encryption data encryption
package
Even though erased, until disk
sectors are reused data are
recoverable
BIT 21403 33
Summary
• Confidentiality with
symmetric encryption • Public-key encryption
Symmetric encryption Structure
Symmetric block encryption Applications for public-key
algorithms cryptosystems
Stream ciphers Requirements for public-key
cryptography
• Message authentication and Asymmetric encryption algorithms