Dokumen tersebut membahas pengantar kriptografi yang mencakup konsep-konsep dasar seperti steganografi, kriptografi simetris menggunakan kunci privat, kriptografi asimetris menggunakan kunci publik, fungsi hash, dan contoh-contoh aplikasinya dalam mengamankan komunikasi dan otentikasi digital.
1. PENGANTAR
KRIPTOGRAFI
Introduction to Cryptography
www.indocisc.com
Pengamanan Security & Intelligence
Signal Security Signal Intelligence
Steganography Interception & Direction-
Traffic security (call sign Finding
changes, dummy msg, radio Traffic Analysis
silence)
Cryptanalysis
Cryptography
Electronic Intelligence
Electronic Security
Electronic
Emission security (shifting reconnaissance
radar freq.) (eavesdroping on radar
Counter - emission)
Countermeasures (looking Countermeasures
through jammed radar) (jamming, false radar echoes)
Source: David Kahn, The Code Breakers
FEB 2005 PENGANTAR KRIPTOGRAFI - INDOCISC 2
1
2. 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
3. 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
4. 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
5. 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
6. Kriptografi: Transposition
http://www.unmuseum.org/excoded.htm
Contoh transposition
asimplekin
Rail fence doftranspo
sitionciph
Simple transposition: erwritesth
ratadnem silutid nasep emessagein
toarectang
l a ki t r e v n a k mi ri ki d lebyrowsan
Spartan Scytale (5 BC) dreadsitou
tbycolumns
http://en.wikibooks.org/wiki/Cryptography:Transposition_ciphers
http://www.ccisource.com/content/resources/articles/Jan01/symmetric.htm
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
7. 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
8. 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
9. Kripto Kunci Privat
(secret key, symmetric cryptosystem)
Alice
Bob
Shared (secret) key
Encryption Decryption
Plaintext Ciphertext Plaintext
My phone Y$3*@ My phone
555-1234 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
10. Meledaknya Jumlah Kunci
n n * (n-1) / 2 n2/2 ≈
(jumlah orang) jumlah kunci
10 50
100 5000
1000 500.000
10.000 50.000.000
100.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 Public key
Certificate Authority (CA)
yek etavirP
Encryption Decryption
Plaintext Ciphertext Plaintext
My phone L)8*@Hg My phone
555-1234 555-1234
FEB 2005 PENGANTAR KRIPTOGRAFI - INDOCISC 20
10
11. 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
12. 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
13. Sertifikat Digital X.509 versi 3
Versi
Nomor Seri Sertifikat
Signature Algorithm Identifier (untuk signature dari CA)
Nama X.500 dari CA
l a ti gi D
Perioda validitas (mulai dan berakhirnya) er ut a n gi S
Nama X.500 dari Subjek Sertifikat t a u bi d
Informasi Kunci Publik milik Subjek
nagned
nak an uggne m
Agoritma yang digunakan icnuk
A C t a vi r p
Isi Kunci Publik
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
14. FEB 2005 PENGANTAR KRIPTOGRAFI - INDOCISC 27
Protokol SSL
1 Client Hello / Connection Request
Daftar algoritma / cipher suite
Pemilihan cipher suite
2 Sertifikat Digital Server
Encrypted secret / key / nonce
Client Server
Decrypted secret
3 Sertifikat Digital Client
Encrypted secret / key / nonce
Decrypted secret
4
Kunci simteris disepakati
Transfer data dengan enkripsi kunci simetris
FEB 2005 PENGANTAR KRIPTOGRAFI - INDOCISC 28
14
15. 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
16. 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
17. 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/cygwin-
b20/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 From: Budi
Subject: Kiriman Subject: Kiriman
Kiriman Kiriman
datang datang
Senin Senin
pagi pagi
ohx76@#
hsah af005c0810eeca2d5
)mirignep tavirp icnuk gd( ispirknE
ohx76@#
FEB 2005 PENGANTAR KRIPTOGRAFI - INDOCISC 34
17
18. Pada Penerima
Jika keduanya tidak sama,
patut dicurigai.
Integritas tidak terjamin.
From: Budi Jika keduanya sama, integritas
terjamin.
Subject: Kiriman Jika enkripsi menggunakan
public key cryptosystem,
pengirim tidak dapat menyangkal.
Kiriman
datang
Senin
pagi hash af005c0810eeca2d5
sama?
dekripsi
ohx76@# 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
19. 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
20. 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 & code-
breaking," 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