T1__Full text Institutional Repository | Satya Wacana Christian University: Pemodelan Digital Signature Menggunakan RSA untuk Menjaga Keutuhan Citra Digital T1 Full text

Pemodelan Digital Signature Menggunakan RSA
untuk Menjaga Keutuhan Citra Digital

Artikel Ilmiah

Peneliti:
Eko Prasetyo (672012090)
Wiwin Sulistyo, ST., M.Kom.

Program Studi Teknik Informatika
Fakultas Teknologi Informasi
Universitas Kristen Satya Wacana
Salatiga
September 2016

1.

Pendahuluan

Jaringan komputer dan internet mempermudah proses pertukaran informasi.
Salah satu bentuk informasi yang sering dikirimkan lewat jaringan internet adalah

file citra digital. File citra digital yang tersimpan di dalam harddisk misalnya, dapat
dibaca kemudian dimanipulasi, sehingga mengubah informasi yang dimaksudkan
oleh citra digital tersebut [1]. Sebagai contoh, gambar hasil X-ray, dapat diubah
sehingga seolah-olah pasien menderita penyakit tertentu. Jika gambar ini digunakan
sebagai acuan pengobatan, maka dapat menimbulkan kerugian bagi pasien, maupun
dokter karena terjadi malpraktek [2].
Citra digital dimanipulasi dengan cara mengganti piksel-piksel yang ada di
dalamnya. Proses ini dapat dilakukan dengan menggunakan aplikasi image editor,
seperti Adobe Photoshop. Aplikasi tersebut menyediakan alat untuk mengolah citra
digital, seperti bluring, cropping, penambahan teks, dan lain sebagainya.
Suatu citra digital jika dimanipulasi dengan tujuan jahat akan dapat
menimbulkan kerugian bagi pihak yang menggunakan informasi pada citra digital
tersebut, sehingga diperlukan suatu cara supaya pihak pengguna citra digital
tersebut, dapat mengetahui apakah citra digital yang digunakan, sudah mengalami
kerusakan/perubahan/manipulasi atau tidak. Untuk mengetahui apakah citra digital
tersebut masih utuh, dengan kondisi yang sama seperti yang dikirimkan oleh
pengirim, dapat digunakan metode digital signature.
Digital-signature adalah suatu cara matematis untuk menunjukkan keaslian
suatu dokumen [3]. Digital signature memiliki fungsi sebagai penanda pada data
yang memastikan bahwa data tersebut adalah data yang sebenarnya (tidak ada yang

berubah) [4]. Jika diimplementasikan pada citra digital, maka digital signature
berfungsi untuk memastikan bahwa piksel-piksel di dalamnya tidak mengalami
pergantian nilai akibat manipulasi atau kerusakan.
Pada penelitian ini diimplementasikan metode digital signature dengan
kombinasi algoritma RSA, MD5, dan algoritma penyisipan LSB dan EOF. Digital
signature diperoleh dengan cara meringkas data pada citra digital sehingga
terbentuk hash, dengan algoritma MD5. Hash kemudian dienkripsi dengan
algoritma RSA, hasilnya disisipkan pada citra digital. Proses penyisipan dilakukan
dengan algoritma LSB atau EOF. Pada pengujian dibandingkan dan dianalisis
kelebihan dan kekurangan dari proses penyisipan LSB dan EOF pada tiga jenis
format gambar yang umum, yaitu PNG, JPG, dan BMP.
2.

Tinjauan Pustaka

Pada penelitian yang berjudul "Elliptic Curve Digital signature Algorithm
(ECDSA)" dibahas tentang perlunya suatu mekanisme untuk menjamin keaslian
(otentikasi) dokumen elektronis dalam pertukaran dokumen (file) [5]. Metode yang
digunakan untuk mengatasi permasalahan di atas adalah dengan cara menambahkan
tanda tangan digital pada dokumen tersebut. Digital signature pada penelitian

tersebut diimplementasikan dengan algoritma ECDSA.
Penelitian yang selanjutnya berjudul “Studi dan Implementasi Algoritma
RSA untuk Pengamanan Data Transkrip Akademik Mahasiswa”. Masalah

1

keamanan dan kerahasiaan data merupakan hal yang penting dalam suatu
organisasi. Data yang bersifat rahasia tersebut perlu dibuatkan sistem penyimpanan
dan pengirimannya agar tidak terbaca atau diubah oleh orang-orang yang tidak
bertanggung jawab, baik saat data tersebut tersimpan sebagai file di dalam
komputer maupun saat data tersebut dikirim melalui email. Penelitian ini membuat
model sistem pengamanan dengan proses enkripsi dan dekripsi menggunakan
algoritma RSA. Hasil penelitian ini menunjukkan bahwa algoritma RSA berhasil
diimplementasikan untuk pengamanan data transkrip akademik mahasiswa dengan
diperolehnya hasil komputasi algoritma RSA adalah sebesar 15625 mikrodetik,
sedangkan kompleksitas memori yang dibutuhkan algoritma RSA sebesar 3908
bytes [6].
Pada penelitian berjudul "Aplikasi Metode Steganography Pada Citra
Digital dengan Menggunakan Metode LSB (Least Significant Bit)", dibahas
mengenai implementasi LSB embedding untuk menyembunyikan pesan pada citra

