algoritma sistem kriptografiilmusisteminfo.com/upload/file_pdf/algoritma kriptografi...

32
Algoritma Sistem Kriptografi Ainun Zainiyah #1 , Annisa Anjani #2 , Arya Surya Satria #3 , Nizam Irsananda #4 , Rivendrea Giftama Chrismaputra #3 #1,2,3 Jurusan Sistem Informasi, Fakultas Sains dan Teknologi Universitas Airlangga, Jl. Ir. Soekarno, Surabaya Abstract. Dengan perkembangan teknologi yang semakin pesat saat ini mengakibatkan tingkat kejahatan di dunia maya juga semakin meningkat. Oleh karenanya dibutuhkan pengamanan yang lebih handal untuk mencegah kejahatan tersebut. Beberapa contoh kejahatan seperti pencurian data, penyalahgunaan data dan lain sebagainya, jika hal tersebut sampai terjadi maka dapat menimbulkan kerugian diberbagai. Untuk mengantisipasi kejahatan tersebut dibutuhkan suatu metode pengkodean data, sehingga pihak yang tidak berwenang tidak dapat membaca data tersebut. Metode mengubah data yang semula berupa teks biasa menjadi teks yang lebih kompleks disebut dengan kriptografi. Dalam metode kriptografi terdapat banyak algortima yang dapat digunakan. Pada artikel ini akan dibahas 10 algoritma yang dapat digunakan untuk kriptografi yakni, AES (Advanced Encryption Standard), IDEA (International Data Encryption Algorithm), RSA (Rivest, Shamir, Adleman), Knapsack Merkle-Hellman (MH), A5, RC4, PGP (Pretty Good Privacy), Digital Signature, Digital Certificate, MD5. Keywords: algoritma, sistem kriptografi, kriptografi, AES, IDEA, Knapsack Merkle-Hellman, A5, RC4, PGP, Digital Signature, Digital Certificate, MD5 1. Pendahuluan Perkembangan teknologi informasi dan komunikasi saat ini, mengakibatkan manusia dapat berkomunikasi dan saling bertukar data dan informasi tanpa dihalangi oleh jarak dan waktu. Seiring dengan tuntutan akan keamanan untuk kerahasiaan informasi yang saling dipertukarkan tersebut semakin meningkat menimbulkan tuntutan tersedianya suatu sistem pengamanan data dan informasi yang lebih baik agar dapat mengamankan data dari berbagai ancaman. Oleh karena itu

Upload: others

Post on 16-Jan-2020

52 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Algoritma Sistem Kriptografiilmusisteminfo.com/upload/file_pdf/Algoritma Kriptografi 1567701750.pdf · Algoritma Sistem Kriptografi Ainun Zainiyah #1, Annisa Anjani #2, Arya Surya

Algoritma Sistem Kriptografi Ainun Zainiyah #1, Annisa Anjani #2, Arya Surya Satria#3 ,

Nizam Irsananda#4, Rivendrea Giftama Chrismaputra#3

#1,2,3Jurusan Sistem Informasi, Fakultas Sains dan Teknologi

Universitas Airlangga, Jl. Ir. Soekarno, Surabaya

Abstract.

Dengan perkembangan teknologi yang semakin pesat saat ini mengakibatkan tingkat kejahatan

di dunia maya juga semakin meningkat. Oleh karenanya dibutuhkan pengamanan yang lebih

handal untuk mencegah kejahatan tersebut. Beberapa contoh kejahatan seperti pencurian data,

penyalahgunaan data dan lain sebagainya, jika hal tersebut sampai terjadi maka dapat

menimbulkan kerugian diberbagai. Untuk mengantisipasi kejahatan tersebut dibutuhkan suatu

metode pengkodean data, sehingga pihak yang tidak berwenang tidak dapat membaca data

tersebut. Metode mengubah data yang semula berupa teks biasa menjadi teks yang lebih

kompleks disebut dengan kriptografi. Dalam metode kriptografi terdapat banyak algortima yang

dapat digunakan.

Pada artikel ini akan dibahas 10 algoritma yang dapat digunakan untuk kriptografi yakni, AES

(Advanced Encryption Standard), IDEA (International Data Encryption Algorithm), RSA

(Rivest, Shamir, Adleman), Knapsack Merkle-Hellman (MH), A5, RC4, PGP (Pretty Good

Privacy), Digital Signature, Digital Certificate, MD5.

Keywords: algoritma, sistem kriptografi, kriptografi, AES, IDEA, Knapsack Merkle-Hellman,

A5, RC4, PGP, Digital Signature, Digital Certificate, MD5

1. Pendahuluan

Perkembangan teknologi informasi dan komunikasi saat ini, mengakibatkan manusia dapat

berkomunikasi dan saling bertukar data dan informasi tanpa dihalangi oleh jarak dan waktu.

Seiring dengan tuntutan akan keamanan untuk kerahasiaan informasi yang saling dipertukarkan

tersebut semakin meningkat menimbulkan tuntutan tersedianya suatu sistem pengamanan data dan

informasi yang lebih baik agar dapat mengamankan data dari berbagai ancaman. Oleh karena itu

Page 2: Algoritma Sistem Kriptografiilmusisteminfo.com/upload/file_pdf/Algoritma Kriptografi 1567701750.pdf · Algoritma Sistem Kriptografi Ainun Zainiyah #1, Annisa Anjani #2, Arya Surya

berkembangnya cabang ilmu yang mempelajari tentang cara-cara pengamanan data merupakan

dampak positif dari tuntutan tersedianya sistem keamanan data yang berfungsi untuk melindungi

data yang ditransmisikan atau dikirimkan melalui suatu jaringan komunikasi. Ilmu yang

mempelajari tentang cara-cara pengamanan data dikenal dengan nama Kriptografi.

Kriptografi adalah ilmu yang mempelajari teknik-teknik matematika yang berhubungan

dengan aspek keamanan data dan informasi seperti keabsahan data, integritas data, serta

autentifikasi data. Sistem kriptografi adalah suatu fasilitas untuk mengkonversikan pesan jelas

(plainteks) ke pesan yang telah disandikan (cipherteks). Proses konversi ini disebut enkripsi

(encryption). Sebaliknya, menerjemahkan cipherteks menjadi plainteks disebut dengan dekripsi

(decryption). Proses enkripsi dan dekripsi menggunakan satu atau beberapa kunci kriptografi.

Kriptografi dibagi menjadi 10, yaitu sebagai berikut:

a. AES (Algorithm Encryption Standart)

b. IDEA (International Data Encryption Algorithm)

c. RSA (Rivest, Shamir, Adleman)

d. Knapsack Merkle Hellman (KMH)

e. A5

f. RC4

g. PGP (Pretty Good Privacy)

h. Digital Signature

i. Digital Certificate

j. MD5

2. Prespektif Teoritis

Kata kriptografi berasal dari bahasa Yunani, “kryptós” yang berarti tersembunyi dan

“gráphein” yang berarti tulisan. Sehingga kata kriptografi dapat diartikan berupa frase “tulisan

tersembunyi”. Menurut Request for Comments (RFC), kriptografi merupakan ilmu

matematika yang berhubungan dengan transformasi data untuk membuat artinya tidak dapat

dipahami (untuk menyembunyikan maknanya), mencegahnya dari perubahan tanpa izin, atau

mencegahnya dari penggunaan yang tidak sah. Jika transformasinya dapat dikembalikan,

kriptografi juga bisa diartikan sebagai proses mengubah kembali data yang terenkripsi menjadi

bentuk yang dapat dipahami. Artinya, kriptografi dapat diartikan sebagai proses untuk

melindungi data dalam arti yang luas (Oppliger, 2005).

Page 3: Algoritma Sistem Kriptografiilmusisteminfo.com/upload/file_pdf/Algoritma Kriptografi 1567701750.pdf · Algoritma Sistem Kriptografi Ainun Zainiyah #1, Annisa Anjani #2, Arya Surya

Menezes, Oorschot dan Vanstone (1996) menyatakan bahwa kriptografi adalah suatu

studi teknik matematika yang berhubungan dengan aspek keamanan informasi seperi

kerahasiaan, integritas data, otentikasi entitas dan otentikasi keaslian data. Kriptografi tidak

hanya berarti penyediaan keamanan informasi, melainkan sebuah himpunan taknik-teknik.

Sedangkan enkripsi adalah sebuah proses yang melakukan perubahan sebuah kode dari

yang bisa dimengerti menjadi sebuah kode yang tidak bisa dimengerti (tidak terbaca). Enkripsi

dapat diartikan sebagai kode atau chiper. Sebuah sistem pengkodean menggunakan suatu table

