• Tidak ada hasil yang ditemukan

BAB 4 IMPLENTASI DAN PENGUJIAN SISTEM

4.1 Implementasi Sistem

Setelah dilakukan analisis dan perancangan pada bab 3, proses selanjutnya adalah implementasi yang telah dibuat pada landasan matematik dan desain logika pada tahap sebelumnya di bab 3 tersebut.

Implementasi sistem merupakan hasil analisis dan perancangan sistem kedalam sebuah bahasa pemograman. Implementasi sistem pada penelitian tugas akhir ini dibangun menggunakan bahasa pemograman PHP. Bahasa PHP merupakan bahasa open source dan berjalan di web browser mozilla firefox.

4.1.1 Halaman Utama (Main Page)

Pada main page ini merupakan page yang pertama kali muncul saat aplikasi dijalankan. Halaman ini terdiri dari tools button yang sebagai jalan pintas dalam enkripsi dan dekripsi algoritma hybrid yaitu algoritma FEAL dan ElGamal. Halaman utama dapat dilihat dalam gambar 4.1 dibawah ini:

4.1.2 Form key Generator

Form key generator merupakan form untuk membangkitkan bilangan prima, p, g dan y. Dimana kita akan mendaptkan kunci public dan kunci private. Form ini dapat dilihat pada gambar 4.2 berikut ini:

Gambar 4.2 Key Generator algoritma ElGamal

4.1.3 Pengambilan kunci dari algoritma FEAL (Hasil proses enkripsi dan Hasil dekripsi algoritma FEAL)

a. Hasil Proses enkripsi algoritma FEAL

Pada proses ini akan algoritma FEAL melakukan enkripsi yang bertujuan untuk mengubah plaintext menjadi ciphertext. Pada proses ini algoritma FEAL juga melakukan enkripsi biasa yaitu memasukkan plaintext dan key kemudian menghasilkan output ciphertext. Pada enkripsi algoritma FEAL proses ini akan dijelaskan pada form yang dapat di perlihatkan pada gambar 4.3 dibawah ini:

Gambar 4.3 Proses enkripsi algoritma FEAL

Pada proses ini plaintext yaitu berupa karakter dalam bentuk kalimat “target januari 2016!” menghasilkan ciphertext berupa karakter

xACwCLvCjVbrMmlWYS/6SBwRBFdmyn6ERguy6w==” dimana jumlah karakter ciphertext lebih panjang dari plaintext.

b. Hasil Proses Dekripsi algoritma FEAL

Pada proses ini merupakan proses mengembalikan proses ciphertext menjadi plaintext pada algoritma FEAL. Pada proses ini walaupun pada ciphertext menghasilkan karakter yang berbeda-beda ketika di generate, namun decrypt akan menghasilkan karakter sama dengan plaintext sebelumnya asalkan key yang sebelumnya sama. Untuk proses dekripsi algoritma FEAL dapat dijelaskan pada gambar 4.4 berikut dibawah ini:

Gambar 4.4 Dekripsi pada algoritma FEAL

4.1.4 Implementasi dan pengujian Algoritma Hybrid FEAL dan ElGamal (Hasil Proses Enkripsi dan Hasil Dekripsi algoritma ElGamal dengan mengambil ciphertext FEAL sebagai Key ElGamal)

a. Proses Enkripsi algoritma Elgamal dengan key ciphertext FEAL sebagai key private FEAL

Pada proses ini algoritma ini algoritma ElGamal membutuhkan ciphertext FEAL sebagai kunci private ElGamal, maka berdasarkan kasus ini ditarik kesimpulan bahwa Hybrid Cryptosistem dimana menggabung dua algoritma enkrispi simetris (algoritma FEAL) menjadi key algoritma ElGamal. Untuk implementasi dalam sistem dapat dilihat dalam gambar 4.5 dibawah ini:

Gambar 4.5 Enkripsi Algoritma ElGamal

