• Tidak ada hasil yang ditemukan

BAB 2 TINJAUAN PUSTAKA

N/A
N/A
Protected

Academic year: 2021

Membagikan "BAB 2 TINJAUAN PUSTAKA"

Copied!
18
0
0

Teks penuh

(1)

BAB 2

TINJAUAN PUSTAKA

2.1 Short Message Service (SMS)

Short Message Service (SMS) adalah salah satu tipe Instant Messaging (IM) yang memungkinkan user untuk bertukar pesan singkat kapanpun, walaupun user sedang melakukan panggilan data atau suara. Kata “short” yang berarti singkat pada SMS merujuk pada ukuran maksimal dari suatu pesan teks yaitu 160 karakter pada alfabet latin. Untuk alfabet lainnya, misalnya alfabet atau kanji China, ukuran maksimum SMS-nya adalah 70 karakter [11].

2.1.1 Sejarah SMS

SMS merupakan fasilitas standar dari Global Sistem for Mobile Communication (GSM) yang dikembangakan dan distandarisasi oleh European Telecommunication Standard Institute (ETSI). Fasilitas ini dipakai untuk mengirim dan menerima pesan dalam bentuk teks ke dan dari sebuah ponsel. Isu SMS pertama kali muncul di belahan Eropa pada sekitar tahun 1991 bersama sebuah teknologi komunikasi wireless yang saat ini cukup banyak penggunanya, yaitu Global Sistem for Mobile comunication (GSM). Dipercaya bahwa pesan pertama yang dikirimkan menggunakan SMS dilakukan pada bulan Desember 1992, dikirimkan dari sebuah Personal Computer (PC) ke telepon mobile (bergerak) dalam jaringan GSM milik Vodafone Inggris. Perkembangannya kemudian merambah ke benua Amerika, dipelopori oleh beberapa operator komunikasi bergerak berbasis digital seperti BellSouth Mobility, PrimeCo, Nextel, dan beberapa operator lain.

(2)

2.1.2 Arsitektur SMS

SMS dimaksudkan untuk menjadi alat pertukaran informasi antara dua mobile. Elemen-elemen utama pada arsitektur SMS terdiri dari Short Message Entity (SME), Short Message Service Center (SMSC) dan Email Gateway.

2.1.2.1 Short Message Entity (SME)

Short Message Entity (SME) adalah elemen yang dapat mengirim atau menerima pesan singkat. SME dapat berupa software aplikasi pada mobile handset, dapat juga berupa server yang terkoneksi dengan SMSC secara langsung atau melaui gateway.

2.1.2.2 Short Message Service Center (SMSC)

Short Message Service Center (SMSC) memegang peran kunci pada arsitektur SMS. SMSC adalah kombinasi perangkat lunak dan perangkat keras yang bertanggung jawab memperkuat, menyimpan dan meneruskan pesan pendek antar SME dan piranti bergerak (mobile phone). Secara fisik SMSC dapat berwujud sebuah PC biasa yang mempunyai interkonektivitas dengan jaringan GMS.

2.1.2.3 Email Gateway

Email Gateway Short memungkinkan sebuah email beroperasi menjadi SMS dengan interkoneksi SMSC pada internet. Dengan email gateway pesan dapat dikirim dari sebuah SME menuju sebuah host internet dan sebaliknya.

(3)

2.1.3 Cara Kerja SMS

Ketika pengirim mengirim SMS, maka pesan terlebih dahulu dikirim ke Mobile Switching Center (MSC) melalui jaringan seluler yang tersedia meliputi tower Base Transceiver Station (BTS), diteruskan ke Base Station Controller (BSC), kemudian sampai ke MSC. Dari MSC, SMS diteruskan ke SMSC untuk disimpan. SMSC akan memeriksa melalui Home Location Register (HLR) untuk mengetahui apakah handpone tujuan sedang aktif. Jika handpone tujuan aktif maka pesan disampaikan MSC melalui jaringan yang sedang menghandle penerima (BSC dan BTS). Jika handpone sedang tidak aktif maka pesan akan disimpan di SMSC, menunggu pemberitahuan MSC bahwa handpone sudah aktif kembali dan seterusnya SMS dikirim dengan batas maksimum waktu tunggu yaitu validity period dari pesan SMS itu sendiri.