atau kamus yang telah didefinisikan untuk menggantikan kata dari informasi atau yang

merupakan bagian dari informasi yang dikirim. (Dian Wirdasari; 2008: 174)

3. Diskusi

a. AES (Advanced Encryption Standard)

AES merupakan sistem penyandian blok yang bersifat non-Feistel karena AES

menggunakan komponen yang selalu memiliki invers dengan panjang blok 128 bit. AES

terdiri dari 4 jenis transformasi bytes, yaitu SubBytes, ShiftRows, MixColumns, AddRoundKey.

Pada awal proses enkripsi. input yang telah dicopykan ke dalam state akan mengalami

transformasi byte AddRoundKey. Setelah itu, state akan mengalami transformasi SubBytes,

ShiftRows, MixColumns dan AddRoundKey secara berulang-ulang sebanyak Nr. Proses tersebut

dalam AES disebut sebagai Round Function.

Proses AES pada enkripsi adalah round key ditambahkan pada state dengan operasi XOR.

Setiap round key terdiri dari Nb word dimana tiap word tersebut akan dijumlahkan dengan word

atau kolom yang bersesuaian dari state sehingga SubBytes merupakan transformasi byte dimana

setiap elemen pada state akan dipetakan dengan menggunakan sebuah tabel substitusi, seperti

yang terlihat pada gambar 1.1.

Gambar 1.1

Page 4: Algoritma Sistem Kriptografiilmusisteminfo.com/upload/file_pdf/Algoritma Kriptografi 1567701750.pdf · Algoritma Sistem Kriptografi Ainun Zainiyah #1, Annisa Anjani #2, Arya Surya

Untuk setiap byte pada array state, misalkan S[r, c] = xy, yang dalam hal ini xy adalah digit

heksadesimal dari nilai S [r, c], maka nilai substitusinya, dinyatakan dengan S’[r, c], adalah

elemen di dalam tabel subtitusi yang merupakan perpotongan baris x dengan kolom y.

Gambar 1.2 mengilustrasikan pengaruh peme-taan byte pada setiap byte dalam state.

Gambar 1.3 merupakan Tabel ShitRows proses pergeseran bit dimana bit paling kiri akan

dipindahkan menjadi bit paling kanan. Proses pergeseran Shiftrow ditunjukkan dalam gambar

3 berikut. MixColumns mengoperasikan setiap elemen yang berada dalam satu kolom pada

state.

Gambar 1.2

Gambar 1.3 Tabel Shift Rows

Gambar 1.4 Transformasi Column

Page 5: Algoritma Sistem Kriptografiilmusisteminfo.com/upload/file_pdf/Algoritma Kriptografi 1567701750.pdf · Algoritma Sistem Kriptografi Ainun Zainiyah #1, Annisa Anjani #2, Arya Surya

Gambar 1.4 Transformasi mixcolumns dapat dilihat pada perkalian matriks.

b. IDEA (International Data Encryption Algorithm)

Kriptografi IDEA (International Data Encryption Algorithm) diperkenalkan pertama kali

tahun 1991 oleh Xuejia Lai dan James L Massey. Algoritma ini dimaksudkan sebagai

pengganti DES(Data Encryption Standard). IDEA merupakan algoritma simetris yang

beroperasi pada sebuah blok pesan terbuka 64bit, menggunakan kunci yang sama 128bit

untuk proses enkripsi dan dekripsi. Keluaran dari algoritma ini adalah blok pesan

terenkripsi 64bit.

Algoritma utama dari sistem kriptografi IDEA adalah sebagai berikut :

1. Proses Enkripsi : ek (M) = C (1)

2. Proses Dekripsi : dk (C) = M (2)

E : fungsi enkripsi

D : fungsi dekripsi

M : pesan terbuka

C : pesan rahasia

K : kunci enkripsi atau dekripsi

Proses dekripsi menggunakan blok penyandi (algoritma) yang sama dengan proses

enkripsi dimana kunci dekripsinya diturunkan dari kunci enkripsi. IDEA menggunakan

proses iterasi yang terdiri dari 8 putaran dan 1 transformasi keluaran pada putaran ke 8,5.

Algoritma IDEA ini menggunakan 3 operasi aljabar utama, yakni : Xor, operasi penjmlahan

modulo 2 16 dan operasi perkalian modulo (2 16 + 1). Operasi ini semuanya dilakukan

pada subblok 16bit. IDEA mendapatkan keamanannya dari operasi dari grup yang berbeda

– penambahan dan penjumlahan modular serta exclusive or dari bit—yang secara aljabar

tidak cocok dalam beberapa pengertian.

Page 6: Algoritma Sistem Kriptografiilmusisteminfo.com/upload/file_pdf/Algoritma Kriptografi 1567701750.pdf · Algoritma Sistem Kriptografi Ainun Zainiyah #1, Annisa Anjani #2, Arya Surya

Pada proses enkripsi algoritma ini, terdapat 3 operasi berbeda yang digunakan :

a. Xor dari 2 sub blok 16bit; bit per bit

b. Penjumlahan modulo 2 16 2 sub blok 16 bit

c. Perkalian modulo (2 16 + 1) 2 sub blok 16 bit

Blok masukan pesan 64bit mulamula dibagi menjadi 4 subsub blok 16bit : X1, X2, X3,

X4. Keempat subblok 16 bit sebelumnya kemudian ditransformasikan menjadi subblok 16

bit, Y1, Y2, Y3, Y4. Semua proses ini berada di bawah kendali 52 subblok kunci 16bit

yang dibentuk dari blok kunci 128bit. Keempat subblok 16bit X1, X2, X3, X4 digunkan

sebagai masukan putaran pertama dari algoritma IDEA. Dapat dilihat dari gambar bahwa

dalam setiap putaran dilakukan operasi XOR, penjumlahan modulo dan perkalian modulo.

Dari gambar juga terlihat bahwa keluaran dari putaran sebelumnya merupakan masukan

dari putaran berikutnya. Hal ini terusberlangsung sampai 8 putaran. Pada putaran terakhir

(putaran 8,5) dilakukan transformasi keluaran yang dikendalikan oleh 4 subblok kunci

16bit. Sub kunci diberi simbol Z. Operasi yang dilakukan pada setiap putaran dapat

dirangkum sebagai berikut :

a) Perkalian X1 dengan Z11

b) Penjumlahan X2 dengan Z21

c) Pejumlahan X3 dengan Z 31

Page 7: Algoritma Sistem Kriptografiilmusisteminfo.com/upload/file_pdf/Algoritma Kriptografi 1567701750.pdf · Algoritma Sistem Kriptografi Ainun Zainiyah #1, Annisa Anjani #2, Arya Surya

d) Perkalian X4 dengan Z41

e) Operasi XOR hasil langkah 1) dan 3)

f) Operasi XOR hasil angkah 2) dan 4)

g) Perkalian hasil langkah 5) dengan Z51

h) Penjumlahan hasil langkah 6) dengan langkah 7)

i) Perkalian hasil langkah 8) dengan Z61

j) Penjumlahan hasil langah 7) dengan 9)

k) Operasi XOR hasil langkah 1) dan 9)

l) Operasi XOR hasil langkah 3) dan 9)

m) Operasi XOR hasil langkah 2) dan 10)

n) Operasi XOR hasil langkah 4) dan 10)

o) Keluaran dari setiap putaran (11), 12) ,13), 14) ) menjadi masukan bagi operasi

selanjutnya. Pada putaran ke 8,5 dilakukan transformasi keluaran :

p) Perkalian X1 dengan Z1 8,5

q) Penjumlahan X2 dengan Z3 8,5

r) Penjumlahan X3 dengan Z2 8,5

s) Perkalian X4 dengan Z4 8,5

Setelah semua selesai, keempat subblok 16bit yang merupakan keluaran dari 8,5 putaran

operasi tadi digabung kembali menjadi blok pesan rahasia 64bit.

c. RSA (Rivest, Shamir, Adleman)

RSA Algorithm adalah dasar dari cryptostem – serangkaian algoritma kriptografi yang

digunakan untuk layanan atau tujuan keamanan tertentu – yang memungkinkan enkripsi

public key dan secara luas digunakan untuk mengamankan data sensitive, terutama ketika

sedang dikirim melalui ketidakaman jaringan seperti internet.

RSA pertama kali dijelaskan secara publik pada tahun 1977 oleh Ron Rivest, Adi Shamir

dan Leonard Adleman dari Massachusetts Institute of Technology, meskipun penciptaan

1973 algoritma kunci publik oleh matematikawan Inggris Clifford Cocks tetap

