Вы находитесь на странице: 1из 35

PENERAPAN ALJABAR

LINIER
PADA MINI AES
I GEDE RESPA PRANAYOGA SATIVA
1514101148

OUTLINE

Sejarah AES dan Kegunaan Mini AES


Proses Matematika pada Mini AES
Komponen Mini-AES
Pembangkitan Kunci
Enkripsi
Dekripsi
Analisis Aljabar Linier pada Mini-AES

LATAR BELAKANG
1.
2.
3.

4.

DES----tidak aman.
Algoritma Baru
National Institute of Standards and
Technology (NIST)----Pemerintah
Federal AS--standard kriptografi
kriptografi baru.
Lomba---AES

Sejarah AES
Kreteria

Algoritma
Finalis Lomba
Rijndael
Serpent
Twofish
RC6
MARS
Oktober 2000, NIST --Rijndael
November 2001, Rijndael -- AES

MINI AES
Mini

AES---PembelajaranSiswa
Paham
Konsep Mini AES Desain Rijndael
Attack dan analisis

MINI AES

Dasar
A.

Matematika
Lapangan Terbatas
Input--(2 pangkat 4)---bit yang dapat
dikonversikan menjadi polinomial.

.Contoh
.Input

n = 1011, maka dapat dikonversikan


.Input n = = + + 1

MINI AES
B.

Penjumlahan
Sistem penjumlahan--elemen-elemen
2 buah polinomial-- setiap polinomial
memiliki
keofisien
(0,1)--Tanda
penjumlahan ().
. Contoh
. n

= 1011 and m = 0111, dijumlahkan ,


n + m = 1011 + 0111 = 1100 atau
. polynomial notation:
n + m = ( + + 1) + ( + + 1) = +

MINI AES
C.

Perkalian
Sistem
Perkalian
merupakan
perkalian
elemen-elemen
dari
polinomial dan memiliki pangkat
terbesar 3. sesungguhnya perkalian
merupakan perkalian modulo dengan
dimodulo + + 1.

Contoh Cont.
n

= 1011 and m = 0111, maka hasil


kalinya adalah,
( + + 1) X ( + + 1) = + + + + +
+1
= + + 1
Karena hasilnya melebihi pangkat 3 maka
dilakukan modulo dengan + + 1. jadi hasilnya
adalah

Diagram Enkripsi Mini-AES

Komponen Mini AES


Published in Cryptologia, XXVI (4), 2002.

3.1

Mini-AES Components

Input
Mini-AES
sejumlah
16
bit----P=(p
,
p
,
p
,
0
1
2
To make it easier to describe the internal process of the Mini-AES encryption, the input
plaintext block of 16 bits, P = (p0, p1, p2, p3) is represented as a matrix of 2 rows and 2
columns
of 4 bits (a nibble), as given in Figure 2.
3

p ) direpresentasikan matriks 2 baris dan 2 kolom


yangp berisi 4 bit (nibble).
p
0

p2

p3

Bit

Bit

Bit

Bit

Bit

Bit

Bit

Bit

Bit

Bit

Bit

Bit

Bit

Bit

Bit

Bit

10

11

12

13

14

15

P=
Figure2:

p0

p2

p1

p3

2 2 Matrix Representation of the 16-bit Block

Within the Mini-AES encryption process, there are 4 main components, namely

the
the Mini-AES
Mini-AES encryption
encryption process,
process, there
there are
are 44 main
main components,
components, namely
namely
Row,
Row, MixColum
MixColumn
nand
and KeyAddition.
KeyAddition. The
The application
application of
of these
these 4 components
components in
in
utes
utes aa round
roundof
of Mini-AES.
Mini-AES.

Komponen Mini-AES
----NibbleSub ()----

Sub,

simple
simple operation
operation that
that substitutes
substitutes each
each input
input nibble
nibble with
with an
an output
output nibble
nibble

NibbleSub
merupakan
suatu
operasi
substitusi
44 substitution
substitution table
table (S-box),
(S-box), as
as given
given in
in Table
Table 1.
1. The
The values
values in
in Table
Table 11 are
are
stst
m
of
in
m the
the 11 row
rowsederhana
of the
the first
first S-box
S-box
in DES.
DES.
berdasarkan
S-Box 4 x 4.

