Kriptografi Modern (1) Levy Olivia Nur, MT.

Slides:



Advertisements
Presentasi serupa
Algoritma Kriptografi Modern (Bagian 1)
Advertisements

Serangan Terhadap Kriptografi
Algoritma Kriptografi Modern
Algoritma Kriptografi Modern (Bagian 2)
Advanced Encryption Standard (AES)
SERANGAN TERHADAP KRIPTOGRAFI
Algoritma Kriptografi Klasik
Sumber : Rinaldi Munir, ITB
KEAMANAN KOMPUTER ADITYO NUGROHO,ST
Data Encryption Standard (DES)
DEA (Data Encryption Algorithm)
Pengenalan Kriptografi (Week 1)
Advanced Encryption Standard (AES)
KRIPTOGRAFI Kriptografi adalah suatu ilmu yang mempelajari
Advanced Encryption Standard (AES)
Algoritma Kriptografi Modern (Bagian 1)
Advanced Encryption Standard (AES)
KRIPTOGRAFI.
Keamanan Komputer Kriptografi (2) -Aurelio Rahmadian-
Tipe dan Mode Algoritma Simetri (Bagian 3)
Serangan Terhadap Kriptografi
Bahan Kuliah IF3058 Kriptografi
Algoritma Kriptografi Modern
Sumber : Rinaldi Munir, ITB
Serangan Terhadap Kriptografi
Algoritma Kriptografi Modern
Algoritma Kriptografi Klasik. Pendahuluan 1. Cipher Substitusi.
Data Encryption Standard (DES)
Algoritma dan Struktur Data Lanjut
RSA (Rivest—Shamir—Adleman)
RSA ALGORITMA ASIMETRI Kriptografi – Week 11.
Algoritma Kriptografi Modern (Bagian 2)
Block Cipher Kriptografi.
Advanced Encryption Standard (AES)
Algoritma Kriptografi Modern
DES (Data Encryption Standard)
Data Encryption Standard (DES)
DEA (Data Encryption Algorithm)
KEAMANAN KOMPUTER ADITYO NUGROHO,ST
(Data Encryption Standard)
Kriptografi – Pertemuan 1 Pengenalan Kriptografi
Kriptografi Kunci-Publik
DEA (Data Encryption Algorithm)
Data Encryption Standard (DES)
Advanced Encryption Standard (AES)
ENKRIPSI KONVENSIONAL (2)
Kriptografi, Enkripsi dan Dekripsi
Algoritma Kriptografi Modern
Algoritma Kriptografi Modern
TEKNIK BLOCK CIPHER Kriptografi - Week 9 Aisyatul Karima, 2012.
Advanced Encryption Standard (AES)
TEKNIK BLOCK CIPHER Kriptografi - Week 9 Aisyatul Karima, 2012.
Tipe dan Mode Algoritma Simetri
ALGORITMA CRYPTOGRAPHY MODERN
Kustanto Sumber : Rinaldi Munir, ITB
Kriptografi Modern.
Algoritma Kriptografi Modern
ADVANCE ENCRYPTION STANDARD (AES)
Algoritma Kriptografi Klasik. Pendahuluan Algoritma kriptografi klasik berbasis karakter Menggunakan pena dan kertas saja, belum ada komputer Termasuk.
Pengenalan Kriptografi Modern
Algoritma Kriptografi Klasik
Contoh Algoritma Kriptografi Modern
Algoritma Kriptografi Modern (Bagian 2)
Contoh algoritma Penggunaan Kriptografi modern
Kriptografi Levy Olivia Nur, MT.
Algoritma Kriptografi Modern
Serangan Terhadap Kriptografi (Attacks Cryptography)
Pengenalan Kriptografi (Week 1)
Algoritma Kriptografi Klasik. Pendahuluan Algoritma kriptografi klasik berbasis karakter Menggunakan pena dan kertas saja, belum ada komputer Termasuk.
This presentation uses a free template provided by FPPT.com Studi Algoritma Enkripsi AES, DES dan RSA untuk Keamanan.
Transcript presentasi:

Kriptografi Modern (1) Levy Olivia Nur, MT