diklasifikasikan oleh GCHQ Inggris hingga 1997.

Dalam kriptografi RSA, public key dan private key dapat mengenkripsi pesan; kunci yang

fungsinya sebaliknya dari yang digunakan untuk mengenkripsi pesan, digunakan untu

Page 8: Algoritma Sistem Kriptografiilmusisteminfo.com/upload/file_pdf/Algoritma Kriptografi 1567701750.pdf · Algoritma Sistem Kriptografi Ainun Zainiyah #1, Annisa Anjani #2, Arya Surya

mendekripsi pesan tersebut. Atribut ini adalah salah satu alasan mengapa RSA menjadi

algoritma asimetris yang paling banyak digunakan. RSA menyediakan metode untuk

memastikan kerahasiaan, integritas, keaslian, dan non-penolakan (non-repudation).

Banyakk protokol seperti Secure Shell, OpenPGP, S/MIME, dan SSL/TLS

mengandalkan RSA untuk fungsi enkripsi dan Digital Signature. Ini juga digunakan dalam

program peangkat lunak – Browser adalah contoh yang jelas karena mereka perlu membuat

koneksi yang aman melalui jaringan yang tidak aman, seperti interent, atau memvalidasi

Digital Signature. Verifikasi dari RSA adalah salah satu operasi yang paling umum

dilakukan dalam sistem yang terhubung ke jaringan.

RSA mendapatkan keamanannya dari kesulitan memfaktorkan bilangan bulat besar yang

merupakan produk dari dua bilangan prima besar.

Algoritma pembangkitan public key dan private key adalah bagian paling kompleks dari

kriptografi RSA. Dua bilangan prima besar, p dan q, dihasilkan dengan menggunakan

algoritma uji primality Rabin-Miller. Modulus, n, dihitung dengan mengalikan p dan q.

nomor ini digunakan oleh public key dan privae key dan menyediakan tautan di antara

mereka. Panjangnya, biasanya dinyatakan dalam bit, disebut key length.

Public key terdiri dari modulus n dan eksponen publik, e, yang biasanya ditetapkan pada

65537, karena merupakan bilangan prima yang tidak terlalu besar. Angka e tidak harus

berupa bilangan prima yang dipilih secara rahasia, karena public key dibagikan dengan

semua orang.

Privat key terdiri dari modulus n dan eksponen privat d, yang dihitung menggunakan

algoritma Extended Euclidean untuk menemukan invers multiplikatif berkenaan dengan

jumlah n.

Cara Kerja Algorima RSA

Arya menghasilkan kunci RSA-nya dengan memilih dua bilangan prima: p = 11 dan q =

13. Modulusnya adalah n = p × q = 143. Jumlahnya adalah n ϕ (n) = (p − 1) x (q − 1) = 120.

Dia memilih 7 untuk kunci publik RSA-nya dan menghitung kunci privat RSA-nya

menggunakan algoritma Extended Euclidean, yang memberinya 103.

Riven ingin mengirimkan pesan terenkripsi kepada Arya, M, jadi ia memperoleh kunci

publik RSA (n, e) yang, dalam contoh ini, adalah (143, 7). Pesan plaintext -nya hanya

nomor 9 dan dienkripsi ke dalam ciphertext

Page 9: Algoritma Sistem Kriptografiilmusisteminfo.com/upload/file_pdf/Algoritma Kriptografi 1567701750.pdf · Algoritma Sistem Kriptografi Ainun Zainiyah #1, Annisa Anjani #2, Arya Surya

M e mod n = 9 7 mod 143 = 48 = C

Ketika Arya menerima pesan Riven, ia mendekripsi dengan menggunakan kunci privat

RSA-nya (d, n) sebagai berikut:

C d mod n = 48 103 mod 143 = 9 = M

Untuk menggunakan kunci RSA untuk menandatangani pesan secara digital, Arya perlu

membuat hash - intisari pesannya ke Riven - mengenkripsi nilai hash dengan kunci privat

RSA-nya, dan menambahkan kunci ke pesan. Riven kemudian dapat memverifikasi bahwa

pesan telah dikirim oleh Arya dan belum diubah dengan mendekripsi nilai hash dengan

kunci publiknya. Jika nilai ini cocok dengan hash dari pesan asli, maka hanya Arya yang

bisa mengirimnya – otentikasi

Arya tentu saja dapat mengenkripsi pesannya dengan kunci publik RSA Riven -

kerahasiaan - sebelum mengirimnya ke Riven. Sebuah sertifikat digital berisi informasi

yang mengidentifikasi pemilik sertifikat dan juga berisi kunci publik pemilik. Sertifikat

ditandatangani oleh otoritas sertifikat yang menerbitkannya, dan sertifikat itu dapat

menyederhanakan proses mendapatkan kunci publik dan memverifikasi pemiliknya.

Keamanan RSA

Keamanan RSA bergantung pada kesulitan komputasi untuk memfaktorkan bilangan

bulat besar. Ketika daya komputasi meningkat dan algoritma pemfaktoran yang lebih

efisien ditemukan, kemampuan untuk memperhitungkan jumlah yang lebih besar dan lebih

besar juga meningkat.

Kekuatan enkripsi secara langsung terkait dengan ukuran kunci, dan menggandakan

panjang kunci dapat memberikan peningkatan kekuatan secara eksponensial, meskipun hal

itu mengganggu kinerja. Kunci RSA biasanya 1024- atau 2048-bit, tetapi para ahli percaya

bahwa kunci 1024-bit tidak lagi sepenuhnya aman terhadap semua serangan. Inilah

sebabnya mengapa pemerintah dan beberapa industri bergerak ke panjang kunci minimum

2048-bit.

Kecuali sebuah terobosan tak terduga dalam komputasi kuantum , akan diperlukan

bertahun-tahun sebelum kunci yang lebih lama diperlukan, tetapi kriptografi kurva eliptik

(ECC) mendapatkan dukungan dari banyak pakar keamanan sebagai alternatif RSA untuk

menerapkan kriptografi kunci publik. Itu dapat membuat kunci kriptografi lebih cepat, lebih

kecil dan lebih efisien.

Page 10: Algoritma Sistem Kriptografiilmusisteminfo.com/upload/file_pdf/Algoritma Kriptografi 1567701750.pdf · Algoritma Sistem Kriptografi Ainun Zainiyah #1, Annisa Anjani #2, Arya Surya

Perangkat keras dan lunak modern siap ECC, dan popularitasnya cenderung meningkat,

karena dapat memberikan keamanan yang setara dengan daya komputasi yang lebih rendah

dan penggunaan sumber daya baterai, menjadikannya lebih cocok untuk aplikasi seluler

daripada RSA. Akhirnya, tim peneliti, termasuk Adi Shamir, salah satu penemu RSA, telah

berhasil menciptakan kunci RSA 4096-bit menggunakan kriptanalisis akustik; Namun,

setiap algoritma enkripsi rentan terhadap serangan.

d. Knapsack Merkle-Hellman (MH)

Merkle-Hellman Knapsack merupakan sistem kriptografi yang dibuat oleh Ralph Merkle

dan Martin Hellman pada tahun 1978. Algoritma Merkle-Hellman memanfaatkan kunci

publik dan kunci privat untuk memodifikasi superincreasing knapsack menjadi knapsack

non-superincreasing. Kunci publik yang berbentuk barisan non-superincreasing

dimanfaatkan untuk enkripsi pesan, sedangkan untuk dekripsi pesan, digunakan kunci

privat yang merupakan deret superincreasing.

Metode Knapsack Merkle Hellman telah banyak digunakan untuk memodelkan solusi

masalah di industri seperti pada kriptografi kunci publik. Knapsack Merkle-Hellman

merupakan metode dalam kriptografi yang menggunakan algoritma asimetris dan memiliki

2 kunci utama, yakni kunci publik dan kunci privat. Kunci yang didistribusikan dikenal

dengan istilah kunci publik, jika kunci publik ini diketahui oleh orang lain yang tidak

berhak / berkepentingan, maka data yang dikirim akan tetap aman. Untuk kunci private

adalah kunci yang tetap disimpan oleh pihak-pihak yang berhak.

Ide dasar di balik skema enkripsi MerkleHellman adalah menciptakan masalah subset

yang bisa dipecahkan dengan mudah dan kemudian menyembunyikan sifat superincreasing

dengan perkalian modular dan permutasi. Vektor yang ditransformasikan membentuk

pesan terenkripsi dan vektor superincreasing asli membentuk kunci pribadi dan digunakan

untuk menguraikan pesan

