KEAMANAN
DATA DAN JARINGAN
“KUNCI
PUBLIK,KUNCI PRIVAT, KOMBINASI KUNCI PRIVATE DAN PUBLIK”
PEMBINA : MUHAMMAD AHSAN, S.KOM
DISUSUN
OLEH:
HESTI
SHOLIKAH (130549810249)
FAKULTAS TEKNIK
JURUSAN TEKNIK INFORMATIKA
UNIVERSITAS WIYAGAMA MALANG
2014
Puji syukur kami panjatkan kehadirat Allah SWT yang telah
memberikan rakhmat serta karunia-Nya kepada kami sehingga kami berhasil
menyelesaikan makalah ini yang Alhamdulillah tepat pada waktunya yang berjudul
“KUNCI PUBLIK, KUNCI PRIVAT, KOMBINASI KUNCI PRIVATE DAN PUBLIK”.
Makalah ini berisikan tentang bagian dari perkuliahan
Keamanan Data dan Jaringan yaitu Kunci Publik,
Kunci Privat dan Kombinasi Kunci Publik dan Kunci Privat. Diharapkan makalah ini
dapat memberikan hidayah bagi kita semua, khususnya semua mahasiswa Teknik
Informatika Universitas Widyagama.
Kami menyadari bahwa,makalah ini masih jauh dari sempurna,
oleh karena itu kritik dan saran dari semua pihak yang bersifat membangun
selalu kami harapkan demi kesempurnaan makalah ini.
Akhir kata,kami sampaikan terimakasih kepada semua pihak yang
telah berperan ikut serta dalam penyusunan makalah ini dari awal sampai akhir. semoga
Allah SWT senantiasa melancarkan segala usaha kita semua,aamiin.
Malang,
1 November
2014
Penyusun
DAFTAR ISI
Judul
Kata
Pengantar
Daftar
Isi
BAB
I PENDAHULUAN
1.1 Latar Belakang
1.2. Tujuan
Penulisan
1.3. Manfaat
Penulisan
BAB
II PEMBAHASAN
2.1 Kriptografi
2.1.1 Algoritma Sandi
2.2 KunciPublikSimetris
2.2.1 Data
Encryption Standard (DES)
2.2.2 Advanced Encryption Standard (AES)
2.3 Kunci Publik Asimetris
(gabungan kunci publik dan kunci privat)
2.3.1 Diffie-Hellman
2.3.2 Rivest, Shamir, Adelman (RSA)
2.3.2.1
Sejarah
2.3.2.2 Perumusan Algoritma RSA
2.3.2.3 Deskripsi Algoritma RSA
2.3.2.4 Padding schemes
2.3.2.5 Pengesahan
pesan
2.3.2.6
Keamanan
2.3.2.7 Pembangkitan kunci
2.3.2.8 Kecepatan
2.3.2.9 Distribusi kunci
2.3.2.10 Penyerangan waktu
2.3.2.11 Penyerangan ciphertext adaptive
2.3.3 Pretty Good
Privacy (PGP)
2.3.4 Hashing Algorithms
2.3.5
Beberapa kegunaan dalam kehidupan sehari-hari
2.3.6 Kelebihan dan
kekurangan kunci publik
2.3.6.1 Kelebihan
kriptografi Simetri
2.3.6.2 KekurangankriptografiSimetri
2.3.6.3 KelebihankriptografiAsimetri
2.3.6.4 KekurangankriptografiAsimetri
2.4 Steganografi (kunci privat dan kunci privat)
2.4.1 Metode Steganografi
2.4.2 Steganalisis
dan Stegosystem
2.4.3 Private-key cryptosystem
BAB IIIPENUTUP
Kesimpulan dan Saran
DAFTAR
PUSTAKA
BAB I
PENDAHULUAN
1.1 Latar Belakang
Kriptografi sudah lama
digunakan oleh tentara Sparta di Yunani.Pada permulaan tahun 400 SM. Mereka
menggunakan alat yang disebut scytale. Alat ini terdiri dari sebuah pita
panjang dari daun papyrus yang dililitkan pada sebatang silinder.Pesan yang
akan dikirim ditulis horizontal (baris per baris).Bila pita dilepaskan, maka
huruf-huruf di dalamnya telah tersusun membentuk pesan rahasia.Untuk membaca
pesan, penerima melilitkan kembali silinder yang diameternya sama dengan
diameter silinder pengirim.Teknik kriptografi seperti ini dikenal dengan nama
tranposisi cipher, yang merupakan metode enkripsi tertua.
1.2.
Tujuan Penulisan
Memenuhi
tugas dari dosen mata kuliah
keamanan data dan jaringan
1.3.
Manfaat Penulisan
Agar
materi ini bisa dipahami oleh mahasiswa IT karena ini termasuk materi yang paling penting
dalam keamanan di bidang teknologi khususnya Teknik Informatika.
BAB II
PEMBAHASAN
2.1 Kriptografi
Kriptografi, secara umum adalah ilmu dan seni untuk
menjaga kerahasiaan berita (bruce Schneier - Applied Cryptography). Selain pengertian tersebut terdapat pula
pengertian ilmu yang mempelajari teknik-teknik matematika yang berhubungan dengan aspek
keamanan informasi seperti kerahasiaan data, keabsahan data, integritas data,
serta autentikasi data (A. Menezes, P. van Oorschot and S. Vanstone -
Handbook of Applied Cryptography). Tidak semua aspek keamanan informasi ditangani oleh kriptografi.
Ada empat tujuan mendasar dari ilmu kriptografi
ini yang juga merupakan aspek keamanan informasi yaitu :
1. Kerahasiaan, adalah layanan yang digunakan untuk menjaga isi dari
informasi dari siapapun kecuali yang memiliki otoritas atau kunci
rahasia untuk
membuka/mengupas informasi yang telah disandi.
2.
Integritas data,
adalah berhubungan dengan penjagaan dari perubahan data secara tidak sah. Untuk
menjaga integritas data, sistem harus memiliki kemampuan untuk mendeteksi
manipulasi data oleh pihak-pihak yang tidak berhak, antara lain penyisipan,
penghapusan, dan pensubsitusian data lain kedalam data yang sebenarnya.
3. Autentikasi, adalah
berhubungan dengan identifikasi/pengenalan, baik secara kesatuan sistem maupun
informasi itu sendiri. Dua pihak yang saling berkomunikasi harus saling
memperkenalkan diri. Informasi yang dikirimkan melalui kanal harus
diautentikasi keaslian, isi datanya, waktu pengiriman, dan lain-lain.
4.
Non-repudiasi., atau
nirpenyangkalan adalah usaha untuk mencegah terjadinya penyangkalan terhadap
pengiriman/terciptanya suatu informasi oleh yang mengirimkan/membuat.
Beberapa istilah
dalam dunia kriptografi:
1. Kriptografer: orang yang menggunakan enkripsi
untuk merahasiakan pesan dan mendeskripsikannya kembali.
2. Kriptanalis : orang yang mempelajari metode
enkripsi dan cipherteks dengan tujuan menemukan plainteksnya.
3.
Kriptologi : studi mengenai kriptografi dan
kriptanalis.
2.1.1 Algoritma Sandi
Algoritma sandi adalah algoritma yang
berfungsi untuk melakukan tujuan kriptografis. Algoritma tersebut harus memiliki kekuatan untuk melakukan
(dikemukakan oleh Shannon):
1.
konfusi/pembingungan
(confusion), dari teks terang sehingga sulit untuk direkonstruksikan secara
langsung tanpa menggunakan algoritma dekripsinya
2.
difusi/peleburan
(difusion), dari teks terang sehingga karakteristik dari teks terang tersebut
hilang.
Sehingga dapat digunakan untuk mengamankan
informasi. Pada implementasinya sebuah algoritmas sandi harus
memperhatikan kualitas layanan/Quality of
Service atau QoS 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.
Dasar matematis yang mendasari proses enkripsi dan dekripsi adalah
relasi antara dua himpunan yaitu yang berisi elemen teks terang / plaintext dan yang berisi elemen teks sandi/ciphertext. Enkripsi dan dekripsi merupakan fungsi transformasiantara
himpunan-himpunan tersebut. Apabila elemen-elemen teks terang dinotasikan
dengan P, elemen-elemen teks sandi dinotasikan dengan C, sedang untuk proses
enkripsi dinotasikan dengan E, dekripsi dengan notasi D.
Enkripsi : E(P)=C
Dekripsi : D(C)=P atau D(E(P))=P
Jika cipherteks
dilambangkan dengan C dan plainteks dilambangkan dengan P, maka fungsi enkripsi
E memetakan P ke C,
E (P) = C
Pada proses
kebalikannya, fungsi deskripsi D memetakan C ke P,
D (C) = P
Karena proses
enkripsi kemudian dekripsi mengembalikan pesan ke pesan asal, maka kesamaan
berikut harus benar ,
D ( E (P) ) = P
Secara umum berdasarkan kesamaan kuncinya,
algoritma sandi dibedakan menjadi :
1.
kunci-simetris/symetric-key, sering
disebut juga algoritma sandi konvensional karena umumnya diterapkan pada
algoritma sandi klasik
Berdasarkan arah implementasi dan pembabakan
jamannya dibedakan menjadi :
Berdasarkan kerahasiaan kuncinya dibedakan
menjadi :
Pada skema kunci-simetris, digunakan sebuah
kunci rahasia yang sama untuk melakukan proses enkripsi dan dekripsinya.
Sedangkan pada sistem kunci-asimetris digunakan sepasang kunci yang berbeda,
umumnya disebut kunci publik(public
key) dan kunci pribadi (private key), digunakan
untuk proses enkripsi dan proses dekripsinya. Bila elemen teks terang
dienkripsi dengan menggunakan kunci pribadi maka elemen teks sandi yang
dihasilkannya hanya bisa didekripsikan dengan menggunakan pasangan kunci
pribadinya. Begitu juga sebaliknya, jika kunci pribadi digunakan untuk proses
enkripsi maka proses dekripsi harus menggunakan kunci publik pasangannya.
2.2 Kunci Publik Simetris
Kunci public simetris yaitu menggunakan
menggunakan kunci yang sama untuk mengenkripsi dan mendekripsi pesan.
Ada
dua teknik dalam kriptografi enkripsi simetris: stream cipher dan block cipher.Stream
cipher mengenkripsi satu per satu bit pesan dalam satu waktu, sedangkan block cipher
mengambil sejumlah bit dan mengenkripsi mereka sebagai satu unit.Algoritma
kunci simetris umumnya lebihcepat untuk dijalankan daripada algoritma kunci
asimetris.Kerugian untuk algoritma kunci simetrisadalah persyaratan menggunakan
kuncirahasia bersama. Kunci rahasia harusdipertukarkan antar pihak melalui
saluranyang aman sebelum enkripsi dapat terjadi.
2.2.1 Data Encryption Standard (DES)
DES
dikembangkan IBM pada tahun 1975,dan telah bertahan sangat baik terhadapkriptoanalisis
selama bertahun-tahun.DES adalah algoritma enkripsi simetrisdengan panjang
kunci yang tetap 56 bit.Algoritma ini masih bagus, tapi karenapanjang kunci
pendek, maka rentan terhadapserangan brute force yang memiliki sumber daya yang
cukup.DES biasanya beroperasi dalam modus blok,di mana mengenkripsi data dalam
blok 64-bit. Algoritma dan kunci yang samadigunakan untuk enkripsi dan dekripsi.Karena
DES didasarkan pada fungsi-fungsimatematika sederhana, maka dapat denganmudah
diimplementasikan dalam hardware.Salah satu cara efektif untuk meningkatkanpanjang
kunci DES tanpamengubahalgoritma itu sendiri adalah denganmenggunakan algoritma
yang sama dengankunci yang berbeda beberapa kali berturut-turut. Menerapkan teknik DES tiga kali berturut-turutke
blok teks biasa disebut Triple DES (3DES).
Ketika
sebuah pesan yang akan dienkripsidengan 3DES, sebuah metode yang disebutEDE
(Encrypt Decrypt Encrypt) digunakan.EDE metode yang dijelaskan dalam daftar
berikut:
1. Pesan
dienkripsi dengan 56-bit kunci pertama, K1.
2. Data
didekripsi dengan kunci kedua 56-bit, K2.
3. Data
dienkripsi lagi dengan kunci ketiga 56-bit, K3.
Prosedur
EDE menyediakan enkripsi dengan panjang kunci yang efektif 168 bit. Jika kunciK1
dan K3 adalah sama (seperti dalam beberapa implementasi), enkripsi yang kurang
aman dengan panjang kunci 112 bit tercapai. Untuk mendekripsi pesan, harus menggunakan
prosedur sebagai berikut,yang merupakan kebalikan dari metode Ede:
1. Mendekripsi
ciphertext dengan kunci K3
2. Mengenkripsi
data dengan kunci K2
3. Akhirnya,
mendekripsi data dengan kunci K1
2.2.2 Advanced Encryption Standard (AES)
Pada
tanggal 2 Oktober 2000, The US National Institute of Standards andTechnology
(NIST) mengumumkan pemilihan cipher Rijndael sebagai algoritma AES. Cipherini,
dikembangkan oleh Joan Daemen danVincent Rijmen, memiliki panjang blok dan
kunci yang variabel.Algoritma ini menetapkan caramenggunakan kunci dengan
panjang 128,192, atau 256 bit untuk mengenkripsi blokdengan panjang 128, 192,
atau 256 bit.
Kedua
blok dan panjang kunci dapatdiperluas dengan mudah untuk kelipatan dari 32
bit.AES dipilih untuk menggantikan DES dan3DES karena mereka terlalu lemah
(DES,dalam hal panjang kunci) atau terlalu lambat(3DES). AES lebih efisien dan
lebih cepat,biasanya 5 kali dibandingkan dengan DESpada hardware yang sama. AES
juga lebihcocok untuk throughput yang tinggi,terutama jika digunakan perangkat
lunak enkripsi keseluruhan.
2.3 Kunci Publik Asimetris (gabungan kunci publik dan kunci privat)
Kunci public asimetris yaitu menggunakan
menggunakan kunci publik
untuk mengenkripsi pesan dan
menggunakan kunci privat untuk mendekripsi pesan.
Sebuah
algoritma kunci asimetris menggunakan sepasang kunci kriptografiyang berbeda
untuk mengenkripsi danmendekripsi teks biasa. Dua kunci yang berhubungan secaramatematis.
Sebuah pesan dienkripsi dengan algoritma menggunakan salah satu kunci,dan didekripsi
oleh algoritma yang samadengan kunci yang lain.
Algoritma
asimetris dirancang sedemikian rupa sehingga kunci untuk enkripsi berbedadengan
kunci untuk dekripsi.Kunci untuk dekripsi tidak dapat dihitungdari kunci enkripsi
(setidaknya tidak dalam jumlah waktu yang wajar) dan sebaliknya.Biasa panjang
kunci untuk algoritmaasimetris berkisar 512-2.048 bit. Algoritma asimetris
relatif lambat (hingga1000 kali lebih lambat dari algoritma simetris).Desain
ini didasarkan pada masalah-masalah komputasi seperti pemfaktoran angka yangsangat
besar, perhitungan logaritma diskritpada angka yang sangat besar.
2.3.1 Diffie-Hellman
Whitfield
Diffie dan Martin Hellman mengembangkan algoritma Diffie-Hellman pada tahun
1976.Keamanan yang berasal dari sulitnya menghitung logaritma diskrit dari angka
besar. Protokol yang memungkinkan dua penggunauntuk bertukar kunci rahasia
melalui media yang tidak aman tanpa ada rahasia. Protokol memiliki dua parameter
sistem, pdan g. Publik dan
dapat digunakansemua orang. Parameter p adalah bilangan prima, dan parameter g
(biasanya disebut generator) adalah integer yang lebihkecil dari p, tetapi
dengan properti sebagai berikut: Untuk setiap bilangan n antara 1 danp, ada
bilangan g * k yang berlaku bahwa n = gk mod p.
2.3.2 Rivest, Shamir, Adelman
(RSA)
2.3.2.1 Sejarah
Rivest,
Shamir, Adelman (RSA) adalahalgoritma kunci publik ditemukan oleh Ron Rivest, Adi
Shamir, dan Len Adelman dan dipatenkan pada tahun 1977.Pada tahun 1978, Ron
Rivest, Adi Shamir, dan Leonard Adleman yang merupakan tiga orang professor di
MIT (Massachussets Institute of Technology), pertama kali mempublikasikan teori
secret exponents yang diberi nama RSA (Rivest, Shamir, Adleman) yang merupakan
suatu metode untuk memperoleh Digital Signatures dan Public-Key Cryptosystems.Hak
Paten kedaluwarsa pada September 2000, dan algoritma ini sekarang beradadalam
domain publik. Dibandingkan dengan algoritma lain, RSAadalah jauh lebih mudah
untuk dipahami dan digunakan.
Algoritma
RSA sangat fleksibel dan memilikipanjang kunci variabel di mana, jika perlu,kecepatan
dapat dipertukarkan untuk tingkat keamanan.Kunci RSA biasanya 512-2.048 bit.Keamanan
RSA didasarkan pada sulitnyamemfaktorkan bilangan yang sangat besar.Jika metode
yang mudah untuk pemfaktoranini ditemukan, maka efektivitas dari RSA akan
hancur.
Algoritma
RSA adalah algoritma yang paling popular dari sekian banyak algoritma
kriptografi kunci-publik yang pernah dibuat. Algoritma RSA didasarkan pada
bukti bahwa menemukan bilangan prima yang cukup besar kemudian mengkalikannya
lebih mudah dibandingkan memfaktorkan hasil dari perkalian dua buah bilangan
prima tersebut untuk mendapatkan faktornya yang merupakan dua buah bilangan
prima itu sendiri.
Algoritma
RSA memiliki besaran-besaran sbagai berikut :
1. p
dan q bilangan prima (rahasia)
2. n
= p . q (tidak rahasia)
3. ф(n)
= (p-1)(q-1) (rahasia)
4. e
(kunci enkripsi) (tidak rahasia)
5. d
(kunci dekripsi) (rahasia)
6. m
(plainteks) (rahasia)
7. c
(cipherteks) (tidak rahasia)
2.3.2.2 Perumusan
Algoritma RSA
Algoritma
RSA didasarkan pada teorema Euler yang menyatakan bahwa
a ф(n) ≡
1 (mod n), dengan syarat :
a
harus relative prima terhadap n
ф(n)
= n (1 – 1/p1)(1 – 1/p2) … (1 – 1/pr), yang dalam hal ini p1,p2,
…,pr adalah faktor prima dari n. ф(n) adalah fungsi yang menentukan berapa
banyak dari bilangan-bilangan 1,2,3, …,n yang relative prima terhadap n.
2.3.2.3Deskripsi
Algoritma RSA
Secara
garis besar proses dari RSA terbagi ke dalam tiga buah proses, yaitu key
generation, encryption, dan decryption
a) Key
Generation (Pembangkit pasangan kunci)
Public
key adalah kunci publik untuk setiap user dapat diperoleh melalui prosedur
berikut:
1. Pilih
dua buah bilangan prima sembarang, p dan q
2. Hitung
n = p . q (sebaiknya p ≠ q, sebab jika p = q maka n = p2 sehingga p dapat
diperoleh dengan menarik akar pangkat dua dari n)
3. Hitung
ф(n) = (p-1)(q-1)
4. Pilih
kunci public, e, yang relative prima terhadap ф(n)
5. Bangkitkan
kunci privat, yaitu e . d ≡ 1 (mod ф(n)). Perhatikan bahwa e . d ≡1 (mod ф(n))
ekivalen denagn e . d = 1 + kф(n), sehingga secara sederhana d dapat dihitung
dengan d = (1 + kф(n)) / e
6. Nilai
dari (e,n) adalah kunci publiknya dan (d,n) adalah kunci privatnya
b) Encryption
(Enkripsi)
1. Ambil
kunci publik pnerima pesan, e, dan modulus n
2. Nyatakan
plainteks m menjadi blok-blok m1, m2, …sedemikian sehingga setiap blok mempresentasikan
niali di dalam selang [0, n-1]
3. Setiap
blok mi dienkripsi menjadi blok ci dengan rumus ci =
mi e mod n
c) Decryption
(Dekripsi)
Setiap
blok cipherteks ci didekripsi kembali menjadi blok mi dengan rumus
mi =
ci d mod n.
2.3.2.4Padding
schemes
Padding
schemes harus dibangun secara hati-hati sehingga tidak ada nilai
dari m yang menyebabkan masalah keamanan. Sebagai contoh, jika kita
ambil contoh sederhana dari penampilan ASCII dari m dan menggabungkan
bit-bit secara bersama-sama akan menghasilkan n, kemudian pessan yang
berisi ASCII tunggal karakter NUL(nilai numeris 0) akan
menghasilkan n= 0, yang akan menghasilkan ciphertext 0 apapun
itu nilai dari e dan Nyang digunakan. Sama halnya dengan karakter
ASCII tunggal SOH (nilai numeris 1) akan selalu
menghasilkan chiphertext 1.
Pada
kenyataannya, untuk sistem yang menggunakan nilai e yang kecil,
seperti 3, seluruh karakter tunggal ASCII pada pesan akan disandikan
menggunakan skema yang tidak aman, dikarenakan nilai terbesar nadalah
nilai 255, dan 2553 menghasilkan nilai yang lebih kecil dari modulus yang
sewajarnya, maka proses dekripsi akan menjadi masalah sederhana untuk mengambil
pola dasar dari ciphertext tanpa perlu menggunakan modulus N.
Sebagai konsekuensinya, standar seperti PKCS didesain dengan sangat hati-hati
sehingga membuat pesan asal-asalan dapat terenkripsi secara aman. Dan juga
berdasar pada bagian Kecepatan, akan dijelaskan kenapa m hampir
bukanlah pesan itu sendiri tetapi lebih pada message key yang dipilh
secara acak.
2.3.2.5 Pengesahan
pesan
RSA
dapat juga digunakan untuk mengesahkan sebuah pesan. Misalkan Alice ingin
mengirim pesan kepada Bob. Alice membuat sebuah hash value dari pesan
tersebut, di pangkatkan dengan bilangan d dibagi N (seperti
halnya pada deskripsi pesan), dan melampirkannya sebagai “tanda tangan” pada
pesan tersebut. Saat Bob menerima pesan yang telah “ditandatangani”, Bob
memangkatkan “tanda tangan” tersebut dengan
bilangan e dibagi N (seperti halnya pada enkripsi pesan), dan
membandingkannya dengan nilai hasil dari hash value dengan hash
value pada pesan tersebut. Jika kedua cocok, maka Bob dapat mengetahui
bahwa pemilik dari pesan tersebut adalah Alice, dan pesan pun tidak pernah
diubah sepanjang pengiriman.
Padding
scheme merupakan hal yang esensial untuk mengamankan pengesahan pesan
seperti halnya pada enkripsi pesan, oleh karena itu kunci yang sama tidak
digunakan pada proses enkripsi dan pengesahan.
2.3.2.6 Keamanan
Penyerangan
yang paling umum pada RSA ialah pada penanganan masalah faktorisasi pada bilangan
yang sangat besar. Apabila terdapat faktorisasi metode yang baru dan cepat
telah dikembangkan, maka ada kemungkinan untuk membongkar RSA.
Pada
tahun 2005, bilangan faktorisasi terbesar yang digunakan secara umum ialah
sepanjang 663 bit, menggunakan metode distribusi mutakhir. Kunci RSA pada
umumnya sepanjang 1024—2048 bit. Beberapa pakar meyakini bahwa kunci 1024-bit
ada kemungkinan dipecahkan pada waktu dekat (hal ini masih dalam perdebatan),
tetapi tidak ada seorangpun yang berpendapat kunci 2048-bit akan pecah pada
masa depan yang terprediksi.
Semisal
Eve, seorang eavesdropper, mendapatkan public
key N dan e, dan ciphertext c. Bagimanapun juga, Eve tidak
mampu untuk secara langsung memperoleh d yang dijaga kerahasiannya
oleh Alice. Masalah untuk menemukan n seperti pada ne=c mod
N di kenal sebagai permasalahan RSA.
Cara
paling efektif yang ditempuh oleh Eve untuk
memperoleh n dari c ialah dengan melakukan
faktorisasi Nkedalam p dan q, dengan tujuan untuk
menghitung (p-1)(q-1) yang dapat menghasilkan d dari e. Tidak
ada metode waktu polinomial untuk melakukan faktorisasi pada bilangan bulat
berukuran besar di komputer saat ini, tapi hal tersebut pun masih belum
terbukti.
Masih
belum ada bukti pula bahwa melakukan faktorisasi N adalah
satu-satunya cara untuk memperoleh n dari c, tetapi tidak
ditemukan adanya metode yang lebih mudah. Bagaimanapun juga, secara umum
dianggap bahwa Eve telah kalah jika N berukuran sangat
besar.Jika N sepanjang 256-bit atau lebih pendek, N akan
dapat difaktorisasi dalam beberapa jam pada Personal Computer, dengan
menggunakan perangkat lunak yang tersedia secara bebas.
Jika N sepanjang 512-bit atau lebih pendek, N akan dapat
difaktorisasi dalam hitungan ratusan jam seperti pada tahun 1999.
Secara
teori, perangkat keras bernama TWIRL dan penjelasan dari Shamir dan Tromer pada
tahun 2003 mengundang berbagai pertanyaan akan keamanan dari kunci 1024-bit.
Santa disarankan bahwa N setidaknya sepanjang 2048-bit.Pada tahun
1993, Peter Shor menerbitkan Algoritma Shor , menunjukkan bahwa sebuah komputer
quantum secara prinsip dapat melakukan faktorisasi dalam waktu polinomial,
mengurai RSA dan algoritma lainnya. Bagaimanapun juga, masih terdapat pedebatan
dalam pembangunan komputer quantum secara prinsip.
2.3.2.7 Pembangkitan
kunci
Menemukan
bilangan prima besar p dan q pada biasanya didapat dengan
mencoba serangkaian bilangan acak dengan ukuran yang tepat menggunakan
probabilitas bilangan prima yang dapat dengan cepat menghapus hampir semua
bilangan bukan prima.
p dan q seharusnya
tidak “saling-berdekatan”, agar faktorisasi fermat pada N berhasil.
Selain itu pula, jika p-1 atau q-1 memeiliki faktorisasi bilangan
prima yang kecil, N dapat difaktorkan secara mudah dan nilai-nilai
dari patau q dapat diacuhkan.
Seseorang
seharusnya tidak melakukan metoda pencarian bilangan prima yang hanya akan
memberikan informasi penting tentang bilangan prima tersebut kepada penyerang.
Biasanya, pembangkit bilangan acak yang baik akan memulai nilai bilangan yang
digunakan. Harap diingat, bahwa kebutuhan disini ialah
“acak” dan“tidak-terduga”. Berikut ini mungkin tidak memenuhi kriteria,
sebuah bilangan mungkin dapat dipilah dari proses acak (misal, tidak dari pola
apapun), tetapi jika bilangan itu mudah untuk ditebak atau diduga (atau mirip
dengan bilangan yang mudah ditebak), maka metode tersebut akan kehilangan
kemampuan keamanannya. Misalnya, tabel bilangan acak yang diterbitkan oleh Rand
Corp pada tahun 1950-an mungkin memang benar-benar teracak, tetapi dikarenakan
diterbitkan secara umum, hal ini akan mempermudah para penyerang dalam
mendapatkan bilangan tersebut. Jika penyerang dapat menebak separuh dari
digit p atau q, para penyerang dapat dengan cepat menghitung
separuh yang lainnya (ditunjukkan oleh Donald Coppersmith pada tahun 1997).
Sangatlah
penting bahwa kunci rahasia d bernilai cukup besar, Wiener
menunjukkan pada tahun 1990 bahwa jikap diantara q dan
2q (yang sangat mirip) dan d lebih kecil daripada N1/4/3,
maka d akan dapat dihitung secara effisien
dari N dan e. Kunci enkripsi e = 2 sebaiknya tidak
digunakan.
2.3.2.8 Kecepatan
RSA
memiliki kecepatan yang lebih lambat dibandingkan dengan DES dan algoritma
simetrik lainnya. Pada prakteknya, Bob menyandikan pesan rahasia menggunakan
algoritma simetrik, menyandikan kunci simetrik menggunakan RSA, dan mengirimkan
kunci simetrik yang dienkripsi menggunakan RSA dan juga mengirimkan pesan yang
dienkripasi secara simetrik kepada Alice.
Prosedur
ini menambah permasalahan akan keamanan. Singkatnya, Sangatlah penting untuk
menggunakan pembangkit bilangan acak yang kuat untuk kunci simetrik yang
digunakan, karena Eve dapat melakukan bypassterhadap RSA dengan menebak
kunci simterik yang digunakan.
2.3.2.9 Distribusi
kunci
Sebagaimana
halnya cipher, bagaimana public key RSA didistribusi menjadi hal
penting dalam keamanan. Distribusi kunci harus aman dari man-in-the-middle
attack (penghadang-ditengah-jalan). Anggap Eve dengan suatu cara mampu
memberikan kunci arbitari kepada Bob dan membuat Bob percaya bahwa kunci
tersebut milik Alice. Anggap Eve dapan “menghadang” sepenuhnya transmisi antara
Alice dan Bob. Eve mengirim Bob public key milik Eve, dimana Bob
percaya bahwa public key tersebut milik Alice. Eve dapat menghadap
seluruhciphertext yang dikirim oleh Bob, melakukan dekripsi dengan kunci
rahasia milik Eve sendiri, menyimpan salinan dari pesan tersebut, melakukan
enkripsi menggunakan public key milik Alice, dan
mengirimkanciphertext yang baru kepada Alice. Secara prinsip, baik Alice
atau Bob tidak menyadari kehadiran Eve diantara transmisi mereka. Pengamanan
terhadap serangan semacam ini yaitu menggunakan sertifikat digital atau
komponen lain dari infrastuktur public key.
2.3.2.10 Penyerangan
waktu
Kocher
menjelaskan sebuah serangan baru yang cerdas pada RSA di tahun 1995: jika
penyerang, Eve, mengetahui perangkat keras yang dimiliki oleh Alice secara
terperinci dan mampu untuk mengukur waktu yang dibutuhkan untuk melakukan
dekripsi untuk beberapa ciphertext, Eve dapat menyimpulkan kunci
dekripsi dsecara cepat. Penyerangan ini dapat juga diaplikasikan pada
skema “tanda tangan” RSA.
Salah satu cara untuk mencegah penyerangan
ini yaitu dengan memastikan bahwa operasi dekripsi menggunakan waktu yang
konstan untuk setiap ciphertext yang diproses. Cara yang lainnya,
yaitu dengan menggunakan properti multipikatif dari RSA. Sebagai ganti dari
menghitung cd mod N, Alice pertama-tama memilih nilai bilangan
acak r dan menghitung (rec)d mod N. Hasil dari penghitungan
tersebut ialah rm mod N kemudian efek dari r dapat dihilangkan
dengan perkalian dengan inversenya. Nilai baru dari r dipilih pada
tiap ciphertext.
Dengan
teknik ini, dikenal sebagai message blinding (pembutaan pesan), waktu
yang diperlukan untuk proses dekripsi tidak lagi berhubungan dengan nilai
dari ciphertext sehingga penyerangan waktu akan gagal.
2.3.2.11 Penyerangan ciphertext adaptive
Pada
tahun 1998, Daniel Bleichenbacher menjelaskan penggunaan
penyerangan ciphertext adaptive, terhadap pesan yang terenkripsi
menggunakan RSA dan menggunakan PKCS #1 v1 padding scheme.
Dikarenakan
kecacatan pada skema PKCS #1, Bleichenbacher mampu untuk melakukan serangkaian
serangan terhadap implementasi RSA pada protokol Secure Socket Layer, dan
secara potensial mengungkap kunci-kunci yang digunakan.
Sebagai
hasilnya, para pengguna kriptografi menganjurkan untuk menggunakan padding
schemeyang relatif terbukti aman seperti Optimal Asymmetric Encryption
Padding, dan Laboratorium RSA telah merilis versi terbaru dari PKCS #1 yang
tidak lemah terdapat serangan ini.
2.3.3 Pretty Good Privacy (PGP)
Pretty Good Privacy
(PGP)adalah paketperangkat lunak yang awalnyadikembangkan oleh Philip R.
Zimmermannkriptografi yang menyediakan rutin untuk emaildan penyimpanan file
aplikasi. Hal inididasarkan pada protokol kriptografi yangada, dan dapat
berjalan di banyak platform.PGP pesan menyediakan enkripsi, kompresi data, dan
tanda tangan digital.
2.3.4 Hashing Algorithms
Hashing
adalah salah satu mekanisme yangdigunakan untuk jaminan integritas data.Hashing
didasarkan pada satu arah fungsimatematika, yang relatif mudah untukmenghitung,
tetapi secara signifikan lebihsulit untuk dihitung balik.
2.3.5
Beberapa kegunaan dalam kehidupan sehari-hari
•
1. Menjaga kerahasiaan data.
Dengan
menggunakan metode enkripsi dan dekripsi, kriptografi kunci publik dapat digunakan untuk menjaga
kerahasiaan data.
Algoritma:
RSA, Rabin, ElGamal
•
2. Tanda tangan digital
Tanda
tangan digital dengan menggunakan algoritma kriptografi kunci publik digunakan
untuk membuktikan otentikasi pesan maupun otentikasi pengirim.
Algoritma:
RSA, ElGamal, DSA, GOST
•
3. Pertukaran kunci
Algoritma
kriptografi kunci publik dapat digunakan untuk pertukaran kunci simetri.
Algoritma:
Diffie-Hellman
Beberapa
jenis algoritma kriptografi kunci publik dapat digunakan untuk ketiga macam
kategori aplikasi (misalnya RSA), beberapa algoritma hanya ditujukan untuk aplikasi
spesifik (misalnya DSA untuk digital signature).
2.3.6 Kelebihan dan kekurangan kunci publik
2.3.6.1 Kelebihan kriptografi Simetri
1. Algoritma kriptografi simetri dirancang
sehingga proses enkripsi/dekripsi membutuhkan waktu yang singkat.
2. Ukuran kunci simetri
relatif pendek.
3.
Algoritma kriptografi simetri dapat digunakan untuk membangkitkan bilangan
acak.
4.
Algorima kriptografi simetri dapat disusun untuk menghasilkan cipher yang
lebih kuat.
5.
Otentikasi pengirim pesan langsung diketahui dari cipherteks yang diterima,
karena kunci hanya diketahui oleh pengirim dan penerima pesan saja.
2.3.6.2 Kekurangan
kriptografi Simetri
1.
Kunci simetri harus dikirim melalui saluran yang aman. Kedua entitas yang
berkomunikasi harus menjaga Kerahasiaan kunci ini.
2. Kunci harus sering
diubah, mungkin pada setiap sesi komunikasi.
2.3.6.3 Kelebihan
kriptografi Asimetri
1.
Hanya kunci privat yang perlu dijaga kerahasiaannya oleh seiap entitas yang
berkomuniaksi (tetapi, otentikasi kunci publik tetap harus terjamin). Tidak ada
kebutuhan mengirim kunci kunci privat sebagaimana pada system simetri.
2.
Pasangan kunci publik/kunci privat tidak perlu diubah, bahkan dalam periode
waktu yang panjang.
3.
Dapat digunakan untuk mengamankan pengiriman kunci simetri.
4. Beberapa algoritma
kunci-publik dapat digunakan untuk memberi tanda tangan digital pada
pesan.
2.3.6.4 Kekurangan
kriptografi Asimetri
1.
Enkripsi dan dekripsi data umumnya lebih lambat daripada sistem simetri, karena
enkripsi dan dekripsi menggunakan bilangan yang besar dan melibatkan operasi
perpangkatan yang besar.
2.
Ukuran cipherteks lebih besar daripada plainteks (bisa dua sampai empat kali ukuran
plainteks).
3. Ukuran kunci relatif
lebih besar daripada ukuran kunci simetri.
4.
Karena kunci publik diketahui secara luas dan dapat digunakan setiap orang,
maka cipherteks tidak memberikan informasi mengenai otentikasi pengirim.
5.
Tidak ada algoritma kunci-publik yang terbukti aman (sama seperti block cipher).
Kebanyakan algoritma mendasarkan keamanannya pada sulitnya memecahkan
persoalan-persoalan aritmetik (pemfaktoran, logaritmik, dsb) yang menjadi dasar
pembangkitan kunci.
2.4 Steganografi (kunci privat dan
kunci privat)
Steganografi adalah seni dan ilmu
menulis pesan tersembunyi atau menyembunyikan pesan dengan suatu cara sehingga
selain si pengirim dan si penerima, tidak ada seorangpun yang mengetahui atau
menyadari bahwa ada suatu pesan rahasia. Sebaliknya, kriptografi menyamarkan arti dari suatu pesan, tapi tidak
menyembunyikan bahwa ada suatu pesan. Kata "steganografi" berasal
dari bahasa
Yunani steganos, yang
artinya “tersembunyi atau terselubung”, dan graphein, “menulis”.Kini,
istilah steganografi termasuk penyembunyian data digital dalam berkas-berkas (file) komputer. Contohnya, si pengirim mulai dengan berkas gambar
biasa, lalu mengatur warna setiap pixel ke-100
untuk menyesuaikan suatu huruf dalam alphabet (perubahannya begitu halus
sehingga tidak ada seorangpun yang menyadarinya jika ia tidak benar-benar
memperhatikannya).Pada umumnya, pesan steganografi muncul dengan rupa lain
seperti gambar, artikel, daftar belanjaan, atau pesan-pesan lainnya. Pesan yang
tertulis ini merupakan tulisan yang menyelubungi atau menutupi. Contohnya,
suatu pesan bisa disembunyikan dengan menggunakan tinta yang tidak terlihat di
antara garis-garis yang kelihatan.
Teknik steganografi meliputi banyak sekali
metode komunikasi untuk menyembunyikan pesan rahasia (teks atau gambar) di
dalam berkas-berkas lain yang mengandung teks, image, bahkan audio tanpa
menunjukkan ciri-ciri perubahan yang nyata atau terlihat dalam kualitas dan
struktur dari berkas semula. Metode ini termasuk tinta yang tidak
tampak, microdots, pengaturan kata, tanda tangan digital, jalur
tersembunyi dan komunikasi spektrum lebar.
Tujuan dari steganografi adalah merahasiakan
atau menyembunyikan keberadaan dari sebuah pesan tersembunyi atau sebuah
informasi. Dalam prakteknya, kebanyakan pesan disembunyikan dengan membuat
perubahan tipis terhadap data digital lain yang isinya tidak akan menarik
perhatian dari penyerang potensial, sebagai contoh sebuah gambar yang terlihat
tidak berbahaya. Perubahan ini bergantung pada kunci (sama pada kriptografi)
dan pesan untuk disembunyikan. Orang yang menerima gambar kemudian dapat
menyimpulkan informasi terselubung dengan cara mengganti kunci yang benar ke dalam
algoritma yang digunakan.Pada metode steganografi cara ini sangat berguna jika
digunakan pada cara steganografi komputer karena banyak format berkas digital
yang dapat dijadikan media untuk menyembunyikan pesan. Format yang biasa
digunakan di antaranya:
1.
Format image :
bitmap (bmp), gif, pcx, jpeg, dll.
2.
Format
audio : wav, voc, mp3, dll.
3.
Format
lain : teks file, html, pdf, dll.
Kelebihan steganografi jika dibandingkan
dengan kriptografi adalah pesan-pesannya tidak menarik perhatian orang lain.
Pesan-pesan berkode dalam kriptografi yang tidak disembunyikan, walaupun tidak
dapat dipecahkan, akan menimbulkan kecurigaan. Seringkali, steganografi dan
kriptografi digunakan secara bersamaan untuk menjamin keamanan pesan
rahasianya.
Sebuah pesan steganografi (plaintext),
biasanya pertama-tama dienkripsikan dengan beberapa arti tradisional, yang
menghasilkan ciphertext. Kemudian, covertext dimodifikasi dalam
beberapa cara sehingga berisi ciphertext, yang
menghasilkan stegotext. Contohnya, ukuran huruf, ukuran spasi, jenis
huruf, atau karakteristik covertext lainnya dapat dimanipulasi untuk
membawa pesan tersembunyi; hanya penerima (yang harus mengetahui teknik yang
digunakan) dapat membuka pesan dan mendekripsikannya.
2.4.1 Metode
Steganografi
Kebanyakan
algoritma steganografi menggunakan sebuah kombinasi dari bidang jenis teknik
untuk melakukan sebuah tugas dalam penyelubungan pesan rahasia dalam sebuah
selubung berkas.
Sebuah
program steganografi dibutuhkan untuk melakukan hal-hal berikut (baik implisit
melalui suatu perkiraan maupun eksplisit melalui sebuah perhitungan), menemukan
kelebihan bits dalam selubung file yang dapat digunakan untuk menyelubungi
pesan rahasia didalamnya, memilih beberapa diantaranya untuk digunakan dalam
menyelubungi data dan penyelubungan data dalam bits dipilih sebelumnya.Ada
empat jenis metode Steganografi, yaitu:
1. Least
Significant Bit Insertion (LSB)
Metoda
yang digunakan untuk menyembunyikan pesan pada media digital tersebut
berbeda-beda. Contohnya, pada berkas image pesan dapat disembunyikan dengan menggunakan
cara menyisipkannya pada bit rendah atau bit yang paling kanan (LSB) pada data
pixel yang menyusun file tersebut. Pada berkas bitmap 24 bit, setiap pixel
(titik) pada gambar tersebut terdiri dari susunan tiga warna merah, hijau dan
biru (RGB) yang masing-masing disusun oleh bilangan 8 bit (byte) dari 0 sampai
255 atau dengan format biner 00000000 sampai 11111111. Dengan demikian, pada
setiap pixel berkas bitmap 24 bit kita dapat menyisipkan 3 bit data.
Kekurangan
dari LSB Insertion: Dapat diambil kesimpulan dari contoh 8 bit pixel,
menggunakan LSB Insertion dapat secara drastis mengubah unsur pokok warna dari
pixel. Ini dapat menunjukkan perbedaan yang nyata dari cover
image menjadistego image, sehingga tanda tersebut menunjukkan keadaan dari
steganografi. Variasi warna kurang jelas dengan 24 bit image, bagaimanapun file
tersebut sangatlah besar. Antara 8 bit dan 24 bit image mudah
diserang dalam pemrosesan image, seperti cropping (kegagalan)
dan compression (pemampatan).Keuntungan dari LSB Insertion :
Keuntungan yang paling besar dari algoritma LSB ini adalah cepat dan mudah. Dan
juga algoritma tersebut memiliki software steganografi yang mendukung
dengan bekerja di antara unsur pokok warna LSB melalui manipulasi pallete (lukisan).
2. Algorithms
and Transformation
Algoritma compression adalah
metode steganografi dengan menyembunyikan data dalam fungsi matematika. Dua
fungsi tersebut adalah Discrete Cosine Transformation (DCT)
dan Wavelet Transformation. Fungsi DCT dan Wavelet yaitu mentransformasi
data dari satu tempat (domain) ke tempat (domain) yang lain. Fungsi DCT yaitu
mentransformasi data dari tempat spatial (spatial domain) ke tempat frekuensi
(frequency domain).
3. Redundant
Pattern Encoding
Redundant
Pattern Encoding adalah menggambar pesan kecil pada kebanyakan gambar.
Keuntungan dari metode ini adalah dapat bertahan
dari cropping (kegagalan). Kerugiannya yaitu tidak dapat menggambar
pesan yang lebih besar.
4. Spread
Spectrum method
Spread
Spectrum steganografi terpencar-pencar sebagai pesan yang diacak
(encrypted) melalui gambar (tidak seperti dalam LSB). Untuk membaca suatu
pesan, penerima memerlukan algoritma
yaitu crypto-key dan stego-key. Metode ini juga masih mudah
diserang yaitu penghancuran atau pengrusakan dari kompresi dan
proses image (gambar).
2.4.2 Steganalisis
dan Stegosystem
Seperti
Kriptografi dan Kriptanalisis, Steganalisis didefinisikan sebagai suatu seni
dan ilmu dalam mendeteksi informasi tersembunyi. Sebagai tujuan dari
steganografi adalah untuk merahasiakan keberadaan dari sebuah pesan rahasia,
satu keberhasilan penyerangan pada sebuah sistem steganografi terdiri dari
pendeteksian bahwa sebuah berkas yang diyakini berisikan data terselubung.
Seperti dalam Kriptanalisis, diasumsikan bahwa sistem steganografi telah
diketahui oleh si penyerang. Maka dari itu, keamanan dari sistem steganografi
bergantung hanya pada fakta bahwa kunci rahasia tidak diketahui oleh si
penyerang.Stegosystem di sini berisi tentang penyerangan-penyerangan yang
dilakukan terhadap suatu sistem steganografi, sebuah perbedaan penting harus
dibuat di antara penyerangan-penyerangan pasif di mana penyerang hanya dapat
memotong data, dan penyerangan-penyerangan aktif di mana penyerang juga dapat
memanipulasi data.
Penyerangan-penyerangan
berikut memungkinkan dalam model dari stegosistem ini:
1. Stego-Only-Attack (Penyerangan
hanya Stego). Penyerang telah menghalangi stego data dan dapat menganalisisnya.
2. Stego-Attack (Penyerangan
Stego). Pengirim telah menggunakan cover yang sama berulangkali untuk
data terselubung. Penyerang memiliki berkas stego yang berasal dari cover
file yang sama. Dalam setiap berkas stego tersebut, sebuah pesan berbeda
disembunyikan.
3. Cover-Stego-Attack (Penyerangan
selubung Stego). Penyerang telah menghalangi berkas stego dan
mengetahui cover file mana yang digunakan untuk menghasilkan berkas
stego ini. Ini menyediakan sebuah keuntungan melalui
penyerangan stego-only untuk si penyerang.
4. Manipulating
the stego data (Memanipulasi data stego). Penyerang memiliki kemampuan
untuk memanipulasi data stego. Jika penyerang hanya ingin menentukan sebuah
pesan disembunyikan dalam berkas stego ini, biasanya ini tidak memberikan
sebuah keuntungan, tapi memiliki kemampuan dalam memanipulasi data stego yang
berarti bahwa si penyerang mampu memindahkan pesan rahasia dalam data stego
(jika ada).
5. Manipulating
the cover data (Memanipulasi data terselubung). Penyerang dapat
memanipulasi data terselubung dan menghalangi hasil data stego. Ini dapat
membuat tugas dalam menentukan apakah data stego berisikan sebuah pesan rahasia
lebih mudah bagi si penyerang.
2.4.3 Private-key cryptosystem
UNP
(CIO) – Penggunaan satu kunci ini membuat sistem pengamanan data tadi
disebut private-key cryptosystem, atau sistem kriptografi berbasis kunci
privat. Penekanan ada pada kata “privat”, dimana kunci ini harus dirahasiakan,
privat. Selain itu sistem ini juga disebut symmetric cryptosystem, atau
sistem kriptografi simetris karena kunci yang dipakai untuk proses
enkripsi sama dengan kunci yang digunakan pada proses dekripsi. Simetris. Dalam
aplikasinya, sistem kripto kunci privat ini memiliki beberapa masalah, terutama masalah pertama adalah kesulitan dalam
distribusi kunci (Key Distribution Problem.), karena itu metode ini jarang
digunakan.
BAB
III
PENUTUP
Kesimpulan
dan Saran
Sejak
dikembangkannya kriptografi kunci publik, selalu timbul pertanyaan mana yang
lebih baik antara kripto kunci publik dengan kripto kunci privat. Para pakar
kriptografi mengatakan bahwa keduanya tidak dapat dibandingkan karena mereka
memecahkan masalah dalam domain yangberbeda. Kriptografi kunci privat
(simetrik) merupakan hal yang terbaik untuk mengenkripsi data.
Kecepatannya dan keamanan akan choosenciphertext attack merupakan kelebihannya.
Sementara itu kriptografi dengan menggunakan kunci publik dapat melakukan
hal-hal lain lebih baik, misalnya dalam hal key management.
DAFTAR
PUSTAKA
http://id.wikipedia.org/wiki/Kriptografi,
diakses pada tanggal 25 oktober 2014
http://laviola-mennys.blogspot.com/2012/10/kriptografi-kunci-publik.html, diakses pada tanggal 29 oktober 2014
https://www.scribd.com/doc/16377260/Konsep-enkripsi-kunci-public, diakses pada tanggal 29 oktober 2014
http://yusrilardi.wordpress.com/2012/09/18/praktikum-jaringan-kriptografi-dengan-kunci-private/, diakses pada tanggal 30 oktober 2014
Komentar
Posting Komentar