digital [7]. Metode LSB embedding dipilih karena dengan melakukan penggantian
pada bit belakang pada warna citra, maka perubahan tingkat intensitas warna tidak
dapat terdeteksi oleh mata manusia.
Penelitian Patricia dan Aripin (2015) membahas mengenai keamanan data
menggunakan kriptografi algoritma Vigenere cipher dan steganografi dengan
metode end of file (EOF) [8]. Pada penelitian tersebut, file pesan yang akan
disisipkan, dienkripsi terlebih dahulu dengan algoritma Vigenere. Ciphertext yang
dihasilkan, kemudian disisipkan ke dalam file cover yang berupa file gambar
dengan format BMP. Hasil dari penelitian tersebut yaitu menghasilkan aplikasi
yang dapat menyembunyikan file dengan baik dan menutup kecurigaan dari pihak
lain.
Berdasarkan penelitian-penelitan tentang digital signature, RSA, metode
penyisipan LSB, dan metode penyisipan EOF, maka dilakukan penelitian ini yang
mengimplementasikan digital signature dengan menggunakan algoritma-algoritma
tersebut. Perbedaan penelitian yang dilakukan ini dengan penelitian-penelitian
sebelumnya adalah, Pada penelitian ini diimplementasikan metode digital signature
dengan kombinasi algoritma RSA, MD5, dan algoritma penyisipan LSB dan EOF.
Digital signature diperoleh dengan cara meringkas data pada citra digital sehingga
terbentuk hash, dengan algoritma MD5. Hash kemudian dienkripsi dengan
algoritma RSA, hasilnya disisipkan pada citra digital. Proses penyisipan dilakukan

dengan algoritma LSB atau EOF.
Teknik steganografi End of file (EOF) merupakan salah satu teknik yang
digunakan dalam steganografi. Teknik ini digunakan dengan cara menambahkan
data atau pesan rahasia pada akhir file. Teknik ini dapat digunakan untuk
menambahkan data yang ukurannya sesuai dengan kebutuhan. Perhitungan kasar
ukuran file yang telah disisipkan data sama dengan ukuran file sebelum disisipkan
data ditambah ukuran data rahasia yang telah diubah menjadi encoding file. EOF
adalah suatu kode yang ditempatkan oleh komputer pada akhir suatu file, tepatnya
setelah byte informasi terakhir pada file tersebut [9] . Tanda EOF sangat berguna
pada transmisi dan penyimpanan data. File disimpan pada blok-blok, dan tanda
EOF membantu komputer untuk mengetahui apakah kapasitas penyimpan tersedia
untuk menyimpan file tersebut [10].

2

LSB embedding merupakan teknik steganografi yang menggunakan
pendekatan tergolong sederhana dan langsung. Sesuai dengan namanya, teknik LSB
embedding menyisipkan pesan ke dalam LSB (least significant bit). Hal ini hanya
akan mempengaruhi nilai warna pada piksel sebesar + 1, maka secara umum
diasumsikan bahwa degradasi warna yang terjadi dapat tidak dikenali oleh mata

[11]. Jika digunakan image 24 bitcolor sebagai cover, sebuah bit dari masingmasing komponen Red, Green, dan Blue, dapat digunakan, sehingga tiga bit dapat
disimpan pada setiap piksel. Sebuah image 800 x 600 piksel dapat digunakan untuk
menyembunyikan 1.440.000 bit (180.000 bytes) data rahasia. Misalkan terdapat
piksel-piksel dari image 24 bit color, dapat dilihat bahwa bit-bit pesan rahasia
mengubah bit-bit terakhir citra gambar.
00111000 01010110 11000111 00110011
Jika ada pesan rahasia yang memiliki nilai 1101, maka dihasilkan:
00111001 01010111 11000110 00110011
LSB embedding memiliki kelebihan dibandingkan dengan algoritma EOF
steganography [12], dalam hal perubahan ukuran dokumen yang disisipi. LSB
embedding tidak menambahkan ukuran dokumen, karena proses yang terjadi adalah
mengganti bit akhir tiap warna. EOF bekerja dengan menambahkan informasi pada
akhir dokumen. Algoritma steganografi yang lain adalah algoritma DCT. Algoritma
ini menggunakan frequency domain dari citra digital untuk menyisipkan informasi.
Kelemahan dari algoritma DCT adalah mata manusia dapat mengenali perubahan
yang terjadi pada frekuensi rendah [13]. Karena kelebihan-kelebihan dari algoritma
LSB embedding, maka pada penelitian ini dipilih LSB embedding dalam proses
penyisipan Digital signature dalam dokumen digital.
Digital signature adalah salah satu teknologi yang digunakan untuk
meningkatkan keamanan jaringan. Digital signature memiliki fungsi sebagai

penanda pada data yang memastikan bahwa data tersebut adalah data yang
sebenarnya (tidak ada yang berubah). Digital signature dapat memenuhi setidaknya
dua syarat keamanan jaringan, yaitu authenticity dan non-repudiation, dan juga
integrity (keutuhan data). Authenticity berarti bahwa dokumen tersebut berasal dari
pemilik yang spesifik. Non-repudiation berarti bahwa berdasarkan digital signature
di dalam suatu dokumen, pelaku/pengirim tidak dapat mengingkari bahwa yang
bersangkutan melakukan pengiriman/manipulasi data. Integrity berarti bahwa
keutuhan suatu dokumen dapat diketahui berdasarkan kondisi digital signature
didalamnya [14].

Gambar 1 True Color 24 bit dan 32 bit [15]

Pada penelitian ini, format file citra digital yang digunakan adalah PNG, BMP
dan JPG. PNG dan BMP merupakan True Color image. True Color image berarti
tiap piksel direpresentasikan dengan 3 byte, terbagi ke dalam red, green, dan blue
masing-masing 1 byte (Gambar 1). Hal ini sering disebut dengan warna RGB, atau
3

True Color 24 bit. Selain 24 bit warna, file PNG juga mendukung 32 bit warna.
True Color 32 bit sama dengan 24 bit, dengan perbedaan adalah adanya 1 byte

tambahan yang disebut komponen alpha [15][16].
Pada Gambar 2 ditunjukkan contoh potongan dari suatu gambar True Color
Image. Potongan ini memiliki dimensi 6 x 6 piksel. Pada tiap piksel terdapat tiga
bagian warna yaitu red, green dan blue. Pada lokasi piksel 1,1 terdapat warna red
bernilai 96, green bernilai 143, dan blue bernilai 179. Pada lokasi piksel 1,2 terdapat
warna red 61, green 125, dan green 198.