Berasarkan gambar maka dapat dikatui bahwa key ciphertxt algoritma FEAL diambil untuk menjadi private key algoritma ElGamal. Dimana ciphertext pada (sub bab 4.1.3 point a) dengan ciphertext

xACwCLvCjVbrMmlWYS/6SBwRBFdmyn6ERguy6w==

menjadi key algoritma ElGamal. Elgamal sebagai kunci asimetris yang memiliki kunci public dan kunci private maka kunci private diambil dari ciphertext algoritma FEAL penggabungan hal ini penulis sebut sebagai hybrid cryptosystem

.

Dalam ciphertext ElGamal maka dapat di sajikan ciphertex dalam bentuk decimal yaitu: “669 598 669 231 669 45 669 623 669 1377 669 1367 669 457 669 814 669 447 669 1196 669 437 669 35 669 251 669 638 669 995 669 231 669 834 669 45 669 1196 669 1407 669 1176 669 50 669 1387 669 1216 669 809 669 437 669 603 669 1216 669 1362 669 824 669 603 669 598 669 613 669 1397 669 236 669 1216 669 1206 669 241 669 990 669 990”.

b. Proses Dekripsi algoritma Elgamal dengan key ciphertext FEAL sebagai key private FEAL

Pada proses dekripsi yaitu pembalikan ciphertext menjadi plaintext. Dalam Hybrid Cryptosystem dalam penelitian tugas akhir ini yaitu dimasukkan key FEAL dan dilakukan Generate Decrypt algoritma ElGamal. Untuk hasil proses decryption maka dapat dilihat dalam gambar 4.6 dan 4.7 berikut dibawah ini:

Contoh 1:

Gambar 4.6 Dekripsi ElGamal dengan menggunakan Hybrid FEAL

Dari pengujian dan bersarkan gambar diatas maka dapat disimpulkan bahwa plaintext ElGamal yang yaitu ciphertxt FEAL merupakan karakter yang sama dengan plaintext FEAL yaitu:

Contoh 2:

Contoh dekripsi algoritma ElGamal dengan menggunakan Key Algoritma FEAL pada (sub bab 4.3 point a yaitu “12345”)

Gambar 4.7 proses Dekripsi Algoritma ElGamal contoh ke-2

Pada gambar 4.7 diatas merupakan generate decrypt dari algoritma ElGalam dengan menggunakan key FEAL “12345” mengasilkan ciphertext

“669 834 669 251 669 452 669 1397 669 1015 669 834 669 20 669 447 669 251 669

1211 669 1025 669 251 669 452 669 256 669 20 669 412 669 30 669 221 669 1176

669 211”

4.2Hasil Implementasi Sistem

4.2.1 Uji coba panjang kunci dan panjang karakter plaintext proses enkripsi dan dekripsi algoritma FEAL dan ElGamal

a. Uji ke-1 (time 0.858 s)

Uji ke-1 dilakukan dengan panjang karakter sebanyak 40 karakter dan panjang kunci 10 dengan plaintext “syabrul majid ekstensi ilmu komputer usu” dan key yaitu “1234567890” yaitu dapat dilihat pada gambar 4.8 berikut dibawah ini:

Gambar 4.8 Hasil pengujian ke-1 mengambil mendapatkan ciphertext FEAL untuk Key ElGamal dengan panjang plaintext 40 dan panjang key 10

Setelah mendapatkan ciphertext FEAL maka selanjutnya dijadikan Key ElGamal. Dapat dilihat pada gambar 4.9 berikut dibawah ini:

Gambar 4.9 Pengujian ElGamal dengan mendapatkan key dari algoritma FEAL time 0.858s

b. Uji ke-2 (time 1.899 s)

Uji ke-2 dilakukan dengan panjang karakter sebanyak 91 karakter dan panjang kunci 21 dengan plaintext “syabrul majid ekstensi ilmu komputer usu tahun 2013 dengan Nomor Induk Mahasiswa 131421058” dan key yaitu

