• Tidak ada hasil yang ditemukan

Sistem Keamanan Pesan Teks Pada Email Menggunakan Algoritma Triple Transposition Vigenre Cipher (TTVC) Dan RSA

N/A
N/A
Protected

Academic year: 2019

Membagikan "Sistem Keamanan Pesan Teks Pada Email Menggunakan Algoritma Triple Transposition Vigenre Cipher (TTVC) Dan RSA"

Copied!
16
0
0

Teks penuh

(1)

BAB 2

TINJAUAN PUSTAKA

Pada bab ini akan dibahas landasan teori, penelitian terdahulu, kerangka pikir dan hipotesis yang mendasari penyelesaian permasalahan dalan pengamanan pesan teks dengan menggunakan algoritma Triple Transposotion Vigenere Chiper dan RSA.

2.1 Keamanan Informasi

Informasi saat ini sudah menjadi sebuah komoditi yang sangat penting bagi sebuah organisasi, perguruan tinggi, lembaga pemerintahan maupun individual, kemampuan dalam mengakses dan menyediakan informasi secara cepat (Rahardjo, B 2005). Karena pentingnya sebuah informasi, seringkali informasi yang diinginkan hanya dapat diakses oleh orang tertentu misalnya pihak penerima yang diinginkan, dan jika informasi ini sampai diterima oleh pihak yang tidak diinginkan akan berdampak kerugian pada pihak pengirim.

(2)

2.2 Kriptografi

Kriptografi adalah ilmu yang berdasarka pada teknik matematika yang berurusan dengan keamanan informasi seperti kerahasian dan otentikasi entitas (Sadikin,2012). Adapun tujuan dari kriptografi yang didefenisikan dalam (Rinaldi, 2006) adalah:

1. Kerahasiaan (confidentiality), adalah layanan yang ditujukan untuk menjaga agar pesan tidak dapat dibaca oleh pihak-pihak yang tidak berkepentingan.

2. Integritas Data (data integrity), adalah layanan yang menjamin bahwa pesan masih asli atau belum pernah dimanipulasi selama pengiriman. 3. Otentikasi (authentication), adalah layanan yang berhubungan dengan

identifikasi, baik mengidentifikasi kebenaran pihak-pihak yang berkomunikasi (user authentication atau entity authentication) maupun mengidentifikasi kebenaran sumber pesan (data origin authentication). Dua pihak yang saling berkomunikasi harus dapat mengotentikasi satu sama lain sehingga ia dapat memastiak sumber pesan.

4. Nirpenyangkalan (non-repudiation), adalah layanan untuk mencegah entitas yang berkomunikasi melakukan penyangkalan, yaitu pengiriman pesan menyangkal melakukan pengiriman atau penerima pesan menyangkal telah menerima pesan.

2.3 Mekanisme Kriptografi

Enkripsi (Encryption), adalah proses yang dilakukan untuk mengubah pesan yang tidak disandikan (plaintext) ke dalam bentuk yang tidak dapat dibaca (ciphertext), dekripsi (Decryption) adalah proses yang dilakukan untuk mengubah pesan yang tidak dapat dibaca kedalam bentuk yang dapat dibaca dan dimengerti. Proses enkripsi dan dekripsi diatur oleh satu atau beberapa kunci kriptografi (Rinaldi, 2006)

(3)

suatu fasilitas untuk mengkonversikan plaintext ke ciphertext dan sebaliknya. Urutan proses kerja secara umum dapat digambarkan pada Gambar 1 sebagai berikut:

Gambar 2.1 Mekanisme Kriptografi Sumber : (Lia Silviana, 2013)

Enkripsi (encryption), adalah proses yang dilakukan untuk mengubah pesan yang tidak disandikan (plaintext) ke dalam bentuk yang tidak dapat dibaca (ciphertext), dekripsi (decryption) adalah proses yang dilakukan untuk mengubah pesan yang tidak dapat dibaca kedalam bentuk yang dapat dibaca dan dimengerti. Proses enkripsi dan dekripsi diatur oleh satu atau beberapa kunci kriptografi. Dalam suatu sistem dimana terdapat algoritma kriptografi, ditambah seluruh kemungkinan plaintext, ciphertext dan kunci-kuncinya disebut kriptosistem (cryptosystem atau cryptographic system). 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. Berdasarkan kunci yang digunakan untuk enkripsi dan dekripsi, kriptografi dapat dibedakan menjadi kriptografi kunci simetri (Symmetric-key Cryptography) dan kriptografi kunci asimetri (Asymmetric-key Cryptography).

