BAB 2 LANDASAN TEORI 2.1 - Implementasi Kriptografi Algoritma Elgamal Dengan Steganografi Teknik Least Significant Bit (LSB) Berdasarkan Penyisipan Menggunakan Fungsi Linier

BAB 2 LANDASAN TEORI

2.1 Kriptografi Kriptografi (cryptography) merupakan ilmu dan seni untuk menjaga pesan agar aman.

  (Cryptography is the art and science of keeping messages secure) “Crypto” berarti “secret” (rahasia) dan “graphy” berarti “writing” (tulisan). [4]

  Kriptografi merupakan metode untuk mengamankan data, baik itu data teks maupun data gambar. Metode ini dilakukan dengan penyandian atau pengacakan data asli, sehingga pihak lain yang tidak mempunyai hak akses atas data tersebut tidak dapat memperoleh informasi yang ada di dalamnya.[3]

  Sistem kriptografi terdiri dari 5 bagian yaitu: 1. Plaintext: pesan atau data dalam bentuk aslinya yang dapat terbaca.

  2. Secret Key: merupakan masukan bagi algoritma enkripsi yang berupa nilai bebas terhadap teks asli dan menentukan hasil keluaran algoritma enkripsi.

  3. Ciphertext: keluaran algoritma enkripsi yang dianggap sebagai pesan dalam bentuk tersembunyi.

  4. Algoritma Enkripsi: algoritma enkripsi memiliki 2 masukan yaitu teks asli dan teks kunci rahasia. Algoritma enkripsi melakukan transformasi terhadap teks asli sehingga menghasilkan teks sandi.

  5. Algoritma Dekripsi: algoritma dekripsi memiliki 2 masukan yaitu teks sandi dan kunci rahasia. Algoritma dekripsi memulihkan kembali teks sandi menjadi teks asli bila kunci rahasia yang dipakai algoritma dekripsi sama dengan kunci rahasia yang dipakai algoritma enkripsi.[13]

  2.2 Enkripsi dan Dekripsi

  Proses menyadikan plaintext menjadi ciphertext disebut enkripsi (encryption) atau

  

enciphering (standard nama menurut ISO 7498-2). Sedangkan proses mengembalikan

  (standard nama menurut ISO 7498-2). [12] Secara matematis, proses umum enkripsi dijelaskan sebagai berikut:

  ( ) = Jadi, proses enkripsi E plaintext P akan menghasilkan ciphertext C. Sedangkan proses umum deskripsi adalah sebagai berikut:

  ( ) = Proses dekripsi D ciphertext C, akan menghasilkan plaintext P. Proses umum yang terjadi pada kriptografi dapat dilihat pada Gambar 2.1.

Gambar 2.1 Proses Umum Kriptografi [7]Gambar 2.1 merupakan proses umum kriptografi. Plaintext dienkripsi dengan menggunakan kunci enkripsi untuk menghasilkan ciphertext. Untuk mengubah

  menjadi plaintext, ciphertext didekripsi menggunakan kunci dekripsi untuk

  ciphertext menghasilkan plaintext.

  2.3 Tujuan Kriptografi

  Tujuan dari kriptografi adalah memberi layanan keamanan yang disebut juga dengan aspek keamanan. Aspek-aspek keamanan kriptografi sebagai berikut:

1. Kerahasian (confidentiality), layanan yang ditujukan untuk menjaga agar pesan tidak dapat dibaca oleh pihak-pihak yang tidak berhak.

2. Integritas data (data integrity), layanan yang menjamin bahwa pesan masih asli/utuh atau belum pernah dimanipulasi selama pengiriman.

  3. Otentikasi (authentication), layanan yang berhubungan dengan identifikasi, baik atau entity authentication) maupun mengidentifikasi kebenaran sumber pesan (data origin authentication).

  4. Penyangkalan (non-repudiation), layanan untuk mencegah entitas yang berkomunikasi melakukan penyangkalan, yaitu pengirim pesan menyangkal melakukan pengiriman atau penerima pesan menyangkal telah menerima pesan.[12]

2.4 Jenis Algoritma Kriptografi Berdasarkan Jenis Kunci

  Berdasarkan jenis kunci yang dipakai terdapat 2 (dua) jenis algoritma kriptografi yaitu algoritma simetris dan algoritma asimetris.

2.4.1 Algoritma Simetris

  Sistem kriptografi simetris menggunakan kunci yang sama pada proses penyandian dan proses pemulihan sandi seperti yang ditunjukan pada Gambar 2.2. [13]

