Escolar Documentos
Profissional Documentos
Cultura Documentos
lain
dan
digunakan
oleh
beberapa
orang
dalam
besar.
pulsa-pulsa
listrik.
mengamankan
dan
password.
falisitas jaringan.
Kemampuan
bentuk
untuk
Tetapi
kemudian
komputer
pun
bidang
memberi
yang
komputer
sama
dan
jaringan
canggihnya
dengan
kemajuan
informasi.
jaringan.
belahan
dunia
yang
lain
melalui
beberapa
cara
untuk
elektronik
melakukan
adalah
tanda
berubahnya
penyangkalan
jaringan
disamarkan
sedemikian
rupa
menjadi
Dengan
akan
informasi
tangan.
informasi
(non-repudiation),
menjaga
modern.
cara
rahasia.
sedangkan
berhak. Istilah
kriptografi atau
Kriptografi
manual
klasik
sebelum
kriptografi
adalah
adanya
modern
cara
komputer,
berkembang
pengiriman
informasi
lewat
jaringan,
authentication
atau
identification,
message
dilakukan
access
control,
certification,
witnessing,
receipt,
anonymity,
non-repudiation
timestamping,
confirmation,
dan
sebelumnya.
Jika
terjadi
ownership,
menyangkal
revocation
suatu
tindakan
sebelumnya,
[MOV96].
Dari semua tujuan pengamanan informasi yang
integrity,
authentication
dan
non-repudiation
[MOV96].
organisasi
internasional
yaitu
International
kriptografi.
modern.
data integrity.
Kriptografi
klasik
adalah
cara
modern,
yang
berkembang
setelah
adanya
dilengkapi
yang
ciphertext.
dengan
sering
aplikasi
digunakan.
yang
Ada
mencakup
penggunaan
dan
kriptografi
asimetris
[JJ89].
sama
untuk
enkripsi
dan
dekripsi
seperti
maka
bekerja.
akan
diterangkan
secara
ringkas
bervariasi
publik
adalah
antara
128,
192
dan
256
bit.
empat
macam
proses
yaitu
SubBytes(),
ShiftRows(),
MixColumns()
dan
Kunci 128
bit
AddRoundKey().
AddRoundKey()
w[0,3]
Expand Key
ShiftRows()
6. Dengan
proses
Expand
Key
atau
Ronde 1
MixColumns()
AddRoundKey()
State
w[4,7]
SubBytes()
ShiftRows()
Ronde 2
MixColumns()
AddRoundKey()
w[8,11]
SubBytes()
ShiftRows()
Ronde 9
MixColumns()
AddRoundKey()
w[36,39]
State
SubBytes()
byte-per-byte.
b. ShiftRows(),
ShiftRows()
yang
melakukan
Ronde 10
suatu
AddRoundKey()
w[40,43]
ciphertext
(2 ).
8
2.1.1.1. SubBytes ()
nibble).
Setiap
byte
State
akan
s 0,1
s 0, 2
s 0,3
s ' 0, 0
s '0, 2
s ' 0, 3
s1, 0
s1,s1 r ,c
s1, 2
s1,3
s '1, 0
s ' r ,c s '1, 2
s '1,3
s 2, 0
s 2,1
s 2, 2
s 2,3
s ' 2, 0
s ' 2,1
s ' 2, 2
s ' 2,3
s 3, 0
s3,1
s 3, 2
s 3, 3
s ' 3, 0
s '3,1
s ' 3, 2
s ' 3, 3
s ' 0,1
maka
s ' 0,c 02
s '1,c = 01
s ' 01
2 ,c
s ' 3,c 03
03 01 01 s 0,c
02 03 01 s1,c
01 02 03 s 2,c
01 01 02 s3,c
Untuk
berikut:
0r 4 dan
untuk
0 c Nb .
0 c Nb,
s r ,3
s ' r ,0
s' r ,1
s 0,1
s0, 2
s0,3
s0,0
s1,0
s1,1
s1,2
s1,3
s 2, 0
s 2,1
s 2, 2
s3,1
s3, 2
s r ,0
s r ,1
s0,0
s' r , 2
s' r ,3
s0,1
s0,2
s0,3
s1,1
s1,2
s1,3
s1,0
s 2, 3
s 2, 2
s 2, 3
s 2, 0
s 2,1
s3,3
s3,3
s3, 0
s3,1
s3, 2
s3, 0
S'
s 0 ,0
s 0,c
s 0,1
s1, 0
s1,c
s1,1
s 2, 0
s 2,c
s 2,1
s 3, 0
s 3 ,c
s3,1
s 0, 2
s1, 2
s 2, 2
s 3, 2
s 0,3
s1,3
s 2,3
s 3, 3
s ' 0, 0
s ' 0,c
s 0,1 s '0, 2
s ' 0, 3
s '1, 0
s '1,c
s1,1
s '1, 2
s '1,3
s ' 2, 0
s ' 2,c
s 2,1
s ' 2, 2
s ' 2,3
s ' 3, 2
s ' 3, 3
s ' 3, 0
s ' 3, c
s3,1
Gambar 5. ShiftRow()
Gambar 6. Transformasi MixColumns()
2.1.1.3. MixColumns()
Transformasi menggunakan MixColumns() adalah
2.1.1.4. AddRoundKey()
sini
kolom-kolom
pada
State
akan
polinomial
yang
array
plaintext
akan
mengalami
proses-proses:
k 0 k 4 kk18 k12
k1 k 5 k 9 k13
k 2 k 6 k10 k14
k 3 k 7 k11 k15
w0 w1 w2 w3
berikut,
mengalami
maka
perubahan
128
bit
pada
yang
ketiga
sudah
proses
w4 w5 w6 w7
Pada Ronde terakhir atau Ronde 10, maka hanya
Gambar 7. ExpandKey
word baru.
enkripsi.
Kemudian
40
w4 sampai dengan
pada
w0 , w1 , w2 dan w3 .
seterusnya
word
sampai
w3 , w7 , w11 dan
dengan
w3 9 , akan
4. Setiap
word
berikutnya
akan
diperoleh
dengan cara:
- jika i 0 mod 4 , maka
i 0 mod 4 , maka
w[i ] = w[i 4] w[i 1]
w43 .
dipertukarkan
dan
InvAddRoundKey()
dan
akan menjadi
w[40,43]
AddRoundKey()
2. SubWord:
Dilakukan
byte
InvShift Rows()
substitution
InvSubBytes()
'
w3 akan menjadi w3
InvMixColumns()
''
InvShift Rows()
Rcon[ j ] .
InvSubBytes()
w[32,35]
4.
Ronde 1
AddRoundKey()
''
w3 dengan
w[36,39]
Ronde 2
AddRoundKey()
InvMixColumns()
InvShift Rows()
Rcon[ j ]
InvSubBytes()
w[4,7]
Ronde
Round 9
AddRoundKey()
10
InvMixColumns()
ke
Expand Key
Rcon[j]
01
02
04
08
10
20
40
80
1B
36
InvShift Rows()
InvSubBytes()
Ronde 10
w[0,3]
AddRoundKey()
2.1.2.1. InvShiftRows()
proses
pada
InvShiftRows(),
InvAddRoundKey()
dekripsi
adalah
yang
InvSubBytes(),
dan
dan
geser
kanan.
Baris
adalah
InvMixColumns().
urutan
dilakukan
InvSubBytes()
untuk
0r 4
dan
0 c Nb
s ' 0,c = ({0 E } s 0,c ) ({0 B} s1,c ) ({0 D} s 2,c ) ({09} s3,c )
Nb , Nb = 4 )
s ' 2,c = ({0 D} s 0,c ) ({09} s1,c ) ({0 E } s 2,c ) ({0 B} s3,c )
s '3,c = ({0 B} s 0,c ) ({0 D} s1,c ) ({09} s 2,c ) ({0 E } s3,c )
s r ,0
sr ,2
s r ,1
s r ,3
s ' r ,0
s' r , 2
s' r ,1
s' r ,3
2.1.2.4. InvAddRondeKey()
S
S'
s0,0
s 0,1
s0, 2
s0,3
s0,0
s0,1
s0,2
s0,3
s1,0
s1,1
s1,2
s1,3
s1,3
s1,0
s1,1
s1,2
s 2, 0
s 2,1
s 2, 2
s 2, 3
s 2, 2
s 2, 3
s 2, 0
s 2,1
s3, 0
s3,1
s3, 2
s3,3
s3,1
s3, 2
s3,3
s3, 0
InvAddRoundKey()
adalah
sama
dengan
AddRoundKey()
Gambar 9. InvShiftRows()
2.1.2.2. InvSubBytes()
adalah
InvAddRoundKey()
InvShiftRows(),
InvSubBytes(),
dan
InvMixColumns()
dan
x + 1,
dari
MixColumns()
invers
ShiftRows(),
proses
pada GF
adalah
SubBytes(),
(x ) = {0 B}x
a 1 ( x ) berikut:
+ {0 D}x + {09}x + {0 E}
2
Jika
s ' ( x ) = a 1 ( x ) s ( x ) , maka
s ' 0,c 02
s '1,c = 01
s ' 01
2 ,c
s ' 3,c 03
untuk
ShiftRows() bisa
03 01 01 s 0,c
02 03 01 s1,c
01 02 03 s 2,c
01 01 02 s3,c
ShiftRows()
yang
proses
SubBytes().
Begitu
diikuti
dengan
juga
dengan
0 c Nb.
proses InvShiftRows(),
AddRoundKey()
w[40,43]
XOR
RondeKey)
InvMixColumns(state)
InvSubBytes()
InvShift Rows()
XOR
InvMixColumns()
InvMixColumns()
InvMixColumns(RoundKey)
AddRoundKey()
w[36,39]
InvSubBytes()
dan
InvShiftRows()
InvShift Rows()
Ronde 2
untuk
InvMixColumns()
InvMixColumns()
w4
AddRoundKey()
w[32,35]
InvShift Rows()
InvMixColumns()
Equivalen
Dekripsi
menukarkan
InvShiftRows()
AES
urutan
dan
dilakukan
InvSubBytes()
menukarkan
dengan
InvMixColumns()
dan
AddRoundKey()
w[4,7]
urutan
InvShift Rows()
Expand Key
InvSubBytes()
Ronde 10
AddRoundKey()
w[0,3]
N r -1 menggunakan InvMixColumns.
2.2.
diterangkan sebelumnya.
RSA
adalah
singkatan
dari
Rivest-Shamir-
RSA
adalah
kriptografi
10
C = P e mod n ,
P = C d mod n
(mod
(n ) ).
menggunakan SHA-256
bilangan-bilangan kecil
dan q=53.
2. Hitung n = pq = 61 x 53 = 3233.
3. Hitung totient
(n ) =
(p-1)(q-1) = 60 x 52 =
3120.
(n )
seperti
pada
enkripsi/dekripsi,
dan
hanya
11
perulangan
dihasilkan.
2.3.2.
Algoritma
berikut :
h = H(M)
yang
menggunakan
fungsi
x, y
code
muncul
hash
Kemudian
adalah
SHA-0.
fungsi
word 32 bit.
yang
Ch( x, y, z ) = ( x y ) (x z )
Maj ( x, y, z ) = ( x y ) ( x z ) ( y z )
{ }
(x ) = ROTR (x ) ROTR (x ) ROTR (x )
256
13
22
{ }
(x ) = ROTR (x ) ROTR (x ) ROTR (x )
256
11
25
2.3.1.
2.3.3.
Operasi SHA-256
melakukan
penambahan
bit-bit
pada
pesan
428a2f98
71374491
b5c0fbcf
e9b5dba5
sehingga
membentuk
suatu
input
text,
3956c25b
59f111f1
923f82a4
ab1c5ed5
d807aa98
12835b01
243185be
550c7dc3
72be5d74
80deb1fe
9bdc06a7
c19bf174
e49b69c1
efbe4786
0fc19dc6
240ca1cc
2de92c6f
4a7484aa
5cb0a9dc
76f988da
983e5152
a831c66d
b00327c8
bf597fc7
c6e00bf3
d5a79147
06ca6351
14292967
27b70a85
2e1b2138
4d2c6dfc
53380d13
650a7354
766a0abb
81c2c92e
92722c85
a2bfe8a1
a81a664b
c24b8b70
c76c51a3
12
d192e819
d6990624
f40e3585
106aa070
H 5(0 ) = 9b05688c
19a4c116
1e376c08
2748774c
34b0bcb5
391c0cb3
4ed8aa4a
5b9cca4f
682e6ff3
748f82ee
78a5636f
84c87814
8cc70208
H 7(0 ) = 5be0cd19
90befffa
a4506ceb
bef9a3f7
c67178f2
2.3.4.
M , yang mempunyai
Tahap preprocessing
panjang
pesan
bit,
di
0 l 2 64 .
mana
schedule
k bit sehingga
ini
diberi
label
W0 , W1 , W2 .......W62 , W63 .
sebagai variabel
a, b, c, d , e, g dan h .
word.
tersebut
adalah
Setiap
word
diberi
label
H (0 ) . Setelah
value
hash
dilakukan,
H (N ) .
M 15(i ) . Sebelum
maka
yaitu
T1 dan T2 .
harus
H (0 ) .
2.3.5.
berikut:
yang
H 0(0 ) = 6a 09e667
sudah
disebutkan
sebelumnya.
2 32 .
blok pesan
H 4(0 ) = 510e527 f
berikut:
13
Untuk i = 1 sampai N :
H 2(i ) = c + H 2(i 1)
H 3(i ) = d + H 3(i 1)
{Wt }:
H 4(i ) = e + H 4(i 1)
(i )
Mt
0 t 15
Wt = {256}
{256}
(
W
)
+
W
+
(
W
)
+
W
16
t 63
t 2
t 7
0
t 15
t 16
1
2. variabel
H 5(i ) = f + H 5(i 1)
H 6(i ) = g + H 6(i 1)
H 7(i ) = h + H 7(i 1)
a = H 0(i 1)
}
b = H 1(i 1)
c = H 2(i 1)
d = H 3(i 1)
N kali sampai
e = H 4(i 1)
maka akan
f = H 5(i 1)
g = H 6(i 1)
(i 1)
h = H7
3. untuk
H 0( N ) H 1( N ) H 2( N ) H 3( N ) H 4( N ) H 5( N ) H 6( N ) H 7( N ) .
t = 0 sampai 63 :
{
{256}
T1 = h + 1
{256}
T2 = 0
(a ) + Maj (a, b, c)
h=g
g= f
f =e
e = d + T1
d =c
c=b
b=a
kunci
a = T1 + T2
publik
yang
harus
diketahui
oleh
}
4. Hitung hash value ke- i
2.4.
H (i ) :
H 0(i ) = a + H 0(i 1)
H 1(i ) = b + H 1(i 1)
14
Gambar 12.
2.5.
Pengkodean
tersebut.
kunci publik :
mengirimkan
mempublikasikan
ASCII.
kunci
publik
melalui
Pengkodean Basis 64
basis
64
format
Base64
adalah
ASCII
adalah
suatu
sehingga
suatu
cara
semua
cara
untuk
directory tertentu
3.
algoritma
directory.
Peminta
mengirimkan
permohonan
pengamanan
melindungi
Microsoft
Kebutuhan
berkembang
memperkenalkan
(CLR).
(www.microsoft.com/technet,Sta03)
suatu
Authority
Server
yaitu
data
dengan
terus
Microsoft
layanan
Cryptography
data,
yang
mendorong
sistem
sistem
kriptografi
Namespace
kemampuan
menjamin
integritas
tempat
3.1.
15
Cryptography Namespace
ini
enkripsi
memperkenalkan
pengamanan
aplikasi
dekripsi
Public
telah
untuk
data,
untuk
menyediakan
classes
yang
SymmetricAlgorithm
DES
DESCryptoServiceProvider
dalam
empat
bagian.
RC2
Lihat
RC2CryptoServiceProvider
Gambar 12.
Rijndael
RijndaelManaged
Division
Description
Encryption
Algorithm
Helper
Classes
X.509
Certificates
XML Digital
Sugnatures
TripleDES
TripleDESCryptoServiceProvider
(dari
Algoritma
Algorithm
ini
mencakup
(DSA)
dan
Digital
RSA
yang
(dari
publik.
suatu
abstract
base
class
seperti
3.2.
Algoritma Enkripsi
(dari
Namespace
algorithm
adalah
atau
symmetric
cryptographic
algoritma kriptografi
simetris.
perubahan
data,
jika
perubahan
data.
Algoritma
16
berbeda
berarti
hash
ini
ada
juga
pembuatan
RSA,
Server.
menghasilkan
hash
code
yang
kunci
privat
penggunaan
dan
digital
kunci
publik
signature
dan
mempunyai
(2)
PKA Server
File Server
HashAlgorithm
KeyedHashAlgorithm
(3)
HMACSHA1
Client
MACTripleDES
MD5
Server - Client
MD5CryptoSeviceProvider
SHA1
SHA1CryptoServiceProvider
SHA1Managed
SHA256
Public
SHA256Managed
Key
Authority
Server
atau
disingkat
SHA384
SHA384Managed
SHA512
ingin
SHA512Managed
saling
berkomunikasi.
Client
akan
Gambar
15.
Hash
Algorithm
//msdn.microsoft.com/msdnmag)
akan
(dari
dienkripsi
dengan
enkripsi
AES,
4.
file
melalui
jaringan
yang
Urut-urutan aplikasi:
mencakup
kriptografi
simetris
yaitu
Client
AES,
17
dan
PKA
Server
akan membuat
sepasang
kunci
publik
dan
privat
berarti
kunci
rahasia
ini
dienkripsi
di PKA Server.
Dengan
menggunakan
algoritma
akan
mengenkripsi
hash
code
Gambar 18. Proses di File Server
digital
signature.
Digital
enkripsi
file
menggunakan
13. Kunci
algoritma AES.
rahasia
digunakan
hasil
untuk
dekripsi
dekripsi
butir
file
11
dengan
algoritma AES.
kunci
18
publik
yang
dienkripsi
RSA
COME06
2006
kunci
publik
milik
JJ89
Client.
Jeniffer
Seberry,
Cryptography:
Josef
An
Pieprzyk,
Intrduction
to
Computer Security
code(*)
yang
diterima
dari
client
York:Scribner, 1996
Handbook
of
Applied
file
ini
akan
ditolak.
Ada
MSW05 Mohammad
A.
Musa,
Edward
F.
Kesimpulan
Scha96 Edward F. Schaefer, A simplified Data
keamanan
informasi
yaitu
kriptografi
n C, 1996
didukung
dengan
pengelolaan
kunci
Sha49
dapat
Shannon
Claude,
Theory
untuk
membangun
aplikasi
pengiriman
data
of
Communication
Secrecy
Systems.
Bell
teramankan.
Sta03
6.
Network
Daftar Kepustakaan
FEBR04
Willam Stallings,
Cryptography and
Security,
Principles
and
Practices, 2003
19
Andrew
S.
Tanenbaum,
Computer
1.5
Networks, 2003
RFC 2437 - PKCS #1: RSA Cryptography
CCITT
and
Applications.
Architecture
For
Open
Security
Systems
AES
(Advanced
Encryption
Gary C. Kessler, An Overview of Cryptography
Standard) Simplified
1998
FIPS99 FIPS PUB 46-3
Specifications
FIPS94
FIPS01
2002
Announcing
Rob95
the
JJ89
Announcing the
Jeniffer
Seberry,
Cryptography:
ENCRYPTION
An
Computer Security
20
Josef
Pieprzyk,
Intrduction
to