BAB 1 PENDAHULUAN
1.1 Latar Belakang
Seiring perkembangan teknologi, berbagai macam dokumen kini tidak lagi dalam bentuknya yang konvensional di atas kertas. Dokumen-dokumen kini sudah disimpan sebagai arsip-arsip elektronik pada berbagai media komputer. Digitalisasi dokumen ini membawa perubahan terutama dalam hal pengelolaan, pemanfaatan, dan distribusi dokumen yang kini menjadi semakin mudah untuk dilakukan.
Sama halnya dengan dokumen konvensional di atas kertas, dokumen elektronik pun membutuhkan berbagai aspek keamanan. Keamanan telah menjadi aspek yang sangat penting dari suatu sistem informasi. Sebuah informasi umumnya hanya ditujukan bagi segolongan tertentu. Oleh karena itu sangat penting untuk mencegahnya jatuh kepada pihak-pihak lain yang tidak berkepentingan. Untuk melaksanakan tujuan tersebutlah dirancang suatu sistem keamanan yang berfungsi melindungi sistem informasi.
Salah satu upaya pengamanan sistem informasi yang dapat dilakukan adalah kriptografi. Kriptografi sesungguhnya merupakan studi terhadap teknik matematis yang terkait dengan aspek keamanan suatu sistem informasi, antara lain
1 Universitas Sumatera Utara
2
seperti kerahasiaan (confidentiality), integritas data (data integrity), otentikasi (authentication), dan pembuktian yang tak tersangkal (non-repudiation). Ke empat aspek tersebut merupakan tujuan fundamental dari suatu sistem kriptografi.
Salah satu aspek keamanan yang perlu dijamin dalam suatu dokumen, baik konvensional
maupun
digital,
adalah
kerahasiaannya
(confidentiality).
Kerahasiaan adalah layanan yang digunakan untuk menjaga informasi dari setiap pihak yang tidak berwenang untuk mengaksesnya. Dengan demikian informasi hanya akan dapat diakses oleh pihak-pihak yang berhak saja.
Kebutuhan untuk menjaga aspek keamanan dari dokumen elektronik semakin penting terutama karena semakin mudahnya distribusi dokumen elektronik. Teknik kriptografi dapat dimanfaatkan untuk menjamin aspek keamanan dokumen elektronik. Salah satu teknik kriptografi yang dapat dimanfaatkan adalah enkripsi dan dekripsi data atau dengan kata lain menyandikan data sehingga hanya orang yang berhak saja yang dapat mengetahui isi data tersebut.
Kriptografi merupakan ilmu yang mempelajari tentang pengamanan data atau informasi, dalam kriptografi banyak ditemukan metoda-metoda kriptografi. Salah satunya adalah metoda GOST, GOST ini merupakan singkatan dari “Gosudarstvennyi Standard” atau “Government Standard”. Algoritmanya merupakan algoritma enkripsi sederhana yang memiliki jumlah proses sebanyak 32 round dan menggunakan 64 bit block cipher dengan 256 bit key. Metoda
Universitas Sumatera Utara
3
GOST juga menggunakan 8 buah S-Box yang permanen dan operasi XOR serta Rotate Left Shift. Kelemahan GOST yang diketahui sampai saat ini adalah karena key schedule-nya yang sederhana, sehingga pada keadaan tertentu menjadi titik lemahnya terhadap metoda kriptanalisis seperti Related-key Cryptanalysis. Penulis memilih topik Implementasi Algoritma GOST pada File karena penulis ingin membuat perangkat lunak yang handal untuk pengamanan file baik digunakan untuk transfer file jarak jauh maupun local dengan memperbaiki kelemahan pada pembangkit kunci GOST.
Pesan yang dienkripsi dengan menggunakan metoda kriptografi akan menimbulkan suatu kecurigaan oleh penyerang yang ingin mendapatkan informasi secara tidak resmi. Untuk mengelabui para penyerang tersebut,
user
membutuhkan suatu sistem keamanan untuk menyamarkan pesan yang akan dikirimkannya untuk mengurangi rasa kekhawatiran terhadap penyadapan.
Steganografi merupakan seni penyembunyian pesan ke dalam pesan lainnya sedemikian rupa sehingga orang lain tidak menyadari ada sesuatu di dalam pesan tersebut. Kata steganografi (steganography) berasal dari bahasa Yunani yaitu steganos yang artinya tersembunyi atau terselubung dan graphein, yang artinya menulis, sehingga kurang lebih artinya adalah “menulis tulisan yang tersembunyi atau terselubung” (Sellars, 1996). Teknik ini meliputi banyak sekali metoda komunikasi untuk menyembunyikan pesan rahasia. Metoda ini termasuk tinta yang tidak tampak, microdots, pengaturan kata, tanda tangan digital, jalur tersembunyi dan komunikasi
spektrum lebar. Catatan pertama tentang
Universitas Sumatera Utara
4
steganografi ditulis oleh seorang sejarawan Yunani, Herodotus, yaitu ketika Histaeus seorang raja kejam Yunani dipenjarakan oleh Raja Darius di Susa, Azerbaijan, pada abad 5 sebelum Masehi.
Steganografi pada media digital gambar digunakan untuk mengeksploitasi keterbatasan kekuatan sistem penglihatan manusia dengan cara menurunkan kualitas warna pada file gambar yang belum disisipkan pesan rahasia. Sehingga dengan keterbatasan tersebut manusia sulit menemukan degradasi penurunan kualitas warna pada file gambar yang telah disisipkan pesan rahasia. Contohnya pada file gambar, pesan dapat disembunyikan dengan menggunakan cara menyisipkanya pada bit rendah disebut juga LSB (least significant bit) pada data pixel yang menyusun file tersebut. Seperti yang diketahui untuk file BMP 24 bit, setiap pixel (titik) pada gambar tersebut terdiri dari susunan 3 (tiga) warna merah, hijau dan biru (RGB) yang masing-masing disusun oleh bilangan 8 bit (byte) dari 0 sampai 255 atau dengan format biner 00000000 sampai 11111111. Dengan demikian pada setiap pixel file bitmap 24 bit dapat menyisipkan 3 bit data.
Steganografi berbeda dengan kriptografi yaitu pada hasil keluarannya. Hasil dari kriptografi biasanya berupa data yang berbeda dari bentuk aslinya dan biasanya datanya seolah-olah berantakan (tetapi dapat dikembalikan ke bentuk semula) sedangkan hasil keluaran dari steganografi ini memiliki bentuk persepsi yang sama dengan bentuk aslinya, tentunya persepsi disini oleh indera manusia, tetapi tidak oleh komputer atau perangkat pengolah digital lainnya. Dengan
Universitas Sumatera Utara
5
demikian kombinasi kriptografi dan steganografi adalah penyelesaian bagi user yang menginginkan sistem keamanan data yang handal.
1.2 Rumusan Masalah
Bagaimana
mengimplementasikan
algoritma
GOST
pada
file
serta
menyembunyikan text yang telah terenkripsi ke dalam gambar dengan algoritma LSB.
1.3 Batasan Masalah
Dalam tugas akhir ini hanya membatasi pada beberapa bagian masalah yaitu: 1. Pesan yang akan disembunyikan ke dalam gambar hanya dalam bentuk teks. 2. Gambar yang digunakan untuk penyembunyian teks hanya gambar bitmap 24 bit warna.
1.4 Tujuan Penelitian
Penulisan tugas akhir ini bertujuan: 1. Mengkaji dan memahami konsep steganografi gambar dengan teknik LSB. 2. Membangun perangkat lunak yang mengimplementasikan kriptografi dengan algoritma GOST dan steganografi gambar dengan teknik LSB.
Universitas Sumatera Utara
6
1.5 Manfaat Penelitian
1. Penulisan tugas akhir ini bermanfaat untuk menjaga kerahasiaan dan keamanan data sehingga orang-orang yang berhak saja yang dapat mengakses data tersebut. 2. Menghasilkan
sistem
keamanan
data
yang
lebih
baik
karena
mengkombinasikan kriptografi GOST dengan steganografi LSB.
1.6 Tinjauan Pustaka
Kriptografi (Cryptography) berasal dari bahasa Yunani yaitu dari kata Crypto dan Graphia yang berarti penulisan rahasia. Kriptografi adalah suatu ilmu yang mempelajari penulisan secara rahasia. Kriptografi merupakan bagian dari suatu cabang matematika yang disebut Cryptology. Kriptografi bertujuan menjaga kerahasiaan informasi yang terkandung dalam data sehingga informasi tersebut tidak dapat diketahui oleh pihak yang tidak sah. (Dony, 2006).
Plaintext (message) merupakan pesan asli yang ingin dikirimkan dan dijaga keamanannya. Pesan ini tidak lain dari informasi tersebut. Ciphertext merupakan pesan yang telah dikodekan (disandikan) sehingga siap untuk dikirimkan. Cipher merupakan algoritma matematis yang digunakan untuk proses penyandian plaintext menjadi ciphertext. Enkripsi (encryption) merupakan proses yang dilakukan untuk menyandikan plaintext sehingga menjadi ciphertext.
Universitas Sumatera Utara
7
Dekripsi (decryption) merupakan proses yang dilakukan untuk memperoleh kembali plaintext dari ciphertext.
Kriptosistem merupakan sistem yang dirancang untuk mengamankan suatu sistem informasi dengan memanfaatkan kriptografi. Urutan-urutan proses kriptografi dapat digambarkan sebagai berikut.
plaintext
ciphertext Enkripsi
plaintext Dekripsi
Gambar 1.1. Mekanisme kriptografi Dari Gambar 1.1, didapatlah rumus sebagai berikut: E(m) = c D(c) = m D(E(m)) = m
Prosesnya sangat sederhana, sebuah plaintext (m) akan dilewatkan pada proses enkripsi (E) sehingga menghasilkan suatu ciphertext (c). Kemudian untuk memperoleh kembali plaintext, ciphertext (c) melalui proses dekripsi (D) yang akan menghasilkan kembali plaintext (m).
GOST merupakan blok cipher dari Uni Sovyet (yang sekarang dikenal dengan Rusia), yang merupakan singkatan dari "Gosudarstvennyi Standard" atau
Universitas Sumatera Utara
8
Standar Pemerintah, standar ini bernomor 28147-89 oleh sebab itu metoda ini sering disebut sebagai GOST 28147-89.
GOST merupakan blok cipher 64 bit dengan panjang kunci 256 bit. Algoritma ini mengiterasi algoritma enkripsi sederhana sebanyak 32 putaran (round). Untuk mengenkripsi pertama-tama plainteks 64 bit dipecah menjadi 32 bit bagian kiri, L dan 32 bit bagian kanan, R. Subkunci (subkey) untuk putaran i adalah Ki. Pada satu putaran ke-i operasinya adalah sebagai berikut:
Li = Ri-1 Ri = Li-1 xor f(Ri-1,Ki)
Sedangkan pada fungsi f mula-mula bagian kanan data ditambah dengan subkunci ke-i modulus 232. Hasilnya dipecah menjadi delapan bagian 4 bit dan setiap bagian menjadi input s-box yang berbeda. Di dalam GOST terdapat 8 buah s-box, 4 bit pertama menjadi s-box pertama, 4 bit ke dua menjadi s-box ke dua, dan seterusnya. Output dari 8 s-box kemudian dikombinasikan menjadi bilangan 32 bit kemudian bilangan ini dirotasi 11 bit kekiri. Akhirnya hasil operasi ini dixor dengan data bagian kiri yang kemudian menjadi bagian kanan dan bagian kanan menjadi bagian kiri (swap). Pada implementasinya nanti rotasi pada fungsi f dilakukan pada awal saat inisialisasi sekaligus membentuk s-box 32 bit dan dilakukan satu kali saja sehingga lebih menghemat operasi dan dengan demikian mempercepat proses enkripsi/dekripsi.
Universitas Sumatera Utara
9
Subkunci dihasilkan secara sederhana yaitu dari 256 bit kunci yang dibagi menjadi delapan 32 bit blok: k1, k2, …, k8. Setiap putaran menggunakan subkunci yang berbeda. Dekripsi sama dengan enkripsi dengan urutan k i dibalik. Standar GOST tidak menentukan hasil s-box sehingga ada spekulasi bahwa sebagian organisasi di (eks) Sovyet mempunyai s-box yang baik dan sebagian diberi s-box yang buruk sehingga mudah diawasi/dimata-matai. Kelemahan GOST yang diketahui sampai saat ini adalah karena key schedule-nya yang sederhana, sehingga pada keadaan tertentu menjadi titik lemahnya terhadap metoda kriptanalisis seperti Related-key Cryptanalysis. Tetapi hal ini dapat diatasi dengan melewatkan kunci kepada fungsi hash yang kuat secara kriptografi seperti SHA-1, kemudian menggunakan hasil hash untuk input inisialisasi kunci.
Fungsi hash sering juga disebut fungsi enkripsi satu arah, atau disebut juga message diggest. Fungsi hash digunakan untuk menjamin servis otentikasi dan integritas suatu pesan atau file. Suatu fungsi hash h memetakan bit-bit string dengan panjang sembarang ke sebuah string dengan panjang tertentu. Secure Hash Algoritm (SHA) dirancang oleh National Institute of Standard and Technology (NIST) USA.Bagian dari standar DSS(Decision Support Sistem) USA dan bekerja sama dengan DES untuk digital signature. SHA-1 menyediakan 160-bit message digest.
Universitas Sumatera Utara
10
Gambar 1.2 Diagram Alir Fungsi Hash SHA-1 satu putaran
1. A, B, C, D and E adalah 32-bit Integers dalam state; 2. F adalah sebuah fungsi nonlinear yang berubah–ubah. 3. <<< n menunjukkan sebuah left bit rotation oleh n places; n berubah–ubah pada setiap operasi. 4. W(t) adalah perluasan pesan Integer pada round (t). 5. K(t) adalah konstanta round pada setiap round (t) menunjukkan penjumlahan modulo 256.
Contoh ciphertext dengan menggunakan algoritma hash SHA-1:
semangat untuk mengerjakan tugas akhir
Hasil enkripsi: 2309D6AC5BA005439DC1681742FD893453F2F449
Universitas Sumatera Utara
11
semangat untuk mengerjakan tugas ekhir
Hasil enkripsi: B382F0D09C80902A7514E48C654D601AFB01EE93
Algoritma Metoda LSB (least significant bit) yaitu pada file gambar BMP 24 bit setiap pixel pada gambar terdiri dari susunan 3 (tiga) warna yaitu merah, hijau, biru (RGB) yang masing-masing disusun oleh bilangan 8 bit (1 byte) dari 0 sampai 255 atau dengan format biner 00000000 sampai 11111111. Sebagai contoh file gambar BMP 24 bit dengan warna merah murni dalam format biner akan terlihat sebagai berikut:
00000000 00000000 11111111 00000000 00000000 11111111
Sedangkan untuk warna hijau murni dalam format biner akan terlihat sebagai berikut:
00000000 11111111 00000000 00000000 11111111 00000000
Sedangkan untuk warna biru murni dalam format biner akan terlihat sebagai berikut: 11111111 00000000 00000000 11111111 00000000 00000000
Universitas Sumatera Utara
12
Dari uraian tersebut dapat dilihat bahwa informasi dari warna biru berada pada bit pertama sampai bit delapan, dan informasi warna hijau berada pada bit sembilan sampai dengan bit 16, sedangkan informasi warna merah berada pada bit 17 sampai dengan bit 24. Metoda penyisipan LSB (least significant bit) ini adalah menyisipi pesan dengan cara mengganti bit ke 8, 16 dan 24 pada representasi biner file gambar dengan representasi biner pesan rahasia yang akan disembunyikan. Dengan demikian pada setiap pixel file gambar BMP 24 bit dapat disisipkan 3 bit pesan, misalnya terdapat data Raster original file gambar adalah sebagai berikut:
00100111 11101001 11001000 00100111 11001000 11101001 11001000 00100111 11101001
Sedangkan representasi biner huruf A adalah 01000001, dengan menyisipkannya ke dalam pixel akan dihasilkan
00100110 11101001 11001000 00100110 11001000 11101000 11001000 00100111 11101001
Terlihat pada bit ke-8, 16 dan 24 diganti dengan representasi biner huruf A, dan hanya 3 (tiga) bit rendah yang berubah (cetak tebal), untuk penglihatan
Universitas Sumatera Utara
13
mata manusia sangatlah mustahil untuk dapat membedakan warna pada file gambar yang sudah diisi pesan rahasia, dibandingkan dengan file gambar asli sebelum disisipkan dengan pesan rahasia.
1.7 Metode Penelitian
Ada beberapa metoda yang dilakukan dalam Tugas Akhir yaitu: 1. Studi Literatur Mempelajari buku referensi atau sumber–sumber yang berkaitan dengan kriptografi dan steganografi baik dari text book maupun internet. Khususnya yang berkaitan dengan algoritma GOST dan LSB. 2. Analisis Menganalisis algoritma serta teknik yang digunakan oleh algoritma GOST serta LSB. 3. Perancangan Sistem Merancang algoritma program yang akan diimplementasikan ke dalam program komputer. 4.
Implementasi sistem Mengimplementasikan ke dalam bentuk program komputer.
5. Pengujian Program Menguji program komputer yang dibuat berdasarkan algoritma GOST dan LSB.
Universitas Sumatera Utara
14
6. Pembuatan Laporan Pembuatan laporan tugas akhir bertujuan dijadikan dokumentasi hasil penelitian.
Universitas Sumatera Utara