View
16
Download
0
Category
Preview:
Citation preview
TUGASKEAMANAN KOMPUTER DAN JARINGAN
KRIPTOGRAFI
Diajukan Untuk Memenuhi Tugas Mata Kuliah Keamanan Komputer Dan Jaringan
DISUSUN OLEH :DUDI NURAHMAT PERDINAN
D1A.06.042
E-mail : dudi_usb06@yahoo.comBlog: p3rd1nan2006.wordpress.com
UNIVERSITAS SUBANGJalan R.A. Kartini Km. 3 Telp. (0260) 411415 Fax. (0260) 415677
DESEMBER 2008
Pengenalan Kriptografi
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. Cryptography adalah suatu ilmu
ataupun seni mengamankan pesan, dan dilakukan oleh cryptographer. Sedang, cryptanalysis
adalah suatu ilmu dan seni membuka (breaking) ciphertext dan orang yang melakukannya
disebut cryptanalyst.
Cryptographic system atau cryptosystem adalah suatu fasilitas untuk mengkonversikan
plaintext ke ciphertext dan sebaliknya. Dalam sistem ini, seperangkat parameter yang
menentukan transformasi pencipheran tertentu disebut suatu set kunci. Proses enkripsi dan
dekripsi diatur oleh satu atau beberapa kunci kriptografi. Secara umum, kunci-kunci yang
digunakan untuk proses pengenkripsian dan pendekripsian tidak perlu identik, tergantung
pada sistem yang digunakan.
Secara umum operasi enkripsi dan dekripsi dapat diterangkan secara matematis sebagai
berikut :
EK (M) = C (Proses Enkripsi) DK (C) = M (Proses Dekripsi)
Pada saat proses enkripsi kita menyandikan pesan M dengan suatu kunci K lalu dihasilkan
pesan C. Sedangkan pada proses dekripsi, pesan C tersebut diuraikan dengan
menggunakan kunci K sehingga dihasilkan pesan M yang sama seperti pesan sebelumnya.
Dengan demikian keamanan suatu pesan tergantung pada kunci ataupun kunci-kunci yang
digunakan, dan tidak tergantung pada algoritma yang digunakan. Sehingga algoritma-
algoritma yang digunakan tersebut dapat dipublikasikan dan dianalisis, serta produk-produk
yang menggunakan algoritma tersebut dapat diproduksi massal. Tidaklah menjadi masalah
apabila seseorang mengetahui algoritma yang kita gunakan. Selama ia tidak mengetahui
kunci yang dipakai, ia tetap tidak dapat membaca pesan.
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 kelompok huruf dengan sebuah huruf atau kelompok
huruf lain. Kriptografi modern dipicu oleh perkembangan peralatan komputer digital. Tidak
seperti kriptografi klasik yang mengenkripsi karakter per karakter (dengan menggunakan
alfabet tradisionil), kriptografi modern beroperasi pada string biner. Kriptografi modern tidak
hanya memberikan aspek keamanan confidentially, tetapi juga aspek keamanan lain seperti
otentikasi, integritas data dan nirpenyangkalan.
Kriptografi Kunci Simetri dan Asimetri
Berdasarkan kunci yang digunakan untuk enkripsi dan dekripsi, kriptografi dapat dibedakan
lagi menjadi kriptografi kunci simetri dan kriptografi kunci asimetri. Pada sistem kriptografi
kunci simetri, kunci untuk enkripsi sama dengan kunci untuk dekripsi. Jika kunci untuk
enkripsi tidak sama dengan kunci untuk dekripsi, maka dinamakan sistem kriptografi asimetri.
Cryptographic system (cryptosystem)
Suatu cryptosystem terdiri dari sebuah algoritma, seluruh kemungkinan plaintext,
ciphertext dan kunci-kunci. Secara umum cryptosystem dapat digolongkan menjadi dua buah,
yaitu :
1. Symmetric Cryptosystem
Dalam symmetric cryptosystem ini, kunci yang digunakan untuk proses enkripsi dan
dekripsi pada prinsipnya identik, tetapi satu buah kunci dapat pula diturunkan dari kunci yang
lainnya. Kunci-kunci ini harus dirahasiakan. Oleh karena itulah sistem ini sering disebut
sebagai secret-key ciphersystem. Jumlah kunci yang dibutuhkan umumnya adalah :
nC2 = n . (n-1)
-------- 2
dengan n menyatakan banyaknya pengguna.
Contoh dari sistem ini adalah Data Encryption Standard (DES), Blowfish, IDEA.
2. Assymmetric Cryptosystem
Dalam assymmetric cryptosystem ini digunakan dua buah kunci. Satu kunci yang
disebut kunci publik (public key) dapat dipublikasikan, sedang kunci yang lain yang disebut
kunci privat (private key) harus dirahasiakan. Proses menggunakan sistem ini dapat
diterangkan secara sederhana sebagai berikut : bila A ingin mengirimkan pesan kepada B, A
dapat menyandikan pesannya dengan menggunakan kunci publik B, dan bila B ingin
membaca surat tersebut, ia perlu mendekripsikan surat itu dengan kunci privatnya. Dengan
demikian kedua belah pihak dapat menjamin asal surat serta keaslian surat tersebut, karena
adanya mekanisme ini. Contoh sistem ini antara lain RSA Scheme dan Merkle-Hellman
Scheme.
Setiap cryptosytem yang baik harus memiliki karakteristik sebagai berikut :
Keamanan sistem terletak pada kerahasiaan kunci dan bukan pada kerahasiaan
algoritma yang digunakan.
Cryptosystem yang baik memiliki ruang kunci (keyspace) yang besar. Cryptosystem yang baik akan menghasilkan ciphertext yang terlihat acak dalam
seluruh tes statistik yang dilakukan terhadapnya.
Cryptosystem yang baik mampu menahan seluruh serangan yang telah dikenal
sebelumnya
Namun demikian perlu diperhatikan bahwa bila suatu cryptosystem berhasil memenuhi
seluruh karateristik di atas belum tentu ia merupakan sistem yang baik. Banyak cryptosystem
lemah yang terlihat baik pada awalnya. Kadang kala untuk menunjukkan bahwa suatu
cryptosystem kuat atau baik dapat dilakukan dengan menggunakan pembuktian matematika.
Hingga saat ini masih banyak orang yang menggunakan cryptosystem yang relatif mudah
dibuka, alasannya adalah mereka tidak mengetahui sistem lain yang lebih baik serta kadang
kala terdapat motivasi yang kurang untuk menginvestasikan seluruh usaha yang diperlukan
untuk membuka suatu sistem.
Cryptographic Protokol
Pengertian
Suatu protokol adalah serangkaian langkah yang melibatkan dua pihak atau lebih dan
dirancang untuk menyelesaikan suatu tugas. Dari definisi ini dapat diambil beberapa arti
sebagai berikut :
protokol memiliki urutan dari awal hingga akhir;
setiap langkah harus dilaksanakan secara bergiliran;
suatu langkah tidak dapat dikerjakan bila langkah sebelumnya belum selesai;
diperlukan dua pihak atau lebih untuk melaksanakan protokol;
protokol harus mencapai suatu hasil;
Selain itu, suatu protokol pun memiliki karakteristik yang lain, yaitu : setiap orang yang terlibat dalam protokol harus mengetahui terlebih dahulu mengenai
protokol dan seluruh langkah yang akan dilaksanakan;
setiap orang yang terlibat dalam protokol harus menyetujui untuk mengikutinya;
protokol tidak boleh menimbulkan kerancuan;
protokol harus lengkap;
Cryptographic protocol adalah suatu protokol yang menggunakan kriptografi. Protokol ini
melibatkan sejumlah algoritma kriptografi, namun secara umum tujuan protokol lebih dari
sekedar kerahasiaan. Pihak-pihak yang berpartisipasi mungkin saja ingin membagi sebagian
rahasianya untuk menghitung sebuah nilai, menghasilkan urutan random, atau pun
menandatangani kontrak secara bersamaan. Penggunaan kriptografi dalam sebuah protokol
terutama ditujukan untuk mencegah atau pun mendeteksi adanya eavesdropping dan
cheating.
Fungsi Protokol
Dalam kehidupan kita sehari-hari terdapat banyak sekali protokol tidak resmi, misalnya saja
dalam permainan kartu, pemungutan suara dalam pemilihan umum. Akan tetapi tidak ada
seorang pun yang memikirkan mengenai protokol-protokol ini, protokol-protokol ini terus
berkembang, semua orang mengetahui bagaimana menggunakannya. Saat ini, semakin
banyak interaksi antar manusia dilakukan melalui jaringan komputer. Komputer ini tentu saja
memerlukan suatu protokol formal agar dapat melakukan hal yang biasa dilakukan manusia
tanpa berpikir. Bila kita berpindah dari satu daerah ke daerah lain dan mengetahui bahwa
kartu pemilihan suaranya berbeda dengan yang biasa kita gunakan, kita dapat beradaptasi
dengan mudah. Akan tetapi kemampuan ini belum dimiliki oleh komputer, sehingga
diperlukan suatu protokol.
Protokol digunakan untuk mengabtraksikan proses penyelesaian suatu tugas dari mekanisme
yang digunakan. Protokol komunikasi adalah sama meskipun diimplementasikan pada PC
atau VAX. Bila kita yakin bahwa kita memiliki protokol yang baik, kita dapat
mengimplementasikannya dalam segala benda mulai dari telepon hingga pemanggang roti
cerdas.
Penyerangan terhadap protokol
Penyerangan cryptographic dapat ditujukan pada beberapa hal berikut :
algoritma cryptographic yang digunakan dalam protokol; teknik cryptographic yang digunakan untuk mengimplementasikan algoritma dan
protokol;
protokol itu sendiri;
Seseorang dapat mencoba berbagai cara untuk menyerang suatu protokol. Mereka yang
tidak terlibat dalam protokol dapat menyadap sebagian atau seluruh protokol. Tindakan ini
disebut penyerangan pasif, karena si penyerang tidak mempengaruhi atau mengubah
protokol, ia hanya mengamati protokol dan berusaha untuk memperoleh informasi. Selain itu,
seorang penyerang dapat berusaha untuk mengubah protokol demi keuntungannya sendiri.
Ia dapat mengirimkan pesan dalam protokol, menghapus pesan, atau bahkan mengubah
informasi yang ada di dalam suatu komputer. Tindakan-tindakan ini disebut sebagai
penyerangan aktif, karena ia membutuhkan suatu campur tangan aktif. Seorang penyerang
tidaklah hanya berasal dari lingkungan luar protokol, namun ia mungkin juga berasal dari
dalam protokol itu sendiri, ia dapat merupakan salah satu pihak yang terlibat dalam protokol.
Tipe penyerang semacam ini disebut sebagai cheater. Passive cheater mengikuti protokol,
tetapi berusaha memperoleh informasi lebih banyak daripada yang diperbolehkan protokol
bagi dirinya. Active cheater mengubah protokol dalam usahanya untuk berbuat curang.
Usaha untuk menjaga keamanan protokol akan semakin sulit apabila pihak-pihak yang
terlibat umumnya merupakan active cheater, oleh karena itu suatu protokol yang baik harus
mampu atau pun harus aman terhadap kemungkinan passive cheating.
Berbagai macam basic cryptanalytic attacks
Tujuan cryptanalytic attack adalah untuk mengetahui beberapa plaintext yang sesuai
dengan ciphertext yang ada dan berusaha menentukan kunci yang memetakan satu dengan
yang lainnya. Plaintext ini dapat diketahui karena ia merupakan standar atau karena
pendugaan. Jika suatu teks diduga berada di dalam suatu pesan, posisinya mungkin tidak
diketahui, tetapi suatu pesan lazimnya cukup pendek sehingga memungkinkan cryptanalyst
menduga plaintext yang diketahui dalam setiap posisi yang mungkin dan melakukan
penyerangan pada setiap kasus secara paralel.
Suatu algoritma enkripsi yang kuat tidak hanya mampu bertahan terhadap serangan plaintext
yang dikenal tetapi juga mampu bertahan terhadap adaptive chosen plaintext. Dalam
penyerangan ini, cryptanalyst berkesempatan memilih plaintext yang digunakan dan dapat
melakukannya secara berulang kali, memilih plaintext untuk tahap N+1 setelah menganalisis
hasil tahap N.
Yang dimaksud cryptanalytic attacks adalah usaha-usaha yang dilakukan seseorang untuk
memperoleh informasi ataupun data yang telah dienkripsi. Secara ringkas terdapat tujuh
macam basic cryptanalytic attacks berdasarkan tingkat kesulitannya bagi penyerang, dimulai
dari yang paling sulit adalah :
Ciphertext-only attack. Dalam penyerangan ini, seorang cryptanalyst memiliki
ciphertext dari sejumlah pesan yang seluruhnya telah dienkripsi menggunakan
algoritma yang sama. Known-plaintext attack. Dalam tipe penyerangan ini, cryptanalyst memiliki akses tidak
hanya ke ciphertext sejumlah pesan, namun ia juga memiliki plaintext pesan-pesan
tersebut.
Chosen-plaintext attack. Pada penyerangan ini, cryptanalyst tidak hanya memiliki
akses atas ciphertext dan plaintext untuk beberapa pesan, tetapi ia juga dapat
memilih plaintext yang dienkripsi. 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.
Analisis berbagai tipe penyerangan secara matematis
Suatu penyerangan pasif atas cryptosystem adalah semua metode untuk mengungkapkan
informasi tentang plaintext dan ciphertextnya dengan tanpa mengetahui kunci. Secara
matematis :
Diberikan fungsi F, G, dan H yang terdiri dari n variabel.
Diberikan sistem enkripsi E.
Diberikan suatu distribusi plaintext dan kunci.
Suatu penyerangan atas E dengan menggunakan G dengan mengasumsikan F membagi H
dengan probabilitas p adalah suatu algoritma A dengan sepasang input f,g dan satu buah
output h sedemikian hingga terdapat probabilitas p atas h = H(P1, …, Pn), jika kita
memiliki f = F(P1, …, Pn) dan g = G(EK(P1), …, EK(Pn)). Perlu diperhatikan bahwa
probabilitas ini tergantung pada distribusi vektor-vektor (K,P1,…,Pn).
Penyerangan akan merupakan suatu trivial bila terdapat probabilitas paling sedikir p untuk h
= H(P1, …, Pn) jika f = F (P1,…,Pn) dan g = G (C1,…,Cn). Di sini C1,…,Cn terletak
pada ciphertext yang mungkin, dan tidak memiliki hubungan tertentu dengan P1,…,Pn.
Dengan kata lain, suatu serangan akan merupakan trivial bila ia tidak benar-benar
menggunakan enkripsi EK(P1),…,EK(Pn).
Dengan merumuskan penyerangan secara matematis, kita dapat secara tepat
memformulasikan dan bahkan membuktikan pernyataan bahwa suatu cryptosystem itu kuat.
Kita katakan, sebagai contoh, bahwa suatu cryptosystem adalah aman terhadap seluruh
penyerangan pasif jika sembarang penyerangan nontrivial terhadapnya tidak praktis. Jika kita
dapat membuktikan pernyataan ini maka kita akan memiliki keyakinan bahwa cryptosystem
kita akan bertahan terhadap seluruh teknik cryptanalytic pasif. Jika kita dapat mereduksi
pernyataan ini hingga pada beberapa masalah yang tidak terpecahkan maka kita masih tetap
memiliki keyakinan bahwa cryptosystem kita tidak mudah dibuka.
Ciphertext-only attack
Dengan menggunakan notasi di atas, suatu ciphertext-only attack adalah suatu penyerangan
dengan F adalah konstanta. Diberikan hanya beberapa informasi G(EK(P1),..EK(Pn)) tentang n
ciphertext, penyerangan harus memiliki kesempatan menghasilkan beberapa informasi H(P1,
…,Pn) tentang plaintext. Penyerangan akan merupakan suatu trivial bila ia hanya
menghasilkan H(P1,…,Pn) ketika diberikan G(C1,…,Cn) untuk C1,…,Cn acak.
Sebagai contoh, misalkan G ( C ) = C dan misalkan H(P) adalah bit pertama P. Kita dapat
secara mudah menulis suatu penyerangan, pendugaan, yang menduga bahwa H(P) adalah
1. Penyerangan ini adalah trivial karena tidak menggunakan ciphertext, probabilitas
keberhasilannya adalah 50 %. Di lain pihak, terdapat penyerangan atas RSA yang
memproduksi satu bit informasi tentang P, dengan probabilitas keberhasilan 100 %,
menggunakan C. Jika diberikan suatu C acak maka tingkat kesuksesan turun menjadi 50%.
Inilah yang disebut penyerangan nontrivial.
Known-plaintext attack
Penyerangan known-plaintext klasik memiliki F(P1,P2) = P1, G(C1,C2) = (C1,C2), dan H(P1,P2)
tergantung hanya pada P2. Dengan kata lain, bila diberikan dua ciphertext C1 dan C2 dan satu
dekripsi P1, penyerangan known-plaintext seharusnya menghasilkan informasi tentang
dekripsi P2.
Brute-force attack
Umpamakan penyerangan known-plaintext berikut. Kita diberikan sejumlah plaintext P1,…,Pn-1
dan ciphertext C1,…,Cn-1. Kita juga diberikan sebuah ciphertext Cn. Kita jalankan seluruh
kunci K. Bila kita temukan K sedemikian sehingga EK(P1) = Ci untuk setiap I<n, kita cetak
DK(Cn). Jika n cukup besar sehingga hanya satu kunci yang bekerja, penyerangan ini akan
sukses untuk seluruh input yang valid pada setiap waktu, sementara ia akan menghasilkan
hasil yang tepat hanya sekali untuk input acak. Penyerangan ini adalah nontrivial,
masalahnya ia sangat lambat bila terdapat banyak kemungkinan kunci.
Hash Function
Fungsi satu arah untuk menghasilkan fingerprint, dilakukan untuk pengujian terhadap
keintegritasan data, dengan hash pesan menjadi fingerprint untuk dikirim ke penerima dan
penerima melakukan checksum.implementasinya menggunakan MD5SUM
kalo di linux lakukan peritah
#/usr/bin/md5sum -t nama-file
File Teks--------------------->Proses Hashing------------------->1234aaa
Fingerprint
BERBAGAI SOLUSI ENKRIPSI MODERN
Data Encryption Standard (DES)
DES dikembangkan oleh Hort Feiitel bekerja di IBM resmi dipakai oleh pemerintah
Amerika Serikat pada 1977, DES merupakan algoritma kriptografi simetris yang
umum digunakan saat ini, enkripsi pada unix juga menggunakan DES, DES
merupakan block cipher yang beroperasi dengan blok berukuran 64-bit dan kata
kunci berukuran 56-bit, maka bila dilakukan brute force membutuhkan 70 juta milyar
kombinasi diperoleh dari 256, DES dengan panjang kunci 56 bit dianggap tidak
aman, karena sudah berhasil dipecahkan dengan metode brute force oleh
EFF(electronic frontier foundation)selama 5 hari. Michael wierner dengan chip yang
ditemukannya pada 1995, mampu menemukan kunci DES 56 bit hanya dalam waktu
7 jam,tetapi meskipun canggih chip tersebut membutuhkan waktu kira-kira
157.129.203.952.300.000 hari untuk menemukan kunci DES 128 bit. DES (Data
Encryption Standard) merupakan metoda yang pertama kali digunakan dalam
penyimpanan password, metoda ini sudah tidak biasa digunakan lagi, karena dengan
mesin-mesin modern akan didapat kecepatan cracking yang tinggi, sekitar 800.000
lebih kombinasi password per detik pada komputer dengan prosessor Pentium 4 - 2,4
GHz, sehingga bila menggunakan metoda ini password akan relatif lebih mudah di-
crack. DES merupakan standar bagi USA Government, didukung ANSI dan IETF,
popular untuk metode secret key, terdiri dari : 40-bit, 56-bit dan 3×56-bit (Triple DES)
Advanced Encryption Standard (AES)
Advanced Encryption Standard (AES) merupakan pemilihan standard
enkripsi yang diselenggarakan oleh NIST (National Institute of Standards and
Technology) untuk menggantikan standard sebelumnya yaitu Data Encryption
Standard (DES). Advanced Encryption Standard (AES) menggantikan DES
(launching akhir 2001), menggunakan variable length block chipper, key length : 128-
bit, 192-bit, 256-bit, dapat diterapkan untuk smart card. Pada algoritma AES, data
input atau Plaintext diproses melalui serangkaian transformasi, disebut Chiper, yang
terdiri dari transformasi SubBytes, ShiftRows, MixColumns dan AddRoundKey,
dengan menggunakan kunci kriptogenik rahasia yaitu Cipher Key. Data yang
dihasilkan cipher disebut Ciphertext dan akan diproses untuk dikonversikan kembali
menjadi plaintext melalui serangkaian transformasi, disebut Inverse Cipher, yang
terdiri dari tansformasi InvShiftRows, InvSubBytes, AddRoundKey dan
InvMixColumns, dengan menggunakan cipher key.
Digital Certificate Server (DCS)
Merupakan verifikasi untuk digital signature, autentikasi user, menggunakan public
dan private key, contoh : Netscape Certificate Server
IP Security (IPSec)
adalah sebuah protokol yang digunakan untuk mengamankan transmisi datagram
dalam sebuah internetwork berbasis TCP/IP. IPSec mendefiniskan beberapa standar
untuk melakukan enkripsi data dan juga integritas data pada lapisan kedua dalam
DARPA Reference Model (internetwork layer). IPSec melakukan enkripsi terhadap
data pada lapisan yang sama dengan protokol IP dan menggunakan teknik tunneling
untuk mengirimkan informasi melalui jaringan Internet atau dalam jaringan Intranet
secara aman. IPSec didefinisikan oleh badan Internet Engineering Task Force (IETF)
dan diimplementasikan di dalam banyak sistem operasi. Windows 2000 adalah
sistem operasi pertama dari Microsoft yang mendukung IPSec. 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:
protokol Authentication Header (AH): menawarkan autentikasi pengguna dan
perlindungan dari beberapa serangan (umumnya serangan man in the middle), dan
juga menyediakan fungsi autentikasi terhadap data serta integritas terhadap data.
Protokol ini mengizinkan penerima untuk merasa yakin bahwa identitas si pengirim
adalah benar adanya.
← protokol Encapsulating Security Payload (ESP): Protokol ini melakukan
enkapsulasi serta enkripsi terhadap data pengguna untuk meningkatkan kerahasiaan
data. ESP juga dapat memiliki skema autentikasi dan perlindungan dari beberapa
serangan dan dapat digunakan secara sendirian atau bersamaan dengan
Authentication Header. Sama seperti halnya AH, informasi mengenai ESP juga
dimasukkan ke dalam header paket IP yang dikirimkan.
Kelebihan IPsec:
1. IPsec dapat melindungi protokol apa pun yang berjalan di atas IP dan pada
medium apa pun yang dapat digunakan IP, sehingga IPsec merupakan suatu
metode umum yang dapat menyediakan keamanan komunikasi melalui jaringan
komputer.
2. IPsec menyediakan keamanan secara transparan, sehingga dari sisi aplikasi,
user tidak perlu menyadari keberadaannya.
3. IPsec dirancang untuk memenuhi standar baru IPv6 tanpa melupakan IPv4 yang
sekarang digunakan.
4. Perancangan IPsec tidak mengharuskan penggunaan algoritma enkripsi atau
hash tertentu sehingga jika algoritma yang sering digunakan sekarang telah
dipecahkan, fungsinya dapat diganti dengan algoritma lain yang lebih sulit
dipecahkan
Kelemahan IPsec:
1. IPsec terlalu kompleks, penyediaan beberapa fitur tambahan dengan menambah
kompleksitas yang tidak perlu.
2. Beberapa dokumentasinya masih mengandung beberapa kesalahan, tidak
menjelaskan beberapa penjelasan esensial, dan ambigu.
3. Beberapa algoritma default yang digunakan dalam IPsec telah dapat
dipecahkan/dianggap tidak aman (misalnya DES yang dianggap
4. tidak aman dan MD5 yang telah mulai berhasil diserang 3)). Algoritma
penggantinya telah tersedia dan administrator sistem sendiri yang harus
memastikan bahwa mereka menggunakan algoritma lain untuk mendapatkan
keamanan yang lebih tinggi
Kerberos
Dalam keamanan komputer, merujuk kepada sebuah protokol autentikasi yang
dikembangkan oleh Massachusetts Institute of Technology (MIT).
Point to point Tunneling Protocol(PPTP), Layer Two Tunneling Protocol (L2TP)
Point-to-Point TunnelingProtocol merupakan teknologi jaringan baru yang
mendukung multiprotocol Virtual Private Networks (VPN), yang memungkinkan
pengguna untuk mengakses jaringan perusahaan secara lebih aman melalui Internet.
Dengan menggunakan PPTP, pengguna dari jarak jauh dapat memanfaatkan
Microsoft Windows NT Worstation dan Windows 95 dan sistem yang mendukung
PPP lainnya untuk mendial ke ISP lokal untuk berkoneksi secara lebih aman kedalam
jaringan perusahaan melalui Internet. PPTP memungkinkan koneksi yang aman dan
terpercaya kepada jaringan perusahaan melalui internet. Hal ini sangat berguna
untuk pegawai yang bekerja dari rumah atau orang-orang yang bepergian dan harus
mengakses jaringan perusahaannya dari jarak jauh atau mengecek email atau
melakukan aktifitas lainnya.
Remote Access Dial-in User Service (RADIUS)
Adalah sebuah protokol keamanan komputer yang digunakan untuk melakukan
autentikasi, otorisasi, dan pendaftaran akun pengguna secara terpusat untuk
mengakses jaringan. RADIUS didefinisikan di dalam RFC 2865 dan RFC 2866, yang
pada awalnya digunakan untuk melakukan autentikasi terhadap akses jaringan
secara jarak jauh dengan menggunakan koneksi dial-up. RADIUS, kini telah
diimplementasikan untuk melakukan autentikasi terhadap akses jaringan secara jarak
jauh dengan menggunakan koneksi selain dial-up, seperti halnya Virtual Private
Networking (VPN), access point nirkabel, switch Ethernet, dan perangkat
lainnya.Radius banyak dipakai oleh Provider dan ISP internet untuk authentikasi dan
billingnya. Radius juga bisa dipakai oleh jaringan RT/RW-Net untuk authentikasi para
penggunanya dan untuk mengamankan jaringan RT/RW-Net yang ada.
Secure Hash Algoritm (SHA)
1. dirancang oleh National Institute of Standard and Technology (NIST) USA.
2. bagian dari standar DSS(Decision Support System) USA dan bekerja sama
dengan DES untuk digital signature.
3. SHA-1 menyediakan 160-bit message digest.
4. Versi : SHA-256, SHA-384, SHA-512 (terintegrasi dengan AES).
RSA Encryption
RSA di bidang kriptografi adalah sebuah algoritma pada enkripsi public key. RSA
merupakan algoritma pertama yang cocok untuk digital signature seperti halnya
ekripsi, dan salah satu yang paling maju dalam bidang kriptografi public key. RSA
masih digunakan secara luas dalam protokol electronic commerce, dan dipercaya
dalam mengamnkan dengan menggunakan kunci yang cukup panjang. Ditemukan
oleh tiga orang yaitu Ron Rivest, Adi Shamir, dan Leonard Adleman yang kemudian
disingkat menjadi RSA.Termasuk algritma asimetri karena mempunyai dua kunci,
yaitu kunci publik dan kunci privat. Algoritma kunci-publik yang paling terkenal dan
paling banyak aplikasinya. Ditemukan oleh tiga peneliti dari MIT (Massachussets
Institute of Technology), yaitu Ron Rivest, Adi Shamir, dan Len Adleman, pada tahun
1976. Keamanan algoritma RSA terletak pada sulitnya memfaktorkan bilangan yang
besar menjadi faktor-faktor prima.
Pembangkitan pasangan kunci
1. Pilih dua bilangan prima, a dan b (rahasia)
2. Hitung n = a b. Besaran n tidak perlu dirahasiakan.
3. Hitung f(n) = (a – 1)(b – 1).
4. Pilih sebuah bilangan bulat untuk kunci publik, sebut namanya e, yang relatif
prima terhadap f(n) .
5. Hitung kunci dekripsi, d, melalui ed º 1 (mod m) atau d º e-1 mod (f(n) )
Hasil dari algoritma di atas:
- Kunci publik adalah pasangan (e, n)
- Kunci privat adalah pasangan (d, n)
Catatan: n tidak bersifat rahasia, namun ia diperlukan pada perhitungan enkripsi/dekripsi
Sejarah RSA
Algortima RSA dijabarkan pada tahun 1977 oleh tiga orang : Ron Rivest, Adi Shamir
dan Len Adleman dari Massachusetts Institute of Technology. Huruf RSA itu sendiri
berasal dari inisial nama mereka (Rivest—Shamir—Adleman). Clifford Cocks,
seorang matematikawan Inggris yang bekerja untuk GCHQ, menjabarkan tentang
sistem equivalen pada dokumen internal di tahun 1973. Penemuan Clifford Cocks
tidak terungkap hingga tahun 1997 karena alasan top-secret classification. Algoritma
tersebut dipatenkan oleh Massachusetts Institute of Technology pada tahun 1983 di
Amerika Serikat sebagai U.S. Patent 4405829. Paten tersebut berlaku hingga 21
September 2000. Semenjak Algoritma RSA dipublikasikan sebagai aplikasi paten,
regulasi di sebagian besar negara-negara lain tidak memungkinkan penggunaan
paten. Hal ini menyebabkan hasil temuan Clifford Cocks di kenal secara umum,
paten di Amerika Serikat tidak dapat mematenkannya.
MD5
MD5 adalah salah satu dari serangkaian algortima message digest yang didesain
oleh Profesor Ronald Rivest dari MIT (Rivest, 1994). Saat kerja analitik menunjukkan
bahwa pendahulu MD5 — MD4 — mulai tidak aman, MD5 kemudian didesain pada
tahun 1991 sebagai pengganti dari MD4 (kelemahan MD4 ditemukan oleh Hans
Dobbertin).Pada tahun 1993, den Boer dan Bosselaers memberikan awal, bahkan
terbatas, hasil dari penemuan pseudo-collision dari fungsi kompresi MD5. Dua vektor
inisialisasi berbeda I dan J dengan beda 4-bit diantara keduanya.
MD5compress(I,X) = MD5compress(J,X)
Pada tahun 1996 Dobbertin mengumumkan sebuah kerusakan pada fungsi kompresi
MD5. Dikarenakan hal ini bukanlah serangan terhadap fungsi hash MD5
sepenuhnya, hal ini menyebabkan para pengguna kriptografi menganjurkan
pengganti seperti WHIRLPOOL, SHA-1 atau RIPEMD-160.
Ukuran dari hash — 128-bit — cukup kecil untuk terjadinya serangan brute force
birthday attack. MD5CRK adalah proyek distribusi mulai Maret 2004 dengan tujuan
untuk menunjukka kelemahan dari MD5 dengan menemukan kerusakan kompresi
menggunakan brute force attack.Bagaimanapun juga, MD5CRK berhenti pada
tanggal 17 Agustus 2004, saat [[kerusakan hash]] pada MD5 diumumkan oleh
Xiaoyun Wang, Dengguo Feng, Xuejia Lai dan Hongbo Yu [1] [2] . Serangan analitik
mereka dikabarkan hanya memerlukan satu jam dengan menggunakan IBM P690
cluster.
Pada tanggal 1 Maret 2005, Arjen Lenstra, Xiaoyun Wang, and Benne de Weger
mendemontrasikan[3] kunstruksi dari dua buah sertifikat X.509 dengan public key
yang berbeda dan hash MD5 yang sama, hasil dari demontrasi menunjukkan adanya
kerusakan. Konstruksi tersebut melibatkan private key untuk kedua public key
tersebut. Dan beberapa hari setelahnya, Vlastimil Klima menjabarkan[4] dan
mengembangkan algortima, mampu membuat kerusakan Md5 dalam beberapa jam
dengan menggunakan sebuah komputer notebook. Hal ini menyebabkan MD5 tidak
bebas dari kerusakan.Dikarenakan MD5 hanya menggunakan satu langkah pada
data, jika dua buah awalan dengan hash yang sama dapat dibangun, sebuah akhiran
yang umum dapat ditambahkan pada keduanya untuk membuat kerusakan lebih
masuk akal. Dan dikarenakan teknik penemuan kerusakan mengijinkan pendahuluan
kondisi hash menjadi arbitari tertentu, sebuah kerusakan dapat ditemukan dengan
awalan apapun. Proses tersebut memerlukan pembangkitan dua buah file perusak
sebagai file templat, dengan menggunakan blok 128-byte dari tatanan data pada 64-
byte batasan, file-file tersebut dapat mengubah dengan bebas dengan menggunakan
algoritma penemuan kerusakan.
Secure Shell (SSH)
Digunakan untuk client side authentication antara 2 sistem, mendukung UNIX,
windows, OS/2, melindungi telnet dan ftp (file transfer protocol ).
Secure Socket Layer (SSL)
Secure Socket Layer (SSL) dan Transport Layer Security (TLS), merupakan
kelanjutan dari protokol kriptografi yang menyediakan komunikasi yang aman di
Internet.
Security Token
Token merupakan istilah bahasa asing untuk tanda. Security Token adalah tanda
keamanan yang diberikan oleh sebuah perusahaan untuk menjaga keamanan
datanya. Biasanya perusahaan yang menggunakan Security Token adalah bank.
Untuk memberikan keyamanan bagi nasabah, banyak pihak perbankan
mengembangkan layanan-layanan yang memanfaatkan teknologi informasi dan
komunikasi. Layanan-layanan tersebut adalah SMS Banking, Phone Banking dan
Internet banking. Salah satu faktor penting pihak perbankan dalam memberikann
layanan-layanan ini ada jaminan terhadap seluruh transaksi yang dilakukan agar
tidak terjadi seperti yang dialami oleh salah satu bank swasta di tahun 2001 lalu
dimana situs plesetannya muncul dan menangkap PIN penggunanya walaupun tidak
disalahgunakan oleh pelakunya, namun hal ini telah menunjukan bahwa security
harus merupakan faktor penting yang perlu diperhatikan selain tambahan fitur bagi
kenyaman pengguna.
APLIKASI ENKRIPSI
Jasa telekomunikasi
Militer dan pemerintahan
Data Perbankan
Data konfidensial perusahaan
Pengamanan electronic mail
Kartu Plastik
KESIMPULAN
Dari sekian banyak model enkripsi, dapat disimpulkan sebagai berikut :
1. Data Encryption Standard (DES)
standar bagi USA Government
didukung ANSI dan IETF
popular untuk metode secret key
terdiri dari : 40-bit, 56-bit dan 3x56-bit (Triple DES)
2. Advanced Encryption Standard (AES)
untuk menggantikan DES (launching akhir 2001)
menggunakan variable length block chipper
key length : 128-bit, 192-bit, 256-bit
dapat diterapkan untuk smart card.
3. Digital Certificate Server (DCS)
verifikasi untuk digital signature
autentikasi user
menggunakan public dan private key
contoh : Netscape Certificate Server
4. IP Security (IPSec)
enkripsi public/private key
dirancang oleh CISCO System
menggunakan DES 40-bit dan authentication
built-in pada produk CISCO
solusi tepat untuk Virtual Private Network (VPN) dan Remote Network
Access
5. Kerberos
solusi untuk user authentication
dapat menangani multiple platform/system
free charge (open source)
IBM menyediakan versi komersial : Global Sign On (GSO)
6. Point to point Tunneling Protocol(PPTP), Layer Two Tunneling Protocol (L2TP)
dirancang oleh Microsoft
autentication berdasarkan PPP(Point to point protocol)
enkripsi berdasarkan algoritm Microsoft (tidak terbuka)
terintegrasi dengan NOS Microsoft (NT, 2000, XP)
7. Remote Access Dial-in User Service (RADIUS)
multiple remote access device menggunakan 1 database untuk
authentication
didukung oleh 3com, CISCO, Ascend
tidak menggunakan encryption
8. RSA Encryption
dirancang oleh Rivest, Shamir, Adleman tahun 1977
standar de facto dalam enkripsi public/private key
didukung oleh Microsoft, apple, novell, sun, lotus
mendukung proses authentication
multi platform
9. Secure Hash Algoritm (SHA)
dirancang oleh National Institute of Standard and Technology (NIST)
USA.
bagian dari standar DSS(Decision Support System) USA dan bekerja
sama dengan DES untuk digital signature.
SHA-1 menyediakan 160-bit message digest
Versi : SHA-256, SHA-384, SHA-512 (terintegrasi dengan AES)
10. MD5
dirancang oleh Prof. Robert Rivest (RSA, MIT) tahun 1991
menghasilkan 128-bit digest.
cepat tapi kurang aman
11. Secure Shell (SSH)
digunakan untuk client side authentication antara 2 sistem
mendukung UNIX, windows, OS/2
melindungi telnet dan ftp (file transfer protocol)
12. Secure Socket Layer (SSL)
dirancang oleh Netscape
menyediakan enkripsi RSA pada layes session dari model OSI.
independen terhadap servise yang digunakan.
melindungi system secure web e-commerce
metode public/private key dan dapat melakukan authentication
terintegrasi dalam produk browser dan web server Netscape.
13. Security Token
aplikasi penyimpanan password dan data user di smart card
DAFTAR PUSTAKA
http://id.wikipedia.org/wiki/Kriptografi
http://id.wikipedia.org/wiki/MD5.htm
http://id.wikipedia.org/wiki/RADIUS.htm
http://id.wikipedia.org/wiki/RSA.htm
http://id.wikipedia.org/wiki/Security_Token.htm
http://id.wikipedia.org/wiki/AES.htm
http://id.wikipedia.org/wiki/PPTP.htm
http://id.wikipedia.org/wiki/SHA.htm
http://johanfirdaus.zo-ka01.com
http://skma.org
http://kriptografi.multiply.com
http://ittelkom.ac.id
http://rsa.com
http://counterpane.com
http://theory.lcs.mit.edu/~rivest
http://cryptography.com
Recommended