Algoritma Kriptografi Modern Beroperasi dalam mode bit (algoritma kriptografi klasik beroperasi dalam mode karakter) kunci, plainteks, cipherteks, diproses dalam rangkaian bit operasi bit xor paling banyak digunakan

Tetap menggunakan gagasan pada algoritma klasik: substitusi dan transposisi, tetapi lebih rumit (sangat sulit dipecahkan) Perkembangan algoritma kriptografi modern didorong oleh penggunaan komputer digital untuk keamanan pesan. Komputer digital merepresentasikan data dalam biner.

Algoritma Enkripsi dengan rangkaian bit Pesan (dalam bentuk rangkaian bit) dipecah menajdi beberapa blok Contoh: Plainteks 100111010110 Bila dibagi menjadi blok 4-bit   1001 1101 0110 maka setiap blok menyatakan 0 sampai 15:   9 13 6

Algoritma Enkripsi dengan rangkaian bit (2) Bila plainteks dibagi menjadi blok 3-bit:   100 111 010 110 maka setiap blok menyatakan 0 sampai 7:  4 7 2 6

Algoritma Enkripsi dengan rangkaian bit (3) Padding bits: bit-bit tambahan jika ukuran blok terakhir tidak mencukupi panjang blok Contoh: Plainteks 100111010110 Bila dibagi menjadi blok 5-bit: 10011 10101 00010 Padding bits mengakibatkan ukuran plainteks hasil dekripsi lebih besar daripada ukuran plainteks semula.

Representasi dalam Heksadesimal Pada beberapa algoritma kriptografi, pesan dinyatakan dalam kode Hex: 0000 = 0 0001 = 1 0010 = 2 0011 = 3 0100 = 4 0101 = 5 0011 = 6 0111 = 7 1000 = 8 1001 = 9 1010 = A 1011 = B 1100 = C 1101 = D 1110 = E 1111 = F Contoh: plainteks 100111010110 dibagi menjadi blok 4-bit:   1001 1101 0110 dalam notasi HEX adalah 9 D 6

Tabel ASCII

Operasi XOR Notasi:  Operasi: 0  0 = 0 0  1 = 1 0  0 = 0 0  1 = 1 1  0 = 1 1  1 = 0 Operasi XOR = penjumlahan modulo 2: 0  0 = 0  0 + 0 (mod 2) = 0 0  1 = 1  0 + 1 (mod 2) = 1 1  0 = 1  0 + 1 (mod 2) = 1 1  1 = 1  1 + 1 (mod 2) = 0

HUKUM OPERATOR XOR Hukum-hukum yang terkait dengan operator XOR:   (i) a  a = 0 (ii) a  b = b  a (iii) a  (b  c) = (a  b)  c

Operasi XOR Bitwise

Algoritma Enkripsi dengan XOR Enkripsi: C = P  K Dekripsi: P = C  K

Algoritma enkripsi XOR sederhana pada prinsipnya sama seperti Vigenere cipher dengan penggunaan kunci yang berulang secara periodik. Setiap bit plainteks di-XOR-kan dengan setiap bit kunci. Program komersil yang berbasis DOS atau Macintosh menggunakan algoritma XOR sederhana ini. Sayangnya, algoritma XOR sederhana tidak aman karena cipherteksnya mudah dipecahkan.

Contoh algoritma Kriptografi modern DES = Data Encryption Standard, adalah standar enkripsi standar. algoritma dikembangkan di IBM di bawah kepemimpinan W.L Tuchman (1972). AES = Advanced Encyption Standard, menggunakan algoritma kriptografi simetri berbasis chiper blok

RSA dibuat oleh 3 orang peneliti dari MIT pada tahun 1976 yaitu : Ron (R)ivest, Adi (S)hamir, Leonard (A)dleman Kriptografi dalam kehidupan sehari-hari: >>Smart Card >>ATM >>Cell-Phone

Serangan terhadap Kriptografi PENDAHULUAN Keseluruhan point dari kriptografi adalah menjaga kerahasiaan plainteks atau kunci (atau keduanya) dari penyadap (eavesdropper) atau kriptanalis (cryptanalyst). Kriptanalis berusaha memecahkan cipherteks dengan suatu serangan terhadap sistem kriptografi.

