berisi keterangan dari sekuen DNA berupa karakter angka, karakter huruf kecil dan karakter huruf besar. Bagian ini dimulai dengan simbol > dan dipisahkan dengan simbol | dan berjumlah satu baris. Header file tersebut digunakan sebagai identitas bagi suatu struktur. Bagian kedua merupakan bagian isi yang terdiri dari 70 pasang basa setiap barisnya. Pasang basa yang dimaksud pada file berformat ini berupa karakter A,C,G, atau T. dengan memberikan masukan berupa file DNA dan pesan teks. Secara garis besar ada beberapa langkah yang dilakukan dalam melakukan tahapan ini yaitu pencarian fragmen, pembuatan fragmen pesan, dan penyisipan pesan. Tahapan penyisipan pesan dapat dilihat pada Gambar 4. File DNA Pesan Linear Congruential Generator (LCG) Linear Congruential Generator (LCG) merupakan suatu metode pembangkitan bilangan acak yang paling banyak digunakan di dunia, tapi sudah mulai digantikan dengan metode baru. Kekuatan dari pembangkitan dengan metode ini adalah kecepatannya dalam melakukan pemrosesan karena hanya menggunakan sedikit langkah. Hal inilah yang membuat metode ini banyak digunakan dalam aplikasi penyisipan (Lomont 2008). Pencarian Fragmen Konversi Pesan Penghitungan Jumlah Fragmen Terpakai Pembangkitan Nilai Acak Awal Rumus dari metode ini yaitu : X n1=a X nb mod m Xn+1 : angka random Xn : angka random sebelumnya a : pengali b : penambah m : modulus X0 : nilai awal Pembuatan Marker Pesan Pengacakan Posisi Fragmen Pemotongan Pesan Pembuatan Fragmen Terakhir METODE PENELITIAN Metodologi yang digunakan pada penelitian ini terdiri atas lima tahap. Penelitian diawali dengan studi pustaka, penentuan topik, kemudian dilanjutkan dengan perumusan masalah. Pada tahap perumusan masalah, penelitian yang akan dilakukan adalah mengenai steganografi pada file DNA berformat fasta dengan menggunakan metode DNA rekombinan. Setelah itu, penelitian dilanjutkan dengan tahap implementasi dan analisis hasil. Tahap Penyisipan Pesan Dalam tahapan ini pesan (embedded message) yang berupa teks disisipkan ke dalam file DNA (cover object). Penyisipan dilakukan Pembuatan Fragmen Pesan Penyisipan Pesan Stego object Key Gambar 4 Tahap Penyisipan Pesan. 1 Pencarian Fragmen Pada cover-object (file DNA) dilakukan pencarian fragmen yang diapit oleh enzim restriksi HaeIII. Fragmen dicari berdasarkan 4 pola E--E. E merepresentasikan struktur enzim restriksinya. Simbol -- merupakan isi dari fragmen. Contoh fragmen : GGCCAGCGTGCGTGGCGTGGGCC 2 Pengonversian Pesan Pesan dan sekuen DNA memiliki bentuk yang berbeda sehingga pesan tidak bisa langsung disisipkan ke dalam file DNA. Oleh karena itu, pesan harus diubah terlebih ke dalam bentuk DNA dengan aturan konversi sebagai berikut: 00 : G 01 : A 10 : T 11 : C Pesan yang berupa teks dipisah menjadi karakter yang kemudian diubah menjadi bentuk biner sesuai dengan kententuan ASCII. Kode biner tersebut yang kemudian diubah menjadi pasang basa dengan aturan konversi seperti disebutkan sebelumnya. 3 Penghitungan Jumlah Fragmen Terpakai Jumlah fragmen terpakai merupakan hal yang penting karena nilai tersebut akan digunakan sebagai batas atas rentang untuk melakukan pengacakan nilai pada proses selanjutnya. Nilai ini disesuaikan dengan panjangnya pesan. Proses penghitungan hanya merupakan simulasi pemasukan pesan ke dalam fragmen. Proses tersebut dilakukan hanya untuk mendapatkan nilai jumlah fragmen tanpa benar-benar memasukkan pesan. Penghitungan kapasitas fragmen dapat dilakukan karena panjang marker dan panjang pesan per karakter yang selalu tetap. Panjang marker selalu bernilai 8 dan panjang pesan per karakter selalu bernilai 4. 4 Pembangkitan nilai acak awal Nilai acak awal merupakan nilai yang penting. Nilai ini digunakan sebagai nilai awal untuk membangkitkan nilai-nilai selanjutnya pada proses pengacakan. Nilai ini juga berfungsi sebagai key pada proses ekstraksi pesan. Nilai acak awal didapatkan dari pembangkitan nilai acak oleh fungsi random pada .Net Framework. Nilai ini dibangkitkan berdasarkan jumlah fragmen yang didapat pada tahap ketiga sebagai batas atasnya. 5 Pembuatan Marker Pesan Marker pesan merupakan sebuah sekuen DNA yang terdiri atas 8 pasang basa. Adanya marker pada sebuah fragmen merupakan tanda bahwa pada fragmen tersebut terdapat pesan. Marker terdiri atas dua jenis yaitu pada bagian awal fragmen yang disebut sebagai header dan pada akhir fragmen yang disebut sebagai footer. Header dan Footer memiliki susunan sekuen DNA yang sama. Penambahan marker pada tiap fragmen pesan membuat kemungkinan tingkat keunikan fragmen menjadi lebih tinggi. Marker pesan tersebut dibangkitkan secara acak. Pengacakan menggunakan metode linear congruential generator (LCG). Metode ini digunakan karena kecepatannya dalam pemrosesan. Nilai a dan nilai b merupakan nilai konstanta yang sama dengan nilai konstanta yang dipakai oleh .Net Framework dalam melakukan fungsi pengacakan. Nilai a yaitu 214013 dan nilai b yaitu 2531011. Pola yang akan terbentuk pada fragmen dengan menambahkan marker yaitu EH--FE. E merepresentasikan enzim restriksinya. Simbol -- merepresentasikan pesannya, H merupakan header pesannya, dan F sebagai footer pesannya. 6 Pengacakan Posisi Fragmen Pada tahap ini, fragmen yang telah didapatkan pada proses pencarian fragmen, diacak posisinya. Pengacakan dilakukan dengan menggunakan metode yang sama dengan pembuatan marker pesan. Tujuannya adalah agar tingkat keamanan pesan menjadi lebih baik. 7 Pemotongan Pesan Ukuran panjang fragmen yang didapatkan tidak selalu sama dengan panjang pesan. Hal ini mengharuskan pesan dipotong terlebih dahulu sesuai panjang tiap fragmen. Pemotongan pesan dilakukan berurutan mulai dari awal pesan hingga seluruh pesan. 8 Pembuatan Fragmen Terakhir Fragmen terakhir merupakan fragmen yang berubah panjangnya ketika digantikan dengan pesan. Hal ini terjadi dikarenakan panjang 5 pesan tidak selalu sama dengan panjang fragmen. Penambahan sekuen DNA setelah pesan, dilakukan agar panjang fragmen menjadi sama dengan panjang pesan. Sekuen DNA yang ditambahkan yaitu sekuen yang dapat diabaikan pada saat ektraksi pesan dan dapat dianggap sebagai bukan pesan. Sekuen yang ditambahkan adalah sekuen GGGG yang kemudian dilanjutkan dengan sekuen asli. Sekuen GGGG memiliki arti nilai null pada karakter ASCII. Sekuen GGGG digunakan karena dapat berfungsi sebagai pembatas bahwa pesan teks telah berakhir. 9 Pembuatan Fragmen Pesan Setelah seluruh pesan telah siap, dibentuklah fragmen yang sesuai panjangnya dengan struktur EH--FE. E merupakan enzim, H merupakan header, F merupakan footer, dan simbol -- merupakan pesan. Fragmen dibentuk hingga seluruh pesan masuk ke dalam fragmen. 10 Penyisipan Fragmen Pesan Fragmen pada cover-object yang telah terpilih diganti dengan fragmen pesan. Penggantian dilakukan dengan cara mencari fragmen asli yang kemudian digatikan dengan fragmen pesan. Dengan melakukan seluruh tahap tersebut, maka akan menghasilkan file DNA yang telah tersisipi pesan (stego-object) dan key untuk ekstraksi pesan. Key merupakan nilai awal yang dibangkitkan pada tahap 4. Key ini akan digunakan untuk membangkitkan kembali header pesan dan urutan asli fragmen. Contoh langkah penyisipan dapat dilihat pada Lampiran 1. Tahap Ekstraksi Pesan Dalam tahapan ini, pesan diambil dari stego-object. Untuk dapat mengekstraksi pesan dibutuhkan stego-key yang didapat dari penyisipan pesan sebelumnya. Langkah yang dilakukan dalam pengekstaksian pesan dapat dilihat pada Gambar 5. 1 Pembangkitan Marker Marker pesan dibangkitkan berdasarkan nilai key yang didapat. Pembangkitan dilakukan dengan metode yang sama pada saat penyisipan. 2 Pencarian Fragmen Fragmen dicari berdasarkan pola EH--FE. E merupakan enzim, H merupakan header, F merupakan footer dan -- merupakan isi fragmen. File DNA Key Pembangkitan Marker Pencarian Fragmen Bangkitkan Urutan Fragmen Penyatuan Pesan Konversi Sekuen DNA File DNA Pesan Gambar 5 Tahap Ekstraksi Pesan. 3 Pembangkitan Urutan Fragmen Fragmen yang didapat dari proses pencarian merupakan fragmen dalam urutan acak. Oleh karena itu, proses pembangkitan urutan fragmen harus dilakukan. Dengan menggunakan key yang didapat dari tahap sebelumnya, maka fragmen dapat dibentuk kembali dengan metode pembangkitan bilangan acak yang sama pada proses penyisipan. 4 Penyatuan Pesan Seluruh fragmen yang telah terurut tersebut kemudian disatukan. Agar pesan pada fragmen tersebut dapat diperoleh, marker dan enzim yang melekatnya harus dibuang terlebih dahulu dibuang, sehingga menghasilkan pesan yang berbentuk sekuen DNA. 6 5 Pengkonversian Sekuen DNA menjadi Pesan Pesan yang telah disatukan pada tahap sebelumnya masih belum berupa pesan yang sesungguhnya. Pesan masih berupa struktur DNA. Oleh karena itu perlu dilakukan pengonversian pesan. Aturan konversi pada tahap ekstraksi merupakan kebalikan dari konversi pada tahap penyisipan. Contoh langkah pengektraksian dapat dilihat pada Lampiran 2. Setelah tahap penyisipan dan ektraksi pesan dilakukan, maka selanjutnya adalah analisis terhadap hasil yang diperoleh. Analisis dilakukan dengan dua pandangan, yaitu dengan file DNA sebagai cover-object dan DNA manusia yang sesungguhnya yang menjadi cover-object. Analisis yang dilakukan yaitu analisis imperceptible, analisis fidelity, analisis recovery, dan analisis keamanan. HASIL DAN PEMBAHASAN Analisis Imperceptible Proses penyisipan pesan pada penelitian ini menghasilkan sebuah file DNA berformat fasta. File tersebut berisi sekuen DNA yang secara umum sulit untuk diketahui asli atau tidaknya. Analisis tahap ini dilakukan untuk menguji tingkat kecurigaan seseorang berdasarkan indera penglihatan manusia. Analisis imperceptible dilakukan dengan menyebarkan kuisioner yang bertujuan untuk mencari tahu apakah seseorang dapat mengetahui keberadaan pesan di dalam suatu file DNA. Kuisioner diberikan kepada 30 responden dari bidang ilmu yang berbeda. Sepuluh responden berasal dari Departemen Ilmu Komputer, sepuluh responden berasal dari Departemen Biologi dan sepuluh responden berasal dari Departemen Biokimia. Perbedaan latar belakang bidang ilmu pada responden membuat mereka melihat sekuen DNA dengan cara pandang yang berbeda. Hal tersebut dilakukan agar pengecekan keberadaan pesan dilakukan oleh orang yang kurang lebih mengerti tentang sekuen DNA atau tentang steganografi. Kuisioner berisi dua sekuen DNA dan dua pertanyaan. Salah satu sekuen tersebut telah disisipkan pesan. Sekuen pertama terdiri atas 1067 pasang basa dan sekuen kedua terdiri atas 1330 pasang basa. Kedua sekuen dipilih karena memiliki panjang yang wajar untuk dilihat secara visual manusia. Pertanyaan yang diberikan berjumlah dua soal pilihan ganda. Pertanyaan pertama terkait dengan keberadaan pesan dalam ke dua sekuen DNA. Jika responden mengetahui adanya pesan maka responden memilih sekuen yang telah berubah, tidak sesuai, atau terlihat aneh secara visual manusia. Di lain pihak, pada pertanyaan kedua, responden yang dirasa mengetahui bahwa ada yang aneh pada salah satu atau kedua sekuen DNA tersebut, untuk menyertakan alasan mengapa mereka menganggapnya aneh. Contoh kuisioner dapat dilihat pada Lampiran 3. Kuisioner dinilai berdasarkan dua kriteria utama, yaitu benar dalam menjawab dan salah dalam menjawab. Responden yang menjawab secara salah ataupun tidak tahu dan menjawab secara benar dengan alasan yang tidak tepat diartikan bahwa responden tersebut tidak mengetahui keberadaan pesan. Responden jenis ini dikategorikan menjawab salah. Di lain pihak, responden yang menjawab secara benar dengan alasan yang tepat diartikan responden mengetahui bahwa ada yang janggal pada sekuen DNA tersebut. Responden jenis ini dikategorikan menjawab benar. Hasil kuisioner untuk analisis imperceptible dapat dilihat pada Tabel 1. Tabel 1 Hasil Kuisioner untuk Analisis Sifat Imperceptible Bidang Ilmu Pilihan Jawaban Salah Benar Ilmu Komputer 9 orang 1 orang Biokimia 9 orang 1 orang Biologi 9 orang 1 orang Total 27 orang 3 orang Berdasarkan pada Tabel 1, dapat dilihat bahwa bahwa 9 responden dari masing-masing bidang ilmu tidak mengetahui secara pasti atau tidak mengetahui adanya pesan dalam sekuen DNA. Hanya 3 orang dari keseluruhan jumlah responden yang berpendapat mereka mengetahui adanya perbedaan dan memberikan 7