2.4 Algoritma Kriptografi

(4)

2.4.1 Algoritma Simetrik (symmetric algorithms)

Algoritma simetrik adalah algoritma kriptografi berdasarkan kuncinya dibedakan menjadi dua yaitu algoritma aliran (Stream Cipher) dan algoritma blok (Block Cipher). Pada algoritma Stream Cipher, proses penyandiannya berorientasi pada satu bit atau satu byte data. Sedangkan pada algoritma blok, proses penyandiannya berorientasi pada sekumpulan bit atau byte data. Contoh algoritma simetris yang terkenal adalah DES (Data Encryption Standard). Proses algoritma simetrik dapat dilihat pada Gambar 2.2.

Gambar 2.2 Proses Algoritma Simetrik Sumber : (Lia Silviana, 2013)

Algoritma ini menggunakan kunci yang sama untuk proses enkripsi dan dekripsi. Dalam system kriptografi kunci simetrik, kunci yang digunakan untuk proses enkripsi dan dekripsi pada prinsipnya identik, tetapi satu buah kunci dapat diturunkan dari kunci yang lainnya. Kunci – kunci ini harus dirahasiakan. Oleh sebab itu sistem ini sering disebut sebagai secret key crypto system.

2.4.2 Algoritma Asimetrik (Asymmetric Algorithms)

(5)

1. Mudah secara komputasi bagi suatu pihak B untuk mengkrontuksi sepasang kunci asimetrik (kunci publik KU, kunci pribadi KR).

2. Mudah secara komputasi bagi pengirim A, dengan memiliki kunci publik B dan data yang ingin dienkripsi, M, untuk menghasilkan ciphertext (C).

3. Mudah secara komputasi bagi penerima B untuk mendekripsi ciphertext yang dihasilkan menggunakan kunci pribadinya untuk mengembalikan data asli.

4. Tidak bisa secara komputasi bagi pihak ketiga untuk memperoleh kunci pribadi KRb hanya dengan mengetahui kunci publik KUb.

5. Tidak bisa secara komputasi bagi pihak ketiga untuk mengembalikan data asli M hanya dengan mengetahui kunci publik KUb dan ciphertext C.

6. Fungsi enkripsi dan dekripsi bisa diterapkan dengan urutan yang dibalik.

Kegunaan persyaratan yang keenam adalah untuk penerapan tanda tangan digital (digital signature) yang digunakan memecahkan isu otentikasi dalam masalah keamanan data.

Proses enkripsi publik key sederhana melibatkan empat tahap berikut :

1. Setiap user didalam jaringan membuat sepasang kunci untuk digunakan sebagai kunci enkripsi dan dekripsi dari pesan yang akan diterima. 2. User kemudian mempublikasikan kunci enkripsinya dengan

menempatkan kunci publiknya ke tempat umum. Pasangan kunci yang lain tetap dijaga kerahasiaannya.

3. Jika user A ingin mengirimkan data ke user B, ia akan mengenkripsikan data dengan menggunakan kunci publik user B. 4. Pada saat user B mendekripsikan data dari user A, ia akan

(6)

Gambar 2.3 Proses Algoritma Asimetrik Sumber : (Lia Silviana, 2013)

2.4.3 Algoritma RSA

Karena semakin berkembangnya pertukaran data, khususnya dalam wireless dan local area network (LAN), hal ini memberi kesempatan yang besar untuk mencegat data dan memalsukan pesan. Satu-satunya cara yang mudah untuk menjaga keamanan dan keintegritasan informasi antara pengirim dan penerima adalah dengan menggunakan kriptografi kunci publik (Satrya, 2013).

RSA adalah sistem kriptografi dengan kunci publik yang pertama kali dapat berjalan dan dipraktekkan, ditemukan pada tahun 1977 dan dipublikasikan pada tahun 1978 oleh Rivest, Shamir dan Adleman (RSA) di Institut Teknologi Massachusetts. RSA adalah sistem kriptografi yang masih paling banyak digunakan seperti transaksi online, email, kartu pintar dan umumnya pada aplikasi mobile commerce (Yan, 2008).

Rumus dasar dari metode enkripsi dan dekripsi RSA dinotasikan kedalam persamaan (2.1) dan (2.2) berikut :

C MC (mod N) (2.1)

Dan

C Md (mod N) (2.2)

Penjelasan:

n = p * q

p dan q = Bilangan prima

m = Plaintext

(7)

e = Encryption exponent d = Decryption exponent ɸ (n) = (p-1) (q-1)