“1234567890qwertyuiopa” yaitu dapat dilihat pada gambar 4.10 berikut dibawah ini:

Gambar 4.10 Hasil pengujian ke-1 mengambil mendapatkan ciphertext FEAL untuk Key ElGamal dengan panjang plaintext 91 dan panjang key 21

Setelah mendapatkan ciphertext FEAL maka selanjutnya dijadikan Key ElGamal. Dapat dilihat pada gambar 4.11 berikut dibawah ini:

Gambar 4.11 Pengujian ElGamal dengan mendapatkan key dari algoritma FEAL time 1.899s

c. Uji ke-3 (time 5.097s)

Uji ke-3 dilakukan dengan panjang karakter sebanyak 193 karakter dan panjang kunci 51 dengan plaintext

“syabrul majid ekstensi ilmu komputer usu tahun 2013 dengan Nomor Induk Mahasiswa 131421058 dengan judul skripsi "IMPLEMENTASI DAN ANALISIS KRIPTOGRAFI HYBRID ALGORITMA FEAL DAN ALGORITMA ELGAMAL DALAM PENGAMANAN FILE TEKS tahun 2016 medan"” dan key yaitu

“1234567890qwertyuiopasdfghjklzxcvbnmasdfgghjklzxcvb” yaitu dapat dilihat pada gambar 4.12 berikut dibawah ini:

Gambar 4.12 Hasil pengujian ke-1 mengambil mendapatkan ciphertext FEAL untuk Key ElGamal dengan panjang plaintext 193 dan panjang key 51

Setelah mendapatkan ciphertext FEAL maka selanjutnya dijadikan Key ElGamal. Dalam proses enkripsi, dapat dilihat pada gambar 4.13 berikut dibawah ini:

Gambar 4.13 Pengujian ElGamal dengan mendapatkan key dari algoritma FEAL time 5.097s

d. Uji ke-4 (time 7.758 s)

Uji ke-4 dilakukan dengan panjang karakter sebanyak 366 karakter dan panjang kunci 51 dengan plaintext

“syabrul majid ekstensi ilmu komputer usu tahun 2013 dengan Nomor Induk Mahasiswa 131421058 dengan judul skripsi "IMPLEMENTASI DAN ANALISIS KRIPTOGRAFI HYBRID ALGORITMA FEAL DAN ALGORITMA ELGAMAL DALAM PENGAMANAN FILE TEKS tahun 2016 medan" Dosen Pembimbing 1. Bapak Muhammad M. Andri Budiman, ST, MCompSc, MEM dan dosen Pembimbing 2.

Ibu Dian Rachmawati, S.Si, M.Kom” dan key yaitu

“1234567890qwertyuiopasdfghjklzxcvbnmasdfgghjklzxcvb” yaitu dapat dilihat pada gambar 4.14 berikut dibawah ini:

Gambar 4.14 Hasil pengujian ke-1 mengambil mendapatkan ciphertext FEAL untuk Key ElGamal dengan panjang plaintext 329 dan panjang key 51

Setelah mendapatkan ciphertext FEAL maka selanjutnya dijadikan Key ElGamal. Dalam proses enkripsi, dapat dilihat pada gambar 4.13 berikut dibawah ini:

Gambar 4.15 Pengujian ElGamal dengan mendapatkan key dari algoritma FEAL time 7.758s

e. Uji ke-5 (time 23.829s)

Uji ke-5 dilakukan dengan panjang karakter sebanyak 1135 karakter dan panjang kunci 70 dengan plaintext