Gambar 2 Komponen RGB pada File Gambar 24 Bit Warna.

JPG adalah standar format gambar de facto dan yang paling populer
digunakan di web. JPG mendukung 16.7 juta warna dan format yang lebih disukai
untuk menyimpan file foto [17]. File JPG juga lebih kecil dibandingkan dengan
format gambar lainnya karena menggunakan kompresi 'lossy' untuk mengurangi
ukuran file. Kompresi ‘lossy’ adalah kompresi yang menghilangkan sebagian data
[18]. Hal ini mungkin tidak disadari oleh mata manusia, tapi gambar JPG
mengorbankan beberapa informasi gambar untuk membuat ukuran file menjadi
kecil. Setiap kali file JPG disimpan, beberapa data menjadi hilang, dan data gambar
yang hilang tersebut tidak dapat dipulihkan.
Format PNG dirancang sebagai alternatif elegan untuk GIF. Seperti GIF,
format PNG mendukung warna 8-bit, tetapi juga meluas ke 24-bit, sehingga

memberikan lebih banyak jangkauan warna seperti dalam file JPEG. PNG tidak
mendukung animasi. PNG menggunakan kompresi ‘lossless’ untuk
mempertahankan informasi warna ketika dikompresi, sehingga tidak ada informasi
yang hilang seperti yang terjadi pada JPG. Gambar dengan warna yang kompleks
akan menyebabkan ukuran file yang lebih besar [17].
BMP merupakan format file asli dari platform Windows, dan merupakan
format pendahulu bagi format gambar JPG, dan PNG. Format BMP umumnya tidak
memungkinkan untuk kompresi gambar kecuali disimpan dalam salah satu format

4

yang dibahas tersebut. Gambar BMP memiliki kualitas yang tajam, namun karena
tidak mendukung kompresi, maka gambar BMP memiliki ukuran yang lebih besar
daripada format JPG maupun PNG [17].
3.

Metode dan Perancangan Sistem

Penelitian yang dilakukan, diselesaikan melalui tahapan pemodelan yang
terbagi dalam enam tahapan, yaitu: analisis kelayakan, desain model, implementasi

komputer, evaluasi/pengujian model, optimasi/perbaikan model, dan produk model
[19].

ANALISIS KELAYAKAN

DESAIN MODEL

IMPLEMENTASI KOMPUTER

EVALUASI/PENGUJIAN MODEL

OPTIMASI/PERBAIKAN MODEL

PRODUK MODEL
Gambar 3 Tahapan Penelitian

Tahapan penelitian pada Gambar 3, dijelaskan sebagai berikut: Tahap
analisis kelayakan: mengidentifikasi masalah, mengidentifikasi tujuan, dan
membatasi masalah. Masalah yang ditemukan adalah perlunya pengamanan
dokumen digital dari perubahan dan pemalsuan, terutama pada dokumen yang

ditransmisikan lewat jaringan Internet. Tujuan yang ditemukan adalah untuk
mengamankan dokumen digital terhadap ancaman tersebut. Masalah dibatasi pada
dokumen dengan bentuk citra digital. Tahap desain model, merancang sistem yaitu
proses pembangkitan kunci publik dan privat, serta proses pembangkitan digital
signature dan validasi digital signature. Tahap implementasi komputer: yaitu
mengimplementasikan hasil perancangan model, membangun model berdasarkan
rancangan pada tahap sebelumnya. Dokumen yang digunakan adalah citra digital
dengan format PNG, BMP dan JPG. Tahap evaluasi/pengujian model: adalah
5

melakukan pengujian model dan kemudian melakukan analisis terhadap hasil
pengujian tersebut. Tahap optimasi model, adalah melaukan perbaikan dan
optimasi pada model, sesuai dengan masalah atau kebutuhan baru yang muncul
pada tahap evaluasi. Tahap produk model, pada tahap ini dihasilkan model akhir
yang telah sesuai dengan kebutuhan.
Signing
Pivate Key
Citra Digital

Enkripsi
Hash

Hitung Hash

Hitung Hash

Citra Digital
dengan
Digital
Signature

Ekstrak
Digital
Signature

Verification

Sisipkan ke
Citra Digital

Citra digital
valid jika
Hash Awal
sama
dengan Hash
Akhir

Hash Akhir

Dekripsi Digital
Signature
Hash Awal
Public Key

Gambar 4 Arsitektur Sistem

Sistem yang dikembangkan, memiliki desain yang ditunjukkan pada
Gambar 4. Sistem terdiri dari dua proses, yaitu proses signing dan proses verifiying.
Proses signing dilakukan oleh signatory, dengan menanamkan digital signature ke
dalam dokumen. Proses verifiying dilakukan oleh verifier, dengan mengekstraksi
digital signature dari dalam dokumen.

Mulai

Hitung nilai HASH citra
digital dengan algoritma
MD5

Input
Private
Key

Input
Dokumen
Citra
Digital

Enkripsi HASH sehingga
menjadi Digital
Signature

Embed Digital Signature

Output
dokumen

Selesai

Gambar 5 Alur Proses Pemberian Digital Signature

Proses pemberian digital signature ditunjukkan pada Gambar 5. Proses ini
memerlukan input dari pengguna yaitu kunci, dan dokumen citra digital. Kunci
digunakan untuk menyandikan hash. Hash diperoleh dari proses algoritma MD5.
Hash terenkripsi disisipkan ke dalam citra digital. Hasil akhir adalah dokumen citra
digital yang telah diberi digital signature.

6

Input
Dokumen
Citra
Digital

Input
Public Key

Mulai

Hitung nilai HASH

Ekstrak Digital Signature
Dekripsi Digital
Signature

Ouput
valid

HASH sama
dengan hasil
Dekripsi

YA

Output
tidak valid

TIDAK

Selesai

Gambar 6 Alur Proses Verifikasi Digital Signature

