CSCE 790: Computer Network Security - cse.sc.edu

CSCE 715:
Network Systems Security
Chin-Tser Huang
[email protected]
University of South Carolina
AES Cipher – Rijndael


Process data as 4 groups of 4 bytes (State)
Has 9/11/13 rounds in which state undergoes:






byte substitution (1 S-box used on every byte)
shift rows (permute bytes between groups/columns)
mix columns (subs using matrix multiply of groups)
add round key (XOR state with key material)
Initial XOR key material & incomplete last round
All operations can be combined into XOR and table
lookups, hence very fast and efficient
9/8/2005
2
AES Encryption and Decryption
9/8/2005
3
AES Data Structure
9/8/2005
4
AES Encryption Round
9/8/2005
5
Byte Substitution



A simple substitution of each byte
Uses one table of 16x16 bytes containing a permutation of all
256 8-bit values
Each byte of state is replaced by byte in corresponding row
(left 4 bits) and column (right 4 bits)


eg. byte {95} is replaced by row 9 col 5 byte, which is {2A}
S-box is constructed using a defined transformation of the
values in GF(28)
9/8/2005
6
Shift Rows

Circular byte shift in each row






1st row is unchanged
2nd row does 1 byte circular shift to left
3rd row does 2 byte circular shift to left
4th row does 3 byte circular shift to left
Decryption does shifts to right
Since state is processed by columns, this step
permutes bytes between the columns
9/8/2005
7
Mix Columns



Each column is processed separately
Each byte is replaced by a value
dependent on all 4 bytes in the column
Effectively a matrix multiplication in
GF(28) using prime poly m(x)
=x8+x4+x3+x+1
9/8/2005
8
Add Round Key




XOR state with 128 bits of the round
key
Again processed by column (though
effectively a series of byte operations)
Inverse for decryption is identical since
XOR is own inverse, just with correct
round key
Designed to be as simple as possible
9/8/2005
9
AES Key Expansion



Take 128-bit (16-byte) key and expand into
array of 44/52/60 32-bit words
Start by copying key into first 4 words
Then loop creating words that depend on
values in previous and 4 places back



in 3 of 4 cases just XOR these together
every 4th has S-box + rotate + XOR constant of
previous before XOR together
Designed to resist known attacks
9/8/2005
10
AES Decryption


AES decryption is not identical to encryption
because steps are done in reverse
But can define an equivalent inverse cipher
with steps as for encryption



but using inverses of each step
with a different key schedule
Works since result is unchanged when


9/8/2005
swap byte substitution & shift rows
swap mix columns and add (tweaked) round key
11
Implementation Aspects

Can efficiently implement on 8-bit CPU




9/8/2005
byte substitution works on bytes using a
table of 256 entries
shift rows is simple byte shifting
add round key works on byte XORs
mix columns requires matrix multiply in
GF(28) which works on byte values, can be
simplified to use a table lookup
12
Implementation Aspects

Can efficiently implement on 32-bit CPU





redefine steps to use 32-bit words
can precompute 4 tables of 256-words
then each column in each round can be computed
using 4 table lookups + 4 XORs
at a cost of 16Kb to store tables
Designers believe this very efficient
implementation was a key factor in its
selection as the AES cipher
9/8/2005
13
Points of Vulnerability



Adversary can eavesdrop from a
machine on the same LAN
Adversary can eavesdrop by dialing into
communication server
Adversary can eavesdrop by gaining
physical control of part of external links


9/8/2005
twisted pair, coaxial cable, or optical fiber
radio or satellite links
14
Placement of Symmetric Encryption


Two major placement alternatives
Link encryption




encryption occurs independently on every link
implies must decrypt traffic between links
requires many devices, but paired keys
End-to-end encryption


9/8/2005
encryption occurs between original source and
final destination
need devices at each end with shared keys
15
Characteristics of
Link and End-to-End Encryption
9/8/2005
16
Placement of Encryption

Can place encryption function at various
layers in OSI Reference Model



link encryption occurs at layers 1 or 2
end-to-end can occur at layers 3, 4, 6, 7
If move encryption toward higher layer


9/8/2005
less information is encrypted but is more secure
application layer encryption is more complex, with
more entities and need more keys
17
Scope of Encryption
9/8/2005
18
Traffic Analysis



When using end-to-end encryption, must
leave headers in clear so network can
correctly route information
Hence although contents are protected, traffic
patterns are not protected
Ideally both are desired


9/8/2005
end-to-end protects data contents over entire path
and provides authentication
link protects traffic flows from monitoring
19
Key Distribution



Symmetric schemes require both parties
to share a common secret key
Need to securely distribute this key
If key is compromised during
distribution, all communications
between two parties are compromised
9/8/2005
20
Key Distribution Schemes

Various key distribution schemes for two
parties




9/8/2005
A can select key and physically deliver to B
third party C can select and deliver key to A and B
if A and B have shared a key previously, can use
previous key to encrypt a new key
if A and B have secure communications with third
party C, C can relay key between A and B
21
Key Distribution Scenario
9/8/2005
22
Key Distribution Issues





Hierarchies of KDC’s are required for large
networks, but must trust each other
Session key lifetimes should be limited for
greater security
Use of automatic key distribution on behalf of
users, but must trust system
Use of decentralized key distribution
Controlling purposes keys are used for
9/8/2005
23
Summary of
Symmetric Encryption




Traditional symmetric cryptography uses
one key shared by both sender and
receiver
If this key is disclosed, communications
are compromised
Symmetric because parties are equal
Provide confidentiality, but does not
provide non-repudiation
9/8/2005
24
Next Class



Asymmetric encryption: RSA
Key management with asymmetric
encryption
Read Chapter 9, 10
9/8/2005
25