Minggu 12 keamanan data[baru]

Post on 06-May-2015

633 views 2 download

Transcript of Minggu 12 keamanan data[baru]

Sistem Keamanan Data

Minggu ke-12

Kasus Keamanan Sistem• Awal 2009. sistem KPU RI di bobol diacak-acak oleh

orang yang tidak bertanggung jawab.• Maret 2005, Indonesia dan Malaysia berebut pulau

ambalat. Hacker Indonesia dan Malaysia berlomba-lomba untuk merusak situs-situs masing-masing negara.

Latar Belakang

Latar Belakang• Kriptografi merupakan salah satu metode pengamanan data yang

dapat digunakan untuk menjaga keamanan data, keaslian data serta keaslian pengiriman data.

• Kriptografi adalah ilmu yang digunakan untuk mengacak data sedemikian rupa sehingga tidak bisa di dibaca oleh pihak ketiga.

• Data yang ingin diacak biasanya di sebut plainteks, data di acak dengan menggunakan kunci enkripsi, proses pengacakan itu sendiri di sebut Enkripsi. Plainteks yang telah di acak di sebut ciperteks. Kemudian proses untuk mengembalikan cipherteks ke plainteks deskripsi. Kunci yang digunakan pada tahap dekripsi di sebut kunci dekripsi.

Kunci Enkripsi

Algoritma Simetri• Memiliki kunci yang sama untuk kegiatan enkripsi

dan deskripsinya.

Algoritma Asimetri• Kunci yang di lakukan untuk enkripsi dan dekripsi

berbeda.– Public key di publikasikan– Private key orang tertentu

Teknik dasar Kriptografi [1]• Metode subsitusi

– Menukar satu karakter dengan karakter yang lain.

Teknik dasar Kriptografi [2]• Teknik Blok

– menggunakan teknik blok di pilih jumlah baris dan kolom untuk penulisan pesan.

– Jumlah baris atau kolom menjadi kunci bagi kriptografi dengan teknik plainteks di tuliskan secara vertical ke bawah.

– ciperteksnya adalah hasil pembacaan secara horizontal berurutan sesuai dengan bloknya

Teknik dasar Kriptografi [3]• Teknik Permutasi

– Teknik ini memindahkan atau merotasikan karakter dengan aturan tertentu.

Algoritma Rijndael• Algoritma Rijndael menggunakan subsitusi,

permutasi dan sejumlah putaran yang di kenakan pada tiap blok yang akan di ekripsi dan di dekripsi.

• Ukuran blok untuk algoritma Rijndal adalah 128 bit (16 byte)

Parameter Algoritma Rijndael [1]• Plainteks adalah array yang berukuran 16-byte,

yang berisi data masukan• Cipherteks adalah array yang berukuran 16-bye,

yang berisi hasil enkripsi• Cipherkey adalah array yang berukuran 16-byte,

yang berisi kunci Cipher

Parameter Algoritma Rijndael [2]• Dengan 16 byte, maka blok data dan kunci yang

berukuran 128-bit dapat disimpan di dalam array 16 elemen (16 8 = 128).

• Untuk blok data 128-bit, ukuran state 4 4.

Pla inteks 128-b it

state

Matematika Rijndael

• XOR sama nilai 0, beda nilai 1• Perubahan Bilangan

Garis Besar Algoritma Rijndael

Langkah-langkah Algoritma Rijndael

• AddRoundKey, melakukan XOR antara state awal (plainteks) dengan chiper key.

• Putaran sebanyak Nr-1– SubBytes adalah substitusi byte dengan menggunakan table substitusi

(S-Box).– ShiftRows adalah pergeseran baris-baris array state secara wrapping.– MixColumn adalah mengacak data di masing-masing kolom array

state.– KeySchedule membuat cipherkey.– AddRoundkey adalah melakukan Xor antara state dengan round key.

• Final Round– SubBytes– ShiftRows– AddRoundKey

Transformasi AddRoundKey [1],

• Melakukan XOR antara state awal (plainteks) dengan chiper key

Transformasi SubBytes [2.1]• Memetahkan setiap byte dari array state menggunakan table

Substitusi

Transformasi ShiftRows [2.2]

• Melakukan pergeseran secara wrapping pada 3 baris terakhir pada array state, jumlah pergeseran tergantung pada nilai baris.– Baris -1 : digeser 1 byte– Baris -2 : digeser 2 byte– Baris -3 : digeser 3 byte

Transformasi MixColumn [2.3]

• Transformasi ini di nyatakan dengan perkalian matrik

Kalau hasil perkalian lebih dari 256 (Desimal) maka di XOR dengan 11B (100011011)

Tranformasi KeySchedule [2.4]

• Array Key State di simpan dalam W1 Kolom terakhir dari Cipherkey [W1], state paling atas di pindah kebawah.

• Kemudian hasil-nya di subBytes memakai table S-Box.• Hasil dari Sub Bytes di XOR dengan kolom pertama dari state W1

dan hasilnya di XOR dengan table RCON kolom 1 dan di simpan dalam kolom ke-1 W2.

• kolom ke-2 W1 XOR dengan Kolom ke-1 W2• Kolom ke-3 W1 XOR dengan kolom ke-2 W2• Kolom ke-4 W1 XOR dengan kolom ke-3 W2

Transformasi AddRoundKey [2.5]

• Transformasi ini melakukan XOR terhadap sebuah round key baru dengan array state baru.

Contoh Soal

.

34288

0798306

3731543

0318832

ada

f

a

e

.

388616

415215

77

09282

ca

fd

cffaee

abb

Plaintex Cipherkey

Langkah 1 [AddRoundKey]

• Hasil dari Plaintext XOR Cipherkey

.

0822

4823

8643

99019

abbe

bdee

fcfd

eaa

Langkah 2 [subByte]

• Hasil dari AddRoundKey di Substitusi dengan table S-Box

.

3051

5259811

41427

1804

efae

d

bbf

ebed

Langkah 3 [shiftRows]

• Hasil dari subBytes kemudian di permutasi (lihat slide 18)

.

5130

9811525

27414

1804

efae

d

bbf

ebed

.

3051

5259811

41427

1804

efae

d

bbf

ebed

Langkah 4 [mixColumn]

• Hasil dari shiftRows kemudian di proses menggunakan formula (Slide 19)

.

4795

2631981

06866

2848004

caae

d

fcb

e

Langkah 5 [keySchedule]

.

0539117

76392

6354

223880

b

cfe

cafa

aa

Langkah 6 [AddRoundKey]

• Hasil antara MixColumn XOR KeySchedule

.

494322

50357

6599

028684

bf

eaf

abfc

ba