Pada proses verifikasi (Gambar 6), hash yang telah disisipkan, diekstrak
kemudian didekripsi. Hasil dekripsi dibandingkan dengan hash citra digital
sekarang. Jika nilai hash ini berbeda, maka dapat dipastikan bahwa citra digital
tersebut telah mengalami perubahan.
Proses pembuatan digital signature dijelaskan menggunakan contoh
berikut. Jika terdapat suatu gambar berukuran 4 x 2 piksel, dan tiap piksel terdiri
dari 3 warna (RGB).
Tabel 1 Contoh Susunan Nilai Warna pada Citra Digital
R

G

B

R

G

B

R

G

B

R

G

B

200

200

100

45

55

10

90

120

90

255

0

0

80

70

0

255

255

255

90

90

10

178

190

240

Pada Tabel 1, piksel pertama memiliki komponen warna R =2 00, G = 200,
B = 100, piksel kedua memiliki komponen warna R = 45, G = 55, B = 10. Tiap
komponen warna ini kemudian dihitung nilai ringkasan (hash) dengan
menggunakan algoritma MD5. MD5 menghasilkan output hash dengan panjang 16
byte, dengan panjang input bebas. Sehingga input dengan panjang 1 byte akan tetap
menghasilkan 16 byte hash, input dengan panjang 100 byte akan menghasilkan 16
byte hash juga.
Tabel 2 Contoh Hasil Proses Tahap Pertama: Pembuatan Ringkasan/Hash
Nilai warna

Hash

200
200
100

diproses dengan algoritma
MD5

45
55

120

7

10

60

90

70

120

44

90

110

255

45

0

121

0

190

80

180

70

245

0

235

255

89

255

100

255

112

90

78

90

90

10
178
190
240

Tahap pertama menghasilkan nilai ringkasan (hash). Pada penelitian ini
digunakan algoritma MD5 untuk membuat ringkasan, sehingga berdasarkan
spesifikasi MD5, hash yang dihasilkan memilik panjang 16 byte. Pada contoh di
Tabel 2, dihasilkan nilai hash: 120, 60, 70, 44, 110, 45, 121, 190, 180, 245, 235, 89,
100, 112, 78, 90.
Tahap kedua yaitu mengenkripsi nilai hash ini dengan algoritma RSA.
Algoritma RSA bersifat asimetrik, sehingga kunci yang digunakan untuk enkripsi
berbeda dengan kunci dekripsi. Pada penggunaan di digital signature, kunci untuk
enkripsi dimiliki dan dirahasikan oleh pemilik citra digital. Karena sifatnya ini,
maka kunci enkripsi disebut sebagai kunci private.
Tabel 3 Contoh Hasil Proses Tahap Pertama: Pembuatan Ringkasan/Hash
Hash
Nilai warna
Hash
Terenkripsi
200
200
100
45
55
10
90

diproses dengan algoritma
MD5

120

244

60

245

70

105

120

44

198

90

110

123

255

45

162

0

121

234

0

190

90

8

80

180

67

70

245

45

0

235

68

255

89

11

255

100

84

255

112

25

90

78

47

90

90

135

10
178
190
240

Pada tahap kedua, dihasilkan hash terenkripsi: 244, 245, 105, 198, 123, 162,
234, 90, 67, 45, 68, 11, 84, 25, 47, 135. Hash terenkripsi kemudian disisipkan ke
dalam citra digital dengan algoritma EOF atau LSB.
Kunci dekripsi hanya dapat digunakan untuk proses dekripsi, sehingga tidak
dapat digunakan untuk menyandikan nilai ringkasan. Kunci dekripsi dapat
diberikan oleh pengirim kepada pihak-pihak yang bermaksud untuk menggunakan
informasi dari citra digital. Kunci dekripsi ini berguna untuk proses validasi
keutuhan citra digital, dengan cara membandingkan hasil dekripsi dengan nilai
ringkasan yang baru.
4.

Hasil dan Pembahasan

Pada bagian ini dijelaskan tentang hasil penelitian yang telah dilakukan.
Pembahasan terbagi pada pembahasan hasil penelitian dan pembahasan aspek
keamanan.
Berdasarkan perancangan yang telah dibuat maka antarmuka sistem yang
dihasilkan ditunjukkan pada Gambar 6 dan Gambar 7. Gambar 6 ditunjukkan hasil
dari proses digital signing. Gambar 7 menunjukkan hasil dari proses verifikasi.

Gambar 7 Tampilan Proses Pemberian Digital Signature

9

Gambar 7 merupakan form yang digunakan untuk proses pemberian digital
signature, ditampilkan perubahan nilai hash (signature) sebelum dan sesudah
proses enkripsi. Signature dengan panjang 16 byte, kemudian disisipkan ke dalam
citra digital yang hasil akhirnya ditampilkan pada sisi sebelah kanan (signed
image).

Gambar 8 Tampilan Proses Verifikasi

Pada proses verifikasi ditampilkan hasil akhir berupa valid atau tidak valid
(Gambar 8). Nilai digital signature yang telah disisipkan sebelumnya dibandingkan
dengan nilai digital signature sekarang. Jika kunci yang digunakan untuk proses
verifikasi berbeda dengan kunci pada proses pemberian digital signature, maka
nilai digital signature akan memberikan hasil yang berbeda, sekalipun citra digital
tidak mengalami perubahan (manipulasi). Sehingga hanya penerima yang sah, yang
memiliki kunci yang tepat, yang dapat melakukan proses verifikasi.
Kode Program 1 Perintah untuk Membaca Warna pada Dokumen Gambar
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17

public static byte[] ExtractColors(Bitmap img)
{
List list = new List();
Bitmap bitmap = img;
for (int y = 0; y < img.Height; y++)
{
for (int x = 0; x < img.Width; x++)
{
Color c = bitmap.GetPixel(x, y);
list.Add(c.R);
list.Add(c.G);
list.Add(c.B);
}
}
return list.ToArray();
}