Tahapan Algoritma RSA :

1. Pilih dua bilangan prima secara acak dan tidak sama. 2. Hitung perkalian p dan q, simpan dalam variabel n. 3. Hitung ɸ(n) ≡ (p-1).(q-1)

4. Pilih e secara acak dengan syarat, FPB(e, ɸ (n)) = 1 5. Hitung d ≡ e-1(mod ɸ(n))

6. Rahasiakan p, q, ɸ (n) dan d 7. Kirimkan e dan n

Contoh 1. kasus sederhana algoritma Kriptografi RSA: p = 47 (bilangan prima) dan q = 71 (bilangan prima) n = p.q = 3337

ɸ (n) = (p-1)*(q-1) = 3220 e = 79 (pilih angka acak) d = 79 -1 mod 3220 dicoba K = 1,2,..,dst

d = 1019 (dipilih karena hasilnya bilangan bulat)

Misalkan plaintext M = “ABC”, ubah kedalam ASCII menjadi “65 66 67” Enkripsi dengan kunci publik E = 79 dan N = 3337:

M1 = 65 -> C1 = 6579 mod 3337 = 541 M2 = 66 -> C2 = 6679 mod 3337 = 795 M3 = 67 -> C3 = 6779 mod 3337 = 1479 Dekripsi dengan kunci D = 1019:

(8)

Untuk mendapatkan nlai dari operasi pemangkatan besar bilangan bulat modulo digunakan metode Fast Exponentiation (Munir, 2006). Berikut Penjelasan metode Fast Exponentiation. Dinotasikan dalam persamaan (2.3) dan (2.4) :

ab mod m = [(a mod m)(b mod m)] mod m (2.3) (abc....) mod m = [(a mod m)(b mod m)(c mod m)....] mod m (2.4)

Untuk lebih jelasnya mengenai langkah-langkah metode fast exponentiation dapat dilihat pada contoh berikut.

Contoh 2. Hitung nilai dari 4540 mod 256.

Sebagai ilustrasi, untuk menghitung 4540 mod 256 dapat dilakukan sebagai berikut.

4540 = 4532 . 458

452 mod 256 = 2025 mod 256 = 233

454 mod 256 = 452 . 452 mod 256 = [(452 mod 256) . (452 mod 256)] mod 256

= 2332 mod 256 = 17

458 mod 256 = 454 . 454 mod 256 = [(454 mod 256) . (454 mod 256)] mod 256

= 172 mod 256 = 33

4516 mod 256= 458 . 458 mod 256 = [(458 mod 256) . (458 mod 256)] mod 256

= 332 mod 256 = 65

4532 mod 256= 4516 . 4516 mod 256 = [(4516 mod 256) . (4516 mod 256)] mod 256

(9)

4540 mod 256 = [(4532 mod 256) . (458 mod 256)] mod 256 = 4257 mod 256 = 161

Jadi, nilai dari 4540 mod 256 = 233.

2.4.4 Algoritma Triple Transposition Vigènere Cipher (TTVC)

Dalam proses pengiriman pesan kerahasian itu menjadi kunci utama dalam proses pengiriman. Banyak cara user mengamankan pesan email menggunakan beberapa metode pengamanan contohnya algoritma Blowfish, algoritma El gamal, tetapi masih punya beberapa kelemahan yang dapat membuat pesan email dapat disusupi oleh orang yang tidak bertanggung jawab sehingga muncul algoritma terbaru yaitu Triple Tranposition Vigenere Cipher.

Triple Transposition Vigènere Cipher adalah metode enkripsi dengan cara mengulang teknik Vigènere Cipher yang setiap plaintextnya dilakukan transposisi terlebih dahulu sebanyak tiga kali dengan menggunakan kunci yang tiap kuncinya harus berbeda satu dengan yang lainnya. Metode Triple Transposition Vigènere Cipher dapat digambarkan seperti Gambar 2.4:

Gambar 2.4 Proses Algoritma Triple Transposition Vigènere Cipher Sumber : (Caroline, 2010)

Proses yang terjadi pada Triple Transposition Vigènere Cipher terbagi menjadi dua bagian. Metode transposisi dapat disimbolkan dengan T dan

Plainteks

Transposisi

Subsitusi

Enkripsi

(10)

metode substitusi menggunakan vigenere yang disimbolkan dengan E serta kunci untuk melakukan vigenere K. Secara matematis metode Triple Transposition Vigènere Cipher ini dapat dituliskan sebagai:

Proses enkripsi: P = T1’(S1’(T2’(S2’(T3’(S3’(C))))))

