• Tidak ada hasil yang ditemukan

2.1. Pengenalan Kriptografi - Aplikasi Otentikasi Dokumen Menggunakan Algoritma Gost Digital Signature

N/A
N/A
Protected

Academic year: 2019

Membagikan "2.1. Pengenalan Kriptografi - Aplikasi Otentikasi Dokumen Menggunakan Algoritma Gost Digital Signature"

Copied!
11
0
0

Teks penuh

(1)

BAB 2

LANDASAN TEORI

Pada bab ini, akan dibahas landasan teori mengenai teori-teori yang digunakan dan

konsep yang mendukung pembahasan, serta penjelasan mengenai metode yang

digunakan.

2.1.Pengenalan Kriptografi

Menurut Sadikin (2012), kriptografi adalah ilmu yang bersandarkan pada teknik

matematika yang berurusan dengan keamanan informasi seperti kerahasiaan, keutuhan

data dan otentikasi entitas.

Dalam kriptografi, pesan yang mempunyai makna disebut plaintext, dan pesan yang tidak bermakna lagi disebut ciphertext. Dua proses utama dalam kriptografi adalah enkripsi dan dekripsi. Enkripsi adalah transformasi plaintext menjadi ciphertext, sedangkan transformasi sebaliknya dari cipherteks menjadi plainteks semula disebut dekripsi. Baik enkripsi maupun dekripsi, proses

keduanya melibatkan penggunaan kunci (key).

Sistem kriptografi (yang terdiri atas algoritma kriptografi, kunci, plaintext, dan ciphertext) dapat digolongkan menjadi dua kelompok: sistem kriptografi simetri dan sistem kriptografi asimetris (kunci-publik). Pada sistem kriptografi

simetri yang ditunjukkan pada gambar 2.1. (Munir, 2006), kunci untuk enkripsi sama

dengan kunci untuk dekripsi. Sebelum melakukan pengiriman pesan, pengirim dan

penerima harus memilih suatu kunci tertentu yang sama untuk dipakai bersama, dan

kunci ini harus sangat rahasia bagi pihak yang tidak berkepentingan sehingga

algoritma ini disebut juga sebagai algoritma kunci rahasia (secret-key algorithm). Contoh algoritma kriptografi simetri diantaranya adalah DES, Blowfish,

(2)

Gambar 2.1. Kriptografi Simetris

Sedangkan pada sistem kriptografi kunci-publik seperti yang terlihat pada

gambar 2.2. (Munir, 2006), kunci untuk enkripsi tidak sama dengan kunci untuk

dekripsi. Kunci untuk enkripsi tidak rahasia, sehingga dinamakan juga kunci

publik (public key), sedangkan kunci untuk dekripsi rahasia, sehingga dinamakan

kunci privat (privat key). Pengirim pesan mengenkripsi pesan dengan

menggunakan kunci publik si penerima pesan, hanya penerima pesan yang dapat

mendekripsi pesan menjadi plainteks semula dengan menggunakan kunci

privatnya. Contoh algoritma kriptografi asimetris diantaranya adalah RSA ( Rivest-Shamir-Adleman), DSA, dan ElGamal.

Gambar 2.2. Kriptografi Asimetris

Kriptografi terbagi atas dua kategori yaitu kriptografi klasik dan kriptografi

modern. Kriptografi klasik adalah sistem kriptografi yang menggunakan penyandian

kunci simetris dan menggunakan metode subtitusi (pergantian huruf) atau transposisi

(pertukaran tempat). Dan kriptografi modern adalah sistem kriptografi yang

menggunakan penyandian kunci asimetris (Sadikin, 2012).

Ada 4 (empat) aspek-aspek keamanan yang disediakan oleh kriptografi (Munir,

2006), yaitu:

1. Kerahasiaan

(3)

kriptografi, layanan ini umumnya direalisasikan dengan cara menyandikan pesan

menjadi bentuk yang tidak dapat dimengerti.

2. Integritas Data

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

integritas data, sistem harus memiliki kemampuan untuk mendeteksi manipulasi