Pada algoritma Merkle-Hellman Knapsack digunakan kunci privat dan kunci publik

dalam melakukan proses kriptografinya, metode ini juga memiliki pengamanan ganda

sehingga susah untuk ditembus.

Page 11: Algoritma Sistem Kriptografiilmusisteminfo.com/upload/file_pdf/Algoritma Kriptografi 1567701750.pdf · Algoritma Sistem Kriptografi Ainun Zainiyah #1, Annisa Anjani #2, Arya Surya

Kelebihan

Kelebihan algoritma asymmetries ini adalah proses pendistribusian kunci pada media

yang tidak aman seperti internet, tidak memerlukan kerahasian. Karena kunci yang

didistribusikan adalah kunci publik. Sehingga jika kunci ini sampai hilang atau diketahui

oleh orang lain yang tidak berhak, maka pesan sandi yang dikirim akan tetap aman.

Sedangkan kunci private tetap disimpan (tidak didistribusikan). MerkleHellman Knapsack

punya Kelebihan lain pada efisiensi jumlah kunci publik. Jika terdapat n user, maka hanya

membutuhkan 1 (satu) kunci publik, sehingga untuk jumlah user yang sangat banyak,

sistem ini sangat efisien. Dengan adanya pertukaran kunci dalam enkripsi - dekripsi data

dengan kriptosistem kurva elliptik adalah mengamanan data yang berupa teks untuk

menghindari adanya penyadapan yang dilakukan oleh pihak-pihak yang tidak

berkepentingan.

➢ Algoritma Merkle-Hellman Knapsack

S = (s1,…,sn) bilangan integer superincreasing

𝑝 > ∑ 𝑠𝑖𝑛𝑖=1 bilangan prima

a, 1 ≤ a ≤ p-1, t = a si mod p

Public Key: t, Private Key: si, p, a,

➢ Encode

es(x1,…,xn) = 𝑝 > ∑ 𝑥𝑖𝑡𝑖𝑛𝑖=1

➢ Decode

z = a-1 y mod p

e. A5

Algoritma stream A5 ini digunakan untuk mendekripsi pembicaraan yang melalui

dilakukan melalui jaringan GSM yang digunakan. Enkripsi ini digunakan untuk menjamin

privasi dari orang yang berbicara di telepon karena pada pembicaraan di telepon, hal yang

dikirimkan merupakan bit sehingga kita dapat menyadap pesan tersebut dan

mengkonversikannnya ke suara untuk mendengarkan pesan yang disampaikan. Algoritma

ini pertama kali dianalisa oleh Goldberg, Warner, dan Green. Mereka berhasil melakukan

kriptanalis algoritma A5 relatif sangat cepat. Cara kriptanalis yang mereka gunakan dengan

mendapat 2 buah plainteks dan dengan menggunakan reverse engineering. Algoritma A5/2

merupakan algoritma enkripsi stream cipher. Stream cipher memiliki arti bahwa enkripsi

Page 12: Algoritma Sistem Kriptografiilmusisteminfo.com/upload/file_pdf/Algoritma Kriptografi 1567701750.pdf · Algoritma Sistem Kriptografi Ainun Zainiyah #1, Annisa Anjani #2, Arya Surya

dilakukan bersamaan dengan dikirimkannya pesan atau informasi tersebut. Pada penerapan

enkripsi jaringan GSM, pesan/informasi yang dikirimkan merupakan suara dari pengguna

pada saat berbicara di telepon. Penerapan rumus umum pada stream cipher sebagai berikut

σi+1= F(σi; xi;K)

yi= f(σi; xi;K)

Dimana :

K = kunci yang digunakan

xi = plainteks

yi = cipherteks

σi = keadaan pada saat i

F = fungsi next-state

f = fungsi output

Teknik serangan yang dapat digunakan untuk mendekripsi algoritma ini menggunakan

metode chippertext-only attack. Serangan dapat kita lakukan terhadap kode perbaikan yang

terdapat pada setiap pesan yang dikirimkan. Operasi kode dan operasi pesan tersebut dapat

dimodelkan dalam bentuk perkalian pesan (direpresentasikan sebagai 184-bit vector biner

dengan lambang P) dengan ukuran matriks 456x184 yang mana diberikan lambing G dan

dilakukan operasi XOR terhadap sebuah vector konstan yang dilambangkan dengan g.

Hasil dari vector tersebut adalah : M = (G.P) XOR g. Vector M tersebut kemudian dibagi

menjadi 4 data frame yang berbeda. Pada proses enkripsi yang diperlukan, setiap data frame

dilakukan operasi XOR terhadap hasil keluaran keystream dari A5/2 tersebut. Kunci

observasi yang perlu diperhatikan pada cipherteks yang dimiliki adalah dengan mencari

persamaan linear pada keystream bit tersebut. Keystream bit tersebut, yang dapat

dilambangkan dengan k, merupakan hasil gabungan dari keempat frame keystream yang

dimiliki dimana k = k1 || k2 || k3 || k4 (dimana || mengartikan bahwa konkatenasi).

Algoritma A5 ini dapat dikembangkan agar serangan-serangan tersebut tidak dapat

dilakukan lagi terhadap algoritma tersebut. Salah satu pengembangan yang dilakukan

adalah dengan mengacak penggunaan keystream tersebut. Pengacakan keystream tersebut

dapat dilakukan dengan menggunakan sebuah fungsi permutasi seperti yang dilakukan

Page 13: Algoritma Sistem Kriptografiilmusisteminfo.com/upload/file_pdf/Algoritma Kriptografi 1567701750.pdf · Algoritma Sistem Kriptografi Ainun Zainiyah #1, Annisa Anjani #2, Arya Surya

pada DES. Pengacakan tersebut dilakukan dengan sebuah fungsi permutasi yang telah

dikembangkan dan akan berubah setiap kali clocking tersebut dilakukan. Dengan

menggunakan fungsi ini, maka serangan untuk mencari persamaan dari cipherteks ataupun

plainteks tidak dapat dilakukan.

f. RC4

Algoritma RC4 didesain oleh Ron Rivest yang berasal dari RSA Security pada tahun

1987. RC sendiri mempunyai singkatan resmi yaitu “Rivest Chiper”, namun juga dikenal

sebagai “Ron’s Code” RC4 sebenarnya dirahasiakan dan tidak dipublikasikan kepada

khalayak ramai, namun ternyata ada orang yang tidak dikenal menyebarkan RC4 ke mailing

list Cypherpunks. Kemudian berita ini dengan cepat diposkan ke sci.crypt newsgroup,

dan dari newsgroup ini kemudian menyebar luas di internet. Kode yang dibocorkan tersebut

dipastikan keasliannya karena output yang dikeluarkansama dengan software-software

yang menggunakan RC4 yang berlisensi. Nama RC4 sudah dipatenkan, sehingga RC4

sering disebut juga ARCFOUR atau ARC4 (Alleged RC4) untuk menghindari masalah

pematenan. RSA Security tidak pernah secara resmi merilis algoritma tersebut. namun

Rivest secara pribadilah yang merilisnya tersebut dengan menhubunkan Wikipedia Inggris

ke catatan-catatan yang ia punya. RC4 telah menjadi bagian dari protokol enkripsi yang

standard dan sering digunakan, termasuk WEP dan WPA untuk wireless card, serta TLS.

Faktor utama yang menjadi kesuksesan dari RC4 adalah kecepatannya dan

kesederhanaannya dalam menangani banyak applikasi, sehingga mudah untuk

mengembangkan implementasi yang effisien ke software dan hardware.

RC4 menghasilkan pseudorandom stream bit. Seperti halnya stream cipher lainnya,

algoritma RC4 ini dapat digunakan untuk mengenkripsi dengan mengombinasikannya

dengan plainteks dengan menggunakan bit-wise Xor (Exclusive-or). Proses dekripsinya

dilakukan dengan cara yang sama (karena Xor merupakan fungsi simetrik). Untuk

menghasilkan keystream, cipher menggunakan state internal yang meliputi dua bagian

:1.Sebuah permutasi dari 256 kemungkinan byte.2.2 Indeks-pointer 8-bit.Permutasi di

inisialisasi dengan sebuah variabel panjang kunci, biasanya antara 40 sampai 256 bit

dengan menggunakan algoritma key-scheduling(KSA). Setelah proses ini selesai, stream

Page 14: Algoritma Sistem Kriptografiilmusisteminfo.com/upload/file_pdf/Algoritma Kriptografi 1567701750.pdf · Algoritma Sistem Kriptografi Ainun Zainiyah #1, Annisa Anjani #2, Arya Surya

