1) Rian Arifin ada lah mahasiswa Jurusan Matematika Un iversitas Negeri Ma lang. 2) Lucky Tri Oktoviana adalah dosen Jurusan Matematika Un iversitas Negeri Ma lang.
IMPLEMENTASI KRIPTOGRAFI DAN STEGANOGRAFI MENGGUNAKAN ALGORITMA RSA DAN METODE LSB
Rian Arifin 1) dan Lucky Tri Oktoviana 2) e-mail: Arifin1199@gmail.com
Universitas Negeri Malang
ABSTRAK: Salah satu cara untuk menjaga keamanan pesan adalah
menggunakan teknik steganografi. Metode steganografi yang digunakan adalah metode penyisipan pesan LSB (Lea st Significa nt Bit). Pesan rahasia disandikan sebelum disisipkan menggunakan teknik kriptografi. Algoritma kriptografi yang digunakan adalah algoritma RSA. Algoritma RSA terdiri dari algoritma enkripsi dan algoritma dekripsi. Pesan rahasia disandikan menggunakan algoritma enkripsi RSA dan disisipkan menggunakan metode penyisipan LSB. Membaca pesan dengan menggunakan metode LSB dan algoritma dekripsi RSA.
Kata kunci : Kriptografi, Steganografi, RSA, LSB, Pesan
ABSTRACT: One way to maintain the security of the message is use
steganographic techniques. Moreover, the steganografic method which can be applied inserting a message LSB (Least Significant Bit) method. Secret message encoded before inserted using cryptographic techniques. Cryptographic
algorithms used are the RSA algorithm. RSA algorithm consists of encryption algorithms and decryption algorithms. Secret messages encrypted using RSA encryption algorithm and inserted using LSB insertion method. Reading process of the disguised secret message can be conducted by LSB method and RSA decryption algorithm.
Kata kunci : Cryptography, Steganography, RSA, LSB, Message
Perkembangan teknologi mempermudah orang berkomunikasi, bentuk komunikasi yang sering digunakan adalah mengirim dan menerima pesan. Seiring berkembangnya teknologi, semakin berkembang juga kejahatan terhadap
keamanan pesan yang dikirim.Salah satu cara menghindari kejahatan terhadap suatu pesan adalah dengan menyembunyikan pesan ke dalam suatu pesan lain. Teknik ini disebut dengan teknik steganografi. Steganografi adalah ilmu dan seni menyembunyikan pesan rahasia di dalam pesan lain sehingga keberadaan pesan rahasia tersebut tidak dapat diketahui (Munir, 2006:301). Metode steganografi yang sederhana dan mudah diimplementasikan adalah metode LSB (Lea st
Significa nt Bit). Kelemahan dari metode LSB adalah pesan rahasia yang disisipkan dapat dengan mudah diambil dengan menggunakan metode LSB.
Salah satu cara untuk mengatasi permasalahan tersebut adalah
menjadi bentuk yang tidak dimengerti maknanya. Algoritma dekripsi RSA untuk mengembalikan hasil penyandian menjadi pesan rahasia yang sebenarnya.
Dari penjelasan diatas maka dibuat program dan mengimplementasikan untuk meningkatkan keamanan pesan rahasia menggunakan teknik kriptografi dan steganografi. Pesan rahasia berupa teks disandikan menggunakan algoritma enkripsi RSA dan disisipkan ke dalam file gambar bitmap 24-bit menggunakan metode LSB untuk proses menyisipkan pesan rahasia. Pesan rahas ia diambil dari file gambar bitmap 24-bit menggunakan metode LSB dan pesan rahasia tersebut didekripsi menggunakan algoritma dekripsi RSA untuk proses membaca pesan rahasia.
Algorima kriptografi RSA terdiri dari algoritma enkripsi RSA dan algoritma dekripsi RSA. Algoritma RSA adalah sebagai berikut (Munir, 2006:181):
1. Pilih dua bilangan prima sembarang, p dan q.
2. Hitung n = p ×q (sebaiknya p ≠ q, karena jika p = q maka n = �2sehingga p
dapat diperoleh dengan menarik akar pangkat dua dari n). 3. Hitung a = (p – 1) × (q – 1).
4. Pilih kunci e dengan 1< e < a dan e relatif prima terhadap a (gcd(e, a) = 1). 5. Bangkitkan kunci privat dengan menggunakan persamaan e × d≡ 1 (mod n). Hasil dari algoritma di atas adalah:
1. Kunci publik adalah pasangan (e, n). 2. Kunci privat adalah pasangan (d, n).
Algoritma enkripsi dan dekripsi RSA adalah sebagai berikut: 1. Enkripsi:
a. Ambil kunci publik (e, n).
b. Nyatakan plaintext m menjadi blok – blok �1, �2, … , sedemikian sehingga setiap blok merepresentasikan nilai di dalam selang [0, n– 1].
c. Setiap blok ��, dienkripsi menjadi blok � dengan � = �� mod n.
2. Dekripsi:
Setiap blok � didekripsi menjadi blok �� dengan �� = � mod n. Dalam proses pengerjaan algoritma RSA membutuhkan konsep
matematika, yaitu FPB (faktor persekutuan terbesar), algoritma Euclidean, relatif prima, bilangan prima, aritmatika modular dan kekongruenan. Definisi dari FPB dari dua bilangan adalah bilangan positif terbesar yang dapat membagi dua bilangan tersebut (Sudirman, 2001:43). Algoritma Euclidean digunakan untuk mencari FPB dari dua bilangan. Dua bilangan dikatakan relatif prima jika FPB dari dua bilangan tersebut adalah satu (Sudirman, 2001:43). Sebuah bilangan bulat
p > 1 disebut bilangan prima jika tidak ada pembagi d dari p demikian sehingga 1 < d < p(As’ari, 1992:24). Aritmatika modular dan kekongruenan digunakan untuk proses enkripsi dan dekripsi pada algoritma RSA.
Pembahasan
Steganografi adalah proses menyembunyikan pesan rahasia pada suatu media tertentu, dalam hal ini media yang digunakan adalah media file gambar bitmap 24 bit dengan pesan rahasia berupa text dan menggunakan metode LSB. Kriptografi adalah proses mengacak suatu pesan rahasia sedemikia n sehingga maksud dari pesan rahasia tersebut tidak dapat dimengerti oleh orang lain, algoritma yang digunakan adalah algoritma RSA. Dengan menggabungkan metode LSB dan algoritma RSA dapat meningkatkan keamanan pesan rahasia. Pesan rahasia disandikan dengan menggunakan a lgoritma RSA dan
disembunyikan pada media file gambar menggunakan metode LSB.
Proses utama dari penggabungan algoritma RSA dan metode LSB adalah proses sisip pesan rahasia dan proses baca pesan rahasia. Proses penyisipan pesan dilakukan dengan menyandikan pesan rahasia atau pla intext menggunakan
algoritma enkripsi RSA menjadi bentuk yang tidak dapat dipahami maknanya atau
ciphertext, setelah itu disisipkan pada media atau covertext yang berupa file gambar menggunakan metode LSB. Hasil dari proses penyisipan adalah file gambar bitmap 24 bit yang disebut dengan stegotext. Sedangkan proses membaca pesan dilakukan dengan mengambil ciphertext dari stegotext dan mengubah ciphertext menjadi plaintext dengan menggunakan algoritma dekripsi RSA.
Gambar 1. Skema pr oses sisip pesan
Dari gambar 1 merupan skema dari proses sisip pesan, proses ini
dilakukan oleh orang yang akan mengirim pesan rahasia. Plaintext berupa pesan teks dienkripsi menjadi ciphertext dengan menggunakan kunci publik. kunci publik dibangkitkan dengan memasukkan password untuk kemanan kunci.
Ciphertext yang didapatkan disisipkan ke dalam media berupa file gambar bitmap 24 bit dengan menggunakan metode LSB. Hasil dari proses sisip pesan ini adalah file gambar bitmap 24 bit, tetapi file gambar tersebut berisi pesan rahasia.
Sehingga, pesan yang dikirim adalah file gambar yang sudah berisi pesan rahasia.
Ciphertext
Plaintext Bangkitkan
kunci publik
Password Kunci publik
Enkripsi
Sisipkan Ciphertext ke dala m covertext
Gambar 2. Skema pr oses bac a pesan
Pada gambar 2 merupan proses baca pesan, proses ini dilakukan oleh orang yang menerima pesan rahasia. Pesan yang diterima adalah stegotext berupa file gambar bitmap 24 bit. Pesan yang masih berupa ciphertext diambil dari file gambar dengan menggunakan metode LSB. Ciphertext harus didekripsi untuk mendapatkan pesan rahasia yang sebenarnya. Ciphertext didekripsi menggunakan kunci privat. Kunci privat didapatkan dengan memasukkan password, password yang disunakan adalah password yang sama dengan password yang digunakan pada saat enkripsi atau yang digunakan oleh yang mengirim pesan. Dengan demikian, pesan rahasia yang sebenarnya dapat dibaca.
Hasil Imple mentasi Program dan Analisis
Pesan rahasia diubah menjadi karakter yang tidak dapat dipahami maknanya menggunakan algoritma enkripsi RSA, disebut dengan ciphertext.
Ciphertext disisipkan ke dalam file gambar bitmap 24 bit dengan menggunakan metode LSB. Contoh hasil dari implementasi program untuk sisip pesan rahasia adalah sebagai berikut:
P lainext Ciphertext
Ciphertext
Ciphertext
Stegotext Gambar 3. Hasil pr oses sisip pesan r ahasia
Fakultas MIPA Algoritma
enkripsi RSA
)A9*•ü
"‡*# ˆT<q*•üHø^7T #2PãU²l
)A9*•ü
"‡*# ˆT<q*•üHø^7T #2PãU²l
Metode penyisipan LSB
Plaintext
Ambil ciphertext
dari stegotext
Ciphertext kunci privat Bangkitkan
Password
Kunci privat
Dekripsi
Contoh hasil dari implementasi program untuk membaca pesan rahasia adalah sebagai berikut:
Ciphertext
Stegotext
Ciphertext Plainext
Gambar 4. Hasil pr oses baca pesan r ahasia
Jika stegotext dimodifikasi maka pesan rahasia yang sebenarnya akan hilanag karena nilai RGB pada piksel yang digunakan untuk menyisipkan pesan rahasia berubah. Kelebihan dari teknik steganografi adalah tidak adanya
perbedaan yang signifikan antara file gambar sebelum dan sesudah disisipi. Pesan rahasia tidak dapat dengan mudah didapatkan karena tinggkat keamanan algoritma RSA. Keamanan algoritma RSA adalah memfaktorkan nilai yang besar menjadi dua bilangan prima yang berbeda.
Kesimpulan dan Saran Kesimpulan
1. Pesan rahasia berupa text disandikan dengan menggunakan algoritma enkripsi RSA dan disisipkan ke dalam covertext yang berupa file gambar 24 bit dengan menggunakan metode penyisipan LSB. Hasil proses ini adalah stegotext berupa file gambar 24 bit.
2. Pesan rahasia dibaca dengan cara mengambil pesan rahasia dari dari
stegotext yang berupa file gambar 24 bit dan mengembalikan pesan rahasia yang disandikan menjadi pesan rahasia yang sebenarnya dengan menggunakan algoritma dekripsi RSA. Hasil dari proses ini adalah pesan rahasia yang sebenarnya.
3. Aplikasi kriptografi dan steganografi dapat meningkatkan keamanan pesan rahasia dengan mengenkripsi pesan rahasia sebelum
menyembunyikan dalam covertext. Saran
1. Pesan rahasia tidak hanya berupa pesan text, yaitu pesan file gambar, file audio atau file video.
2. Covertext yang digunakan tidak hanya file gambar bitmap 24 bit, yaitu dapat file gambar dengan format selain bitmap, file audio atau file video.
Metode pengambilan
LSB
)A9*•ü
"‡*# ˆT<q*•üHø^7T #2PãU²l
Fakultas MIPA Algoritma
dekripsi RSA )A9*•ü
3. Enkripsi dan dekripsi pesan dapat menggunakan algoritma chiper blok, seperti DES, Double DES, Tr ipel DES, GOST, RC5 dan AES, atau menggunakan algoritma kriptografi kunci-publik, yaitu ElGamal dan
Knapsack.
4. Byte yang digunakan dalam metode penyisipan pesan rahasia tidak berurutan, dengan membangkitkan bilangan random untuk menentukan urutan byte yang digunakan untuk metode penyisipan pesan rahasia.
Daftar Rujukan
Achmad, Balza, Ir, M. Sc.E., dan Firdausy, Kartika, S.T, M.T, 2005. Teknik Pengolahan Citra Digital Menggunakan Delphi, Ardi Publishing, Cetakan pertama, Yogyakarta.
As’ari, Abdur Rahman. 1992. Pengantar Teor i Bilangan. Malang. Depdikbud IKIP Malang Proyek Operasi dan Perawatan Fasilitas.
Marselino, Andino. 2003. Pembuatan Aplikasi Steganografi dengan Borland Delphi. (online), (http://ikc.depsos.go.id/umum/andino-steganografi.php, diakses tanggal 9 Januari 2013).
Menezes, A, VanOorschot, P, Vanstone, S. 1997. Handbook of Applied Cryptography. CRC Press, Inc.
Munir, Rinaldi. 2004. Kriptografi. (online), (http://ebookbrowse.com/algoritma-rsa-pdf-d309993420, diakses tanggal 11 Maret 2013).
Munir, Rinaldi. 2006. Kr iptografi. Bandung: Penerbit Informatika.