Dengan teknologi GSM/GPRS, operator jaringan telepon dapat dengan mudahnya melakukan pertukaran pesan dari jaringan yang berbeda. Pemetaan sinyal dilakukan di antara dua jaringan telepon. dalam pemetaan dua jaringan ini, SMSC dari pembuat SME mengolah HLR jaringan tujuan untuk mendapatkan informasi mengenai penerima dan mengirimnya langsung. Dalam contoh ini, SMSC penerima pesan tidak berpengaruh. Ilustrasi contoh tersebut pada gambar 2.1

Gambar 2.1 Proses Pengiriman SMS antar sesama teknologi jaringan

Untuk pengiriman pesan diantara teknologi jaringan yang berbeda (seperti GSM/GPRS dan CDMA), dilakukan dengan menyambungkan dua gateway jaringan

(4)

telepon dengan menggunakan protokol pertukaran. Seperti yang di ilustrasikan pada gambar 2.2

Gambar 2.2 Proses Pengiriman SMS antar teknologi jaringan yang berbeda

Dalam pengiriman antara dua teknologi jaringan yang berbeda terdapat beberapa tahap. Pertama, pesan dibuat dan dikirim oleh SME ke SMSC pengirim. Selanjutnya SMSC pengirim meneruskan pesan melalui SMSC penerima dan SMSC penerima mengirimkan pesan ke SME penerima. Jika status report diminta oleh pengirim pesan, maka SMSC penerima membuat status report dan mengirimkanya ke SME pengirim.

2.1.4 Sistem Kerja SMS

Semua SMS yang dikirim atau diterima sebenarnya telah mengalami pengolahan sebelumnya. Kumpulan pesan yang berupa teks telah mengalami proses yang cukup rumit, tidak semudah ketika mengetik dan mengirim SMS tersebut. Seperti halnya teks yang kita ketikkan dirubah ke dalam format PDU (Protocol Data Unit ) dimana pada tahap ini teks diolah sedemikian rupa sehingga akhirnya dapat diterima dan di baca oleh penerima.

2.1.5 Protocol Data Unit (PDU)

Data yang mengalir ke atau dari SMS Center harus berbentuk PDU (Protocol Data Unit). PDU berisi bilangan heksa desimal yang mencerminkan bahasa I/O. PDU terdiri atas beberapa Header. Header untuk kirim SMS ke SMS Center berbeda

(5)

dengan SMS yang diterima dari SMS Center. Maksud dari bilangan heksa desimal adalah bilangan yang terdiri atas 0, 1, 2 , 3, 4, 5 ,6 ,7 ,8 ,9 ,A ,B ,C ,D ,E ,F.

Data di PDU mempunyai format data oktet yaitu format data 8 bit. Adapun karakter yang dipakai mempunyai format data 7 bit (septet). Untuk menterjemahkan karakter menjadi data PDU supaya bisa dimengerti, maka dilakukan proses konversi yaitu dari data 7 bit (format septet) ke data 8 bit (format oktet).

2.2 Kriptografi

Kriptografi dapat diartikan sebagai ilmu atau seni untuk menjaga keamanan pesan. Ketika suatu pesan dikirim dari suatu tempat ke tempat lain, isi pesan tersebut mungkin dapat disadap oleh pihak lain yang tidak berhak untuk mengetahui isi pesan tersebut. Untuk menjaga pesan, maka pesan tersebut dapat diubah menjadi suatu kode yang tidak dapat dimengerti oleh pihak lain.

2.2.1 Definisi Kriptografi

Kriptografi berasal dari bahasa Yunani, crypto dan graphia. Crypto berarti secret (rahasia) dan graphia berarti writing (tulisan). Menurut terminologinya kriptografi adalah ilmu dan seni untuk menjaga keamanan pesan ketika dikirim dari suatu tempat ke tempat yang lain [1]. Selain definisi tersebut, terdapat pula definisi yang menjelaskan bahwa kriptografi adalah ilmu yang mempelajari teknik-teknik matematika yang berhubungan dengan aspek keamanan informasi seperti kerahasiaan, integritas data, serta otentikasi [6].