Bila dijabarkan, ciphertext diperoleh dengan mentransposisikan plaintext, kemudian hasilnya disubstitusi menggunakan kunci pertama, lalu

ditransposisikan kembali, lalu disubstitusi dengan menggunakan kunci yang berbeda dari kunci pertama, disebut saja kunci kedua, setelah itu dilakukan transposisi lagi yang kemudian diakhiri dengan proses substitusi menggunakan kunci ketiga. Substitusi disini menggunakan Vigènere Cipher.

Ketiga algoritma transposisi sudah didefinisikan terlebih dahulu dengan suatu kunci atau suatu aturan tertentu setiap kali proses enkripsi metode transposisinya akan selalu tetap. Untuk metode enkripsi ini, spasi tidak diperhitungkan sehingga lebih baik dihilangkan saja. Rumus untuk transposisi adalah membagi panjang ciphertext dengan suatu kunci tertentu yang ditentukan oleh pengguna yang kemudian teks dibaca secara vertikal dari kolom pertama. Berikut adalah tabel bujursangkar vigenere, dapat dilihat pada Gambar 2.5.

(11)

Cara menggunakan bujursangkar Vigènere adalah sebagai berikut: baris paling atas menyatakan huruf-huruf plaintext dan kolom paling kiri menyatakan huruf-huruf pada kunci. Pertama tarik garis vertikal dari huruf plaintext kebawah. Setelah itu tarik garis horizontal dari huruf kunci ke kanan.

Cari titik perpotongannya. Perpotongan kedua garis tersebut menyatakan huruf ciphertext dari huruf plaintext yang bersangkutan. Sebenarnya karakter

ciphertext didapat dengan rumus c(p) = (p+k) mod 26.

Rumus enkripsi Vigenere Cipher :

Ci = ( Pi + Ci ) -26kalau hasil penjumlahan Pi dan Ki lebih dari 26

Rumus dekripsi Vigenere Cipher :

Pi = (Ci– Ki) +26 kalau hasil pengurangan Ci dengan Ki minus

Dimana :

Ci = nilai desimal karakter ciphertext ke – i Pi = nilai desimal karakter plaintext ke – i Ki = nilai desimal karakter ke – i

Berikut ini adalah contoh proses transposisi dan substitusi dari algoritma TTVC, dapat dilihat pada Tabel 2.1.

Table 2.1. Tabel proses transposisi dan substitusi menjadi hasil TTVC

Plaintext ( P ) :

INI ADALAH PLAINTEKS KRIPTOGRAFI

(12)

I N I

A D A

L A H

P I A

I N T

E K S

K R I

P T O

G R A

F I

Hasil T1 = IALPIEKPGFNDAINKRTRIIAHTSIOA

Subsititusi pertama ( S1) dengan kunci = SEMBILAN

AEQQPKCYJZEIWNXJXDJQLHNLWUPI

(13)

Substitusi ketiga ( S3 ) dengan kunci = SEBELAS :

YYXTRIAUBYTAXVFGIWPYDLUFJBCJV

Hasil enkripsi adalah YYXTRIAUBYTAXVFGIWPYDLUFJBCJV

A E X Q Q

P K C Y J

Z E I W N

X J X D J

Q L H N L

W U P I

Hasil T2 = APZXQWEKEJLUXCIXHPQYWDNIOJNJL

Transposisi ketiga ( T3 ) dengan kunci = 11 :

G P I X X C T E Q R

U G C P D H Q F C D

W I X P N S

(14)

Kemudian Proses dekripsi dapat dilakukan dengan arah sebaliknya. Bila dirumuskan maka akan terlihat sebagai berikut:

Proses dekripsi: C = S3(T3(S2(T2(S1(T1(P))))))

Maksud T’ disini adalah transposisi kebalikkannya

2.5 PHP

Menurut Prasetyo (2008), PHP (Hypertext Preprocessor) merupakan skrip yang bersifat server-side yang ditambahkan ke dalam skrip HTML. PHP merupakan singkatan dari Personal Home Page Tools. Skrip ini yang akan membuat suatu aplikasi website dapat diintegrasikan ke dalam HTML sehingga website tersebut tidak lagi bersifat statis, namun menjadi bersifat dinamis. Maksud dari bersifat server-side itu sendiri adalah pengerjaan skrip di lakukan di server, baru kemudian

hasilnya dikirim ke browser. Cara penulisan script PHP terbagi atas empat style, yaitu:

1. Standard Style, dengan format: <?php … ?> 2. Short Style, dengan format: <? … ?>