yang terdiri dari sekumpulan bit tersebut terbentuk dengan menggunakan Pseudo-Random

Generation Algorithm(PRGA).

Banyak stream cipher dibuat berdasarkan Linear Feedback Shift Registers (LFSRs) yang

efisien di perangkat keras namun kurang efisien dalam perangkat lunak. Desain dari RC4

menghindari penggunaan LFSRs, dan algoritma ini ideal untuk implementasi perangkat

lunak karena hanya menggunakan manipulasi byte. Algoritma ini menggunakan 256 byte

memori untuk kunci, yaitu key[0] sampai key[k-1], dan variabel integer i, j, dan y. Reduksi

modular dari beberapa nilai modulo 256 dapat dilakukan dengan sebuah bitwise AND

dengan 255.

Tidak seperti stream cipher modern, RC4 tidak mengambil nonce yang terpisah

bersamaan dengan kunci. Hal ini berarti jika kunci single long-term digunakan untuk

mengenkripsi beberapa stream, kriptosistemnya harus menentukan bagaimana cara

mengombinasikan nonce tersebut dan kunci long-term untuk menghasilkan kunci stream

untuk RC4. Sebuah pendekatan untuk menangani hal tersebut adalah dengan membuat

sebuah kunci RC4 dengan menggunakan fungsi hash. Enkripsi dengan menggunakan RC4

dapat diterobos dan rentan terhadap bit-flipping attack. Untuk menanggulangi hal ini,

skema enkripsi harus dikombinasikan dengan message authentication code yang kuat.

g. PGP (Pretty Good Privacy)

Pretty Good Privacy (PGP) adalah suatu pogram komputer yang dikembangkan oleh Phil

Zimmermann pada pertengahan tahun 1980 yang memungkinkan seseorang untuk saling

bertukar pesan melalui email dan juga file dengan memberikan perlindungan kerahasiaan

berupa enkripsi dan otentikasi berupa digital signature (tanda tangan digital). PGP

menggunakan kriptografi kunci simetri dan juga kriptografi kunci publik. Oleh karena itu,

PGP mempunyai dua tingkatan kunci, yaitu kunci rahasia (simetri), yang disebut juga

session key, untuk melakukan enkripsi data dan pasangan kunci privat dan kunci publik

untuk memberikan digital signature dan sekaligus melindungi kunci simetri. Fungsi-fungsi

utama pada PGP antara lain untuk melakukan enkripsi dan membuat digital signature pada

file, melakukan dekripsi dan verifikasi pada file yang memiliki digital signature, dan

mengelola koleksi kunci PGP yang dimiliki.

Page 15: Algoritma Sistem Kriptografiilmusisteminfo.com/upload/file_pdf/Algoritma Kriptografi 1567701750.pdf · Algoritma Sistem Kriptografi Ainun Zainiyah #1, Annisa Anjani #2, Arya Surya

Penggunaan PGP ditujukan untuk melindungi tiga hal sebagai berikut, pertama, privasi,

kerahasiaan pada penyimpanan dan transmisi data akan dijamin sehingga hanya orang-

orang yang berhaklah yang dapat mengaksesnya, kedua, integritas, jaminan terhadap data

agar tidak dimodifikasi tanpa sepengetahuan pemiliknya, dan ketiga, otentikasi, jaminan

kepemilikan terhadap data.

PGP pertama kali muncul sebagai aplikasi sederhana untuk melindungi komunikasi

antarkomputer dengan menggunakan algoritma RSA dari serangan penyadap. Seiring

dengan perkembangan internet, gangguan yang terjadi tidak hanya pada jalur komunikasi

saja tetapi juga pada dokumen-dokumen yang terdapat pada komputer pribadi. Oleh karena

itu, PGP menambahkan fitur-fitur baru pada aplikasinya, antara lain fitur untuk menghapus

dokumen secara aman, enkripsi pada hard disk, dan enkripsi pada jaringan. Selain itu,

dikembangkan juga antarmuka yang user-friendly untuk memudahkan penggunaan PGP.

Perubahan juga terjadi pada target pasar pengguna PGP yang semula individu menjadi

peusahaan karena hanya perusahaan yang bersedia untuk membayar program pengamanan

seperti PGP.

Secara garis besar PGP memiliki tiga fitur utama, yaitu:

➢ Fitur untuk melakukan enkripsi dan menandatangani dokumen.

➢ Fitur untuk melakukan dekripsi dan verifikasi tanda tangan.

➢ Fitur untuk mengelola kunci PGP yang dimiliki oleh pengguna.

Setiap orang yang menggunakan PGP harus menerima kunci publik terlebih dahulu.

Kunci publik tersebut didapatkan dengan cara mengirim email kepada rekan yang akan

diajak berkomunikasi dengan memanfaatkan program PGP atau dengan terhubung secara

langsung ke server yang memegang kunci publik. Setelah kunci publik didapat maka

langkah berikutnya adalah melakukan verifikasi terhadap kunci tersebut. Proses verifikasi

tersebut dapat dilakukan secara tidak langsung, hal ini merupakan fitur utama dari PGP.

Cara Kerja PGP

PGP mengkombinasikan fitur-fitur terbaik yang terdapat pada kriptografi konvensional

dengan kriptografi kunci publik. PGP merupakan sistem kriptografi hybrid.

Enkripsi email pada PGP menggunakan algoritma enkripsi kunci asimetri dengan

pasangan kunci publik-kunci privat. Pengirim email menggunakan kunci publik penerima

untuk melakukan enkipsi kunci rahasia yang digunakan pada algoritma cipher simetri. Pada

Page 16: Algoritma Sistem Kriptografiilmusisteminfo.com/upload/file_pdf/Algoritma Kriptografi 1567701750.pdf · Algoritma Sistem Kriptografi Ainun Zainiyah #1, Annisa Anjani #2, Arya Surya

akhirnya kunci akan digunakan untuk melakukan enkripsi plainteks. Hampir semua knci

publik pengguna PGP tersimpan pada server kunci PGP yang tersebar di seluruh dunia.

Penerima email yang terenkripsi tersebut menggunakan kunci sesi (session key) untuk melakukan

dekripsi terhadap email tersebut. Kunci sesi ini terdapat pada email yang terenkripsi tersebut dan

diperoleh dengan cara mendekripsinya dengan menggunakan kunci privat.

h. Digital Signature

Digital Signature adalah proses yang menjamin bahwa isi pesan belum diubah dalam

perjalanan. Saat Anda, server, menandatangani dokumen secara digital, Anda

menambahkan hash (enkripsi) satu arah dari konten pesan menggunakan pasangan public

keys dan private keys anda.

Klien Anda masih bisa membacanya, tetapi proses menciptakan "signature" yang hanya

dapat didekripsi oleh public key server. Klien, menggunakan server public key, kemudian

dapat memvalidasi pengirim serta integritas konten pesan.

Digital Signature seperti "fingerprint" elektronik. Dalam bentuk pesan berkode, tanda

tangan digital secara aman mengaitkan penanda tangan dengan dokumen dalam transaksi

yang direkam. Digital Signature menggunakan format standar yang diterima, yang disebut

Public Key Infrastructure (PKI) , untuk memberikan tingkat keamanan tertinggi dan

penerimaan universal. Mereka adalah implementasi teknologi tanda tangan spesifik

elektronik (eSignature).

Cara Kerja

Tanda tangan digital dapat dianggap sebagai nilai numerik yang direpresentasikan

sebagai urutan karakter. Penciptaan tanda tangan digital adalah proses matematika yang

kompleks yang hanya dapat dibuat oleh komputer.

Ketika penandatangan menandatangani dokumen secara elektronik, Signature dibuat

menggunakan private key milik penandatangan, yang selalu disimpan dengan aman oleh

penandatangan. Algoritma matematika bertindak seperti cipher, membuat data yang cocok

dengan dokumen yang ditandatangani, disebut hash, dan mengenkripsi data itu. Data

terenkripsi yang dihasilkan adalah Digital Signature. Tanda tangan juga ditandai dengan

waktu dokumen ditandatangani. Jika dokumen berubah setelah penandatanganan, tanda

tangan digital tidak valid.

Page 17: Algoritma Sistem Kriptografiilmusisteminfo.com/upload/file_pdf/Algoritma Kriptografi 1567701750.pdf · Algoritma Sistem Kriptografi Ainun Zainiyah #1, Annisa Anjani #2, Arya Surya

Pertimbangkan skenario di mana Arya harus menandatangani file atau email secara

digital dan mengirimkannya ke Riven.

• Arya memilih file yang akan ditandatangani secara digital atau mengklik 'masuk' di