Input
0000
0001
0010
0011
0100
0101
0110
0111

Output
1110
0100
1101
0001
0010
1111
1011
1000

Input
1000
1001
1010
1011
1100
1101
1110
1111

Output
0011
1010
0110
1100
0101
1001
0000
0111

Table
Table1:
1: S-box
S-box of
of Mini-AES
Mini-AES

S-Box
Mini-AES
Contoh
Input 1010 maka
outputnya adalah 0110
Contoh
Input 0000 maka
outputnya adalah 1110

0111

1000

1111

0111

Table1: S-box of Mini-AES

Cont.

NibbleSub operation is illustrated in Figure 3, where A = (a00, a11, a22, a33) is the inpu
inp
k and B = (b00, b11, b22, b33) is the output.
a00
a11

a22
a33
Figure3:

NibbleSub

The NibbleSub Operation

b00

b22

b11

b33

Komponen Mini-AES
ShiftRow ()
ShiftRow

merotasi setiap baris sesuai dengan nomor


baris. Baris pertama tidak berubah namun baris
kedua dirotasi atau ditukarkan antar barisnya. Untuk
proses sebagai berikut :

Jadi jika input B = (b0, b1, b2, b3) maka output C =(c0, c1, c2, c3) = (b0, b3, b2, b1)

Komponen Mini-AES
Mix Column
Misal

input C = (c0, c1, c2, c3)


Sehingga output MixColumn D = (d0, d1, d2, d3),
maka kolom output :

Cont.
d0
d
1

d0
d1

0010 c0
0011 c1
(0011 c0 ) (0010 c1 )
(0010 c0 ) (0011 c1 )

d2
d
3

d2

0011

0010

0010 c2
0011 c3
(0011 c2 ) (0010 c3 )
0011

0010

d 3 (0010 c2 ) (0011 c3 )
Jadi jika input c = (c0, c1, c2, c3) maka output D =(d0, d1, d2, d3).

Komponen Mini-AES
Key Addition ()
Melakukan suatu proses XOR roundkey dengan blok

input. Contoh proses XOR key addition

Jadi jika input d = (d0, d1, d2, d3) maka output setelah XOR E =(e0, e1, e2, e3).

Pembangkitan Kunci
Mini AES hanya perlu melakukan pembangkitan kata kunci sebanyak dua kali
hingga menjadi k2 untuk proses dekripsi dan enkripsi.
Catatan bahwa rcon(1) = 0001, rcon(2) = 0010

Proses Enkripsi
Tahapan

tahapan enkripsi Mini-AES

K
NibbleSub ()
ShiftRow Pertama
Mix Culomn pertama
K
NibbleSub ()
ShiftRow kedua
Key Addition

Proses Enkripsi
Proses enkripsi pada Mini-AES dapat dirumuskan
sebagai :
EnkripMini-AES = K2 K1 K0
Misal P = 1001 1100 0110 0011, jika diekspresikan

dalam matriks 2 x 2 menjadi

P=

Pembangkitan Kunci Mini-AES


Kunci yang digunakan K =1100 0011 1111 0000. Dalam matriks 2 x 2
menjadi :

K0 = (w0, w1, w2, w3) = (k0, k1, k2, k3)


K0 = 1100 0011 1111 0000

K0 =

K1 = (w4, w5, w6, w7)


a. w4 = w0 NibbleSub(w3) 0001
= 1100 NibbleSub(0000) 0001
= 1100 1110 0001 = 0011

Cont. Pembangkitan Kunci


w5 = w1 w4
= 0011 0011 = 0000
w6 = w2 w5
= 1111 0000 = 1111
w7 = w3 w6
= 0000 1111 = 1111

K1 =

oo11
0000

1111
1111

Cont. Pembangkitan Kunci


K2 = (w8, w9, w10, w11)
w8 = w4 NibbleSub(w7) 0010
= 0011 NibbleSub(1111) 0010
= 0011 0111 0010 = 0110
w9 = w5 w8
= 0000 0110 = 0110
w10 = w6 w9
= 1111 0110 = 1001
w11 = w7 w10
= 1111 1001 = 0110