.Net Framework menyediakan library untuk mengolah dokumen dengan
format PNG, yaitu dengan menggunakan class Bitmap. Melalui class ini dapat
dilakukan proses manipulasi piksel yang ada di dalam suatu dokumen gambar. Bit

10

digital signature disisipkan pada LSB tiap warna pada piksel. Dalam satu piksel
terdapat 3 warna yaitu RED, GREEN dan BLUE (perintah pada baris 11-13), dengan
demikian dalam satu piksel dapat disisipi 3 bit data.
Kode Program 2 Perintah untuk Memanipulasi LSB
1
2
3
4
5
6
7
8
9
10

private static byte ReplaceLSB(byte current, char p)
{
string binary = Convert
.ToString(current, 2)
.PadLeft(8, '0');
char[] arrayBit = binary.ToCharArray();
arrayBit[7] = p;
binary = new string(arrayBit);
return Convert.ToByte(binary, 2);
}

Untuk mengubah LSB suatu byte warna, maka proses yang dilakukan adalah
mengubah warna tersebut ke dalam format binary. Kemudian bit paling kanan dari
warna tersebut diganti dengan bit pesan. Untuk mengubah byte menjadi binary
digunakan library class Convert (perintah pada baris 3).
Kode Program 3 Perintah untuk Membaca Digital signature
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19

public static byte[] GetLSB(byte[] data)
{
List bits = new List();
for (int i = 0; i < data.Length; i++)
{
bits.Add(RetrieveLSB(data[i]));
}
int x = bits.Count % 8;
if (x != 0)
{
for (int i = 0; i < x; i++)
{
bits.Add('0');
}
}
byte[] message = GetBytesArray(
new string(bits.ToArray()));
return message;
}

Proses untuk membaca digital signature terdari dari proses membaca warna
pada dokumen gambar. Dilanjutkan dengan proses membaca nilai LSB dari tiaptiap warna, dan dikumpulkan pada suatu variabel penampung (perintah pada baris
3).
Pengujian sistem dilakukan terhadap beberapa faktor yaitu otentikasi,
integritas, dan pengaruh LSB dan EOF pada berbagai tipe file gambar. [14].
Otentikasi memiliki makna yaitu dokumen tersebut asli dan berasal dari sumber
yang dipercaya [20]. Pengujian otentikasi dilakukan dengan menguji apakah
dengan pasangan kunci yang berbeda, proses verifikasi dapat dilakukan. Tabel 4
menunjukkan hasil pengujian otentikasi, dan sistem dapat bekerja dengan tepat
untuk mengetahui kunci yang digunakan benar atau tidak.
Kunci
Signatory

Kunci
Verifier

Tabel 4 Hasil Pengujian Otentikasi
Output proses
Kesimpulan Pengujian
verifikasi

11

1

PrivateA.priv

PublicB.pub

Tidak otentik

2

PrivateB.priv

PublicC.pub

Tidak otentik

3

PrivateC.priv

PublicD.pub

Tidak otentik

4

PrivateD.priv

PublicE.pub

Tidak otentik

5

PrivateE.priv

PublicA.pub

Tidak otentik

6

PrivateA.priv

PublicE.pub

Tidak otentik

7

PrivateB.priv

PublicE.pub

Tidak otentik

8

PrivateC.priv

PublicE.pub

Tidak otentik

9

PrivateD.priv

PublicE.pub

Tidak otentik

10

PrivateE.priv

PublicD.pub

Tidak otentik

11

PrivateA.priv

PublicA.pub

Otentik

12

PrivateB.priv

PublicB.pub

Otentik

13

PrivateC.priv

PublicC.pub

Otentik

14

PrivateD.priv

PublicD.pub

Otentik

15

PrivateE.priv

PublicE.pub

Otentik

Berhasil mendeteksi pasangan
kunci yang salah.
Berhasil mendeteksi pasangan
kunci yang salah.
Berhasil mendeteksi pasangan
kunci yang salah.
Berhasil mendeteksi pasangan
kunci yang salah.
Berhasil mendeteksi pasangan
kunci yang salah.
Berhasil mendeteksi pasangan
kunci yang salah.
Berhasil mendeteksi pasangan
kunci yang salah.
Berhasil mendeteksi pasangan
kunci yang salah.
Berhasil mendeteksi pasangan
kunci yang salah.
Berhasil mendeteksi pasangan
kunci yang salah.
Berhasil melakukan verifikasi
dengan pasangan kunci yang tepat.
Berhasil melakukan verifikasi
dengan pasangan kunci yang tepat.
Berhasil melakukan verifikasi
dengan pasangan kunci yang tepat.
Berhasil melakukan verifikasi
dengan pasangan kunci yang tepat.
Berhasil melakukan verifikasi
dengan pasangan kunci yang tepat.

Keutuhan (integrity) suatu dokumen diuji dengan cara melakukan
perubahan (manipulasi) pada dokumen. Pengujian 2 bertujuan untuk mengetahui
apakah aplikasi dapat mendeteksi perubahan pada dokumen yang telah diberi
digital signature. Digital signature dapat disimpulkan berhasil menjaga
keotentikan dokumen jika perubahan yang dilakukan pada dokumen dapat
terdeteksi (hasil verifikasi "tidak valid").
Tabel 5 Hasil Pengujian Integritas
No

Jenis
Perubahan

Digital
Signature
Awal

Digital
Signature
Akhir

Hasil
Verifikasi

Kesimpulan
Pengujian

1

Rotasi
Image

95689bad
a7500a4f
57e57102
26e8e971

a331487d
a5c91016
7bbacc42
d798c307

Tidak
valid

Berhasil
mendeteksi
manipulasi.

2

Mirror
Image

95689bad
a7500a4f
57e57102
26e8e971

2d1ddb3d
bd34bd9e
633fe6dd
ce817e1b

Tidak
valid

Berhasil
mendeteksi
manipulasi.

12

3

Crop

95689bad
a7500a4f
57e57102
26e8e971

47a7faa6
ecc55d14
2ea15593
edf90afa

Tidak
valid