Lalu lintas pengiriman data semakin global, serta konsep open system dari suatu jaringan memudahkan seseorang untuk masuk kedalam jaringan tersebut. Hal itu membuat proses pengiriman data menjadi tidak aman dan dapat saja dimanfaatkan oleh pihak yang tidak memiliki wewenang dan tanggung jawab. Salah satu solusi dengan teknik kriptografi adalah untuk menjaga keamanan dan kerahsiaan data dalam pengiriman dan bertukar informasi. Algoritma FEAL (Fast Data Enchiperment Algorithm) adalah algoritma kunci simetri. Algoritma ElGamal adalah algoritma dengan kunci asimetri. Pengujian bilangan prima menggunakan metode Lehmann (Lehmann Prime Generator). Penggabungan dua algoritma simetri dengan asimetri disebut juga dengan hybrid cryptosystem. Implementasi menggunakan bahasa pemograman PHP dengan editor notepad++ berjalan di browser Mozilla Firefox. Hasil penelitian menunjukkan bahwa gabungan dari kedua algoritma tersebut dapat menjaga keamanan dan kerahasiaan data.

Kata Kunci : Kriptografi, simetris, asimetris, FEAL (Fast Data Enchiperment Algorithm),

ElGamal, Hybrid Cryptosystem, Lehmann Prime Generator

dan key yaitu “1234567890qwertyuiopasdfghjklzxcvbnmasdfgghjklzxcvb” yaitu dapat dilihat pada gambar 4.14 berikut dibawah ini:

Gambar 4.16 Hasil pengujian ke-1 mengambil mendapatkan ciphertext FEAL untuk Key ElGamal dengan panjang plaintext 329 dan panjang key 51

Setelah mendapatkan ciphertext FEAL maka selanjutnya dijadikan Key ElGamal. Dalam proses enkripsi, dapat dilihat pada gambar 4.13 berikut dibawah ini:

Gambar 4.17 Hasil pengujian ke-1 mengambil mendapatkan ciphertext FEAL untuk Key ElGamal dengan panjang plaintext 1135 dan panjang key 51

Hasil Uji coba implentasi dari algoritma Hybrid FEAL dan ElGamal dapat diketahui dari melihat tabel 4.1berikut dibawah ini:

Tabel 4.1 Hasil ujicoba Enkripsi dari 5 kali percobaan dengan beragam panjang key dan plaintext

Uji coba ke- Panjang Plaintext (karakter) Panjang key Waktu / s

1 40 10 0.858

2 91 21 1.899

3 193 51 5.097

5 1.135 51 23.829

Dapat dilihat dari gambar 4.15 dalam bentuk diagram garis dibawah ini:

Gambar 4.18 Tingkatan jumlah panjang karakter dalam Algoritma Hybrid FEAL dan ElGamal

Dari diagram diatas dapat diketaui bahwa semakin panjang karakter plaintex dan key maka waktu yang dibutuhkan semakin lama. Begitupun juga untuk dekripsi pesan dalam pengamanan data Hybrid Cryptosystem Algoritma FEAL dan ElGamal. Dimana semakin panjang key dan plaintext yang dimasukkan maka waktu yang dibutuhkan akan semakin lama yaitu dapat dilihat pada gambar 4.18 diatas dimana jumlah waktu dengan plaintext terlihat signifikan. Waktu dalam 1135 karakter pesan termasuk spasi membutuhkan waktu 23.82 Sekon , berbeda dengan plaintext yang hanya 91 karakter hanya membutuhkan waktu 1.899 Sekon.

BAB 5

KESIMPULAN DAN SARAN

5.1 Kesimpulan

1. Algoritma kriptografi FEAL merupakan sebuah metode penyandian data dengan algoritma simetris, sedangkan algoritma algoritma ElGamal merupakan gabungan antara algoritma simetris dan asimetris dengan memakai FEAL sebagau kunci dari ElGamal maka disebut hybrid Cryptosystem.

2. FEAL menerima masukan berupa 64-bit plaintext dan 64-bit kunci, dan menghasilkan 64-bit ciphertext. FEAL memiliki fungsi f yang sederhana, dengan menggunakan operasi XOR didalamnya, hal ini membuat FEAL menjadi algoritma sederhana dan memiliki proses yang cepat. Sedangkan proses dekripsi yang terjadi pada FEAL menggunakan proses yang sama dengan proses enkripsi.