3. Javascript Style, dengan format: <script language=’PHP’> … </script>

4. ASP Style, dengan format: <% … %>

2.6 MySQL

MySQL merupakan server database yang mendukung perintah SQL (Structured Query Language). Perintah dalam MySQL disebut dengan pernyataan (statement)

(15)

2.7 UML(Unified Modelling Languange)

Untuk membantu dalam pengembangan perangkat lunak dikenal istilah pemodelan. Salah satu pemodelan yang saat ini paling banyak digunakan oleh pengembang perangkat lunak adalah UML (Unified Modelling Language). UML adalah standar bahasa yang sering digunakan dalam bidang industri untuk mendefinisikan requirement (kebutuhan), membuat analisis dan desain, serta menggambarkan arsitektur dalam pemrograman berorientasi objek (Satrya, 2013).

Ada beberapa hal yang dimaksud dalam kompleksitas pada perangkat lunak (Rosa, et al. 2011):

1. Kompleksitas domain atau permasalahan perangkat lunak 2. Kesulitas mengelola proses pengembangan perangkat lunak 3. Kemungkinan fleksibilitas perubahan perangkat lunak

4. Permasalahan karakteristik bagian-bagian perangkat lunak secara diskrit

UML terbagi atas 3 (tiga) kategori, yaitu diagram struktur (structure diagram), diagram kelakuan sistem (behaviour diagram), dan diagram interaksi (interaction diagram). Dalam pembangunan sistem, penulis menggunakan diagram use

case dari kategori diagram kelakuan sistem, untuk menggambarkan interaksi

antara satu atau lebih aktor dengan perangkat lunak (Rosa, et al. 2011).

2.8 Penelitian Terdahulu

Dalam melakukan peneletian, penulis membutuhkan beberapa bahan peneletian yang sudah pernah dilakukan peneliti-peneliti lainnya mengenai masalah sistem keamanan file teks pada email menggunakan kombinasi algoritna kriptografi TTVC dan RSA.

Satria Prayudi (2013) telah mencoba menggunkanan pendekatan kombinasi Algoritma RSA 512-Bit dan One Time Pad dalam penelitian pengamanan pesan

pada nic messenger.

Lia Silviana (2013) telah mencobamenggunakan pendekatan Algortima kunci public RSA dalam penelitian sistem tanda tangan digital pada pesan teks.Untuk

(16)

Table 2.2 Tabel penelitian terdahulu

No Peneliti Judul Penelitian

1 Satrya Prayudi (2013)

Kombinasi Algoritma RSA 512-Bit dan One Time Pad Untuk Pengamanan Pesan Pada NIC MESSENGGER

2 Lia silviana (2013)

Gambar

Gambar 2.1 Mekanisme Kriptografi
Gambar 2.3 Proses Algoritma Asimetrik
Gambar  2.4 Proses Algoritma Triple Transposition Vigènere Cipher
Gambar 2.5 Bujurangkar Vigenere
+3

Referensi

Dokumen terkait

1 Hata, maka pada masa itu akan bangkit berdiri Michael, penghulu besar itu, jang memeliharakan perkara segala bani bangsamu; setelah sudah ada suatu masa kesukaran, begitu

Dari hasil penelitian diatas dapat disimpulkan bahwa optimalisasi bimbingan dan konseling yang diberikan oleh guru BK, untuk memberikan bimbingan terhadap siswa

Berdasarkan latar belakang di atas, yang menjadi tujuan dalam penelitian ini adalah untuk Mengetahui Hubungan Antara Penanaman Nilai Kedisiplinan Terhadap Hasil Belajar PKn

Sehingga masyarakat akan mengkonsumsi bahan makanan bergizi dalam jumlah yang kurang, dengan demikian penyakit kekurangan gizi akan mudah timbul Berdasarkan pada

zajednička obilježja dvaju ili više objekata, događaja ili pojava (uspoređivat će se hrvatske listane kompanije i europske). U empirijskom dijelu korištene su

Bertujuan menganalisis implementasi, relevansi Pendidikan Kewarganegaraan dalam mendukung nilai karakter religius, serta menganalisis kendala dan upaya dalam

Penelitian ini bertujuan untuk menganalisis kapasitas lendutan, daktalitas dan kekakuan dari struktur balok beton bertulang yang diperkuat GFRP dengan perendaman air

Hasil penelitian menunjukkan bahwa: (1) ada perbedaan motivasi belajar siswa yang dibelajarkan dengan praktikum dan demonstrasi dalam pembelajaran inkuiri