aplikasi emailnya

• Nilai hash dari konten file atau pesan dihitung oleh komputer Arya

• Nilai hash ini dienkripsi dengan Kunci Penandatanganan Arya (yang merupakan

Private Keys) untuk membuat Digital Signature.

• Sekarang, file asli atau pesan email beserta Digital Signature dikirim ke Riven.

• Setelah Riven menerima pesan yang ditandatangani, aplikasi terkait (seperti aplikasi

email) mengidentifikasi bahwa pesan telah ditandatangani. Komputer Riven kemudian

melanjutkan ke:

• Dekripsi Digital Signature menggunakan Publik Keys milik Arya

• Hitung hash dari pesan asli

• Bandingkan hash (a) yang telah dihitung dari pesan yang diterima dengan (b) hash

yang didekripsi yang diterima dengan pesan Arya.

• Perbedaan dalam nilai hash akan mengungkapkan pengrusakan pesan.

Cara membuat Digital Signature.

Anda memerlukan sertifikat digital untuk menandatangani dokumen secara digital.

Namun, jika Anda membuat dan menggunakan sertifikat yang ditandatangani sendiri,

penerima dokumen Anda tidak akan dapat memverifikasi keaslian tanda tangan digital

Anda. Mereka harus mempercayai sertifikat yang Anda tandatangani secara manual.

Jika Anda ingin penerima dokumen Anda dapat memverifikasi keaslian tanda tangan

digital Anda, maka Anda harus mendapatkan sertifikat digital dari CA terkemuka. Setelah

mengunduh dan menginstal sertifikat - Anda akan dapat menggunakan tombol 'Tanda' dan

'Enkripsi' pada klien email Anda untuk mengenkripsi dan menandatangani email secara

digital. Ini lebih masuk akal dalam skenario bisnis, karena meyakinkan penerima bahwa itu

benar-benar dikirim oleh Anda dan bukan oleh peniru.

Bergantung pada Otoritas Sertifikat yang Anda gunakan, Anda mungkin diminta untuk

memberikan informasi spesifik. Mungkin juga ada batasan dan batasan kepada siapa Anda

mengirim dokumen untuk penandatanganan dan urutan pengirimannya. Antarmuka

DocuSign memandu Anda melalui proses dan memastikan bahwa Anda memenuhi semua

Page 18: Algoritma Sistem Kriptografiilmusisteminfo.com/upload/file_pdf/Algoritma Kriptografi 1567701750.pdf · Algoritma Sistem Kriptografi Ainun Zainiyah #1, Annisa Anjani #2, Arya Surya

persyaratan ini. Ketika Anda menerima dokumen untuk ditandatangani melalui email,

Anda harus mengotentikasi sesuai persyaratan Otoritas Sertifikat dan kemudian

"menandatangani" dokumen dengan mengisi formulir online.

Jenis-jenis Digital Signature

Platform pemrosesan dokumen yang berbeda mendukung dan memungkinkan pembuatan

berbagai jenis tanda tangan digital.

• Adobe mendukung - tanda tangan digital bersertifikat dan persetujuan

• Microsoft Word mendukung - tanda tangan digital yang terlihat dan tidak terlihat

Beberapa jenis Digital Signature yaitu :

o Certified Signatures

Menambahkan tanda tangan sertifikasi ke dokumen PDF menunjukkan bahwa

Anda adalah penulis dokumen dan ingin mengamankan dokumen dari gangguan.

o Dokumen PDF bersertifikat menampilkan pita biru unik di bagian atas dokumen. Ini

berisi nama penandatangan dokumen dan penerbit sertifikat untuk menunjukkan

kepengarangan dan keaslian dokumen

o Approval Signatures

Approval Signatures pada dokumen dapat digunakan dalam alur kerja bisnis

organisasi Anda. Mereka membantu mengoptimalkan prosedur persetujuan organisasi

Anda. Prosesnya melibatkan pengambilan persetujuan yang dibuat oleh Anda dan

orang lain dan menanamkannya dalam dokumen PDF.

Adobe memungkinkan tanda tangan untuk memasukkan rincian seperti gambar

tanda tangan fisik Anda, tanggal, lokasi, dan meterai resmi.

o Visible Digital Signatures

Ini memungkinkan satu pengguna atau banyak pengguna untuk secara digital

menandatangani satu dokumen. Tanda tangan akan muncul pada dokumen dengan cara

yang sama seperti tanda tangan diterapkan pada dokumen fisik.

o Invisible Digital Signatures

Dokumen dengan tanda tangan digital yang tidak terlihat membawa indikasi

visual pita biru di bilah tugas. Anda dapat menggunakan tanda tangan digital yang

tidak terlihat ketika Anda tidak harus atau tidak ingin menampilkan tanda tangan Anda,

Page 19: Algoritma Sistem Kriptografiilmusisteminfo.com/upload/file_pdf/Algoritma Kriptografi 1567701750.pdf · Algoritma Sistem Kriptografi Ainun Zainiyah #1, Annisa Anjani #2, Arya Surya

tetapi Anda perlu memberikan indikasi keaslian dokumen, integritasnya, dan asal-

usulnya.

i. Digital Certificate

Pengertian Digital Certificate

Digital Certificates adalah file elektronik yang hanya bekerja sebagai paspor online.

Digital Certificates dikeluarkan oleh pihak ketiga yang dikenal sebagai Certification

Authority seperti VeriSign atau Thawte..

Sertifikat digital adalah dokumen digital yang berisi informasi sebagai berikut:

1) nama subjek (perusahaan/individu yang disertifikasi)

2) kunci publik si subjek

3) waktu kadaluarsa sertifikat (expired time)

4) informasi relevan lain seperti nomor seri sertifikat, dll

Fungsi Digital Certificate

Sertifikat digital memiliki dua fungsi dasar,yaitu:

1) Untuk menyatakan bahwa orang-orang, website, dan sumber daya jaringan seperti

server dan router merupakan sumber terpercaya, dengan kata lain sesuai dengan siapa

atau apa yang menjadi tuntutan mereka.

2) Untuk memberikan perlindungan bagi pertukaran data dari pengunjung dan website

dari gangguan atau bahkan pencurian, seperti informasi kartu kredit.

Bentuk Digital Certificate

Sebuah sertifikat digital berisi nama organisasi atau individu, alamat bisnis, tanda tangan

digital, public key, nomor seri, dan tanggal kedaluwarsa. Ketika Anda sedang online dan

browser web Anda mencoba untuk mengamankan sambungan, maka sertifikat digital yang

diterbitkan untuk website yang akan diperiksa oleh browser web untuk memastikan bahwa

semuanya baik-baik saja dan dapat Anda telusuri dengan aman. Ada dua jenis utama

sertifikat digital yang penting untuk membangun situs Web aman dan ini adalah server

certificates dan personal certificates.

Server certificates

Page 20: Algoritma Sistem Kriptografiilmusisteminfo.com/upload/file_pdf/Algoritma Kriptografi 1567701750.pdf · Algoritma Sistem Kriptografi Ainun Zainiyah #1, Annisa Anjani #2, Arya Surya

Sertifikat server hanya memungkinkan pengunjung website untuk aman mentransfer

informasi pribadi mereka seperti kartu kredit dan informasi rekening bank tanpa khawatir

tentang pencurian atau gangguan. Sertifikat server juga bertanggung jawab untuk

memvalidasi identitas pemilik website sehingga pengunjung dapat merasa seolah-olah

mereka berhadapan dengan sumber yang sah saat membuat atau memasukkan password,

rincian rekening bank, atau nomor kartu kredit ke dalam situs web.

Personal Certificates

Personal Certificates sedikit berbeda dari Server Certificates karena memungkinkan Anda

untuk memvalidasi identitas pengunjung situs Web dan bahkan membatasi akses mereka

kepada bagian-bagian tertentu dari website.

Keamanan Standar

Sebagian besar protokol standar yang banyak digunakan untuk komunikasi elektronik

mengandalkan digital certificates:

• SSL (Secure Socket Layer), yang dirancang oleh Netscape Communication

Corporation, diterima secara luas sebagai browser forweb dasar standar dan otentikasi

server, dan aman untuk pertukaran data di Internet.

• S/MIME (Secure Multipurpose Internet Mail Extensions Protocol) dianggap sebagai

standar dasar untuk email yang aman dan EDI (Electronic Data Interchange).

• SET (Secure Transaksi Elektronik protokol) melindungi pembayaran elektronik dari

pengunjung web untuk operator situs.

• Internet Protocol Secure Standard (IPSec) memverifikasi perangkat jaringan seperti

server dan router.