Cont.

Round 1 :
KeyAddition dengan K0 :
A = P K0
= 1001 1100 0110 0011 1100 0011 1111 0000
= 0101 1111 1001 0011

2 2 Matrix Representation of the 16-bit Block

Figure 2:

n the Mini-AES encryption process, there are 4 main components, namely


iftRow, MixColumn and KeyAddition. The application of these 4 components in
titutes a round of Mini-AES.

NibbleSub:
B = NibbleSub(0101),NibbleSub(1111),
eSub,
a simple NibbleSub(1001),
operation that substitutes each input nibble with an output nibble
4 4 substitution table (S-box), as given in Table 1. The values in Table 1 are
om the 1 rowNibbleSub(0011)
of the first S-box in DES.
= 1111 0111 1010 0001
st

Input
0000
0001
0010
0011
0100
0101
0110
0111

Output
1110
0100
1101
0001
0010
1111
1011
1000

Input
1000
1001
1010
1011
1100
1101
1110
1111

Output
0011
1010
0110
1100
0101
1001
0000
0111

Table1: S-box of Mini-AES

ub operation is illustrated in Figure 3, where A = (a0, a1, a2, a3) is the input
(b0, b1, b2, b3) is the output.

a0
a

a2
a

NibbleSub

b0

b2

C = ShiftRow (1111 0111 1010 0001) = 1111 0001


1010 0111
D = Mix Column ()
d0
0011
d 0010

0010 1111
0011 0001

d0
(0011 1111) (0010 0001)
0000
d (0010 1111) (0011 0001) 1110

Mix

Column

d2
0011
d 0010

0010 1010
0011 0111

d2
(0011 1010) (0010 0111)
d (0010 1010) (0011 0111)

3
d2
1101 1110
0011
d 0111 1001 1110

Proses Enkripsi
Round 1
Jadi Hasil dari MixColumn adalah D = 0000 1110
0011 1110.
KeyAddition dengan K1 :
E = D K1

= 0000 1110 0011 1110 0011 0000


1111 1111
= 0011 1110 1100 0001

Cont. Proses Enkripsi


NibbleSub :
F = NibbleSub(0011), NibbleSub(1110), NibbleSub(1100),
NibbleSub(0001) = 0001 0000 0101 0100
ShiftRow :
G = ShiftRow (0001 0000 0101 0100) = 0001 0100 0101 0000
Pada round terakhir tidak ada MixColumn, sehingga
H = G K2 = 0001 0100 0101 0000 0110 0110 1001 0110
= 0111 0010 1100 0110
Jadi teks sandi yang didapat adalah 0111 0010 1100 0110

Proses dekripsi pada Mini-AES dapat dirumuskan


sebagai :
Dekrip Mini-AES = (K2 K1
K0) 1
= K0 -1 K1 -1
K2
S-Box pada proses dekripsi merupakan invers dari SBox enkripsi

Invers S-Box

Analisis Penerapan Aljabar Linear


A.

Proses Perkalian Pada Mix Culomn sesuai


dengan proses perkalian entri-entri pada
matrik yang kemudian di XOR
B. Pengubahan Bentuk polinomial ke dalam
bentuk matrik 2x2
C. Proses Penjumlahan Atau XOR sesuai
dengan entri-entri pada matrik 2x2 pada XOR
roundkey dengan blok input.
D. Proses pertukaran baris pada ShiftRow
sesuai dengan operasi entri pada matrik

Analisis Penerapan Aljabar Linear


E. Proses dekripsi yang merupakan invers
dari proses enkripsi

DAFTAR PUSTAKA
Phan,

Raphael. 2002. Mini Advanced Encryption


Standard (Mini-AES): A Testbed for Cryptanalysis
Students. Cryptologia XXVI (4).
Daemen, Joan, and Rijmen, Vincent. 2002. The
Design of Rijndael: AES The Advanced Encryption
Standard. Information Security and Cryptography
series. Springer-Verlag.

Sekian dan Terimakasi

Вам также может понравиться