Secara umum, kriptografi merupakan teknik penyandian data dengan cara mengenkripsi informasi awal (plaintext) yang dikodekan dengan kunci tertentu menggunakan algoritma enkripsi tertentu sehingga menghasilkan informasi baru (ciphertext) yang tidak dapat dibaca secara langsung. Ciphertext tersebut dapat

(6)

dikembalikan lagi menjadi informasi awal (plaintext) melalui proses dekripsi. Proses kriptografi secara umum dapat dilihat pada Gambar 2.3.

.

Gambar 2.3 Proses Enkripsi dan Dekripsi sederhana

2.2.2 Sejarah Kriptografi

Kriptografi mempunyai sejarah yang sangat menarik dan panjang sejalan dengan sejarah kehidupan manusia. Kriptografi sudah digunakan 4000 tahun yang lalu yang diperkenalkan oleh orang-orang Mesir untuk mengirim pesan ke pasukan militer yang berada di lapangan dan supaya pesan tersebut tidak terbaca oleh pihak musuh walaupun kurir pembawa pesan tersebut tertangkap oleh musuh [10].

Informasi lengkap mengenai sejarah kriptografi dapat ditemukan di dalam buku David Kahn yang berjudul The Codebreakers. Buku yang tebalnya 1000 halaman ini menulis secara rinci sejarah kriptografi mulai dari penggunaan kriptografi oleh bangsa Mesir 4000 tahun yang lalu (berupa hieroglyph yang tidak standard pada piramid) hingga penggunaan kriptografi pada abad ke-20.

Perkembangan komputer dan sistem komunikasi pada tahun 60-an berdampak pada permintaan dari sektor-sektor privat sebagai sarana untuk melindungi informasi dalam bentuk digital dan untuk menyediakan layanan keamanan. Dimulai dari usaha Feistel pada IBM di awal tahun 70-an dan mencapai puncaknya pada 1977 dengan pengangkatan Data Encryption Standard (DES) sebagai standar pemrosesan informasi federal US untuk mengenkripsi informasi yang unclassified. DES merupakan mekanisme kriptografi yang paling dikenal sepanjang sejarah.

(7)

2.2.3 Tujuan Kriptografi

Secara umum tujuan kriptografi diciptakan adalah untuk merahasiakan suatu pesan agar tidak bisa dibaca oleh pihak yang tidak absah. Berpedoman dari tujuan umum tersebut, terdapat empat tujuan mendasar kriptografi digunakan dalam bidang keamanan informasi, yaitu:

1. Confidentiality (Kerahasiaan), yaitu layanan yang digunakan untuk menjaga isi informasi dari siapapun kecuali yang memiliki otoritas atau kunci rahasia untuk membuka/mengupas informasi yang telah disandi. Biasanya dilakukan dengan cara membuat suatu algoritma matematis yang mampu mengubah data hingga menjadi sulit untuk dibaca dan dipahami.

2. Data Integrity (Integritas Data), yaitu layanan yang mampu mengenali atau mendeteksi adanya manipulasi (penghapusan, pengubahan atau penambahan) data yang tidak sah (oleh pihak lain).

3. Authentication (Otentikasi), yaitu layanan yang 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 diotentikasi keaslian, isi datanya, waktu pengiriman, dan lain-lain.

4. Non-repudiation (Nirpenyangkalan), yaitu layanan yang dapat mencegah terjadinya penyangkalan aksi terhadap pengiriman atau terciptanya suatu informasi oleh yang mengirimkan/membuat.

2.2.4 Komponen Cipher

Algoritma kriptografi atau cipher terdiri dari tiga fungsi dasar, yaitu: 1. Enkripsi.

(8)

Merupakan hal yang sangat penting dalam kriptografi, merupakan pengamanan data yang dikirimkan agar terjaga kerahasiaannya. Pesan asli disebut plaintext, yang diubah menjadi kode-kode yang tidak dimengerti. Enkripsi bisa diartikan dengan cipher atau kode. Sama halnya dengan kita tidak mengerti akan sebuah kata maka kita akan melihatnya di dalam kamus atau daftar istilah. Beda halnya dengan enkripsi, untuk mengubah teks-asli ke bentuk teks-kode kita menggunakan algoritma yang dapat mengkodekan data yang kita inginkan.

2. Dekripsi.

