PENGANTAR KRIPTOGRAFI Introduction to Cryptography www.indocisc.com Pengamanan Security & Intelligence Signal Security Steganography Traffic security (call sign changes, dummy msg, radio silence) Cryptography Electronic Security Emission security (shifting radar freq.) Counter - Countermeasures (looking through jammed radar) Signal Intelligence Interception & Direction- Finding Traffic Analysis Cryptanalysis Electronic Intelligence Electronic reconnaissance (eavesdroping on radar emission) Countermeasures (jamming, false radar echoes) Source: David Kahn, The Code Breakers FEB 2005 PENGANTAR KRIPTOGRAFI - INDOCISC 2 1
Keamanan Negara Kemampuan mengamankan data dan menangkap data merupakan kepentingan negara Privacy vs keamanan negara? Spy vs spy? FEB 2005 PENGANTAR KRIPTOGRAFI - INDOCISC 3 Penyadapan Internasional Sumber: IEEE Spectrum April 2003 FEB 2005 PENGANTAR KRIPTOGRAFI - INDOCISC 4 2
Sadap, Filter, Simpan Sumber: IEEE Spectrum April 2003 FEB 2005 PENGANTAR KRIPTOGRAFI - INDOCISC 5 Evolusi dari pengamanan data Steganography Membuat seolah-olah pesan tidak ada Film: Mercury rising, Beautiful mind Cryptography Transposition (letters arranged) Substitution (letters substituted with other letters) FEB 2005 PENGANTAR KRIPTOGRAFI - INDOCISC 6 3
Steganography Yunani (Greek) vs Persia Pesan disembunyikan di meja yang dilapisi lilin Histalaeus Pesan ditato di kepala budak yang telah digunduli Digital watermarking Menandai kepemilikan gambar digital FEB 2005 PENGANTAR KRIPTOGRAFI - INDOCISC 7 http://www.randomhouse.com/doubleday/davinci/ FEB 2005 PENGANTAR KRIPTOGRAFI - INDOCISC 8 4
Tugas Steganography Nur Alimah [serang hari senin] Setelah engkau rasakan nikmatnya gula, hisap aroma rokok ini sampai engkau nyaman ingin nambah. FEB 2005 PENGANTAR KRIPTOGRAFI - INDOCISC 9 Enkripsi penentu hidup mati Queen Mary dipancung Menggunakan cipher messages untuk mengirimkan berita kepada kelompok anti Queen Elizabeth Lawannya: Walsingham yang menggunakan Thomas Phelippes, seorang pakar pemecah kode FEB 2005 PENGANTAR KRIPTOGRAFI - INDOCISC 10 5
Kriptografi: Transposition Contoh transposition Rail fence Simple transposition: pesan ditulis mendatar dikirimkan vertikal Spartan Scytale (5 BC) asimplekin doftranspo sitionciph erwritesth emessagein toarectang lebyrowsan dreadsitou tbycolumns http://www.unmuseum.org/excoded.htm http://www.ccisource.com/content/resources/articles/jan01/symmetric.htm http://en.wikibooks.org/wiki/cryptography:transposition_ciphers FEB 2005 PENGANTAR KRIPTOGRAFI - INDOCISC 11 Kriptografi: Substitution Contoh substitution Caesar cipher (geser 3 huruf) A B C D E F G H I J K L M N O P Q R S T U V W X Y Z d e f g h i j k l m n o p q r s t u v w x y z a b c BUDI = exgl Tabel dapat digeser n huruf ke kiri atau ke kanan. n dan arah menjadi kunci Enigma (rotor) Digunakan Jerman pada perang dunia ke 2 FEB 2005 PENGANTAR KRIPTOGRAFI - INDOCISC 12 6
Enigma-E http://www.xat.nl/enigma-e/desc/index.htm FEB 2005 PENGANTAR KRIPTOGRAFI - INDOCISC 13 Komponen dari kriptografi Plain text Sumber berita/pesan/teks asli Cipher text Teks yang sudah diproses (diacak, digantikan) Algoritma & kunci Misal: subsitusi (algoritma) & number of shift (kunci) Pemisahan alg & kunci ditemukan oleh Auguste Kerckhoffs von Niewenhof (1883) FEB 2005 PENGANTAR KRIPTOGRAFI - INDOCISC 14 7
CRYPTOGRAPHY Private key cryptosystem (Sistem kripto kunci privat) Simetrik (kunci untuk mengunci dan membuka sama/satu) Public key cryptosystem (Sistem kripto kunci publik) Asimetrik (kunci untuk mengunci dan membuka berbeda) FEB 2005 PENGANTAR KRIPTOGRAFI - INDOCISC 15 PENGGUNAAN ENKRIPSI Mengamankan data dengan mengacak data sehingga sulit untuk dibaca Confidentiality Meyakinkan tidak ada perubahan data Integrity Memastikan identitas seseorang dengan digital signature Authentication FEB 2005 PENGANTAR KRIPTOGRAFI - INDOCISC 16 8
Kripto Kunci Privat (secret key, symmetric cryptosystem) Alice Shared (secret) key Bob Plaintext Encryption Ciphertext Decryption Plaintext My phone 555-1234 Y$3*@ My phone 555-1234 Eve FEB 2005 PENGANTAR KRIPTOGRAFI - INDOCISC 17 Kripto Kunci Privat Menggunakan satu kunci Masalah dalam distribusi kunci Pengiriman kunci membutuhkan saluran khusus Jumlah kunci meledak secara eksponensial: n (n-1)/2: (lihat ilustrasi / gambar di bawah) Keuntungan: operasi yang cepat Contoh: DES, IDEA, AES FEB 2005 PENGANTAR KRIPTOGRAFI - INDOCISC 18 9
Meledaknya Jumlah Kunci n (jumlah orang) 10 100 1000 10.000 100.000 n * (n-1) / 2 n 2 /2 jumlah kunci 50 5000 500.000 50.000.000 5.000.000.000 Jika 1 kunci memiliki ukuran 1 kbyte, maka untuk 100.000 orang dibutuhkan 5 TBytes untuk kunci saja FEB 2005 PENGANTAR KRIPTOGRAFI - INDOCISC 19 Kripto Kunci Publik Public key repository Certificate Authority (CA) Public key Private key Plaintext Encryption Ciphertext Decryption Plaintext My phone 555-1234 L)8*@Hg My phone 555-1234 FEB 2005 PENGANTAR KRIPTOGRAFI - INDOCISC 20 10
Kripto Kunci Publik Menggunakan kunci yang berbeda untuk enkripsi dan dekripsi Jumlah kunci yang lebih sedikit dibandingkan enkripsi dengan kunci privat Membutuhkan komputasi yang tinggi (membutuhkan waktu yang lebih lama) FEB 2005 PENGANTAR KRIPTOGRAFI - INDOCISC 21 Kripto Kunci Publik Membutuhkan penyimpanan kunci publik (Certificate Authority) yang terpercaya (trusted). Siapa? Verisign? Pengelolaan kunci bisa menjadi kompleks (revocation, pihak ketiga, dll.) Contoh: RSA, ECC FEB 2005 PENGANTAR KRIPTOGRAFI - INDOCISC 22 11
Penggunaan Kripto Kunci Publik Secure Socket Layer (SSL) HTTPS SSH STUNNEL Pretty Good Privacy (PGP) dan GNU Privacy Guard (GPG) FEB 2005 PENGANTAR KRIPTOGRAFI - INDOCISC 23 FEB 2005 PENGANTAR KRIPTOGRAFI - INDOCISC 24 12
Sertifikat Digital X.509 versi 3 Versi Nomor Seri Sertifikat Signature Algorithm Identifier (untuk signature dari CA) Nama X.500 dari CA Perioda validitas (mulai dan berakhirnya) Nama X.500 dari Subjek Sertifikat Informasi Kunci Publik milik Subjek Agoritma yang digunakan Isi Kunci Publik Digital Signature dibuat dengan menggunakan kunci privat CA Identifier Unik dari Penerbit (optional) Identifier Unik dari Subjek (optional) Extensions (optional) Digital Signature yang dibuat CA FEB 2005 PENGANTAR KRIPTOGRAFI - INDOCISC 25 Contoh Sertifikat FEB 2005 PENGANTAR KRIPTOGRAFI - INDOCISC 26 13
FEB 2005 PENGANTAR KRIPTOGRAFI - INDOCISC 27 Protokol SSL 1 Client Hello / Connection Request Daftar algoritma / cipher suite Pemilihan cipher suite Client 2 3 4 Sertifikat Digital Server Encrypted secret / key / nonce Decrypted secret Sertifikat Digital Client Encrypted secret / key / nonce Decrypted secret Kunci simteris disepakati Server Transfer data dengan enkripsi kunci simetris FEB 2005 PENGANTAR KRIPTOGRAFI - INDOCISC 28 14
Algoritma Kunci Privat Beberapa contoh algoritma XOR: mudah dipecahkan DES: sudah dianggap tidak bagus lagi FEB 2005 PENGANTAR KRIPTOGRAFI - INDOCISC 29 Substitusi: XOR data Data tersimpan dalam bentuk bilangan biner Data di-xor dengan sebuah kunci Tugas Membuat program yang melakukan proses XOR data dengan kunci FEB 2005 PENGANTAR KRIPTOGRAFI - INDOCISC 30 15
Message Digest Menghasilkan summary (digest) dari sebuah pesan (file, stream data) Menggunakan hash function untuk menghasilkan digest tersebut FEB 2005 PENGANTAR KRIPTOGRAFI - INDOCISC 31 Fungsi Hash (Hash Function) Merupakan fungsi satu arah (one way function) yang dapat menghasilkan ciri (signature) dari data (berkas, stream) Perubahan satu bit saja akan mengubah keluaran hash secara drastis Digunakan untuk menjamin integritas dan digital signature FEB 2005 PENGANTAR KRIPTOGRAFI - INDOCISC 32 16
Contoh Hash Function Contoh: MD4, MD5, SHA-1 unix$ md5sum /bin/login af005c0810eeca2d50f2904d87d9ba1c /bin/login Program md5sum untuk windows merupakan bagian dari Cygwin distribution yang dapat diperoleh dari http://sunsite.bilkent.edu.tr/pub/cygwin/cygwinb20/full.exe FEB 2005 PENGANTAR KRIPTOGRAFI - INDOCISC 33 Penggunaan Hash: Pengirim Isi email tidak dirahasiakan. Diinginkan terjaganya integritas dan non-repudiation Keduanya disatukan dan dikirimkan From: Budi Subject: Kiriman Kiriman datang Senin pagi From: Budi Subject: Kiriman Kiriman datang Senin pagi hash af005c0810eeca2d5 Enkripsi (dg kunci privat pengirim) ohx76@# ohx76@# FEB 2005 PENGANTAR KRIPTOGRAFI - INDOCISC 34 17
Pada Penerima From: Budi Subject: Kiriman Kiriman datang Senin pagi ohx76@# hash dekripsi Jika keduanya tidak sama, patut dicurigai. Integritas tidak terjamin. Jika keduanya sama, integritas terjamin. Jika enkripsi menggunakan public key cryptosystem, pengirim tidak dapat menyangkal. af005c0810eeca2d5 sama? af005c0810eeca2d5 FEB 2005 PENGANTAR KRIPTOGRAFI - INDOCISC 35 Contoh Penggunaan Hash Hasil hash dienkripsi untuk menjamin keamanannya (integritas) Ukuran hasil hash yang lebih kecil dibandingkan ukuran pesan asalnya membutuhkan waktu enkripsi yang lebih singkat (dibandingkan jika mengenkripsi seluruh pesan) Digital Signature Pesan juga dapat dienkripsi jika diinginkan kerahasiaan Contoh aplikasi lain: hash encrypted password FEB 2005 PENGANTAR KRIPTOGRAFI - INDOCISC 36 18
Permasalahan Hash Karena range (space) dari hasil hash lebih kecil (dalam jumlah bit) dari sumber informasinya, maka dimungkinkan adanya collision yaitu dua data dipetakan ke hash yang sama Ini sudah dibuktikan dengan pecahnya MD5 dan SHA-1 http://www.schneier.com/blog/archives/2005/02/cryptanalys is_o.html MD5 (1992) merupakan penyempurnaan dari MD4 (1990) SHA merupakan buatan NSA (1993) yang mirip dengan MD5 Meskipun dua data yang dipetakan itu tidak mudah dibuat dan kadang-kadang completely useless FEB 2005 PENGANTAR KRIPTOGRAFI - INDOCISC 37 Tugas Efek perubahan pada image Buat sebuah image (BMP, GIF, JPG) Ubah sedikit (1 pixel, beberapa pixels, rotate, crop, dll.) Lihat efeknya pada hash function Lakukan hal yang sama dengan berkas yang lain; MP3, AVI FEB 2005 PENGANTAR KRIPTOGRAFI - INDOCISC 38 19
Masalah Seputar Kripto Memastikan keamanan algoritma enkripsi Algoritma harus dievaluasi oleh pakar Algoritma yang tertutup (tidak dibuka kepada publik) dianggap tidak aman Membuat algoritma yang aman tidak mudah Code maker vs code breakers akan terus berlangsung FEB 2005 PENGANTAR KRIPTOGRAFI - INDOCISC 39 Bahan Bacaan Simon Singh, "Code Book: the secret history of codes & codebreaking," Fourth Estate, 1999. Bruce Schneier, "Applied Cryptography: protocols, algorithms, and source code in C," 2nd edition, John Wiley & Sons, Inc., 1996. Steven Levy, "crypto: how the code rebels beat the government - saving privacy in the digital age," penguin books, 2001 Alfred J. Menezes, Paul C. van Oorschot and Scott A. Vanstone, Handbook of Applied Cryptography http://www.cacr.math.uwaterloo.ca/hac/ Cryptography Research Crypto FAQ: http://www.cryptography.com/faq/index.html Basic Cryptanalysis http://www.umich.edu/~umich/fm-34-40-2/ FEB 2005 PENGANTAR KRIPTOGRAFI - INDOCISC 40 20