Cara Kerja Digital Certificate

Proses Registrasi

Langkah pembentukan sertifikat digital:

• Diperlukan sebagai identifikasi sebelum seorang pelanggan dapat melakukan

akses/transaksi pada suatu aktifitas kegiatan berbasis WEB (B2B, B2C, G2C) yang

menggunakan pengamanan dan enkripsi dengan metoda Public Key Infrastructure

(PKI).

Page 21: Algoritma Sistem Kriptografiilmusisteminfo.com/upload/file_pdf/Algoritma Kriptografi 1567701750.pdf · Algoritma Sistem Kriptografi Ainun Zainiyah #1, Annisa Anjani #2, Arya Surya

• Setiap orang/pelanggan yang akan berkomunikasi/bertransaksi harus terlebih dahulu

mendaftar (registrasi) untuk memperoleh Identifikasi dalam bentuk Elektronik

Identification Number.

• Setelah Elektronik Identification Number (E-ID) diterbitkan dan diterima oleh

pelanggan, selanjutnya Elektronik Identification Number (E-ID) tersebut oleh provider

yang bersangkutan akan dikirimkan ke Certificate Authority Server untuk di

registrasikan.

• Selanjutnya pelanggan melalui komputer yang dimiliki (personal) akan melakukan

koneksi secara on line menggunakan komunikasi yang khusus/secure (menuju address

WEB site yang telah ditentukan) untuk melalukan verifikasi dengan cara mengirimkan

Elektronik Identification Number (E-ID) yang telah diperoleh sebelumnya, dalam

rangka memperoleh Digital Certificate.

• Selanjutnya Certificate Authority Server akan melakukan verifikasi terhadap

kebenaran dan keabsahan Elektronik Identification Number (E-ID) yang telah

dikirimkan oleh pelanggan.

• Jika Elektronik Identification Number (E-ID) tersebut benar dan absah, maka

selanjutnya Certificate Authority Server akan menerbitkan Digital Certificate, dengan

disertai Public Key dan Private Key.

Proses pengiriman

• Diperlukan sebagai identifikasi sebelum seorang pelanggan dapat melakukan

akses/transaksi pada suatu aktifitas kegiatan berbasis WEB (B2B, B2C, G2C) yang

menggunakan pengamanan dan enkripsi dengan metoda Public Key Infrastructure

(PKI).

• Setelah Elektronik Identification Number (E-ID) diterbitkan dan diterima oleh

pelanggan, selanjutnya Elektronik Identification Number (E-ID) tersebut oleh provider

yang bersangkutan akan dikirimkan ke Certificate Authority Server untuk di

registrasikan.

• Selanjutnya pelanggan melalui komputer yang dimiliki (personal) akan melakukan

koneksi secara on line menggunakan komunikasi yang khusus/secure (menuju address

WEB site yang telah ditentukan) untuk melalukan verifikasi dengan cara mengirimkan

Page 22: Algoritma Sistem Kriptografiilmusisteminfo.com/upload/file_pdf/Algoritma Kriptografi 1567701750.pdf · Algoritma Sistem Kriptografi Ainun Zainiyah #1, Annisa Anjani #2, Arya Surya

Elektronik Identification Number (E-ID) yang telah diperoleh sebelumnya, dalam

rangka memperoleh Digital Certificate.

• Selanjutnya Certificate Authority Server akan melakukan verifikasi terhadap

kebenaran dan keabsahan Elektronik Identification Number (E-ID) yang telah

dikirimkan oleh pelanggan.

• Jika Elektronik Identification Number (E-ID) tersebut benar dan absah, maka

selanjutnya Certificate Authority Server akan menerbitkan Digital Certificate, dengan

disertai Public Key dan Private Key.

• Digital Certificate tersebut akan dikirimkan ke pelanggan dengan menggunakan

komunikasi yang khusus/secure untuk selanjutnya Digital Certificate tersebut diinstall

di komputer pelanggan

j. MD5

Algoritma MD5 adalah algoritma yang menggunakan fungsi hash satu arah yang

diciptakan oleh Ron Rivest. Algoritma merupakan pengembangan dari algoritma-algoritma

sebelumnya yaitu algoritma MD2 dan algoritma MD4 karena kedua algoritma ini berhasil

diserang para cryptanalist.

Cara kerja kriptografi algoritma MD5 adalah menerima input berupa pesan dengan

ukuran sembarang dan menghasilkan message diggest yang memiliki panjang 128 bit.

Berikut ilustrasi gambar dari pembuatan message diggest pada kriptografi algoritma MD5:

dari gambar diatas, secara garis besar pembuatan message digest ditempuh melalui empat

langkah, yaitu :

Page 23: Algoritma Sistem Kriptografiilmusisteminfo.com/upload/file_pdf/Algoritma Kriptografi 1567701750.pdf · Algoritma Sistem Kriptografi Ainun Zainiyah #1, Annisa Anjani #2, Arya Surya

Penambahan bit bit pengganjal

Proses pertama yang dilakukan adalah menambahkan pesan dengan sejumlah bit

pengganjal sedemikian sehingga panjang pesan (dalam satuan bit) kongruen dengan 448

modulo 512. Ini berarti setelah menambahkan bit-bit pengganjal, kini panjang pesan

adalah 64 bit kurang dari kelipatan 512. Hal yang perlu diingat adalah angka 512 muncul

karena algoritma MD5 memproses pesan dalam blok-blok yang berukuran 512.

Apabila terdapat pesan dengan panjang 448 bit, maka pesan tersebut akan tetap

ditambahkan dengan bit-bit pengganjal. Pesan akan ditambahkan dengan 512 bit menjadi

96 bit. Jadi panjang bit-bit pengganjal adalah antara 1 sampai 512. Lalu satu hal lagi yang

perlu diperhatikan adalah bahwasanya bit-bit pengganjal terdiri dari sebuah bit 1 diikuti

dengan sisanya bit 0.

Penambahan nilai panjang pesan semula

Kemudian proses berikutnya adalah pesan ditambah lagi dengan 64 bit yang

menyatakan panjang pesan semula. Apabila panjang pesan lebih besar dari 264 maka yang

diambil adalah panjangnya dalam modulo 264. dengan kata lain, jika pada awalnya

panjang pesan sama dengan K bit, maka 64 bit yang ditambahkan menyatakan K modulo

264. sehingga setelah proses kedua ini selesai dilakukan maka panjang pesan sekarang

adalah 512 bit.

Inisialisasi penyangga MD

Pada algoritma MD5 dibutuhkan empat buah penyangga atau buffer, secara berurut

keempat nama penyangga diberi nama A, B, C dan D. Masing-masing penyangga

memiliki panjang 32 bit. Sehingga panjang total :

Keempat penyangga ini menampung hasil antara dan hasil akhir. Setiap penyangga

diinisialisasi dengan nilai-nilai (dalam notasi Hexadesimal) sebagai berikut :

Page 24: Algoritma Sistem Kriptografiilmusisteminfo.com/upload/file_pdf/Algoritma Kriptografi 1567701750.pdf · Algoritma Sistem Kriptografi Ainun Zainiyah #1, Annisa Anjani #2, Arya Surya

Pengolahan pesan dalam blok berukuran 512 bit

Proses berikutnya adalah pesan dibagi menjadi L buah blok yang masing-masing

panjangnya 512 bit (Y0 sampai YL-1). Setelah itu setiap blok 512 bit diproses bersama

dengan penyangga MD yang menghasilkan keluaran 128 bit, dan ini disebut HMD5.

Berikut ini gambaran dari proses HMD5 :

Dari gambar diatas dapat kita lihat bahwa proses HMD5 terdiri dari 4 buah putaran, dan

masing-masing putaran melakukan opersi dasar MD5 sebanyak 16 kali. Dimana disetiap

operasi dasar memakai sebuah elemen T. Sehingga setiap putaran memakai 16 elemen

tabel T.

Pada gambar 6, Yq menyatakan blok 512 bit ke-q dari pesan yang telah ditambahkan

dengan bit-bit pengganjal pada proses pertama dan tambahan 64 bit nilai panjang pesan

semula pada proses kedua. MDq adalah nilai message digest 128 bit dari proses HMD5 ke-

q. Pada awal proses , MDq berisi nilai inisialisasi penyangga MD. Kemudian fungsi fF, fG,

fH, dan fI pada gambar, masing-masing berisi 16 kali operasi dasar terhadap input, setiap

Page 25: Algoritma Sistem Kriptografiilmusisteminfo.com/upload/file_pdf/Algoritma Kriptografi 1567701750.pdf · Algoritma Sistem Kriptografi Ainun Zainiyah #1, Annisa Anjani #2, Arya Surya

