dihitung dari kunci enkripsi. Algoritma disebut kunci publik karena kunci enkripsi dapat dibuat publik yang berarti semua orang boleh
mengetahuinya. Sebarang orang dapat menggunakan kunci enkripsi tersebut untuk mengenkrip pesan, namun hanya tertentu calon penerima
pesan dan sekaligus pemilik kunci dekripsi yang merupakan pasangan kunci publik yang dapat melakukan dekripsi pada pesan tersebut.
Dalam sistem ini, kunci enkripsi sering disebut kunci publik,
sementara kunci dekripsi sering disebut kunci privat. Kunci privat
disebut kunci rahasia. Kriptografi yang termasuk dalam algoritma asimetri adalah ECC, LUC, RSA, EI Gamal dan DH.
Gambar 2.2 Kriptografi ASimetris
2.3. Teknik –Teknik Enkripsi dan Dekripsi
Enkripsi dan dekripsi diibaratkan seperti dua sisi mata uang. Pesan-pesan dibuat seolah-olah tidak bermakna dengan mengubahnya menurut
prosedur tertentu enkripsi, dan dibuat bermakna kembali dengan menggunakan prosedur yang biasanya bersifat kebalikannya dekripsi.
Dalam dunia kriptografi, pesan yang akan dirahasiakan disebut plaintext, sedangkan bentuk pesan hasil proses enkripsi disebut ciphertext.
2.4. Keamanan Algoritma
Suatu algoritma dikatakan aman harus memiliki keadaan seperti berikut: 1.
Jika harga untuk menjebol algoritma lebih besar daripada nilai informasi yang dibuka, maka algoritma aman. Misalkan
Universitas Sumatera Utara
diperlukan komputer senilai 1 juta dollar untuk menjebol algoritma senilai 100 ribu dollar, algoritma itu aman.
2. Jika waktu yang diperlukan untuk menjebol algoritma tersebut
lebih lama daripada lamanya waktu yang diperlukan oleh informasi tersebut harus tetap aman, maka algoritma aman.
Misalnya waktu untuk membobol sebuah kartu kredit 1 tahun, sedangkan sebelum setahun kartu tersebut sudah tidak berlaku
lagi, algoritma itu aman. 3.
Jika jumlah data yang dienkrip dengan kunci dan algoritma yang sama lebih sedikit dari jumlah data yang diperlukan untuk
menembus algoritma tersebut, maka algoritma itu aman. Misalkan diperlukan 100 ciphertext untuk menebak kunci yang
digunakan untuk satu pesan, algoritma itu aman.
2.5. Fungsi Hash Satu Arah
Fungsi hash satu arah one-way hash function adalah hash function yang bekerja satu arah, yaitu suatu hash function yang dengan mudah dapat
menghitung hash value dari pre-image, tetapi sangat sukar untuk menghitung pre-image dari hash value. Menurut Rinaldi Munir 2004,
fungsi hash satu arah adalah fungsi yang menerima masukan string yang panjangnya sembarang dan mengkonversinya menjadi string keluaran
yang panjangnya tetap fixed umumnya berukuran jauh lebih kecil daripada ukuran string semula.
Fungsi hash satu-arah adalah fungsi hash yang bekerja dalam satu arah: pesan yang sudah diubah menjadi message digest tidak dapat
dikembalikan lagi menjadi pesan semula. Menurut Yusuf Kurniawan
2004, salah satu fungsi hash satu arah yang banyak digunakan dalam keamanan jaringan komputer dan internet adalah Message Digest 5 MD5
yang dirancang oleh Ron Rivest. MD5 merupakan kelanjutan MD4 yang dirancang untuk keamanan. Secara matematis tidak dimungkinkan untuk
mendapatkan dua pesan yang memiliki hash yang sama. Tidak ada
Universitas Sumatera Utara
serangan yang lebih efisien dibanding brute force. untuk autentikasi pesan lebih menekankan pada pencegahan akan modifikasi informasi active
attack yang dilakukan oleh pihak yang tidak berhak. Dalam hal ini, akan
dibahas teknik kriptografi untuk autentikasi pesan untuk mengetahui keutuhan integritas pesan.
Solusi untuk menanggulangi active attack adalah dengan metode Message Digest Authentication MDA.
Teknik ini biasanya dikenal juga
sebgai fungsi hash satu arah. Fungsi hash satu arah didefinisikan sebagai
transformasi yang mengambil ukuran input bervariasi dan mengubahnya ke dalam ukuran tetap atau disebut message digest. Fungsi hash satu arah
dirancang sedemikian sehingga sangat sulit untuk menentukan pesan yang berkaitan dengan message digest yang dihasilkan, atau dapat dikatakan
fungsi ini hanya bekerja satu arah saja.
Gambar 2.3 Pengiriman pesan menggunakan fungsi hash satu arah.
Dengan menggunakan metode fungsi hash satu arah, dari sebuah pesan dapat dihasilkan message digest atau ringkasan kecil yang unik
untuk menjaga keutuhan dari pesan yang dikirimkan. Setiap pesan yang berbeda akan menghasilkan message digest yang berbeda pula sehingga
dapat diketahui apabila sebuah pesan telah dimodifikasi. Sebagai contoh, dalam pengiriman email yang tidak rahasia dapat dibaca orang tetapi
ingin dijaga integritasnya, isi dari email atau pesan dapat dilewatkan ke fungsi hash sehingga menghasilkan message digest dari isi email tersebut.
Output atau message digest dari fungsi hash ini dapat disertakan dalam
Universitas Sumatera Utara
email . Ketika email diterima, penerima juga menjalankan fungsi hash
terhadap isi email dan kemudian membandingkannya dengan message digest
yang dikirim. Agar lebih aman, verifikasi nilai message digest penerima tersebut ke pengirim, dimana messae digest dikirim secara
terpisah dengan pesan. Jika email diubah di tengah jalan, maka ke dua nilai message digest berbeda Gambar 2.3.
Contoh lain, dalam sistem login user, user terlebih dahulu mengisi form pendaftaran sebagai legal user user mengisi username dan
password . Setelah mengisi username dan password sistem akan
mengecek apakah username yang didaftarkan sudah ada yang memiliki atau belum. Jika sudah ada, maka user diminta mengisi kembali username
yang lain beserta passwordnya. Sedangkan jika bila belum ada, maka data user
ini akan disimpan dalam data base, dengan password yang terenkirpsi. Proses autentikasi pada sistem login, user yang akan
mengakses sistem diminta memasukkan username dan password asli. Setelah memasukkan username dan password sistem akan mencari
password terenkripsi yang tersimpan dalam database berdasarkan
username yang terdaftar, kemudian sistem akan mencocokkan antara
password asli terenkripsi yang diisikan user melalui form login, dengan
password terenkripsi yang tersimpan dalam database. Jika password asli
terenkripsi yang dikirim via form login ini sama dengan password terenkripsi dalam database, maka user tadi biasa masuk ke dalam sistem.
Namun jika tidak sama, maka user tadi tidak berhak. Begitulah proses autentifikasi dalam sistem login yang menyatakan user asli atau user
palsu.
Algoritma yang menggunakan metode ini, disebut juga algoritma hash.
Algoritma ini menerima input berupa blok pesan M dengan panjang
bit yang bervariasi dan menghasilkan output HM dengan panjang tertentu. Jika H adalah fungsi hash satu arah, maka HM adalah nilai hash
dari pesan M atau disebut message digest. Menurut Rinaldi Munir 2004, Algoritma hash harus memiliki 6 sifat fungsi hash satu arah sebagai
berikut:
Universitas Sumatera Utara
1. Fungsi H dapat diterapkan pada blok data berukuran berapa
saja. 2.
H menghasilkan nilai h dengan panjang tetap fixedlength output
. 3.
Hx mudah dihitung untuk setiap nilai x yang diberikan. 4.
Untuk setiap h yang dihasilkan, tidak mungkin dikembalikan nilai x sedemikian sehingga Hx = h. Itulah
sebabnya fungsi H dikatakan fungsi hash satu-arah oneway hash function
. 5.
Untuk setiap x yang diberikan, tidak mungkin mencari y ¹ x sedemikian sehingga Hy = Hx.
6. Tidak mungkin mencari pasangan x dan y sedemikian
sehingga Hx = Hy. Secara umum, masukan fungsi hash adalah blok pesan M dan
keluaran dari hashing blok pesan sebelumnya, hi = HMi, hi – 1 skema
fungsi hash ditunjukkan pada Gambar 2.4.
Gambar 2.4 Fungsi hash satu arah.
Menurut Merkle 1990 perancangan algoritma hash ini sangat dipengaruhi oleh fungsi konversinya. Fungsi konversi mengambil sebuah
rangkaian input dan mengubahnya ke dalam sebuah nilai tetap biasanya
keluaran lebih pendek sebagai outputnya. Sedangkan, fungsi hash satu
Universitas Sumatera Utara
arah
dapat juga didefinisikan sebagai operasi berulang dari fungsi kompresi sampai seluruh langkah proses selesai Gambar 2.5.
Gambar 2.5. Fungsi konversi
2.6 Message Digest 5