Berhasil
mendeteksi
manipulasi.

4

Resize
Image

95689bad
a7500a4f
57e57102
26e8e971

8e46cbf6
4bc55eb9
1a0120a0
810bb220

Tidak
valid

Berhasil
mendeteksi
manipulasi.

5

Grayscale

95689bad
a7500a4f
57e57102
26e8e971

a3dcabc7
b0804282
4c575009
f4abe029

Tidak
valid

Berhasil
mendeteksi
manipulasi.

6

Manipulasi
20x20px

95689bad
a7500a4f
57e57102
26e8e971

bc24942c
e6c70546
f4136e36
cfdd8ffb

Tidak
valid

Berhasil
mendeteksi
manipulasi.

7

Manipulasi
10x10px

95689bad
a7500a4f
57e57102
26e8e971

c4934c60
21c09f38
75329cae
8a47de04

Tidak
valid

Berhasil
mendeteksi
manipulasi.

8

Manipulasi
2x2px
(ubah
warna
2
piksel)

95689bad
a7500a4f
57e57102
26e8e971

c37ad79a
3555ae82
dc2a28bb
a619d510

Tidak
valid

Berhasil
mendeteksi
manipulasi.

9

Gambar
utuh

95689bad
a7500a4f
57e57102
26e8e971

95689bad
a7500a4f
57e57102
26e8e971

Valid

Verifikasi
berhasil,
karena
tidak ada
perubahan
yang
terjadi pada
citra digital

Berdasarkan hasil pengujian integritas, pada Tabel 5, disimpulkan bahwa
segala bentuk perubahan yang dilakukan pada dokumen gambar yang telah
diujikan, memberikan hasil verifikasi tidak valid. Hal ini dikarenakan pada proses
manipulasi, nilai-nilai warna pada piksel yang dimanipulasi menjadi berubah.
Sehingga ketika proses verifikasi, digital signature yang disisipkan menjadi
berbeda dengan digital signature yang asli.
Pengujian ketiga adalah pengujian untuk melihat kelebihan dan kekurangan
dari penyisipan digital signature dengan metode LSB maupun EOF. Hasil
pengujian ditunjukkan pada Tabel 6.
No
1

Tabel 6 Hasil Pengujian Pengaruh Penyisipan Digital Signature dengan LSB
Jenis
Citra Digital
Ukuran File
Jumlah Perubahan
Piksel
Sebelum
Sesudah
PNG
Baboon.png
38 KB
38 KB
6 piksel

13

2
3
4
5
6
7
8
9
10
11
12

PNG
PNG
PNG
JPG
JPG
JPG
JPG
BMP
BMP
BMP
BMP

F16.png
UKSW.png
K2i.png
Baboon.jpg
F16.jpg
UKSW.jpg
K2i.jpg
Baboon.bmp
F16.bmp
UKSW.bmp
K2i.bmp

37 KB
15 KB
71 KB
19 KB
14 KB
23 KB
64 KB
118 KB
118 KB
118 KB
1055 KB

37 KB
15 KB
71 KB
19 KB
14 KB
23 KB
64 KB
118 KB
118 KB
118 KB
1055 KB

6 piksel
6 piksel
6 piksel
Penyisipan tidak ada
error, namun ekstraksi
tidak dapat dilakukan.
6 piksel
6 piksel
6 piksel
6 piksel

Pada Tabel 3, file dengan format JPG bersifat kompresi ‘lossy’, sehingga di
dalam 1 warna, belum tentu terdapat 8 bit, sehingga hal ini tidak dapat diproses oleh
pustaka grafik pada pemrograman C#. Sehingga, hal ini menyebabkan file format
JPG tidak dapat diproses dengan algoritma LSB. Pada library C#, proses yang
terjadi adalah JPG diubah ke bentuk bitmap, kemudian penyisipan dilakukan.
Setelah penyisipan, dilakukan penyimpanan ke bentuk JPG kembali, namun karena
sifat JPG yang ‘lossy’, maka terdapat. warna-warna yang hilang, sehingga digital
signature tidak diekstraksi.
File dengan format PNG dan BMP dapat disisipi pada pikselnya, karena
kedua format gambar ini menggunakan True Color Image. Tiap 1 piksel memiliki
3 warna dan dalam 1 warna terdapat 8 bit informasi, seperti ditunjukkan pada
Gambar 2.
No

1
2
3
4
5
6
7
8
9
10
11
12

Tabel 7 Hasil Pengujian Pengaruh Penyisipan Digital Signature dengan EOF
Jenis
Citra Digital
Ukuran File
Jumlah Perubahan
Piksel
Sebelum
Sesudah
(byte)
(byte)
PNG
Baboon.png
38496
38512
0 piksel
PNG
F16.png
37029
37045
0 piksel
PNG
UKSW.png
15272
15288
0 piksel
PNG
K2i.png
72524
72540
0 piksel
JPG
Baboon.jpg
19263
19279
0 piksel
JPG
F16.jpg
13421
13437
0 piksel
JPG
UKSW.jpg
23403
23419
0 piksel
JPG
K2i.jpg
64876
64892
0 piksel
BMP
Baboon.bmp
120054
120070
0 piksel
BMP
F16.bmp
120054
120070
0 piksel
BMP
UKSW.bmp
120054
120070
0 piksel
BMP
K2i.bmp
1080054
1080070
0 piksel

Penyisipan pada EOF, tidak bekerja pada level warna (piksel), namun
bekerja pada level informasi file. Sehingga hal ini tidak dipengarui oleh jenis format
file gambar. Besar perubahan yang terjadi pada ukuran file adalah 16 byte, karena
digital signature yang disisipkan memiliki panjang 16 byte.

14

Gambar 9 Isi file PNG Sebelum Penyisipan

Gambar 10 Isi File PNG Setelah Penyisipan Digital Signature, ditunjukkan dengan Huruf Warna
Merah

Gambar 11 Perbandingan Ukuran File Sebelum dan Sesudah Penyisipan