Merupakan kebalikan dari enkripsi. Pesan yang telah dienkripsi dikembalikan ke bentuk asalnya (teks-asli), disebut dengan dekripsi pesan. Algoritma yang digunakan untuk dekripsi tertentu berbeda dengan algoritma yang digunakan untuk dekripsi.

3. Kunci.

Yang dimaksud di sini adalah kunci yang dipakai untuk melakukan enkripsi dan dekripsi. Kunci terbagi menjadi dua bagian, kunci rahasia (private key) dan kunci umum (public key).

Algoritma kriptografi dibagi menjadi dua bagian berdasarkan kunci yang dipakai: 1. Algoritma Kunci Simetri (menggunakan satu kunci untuk enkripsi dan dekripsinya), 2. Algoritma Kunci Asimetri (menggunakan kunci yang berbeda untuk enkripsi dan dekripsi),

2.2.4.1 Algoritma Kunci Simetri

Ini adalah jenis kriptografi yang paling umum dipergunakan. Kunci untuk membuat pesan yang disandikan sama dengan kunci untuk membuka pesan yang disandikan itu. Jadi pembuat pesan dan penerimanya harus memiliki kunci yang sama persis. Siapapun yang memiliki kunci tersebut, termasuk pihak-pihak yang tidak diinginkan, dapat membuat dan membongkar rahasia ciphertext. Masalah yang paling jelas di sini terkadang bukanlah masalah pengiriman ciphertext-nya, melainkan masalah bagaimana menyampaikan kunci simetris tersebut kepada pihak yang diinginkan.

(9)

Contoh algoritma kunci simetris yang terkenal adalah DES (Data Encryption Standard) dan RC-4.

Gambar 2.4 Skema Kriptografi Kunci Simetri

Dua kategori yang termasuk pada algoritma simetris ini adalah algoritma block cipher dan stream 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 diantaranya Data Encryption Standard ( DES ), Advanced Encrytion Standard (AES), dan Blowfish.

Sedangkan stream cipher ( cipher aliran ) adalah cipher yang berasal dari hasil XOR antara bit plaintext dengan setiap bit kuncinya. Stream cipher sangat rawan terhadap attack pembalikan bit. Beberapa model algoritma stream cipher antara lain adalah algoritma One Time Pad ( OTP ), algoritma Rivest Code 4 (RC 4), algoritma IDEA, algoritma Blowfish, dan algoritma RC2.

2.2.4.2 Algoritma Kunci Asimetri

Kriptografi kunci asimetri menggunakan kunci yang berbeda (pasangan kunci) untuk keperluan proses enkripsi dan proses dekripsi. Perbedaan yang sangat terlihat antara kriptografi kunci simetri dan kriptografi kunci asimetri terletak pada sifat kunci, pada kriptografi kunci simetri, kunci bersifat rahasia, sedangkan pada kriptografi kunci asimetri terdapat pasangan kunci yang memiliki dua sifat yang berbeda, yaitu kunci rahasia (private key) untuk proses dekripsi dan kunci publik (public key) untuk proses

(10)

enkrispsi. Karena sifat salah satu kuncinya publik maka kriptografi kunci asimetri sering disebut juga kriptografi algoritma kunci publik.

Distribusi kunci pada kritografi kunci asimetri sangat mudah, karena kunci enkrispsi bersifat publik maka distribusi kunci dapat dilakukan di jalur mana saja bahkan jalur yang ingin diamankan sekalipun.

Gambar 2.5 Skema Kriptografi Kunci Asimetri

Kriptografi ini bukan tanpa celah, karena kunci enkripsinya yang bersifat publik maka kriptografi ini relatif lemah terhadap serangan cryptanalist terutama serangan chosen-plaintext. Selain itu, kriptografi ini memiliki kelemahan lain dalam hal kecepatan. Kriptografi asimetri 1000 kali lebih lamban dibandingkan kriptografi simetri. Adapun keunggulan dari kriptografi kunci asimetri selain distribusi kunci yang sangat mudah adalah manajemen kunci yang tidak rumit karena tiap komunikan hanya butuh sepasang kunci (enkripsi dan dekripsi), sehingga dapat dituliskan untuk n komunikan yang berkomunikasi hanya dibutuhkan n pasang kunci.

