Information Security
CS-497
Dr. Saif Ur Rehman
Todays Contents
Understand what encryption means
Learn about the different types of data encryption
Learn why encryption is so important in modern computing
Explain how encryption keeps Internet communications secure
Encryption
Encryption is a way to conceal information by altering it so that
it appears to be random data.
Encryption is essential for security of data/information on the
Internet.
The science of encrypting and decrypting information is called
cryptography.
Encryption History
Historically, it was used by militaries and governments.
In modern times, encryption is used to protect data both at rest
and in motion.
– At-rest data is the type stored on computers and storage
devices.
– In-motion data refers to data in transit between devices
and over networks.
Encryption Algorithms
An encryption algorithm is the method used to transform data
into ciphertext.
An algorithm will use the encryption key in order to alter the
data in a predictable way, so that even though the encrypted
data will appear random, it can be turned back into plaintext by
using the decryption key.
The two main kinds of encryption are
– Symmetric encryption and
– Asymmetric encryption (also known as public key
encryption).
Encryption Algorithms - Symmetric
Encryption
It uses only one key, and all communicating parties use the same
(secret) key for both encryption and decryption.
It is also known as “shared-key” or “private-key” encrytption.
The key is a piece of a shared secret between the two parties
involved hence it is „shared-key„ and is kept secret, hence the name
„private-key„ is justified.
Encryption Algorithms - Symmetric
Encryption
Example
– Some of the most common use cases for symmetric cryptography
include: Banking: Encrypting credit card information or other
personally identifiable information (PII) required for transactions.
Data storage: Encrypting data stored on a device when that data
is not being transferred.
Encryption Algorithms - Asymmetric
Encryption
It uses two keys: one key is used for encryption, and a different key is
used for decryption.
The decryption key is kept private (hence the "private key" name),
while the encryption key is shared publicly, for anyone to use (hence
the "public key" name).
Asymmetric encryption is a foundational technology for TLS (often
called SSL).
Encryption Algorithms - Asymmetric
Encryption
Example
– WhatsApp, a popular messaging app used by lots of people.
WhatsApp uses asymmetric encryption to keep your messages
private and safe. When you send a message on WhatsApp, it gets
locked up using asymmetric encryption.
Symmetric Encryption Algorithms - AES
Advanced Encryption Algorithm (AES), is a symmetric block
cipher chosen by the U.S. government to protect classified
information.
AES is implemented in software and hardware throughout the
world to encrypt sensitive data.
It is essential for government computer security, cybersecurity
and electronic data protection.
Since AES puts data through multiple encryption rounds and
splits a message into smaller blocks of 128 bits, it is more
secure and reliable than older symmetric encryption methods.
Symmetric Encryption Algorithms - AES
For Example,
Symmetric Encryption Algorithms - AES
Steps to be followed in AES
Symmetric Encryption Algorithms - AES
Add Round Key: You pass the block data stored in the state array
through an XOR function with the first key generated (K0).
It passes the Resultant State Array on as input to the next step.
Symmetric Encryption Algorithms - AES
Sub-Bytes: In this step, it converts each byte of the state array into
hexadecimal, divided into two equal parts. These parts are the rows
and columns, mapped with a substitution box (S-Box) to generate
new values for the final state array.
Symmetric Encryption Algorithms - AES
Shift Rows: It swaps the row elements among each other. It skips
the first row. It shifts the elements in the second row, one position to
the left. It also shifts the elements from the third row two consecutive
positions to the left, and it shifts the last row three positions to the left.
Symmetric Encryption Algorithms - AES
Mix Columns: It multiplies a constant matrix with each column in the
state array to get a new column for the subsequent state array. Once
all the columns are multiplied with the same constant matrix, you get
your state array for the next step. This particular step is not to be
done in the last round..
Symmetric Encryption Algorithms - AES
Add Round Key: The respective key for the round is XOR‟d with the
state array is obtained in the previous step. If this is the last round,
the resultant state array becomes the ciphertext for the specific block;
else, it passes as the new state array input for the next round.
Symmetric Encryption Algorithms - AES
Now that you understand the basic steps needed to go through the
encryption procedure, understand this example to follow along.
Symmetric Encryption Algorithms - AES
Today, AES is one of the most popular symmetric key cryptography
algorithms for a wide range of encryption applications for both
government and commercial use. Some examples include the
following:
– Data on storage media, including hard drives and USB drives.
– Electronic communication apps.
– Programming libraries.
– Internet browsers.
– File and disk compression.
– Wireless networks.
– Databases.
– Login credentials including passwords.
– Virtual private networking (VPN).
Encryption Algorithms
Commonly used symmetric encryption algorithms include:
– AES
– 3-DES
– SNOW
Commonly used asymmetric encryption algorithms include:
– RSA
– Elliptic curve cryptography