Pendahuluan
Kemajuan di bidang telekomunikasi dan
komputer telah memungkinkan seseorang untuk
melakukan transaksi bisnis secara cashless,
selain itu ia juga dapat mengirimkan informasi
kepada temannya secara on-line.
Kegiatan-kegiatan tersebut tentu saja akan
menimbulkan resiko bilamana informasi yang
sensitif dan berharga tersebut diakses oleh
orang-orang yang tidak berhak (unauthorized
persons). Misalnya, informasi mengenai nomor
kartu kredit anda, bila informasi ini jatuh kepada
orang-orang yang jahat maka anda harus
bersiap-siap terhadap melonjaknya tagihan
kartu kredit anda.
Sebelum tahun 1970-an, teknologi kriptografi
digunakan terbatas hanya untuk tujuan militer
dan diplomatik. Akan tetapi kemudian bidang
bisnis dan perorangan mulai menyadari
pentingnya melindungi informasi berharga.
Pengertian Dasar
Suatu pesan yang tidak disandikan disebut
sebagai plaintext ataupun dapat disebut juga
sebagai cleartext. Proses yang dilakukan untuk
mengubah plaintext ke dalam ciphertext disebut
encryption atau encipherment. Sedangkan
proses untuk mengubah ciphertext kembali ke
plaintext disebut decryption atau decipherment.
Secara sederhana istilah-istilah di atas dapat
digambarkan sebagai berikut :
(Proses Enkripsi)
(Proses Dekripsi)
Adaptive-chosen-plaintext attack.
Penyerangan tipe ini merupakan suatu
kasus khusus chosen-plaintext attack.
Cryptanalyst tidak hanya dapat memilih
plaintext yang dienkripsi, ia pun memiliki
kemampuan untuk memodifikasi pilihan
berdasarkan hasil enkripsi sebelumnya.
Dalam chosen-plaintext attack, cryptanalyst
mungkin hanya dapat memiliki plaintext
dalam suatu blok besar untuk dienkripsi;
dalam adaptive-chosen-plaintext attack ini ia
dapat memilih blok plaintext yang lebih kecil
dan kemudian memilih yang lain
berdasarkan hasil yang pertama, proses ini
dapat dilakukannya terus menerus hingga ia
dapat memperoleh seluruh informasi.
Chosen-ciphertext attack. Pada tipe ini,
cryptanalyst dapat memilih ciphertext yang
berbeda untuk didekripsi dan memiliki akses
atas plaintext yang didekripsi.
Chosen-key attack. Cryptanalyst pada tipe
penyerangan ini memiliki pengetahuan
tentang hubungan antara kunci-kunci yang
berbeda.
Rubber-hose cryptanalysis. Pada tipe
penyerangan ini, cryptanalyst mengancam,
memeras, atau bahkan memaksa seseorang
hingga mereka memberikan kuncinya.
Key-encripting Key
Kunci kriptografi yang digunakan untuk
mengenkripsi kunci lain, tetapi biasanya
tidak digunakan untu...
Cipher
Algoritma kriptografi (cryptographic
algorithm) berupa persamaan matematik
yang digunakan dalam pros...
RSA
Merupakan algoritma kriptografi untuk kunci
public (public key cryptography) yang umum
digunakan saa...
Cryptographers
Para pelaku atau praktisi kriptografi.
Digital Signature Algorithm
DSA adalah merupakan teknik kriptografi
yang berbasis kepada masalah matematika
yang disebut discret...
KRIPTOGRAFI
Sebelum melangkah lebih jauh untuk melakukan
analisis terhadap beberapa SPI yang ada, diperlukan
perangkat-perangkat untuk membantu proses analisis
tersebut. Salah satu dasar yang penting adalah
penggunaan kriptografi sebagai landasan-landasan
teoritis bagaimana sistem-sistem perdagangan di
Internet tersebut melakukan pengamanan.
dimana
M = pesan asli
E = proses enkripsi
C = pesan dalam bahasa sandi (untuk ringkasnya
disebut sandi)
Sedangkan dekripsi adalah proses mengubah pesan
dalam suatu bahasa sandi menjadi pesan asli kembali.
M = D (C)
D = proses dekripsi
Umumnya, selain menggunakan fungsi tertentu
dalam melakukan enkripsi dan dekripsi, seringkali
fungsi itu diberi parameter tambahan yang disebut
dengan istilah kunci.
Untuk memudahkan penggambaran suatu skenario
komunikasi dalam pembahasan selanjutnya, maka
dipergunakan nama-nama orang yang relevan dengan
peran yang dilakukannya dalam komunikasi itu.
Kode &
nama
Penjelasan
A: Anto
Pihak pertama
B: Badu
Pihak kedua
E: Edi
Pihak penyadap
informasi yang tidak
diperuntukkan
kepadanya
(eavesdropper)
Jaminan waktu
untuk menemukan
kunci
40-bit
0,4 detik
56-bit
7 jam
64-bit
74 jam 40 menit
128-bit
157.129.203.952.300.0
00 tahun
40-bit
15 hari
56-bit
2.691,49 tahun
64-bit
689.021,57 tahun
128-bit 12.710.204.652.610.000.000.000.
000 tahun
Tabel 3.3. Serangan brute-force pada RC4
Panjang Kunci Asimetris
Sedangkan pada sistem enkripsi kunci publik-privat,
yang memegang peranan dalam menjebol kunci
privat adalah kesulitan mencari faktor prima bilangan
yang sangat besar. Beberapa kunci yang
dipergunakan 10 tahun lalu saja kini sama sekali
tidak laik pakai seiring dengan perkembangan ilmu
pengetahuan dan teknologi.
f. Penyadap
Penyadap adalah orang yang berusaha mencoba
menangkap pesan selama ditransmisikan dengan
tujuan mendapatkan informasi sebanyak-banyaknya
mengenai sistem kriptografi yang digunakan untuk
berkomunikasi dengan maksud untuk memecahkan
cipherteks.
g. Kriptanalisis dan kriptologi
Kriptanalisis (cryptanalysis) adalah ilmu dan seni
untuk memecahkan cipherteks menjadi plainteks
tanpa mengetahui kunci yang digunakan. Pelakunya
disebut kriptanalis. Kriptologi adalah studi mengenai
kriptografi dan kriptanalisis.
Sejarah Kriptografi
Sejarah kriptografi sebagian besar merupakan sejarah
kriptografi klasik yaitu metode enkripsi yang
menggunakan kertas dan pensil atau mungkin dengan
bantuan alat mekanik sederhana. Secara umum
algoritma kriptografi klasik dikelompokkan menjadi
dua
kategori,
yaitu
algoritma
transposisi
(transposition cipher) dan algoritma substitusi
(substitution cipher). Cipher transposisi mengubah
susunan huruf-huruf di dalam pesan, sedangkan
cipher substitusi mengganti setiap huruf atau
1. 1 Latar belakang
Berkat perkembangan teknologi yang begitu
pesat memungkinkan manusia dapat berkomunikasi
dan saling bertukar informasi/data secara jarak jauh.
Antar kota antar wilayah antar negara bahkan antar
benua bukan merupakan suatu kendala lagi dalam
melakukan komunikasi dan pertukaran data. Seiring
dengan itu tuntutan akan sekuritas (keamanan)
terhadap
kerahasiaan
informasi
yang
saling
merupakan
algoritma
kriptografi
Dimana versi 1.0 pada bulan Juli 2000, versi 2.0 pada
September 2001 dan versi 2.1 pada Febuari 2002.
II
Kriptografi
2. 1 Dasar Kriptografi
2. 1. 1 Teori Kriptografi
Kriptografi adalah suatu ilmu yang mempelajari
bagaimana cara menjaga agar data atau pesan tetap
aman saat dikirimkan, dari pengirim ke penerima
tanpa mengalami gangguan dari pihak ketiga. Menurut
Bruce
Scheiner
dalam
bukunya
"Applied
dengan
kriptografi
klasik
yang
masyarakat
tanpa
takut
kehilangan
(M)
plaintext
enkripsi
dekripsi
ciphertext
plaintext
kunci enkripsi
kunci
dekripsi
Gambar 2.1 Diagram proses enkripsi dan dekripsi
Peranan kunci sangatlah penting dalam proses
enkripsi dan dekripsi (disamping pula algoritma yang
digunakan)
sehingga
kerahasiaannya
sangatlah
matematis,
proses
enkripsi
merupakan
enkripsi)
pada
(plaintext)
sehingga
Ee(M) C
Sedangkan
untuk
proses
dekripsi,
merupakan
algoritma
dimana
kunci
enkripsi
yang
ini
disebut
juga
sebagai
single-key
Plaintext
enkripsi
dekripsi
ciphertext
plaintext
kunci dekripsi
(K)
Gambar 2.2 Diagram proses enkripsi dan dekripsi
algoritma simetris
Sebelum melakukan pengiriman pesan, pengirim
dan penerima harus memilih suatu suatu kunci
tertentu yang sama untuk dipakai bersama, dan kunci
ini
haruslah
rahasia
bagi
pihak
yang
tidak
Plaintext
enkripsi
dekripsi
ciphertext
plaintext
kunci
dekripsi (K2)
Gambar 2.3 Diagram proses enkripsi dan
dekripsi algoritma asimetris
Pada umumnya kunci publik (public key)
digunakan sebagai kunci enkripsi sementara kunci
privat (private key) digunakan sebagai kunci dekripsi.
Kelebihan :
Masalah keamanan pada distribusi kunci dapat lebih
baik
Masalah manajemen kunci yang lebih baik karena
jumlah kunci yang lebih sedikit
Kelemahan :
Kecepatan yang lebih rendah bila dibandingkan
dengan algoritma simetris
Untuk tingkat keamanan sama, kunci yang
digunakan lebih panjang dibandingkan dengan
algoritma simetris.
Contoh algoritma : RSA, DSA, ElGamal
2. 1. 3 Block Cipher dan Stream Cipher
Jika kita melihat berdasarkan ukuran serta
format data yang akan diproses, maka algoritma
kriptografi dapat dibagi menjadi dua bagian yang
utama yaitu:
Sender
Receiver
P1
C1
C1
P1
P1
C1
C1
P1
P1
C1
C1
P1
Sender
Receiver
IV
IV
P1
C1
C1
P1
C1
C1
P1
P1
C1
P1
P1
lalu lintas tersebut dan tujuannya. Peraturanperaturan tersebut dapat menentukan metode-metode
autentikasi dan negosiasi, atribut proses tunneling,
dan jenis koneksi.
Untuk membuat sebuah sesi komunikasi yang aman
antara dua komputer dengan menggunakan IPSec,
maka dibutuhkan sebuah framework protokol yang
disebut dengan ISAKMP/Oakley. Framework
tersebut mencakup beberapa algoritma kriptografi
yang telah ditentukan sebelumnya, dan juga dapat
diperluas dengan menambahkan beberapa sistem
kriptografi tambahan yang dibuat oleh pihak ketiga.
Selama proses negosiasi dilakukan, persetujuan akan
tercapai dengan metode autentikasi dan kemanan
yang akan digunakan, dan protokol pun akan
membuat sebuah kunci yang dapat digunakan
bersama (shared key) yang nantinya digunakan
sebagi kunci enkripsi data. IPSec mendukung dua
buah sesi komunikasi keamanan, yakni sebagai
berikut:
1. b. FIPS 140.1
2. c. FIPS 140.2
3. d. NIST SP 800.22.v.1.8
4. e. die hard test
5. f. maurer's universal statistic test.
tidak dapat diramalkan
maksudnya,selain telah lulus uji statistik juga
unpredictable (tidak dapat diramalkan).secara
perhitungan akan sulit untuk menentukan atau
menduga bit bit selanjutnya yang akan muncul
dari rangkaian tersebut. selain itu rangkaian itu
haruslah tidak memberikan pengetahuan yang
lengkap tentang algoritma atu infrastruktur
hardware yang digunakan dalam pembangkitan
rangkaian seluruh bit bit sebelumnya dalam
rangkaian itu seniri
apabila menggunakan alat yang menghasilkan suatu
kunci, ia tidak pernah menghasilkan kunci yang
hampir sama atu sama persis dengan kunci yang
3. Mouse movement
4. Input yang diberikan user.
Data yang digunakan pada pembangkit software
sangat bervariasi dan bergantung pada banyak
faktor, seperti platform komputer. Namun sulit
untuk mencegah pihak-pihak yang tidak
berkepentingan untuk meneliti dan memanipulasi
data yang dihasilkan. Suatu software pembangkit
bit acak seharusnya menggunakan beberapa sumber
yang sifatnya acak yang dihasilkan pada sistem
komputer.
Pseudo random bit generator.
Pseudo random bit generator (PRNG) adalah
pembangkit rangkainbilangan pseurandom, diman
proses pembangkitan tiap elemen tergantung dari
formulasi matematis yang digunakan, dan ia
membutuhkan seed.
Seed yaitu input yang digunakan pada pseudo
random bit generator sedangkan outputnya
disebutpseudo random bit sequences (rangkaian bit
semi acak). seed berfungsi sebagai inputan pseudo
random bit generator, karena seed meupakan
inputan pembangkit kunci semi acak, maka
panjangnya disesuiaikan dengan algoritma
pseudorandom generator yang digunakan. Untuk
operasi.
menunjukkan perputaran bit kiri oleh s; s
bervariasi untuk tiap-tiap operasi.
menunjukan tambahan modulo 232. MD5
memproses variasi panjang pesan kedalam
keluaran 128-bit dengan panjang yang tetap.
Pesan masukan dipecah menjadi dua
gumpalan blok 512-bit; Pesan ditata sehingga
panjang pesan dapat dibagi 512. Penataan
bekerja sebagai berikut: bit tunggal pertama,
1, diletakkan pada akhir pedan. Proses ini
diikuti dengan serangkaian nol (0) yang
diperlukan agar panjang pesan lebih dari 64bit dan kurang dari kelipatan 512. Bit-bit sisa
diisi dengan 64-bit integer untuk menunjukkan
panjang pesan yang asli. Sebuah pesan selalu
ditata setidaknya dengan 1-bit tunggal, seperti
jika panjang pesan adalah kelipatan 512
dikurangi 64-bit untuk informasi panjang
(panjang mod(512) = 448), sebuah blok baru
dari 512-bit ditambahkan dengan 1-bit diikuti
dengan 447 bit-bit nol (0) diikuti dengan
panjang 64-bit.
s
8. Pranala luar
8. 1. Informasi MD5
(en)RFC 1321 Algoritma
Ringkasan-Pesan MD5
(en)Menggunakan MD5 untuk
memastikan integritas isi dari file
(en)Catatan Kriptoanalisis MD5
(en)Tanya-Jawab tentang
Kerusakan Hash
(en)Online MD5 crack - Rainbow
Tables + big hash database (md5,
md5(md5), sha1, mysql)
(fr)Online MD5 Reverser | Hash
cracker
(en)Pembobolan hash password
MD5 Online
(en)Pembobolan MD5 Online
8. 2. Implementasi
(en)situs tentang MD5 berisi
tentang berbagai macam
implementasi pada berbagai bahasa
pemrogaman
(en)Paj's Home: Cryptography
(Javascript MD4 dan MD5, plus
SHA-1)
8. 3. Kerusakan
(en)Kerusakan cepat yang
ditemukan oleh V. Klima
Kategori: Kriptografi
Bahasa lain: English, Bahasa Melayu,
Espaol, Deutsch, Franais, Italiano,
, , Portugus, ,
Polski, Lainnya...
Dari Wikipedia Indonesia. Seluruh teks
tersedia sesuai dengan Lisensi
Dokumentasi Bebas GNU.
"MD5" on the Wikipedia website
Versi terdahulu
Pembicaraan
Sunting
Halaman ini terakhir diubah pada 200904-10 23:36:36
Halaman Utama
Wapedia: For Wikipedia on mobile
phones
Algoritma Kriptografi
Jan.10, 2009 in Kriptografi
Algoritma kriptografi adalah algoritma yang
berfungsi untuk melakukan tujuan dari ilmu
kriptografi itu sendiri. Algoritma kriptografi terdiri
dari 2 bagian fungsi, yaitu :
1. ENKRIPSI (encryption), dan
2. DEKRIPSI (decryption).
Shannon mengatakan bahwan Algoritma kriptografi
harus memiliki kekuatan untuk melakukan konfusi
dan difusi.
menggunakan
metode
transposisi.
Jika
menggunakan difusi, akan dibutuka waktu ang
lebih lama untk emecakan sandi rahasia ini.
Sehingga dapat digunakan untuk mengamankan
informasi. Pada implementasinya sebuah algoritma
sandi harus memperhatikan kualitas layanan dari
keseluruhan sistem dimana dia diimplementasikan.
Algoritma sandi yang handal adalah algoritma sandi
yang kekuatannya terletak pada kunci, bukan pada
kerahasiaan algoritma itu sendiri. Teknik dan metode
untuk menguji kehandalan algoritma sandi adalah
kriptanalisa.
Secara umum berdasarkan kesamaan kuncinya,
algoritma sandi dibedakan menjadi :
Berdasarkan
menjadi :
kerahasiaan
kuncinya
dibedakan
Mengapa
algoritma
kriptografi
banyak
dipublikasikan ke masyarakat luas? Jika keseluruhan
keamanan algoritma tersebut tergantung kunci dan
tidak satupun didasarkan oleh detail algoritma, maka
algoritma tersebut dapat dipublikasikan oleh semua
orang agar dapat dianalisis dan di modifikasi oleh
semua orang.
Protokol Kriptografi
Protokol: aturan yang berisi rangkaian langkahlangkah, yang melibatkan dua atau lebih
orang, yang dibuat untuk menyelesaikan
suatu kegiatan.
Protokol kriptografi: protokol yang
menggunakan kriptografi.
Orang yang berpartisipasi dalam protokol
kriptografi memerlukan protokol tersebut
misalnya untuk:
- berbagi komponen rahasia untuk
menghitung sebuah nilai,
- membangkitkan rangkaian bilangan acak,
- meyakinkan identitas orang lainnya
(otentikasi),
- dll
Protokol 1:
(1) Alice dan Bob menyepakati algoritma
kriptografi simetri yang akan digunakan.
(2) Alice dan Bob menyepakati kunci yang akan
digunakan.
(3) Alice menulis pesan plainteks dan
mengenkripsinya dengan kunci menjadi
cipherteks.
(4) Alice mengirim pesan cipherteks kepada Bob.
(5) Bob mendekripsi pesan cipherteks dengan
kunci yang sama dan membaca plainteksnya.
Eve mendengar semua percakapan antara Alice
dan Bob pada protokol ini.
- jika Eve menyadap transmisi pesan pada
langkah (4), ia harus mencoba
mengkriptanalisis cipherteks untuk
memperoleh plainteks tanpa mengetahui
kunci.
- jika ia mendengar pembicaraan pada langkah
(1)dan (2), maka ia mengetahui algoritma dan
kunci yang digunakan, sehingga ia dapat
mendekripsi cipherteks dengan kunci tsb.
Menandatangani
Dokumen dengan Sistem Kriptografi Simetri
dan Seorang Juru Penengah.
Alice ingin menandatangani dokumen digital
(pesan atau arsip) dan mengirimkannya ke Bob.
Ia meminta Trent sebagai juru penengah
(misalnya pengacara) antara Alice dan Bob
(diperlukan jika sewaktu-waktu ada
pertengkaran antara Alice dan Bob). Trent akan
memberikan sidik berupa sertifikasi terhadap
dokumen yang dikirim oleh Alice. Sistem
kriptografi yang digunakan adalah simetri.
Trent memberikan kunci rahasia KA kepada
Alice dan kunci rahasia KB kepada Bob (KA dan
KB berbeda).
Protokol 5:
(1) Alice mengenkripsi dokumen dengan KA
dan mengirimkannya kepada Trent.
(2) Trent mendekripsi dokumen dari Alice
dengan KA.
(3) Trent menambahkan pada dokumen yang
sudah didekripsi sebuah pernyataan
sertifikasi bahwa dia telah menerima
dokumen itu dari Alice, kemudian
mengenkripsi keseluruhannya dengan KB.
(4) Trent mengirim cipherteks yang dihasilkan
kepada Bob.
(5) Bob mendekripsi cipherteks dengan KB. Ia
membaca dokumen dan sertifikasi dari
Trent bahwa Alice yang mengirimkan
dokumen tersebut.
3.
4.
Protokol 6 memiliki
karakteristik yang sama seperti pada protokol 5.
Protokol 10:
(1) Alice menandatangi dokumen atau pesan
(M) dengan menggunakan kunci rahasianya
(SK-A), mengenkripsikannya dengan kunci
publik Bob (PK-B) dan mengirimkannya
kepada Bob
EPK-B(SSK-A(M))
(2) Bob mendekripsi cipherteks yang diterima
dengan kunci rahasianya (SK-B),
memverifikasi sidik dijital dengan kunci
publik Alice dan sekaligus mendapatkan
kembali dokumen yang belum dienkripsi.
VPK-A(DSK-B(EPK-B(SSK-A(M)))) = M
(3) Bob menandatangani dokumen (M) dengan
kunci rahasianya (SK-B),
mengenkripsikannya dengan kunci publik
Alice (PK-A), dan mengirimkannya ke
Alice.
EPK-A(SSK-B(M))
(4) Alice mendekripsi dokumen dengan kunci
rahasianya (SK-A) dan memverifikasi sidik
dijital dengan kunci publik Bob (PK-B).
VPK-B(DSK-A(EPK-A(SSK-B(M)))) = M
Jika M yang dihasilkan sama dengan
dokumen yang dikirim oleh Alice (M), maka