Terdapat banyak algoritma yang dikembangkan pakar-pakar kriptografi untuk algoritma kunci asimetri, diantaranya: algoritma RSA, algoritma Digital Signature Algorithm (DSA), algoritma Diffie-Hellman ( DH ), algoritma McEliece, algoritma Rabin, algoritma Knapsack, algoritma LUC, dan algoritma El Gamal.

(11)

2.2.5 Jenis-Jenis Serangan Terhadap Kriptografi

Serangan terhadap sistem kriptografi dapat dikelompokkan dengan beberapa cara. Berdasarkan keterlibatan penyerang dalam komunikasi, serangan dapat dibagi atas dua macam, yaitu serangan aktif dan serangan pasif.

1. Serangan aktif

Pada jenis serangan ini, penyerang mengintervensi komunikasi dan ikut mempengaruhi sistem untuk keuntungan dirinya. 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 jenis serangan ini, penyerang tidak terlibat dalam komunikasi antara pengirim dan penerima, namun penyerang menyadap semua pertukaran pesan antara kedua entitas tersebut. Tujuannya adalah untuk mendapatkan sebanyak mungkin informasi yang digunakan untuk kriptanalisis. Beberapa metode penyadapan data antara lain:

a) Wiretapping; penyadap mencegat data yang ditransmisikan pada saluran komunikasi dengan menggunakan sambungan perangkat keras.

b) Electromagnetic eavesdropping: penyadap mencegat data yang ditransmisikan melalui saluran wireless, misalnya radio dan microwave.

c) Acoustic eavesdropping: menangkap gelombang suara yang dihasilkan oleh suara manusia.

Berdasarkan banyaknya informasi yang diketahui oleh kriptanalis, dikelompokkan menjadi 5 jenis:

1. Ciphertext-only attack

Ini adalah jenis serangan yang paling umum namun paling sulit karena informasi yang tersedia hanyalah ciphertext saja. Kriptanalis memiliki beberapa ciphertext dari pesan,

(12)

semuanya dienkripsi dengan algoritma yang sama. Tugas kriptanalis adalah menemukan plaintext sebanyak mungkin dari ciphertext tersebut atau menemukan kunci yang digunakan untuk mendekripsi.

2. Known-plaintext attack

Ini adalah jenis serangan dimana kriptanalis memiliki pasangan plaintext dan ciphertext yang berkoresponden. Plaintext mungkin diperoleh dengan mempelajari karakteristik pesan. Beberapa pesan yang formatnya terstruktur membuka peluang kepada kriptanalis untuk menerka plaintext dari ciphertext yang bersesuaian.

3. Chosen-plaintext attack

Serangan jenis ini lebih hebat dari pada known-plaintext attack, karena kriptanalis dapat memilih plaintext yang dimilikinya untuk dienkripsikan, yaitu plaintext yang lebih mengarahkan penemuan kunci.

4. Chosen-ciphertext attack

Ini adalah jenis serangan dimana kriptanalis memilih ciphertext untuk didekripsikan dan memiliki akses ke plaintext hasil dekripsi (misalnya terhadap mesin elektronik yang melakukan dekripsi secara otomatis). Jenis serangan ini bisaanya dipakai pada sistem kriptografi.

5. Chosen-text attack

Ini adalah jenis serangan yang merupakan kombinasi chosen-plaintext dan chosen-ciphertext attack.

Berdasarkan teknik yang digunakan dalam menemukan kunci, dibagi atas: 1. Exhaustive attack atau brute force attack

Ini adalah serangan untuk mengungkap plaintext atau kunci dengan mencoba semua kemungkinan kunci. Diasumsikan kriptanalis mengetahui algoritma kriptografi yang digunakan oleh pengirim pesan. Selain itu kriptanalis memiliki sejumlah ciphertext dan/ atau plaintext yang bersesuaian.

(13)

Pada jenis serangan ini, kriptanalis tidak mencoba-coba semua kemungkinan kunci tetapi menganalisis kelemahan algoritma kriptografi untuk mengurangi kemungkinan kunci yang tidak mungkin ada. Diasumsikan kriptanalis mengetahui algoritma kriptografi yang digunakan oleh pengirim pesan. Analisis dapat menggunakan pendekatan matematik dan statistik dalam rangka menemukan kunci. Secara statistik misalnya dengan menggunakan analisis frekuensi, sedangkan secara matematik dengan memecahkan persamaan-persamaan matematika (yang diperoleh dari defenisi suatu algoritma kriptografi) yang mengandung peubah-peubah yang merepresentasikan plaintext atau kunci.