pesan oleh pihak-pihak yang tidak berhak, antara lain penyisipan,

penghapusan,dan pengsubsitusian data lain kedalam pesan yang sebenarnya.

3. Otentikasi

Otentikasi (Authentication) merupakan layanan yang berhubungan dengan identifikasi. Baik mengidentifikasi benaran pihak-pihak yang berkomunikasi

(user authentication dan entity authentication) maupun mengidentifikasi kebenaran sumber pesan (data origin authentication). Dua pihak yang saling berkomunikasi harus dapat mengotentikasi satu sama lain sehingga ia dapat

memastikan sumber pesan. Pesan yang dikirim melalui saluran komunikasi juga

harus diotentikasi asalnya. Otentikasi sumber pesan secara implisit juga

memberikan kepastian integritas data, sebab jika pesan telah dimodifikasi berarti

sumber pesan sudah tidak benar. Oleh karena itu, layanan integritas data selalu

dikombinasikan dengan layanan otentikasi sumber pesan.

4. Anti Penyangkalan

Anti Penyangkalan (non-repudiation) merupakan layanan untuk mencegah entitas yang berkomunikasi melakukan penyangkalan, yaitu pengiriman pesan

menyangkal melakukan pengiriman atau penerimaan pesan menyangkal telah

menerima pesan.

2.2.Tanda Tangan Digital

Tanda tangan digital adalah mekanisme otentikasi yang mengijinkan pemilik pesan membubuhkan sebuah sandi pada pesannya yang bertindak sebagai tanda tangan.

(4)

Prinsip yang digunakan dalam tanda tangan digital ini adalah dokumen yang dikirimkan harus ditandatangani oleh pengirim dan tanda tangan bisa diperiksa oleh

penerima untuk memastikan keaslian dokumen yang dikirimkan. Fungsinya adalah

untuk melakukan validasi terhadap data yang dikirim. Tanda tangan digital

menggunakan algoritma yang disebut dengan istilah hashing algorithm. Fungsi tersebut akan menghasilkan sebuah kombinasi karakter yang yang unik yang disebut

Message Digest. dengan cara ini pengirim bertanggungjawab terhadap isi dokumen dan dapat di cek keaslian dokumen oleh penerima.

Keunikannya adalah jika di tengah perjalanan data mengalami modifikasi,

penghapusan maupun di sadap diam-diam oleh hacker walaupun hanya 1 karakter saja,

maka message digest yang berada pada si penerima akan berbeda dengan yang dikirimkan pada awalnya. Keunikan lainnya adalah message digest tersebut tidak bisa dikembalikan lagi ke dalam bentuk awal seperti sebelum disentuh dengan fungsi

algoritma, sehingga disebutlah sebagai one-way hash (Sianturi, 2008).

Fungsi utama dari tanda tangan digital pada pada aspek keamanan kriptografi adalah non-repudiation atau anti penyangkalan dimana apabila dokumen valid maka pengirim tidak bisa menyangkal bahwa keberadaan dokumen benar dikirim oleh

pengirim yang bersangkutan.

Suatu tanda tangan digital dapat digunakan di segala macam pesan, apakah itu

terenkripsi maupun tidak, sehingga penerima dapat memastikan identitas pengirim itu

dan pesan tiba secara utuh.

(5)

Cara kerja tanda tangan digital seperti yang terlihat pada gambar 2.3. (Tulu et all, 2004) adalah sebagai berikut:

1. Si A menggunakan proses hashing algorithm untuk mengambil nilai hash dari sebuah pesan yang terdapat dalam sebuah dokumen yang dikirim dan

menghasilkan Message Digest.

2. Setelah dilakukan hashing, Si A melakukan sign terhadap message digest dengan menggunakan kunci privat yang hanya diketahui oleh penandatangan dan

digunakan untuk membentuk tanda tangan digital.

3. Kemudian Si A mengirimkan tanda tangan digital bersama dokumen tersebut. 4. Si B penerima pesan yang dikirimkan oleh Si A.

