JURNAL TEKNOLOGI INFORMASI & PENDIDIKAN VOL. 5 NO. 1 MARET 2012
ISSN : 2086 – 4981
PERANGKAT LUNAK DIGITAL SIGNATURE DAN SUBLIMINAL CHANNEL DENGAN METODE ONG-SCHNORR-SHAMIR Rini Sovia1
ABSTRACT Cryptography is the science of using mathematics to encrypt and decrypt data. Cryptography allows to store sensitive information or transmit it across insecure networks (like Internet) and so can not be read by anyone except the intended recipient. Digital signature is a type of digital signature Cryptography. Sign (digital signature) is an authentication mechanism that allows the manufacturer to add a code message that acts as a signature and also allows the recipient to verify the authenticity and integrity of the message. Digital Signature Software and Subliminal Channel serve to encrypt and decrypt a message digital. Message that has been encrypted is called a Digital Signature. After encrypted message then the message will be sent to the intended person, upon receipt by the intended person, then people that will decrypt a message that has been encrypted. Keyword: Cryptography, Digital Signature, Subliminal Channel INTISARI Kriptografi adalah ilmu menggunakan matematika untuk mengenkripsi dan mendekripsi data. Kriptografi memungkinkan untuk menyimpan informasi sensitif atau mengirimkan keseberang jaringan tidak aman (seperti Internet) sehingga tidak dapat dibaca oleh siapapun kecuali penerima yang dimaksud. Tanda tangan digital (digital signature) merupakan jenis dari Kriptografi.Tanda tangan digital (digital signature) adalah suatu mekanisme otentikasi yang memungkinkan pembuat pesan menambahkan sebuah kode yang bertindak sebagai tanda tangannya dan juga memungkinkan penerima pesan untuk menguji keaslian dan keutuhan pesan. Perangkat Lunak Digital Signature dan Subliminal Channel ini berfungsi untuk mengenkripsi suatu pesan dan mendekripsi suatu tanda tangan digital. Pesan yang telah dienkripsi tersebut dinamakan tanda tangan digital.setelah pesan dienkripsi maka pesan akan dikirim kepada orang yang dituju, setelah diterima oleh orang yang dituju, maka orang itu akan mendekripsi kan pesan yang telah dienkripsi tersebut. Kata Kunci : Kriptografi,Tanda Tangan Digital,Subliminal Channel
1
Dosen UPI YPTK Padang
15
JURNAL TEKNOLOGI INFORMASI & PENDIDIKAN VOL. 5 NO. 1 MARET 2012 PENDAHULUAN Kriptografi adalah ilmu menggunakan matematika untuk mengenkripsi dan mendekripsi data.Kriptografi memungkinkan Anda untuk menyimpan informasi sensitif atau mengirimkan ke seberang jaringan tidak aman (seperti Internet) sehingga tidak dapat dibaca oleh siapapun kecuali penerima yang dimaksud. Tanda tangan digital (digital signature) merupakan jenis dari Kriptografi [1].Tanda tangan digital (digital signature) adalah suatu mekanisme otentikasi yang memungkinkan pembuat pesan menambahkan sebuah kode yang bertindak sebagai tanda tangannya dan juga memungkinkan penerima pesan untuk menguji keaslian dan keutuhan pesan. Skema (scheme) yang dapat digunakan untuk melakukan proses tanda tangan digital terhadap suatu pesan (message) juga ada bermacam-macam. Salah satu skemanya adalah skema OngSchnorr-Shamir.
ISSN : 2086 – 4981
Shift. Metode ini akan menyusun karakter-karakter di dalam plaintext berdasarkan suatu aturan tertentu. Misalnya, P = kriptografi E (P) = C = pwnuytlwfkn dimana ciphertext diperoleh dengan geser 5 kali ke kanan terhadap plaintext. D (C) = D(E(P)) = P = kriptografi dimana plaintext diperoleh dengan geser 5 kali ke kiri terhadap ciphertext. Dalam Caesar‟s Shift ada beberapa sistem yang dapat digunakan yaitu : 1. Sistem Cipher Pagar (Rail-fence Cipher System) Sistem ini memiliki dua cara dalam proses ciphering-nya, yang pertama adalah membagi teks menjadi 2 bagian dan menyusunnya menjadi dua baris kemudian teks tersebut disusun kembali menurut urutan kolom (dari kolom sebelah kiri ke kolom sebelah kanan). Referensinya dapat dilihat pada gambar 1. Contoh : Plaintext : TRANSFORMASI CIPHER
PENDEKATAN PEMECAHAN MASALAH Pengenalan Kriptografi Kriptografi adalah ilmu untuk mempelajari penulisan secara rahasia dengan tujuan bahwa komunikasi dan data dapat dikodekan (encode/encrypt) dan didekodekan (decode/decrypt) kembali untuk mencegah pihak-pihak lain yang ingin mengetahui isinya, dengan menggunakan kode-kode dan aturanaturan tertentu dan metode lainnya sehingga hanya pihak yang berhak saja yang dapat mengetahui isi pesan sebenarnya[2]. Logika Enkripsi Pengamanan Data Sederhana Metode paling sederhana untuk pengamanan data ialah Caesar‟s
T
R
A
N
S
F
O
R
M
A
S
I
C
I
P
H
E
R
Gambar 1. Proses Cipher Pagar menurut kolom Ciphertext : TARSA INCSI FPOHR EMR Cara yang kedua adalah dengan menyusun pesan dari kolom kiri ke kanan dalam dua baris kemudian disusun kembali menjadi satu baris (dari baris paling atas ke baris paling bawah). Referensinya dapat dilihat pada gambar 2.
16
JURNAL TEKNOLOGI INFORMASI & PENDIDIKAN VOL. 5 NO. 1 MARET 2012 Contoh : Plaintext CIPHER
ISSN : 2086 – 4981
: TRANSFORMASI E
N
K
R
I
T
A
S
O
M
S
C
P
E
P
S
I
U
N
R
N
F
R
A
I
I
H
R
T
U
K
K
E
A
M
A
N
A
N
D
A
T
A
Gambar 2. Proses Cipher Pagar menurut baris Ciphertext : TASOM SCPER NFRAI IHR 2. Sistem Cipher Lintasan (Route Cipher System) Dalam sistem ini teks diatur ke dalam suatu matriks, kemudian karakter-karakter dalam matriks disusun kembali berdasaran urutan suatu lintasan yang ditetapkan seperti lintasan kolom dan lintasan spiral. Contoh : Plaintext : ENKRIPSI UNTUK KEAMANAN DATA Disusun dalam matriks : E N K R I P
S
I
U
N
T
U
K
K
E
A
M
A
N
A
N
D
A
T
A
Gambar 3. Proses Cipher Lintasan Kolom Dengan lintasan gambar 4.
spiral
didapat
Ciphertext : EPTAN ENIRK NSUMA NKUIK
DATAA
E
N
K
R
I
P
S
I
U
N
T
U
K
K
E
A
M
A
N
A
N
D
A
T
A
Gambar 4. Proses Cipher Lintasan spiral Dalam sistem ini, ukuran matriks harus diketahui dan jika ada banyak karakter yang tidak memenuhi jumlah sel matriks maka sisa sel matriks yang kosong diisi dengan karakter null. Algoritma RSA Algoritma RSA dibuat oleh 3 orang peneliti dari MIT (Massachusset Institute of Technology)pada tahun 1976, yaitu: Ron (R)ivest, Adi(S)hamir, dan Leonard (A)dleman. Keamanan algoritma RSA terletak pada sulitnya memfaktorkan bilangan yang besar menjadi faktor-faktor prima.
Dengan lintasan kolom didapat gambar 3. Ciphertext : EPTAN NSUMD KIKAA RUKNT INEAA
17
JURNAL TEKNOLOGI INFORMASI & PENDIDIKAN VOL. 5 NO. 1 MARET 2012 Pemfaktoran dilakukan untuk memperoleh kunci pribadi. Selama pemfaktoran bilangan besar menjadi faktor-faktor prima belum ditemukan algoritma yang mangkus, maka selama itu pula keamanan algoritma RSA tetap terjamin. Besaran-besaran yang digunakan pada algoritma RSA: 1. p dan q bilangan prima (rahasia) 2. r = p ⋅ q (tidak rahasia) 3. m = (p – 1)(q – 1) (rahasia) 4. PK (kunci enkripsi) (tidakrahasia) 5. SK (kunci dekripsi) (rahasia) 6. X (plainteks) (rahasia) 7. Y (cipherteks) (tidak rahasia) Prosedur Membuat Pasangan Kunci Key generation : 1. Hasilkan dua buah integer prima besar, p dan q untuk memperoleh tingkat keamanan yang tinggi pilih p dan q yang berukuran besar, misalnya 1024 bit. 2. Hitung m = (p-1)*(q-1) 3. Hitung n = p*q 4. Pilih d yg relatively prime terhadap m e relatively prime terhadap m artinya factor pembagi terbesar keduanya adalah 1, secara matematis disebut gcd(e,m) = 1. Untuk mencarinya dapat digunakan algoritma Euclid. 5. Cari d, sehingga e*d = 1 mod (m), atau d = (1+nm)/e untuk bilangan besar, dapat digunakan algoritma extended Euclid. 6. Kunci publik : e, n Kunci private : d, n Kasus 1 Misalkan : p = 3 q = 11 (keduanya prima). Selanjutnya, hitung nilai n = p . q = 33 dan m = (p – 1)(q – 1) = 20. Pilih d yg relatively prime terhadap m gcd(e,m) = 1 gcd(e, 20 ) = 1 e = 2 => gcd(e, 20) = 2 (tidak) e = 3 => gcd(e, 20) = 1 (ya) e = 5 => gcd(5,20) =1 (tidak)
ISSN : 2086 – 4981
e = 7 => gcd(7,20) =1 (ya) Asumsi dipilih e =3 ; Cari nilai d e*d = 1 mod (m) 3*d = 1 mod 20 3*d mod 20 = 1 �21 mod 20 =1 81 mod 20 =1 misal dipilih d=7 Public key : (3, 33) Private key : (7, 33) Enkripsi B mengenkripsi message M untuk A yang harus dilakukan B : 1. Ambil kunci publik A yg otentik (n, e) 2. Representasikan message sbg integer M dalam interval [0,n-1] 3. Hitung C = M ^ e (mod n) 4. 4. Kirim C ke A Dekripsi Untuk mendekripsi, A melakukan :Gunakan kunci pribadi d untuk menghasilkan M = C^(d) (mod n) message "2" Enkripsi C = 2 ^ 3 (mod 33) = 8 = 8 mod 33 = 0 sisa 8 Dekripsi M = 8 ^ 7 (mod 33)= 2097152 (mod 33)= 2 Landasan Matematis Aritmatika Modular Aritmatika modular merupakan operasi matematika yang banyak diimplementasikan pada metode kriptografi. Pada metode tanda tangan digital Ong-Schnorr-Shamir, operasi aritmatika modular yang dipakai adalah operasi modulo biasa yang menghasilkan sisa bagi dari dua bilangan. Operasi modulo ini melibatkan bilangan 0 dan 1 saja sehingga identik dengan bit pada komputer. Contoh : (18526)2 mod (22) = 343212676 mod 22 = 4 Algoritma Euclidean untuk GCD (Greatest Common Divisor)
18
JURNAL TEKNOLOGI INFORMASI & PENDIDIKAN VOL. 5 NO. 1 MARET 2012 Algoritma ini digunakan untuk mencari GCD dari 2 buah bilangan. Jika kedua bilangan tersebut relatif prima satu dengan lainnya maka hasil GCD-nya harus bernilai 1 jika hasil GCD tidak bernilai 1 maka kedua bilangan tersebut tidak saling relatif prima. Algoritma untuk GCD yaitu : Function GCD(A As Double, B As Double) As Double P=A Q=B While Q <> 0 R = P Mod Q P=Q Q=R Wend GCD = P End Function Pembulatan Angka Perhitungan dalam metode tanda tangan digital Ong-SchnorrShamir akan menghasilkan desimal dalam jumlah yang besar. Karenanya, bilangan-bilangan perlu dibatasi jumlah desimalnya atau dibulatkan. Aturan pembulatan yang dipakai adalah sebagai berikut : 1: Jika angka terkiri dari yang harus dihilangkan bernilai 4 atau kurang, maka angka terkanan dari yang mendahuluinya tidak berubah. Contoh pembulatan hingga 5 desimal di belakang koma: 1000,376421 dibulatkan menjadi 1000,37642. 1000,376422 dibulatkan menjadi 1000,37642. 1000,376423 dibulatkan menjadi 1000,37642. 1000,376424 dibulatkan menjadi 1000,37642. Angka yang harus dihilangkan adalah 4 (bernilai 4 atau kurang). Karenanya, angka 4 dibuang dan angka terkanan yang mendahuluinya, yaitu angka 2 tidak berubah.
2:
ISSN : 2086 – 4981
Jika angka terkiri dari yang harus dihilangkan bernilai lebih dari 5 atau 5 diikuti oleh angka bukan nol, maka angka terkanan dari yang mendahuluinya bertambah dengan satu. Contoh pembulatan hingga 5 desimal di belakang koma: 1000,3764251 dibulatkan menjadi 1000,37643. Angka yang harus dihilangkan adalah 51 (bernilai 5 dan diikuti oleh angka bukan nol). Karenanya, angka 51 dibuang dan angka terkanan yang mendahuluinya, yaitu angka 2 bertambah satu menjadi 3. 1000,376426 dibulatkan menjadi 1000,37643. 1000,376427 dibulatkan menjadi 1000,37643. 1000,376428 dibulatkan menjadi 1000,37643. 1000,376429 dibulatkan menjadi 1000,37643. Angka yang harus dihilangkan adalah 9 (bernilai lebih dari 5). Karenanya, angka 9 dibuang dan angka terkanan yang mendahuluinya, yaitu angka 2 bertambah satu menjadi 3. 3. Jika angka terkiri dari yang harus dihilangkan bernilai hanya 5 atau 5 yang diikuti oleh angka – angka nol belaka, maka angka terkanan dari yang mendahuluinya tetap jika genap, dan tambah satu jika ganjil. Contoh pembulatan hingga 5 desimal di belakang koma: 1000,376425 dibulatkan menjadi 1000,37642. Angka yang harus dihilangkan adalah 5 (bernilai hanya 5). Karenanya, angka 5 dibuang dan angka terkanan yang mendahuluinya, yaitu angka 2
19
JURNAL TEKNOLOGI INFORMASI & PENDIDIKAN VOL. 5 NO. 1 MARET 2012 tidak berubah (karena angka 2 merupakan bilangan genap). 1000,376475 dibulatkan menjadi 1000,37648. Angka yang harus dihilangkan adalah 5 (bernilai hanya 5). Karenanya, angka 5 dibuang dan angka terkanan yang mendahuluinya, yaitu angka 7 bertambah satu menjadi 8 (karena angka 7 merupakan bilangan ganjil). Aturan pembulatan ini sesuai dengan syntax visual basic yang digunakan untuk pembulatan, yaitu „round‟. Ong-Schnorr-Shamir Scheme Skema Ong-Schnorr-Shamir merupakan salah satu skema tanda tangan digital yang terdapat dalam ilmu kriptografi. Skema tanda tangan digital Ong-Schnorr-Shamir diciptakan oleh H.Ong, C.P.Schnorr dan A.Shamir dan ditulis dalam buku mereka yang berjudul “An Efficient Signature Scheme Based on Polynomial Equations” pada halaman 208 sampai 216. Buku ini dirilis untuk publik pada tahun 1984. Selain skema tanda tangan digital, Ong-Schnorr-Shamir juga memiliki skema subliminal channel (saluran tersembunyi). Skema ini diciptakan oleh Gustavus Simmons dan ditulis dalam bukunya yang berjudul “The Prisoner‟s Problem and the Subliminal Channel” pada halaman 51 sampai halaman 67 pada tahun 1984, “The Subliminal Channel and Digital Signatures” pada halaman 364 sampai halaman 378 pada tahun 1985 dan “A Secure Subliminal Channel” pada halaman 33 sampai halaman 41 pada tahun 1986. Ong-Schnorr-Shamir Digital Signature Scheme Bob mengirimkan pesan tidak terenkripsi kepada Alice dan Alice
ISSN : 2086 – 4981
menerima pesan dari Bob dengan baik. o Permasalahan: Apakah Alice dapat memverifikasi pesan dan tanda tangan digital Bob untuk memastikan keaslian dan keutuhan pesan? o Penyelesaian: Alice dan Bob dapat menggunakan salah satu metode digital signature dalam ilmu kriptografi, yaitu Ong-SchnorrShamir Digital Signature Scheme. Berikut adalah prosedur kerja skema tanda tangan digital Ong-SchnorrShamir: 1. Tentukan sebuah bilangan integer besar (n) dan sebuah bilangan integer (k). a. n dan k harus relatif prima, artinya nilai GCD(n, k) = 1. b. n merupakan kunci publik, artinya nilai n boleh diketahui oleh pihak lain. c. k merupakan kunci privat, artinya nilai k hanya diketahui oleh pembuat pesan (Bob). 2. Hitung nilai h dengan rumus berikut.
h = - (k-1)2 mod n 3. Tentukan sebuah bilangan integer acak (r). a. n dan r harus relatif prima, artinya nilai GCD(n, r) = 1. b. r merupakan kunci publik, artinya nilai r boleh diketahui oleh pihak lain. 4. Hitung S1 dan S2 terhadap pesan (M). (S1 dan S2 merupakan signature oleh Bob) dengan rumus berikut.
S1 = 1/2 * (M/r + r) mod n S2 = k/2 * (M/r - r) mod n
20
JURNAL TEKNOLOGI INFORMASI & PENDIDIKAN VOL. 5 NO. 1 MARET 2012
1. Bob memilih n = 393541 dan k = 20. 2. Bob menghitung nilai h. h = -(k-1)2 mod n h = -(1/20)2 mod 393541 h = -0.0025 3. Bob memilih r = 16. 4. Hitung S1 dan S2 (digital signature dari Bob) M = Kode ascii dari huruf 'A' = 65. S1 = 1/2 * (65/16 + 16) mod 393541 S1 = 10.03125 S2 = 20/2 * (65/16 - 16) mod 393541 S2 = -119.375 5. Alice memverifikasi pesan dan tanda tangan dari Bob. n = 393541, h = -0.0025, r = 16 M = Kode ascii dari huruf 'A' = 65 S1 = 10.03125, S2 = -119.375 (10.03125)^2 + -0.0025 . (119.375)^2 = 65 65 = 65 (True) Ong-Schnorr-Shamir Subliminal Channel Scheme Alice dan Bob masuk penjara. Celakanya, mereka berada dalam penjara yang berbeda. Walter, pengawas penjara mengizinkan mereka berkomunikasi melalui surat, tetapi Walter tidak akan mengizinkan pesan dikirim dalam bentuk terenkripsi. Setiap pesan yang dikirim Bob harus dapat dibaca dan diverifikasi sumber dan keutuhannya oleh Walter. o Permasalahan: Dengan pengawasan ketat Walter, apakah Alice dan Bob dapat menciptakan sebuah jalur komunikasi tersembunyi diantara mereka berdua? o Penyelesaian: Alice dan Bob dapat menggunakan salah satu metode subliminal channel dalam ilmu kriptografi, yaitu, yaitu Ong-
5. Alice memverifikasi pesan dan tanda tangan digital Bob dengan menggunakan rumus berikut.
S12 + h . S22
M (mod n)
Skema prosedur dapat dilihat pada gambar 5. berikut ini. Prosedur no.1
Bob mengambil nilai acak (n) dan (k). GCD(n,k) = 1.
Prosedur no.2
Bob menghitung nilai h
Prosedur no.3
Bob mengambil nilai acak (r). GCD(n,r) = 1.
Prosedur no.4
Bob menciptakan digital signature (S1 dan S2) atas pesan (M).
Bob mengirimkan M, h, n, S1 dan S2.
Prosedur no.5
ISSN : 2086 – 4981
Alice menerima M, h, n, S1 dan S2 dan memverifikasi pesan dan tanda tangan digital Bob.
Gambar 5. Skema prosedur OngSchnorr-Shamir Digital Signature Sumber:Hermansyah,Edy dkk.2008. Sebagai contoh, pesan yang akan dikirimkan adalah huruf „A‟, maka prosedur yang dilakukan dalam skema ini adalah:
21
JURNAL TEKNOLOGI INFORMASI & PENDIDIKAN VOL. 5 NO. 1 MARET 2012 Schnorr-Shamir Subliminal Channel Scheme. Berikut adalah prosedur kerja skema Ong-Schnorr-Shamir Subliminal Channel: 1. Tentukan sebuah bilangan integer besar (n) dan sebuah bilangan integer (k). a. n dan k harus relatif prima, artinya nilai GCD(n, k) = 1. b. n merupakan kunci publik, artinya nilai n boleh diketahui oleh pihak lain. c. k merupakan kunci privat. Nilai k diketahui oleh pembuat pesan (Bob) dan pihak yang akan mendekripsi pesan samaran (Alice). 2. Hitung nilai h dengan rumus berikut.
ISSN : 2086 – 4981
w' = S12 + h . S22 (mod n) Alice mendekripsi pesan samaran Bob (w') dengan menggunakan rumus berikut. Alice juga dapat memverifikasi keutuhan pesan Bob dengan menggunakan rumus yang dipakai oleh Walter.
w =
w' S1 + k-1 * S2
Skema prosedur dapat dilihat pada gambar 6. berikut ini. Prosedur no.1
Bob mengambil nilai acak (n) dan (k). GCD(n,k) = 1.
Prosedur no.2
Bob menghitung nilai h
Prosedur no.3
Bob membuat pesan samaran (w’), pesan asli(w) dan menghitung S1 dan S2. GCD(w’,n) = 1 dan GCD(w,n) = 1
h = - (k-1)2 mod n 3. Buat pesan asli (w), pesan samaran (w') dan hitung S1 dan S2 ! a. Pesan samaran (w') diciptakan untuk menyamarkan pesan asli. Nilai variabel w, w‟ dan n harus relatif prima (GCD(w', n) = 1 dan GCD(w,n) = 1). b. S1 dan S2 merupakan signature oleh Bob c. Bob akan mengirimkan S1, S2 dan w' kepada Walter dan Alice.
Bob mengirimkan w’, h, n, S1 dan S2. Nilai k telah diketahui oleh Bob dan Alice sehingga tidak dikirimkan lagi.
Prosedur no.4
Walter menerima w’, h, n, S1 dan S2 dan memverifikasi pesan samaran dan tanda tangan digital Bob.
Prosedur no.5
Alice menerima M, h, n, S1 dan S2 dan mendekripsi pesan samaran (w’) menjadi pesan asli (w).
S1 = 1/2 * (w’/w + w) mod n S2 = k/2 * (w’/w - w) mod n 4. Walter memverifikasi pesan samaran dan tanda tangan digital Bob (w') dengan menggunakan rumus berikut.
Gambar 6. Skema prosedur OngSchnorr-Shamir Subliminal Channel
22
JURNAL TEKNOLOGI INFORMASI & PENDIDIKAN VOL. 5 NO. 1 MARET 2012 Sebagai contoh, pesan yang akan dikirimkan adalah huruf „A‟, maka prosedur yang dilakukan dalam skema ini adalah: 1. Bob memilih n = 393541 dan k = 20. 2. Bob menghitung nilai h. h = -(k-1)2 mod n h = -(1/20)2 mod 393541 h = -0.0025 3. Misalkan pesan asli (w) = „K‟ dan pesan samaran (w‟) = „H‟, maka hitung S1 dan S2 (digital signature dari Bob) w = Kode ascii dari huruf 'K' = 75 w' = Kode ascii dari huruf 'H' = 72 S1 = 1/2 * (72/75 + 75) mod 393541 S1 = 37.98 S2 = 20/2 * (72/75 - 75) mod 393541 S2 = -740.4 4. Walter memverifikasi tanda tangan dan pesan samaran (w‟) dari Bob. w' = Kode ascii dari huruf 'H' = 72 S1 = 37.98, S2 = -740.4 w' = (37.98)^2 + -0.0025 . (740.4)^2 72 = 72 (True) 5. Alice mendekripsi pesan samaran (w‟) menjadi pesan asli(w).
ISSN : 2086 – 4981
w' = Kode ascii dari huruf 'H' = 72 S1 = 37.98, S(2) = -740.4 w = 72 / (37.98 + -740.4/20) w = 75 (Karakter dari kode ascii 75 = 'K') Pesan dan digital signature dari metode Ong-Schnorr-Shamir subliminal channel dapat diverifikasi keasliannya dengan menggunakan Ong-Schnorr-Shamir digital signature scheme. Perbedaannya hanya terletak pada metode dekripsi yang dimiliki oleh Ong-Schnorr-Shamir subliminal channel HASIL DAN PEMBAHASAN Prosedur Kerja Perangkat Lunak Perangkat lunak bantu pemahaman ini dimulai dengan menampilkan splash screen sebagai tampilan judul dan pembuat program. Kemudian dilanjutkan dengan menampilkan form awal (utama) yang berisi 4 (empat) buah link, untuk menampilkan pemahaman OngSchnorr-Shamir digital signature scheme (DSS), Ong-Schnorr-Shamir subliminal channel scheme (SCS), aplikasi Ong-Schnorr-Shamir DSS dan aplikasi Ong-Schnorr-Shamir SCS. Untuk menggambarkan prosedur kerja perangkat lunak, digunakan State Transition Diagram (STD) yang dapat dilihat pada gambar 9.
23
JURNAL TEKNOLOGI INFORMASI & PENDIDIKAN VOL. 5 NO. 1 MARET 2012
ISSN : 2086 – 4981
Tekan „Keluar‟
Tekan „Lihat Teori GCD‟
Pilih „Ong-SchnorrShamir Digital Signature Scheme‟
3
Tekan „Next‟ Tekan „Back‟
4
Tekan „Keluar‟ Start
0
Jalankan Program
1
Tunggu beberapa detik
Tekan „Keluar‟
2
Tekan „Next‟ Tekan „Back‟
Tekan „Next‟
5
Tekan „Keluar‟
Tekan „Back‟
Tekan „Keluar‟
6
7 Tekan „Keluar‟ Tekan „Keluar‟
Pilih „OngSchnorrShamir Subliminal Channel Scheme‟
Tekan „Keluar‟
8
Pilih „Aplikasi OngSchnorr-Shamir Digital Signature Scheme‟
Tekan „Next‟ Tekan „Back‟
9
Tekan „Next‟ Tekan „Back‟
Tekan „Keluar‟ Tekan „Next‟
10
Tekan „Back‟
Tekan „Keluar‟
11
Tekan „Next‟ Tekan „Back‟
12
Tekan „Lihat Teori GCD‟ Tekan „Keluar‟
13
Pilih „Keluar‟ Pilih „Aplikasi OngSchnorr-Shamir Subliminal Channel Scheme‟
Tekan „Keluar‟
Pilih „Buat Tanda Tangan Digital‟ Pilih „OK‟ atau „Keluar‟
14
Pilih „Buat Tanda Tangan Digital‟ Pilih „OK‟ atau 15 „Keluar‟
Pilih „Keluar‟
Gambar 9. Diagram Prosedur Kerja Perangkat Lunak Masing-masing state mewakili sebuah tampilan form dalam perangkat lunak. Keterangan dari masing-masing state adalah sebagai berikut [3]: 0 : Operating System / Windows. 1 : Form Splash Screen. 2 : Form Awal. 3 : Form Pendahuluan Ong-SchnorrShamir Digital Signature Scheme. 4 : Form Input n, k dan perhitungan nilai h Ong-Schnorr-Shamir Digital Signature Scheme. 5 : Form Input r, pesan dan pembuatan tanda tangan digital OngSchnorr-Shamir Digital Signature Scheme. 6 : Form Verifikasi pesan dan tanda tangan digital Ong-Schnorr-Shamir Digital Signature Scheme. 7 : Form Algoritma GCD.
8 : Form Pendahuluan Ong-SchnorrShamir Subliminal Channel Scheme. 9 : Form Input n, k dan perhitungan nilai h Ong-Schnorr-Shamir Sublminal Channel Scheme. 10 : Form Input pesan asli, pesan samaran dan pembuatan tanda tangan digital Ong-SchnorrShamir Subliminal Channel Scheme. 11 : Form Verifikasi Pesan Samaran dan Tanda Tangan Digital OngSchnorr-Shamir Subliminal Channel Scheme. 12 : Form Dekripsi Pesan Samaran ke Pesan Asli Ong-Schnorr-Shamir Subliminal Channel Scheme. 13 : Form Aplikasi Ong-SchnorrShamir Digital Signature Scheme.
24
JURNAL TEKNOLOGI INFORMASI & PENDIDIKAN VOL. 5 NO. 1 MARET 2012 14 : Form Input Nilai untuk Pembuatan Tanda Tangan. 15 : Form Aplikasi Ong-SchnorrShamir Subliminal Channel Scheme.
ISSN : 2086 – 4981
standar untuk merancang model sebuah sistem. StateChart Diagram Statechart diagram menggambarkan transisi dan perubahan keadaan (dari satu state ke state lainnya) suatu objek pada sistem sebagai akibat dari stimuli yang diterima. Pada umumnya statechart diagram menggambarkan class tertentu (satu class dapat memiliki lebih dari satu statechart diagram).
UML(Unified Modelling Languange) Unified Modelling Language (UML) adalah sebuah "bahasa" yg telah menjadi standar dalam industri untuk visualisasi, merancang dan mendokumentasikan sistem piranti lunak. UML menawarkan sebuah Initial state
Form Awal
Stop
Form Pemahaman Ong-Schnorr-Shamir Digital Signature Scheme
Form Penjelasan Masalah
Form Input nilai n dan k
Form input nilai r dan pesan
Gambar 10. StateChart Diagram Form Pemahaman Ong-Schnorr-Shamir Digital Signature Scheme Deployment Diagram Sebuah node adalah server, Deployment/physical diagram workstation, atau piranti keras lain menggambarkan detail bagaimana yang digunakan untuk men-deploy komponen di-deploy dalam komponen dalam lingkungan infrastruktur sistem, di mana sebenarnya. Hubungan antar node komponen akan terletak (pada mesin, (misalnya TCP/IP) dan requirement server atau piranti keras apa), dapat juga didefinisikan dalam bagaimana kemampuan jaringan pada diagram ini. lokasi tersebut, spesifikasi server, dan hal-hal lain yang bersifat fisikal
25
JURNAL TEKNOLOGI INFORMASI & PENDIDIKAN VOL. 5 NO. 1 MARET 2012
ISSN : 2086 – 4981
Internet #Email
Form Perangkat Lunak Ong-Schnorr-Shamir
File Storage
Gambar 11. Deployment Diagram Perangkat Lunak Ong-Schnorr-Shamir Perancangan Perangkat lunak bantu pemahaman ini dirancang dengan menggunakan bahasa pemrograman Microsoft Visual Basic 6.0 diintegrasikan dengan beberapa slide animasi yang dirancang dengan menggunakan Macromedia Flash MX. Perangkat lunak juga didukung oleh audio (lagu) ketika sedang dijalankan. Perangkat lunak ini dibagi menjadi 4 (empat) bagian besar, yaitu: 1. Pemahaman Ong-Schnorr-Shamir Digital Signature Scheme (DSS), terdiri atas beberapa tampilan, yaitu:
a. Tampilan Pendahuluan. b. Tampilan Input n, k dan Perhitungan Nilai h. c. Tampilan Input r, Pesan dan Pembuatan Tanda Tangan Digital. d. Tampilan Verifikasi Pesan dan Tanda Tangan Digital. 2. Pemahaman Ong-Schnorr-Shamir Subliminal Channel Scheme (SCS), terdiri atas beberapa tampilan, yaitu: a. Tampilan Pendahuluan. b. Tampilan Input n, k dan Perhitungan Nilai h.
26
JURNAL TEKNOLOGI INFORMASI & PENDIDIKAN VOL. 5 NO. 1 MARET 2012 c. Tampilan Input Pesan Asli, Pesan Samaran dan Pembuatan Tanda Tangan Digital. d. Tampilan Verifikasi Pesan Samaran dan Tanda Tangan Digital. e. Tampilan Dekripsi Pesan Samaran ke Pesan Asli. 3. Aplikasi Ong-Schnorr-Shamir Digital Signature Scheme (DSS). 4. Aplikasi Ong-Schnorr-Shamir Subliminal Channel Scheme (SCS).
ISSN : 2086 – 4981
Komponen yang digunakan dalam membuat perangkat lunak, antara lain: 1. CommandButton, komponen tombol. 2. Label, komponen untuk menampilkan label / tulisan. 3. TextBox, komponen untuk memasukkan input. 4. PictureBox, komponen untuk menampilkan gambar. 5. ShockwaveFlash, komponen untuk menampilkan file flash (*.swf). 6. Beserta beberapa komponen standard visual basic 6 lainnya.
Initial state
Form Awal
Stop
Form Pemahaman Ong-Schnorr-Shamir Subliminal Channel Scheme
Form Penjelasan Masalah
Form Input nilai n dan k
Form input pesan asli,pesan samaran
Form Verifikasi
Form Dekripsi
Gambar 12. StateChart Diagram Ong-Schnorr-Shamir Subliminal Channel Scheme
27
JURNAL TEKNOLOGI INFORMASI & PENDIDIKAN VOL. 5 NO. 1 MARET 2012
ISSN : 2086 – 4981
Initial state
Form Awal
Stop
Form Aplikasi Digital Signature Scheme
File
Edit
Keluar
Tanda Tangan Digital
Baru
cut
Buka
Copy Buat Tanda Tangan Digital
Simpan
Verifikasi Pesan dan Tanda Tangan Digital
Status Pesan
Paste
Gambar 13. StateChart Diagram Aplikasi Ong-Schnorr-Shamir Digital Signature Scheme Initial state
Form Awal
Stop
Form Aplikasi Subliminal Channel Scheme
File Edit
Tanda Tangan Digital
Paste Baru
cut
Buka
Simpan
Keluar
Buat Tanda Tangan Digital
Verifikasi Pesan dan Tanda Tangan Digital
Status Pesan
Copy Dekripsi ke pesan asli
Gambar 14. StateChart Diagram Aplikasi Ong-Schnorr-Shamir Subliminal Channel Scheme Pengujian Program Untuk melihat dan menguji output perangkat lunak, maka dibahas beberapa contoh penerapan skema digital signature dan subliminal channel pada subbab ini. Contoh penerapan skema digital signature
pada perangkat lunak adalah sebagai berikut: (tampilan pendahuluan OngSchnorr-Shamir DSS dapat dilihat pada gambar 15).
28
JURNAL TEKNOLOGI INFORMASI & PENDIDIKAN VOL. 5 NO. 1 MARET 2012
ISSN : 2086 – 4981
Gambar 17. Tampilan Input r, Pesan dan Pembuatan Tanda Tangan Digital pada Ong-Schnorr-Shamir DSS Proses verifikasi dapat dilihat pada gambar 18.
Gambar 15. Tampilan Pendahuluan Ong-Schnorr-Shamir DSS Ambil nilai n = 62653331 dan nilai k = 11. Tampilan input dapat dilihat pada gambar 16.
Gambar 16. Tampilan Input n, k dan Perhitungan Nilai h pada Ong-SchnorrShamir DSS
Gambar 18. Tampilan Verifikasi Pesan dan Tanda Tangan Digital pada Ong-Schnorr-Shamir DSS
Ambil nilai r = 18 dan pesan = „Tolong kirimkan uang 10 juta ke rekening 02.034.035.‟. Tampilan input dapat dilihat pada gambar 17.
Contoh penerapan skema digital signature pada perangkat lunak adalah sebagai berikut: (tampilan pendahuluan Ong-Schnorr-Shamir SCS dapat dilihat pada gambar 19).
29
JURNAL TEKNOLOGI INFORMASI & PENDIDIKAN VOL. 5 NO. 1 MARET 2012
Gambar 19. Tampilan Pendahuluan Ong-Schnorr-Shamir SCS
ISSN : 2086 – 4981
Gambar 21. Tampilan Input Pesan Asli, Pesan Samaran dan Pembuatan Tanda Tangan Digital
Ambil nilai n = 18007069 dan nilai k = 951. Tampilan input dapat dilihat pada gambar 20.
Gambar 22. Tampilan Verifikasi Pesan Samaran dan Tanda Tangan Digital pada Ong-SchnorrShamir SCS Perhitungan proses verifikasi seperti yang tampak pada tabel 5.2 : n = 18007069, H = -0.000001105704 Proses dekripsi seperti terlihat pada gambar 23..
Gambar 20. Tampilan Input n, k dan Perhitungan Nilai h pada Ong-SchnorrShamir SCS Misalkan pesan asli = „123456789‟ dan pesan samaran = „abcdefghi‟. Tampilan input dapat dilihat pada gambar 21.
30
JURNAL TEKNOLOGI INFORMASI & PENDIDIKAN VOL. 5 NO. 1 MARET 2012
ISSN : 2086 – 4981
DAFTAR PUSTAKA [1] Hermansyah,Edy dkk. 2008. Tanda Tangan Digital dengan skema Ong-Schnorr-Shamir. http://isjd.pdii.lipi.go.id/admin/jur nal/360818.pdf. September 2011
Gambar 23. Tampilan Dekripsi Pesan Samaran ke Pesan Asli pada OngSchnorr-Shamir SCS KESIMPULAN Setelah menyelesaikan perangkat lunak bantu pemahaman skema Ong-Schnorr-Shamir ini, penulis menarik kesimpulan sebagai berikut: 1. Skema Ong-Schnorr-Shamir Digital Signature dapat digunakan untuk menjaga keaslian data (authentication) dan keutuhan data (data integrity). 2. Skema Ong-Schnorr-Shamir Subliminal Channel merupakan metode kriptografi yang dapat digunakan untuk meng-enkripsi pesan asli. Skema ini juga mendukung proses verifikasi dari skema Ong-Schnorr-Shamir Digital Signature. 3. Perangkat lunak menjelaskan secara bertahap proses kerja OngSchnorr-Shamir Digital Signature dan Ong-Schnorr-Shamir Subliminal Channel, sehingga dapat membantu pemahaman terhadap skema ini dan dapat digunakan untuk mendukung kegiatan belajar mengajar dalam mata kuliah kriptografi.
31
[2]
Hendry. 2009. Enkapsulasi dan Enkripsi Paket Jaringan. http://hendrysajahh.wordpress.c om/2009/06/09/enkapsulasi-danenkripsi-paket-jaringan/. September 2011.
[3]
Rob,M.A. 2005. Evolutionary Development Model. http://www.robabdul.com/DataManagement-System-SoftwareDevelopment-Cycle.asp. September 2011.