3. Semakin panjang ukuran dan file yang di enkripsi semakin besar berpengaruh terhadap waktu dalam enkripsi dan dekripsinya. Satuan waktu yang digunakan dalam skripsi ini adalah satuan waktu dalam sekon/detik.

4. Dalam tugas akhir ini perancangan aplikasi telah mampu memenuhi syarat dan kelayakan dalam enkripsi Hybrid Algoritma FEAL dan ElGamal, serta mampu dalam proses enkripsi dan dekripsi pesan baik berupa karakter maupun berupa dokumen *txt, *rtf.

5. Dalam aplikasi yang telah dibangun file teks yang telah dilakukan enkripsi menjadi cipherteks khususnya dalam algoritma FEAL sebagi kunci memiliki panjang karakter yang lebih panjang dari plaintext, dan digunakan dalam key untuk Algoritma ElGamal. Dan dalam Algoritma dibagi menjadi Blok-blok yang berupa bilangan desimal.

6. Semakin panjang plaintext baik berupa karakter maupun file teks berupa *.txt, *rtf, maka waktu yang dibutuhkan semakin banyak.

5.2 Saran

Saran-saran yang ingin disampaikan oleh penulis setelah menyelesaikan penelitian sederhana dalam skripsi ini adalah sebagai berikut:

1. Sebaiknya mengadakan penilitian lebih lanjut tentang perfomasi kekuatan dari Hybrid FEAL dan ElGamal.

2. Aplikasi ini berupa pesan teks, bagi yang ingin mengembangkan aplikasi lebih

lanjut penulis berharap dikembangkan dalam bentuk image seperti “*.png, *.jpg, *.bmp”. Maupun teks yang memiliki ukuran lebih besar seperti *.pdf.

3. Key enkripsi dalam aplikasi ini hanya sekali pakai maka, sebaiknya ditambah fasilitas penyimpanan key, sehingga key-key yeng telah dipakai memiliki history sendiri.

BAB 2

TINJAUAN PUSTAKA

3.1. Latar Belakang

3.1.1. Pengertian Kriptografi

Kriptografi berasal dari kata kripto dan grafi. Kripto berarti menyembunyikan, dan grafi yaitu ilmu. Kriptografi (cryptography) adalah suatu ilmu yang mempelajari suatu sistem penyandian untuk menjamin kerahasiaan dan keamanan data. Orang yang melakukan disebut Criptographer. Kriptografi merupakan ilmu yang mempelajari teknik matematika yang berhubungan dengan aspek keamanan informasi, seperti kerahasiaan data, keabsahan data, dan integritas data serta autentifikasi data (Menezes, 1996)

Sisem kriptografi klasik umumnya menggunakan metode subtitusi atau transposisi dan telah digunakan jauh sebelum komputer ditemukan. Terdapat beberapa komponen utama dalam sistem kriptografi yaitu:

Secara umum, istilah kriptografi yang sering digunakan adalah (Munir, 2006): 1. Pesan

Pesan adalah data atau informasi yang dapat dibaca dan dimengerti maknanya, pesan sering juga disebut dengan plaintext atau teks jelas (cleartext). Plaintext merupakan suatu pesan bermakna yang akan diproses menggunakan algoritma kriptografi.

2. Ciphertext

Cipertext atau di sebut dengan cryptosystem merupakan pesan yang telah tersandi. Pesan dalam bentuk ciphertext tidak dapat dibaca karena berisi karakter-karekter yang tidak memiliki makna setelah melalui proses enkripsi.

3. Enkripsi

Enkripsi merupakan proses penyandian plaintext menjadi ciphertext atau disebut sebagai enciphering. Enkripsi dilakukan dengan tujuan agar plaintext tersebut tidak dapat dibaca oleh pihak yang tidak memiliki otoritas (wewenang).

4. Dekripsi