5. Setelah itu Si B mengverifikasi pesan yang dikirimkan oleh Si A. Pada proses

verifikasi tersebut pesan di hashing terlebih dahulu sehingga menghasilkan

message digest dan tanda tangan digital akan di unsign menggunakan kunci publik Si A. Jika message digest dan tanda tangan digital-nya sama, maka pesan ini adalah asli dan pesan berasal dari pengirim yang sebenarnya. Bila pesan telah

diubah oleh pihak luar, maka tanda tangan digital juga ikut berubah sehingga kunci publik yang ada tidak akan bisa di unsign.

Proses diatas mampu membuktikan bahwasanya pesan adalah asli (message

authentication) dan orang yang mengirim adalah orang yang sebenarnya (user authentication). Ini berarti tanda tangan digital memenuhi salah satu syarat keamanan jaringan yaitu non-repudiation atau anti-penyanggahan.

2.3.Fungsi Hash

Fungsi hash merupakan suatu fungsi yang menerima masukan berupa string yang panjangnya sembarang dan mengonversi masukan tersebut menjadi string yang

mempunyai panjang tetap (fixed) dan umumnya menjadi lebih kecil dari panjang semula. Keluaran dari fungsi hash disebut juga nilai hash atau pesan-ringkas (message

digest).

Fungsi hash sering juga disebut fungsi satu arah (one way function), message

digest, fingerprint, fungsi kompresi, dan message authentication code (MAC). Fungsi ini biasanya diperlukan bila kita menginginkan pengambilan sidik jari suatu pesan.

(6)

besar dari keluarannya, sehingga seolah-olah mengalami kompresi. Namun kompresi

hasil fungsi ini tidak dapat dikembalikan ke asalnya sehingga disebut sebagai fungsi

satu arah. Dinamakan sebagai message digest karena seolah-olah merupakan inti sari pesan mestinya merupakan ringkasan pesan yang masih dipahami maknanya,

sedangkan disini justru sebaliknya, malahan dengan diketahuinya sidik jari ini, justru

orang diharapkan tidak tahu pesan aslinya (Kurniawan, 2004).

Masukan Nilai Hash

Gambar 2.4. Contoh Penggunaan Fungsi Hash

Pada gambar 2.4. (Munir, 2004) memperlihatkan fungsi hash yang mengubah

suatu string dengan panjang berapapun menjadi sebuah message digest yang memiliki panjang tetap. Fungsi hash pada dasarnya bekerja satu arah, berarti pesan asli atau pesan semula akan diubah menjadi sebuah message digest, namun message digest

yang dihasilkan tidak dapat dikembalikan menjadi pesan asli atau pesan semula

kembali.

Fungsi hash satu arah merupakan fungsi satu arah (one way function) yang dapat menghasilkan ciri (signature) dari data (berkas, stream). Perubahan satu bit saja akan mengubah keluaran hash secara drastis. Fungsi hash biasanya digunakan untuk menjamin integritas dan tanda tangan digital.

(7)

Saat ini sudah terdapat tiga generasi dari SHA dimana dari generasi tersebut

juga terdapat beberapa varian lagi berdasarkan panjang bit yang dihasilkan. Ketiga

varian itu adalah SHA-0 (atau yang biasa disebut SHA saja), SHA-1, dan SHA-2.

Algoritma SHA-2 merupakan pengembangan dari algoritma SHA-1 yang

memuat banyak perubahan. Algoritma ini didesain oleh National Security Agency

(NSA) of United States dan dipublikasikan pada tahun 2001 oleh NIST sebagai standar bagi pemrosesan informasi federal bagi Amerika Serikat atau yang biasa

disebut Federal Information Processing Standard (FIPS).

Algoritma SHA-2 ini terdiri dari beberapa algoritma berdasarkan panjang bit

yang digunakan/ dihasilkan sebagai nilainya yaitu SHA-224, SHA-256, SHA-384,

SHA-512. Algoritma SHA-2 ini menggunakan beberapa operasi dasar dalam teknik