Gambar 2.2 Skema Kriptografi SimetrisGambar 2.2 menunjukan bagaimana cara kerja kriptografi simetris. Plaintext dienkripsi dengan kunci kemudian menghasilkan ciphertext, kemudian untuk

  mendekripsi ciphertext menggunakan kunci yang sama pada proses enkripsi untuk menghasilkan pesan asli atau plaintext.

  Kriptografi yang termasuk algoritma simetris adalah DES (Data Encryption

  

Standard), Blowfish, Twofish, Triple-DES, IDEA, Serpent, Affine, Playfair, AES

(Advanced Encryption Standard), dan sebagainya.

  2.4.2 Algoritma Asimetris

  Sistem kriptografi asimetris menggunakan kunci yang berbeda pada proses penyandian dan proses pemulihan sandi seperti yang ditunjukan pada Gambar 2.3.[13]

Gambar 2.3 Skema Kriptografi AsimetrisGambar 2.3 menunjukan bagaimana cara kerja kriptografi asimetris. Plaintext dienkripsi dengan kunci publik kemudian menghasilkan ciphertext, kemudian untuk

  mendekripsi ciphertext membutuhkan kunci private yang menghasilkan pesan asli atau plaintext.

  Kriptografi yang termasuk algoritma asimetris adalah RSA, ElGamal, DSA dan sebagainya.

  2.4.3 Algoritma ElGamal

  Algoritma kriptografi ElGamal merupakan salah satu algoritma kunci asimetris yang didasarkan pada logaritma diskrit. Algoritma kriptografi ElGamal ditemukan oleh Taher ElGamal pada tahun 1984[13]. Skema sistem kriptografi ElGamal dapat dilihat pada Gambar 2.4.

Gambar 2.4 Sistem Kriptografi Algoritma ElGamal

  = [

  dapat dihasilkan menggunakan rumus:

  1

  = ....................................................................................... (1)

  2

  = ( ) ............................................................................ (2)

  Untuk mendekripsi pesan dapat menggunakan rumus: =

  2

  1

  2

  dan C

  × (

  1

  )

  −1

  ] .................................................................... (3) Untuk

  (

  1

  )

  −1

  2

  1

Gambar 2.4 menunjukkan cara kerja algoritma ElGamal yaitu plainteks di enkripsi dengan menggunakan kunci publik p, g dan y. y didapat dari rumus

  1

  = dengan menggunakan kunci private x. Kemudian plainteks dienkripsi dengan rumus

  1

  = dan

  2

  = ( ) dan menghasilkan chipertext.

  

Chipertext didekripsi dengan menggunakan kunci private d dan menggunakan rumus

  dekripsi = [

  2

  × (

  )

  , dan P. Untuk C

  −1 ] untuk menghasilkan plainteks.

  Berikut pembangkit kunci ElGamal: 1. Bilangan prima p > 255.

  2. Dua bilangan acak g dan x dengan syarat < dan < .

  3. Bilangan acak k dengan syarat 0 ≤ ≤ − 2.

  4.

  = . 5. = ( , , ). 6. = .

  Untuk mengenkripsi pesan dibutuhkan k, C

  1 , C

  2

  dapat dihitung dengan rumus:

  −1 −1−

  ( ) = ..................................................................... (4)

  1

  1

  dimana:

  k = kunci publik bilangan acak c

  1 c 2 = hasil cipherteks 2 m = pesan atau teks asli

  Sebagai contoh penggunaan algoritma ElGamal, untuk melakukan enkripsi diambil bilangan prima = 257, bilangan acak = 3, = 4 dan = 7. Hitung

  = → = 81. Pengirim ingin mengirim huruf “A” maka nilai dari setiap huruf dapat diambil dari tabel ASCII. Maka enkripsi dapat dilakukan seperti berikut: 1.

  A dalam ASCII bernilai 65.

  7 2. = = 3 = 131.

  Hitung → 257→

  1

  1

  1

  7

  3. = ( = ( 81 × 65) = 210 Hitung ) → 257 →

  2

  2

  2 Pengirim akan mengirim dan kepada penerima pesan rahasia. Untuk

  1

  

2

  melakukan dekripsi dibutuhkan nilai x, dan . Maka enkripsi dapat dilakukan

  