Dekripsi merupakan proses pengembalian ciphertext menjadi plaintext semula atau di sebut deciphering. Dekripsi dilakukan ketika pesan telah sampai kepada pihak yang dituju.

5. Kunci (key).

Kunci (key) adalah parameter yang digunakan untuk transformasi enkripsi dan dekripsi. Kunci dapat juga berupa string atau deretan bilangan. Keamanan suatu algoritma kriptografi biasanya tergantug kepada kerahasiaan penyebaran key.

6. Kriptosistem (cryptosystem)

Cryptosystem adalah perangkat keras atau implementasi perangkat lunak kriptografi yang diperlukan atau mentranformasi sebuah pesan asli menjadi ciphertext atau juga sebaliknya.

3.1.2. Jenis Kriptografi

Menurut (Munir, 2006) terdapat dua jenis algoritma kriptografi berdasarkan jenis kunci yang digunakan, yaitu:

1. Algoritma Kriptografi Simetri (Konvensional) / Symetric Cryptosystem 2. Algoritma Kriptografi Asimetri (Kunci Publik) / Assymetric Cryptosystem

1. Kriptografi Simetri / Symetric Cryptosystem

Konsep dasar dari kriptografi simetri adalah kunci yang digunakan untuk enkripsi merupakan kunci yang sama dengan kunci untuk dekripsi. Istilah lain untuk kriptografi simetri adalah kriptografi kunci privat (private-key cryptography). Kriptografi kunci rahasia (secret-key cryptography), atau kriptografi konvensional (conventional cryptography). Dapat juga di katakan sebagai proses enkripsi dan

dekripsi yang kuncinya harus dirahasiakan. Dan contoh disini yang diambil adalah DES (Data Encrpytion Standart), Blowfish, IDEA. Dua kategori yang termasuk algoritma simetri adalah algoritma blok cipher dan stream cipher. Proses enkripsi dan dekripsi dapat dilihat pada gambar 2.1 dibawah ini:

Gambar 2.1 Proses enkripsi dan dekripsi Simetric Cryptosystem

a. Block Cipher

Algoritma block cipher adalah algoritma yang masukan dan keluarannya berupa satu block, dan setiap blocknya terdiri dari banyak bit. Beberapa mode operasi enkripsi block cipher.

1. Data Encryption Standard (DES) 2. AES (Advanced Encryption Standard) 3. Blowfish

b. Stream Cipher

Stream cipher (cipher aliran) adalah cipher yang berasal dari hasil XOR antara bit plaintext dengan setip bit kuncinya. Stream cipher sangat rawan terhadap attack dan pembalikan kunci. Beberapa model algoritma stream cipher adalah antara lain:

1. One Time Pad (OTP) 2. Rivest Code 4 (RC4)

Kelebihan algoritma simetri adalah:

a. Proses enkripsi dekripsi kriptografi simetri membutuhkan waktu yang relatif singkat.

b. Ukuran kunci yang relatif pendek.

c. Otentifikasi pengiriman pesan langsung diketahui dari ciphertext yang diterima karena kunci hanya diketahui oleh penerima dan pengirim saja.

Kekurangan kriptografi simetri adalah:

a. Kunci simetri harus dikirim melalui saluran komunikasi yang aman dan kedua entitas yang berkomunikasi harus menjaga kerahasiaan kunci.

b. Kunci harus sering diubah, setiap kali melaksanakan komunikasi.

2. Kriptografi Asimetri / Symetric Cryptosystem

Konsep dasar kriptografi asimetri sering juga disebut dengan algoritma kunci publik (plaintext key), dengan arti kata kunci yang digunakan untuk melakukan enkripsi dan dekripsi berbeda. Pada algoritma simetri kunci dibagi dua bagian, yaitu:

1. Kunci umum (public key): kunci yang boleh dikataui oleh semua orang / kunci dipublikasikan.