2.3 Algoritma Diffie-Hellman

Sampai akhir tahun 1975, hanya ada algoritma kunci simetris. Karena kriptografi simetris menggunakan kunci yang sama untuk enkripsi dan dekripsi, maka hal ini mengimplikasikan dua pihak yang berkomunikasi saling mempercayai. Satu masalah kritis di dalam kriptografi kunci simetris adalah cara mendistribusikan kunci karena dianggap tidak aman. Masalah ini dipecahkan oleh Whitfield Diffie dan Martin Hellman dengan mengusulkan kriptografi nirsimetris (asymmetris cryptosystem) yang memungkinkan pengguna berkomunikasi secara aman tanpa perlu berbagi kunci rahasia. Algoritma Diffie-Hellman atau dinamakan juga protokol Diffie-Hellman berguna untuk mempertukarkan kunci sesi (kunci rahasia untuk komunikasi dengan kriptografi simetris) antara dua orang atau lebih. Dan algoritma ini menjadi awal mula munculnya algoritma kriptografi RSA [10].

2.3.1 Pertukaran Kunci

Misalkan dua orang yang berkomunikasi adalah Irfan dan Antoni. Mula-mula Irfan dan Antoni menyepakati dua buah bilangan prima yang besar, n dan g, sedemikian sehingga g < n. Nialai n dan g tidak perlu dirahasiakan. Bahkan Irfan dan Antoni bisa membicarakannya melalui saluran yang tidak aman sekalipun.

(14)

Langkah-langkah dalam pertukaran kunci adalah sebagai berikut:

1. Irfan membangkitkan bilangant bulat acak dengan besar x dan mengirim hasil perhitungan X = gx mod n kepada Antoni.

2. Antoni membangkitkan bilangant bulat acak dengan besar x dan mengirim hasil perhitungan Y = gy mod n kepada Irfan.

3. Irfan menghitung K = Yx mod n 4. Antoni menghitung K’ = Xy mod n

Jika perhitungan dilakukan dengan benar, maka K akan bernilai sama dengan K’ yang berarti kunci simetris sudah berhasil diterima oleh kedua belah pihak. Baik K dan K’ sama dengan gxy mod n. Regar yang menyadap pembicaraan antara Irfan dan Antoni tidak dapat menghitung K. Dia hanya memiliki informasi n, g, X dan Y, tetapi dia tidak mempunyai informasi nilai x dan y. Untuk mengetahui nilai x atau y, dia perlu melakukan perhitungan logaritma diskrit yang sangat sulit dikerjakan.

Gambar berikut 2.6 memperlihatkan diagram algoritma pertukaran kunci Diffie-Hellman.

Gambar 2.6 Pertukaran Kunci Diffie-Hellman

Misalkan Irfan dan Antoni menyepakati n = 97 dan g = 5 (g < n). Irfan dan Antoni melakukan pertukaran kunci simetri sebagai berikut:

1. Irfan memilih x = 36 dan menghitung Bangkitkan x Hitung X = gx mod n Hitung K = Yx mod n Bangkitkan y Hitung Y = gy mod n Hitung K’ = Xy mod n

(15)

X = gx mod n = 536 mod 97 = 50 Irfan mengirimkan X kepada Antoni. 2. Antoni memilih y = 58 dan menghitung

Y = gy mod n = 558 mod 97 = 44 Antoni mengirimkan X kepada Irfan. 3. Irfan menghitung kunci simetris K,

K = Yx mod n = 4436 mod 97 = 75 4. Antoni menghitung kunci simetris K’,

K’ = Xy mod n = 5058 mod 97 = 75

Jadi, Irfan dan Antoni sudah mempunyai kunci sesi yang sama, yaitu K = 75. Kunci siap digunakan untuk melakukan komunikasi dengan kriptografi simetris.

2.4 Algoritma Rivest Shamir Adleman (RSA)