1

  2

  seperti berikut:

  −1− −1 −1 257−1−4

  1. ) = ) = 131 Hitung ( → ( 252

  1

  1

  1 −1

  ) = 190. →(

  1 −1

  × ( ) 2. Hitung = → = 210 × 190 257 → m = 65.

  2

  1 3.

  Kemudian bilangan 65 diubah ke ASCII menjadi huruf “A”.

  Setelah melakukan dekripsi, penerima menemukan pesan rahasia yaitu teks asli yang sebelum dilakukan enkripsi oleh pengirim pesan rahasia. Maka didapat

  plainteks “A” dan tersampaikan pesan rahasia.

2.5 Bilangan Prima

  ( Bilangan positif p > 1) disebut bilangan prima jika pembaginya hanya 1 dan p.

  Sebagai contoh bilangan 23 adalah bilangan prima karena ia hanya habis dibagi 1 dan

  23. Karena bilangan prima harus lebih besar dari satu, maka barisan bilangan prima dimulai dari 2, yaitu 2, 3, 5 , 7, 11, 13, .... Seluruh bilangan prima adalah bilangan ganjil, kecuali dua yang merupakan bilangan genap. [12] Aritmatika modulo merupakan sisa hasil pembagian 2 (dua) bilangan. Operator yang digunakan dalam aritmatika modulo adalah mod. Misalkan a adalah bilangan bulat dibagi dengan m adalah bilangan bulat > 0 , maka akan menghasilkan sisa bagi r dengan q adalah hasil bagi. Sehingga dapat dinotasikan sebagai berikut[7] : = sedemikian sehingga = + , dengan 0 ≤ < Contoh :

  16 6 = 4, dimana 16 = (4 × 3) + 4

  Fermat’s Little Theorem

2.7 Fermat’s little theorem adalah suatu metode yang digunakan untuk menguji

  keprimaan suatu bilangan bulat. Teorema Fermat ditemukan oleh Pierre De Fermat merupakan seorang matematikawan Perancis pada tahun 1640. Fermat's Little

  Theorem digunakan jika bilangan prima p dan bilangan bulat a adalah bilangan bulat −1

  yang tidak habis dibagi oleh p, yaitu PBB( , ) = 1, maka ≡ 1 (mod p)[12]. Untuk nilai a rentang dalam 1 < < .

  Sebagai contoh diambil bilangan prima = 7. Sehingga nilai a dalam rentang 1 <

  < 7 adalah = 2, . . . , 7. Misalkan = 2, maka:

  −1

  2 ≡ 1( )

  7−1

  6

  2 ( ≡ 2 7)

  ≡ 64( 7) ≡ 1( 7)

7 Didapatkan hasil dari

  2 ≡ 1 ( 7), dapat disimpulkan bahwa 7 adalah bilangan prima. Meskipun dapat digunakan untuk mempermudah kalkulasi dalam kriptografi, peran terpenting dari Fermat's little theorem adalah sebagai dasar dari berbagai teknik enkripsi asimetris.[10]

2.8 Citra Digital Citra adalah suatu representasi (gambaran), kemiripan, atau imitasi dari suatu objek.

  Citra sebagai keluaran suatu sistem perekaman data dapat bersifat optik berupa foto, bersifat analog berupa sinyal-sinyal video seperti gambar pada monitor televisi, atau bersifat digital yang dapat langsung disimpan pada suatu media penyimpanan. Citra digital adalah citra yang dapat diolah komputer[14]. Beberapa format citra digital yang banyak ditemui adalah BMP, JPEG, GIF, PNG, dan lain-lain.

2.8.1. BITMAP

  

File citra bitmap merupakan format file citra yang tidak mengalami proses kompresi

sehingga kualitas gambar yang dihasilkan baik daripada file citra dengan format lain.

  Pada file citra bitmap, nilai intensitas pixel dalam citra dipetakan ke dalam sejumlah bit tertentu yang umumnya panjang setiap pixel adalah 8 bit. Delapan bit ini

  8

  merepresentasikan nilai intensitas pixel. Dengan demikian ada sebanyak 2 = 256 derajat keabuan, mulai dari 0 sampai 255.[7]

  File citra bitmap menyimpan data kode citra secara digital dan lengkap (cara

  penyimpanannya adalah per pixsel). Citra ini memiliki kelebihan untuk memanipulasi warna, tetapi mengubah objek lebih sulit.[14] File citra bitmap dapat dilihat pada Gambar 2.5.

Gambar 2.5 Contoh File Citra Bitmap

  2.8.2. PNG

  PNG adalah kependekam dari Portable Network Grapihics dan merupakan format standar terbuka format image raster yang didukung oleh W3C dan IETF. Format PNG mengganti format GIF (Graphics Interchange Format) dan format TIFF (Tagged Image File Format). PNG memiliki tiga mode warna, yaitu paletted (8 bit), grayscale (16 bit), truecolor (hingga 48 bit). [11] File citra PNG memiliki fitur transparansi seperti yang terlihat pada Gambar 2.6.

Gambar 2.6 Contoh File Citra PNG

  2.8.3. JPEG

  Joint Photograpic Experts (JPEG , dibaca jay-peg) di rancang untuk kompresi beberapa full-color atau gray-scale dari suatu gambar yang asli, seperti pemandangan asli di dunia ini. JPEG sudah mendukung untuk 24-bit color depth atau sama dengan

  24

  16,7 juta warna (2 = 16.777.216 warna). JPEG adalah algoritma kompresi secara lossy. JPEG bekerja dengan merubah gambar spasial dan merepresentasikan kedalam pemetaan frekueunsi. [6]

  JPEG dirancang untuk mengeksploitasi tingkatan dari mata kita yakni bahwa mata kita tidak akan dapat mebedakan perubahan yang lambat terang dan warna dibandingkan dengan perbedaan suatu jarak apakah jauh atau dekat. Untuk itu JPEG sangat baik digunkan pada fotografi dan monitor 80-bit. JPEG sebenarnya hanyalah algoritma kompresi, bukan merupakan nama format file. File yang biasa disebut JPEG pada jaringan sebenarnya adalah JFIF (JPEG File Interchange Format). [6] File citra JPEG dapat dilihat pada Gambar 2.7.

Gambar 2.7 Contoh File Citra JPEG

2.9 Steganografi

  Kata steganografi berasal dari bahasa Yunani steganos yang artinya “tersembunyi/terselubung” dan graphein “menulis” sehingga kurang lebih artinya “menulis (tulisan) terselubung”. [2]

  Steganografi merupakan seni untuk menyembunyikan pesan di dalam media digital sedemikian rupa sehingga orang lain tidak menyadari ada sesuatu pesan didalam media tersebut.[15]

  Steganografi menggunakan dua properti, yaitu wadah penampung dan data rahasia yang akan disembunyikan. Steganografi digital menggunakan media digital sebagai wadah penampung, misalnya citra, audio, teks dan video.[14]

  Terdapat beberapa istilah yang berkaitan dengan steganografi: 1. Hiddentext atau embedded message: pesan yang disembunyikan.

  2. Coverimage: citra yang digunakan untuk menyembunyikan embedded message.

  3. Stegoimage: citra yang sudah berisi embedded message.

  4. Stegokey: kunci rahasia.[5] 5.

  Embedding : proses menyisipkan pesan pada citra sebagai medium penyisipan pesan.

  6. Extract : mengambil pesan yang terdapat pada citra atau medium penyisipan.

  Pada teknik steganografi terdapat dua proses, yaitu proses penyisipan pesan (embedding) pada cover image dan pengembalian pesan (extraction) seperti yang ditunjukan pada Gambar 2.8.

  Coverimage Hiddentext Hiddentext Stegoimage

  Embedding Extraction Key Key

Gambar 2.8 Diagram Penyisipan dan Ekstrasi Pesan[6]Gambar 2.8 menunjukkan proses penyisipan (embedding) dan ekstrasi

  (extraction) pesan. Untuk menyisipkan pesan (hiddentext) dilakukan proses penyisipan (embedding) pada sebuah citra (coverimage) memerlukan kunci rahasia (stego key) untuk menghasilkan stegoimage atau pesan yang sudah disisipakan pesan rahasia. Untuk melakukan extraction dibutuhkan kunci rahasia untuk mengambil pesan yang terdapat pada coverimage. Berikut contoh hiddentext, coverimage dan stegoimage yang ditunjukan pada Tabel 2.1.

Tabel 2.1 Tabel contoh dari Hiddentext, Coverimage dan Stegoimage[12]

  

Hiddentext Cover Image Stego Imagw

  Istilah keilmuan serumpun terasa memberikan distorsi persepsi pada maksud sebenarnya. Persepsi yang segera terbentuk dengan istilah tesrebut adalah eprtumbuhan dari akar-akar ilmu membentuk suatu rumpun, yang berarti bahwa nuansa historis organisasi/ kelompok/ unit yang mewadahinya.

  Kriteria steganografi yang bagus sebagai berikut: 1. Fidelity, mutu citra yang menampung data tidak jauh berubah.

  2. Robustness, pesan yang disembunyikan harus tahan (robust) terhadap berbagai penajaman, pemampatan, rotasi, perbesaran gambar, pemotongan cropping, enkripsi dan sebagainya.

3. Recovery, data yang disembunyikan harus dapat diungkapkan kembali (recovery).

  [14]

2.10 Least Significant Bit

  Metode least significant bit, digunakan citra digital sebagai media penyamar atau

  

cover-object . Pada setiap byte dari piksel citra, terdapat bit yang paling kecil bobotnya

  (Least Significant Bit atau LSB).[2] Metode ini bekerja dengan cara mengganti bit terakhir dari masing-masing

  

pixel dengan pesan yang akan disisipkan. LSB mempunyai kelebihan yakni ukuran

  gambar tidak akan jauh berubah. Sedangkan kekurangannya adalah pesan/data yang akan disisipkan terbatas, sesuai dengan ukuran citra.[1] Sebagai contoh akan disisipkan A kedalam sebuah sebuah citra. Nilai A dalam ASCII adalah 65. Kemudian nilai ASCII A diubah menjadi biner yaitu 01000001. Piksel citra yang akan disisipkan teks yaitu 00000001, 00000110, 00000101, 00000011, 00000111, 00000100, 00000111, 00000100. Tabel 1 menunjukkan hasil dari penyisipan.

Tabel 2.2. Tabel proses penyisipan Least Significant Bit (LSB)

  Biner Piksel Citra Biner Huruf A Piksel Citra Yang berubah 00000001 0000000 00000110 1 0000011

  1

  00000101 0000010 00000011 0000001 00000111 0000011

  00000100 0000010 00000111 0000011 00000100 1 0000010

  1

2.11 Fungsi Linier

  ( Suatu korespondensi

  , ) antara dua himpunan bilangan yang memasangkan sebarang bilangan x dari himpunan pertama sengan tepat satu bilangan y dari himpunan kedua disebut suatu fungsi.[8]

  Untuk rumus umum persamaan linier ditulis sebagai berikut [9]: ( ) = + .............................................................................................(5) kemiringan garis adalah m , b merupakan perpotongan sumbu y.[9]

  Sebagai contoh, misalkan nilai m= 1 dan b=2, sehingga: ( ) = + ( ) = 1 + 2 ( ) = + 2

Dokumen yang terkait

Analisis Perbandingan Least Significant Bit (LSB) dan Least Significant Bit (LSB) dengan Penyisipan menurut Fungsi Linear Pada teknik Steganografi

1 56 102

Implementasi Kriptografi Algoritma Elgamal Dengan Steganografi Teknik Least Significant Bit (LSB) Berdasarkan Penyisipan Menggunakan Fungsi Linier

5 81 114

Pengamanan Data Menggunakan Kriptografi EC Signcryption dan Steganografi Least Significant Bit (LSB) Dini Triasanti

1 1 9

BAB 2 LANDASAN TEORI - Steganografi Teks Menggunakan Pangram Dan Medium Citra Pada Enhanced Least Significant Bit

0 0 22

BAB 2 LANDASAN TEORI 2.1 Steganografi - Analisis dan Perancangan Pengujian Nilai MSE (Mean Squared Error) pada Proses Penyisipan Label Citra dengan Menggunakan Metode Modified Least Significant Bit (MLSB)

0 0 17

BAB 2 LANDASAN TEORI 2.1 Kriptografi - Perancangan Aplikasi Kombinasi Algoritma Steganografi Least Significant Bit dan Alagoritma Kriptografi Kanpsack Merkle-Hellman pada Citra Bitmap

0 0 17

Analisis Perbandingan Least Significant Bit (LSB) dan Least Significant Bit (LSB) dengan Penyisipan menurut Fungsi Linear Pada teknik Steganografi

0 0 16

Analisis Perbandingan Least Significant Bit (LSB) dan Least Significant Bit (LSB) dengan Penyisipan menurut Fungsi Linear Pada teknik Steganografi

0 3 15

Perbandingan Steganografi Data Teks Ke Dalam File Audio Menggunakan Algoritma Least Significant Bit (LSB) Dan Modified Least Significant Bit (MLSB)

0 1 12

BAB 2 LANDASAN TEORI 2.1 Kriptografi - Kombinasi Algoritma Rsa Dan Elgamal Dalam Implementasi Algoritma Kriptografi

0 0 28