2. Kunci rahasia (private key): kunci yang dirahasiakan / hanya diketui oleh pengirim dan penerima pesan saja.

Kunci-kunci tersebut berhubungan satu dengan yang lain. Dengan kunci plaintext orang dapat mengenkripsi pesan tapi tidak bisa mendekripsikannya. Hanya orang yang memiliki kunci rahasia yang dapat di dekripsi pesan tersebut. Algoritma asimetri dapat mengirim pesan dengan lebih aman dari algoritma simetri.

Dalam kriptografi asimetris digunakan dua buah kunci yang berbeda dalam proses enkripsi dan dekripsi lagi. Salah satu disebut kunci publik (plaintext key) dapat dipublikasikan. Sedangkan kunci yang lain disebut kunci privat (private key) yang harus dirahasiakan. Misalnya bila A mengirim pesan kepada B, A dapat menyandikan pesannya menggunakan kunci plaintext B, dan bila B ingin membaca pesan tersebut, maka Si B tersebut perlu mendekripsikan dengan kunci privatnya. Dengan demikian kedua belah pihak dapat menjamin asal pesan serta keaslian pesan tersebut, karena adanya mekasnisme ini. Contoh dari sistem ini antara lain RSA Scheme dan Merkie Hellman Scheme. Proses enkripsi dan dekripsi pada algoritma asimetri dapat dilihat pada gambar 2.2 dibawah ini:

Gambar 2.2 Proses Enkripsi dan dekripsi Asymetric Cryptosystem

3.1.3. Tujuan Kriptografi

Ditinjau dari tujuan kriptografi sendiri adalah sebagai berikut (Menezes, Oorschot dan Vanstone, 1996):

1. Kerahasiaan (confidentialy)

Merupakan layanan yang bertujuan untuk mendaga agar pesan tidak dapat dibaca oleh pihak-pihak yang tidak memiliki otoritas (wewenang). Dalam kriptografi layanan ini dapat direalisasikan dengan menyandikan pesan ciphertext. Misalnya kata “majid” dapat disandikan dengan “abcde”. Istilah lain yang serupa dengan confidentialy adalah secrecy dan privacy.

2. Integritas data (data integrity)

Merupakan layanan yang menjamin bahwa pesan asli masih uth atau belum dimanipulasi selama proses pengiriman. Dengan kata lain, aspek keamanan ini dapat diungkap sebagai pertanyaan “ apakah pesan yang diterima masih asli atau sudah di lakukan modifikasi”.

3. Otentifikasi (autentification)

Merupakan layanan yang berhubungan dengan identifikasi, baik mengidentifikasi kebenaran pihak-pihak yang berkomunikasi (user autentification atau entity autentification). Dua pihak yang saling berkomunikasi harus dapat mengidentifikasi satu sama yang lainnya sehingga si penerima memastikan sumber pesan.

4. Non-repudiation

Merupakan layanan untuk mencegah entitas yang berkomunikasi melakukan penyangkalan, yaitu si pengirim pesan menyangkal melakukan pengiriman atau penerima pesan menyagkal telah menerima pesan sebelumnya.

3.1.4. Serangan Terhadap Kriptografi

Attack (serangan) merupakan suatu usaha yang dilakukan oleh seorang kriptanalis untuk menemukan kunci atau plaintext ke ciphertext dalam suatu sistem kriptogafi. Kriptanalis akan berusaha untuk menemukan plaintext dari ciphertext tanpa memiliki akses kunci yang digunakan dari sistem kriptografi. Berdasarkan teknik yang digunakan dalam menemukan kunci, serangan dapat dibagi menjadi exahaustive atau brute force attack dan analytical attack (Fitria, 2007).

Exhaustive atau brute force attack merupakan serangan untuk mendapatkan plaintext dai ciphertext dengan mencoba satu persatu kombinasi atau kemungkinan kunci yang digunakan. Dalam hal ini kriptanalis harus tahu jenis algoritma kriptografi yang digunakan oleh pengirim pesan dan juga memiliki sejumlah plaintext dan ciphertext.