RSA merupakan salah satu algoritma yang paling maju dalam bidang kriptografi. RSA masih digunakan secara luas dalam berbagai bidang kriptografi dan dipercaya dapat mengamankan kerahasiaan data dengan menggunakan kunci yang cukup panjang. Akan tetapi besarnya bilangan yang digunakan mengakibatkan lambatnya operasi yang melibatkan algoritma RSA ini [7].

2.4.1 Sejarah RSA

RSA adalah salah satu contoh kriptografi yang menerapkan konsep public key. Algoritma ini pertama kali dipublikasikan di tahun 1977 oleh Ron Rivest, Adi Shamir, dan Leonard Adleman dari Massachusetts Institute of Technology (MIT). Nama RSA sendiri adalah singkatan dari nama belakang mereka bertiga [7].

Clifford Cocks, seorang matematikawan Inggris sebenarnya juga telah mengembangkan algoritma yang hampir sama dengan RSA ini pada tahun 1973. Namun algoritma buatannya tidak begitu dikenal oleh publik, dan baru dipublikasi

(16)

pada tahun 1997 karena merupakan proyek rahasia. Walau begitu algoritma yang dikembangkan Rivest, Shamir, dan Adleman tidak berhubungan dengan pekerjaan Cocks.

Algoritma RSA dipatenkan oleh Massachusetts Institute of Technology pada ta Semenjak Algoritma RSA dipublikasikan sebagai aplikasi paten, regulasi di sebagian besar negara-negara lain tidak memungkinkan penggunaan paten.

2.4.2 Algoritma RSA dalam Proses Enkripsi dan Dekripsi

Pada algoritma RSA terdapat 3 langkah utama yaitu key generation (pembangkitan kunci), enkripsi, dan dekripsi.

Kunci pada RSA mencakup dua buah kunci, yaitu public key dan private key. Public key digunakan untuk melakukan enkripsi, dan dapat diketahui oleh orang lain. Sedangkan private key tetap dirahasiakan dan digunakan untuk melakukan dekripsi. Pembangkitan kunci atau key generation dari RSA adalah sebagai berikut :

1. Pilih dua buah bilangan prima sembarang p dan q. Jaga kerahasiaan p dan q ini.

2. Hitung n = p * q. Besaran n ini tidak perlu dirahasiakan.

3. Hitung Ф(n) = (p-1) * (q-1). Sekali Ф(n)telah dihitung, p dan q dapat dihapus untuk mencegah diketahuinya oleh pihak lain.