kriptografi, yaitu fungsi AND, OR, XOR, SHIFT (right), dan ROTATE (right).

Sifat-Sifat Fungsi Hash Kriptografi:

c. Tahan tumbukan (Collision-resistant): sulit mencari dua input berbeda m1 dan

m2 yang menyebabkan hash(m1) = hash(m2)

2.4.Algoritma GOST Digital Signature

GOST atau Gosudarstvenny Standard yang artinya standard pemerintah, adalah algoritma kriptografi dari negara Uni Soviet dahulu (sekarang sudah terpecah menjadi

sejumlah negara dengan Rusia sebagai negara terbesar) (Munir, 2004).

Algoritma ini dikembangkan pada tahun 1970 yang merupakan sebuah

algoritma block chiper dengan panjang 64 bit, sedangkan panjang kuncinya 256 bit.

GOST dibuat oleh Soviet sebagai alternatif terhadap algoritma enkripsi standard

Amerika Serikat, DES. GOST secara struktural mirip dengan DES.

(8)

mereka dan skema tanda tangan didasarkan pada kurva elips yang sampai saat ini

menjadi standar IEEE. Pada tahun 1999 federasi Rusia mengeluarkan standar tanda

tangan digital GOST Digital Signature atau sering disebut GOST 34,10-94. Algoritma ini sangat mirip dengan Digital Signature Algorithm (DSA). GOST Digital Signature

dan algoritma tanda tangan digital lainnya memiliki tiga proses utama yaitu:

1. Pembentukan sepasang kunci (Key Pair Generation)

2. Pembentukan tanda-tangan digital (Digital Signature Generation)

3. Verifikasi tanda-tangan digital (Digital Signature Verification)

2.4.1. Parameter GOST digital signature

GOST Digital Signature merupakan sebuah standar Russia digital signature yang dikembangkan dari DSA yang telah dimodifikasi dimana menggunakan parameter

dibawah ini (Schneier, 1996):

1. p, adalah bilangan prima dengan panjang antara 509 ≤ p ≥512 bit, atau 1020 ≤ p 1024 bit. Parameter p bersifat publik.

2. q, adalah bilangan prima dengan panjang 254 ≤ q ≥ 256 bit, dan q merupakan faktor dari p - 1. Parameter q bersifat publik.

3. a, merupakan bilangan yang lebih kecil dari p - 1 dimana mod p = 1.

Parameter a bersifat publik.

4. x, adalah bilangan acak yang lebih kecil dari q. Parameter x adalah kunci privat. 5. y = mod p, adalah kunci publik.

6. m, pesan yang akan diberi tanda tangan.

2.4.2. Pembentukan sepasang kunci

Proses pembentukan kunci pada GOST Digital Signature adalah sebagai berikut

(Schneier, 1996):

1. Pilih bilangan prima p dan q dimana (p–1) mod q = 0. 2. Hitung a dimana aq mod p = 1 dan a < p-1.

3. Tentukan kunci privat x dimana x < q.

(9)

y = mod p (2.1)

5. Kunci publik (p, q, a, y) dan kunci privat (p, q, a, x).

2.4.3. Pembentukan tanda tangan digital

Diketahui kunci publik (p, q, a, y) dan kunci privat (p, q, a, x) (Schneier, 1996):

1. Ubah pesan m menjadi message digest dengan fungsi Hash SHA menghasilkan SHA (M).

2. Tentukan bilangan acak k dimana k < q.

3. Hitung tanda tangan r, dengan rumus:

r = (akmod p) mod q (2.2)

1. Hitung tanda tangan s, dengan rumus:

s = (xr + k(H(m))) mod q (2.3)

4. Kirim pesan beserta tanda tangan r dan s.

2.4.4. Verifikasi tanda tangan digital

Sebelum diverifikasi, harus dipastikan tersedia kunci publik pengirim (y), nilai p, q

dan a beserta pesan yang bertandatangan r dan s. Penerima memeriksa terlebih dahulu apakah 0 < r < q dan 0 < s < q, kemudian hitung:

1. Hitung nilai v, dengan rumus:

v = H(m)q-2 mod q (2.4)

2. Hitung nilai Z1, dengan rumus:

Z1 = (sv) mod q (2.5)

3. Hitung nilai Z2, dengan rumus:

Z2 = ((q – r) * v) mod q (2.6)

(10)

u = ((a z1 * y z2) mod p) mod q (2.7)

5. Jika u = r, maka proses verifikasi berhasil.

2.5.Penelitian Sebelumnya

Beberapa penelitian dari peneliti sebelumnya yang menjadi bahan pembelajaran

penulis tentang tanda tangan digital.

Supriyanto (2009) menggunakan algoritma kunci publik RSA yang mampu

memberikan sistem keamanan dokumen attachment pada sebuah e-mail untuk menghindari jebolnya keamanan yang diterapkan e-mail standard seperti PGP. Pada penelitian ini pengujian validitas dilakukan berdasarkan elemen dokumen XML

dengan cara membandingkan “data valid” dengan perubahan data yang menghasilkan

“data invalid”.

Budiono (2011) telah melakukan penerapan tanda tangan digital untuk

otentikasi SMS-Banking. Algoritma RSA telah berhasil diimplementasikan menggunakan teknologi tanda tangan digital untuk transaksi SMS-Banking yang tersimulasikan dalam perangkat lunak yang telah dibangun diatas telepon seluler

sebagai client dan perangkat lunak yang dibangun diatas komputer sebagai server.

Table 2.1. Tabel penelitian terdahulu

No Judul Pengarang Tahun Kelebihan

1. Pemakaian kriptografi

kunci publik untuk proses

enkripsi dan tanda tangan

digital pada dokumen email.

Aji Supriyanto 2009 Memberikan keamanan

otentikasi dokumen e-mail,

untuk menghindari

jebolnya atau tembusnya

keamanan yang diterapkakn

(11)

2. Penerapan tanda tangan

digital untuk otentikasi

SMS-Banking.

Budiono 2011 Algoritma RSA yang

berhasil diimplementasikan

pada tanda tangan digital

SMS telah terbukti dengan

kemampuan perangkat

lunak client dalam

mengoperasikan bilangan

Gambar

Gambar 2.1. Kriptografi Simetris
Gambar 2.3. Skema tanda tangan digital
Gambar 2.4. Contoh Penggunaan Fungsi Hash
Table 2.1. Tabel penelitian terdahulu

Referensi

Dokumen terkait

Sedangkan jalur kendaraan sekunder yang ditujukan untuk pengelola dan distribusi masuk obyek koleksi, melalui jalan lingkungan yang terletak pada sisi barat site.. Sedangkan

Untuk itu diperlukan usaha- usaha dalam memperluas kesempatan kerja, Di Kabupaten Sidoarjo saat ini berkembang industri baik yang berskala besar atau kecil.. Semakin banyaknya

Dan hasil penelitian didapatkan kesimpulan bahwa opini pendengar terhadap lagu “Udin Sedunia” dari Sualudin mendapatkan respon netral karena masyarakat sudah menganggap biasa

Kode Program 1 menjelaskan pengkodean untuk menampilkan kategori pariwisata. Sistem melakukan request ke http server untuk mendapatkan konten kategori yang telah

Dari hasil observasi penguasaan kemampuan afektif, secara umum terjadi peningkatan prosentase jumlah siswa yang memenuhi aspek-aspek yang di amati melalui penerapan model siklus

Suatu organisasi yang belum menerapkan sebuah sistem di dalamnya akan mengalami kesulitan dalam melakukan pekerjaannya ataupun melakukan managemen di dalam

Melakukan diskusi cara menggunakan operasi hitung tambah, kurang, kali atau bagi dalam menyelesaikan masalah sehari-hari yang berkaitan dengan bilangan bulat dengan

dimasa yang modern ini para pengguna teknologi internet semakin berkembang, ini berdampak positif karna dapat mempermudah pekerjaan manusia tetapi dapat