Serangan (attack) Serangan: setiap usaha (attempt) atau percobaan yang dilakukan oleh kriptanalis untuk menemukan kunci atau menemukan plainteks dari cipherteksnya. Asumsi: kriptanalis mengetahui algoritma kriptografi yang digunakan Prinsip Kerckhoff: Semua algoritma kriptografi harus publik; hanya kunci yang rahasia. Satu-satunya keamanan terletak pada kunci!

Jenis-jenis Serangan Berdasarkan keterlibatan penyerang dalam komunikasi 1. Serangan pasif (passive attack) - penyerang tidak terlibat dalam komunikasi antara pengirim dan penerima - penyerang hanya melakukan penyadapan untuk memperoleh data atau informasi sebanyak-banyaknya

Serangan Pasif …hyTRedcyld[pu6tjkbbjudplkjsdoye6hnw… Alice Bob Eve

Jenis-jenis Serangan (2) 2. Serangan Active (active attack) - penyerang mengintervensi komunikasi dan ikut mempengaruhi sistem untuk keuntungan dirinya - penyerang mengubah aliran pesan seperti: menghapus sebagian cipherteks, mengubah cipherteks, menyisipkan potongan cipherteks palsu, me-replay pesan lama, mengubah informasi yang tersimpan, dsb

Serangan Aktif Man-in-the-middle-attack - Serangan aktif yang berbahaya

Serangan Aktif (2)

Jenis-jenis Serangan Berdasarkan teknik yang digunakan untuk menemukan kunci: 1. Exhaustive attack /brute force attack Mengungkap plainteks/kunci dengan mencoba semua kemungkinan kunci. Pasti berhasil menemukan kunci jika tersedia waktu yang cukup

Solusi Solusi: Kriptografer harus membuat kunci yang panjang dan tidak mudah ditebak.

Jenis-jenis Serangan 2. Analytical attack Menganalisis kelemahan algoritma kriptografi untuk mengurangi kemungkinan kunci yang tidak mungkin ada. Caranya: memecahkan persamaan-persamaan matematika (yang diperoleh dari definisi suatu algoritma kriptografi) yang mengandung peubah-peubah yang merepresentasikan plainteks atau kunci.

Solusi (2) Metode analytical attack biasanya lebih cepat menemukan kunci dibandingkan dengan exhaustive attack. Solusi: kriptografer harus membuat algoritma kriptografi yang kompleks

Jenis Algoritma Kriptografi Algoritma Simetri a. Blok Chiper : DES, IDEA, AES b. Stream Chiper : OTP, A5 dan RC4 Algoritma Asimetri : RSA, DH, ECC, DSA Fungsi Hash : MD5, SHA1 Dalam presentasi ini menggunakan Algoritma AES, RSA dan MD5

DES (Data Encryption Standard) ALGORITMA SIMETRI : BLOK CHIPER

Sejarah Dikembangkan di IBM pada tahun 1972. Beradsarkan pada algoritma Lucifer yang dibuat oleh Horst Feistel. Disetujui oleh National Bureau of Standard (NBS) setelah penilaian kekuatannya oleh National Security Agency (NSA) Amerika Serikat.

Tinjauan Umum DES termasuk ke dalam sistem kriptografi simetri dan tergolong jenis cipher blok. DES beroperasi pada ukuran blok 64 bit. Panjang kunci ekternal = 64 bit (sesuai ukuran blok), tetapi hanya 56 bit yang dipakai (8 bit paritas tidak digunakan)

Pembangkitan Kunci Internal Kunci internal = kunci setiap putaran Ada 16 putaran, jadi ada 16 kunci internal: K1, K2, …, K16 Dibangkitkan dari kunci eksternal (64 bit) yang diberikan oleh pengguna. Gambar 9.2 memperlihatkan proses pembangkitan kunci internal.

Jadi, Ki merupakan penggabungan bit-bit Ci pada posisi:   14, 17, 11, 24, 1, 5, 3, 28, 15, 6, 21, 10 23, 19, 12, 4, 26, 8, 16, 7, 27, 20, 13, 2   dengan bit-bit Di pada posisi: 41, 52, 31, 37, 47, 55, 30, 40, 51, 45, 33, 48 44, 49, 39, 56, 34, 53, 46, 42, 50, 36, 29, 32 Setiap kunci internal Ki mempunyai panjang 48 bit.

Permutasi Awal Tujuan: mengacak plainteks sehingga urutan bit-bit di dalamnya berubah. Matriks permutasi awal (IP):

Enciphering Setiap blok plainteks mengalami 16 kali putaran enciphering . Setiap putaran enciphering merupakan jaringan Feistel:   Li = Ri – 1 Ri = Li – 1  f(Ri – 1, Ki)

Diagram komputasi fungsi f :

E adalah fungsi ekspansi yang memperluas blok Ri – 1 32-bit menjadi blok 48 bit. Fungsi ekspansi direalisasikan dengan matriks permutasi ekspansi:

Hasil ekpansi, yaitu E(Ri – 1) di-XOR-kan dengan Ki menghasilkan vektor A 48-bit:   E(Ri – 1)  Ki = A Vektor A dikelompokkan menjadi 8 kelompok, masing-masing 6 bit, dan menjadi masukan bagi proses substitusi. Ada 8 matriks substitusi, masing-masing dinyatakan dengan kotak-S. Kotak –S menerima masukan 6 bit dan memebrikan keluaran 4 bit.

Keluaran proses substitusi adalah vektor B yang panjangnya 48 bit. Vektor B menjadi masukan untuk proses permutasi. Tujuan permutasi adalah untuk mengacak hasil proses substitusi kotak-S. Permutasi dilakukan dengan menggunakan matriks permutasi P (P-box) sbb:

P(B) merupakan keluaran dari fungsi f. Bit-bit P(B) di-XOR-kan dengan Li – 1 menghasilkan Ri: Ri = Li – 1  P(B)  Jadi, keluaran dari putaran ke-i adalah (Li, Ri) = (Ri – 1 , Li – 1  P(B))

Inversi Permutasi (IP-1) Permutasi terakhir dilakukan setelah 16 kali putaran terhadap gabungan blok kiri dan blok kanan. Permutasi menggunakan matriks permutasi awal balikan (IP-1 ) sbb:

Dekripsi Dekripsi terhadap cipherteks merupakan kebalikan dari proses enkripsi. DES menggunakan algoritma yang sama untuk proses enkripsi dan dekripsi. Pada proses dekripsi urutan kunci yang digunakan adalah K16, K15, …, K1. Untuk tiap putaran 16, 15, …, 1, keluaran pada setiap putaran deciphering adalah   Li = Ri – 1 Ri = Li – 1  f(Ri – 1, Ki)

Mode DES DES dapat dioperasikan dengan mode ECB, CBC, OFB, dan CFB. Namun karena kesederhanaannya, mode ECB lebih sering digunakan pada paket komersil.

Implementasi DES DES sudah diimplementasikan dalam bentuk perangkat keras. Dalam bentuk perangkat keras, DES diimplementasikan di dalam chip. Setiap detik chip ini dapat mengenkripsikan 16,8 juta blok (atau 1 gigabit per detik). Implementasi DES ke dalam perangkat lunak dapat melakukan enkripsi 32.000 blok per detik (pada komputer mainframe IBM 3090).

Keamanan DES Keamanan DES ditentukan oleh kunci. Panjang kunci eksternal DES hanya 64 bit, tetapi yang dipakai hanya 56 bit. Pada rancangan awal, panjang kunci yang diusulkan IBM adalah 128 bit, tetapi atas permintaan NSA, panjang kunci diperkecil menjadi 56 bit. Tetapi, dengan panjang kunci 56 bit akan terdapat 256 atau 72.057.594.037.927.936 kemungkinan kunci. Jika serangan exhaustive key search dengan menggunakan prosesor paralel, maka dalam satu detik dapat dikerjakan satu juta serangan. Jadi seluruhnya diperlukan 1142 tahun untuk menemukan kunci yang benar.

Tahun 1998, Electronic Frontier Foundation (EFE) merancang dan membuat perangkat keras khusus untuk menemukan kunci DES secara exhaustive search key dengan biaya $250.000 dan diharapkan dapat menemukan kunci selama 5 hari. Tahun 1999, kombinasi perangkat keras EFE dengan kolaborasi internet yang melibatkan lebih dari 100.000 komputer dapat menemukan kunci DES kurang dari 1 hari.

Pengisian kotak-S DES masih menjadi misteri. Delapan putaran sudah cukup untuk membuat cipherteks sebagai fungsi acak dari setiap bit plainteks dan setiap bit cipherteks. Dari penelitian, DES dengan jumlah putaran yang kurang dari 16 ternyata dapat dipecahkan dengan known-plaintext attack.

DES Berganda Karena DES memepunyai potensi kelemahan pada brute force atack, maka dibuat varian dari DES. Varian DES yang paling luas digunakan adalah DES berganda (multiple DES). DES berganda adalah enkripsi berkali-kali dengan DES dan menggunakan kunci ganda.

Tinjau DES berganda: 1. Double DES 2. Triple DES

Double DES Menggunakan 2 buah kunci eksternal, K1 dan K2. Enkripsi: C = EK2(EK1(P)) Dekripsi: P = DK1(DK2(C))

Triple DES dengan 3 kunci

AES (Advanced Encryption Standard) ALGORITMA SIMETRI : BLOK CHIPER

AES (Advanced Encryption Standard) DES dianggap sudah tidak aman. Perlu diusulkan standard algoritma baru sebagai pengganti DES. National Institute of Standards and Technology (NIST) mengusulkan kepada Pemerintah Federal AS untuk sebuah standard kriptografi kriptografi yang baru. NIST mengadakan lomba membuat standard algoritma kriptografi yang baru. Standard tersebut kelak diberi nama Advanced Encryption Standard (AES).

AES (Advanced Encryption Standard) Pada bulan Oktober 2000, NIST mengumumkan untuk memilih Rijndael (dibaca: Rhine-doll) Pada bulan November 2001, Rijndael ditetapkan sebagai AES Diharapkan Rijndael menjadi standard kriptografi yang dominan paling sedikit selama 10 tahun.

AES (Advanced Encryption Standard) Tidak seperti DES yang berorientasi bit, Rijndael beroperasi dalam orientasi byte. Setiap putaran mengunakan kunci internal yang berbeda (disebut round key). Enciphering melibatkan operasi substitusi dan permutasi. Karena AES menetapkan panjang kunci adalah 128, 192, dan 256, maka dikenal AES-128, AES-192, dan AES-256

AES (Advanced Encryption Standard) Garis besar Algoritma Rijndael yang beroperasi pada blok 128-bit dengan kunci 128-bit adalah sebagai berikut (di luar proses pembangkitan round key): AddRoundKey: melakukan XOR antara state awal (plainteks) dengan cipher key. Tahap ini disebut juga initial round. Putaran sebanyak Nr – 1 kali. Proses yang dilakukan pada setiap putaran adalah: SubBytes: substitusi byte dengan menggunakan tabel substitusi (S-box). ShiftRows: pergeseran baris-baris array state secara wrapping. MixColumns: mengacak data di masing-masing kolom array state. AddRoundKey: melakukan XOR antara state sekarang round key. Final round: proses untuk putaran terakhir: SubBytes ShiftRows AddRoundKey

AES (Advanced Encryption Standard)

AES (Advanced Encryption Standard) Selama kalkulasi plainteks menjadi cipherteks, status sekarang dari data disimpan di dalam array of bytes dua dimensi, state, yang berukuran NROWS  NCOLS. Untuk blok data 128-bit, ukuran state adalah 4  4. Elemen array state diacu sebagai S[r,c], 0  r < 4 dan 0  c < Nb (Nb adalah panjang blok dibagi 32. Pada AES-128, Nb = 128/32 = 4)

AES (Advanced Encryption Standard) Contoh: (elemen state dan kunci dalam notasi HEX)