4. Pilih sebuah bilangan bulat untuk kunci publik, sebut namanya e, yang relatif prima terhadap Ф(n)(relatif prima berarti GCD(e, Ф(n)) = 1 dengan syarat e (p-1), e (q-1), dan e < n.

5. Kunci publik (Public Key) = (n,e).

6. Hitung kunci privat (d) dengan kekongruenan e*d ≡1 (mod Ф(n)).

Maka d dapat dihitung dengan cara yang sederhana dengan syarat (d*e) mod Ф(n) ≡ 1 mod Ф(n). Kita dapat menuliskan kembali pernyataan tersebut dengan d =

(17)

(1+k*Ф(n))/e sehingga nilai-nilai k dapat diselesaikan sampai didapat sebuah nilai k dan d adalah anggota bilangan bulat.

Proses enkripsi dapat dilakukan dengan :

Sedangkan proses dekripsi dilakukan dengan :

Dengan mencoba nilai k = 1, 2, 3, ..., diperoleh nilai d yang bulat. Nilai itu yang akan dipakai sebagai kunci pribadi untuk dekripsi pesan.

Dalam implementasi sebenarnya, nilai p dan q diharapkan sangat besar sekali (misalnya 100 digit) agar pekerjaan memfaktorkan n menjadi faktor primanya menjadi sangat sukar, sehingga lebih susah untuk ditembus.

2.4.3 Keamanan dan Kecepatan RSA

Kekuatan algoritma RSA terletak pada tingkat kesulitan dalam memfaktorkan bilangan menjadi faktor primanya, dalam hal ini memfaktorkan n menjadi p dan q. Masing-masing p dan q besarnya dapat mencapai 100 sampai 200 digit dan bahkan lebih. Sekali n berhasil difaktorkan, maka menghitung nilai m adalah perkara mudah. Selanjutnya, walau nilai e diumumkan, perhitungan kunci d tidaklah mudah pula karena nilai m yang tidak diketahui [10].

RSA memiliki modulus 512-bit dengan kecepatan 64 kilobit per detik. Saat ini chip sedang direncanakan akan mendekati 1 megabit per detik menggunakan modulus 512-bit. Dalam perangkat keras, kecepatan RSA sekitar 1000 kali lebih lambat dibandingkan dengan DES. Sedangkan dalam perangkat lunak, kecepatan DES adalah sekitar 100 kali lebih cepat dari kecepatan RSA [13].

Ci = mie mod n

(18)

2.5 Lucas Lehmer Primality Test

Di dalam kriptografi, bilangan prima memiliki peranan yang sangat penting. Beberapa algoritma kriptografi, seperti RSA, menggantungkan kekuatannya pada sulitnya faktorisasi bilangan besar. Oleh karena itu, penggunaan bilangan prima yang besar menjadi sangat penting. Sebenarnya ada banyak cara untuk mengetahui suatu bilangan itu prima atau bukan, dan salah satu yang bisa digunakan adalah Lucas-Lehmer primality test.

Metode ini pertama kali ditemukan oleh dua orang ilmuan yaitu Francois Edouard Lucas Anatole berkebangsaan Perancis dan Derrick Henry Lehmer berkebangsaan Amerika Serikat.

Lucas Lehmer Primality Test bekerja dengan memanfaatkan bilangan Mersenne. Rumus bilangan Mersenne yaitu Mp = 2p – 1. Rumus ini ditemukan oleh Marin Mersenne seorang berkebangsaan Perancis yang hidup antara tahun 1588-1648. Untuk memperoleh bilangan Mersenne (Mp) adalah prima, maka p juga haruslah sebuah bilangan prima. Akan tetapi Mp belum tentu prima meskipun p adalah prima. Bilangan Mersenne biasanya digunakan untuk mencari bilangan prima yang sangat besar [7].

Berikut ini merupakan langkah-langkah untuk mengetahui keprimaan suatu bilangan dengan Lucas-Lehmer primality test.

1. Masukkan bilangan Mersenne Mp = 2p – 1 dimana p ≥ 3

2. Hitung Sj = S2j-1 – 2 mod Mp dengan S1 = 4 untuk j = 2,3,…,n-1

3. Jika Sp-1 = 0 mod Mp maka dapat disimpulkan bahwa Mp bilangan prima dan jika Mp≠ 0 maka Mp adalah bilangan komposit.

Gambar

Gambar 2.1 Proses Pengiriman SMS antar sesama teknologi jaringan
Gambar 2.2 Proses Pengiriman SMS antar teknologi jaringan yang berbeda
Gambar 2.3 Proses Enkripsi dan Dekripsi sederhana
Gambar 2.4 Skema Kriptografi Kunci Simetri
+3

Referensi

Dokumen terkait

Inilah salah satu kunci Abu Hurairah untuk membuka khazanah ilmu Rasulullah shallallahu ‘alaihi wasallam, maka bukanlah suatu hal yang aneh apabila beliau meriwayatkan

b.. Menyiapkan materi penerangan berupa membuat release giat pimpinan, menyelenggarakan jumpa pers dan menyelenggarakan press tour. Memanfaatkan media massa untuk

Komitmen merek sangat terkait dengan loyalitas merek (Kim et al ., 2008), beberapa berpendapat bahwa komitmen adalah syarat cukup diperlukan pada loyalitas merek

Hasil penghitungan aliran panas diharapkan sama dengan pola sebaran dari temperatur dasar lubang bor dan gradien temperatur permukaan, daerah anomali berada di

Dari data ini maka dapat disimpulkan bahwa pada lahan tersebut memiliki kelembaban yang tinggi namun karena analisis hanya menggunakan tabel deskriptif maka kita tidak

Jika memerhatikan sejarah keberhasilan Muhammad dalam mengelola bisnis maka kuncinya adalah akhlak mulia (seperti tutur kata yang baik dan jujur). Namun apakah modal

Skripsi yang berjudul “Pengaruh Inflasi, Suku Bunga, dan Nilai Tukar Terhadap Indeks Jakarta Islamic Index (JII) periode Januari 2010- November 2015” ini ditulis