operasi dasar menggunakn elemen tabel T. Berikut ini ilustrasi gambar operasi dasar

MD5 :

Operasi dasar MD5 yang diperlihatkan gambar diatas dapat dituliskan dengan

persamaan berikut ini :

Dimana,

Page 26: Algoritma Sistem Kriptografiilmusisteminfo.com/upload/file_pdf/Algoritma Kriptografi 1567701750.pdf · Algoritma Sistem Kriptografi Ainun Zainiyah #1, Annisa Anjani #2, Arya Surya

Fungsi fF, fG, fH, dan fI adalah fungsi untuk memanipulasi masukan a, b, c, dan d dengan

ukuran 32-bit. Masing-masing fungsi dapat dilihat pada Tabel 1 dibawah ini :

NB : secara berurut peartor logika AND, OR, NOT dan XOR dilambangkan

dengan ∧, ∨, ~, ⊕

Kemudian nilai T[i] dapat dilihat pada tabel dibawah ini. Tabel ini disusun oleh fungsi

232 x abs(sin(i)), i dalam radian.

Tabel 2. Nilai T[i]

Sebagaimana telah dijelaskan sebelumnya bahwa fungsi fF, fG, fH, dan fI melakukan 16

kali operasi dasar. Misalkan notasi berikut ini :

Menyatakan operasi

untuk operasi diatas, <<<s melambangkan opersi circular left shift 32 bit, maka operasi

dasar pada masing-masing putaran dapat ditabulasikan sebagai berikut :

Page 27: Algoritma Sistem Kriptografiilmusisteminfo.com/upload/file_pdf/Algoritma Kriptografi 1567701750.pdf · Algoritma Sistem Kriptografi Ainun Zainiyah #1, Annisa Anjani #2, Arya Surya

• Putaran 1 : 16 kali operasi dasar dengan g(b, c, d) – F(b, c, d), dapat dilihat pada

tabel berikut ini :

• putaran 2 : 16 kali operasi dasar dengan g(b, c, d) – G(b, c, d), dapat dilihat pada

tabel berikut ini :

• putaran 3 : 16 kali operasi dasar dengan g(b, c, d) – H(b, c, d), dapat dilihat pada

tabel berikut ini :

Page 28: Algoritma Sistem Kriptografiilmusisteminfo.com/upload/file_pdf/Algoritma Kriptografi 1567701750.pdf · Algoritma Sistem Kriptografi Ainun Zainiyah #1, Annisa Anjani #2, Arya Surya

• putaran 4 : 16 kali operasi dasar dengan g(b, c, d) – I(b, c, d), dapat dilihat pada

tabel berikut ini :

Setelah putaran keempat, a, b, c dan d di tambahkan ke A, B, C dan D yang

selanjutnya algoritma akan memproses untuk blok data berikutnya (Yq+1). Output akhir

dari algoritma MD5 adalah hasil penyambungan bit-bit di A, B, C dan D.

Dari uraian diatas, secara umum fungsi hash MD5 dapat ditulis dalam persamaan

matematis sebagai berikut :

Dimana,

Page 29: Algoritma Sistem Kriptografiilmusisteminfo.com/upload/file_pdf/Algoritma Kriptografi 1567701750.pdf · Algoritma Sistem Kriptografi Ainun Zainiyah #1, Annisa Anjani #2, Arya Surya

Agar lebih mudah dipahami, berikut ini contoh penerapan kriptografi MD5 pada suatu

pesan yang ingin dirahasiakan. Misalkan terdapat sebuah arsip dengan nama bandung.txt

sebagai berikut :

Message digest yang dihasilkan dari arsip diatas adalah untuk 128 bit :

Lalu untuk notasi hexadesimal :

3.2 Aplikasi Algoritma MD5 Untuk Integritas Data

Aplikasi algoritma dapat digunakan untuk menjaga keintegritasan data. Dengan

aplikasi fungsi hash yang menjadi asas algoritma MD5, perubahan kecil pada data

sekalipun dapat terdeteksi. Langkah yang harus ditempuh adalah bangkitkan message

digest dari isi arsip menggunakan algoritma MD5. kemudian gabung message digest ke

dalam arsip. Verifikasi isi arsip dapat dilakukan secara berkala dengan membandingkan

MD isi arsip sekarang dan MD dari arsip asli (MD yang telah disimpan sebelumnya).

Jika hasilnya berbeda maka telah terjadi perubahan pada arsip.

Page 30: Algoritma Sistem Kriptografiilmusisteminfo.com/upload/file_pdf/Algoritma Kriptografi 1567701750.pdf · Algoritma Sistem Kriptografi Ainun Zainiyah #1, Annisa Anjani #2, Arya Surya

Aplikasi ini didasarkan pada kenyataan bahwa perubahan 1 bit pesan akan

mengubah, secara rata-rata, setengah dari bit-bit message digest. Dengan kata lain,

algoritma MD5 dengan fungsi hashnya sangat peka terhadap perubahan sekecil apapun

pada data masukan. Sebagai contoh perhatikan arsip dibawah ini :

Untuk kasus pertama, apabila 33 derajat celcius diganti dengan 32, maka MD

dari isi arsip adalah (tidak termasuk baris MD) :

Untuk kasus kedua, apabila ditambahkan spasi diantara ”33” dan ”derajat”, maka

MD dari isi arsip adalah (tidak termasuk baris MD) :

Dari kedua kasus diatas sangat terlihat bahwa algoritma MD5 dengan fungsi hashnya

sangatlah peka dengan perubahan walau kecil sekalipun.

Page 31: Algoritma Sistem Kriptografiilmusisteminfo.com/upload/file_pdf/Algoritma Kriptografi 1567701750.pdf · Algoritma Sistem Kriptografi Ainun Zainiyah #1, Annisa Anjani #2, Arya Surya

4. Kesimpulan

Dengan semakin berkembangnya teknologi, komputer sebagai salah satu alat teknologi.

Teknologi memiliki dampak positif yang tidak sedikit, dan juga memiliki banyak dampak

negatif. Sistem kriptografi hadir untuk menangani dampak-dampak negatif teknologi yang

menyerang komputer. Sistem kriptografi bekerja dengan metode enkripsi dan metode

deskripsi. Kriptografi menjadikan sebuah pesan/tulisan menjadi sebuah code, sehingga pihak

tidak berwenang, tidak dapat membaca pesan/tulisan tersebut.

5. Daftar Pustaka

Rouse, Margaret. 2014. RSA Algorithm (Rivest-Shamir-Adleman).

https://searchsecurity.techtarget.com/definition/RSA diakses pada 5 September 2019.

Sectigo Limited. 2019. What is Digital Signature?. https://www.instantssl.com/digital-

signature diakses pada 5 September 2019.

DocuSign. 2019. How Digital Signature Work. https://www.docusign.com/how-it-

works/electronic-signature/digital-signature/digital-signature-faq diakses pada 5

September 2019.

Sutiono, Arie Pratama. 2010. Algoritma RC4 sebagai Perkembangan Metode

Kriptografi.https://www.academia.edu/35395928/Algoritma_RC4_sebagai_Perkembangan

Metode_Kriptografi. Diakses pada Kamis, 05 September 2019 pukul 15:00 WIB.

Comodo. 2019. Digital Certificacte. https://www.comodo.com/resources/small-

business/digital-certificates.php diakses pada 5 September 2019.

Julismail. 2019. Tentang certificate authority.

https://julismail.staff.telkomuniversity.ac.id/tentang-certificate-authority/ diakses pada 5

September 2019.

Page 32: Algoritma Sistem Kriptografiilmusisteminfo.com/upload/file_pdf/Algoritma Kriptografi 1567701750.pdf · Algoritma Sistem Kriptografi Ainun Zainiyah #1, Annisa Anjani #2, Arya Surya

Munir, Rinaldi., Fungsi Hash Satu Arah dan Algoritma MD5, Institut Teknologi Bandung,

2004.

ITJurnal. 2019. Pengertian MD5. https://www.it-jurnal.com/pengertian-message-digest-5-

md5/ diakses pada 5 September 2019.

Wikipedia. 2019. MD5. https://id.wikipedia.org/wiki/MD5 diakses pada 5 September 2019.

Al-Bahr, Brian. International Data Encryption Algorithm : Jurusan Teknik Informatika,

Sekolah Teknik Elektro dan Informatika, Institut Teknologi Bandung

A.Meneezes, P. van Oorschot, and S.Vanstone, (1996) Handbook of Applied Crytpography.

CRC Press,.