Pada Gambar 9 ditunjukkan isi file (bukan piksel), sebelum proses
penyisipan. Penyisipan dilakukan dengan menempelkan digital signature di bagian
akhir file. Gambar 10 menunjukkan isi file setelah proses penyisipan. Untuk melihat
isi file dalam bentuk heksadesimal, digunakan aplikasi heksa editor, HxD.
Perbandingan ukuran file ditunjukkan pada Gambar 11.
Berdasarkan hasil pengujian pada Tabel 3 dan Tabel 4 dapat dilihat bahwa
metode penyisipan digital signature dengan algoritma LSB hanya dapat dilakukan
pada file jenis PNG dan BMP. Kedua jenis file ini memiliki sifat true color image,
yaitu pada 1 warna diwakili dengan 1 byte, dan di dalam 1 piksel terdapat 3 warna.
Untuk memanipulasi 1 warna ini lebih mudah, karena 1 warna tepat berukuran 1
byte (1 byte = 8bit). Manipulasi LSB terjadi pada nilai bit paling rendah, oleh karena
itu disebut LSB. LSB merupakan proses mengganti bit, bukan menambah bit.
Sehingga efek yang terjadi adalah ukuran file tidak berubah, namun nilai piksel
warna berubah. Perubahan ini tidak signifikan, mengingat posisi LSB yang juga
15

“least significant”. Nilai perubahannya adalah sebesar maksimal 1, minimal 0.
Sebagai contoh jika warna merah (255) diganti dengan bit 0, maka akan menjadi
254 yang tetap merupakan warna merah.
Nilai desimal 255 (Gambar 12), dalam biner ditulis 11111111. Jika bit
paling akhir (LSB) diubah menjadi 0 karena hasil penyisipan, maka warna merah
tersebut menjadi 11111110, yang jika diubah kembali ke bentuk desimal, bernilai
254 (Gambar 13).

Gambar 12 Warna Merah dengan Nilai 255

Gambar 13 Warna Merah dengan Nilai 254

Pada file jenis JPG, untuk memanipulasi piksel, perlu diubah ke bentuk
Bitmap. Pustaka ini tersedia di .Net Framework. Setelah penyisipan dilakukan,
maka harus tetap tersimpan dalam format Bitmap, dalam hal ini pilihannya adalah
BMP atau PNG. Jika tetap disimpan dalam format JPG seperti awalnya, maka
penyisipan yang dilakukan tadi akan menjadi rusak, karena dalam JPG terdapat
proses kompresi.
Pada penyisipan EOF, berhasil dilakukan pada ketiga jenis file gambar.
Proses EOF tidak memanipulasi informasi warna, namun menambahkan byte
(bukan bit), pada bagian akhir file. Setiap file terdapat penanda, yang menunjukkan
bahwa “akhir file” telah tercapai. Penyisipan EOF memanfaatkan tanda ini, dengan
cara meletakkan digital signature setelah tanda “akhir file”. Efek yang terjadi
adalah piksel tidak mengalami perubahan, namun ukuran file bertambah sebesar
nilai digital signature.

16

5.

Simpulan

Berdasarkan penelitian, pengujian dan analisis terhadap aplikasi, maka
dapat diambil kesimpulan sebagai berikut: Digital signature dapat
diimplementasikan dengan menggunakan algoritma RSA, MD5 dan LSB/EOF
embedding, sehingga dapat berfungsi untuk menguji keutuhan dan otentikasi suatu
dokumen digital. Pengujian membuktikan bahwa dapat dideteksi perubahan
dokumen dari hasil manipulasi rotasi, mirror, crop, resize, dan manipulasi piksel
Metode penyisipan digital signature dengan algoritma LSB hanya dapat
dilakukan pada file jenis PNG dan BMP, yang merupakan true color image.
Penyisipan dilakukan pada LSB tiap warna. Pada file jenis JPG, untuk
memanipulasi piksel, perlu diubah ke bentuk Bitmap. Setelah penyisipan, maka
dikembalikan kembali ke format JPG, sehingga menyebabkan hasil penyisipan
yang dilakukan sebelumnya, menjadi rusak, karena dalam JPG terdapat proses
kompresi. Metode LSB memiliki kelebihan yaitu tidak mengubah ukuran file citra
digital. Kekurangannya adalah hanya dapat dilakukan pada file format dengan
bentuk true color image seperti PNG dan BMP yang tidak menggunakan kompresi
‘lossy’.
Pada penyisipan EOF, berhasil dilakukan pada ketiga jenis file gambar.
Proses EOF memiliki kelebihan yaitu tidak memanipulasi informasi warna, namun
menambahkan byte (bukan bit), pada bagian akhir file. Setiap file terdapat penanda,
yang menunjukkan bahwa “akhir file” telah tercapai. Penyisipan EOF
memanfaatkan tanda ini, dengan cara meletakkan digital signature setelah tanda
“akhir file”. Kelebihan yang lain adalah metode EOF, dapat dilakukan pada PNG,
BMP dan JPG. Kekurangan dari metode EOF, yaitu efek yang terjadi adalah piksel
tidak mengalami perubahan, namun ukuran file bertambah sebesar nilai digital
signature.
Saran yang dapat diberikan untuk penelitian lebih lanjut adalah penelitian
dapat diarahkan untuk mendeteksi lokasi perubahan pada dokumen gambar. Jika
deteksi dapat dilakukan, maka dapat dipisahkan antara piksel asli, dengan piksel
termanipulasi. Sehingga pada bagian piksel yang asli, masih dapat dimanfaatkan
informasi di dalamnya.
6.
[1].
[2].

[3].

[4].