a. Berdasarkan keterlibatan penyerang dalam komunikasi, serangan dapat dibagi atas dua macam, yaitu serangan pasif dan serangan aktif:

1. Serangan aktif

Pada serangan ini, penyerang mengintervensi komunikasi dan ikut mempengaruhi sistem untuk keuntungan pribadinya. Misalnya penyerang mengubah aliran pesan seperti menghapus sebagian ciphertext, mengubah ciphertext, menyisipkan potongan ciphertext palsu, me-replay pesan lama, mengubah informasi yang tersimpan, dan sebagainya.

2. Serangan pasif

Pada proses ini, penyerang tidak terlibat dalam komunikasi antara pengirim dan penerima pesan, namun penyerang menyadap semua pertukaran pesan antara kedua entitas tersebut, tujuan utamanya adalah untuk mendapatkan sebanyak mungkin informasi yang digunakan untuk kriptanalis

2.1.5 Teknik Enkripsi dan Dekripsi

a. Teknik Subtitusi

Teknik subtitusi akan diganti suatu kode dengan kode yang lain, degan menggunakan tabel subtitusi. Dapat ditampilkan dalam tabel dibawah ini. Dapat dilihat pada tabel 2.1 dibawah ini:

Tabel 2.1 Teknik subtitusi

A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

M A J I D ! @ # $ % ^ & * ( ) S Y 4 B R U L 0 1 2 3

Tabel subtitusi diatas dibuat secara acak, misalkan huruf A akan diganti dengan huruf M, dan huruf B diganti dengan huruf A begitu seterusnya. Misalkan kata “ENKRIPSI” akan dienkripsi dengan teknik subtitusi dengan tabel diatas menjadi “D(^4$SBS”. Untuk memperoleh kata “ENKRIPSI” kembali maka dilakukan pula melihat tabel subtitusi diatas.

b. Teknik Blocking

Teknik blocking yaitu membagi pesan plaintext kedalam blok-blok pesan yang kemudian akan di enkripsi secara independen. Misalkan kalimat “TEKNIK BLOCKING ENCRYPTION METHODE ” akan dibagi kedalam blok-blok sebagai berikut. Dapat dilihat pada tabel 2.2 dibawah ini:

Tabel 2.2 Teknik Blocking

T K C space Y N H

E space K E P space O

K B I N T M D

N L N C I E E

Selajutnya teknik dapat dienkripsi perblok, misalkan untuk proses pengacakan sederhana dengan pembacaaan yang terbalik yaitu karena proses penyimpanan pada blok dilakukan per kolom, maka proses enkripsi akan dilakukan dengan cara menaruh kalimat “ EDOHTEM NIOTPYRCNE GNIKCOLB KINKET” pada blok-blok pesan berbaris dan membaca dengan perkolom dan menjadi kalimat “TEKNIK BLOCKING ENCRYPTION METHODE” kembali. Agar rumit dapat menggunakan kalkulasi tertentu untuk mengacak susunan blok seperti pada algoritma FEAL dan ElGamal pada skripsi ini.

b. Teknik permutasi

Teknik permutasi sering juga disebut transposisi. Teknik ini memindahkan atau merotasikan karakter dengan aturan tertentu, prinsipnya adalah berlawanan tetap tapi identitasnya yang diacak. Sebelum dilakukakan permutasi, umumnya plaintetxt terlebuh dahulu di bagi menjadi blok-blok dengan panjang yang sama. Untuk contoh diatas, plaintext dibagi menjadi blok terdiri dari 5 karakter, dengan aturan permutasi pada gambar 2.3. berikut:

Gambar 2.3. Teknik Permutasi

Misalkan kalimat “KUNCI RAHASIA” di enkripsi menjadi “ICNUK ISAHAR A” dengan cara membaginya kalimat kedalam 5 blok – 5 blok dan

Dokumen terkait