Daftar Pustaka
Kaufman, C., Perlman, R. & Speciner, M. 2002. Network security: private
communication in a public world. Prentice Hall Press.
Ahmaddul, H. & Sediyono, E. 2012. Rancang Bangun Sistem Pengamanan
Dokumen pada Sistem Informasi Akademik Menggunakan Digital Signature
dengan Algoritma Kurva Eliptik. Program Pascasarjana Universitas
Diponegoro Semarang
Goldwasser, S., Micali, S. & Rivest, R. L. 1988. A digital signature scheme
secure against adaptive chosen-message attacks. SIAM Journal on
Computing 17, 281–308.
Ford, W. & Baum, M. S. 2000. Secure electronic commerce: building the
infrastructure for digital signatures and encryption. Prentice Hall PTR.
17

[5].

[6].

[7].

[8].

[9].

[10].
[11].

[12].

[13].
[14].
[15].

[16].
[17].

[18].

[19].

[20].

Triwinarko, A. 2010. Elliptic Curve Digital Signature Algorithm (ECDSA).
Laboratorium Ilmu dan Rekayasa Komputasi Departemen Teknik
Informatika, Institut Teknologi Bandung
Rahajoeningroem, T. & Aria, M. 2009. Studi dan Implementasi Algoritma
RSA untuk Pengamanan Data Transkrip Akademik Mahasiswa. Jurusan
Teknik Elektro Universitas Komputer Indonesia
Noertjahyana, A., Gunadi, K. & Agustinus Noertjahyana, Samuel Hartono,
K. G. 2012. Aplikasi Metode Steganography pada Citra Digital dengan
Menggunakan Metode LSB (Least Significant Bit). Universitas Kristen
Petra.
Patricia, H. & Aripin 2015. Teknik Keamanan Data Menggunakan
Kriptografi dengan Algoritma Vigenere Cipher dan Steganografi dengan
Metode End of File (EoF). Program Studi Teknik Informatika Fakultas Ilmu
Komputer Universitas Dian Nuswantoro
Wasino, Rahayu, T. P. & Setiawan 2012. Implementasi Steganografi Teknik
End of File dengan Enkripsi Rijndael. Seminar Nasional Teknologi
Informasi dan Komunikasi 2012 (SENTIKA 2012)
Computer
Hope
2016.
EOF.
http://www.computerhope.com/jargon/e/eof.htm. Diakses 13 Februari 2016.
Chandramouli, R. & Memon, N. 2001. Analysis of LSB based image
steganography techniques. In Image Processing, 2001. Proceedings. 2001
International Conference on, pp. 1019–1022.
Weiss,
M.
2009.
Principles
of
Steganography.
www.math.ucsd.edu/~crypto/Projects/MaxWeiss/steganography.pdf.
Diakses pada 13 Februari 2016.
Rafferty, C. 2005. Steganography & Steganalysis of Images. National
University of Ireland, Galway
Shaw, S. 1999. Overview of Watermarks , Fingerprints , and Digital
Signatures.
Willamette.edu
2004.
Image
File
Formats.
www.willamette.edu/~gorr/classes/GeneralGraphics/imageFormats/.
Diakses pada 4 Desember 2015.
Boutell, T. 1997. PNG (Portable Network Graphics) Specification Version
1.0.
Basu, S. 2014. GT Explains: What is the Difference Between JPG, GIF,
PNG, BMP Image Formats? http://www.guidingtech.com/7729/differencebetween-jpg-png-gif-bmp-image-formats/. Diakses 1 Agustus 2016.
Margaret
Rouse
2015.
Lossless
and
Lossy
Compression.
http://whatis.techtarget.com/definition/lossless-and-lossy-compression.
Diakses pada 1 Agustus 2016.
Sulistyo, W. & Subanar 2013. Desain Metodologi Penelitan untuk
Pemodelan dalam Bidang Ilmu Komputer. Seminar Nasional Sains dan
Aplikasi Komputasi
Stallings,
W.
2006.
Cryptography
and
Network
Security.
(doi:10.1007/11935070)

18

19

Dokumen yang terkait

KONSTRUKSI MEDIA TENTANG KETERLIBATAN POLITISI PARTAI DEMOKRAT ANAS URBANINGRUM PADA KASUS KORUPSI PROYEK PEMBANGUNAN KOMPLEK OLAHRAGA DI BUKIT HAMBALANG (Analisis Wacana Koran Harian Pagi Surya edisi 9-12, 16, 18 dan 23 Februari 2013 )

64 565 20

Analisis terhadap hapusnya hak usaha akibat terlantarnya lahan untuk ditetapkan menjadi obyek landreform (studi kasus di desa Mojomulyo kecamatan Puger Kabupaten Jember

1 88 63

Diskriminasi Daun Gandarusa (Justicia gendarrusa Burm.f.) Asal Surabaya, Jember dan Mojokerto Menggunakan Metode Elektroforesis

0 61 6

IbM Pemanfaatan Biopestisida untuk Mengendalikan Hama Uret (Lepidiota stigma) Pada Tanaman Tebu

8 129 1

Improping student's reading comprehension of descriptive text through textual teaching and learning (CTL)

8 140 133

Citra IAIN dan Fakultas Dakwah pada komunitas publiknya: studi FGD terhadap sepuluh komunitas sekitar IAIN Syarif Hidayatullah Jakarta

3 53 125

Aplikasi Data Mining Menggunakan Metode Decision Tree Untuk Pemantauan Distribusi Penjualan Sepeda Motor Di PD. Wijaya Abadi Bandung

27 142 115

Aplikasi forecasting untuk memprediksi kepadatan penduduk di Dinas Kependudkan dan Catatan Sipil Kabupaten Aceh Timur

9 92 261

Analisis Prioritas Program Pengembangan Kawasan "Pulau Penawar Rindu" (Kecamatan Belakang Padang) Sebagai Kecamatan Terdepan di Kota Batam Dengan Menggunakan Metode AHP

10 65 6

Perancangan Sistem Informasi Akuntansi Laporan Keuangan Arus Kas Pada PT. Tiki Jalur Nugraha Ekakurir Cabang Bandung Dengan Menggunakan Software Microsoft Visual Basic 6.0 Dan SQL Server 2000 Berbasis Client Server

32 174 203