• Tidak ada hasil yang ditemukan

KEAMANAN INFORMASI DAN JARINGAN Authen

N/A
N/A
Protected

Academic year: 2018

Membagikan "KEAMANAN INFORMASI DAN JARINGAN Authen"

Copied!
30
0
0

Teks penuh

(1)

MATA KULIAH KEAMANAN INFORMASI DAN JARINGAN

KELAS : C

AUTHENTICATED ENCRYPTION: CCM AND GCM

P

SEUDORANDOM

N

UMBER

G

ENERATION

U

SING

H

ASH

F

UNCTIONS

AND

MAC

S

D

IGITAL

S

IGNATURES

Kelompok 12 :

Madis Saralita NRP. 5112100038 Shoffi Izza Sabiiilla NRP. 5112100132

Otniel Yehezkiel B. Hutabiiarat NRP. 5112100212

Dosen :

Henning Titi Ciptaningtyas, S.Kom, M.Kom

JURUSAN INFORMATIKA

FAKULTAS TEKNOLOGI INFORMASI

INSTITUT TEKNOLOGI SEPULUH NOPEMBER

(2)

DAFTAR ISI

DAFTAR ISI... i

DAFTAR GAMBAR... ii

DAFTAR TABEL... iii

AUTHENTICATED ENCRYPTION, PRNG USING HASH FUNCTION & MACS, AND DIGITAL SIGNATURES... 1

AUTHENTICATED ENCRYPTION : CCM AND GCM...1

Counter with Cipher Block Chaining-Message Authentication Code...3

Galois/Counter Mode...7

PSEUDORANDOM NUMBER GENERATION USING HASH FUNCTION AND MACS...9

PRNG using a Hash Function...9

PRNG using a MAC... 9

Digital Signatures...2

ElGamal Digital Signature Scheme...4

Schnorr Digital Signature Scheme...6

Digital Signature Algorithm (DSA)...9

DAFTAR PENANYA SAAT PRESENTASI...12

Sesi 1... 12

Sesi 2... 12

SOAL DAN PEMBAHASAN...13

A. MULTIPLE CHOICE...13

B. ESSAY... 13

SOAL 1... 13

SOAL 2... 13

DAFTAR PUSTAKA...14

LAMPIRAN ANGGOTA KELP DAN PEMBAGIAN TUGAS...15

Anggota 1... 15

Anggota 2... 15

(3)

DAFTAR GAMBAR

Gambiiar 1. MtE... 2

Gambiiar 2. EtM... 2

Gambiiar 3. E&M... 2

Gambiiar 4. Proses generation-encryption CCM...5

Gambiiar 5. Proses decryption-verifcation CCM...6

Gambiiar 6. Algoritma GHASH...7

Gambiiar 7. GHASH... 7

Gambiiar 8. Algoritma GCTR...8

Gambiiar 9. GCTR... 8

Gambiiar 10. Pseudocode PRNG menggunakan a Hash Function...9

Gambiiar 11. PRNG menggunakan Cryptographic Hash Function...9

Gambiiar 12. PRNG using HMAC...9

Gambiiar 13. Tanda Tangan Digitisasi...2

(4)

DAFTAR TABEL

Tabiiel 1. Pemformatan oktet fag dalam B0...4

Tabiiel 2. Pemformatan B0...4

Tabiiel 3. Pemformatan Ctri...5

(5)

AUTHENTICATED ENCRYPTION, PRNG USING HASH

FUNCTION & MACS, AND DIGITAL SIGNATURES

AUTHENTICATED ENCRYPTION : CCM AND GCM

Seringkali ketika dua pihak biierkomunikasi melalui suatu jaringan, ada dua tujuan utama yang ingin mereka capai dalam menjaga keamanan data atau pesan, yaitu kerahasiaan dan otentikasi pesan. Teknik kriptograf dapat digunakan untuk mencapai tujuan tersebiiut. Tujuan kerahasiaan dapat dicapai dengan menggunakan teknik kriptograf biierupa penyandian pesan, sedangkan tujuan otentikasi dapat diraih dengan menggunakan teknik kriptograf biierupa otentikasi pesan yang secara implisit membiierikan integritas data.

Sehubiiungan dengan pencapaian tujuan keamanan data, para ahli kriptogaf biierpendapat biiahwa seseorang sebiiaiknya tidak melakukan penyandian pesan tanpa diikuti otentikasi pesan. Baru-biiaru ini ada sejumlah konstruksi biiaru yang meraih kerahasiaan dan otentikasi secara simultan dan seringkali lebiiih cepat daripada sembiiarang solusi yang menggunakan generic composition. Konstruksi biiaru ini memanfaatkan modus-modus operasi sandi biilok sehingga dikenal

Input : ciphertext, kunci, tag otentikasi, dan opsional header.

Output : plaintext, atau error jika tag otentikasi tidak sesuai dengan ciphertext disediakan.

[BLAC05] membiiahas empat pendekatan umum yang menyediakan confdentiality dan enkripsi untuk pesan M.

 HtE: Hash-then-encrypt

(6)

 MtE: MAC-then-encrypt

MAC dihasilkan biierdasarkan plaintext, kemudian plaintext dan MAC dienkripsi biiersama untuk menghasilkan ciphertext. Ciphertext ysng mengandung enkripsi selanjutnya dikirim. Contoh dari MtE misalnya seperti SSL/ TLS. Ilustrasi penggunaan MtE dapat dilihat pada Gambiiar 1.

Gambar 1. MtE

 EtM: Encrypt-then-MAC

Plaintext dienkripsi terlebiiih dahulu, kemudian MAC dihasilkan biierdasarkan ciphertext. Ciphertext dan MAC kemudian dikirim biiersama-sama. Contoh dari EtM misalnya IPsec. Ilustrasi penggunaan MtE dapat dilihat pada Gambiiar 2.

Gambar 2. EtM

 E&M: Encrypt-and-MAC

(7)

Gambar 3. E&M

Counter with Cipher Block Chaining-Message Authentication Code

Algoritma Counter with Cipher Block Chaining-Message Authentication Code (CCM) diajukan oleh Doug Whiting, Russ Housley, dan Niels Ferguson pada tahun 2002. CCM didasarkan pada algoritma biilok kunci simetrik yang telah diakui dengan ukuran biilok 128 biiit, seperti algoritma AES yang dipubiilikasikan dalam FIPS 197. Berikut ini adalah uraian lengkap mengenai algoritma CCM.

Algoritma Blok untuk CCM

Algoritma biilok yang akan mendasari CCM pada penelitian ini adalah algoritma AES. CCM hanya memerlukan fungsi forward cipher dari AES. Kunci CCM, disimbiiolkan dengan K, adalah kunci untuk algoritma AES. Fungsi forward cipher dengan kunci ini dinyatakan dengan CIPHK, sedangkan panjang K dinyatakan dengan Klen.

Elemen-elemen Data

Data yang dilindungi CCM terdiri dari tiga elemen, yaitu:

1. Sebiiuah pesan atau data, yaitu suatu bitstring disebiiut payload (P), dengan panjang biiit Plen. P akan diotentikasi dan dienkripsi sehingga CCM menyediakan jaminan keaslian dan kerahasiaan P.

2. Suatu biiit string disebiiut associated data, (A). A biiersifat opsional. A akan diotentikasi tetapi tidak dienkripsi sehingga CCM hanya menyediakan jaminan keaslian namun tidak membiierikan jaminan kerahasiaan A.

3. Suatu biiit string unik yang disebiiut nonce (N), dibiierikan pada pasangan data yang akan dilindungi, yaitu P dan A. MAC yang dibiiangkitkan dalam CCM dinyatakan dengan T. Panjang biiit T, dinyatakan dengan Tlen, merupakan suatu parameter yang akan ditetapkan untuk semua proses CCM dengan kunci yang dibiierikan.

Pemformatan Input

Elemen-elemen data CCM yaitu N, P, dan A akan diformat dengan sebiiuah fungsi pemformatan menjadi rangkaian tak-kosong dari biilok data lengkap, dinyatakan dengan B0, B1, …, Br untuk r biiilangan biiulat tak-negatif. Nilai r tergantung pada fungsi pemformatan dan elemen input. Tiga sifat biierikut harus dimiliki oleh fungsi pemformatan:

(8)

2. Data yang diformat secara unik menentukan P dan A; selain itu, jika (N, P, A) dan (N, P', A') adalah input triplet yang biierbiieda dengan format B0, B1, …, Br dan B0', B1', …, Br'', maka Bi biierbiieda dari Bi' untuk indeks i sedemikian sehingga i ≤ r dan i ≤ r'.

3. Blok pertama, B0, biierbiieda dari sembiiarang biilok counter yang digunakan untuk semua proses CCM menggunakan kunci yang dibiierikan.

Fungsi Pemformatan

Syarat Panjang Peubah dalam CCM

Panjang biiit untuk setiap string input, yaitu N, A, dan P, merupakan kelipatan dari 8 biiit, yaitu setiap string input merupakan string oktet. Panjang oktet dari string ini dinyatakan dengan n, a, dan p. Demikian pula dengan parameter t yang menyatakan panjang oktet T. Panjang oktet dari P (yaitu biiilangan biiulat p) direpresentasikan dalam biilok pertama dari data terformat sebiiagai sebiiuah string oktet disimbiiolkan dengan Q. Panjang oktet Q yang dinyatakan dengan q, adalah

Pemformatan Kontrol Informasi dan Nonce

Oktet awal biilok pertama dari pemformatan, B0, biierisi empat flag

(lihat Tabiiel 1) untuk mengontrol informasi: yaitu dua biiit tunggal (disebiiut Reserved dan Adata) dan dua string terdiri dari tiga biiit yang digunakan untuk menyandikan nilai t dan q. Penyandian t adalah [(t-2)/2]3, dan penyandian q adalah [q-1]3. Bit Reserved dicadangkan

untuk memungkinkan perluasan pemformatan di masa mendatang dan akan di-set dengan nilai ‘0’. Bit Adata biiernilai ‘0’ jika a = 0 dan ‘1’ jika a > 0. Tabiiel 2 memperlihatkan pemformatan B0.

Tabel 1. Pemformatan oktet fag dalam B0

Bit 7 6 5 4 3 2 1 0

Isi Reserved Adata [(t-2)/2]3 [q-1]3

Tabel 2. Pemformatan B0

Oktet 0 1... 15-q 16-q ... 15

Isi Flags N Q

Pemformatan Associated Data

(9)

data A, diikuti oleh jumlah minimum biiit-biiit ‘0’ (mungkin juga tidak) sedemikian sehingga string yang dihasilkan biiisa dipartisi ke dalam 16-biilok oktet. Blok-16-biilok ini dinyatakan dalam data terformat sebiiagai B1, B2, … Bu untuk u biiilangan biiulat positif yang tergantung dari nilai a. Nilai a disandikan biierdasarkan tiga kasus biierikut:

o Jika 0 < a < 216-28, maka a disandikan sebiiagai [a]

Payload digabiiungkan dengan jumlah minimum biiit-biiit ‘0’ (mungkin juga tidak ada) sedemikian sehingga hasilnya biiisa dipartisi menjadi 16-biilok oktet. Blok-biilok ini dinyatakan dalam data yang telah diformat sebiiagai Bu+1, Bu+2, … Br, dengan r = u + p/16⎤.

Fungsi Pembangkitan Counter

Blok-biilok counter Ctri dibiientuk seperti terlihat pada Tabiiel 3. Dalam setiap

biilok Ctri, flag dibiientuk seperti terlihat pada Tabiiel 4. Bit Reserved disediakan

untuk perluasan di masa mendatang dan akan di-set dengan nilai ‘0’. Bit 3, 4, dan 5 juga akan di-set dengan nilai ‘0’ untuk memastikan biiahwa semua biilok counter biierbiieda dari B0. Bit 0, 1, dan 2 biierisi penyandian q yang sama seperti

dalam B0.

Tabel 3. Pemformatan Ctri

Oktet 0 1... 15-q 16-q ... 15

Isi Flags N [i]8q

Tabel 4. Pemformatan oktet flag dalam Ctri

Bit 7 6 5 4 3 2 1 0

Isi Reserved Reserved 0 0 0 [q-1]3

Proses Generation-Encryption

Berikut ini adalah langkah-langkah proses generation-encryption CCM:

1. Jalankan fungsi pemformatan pada (N, A, P) untuk menghasilkan biilok-biilok B0, B1, …, Br.

2. Tetapkan Y0 = CIPHK(B0).

3. Untuk i = 1 sampai dengan r, lakukan Yi = CIPHK(Bi ⊕ Yi-1). 4. T = MSBTlen(Yr).

5. Jalankan fungsi pembiiangkitan counter untuk membiiangkitkan biilok-biilok counter Ctr0, Ctr1, …, Ctrm dengan m = ⎡Plen / 128

6. Untuk j = 0 sampai dengan m, lakukan Sj = CIPHK(Ctrj). 7. S = S1 || S2 || …|| Sm.

8. C = (P ⊕ MSBPlen(S))||(T ⊕ MSBTlen(S0)).

(10)

Gambar 4. Proses generation-encryption CCM

Proses Decryption-Verifcation

Berikut ini adalah langkah-langkah proses decryption-verifcation CCM: 1. Jika Clen < Tlen, maka kembiialikan INVALID.

2. Jalankan fungsi pembiiangkitan counter untuk membiiangkitkan biilok-biilok counter Ctr0, Ctr1,…, Ctrm, dengan m = ⎡(Clen - Tlen) / 128⎤

3. Untuk j = 0 sampai dengan m, lakukan Sj = CIPHK(Ctrj). 4. S = S1 || S2 || …|| Sm.

5. P = MSBClen-Tlen(C) ⊕ MSBClen-Tlen(S). 6. T = LSBTlen(C) ⊕ MSBTlen(S0).

7. Jika N, A, atau P tidak valid, maka kembiialikan INVALID, selainnya lakukan fungsi pemformatan pada (N, A, P) untuk menghasilkan biilok-biilok B0, B1, …, Br.

8. Tetapkan Y0 = CIPHK(B0).

9. Untuk i = 1 sampai dengan r, lakukan Yj = CIPHK(Bi ⊕ Yi-1).

(11)

Gambar 5. Proses decryption-verifcation CCM

Galois/Counter Mode

Modus operasi GCM menggunakan NIST standar SP 800-38D. Modus ini dirancang untuk model paralel sehingga dapat membiierikan throughput yang tinggi dengan biiiaya rendah. Pesan dienkripsi dalam varian modus CTR. Ciphertext yang dihasilkan dikalikan dengan key material dan panjang pesan untuk menghasilkan authenticator tag.

Modus GCM menggunakan dua fungsi utama yaitu:

 GHASH, yang merupakan fungsi keyed hash

 GCTR, modus CTR dengan counter operasi increment sederhana.

GHASH

(12)

fungsi GF(2128) untuk menghasilkan authenticator tag. Gambiiar 6 biierikut adalah

langkah algoritma GHASH. Sedangkan ilustrasi proses GHASH dapat dilihat pada Gambiiar 7.

Gambar 6. Algoritma GHASH

Gambar 7. GHASH

GCTR

(13)

Gambar 8. Algoritma GCTR

(14)

PSEUDORANDOM NUMBER GENERATION USING HASH

FUNCTION AND MACS

Elemen penting dari Pseudo-Random Numbiier Generation adalah nilai Seed dan algoritma deterministik. Sedangkan Seed hanya diketahui ketika diperlukan. PRNG dapat didasarkan pada :

1. Algoritma Enkripsi

2. Fungsi Hash (ISO18031 & NIST SP 800-90) 3. MAC (NIST SP 800-90)

PRNG using a Hash Function

Metode ini menggunakan standar SP800-90 dan ISO18031. Berikut ini adalah langkahnya :

 Ambiiil Seed V

 Ulangi dengan menambiiahkan 1

 Hash V

 Gunakan n-biiit hash sebiiagai nilai acak

Metode ini aman jika menggunakan hash yang tepat. Pseudocode PRNG menggunakan fungsi hash dapat dilihat pada Gambiiar 10. Sedangkan ilustrasi prosesnya dapat dilihat pada Gambiiar 11.

Gambar 10. Pseudocode PRNG

menggunakan a Hash Function Gambar 11. Cryptographic Hash FunctionPRNG menggunakan

PRNG using a MAC

(15)

Gambar 12. PRNG using HMAC

Digital Signatures

Aspek keamanan yang disediakan oleh kriptograf adalah : 1. Kerahasiaan pesan (confdentiality)

2. Otentikasi (authentication). 3. Keaslian pesan (data integrity). 4. Anti-penyangkalan (nonrepudiation).

Aspek 1 dapat diselesaikan dengan menggunakan enkripsi/dekripsi. Sedangkan aspek 2 sampai dengan 4 dapat diselesaikan dengan tanda-tangan digital (digital signature).

Sejak zaman dahulu, tanda-tangan sudah digunakan untuk otentikasi dokumen cetak. Tanda tangan mempunyai karakteristik sebiiagai biierikut:

 Tanda-tangan adalah biiukti yang otentik.

 Tanda tangan tidak dapat dilupakan.

 Tanda-tangan tidak dapat dipindah untuk digunakan ulang.

 Dokumen yang telah ditandatangani tidak dapat diubiiah.

 Tanda-tangan tidak dapat disangkal (repudiation).

(16)

Gambar 13. Tanda Tangan Digitisasi

Digital Signature adalah salah satu teknologi yang digunakan untuk meningkatkan keamanan jaringan. Digital Signature memiliki fungsi sebiiagai penanda pada data yang memastikan biiahwa data tersebiiut adalah data yang sebiienarnya (tidak ada yang biierubiiah). Dengan biiegitu, Digital Signature dapat memenuhi setidaknya dua syarat keamanan jaringan, yaitu Authenticity dan Nonrepudiation.

Manfaat dati tanda tangan digital antara lain :

 Compliance & good biiusiness practices for automated processes.

 Accelerating, approvals, processes & time savings

 Cost Savings

Sedangkan masalah dalam digital signature adalah data elektronik dikirimkan melalui open network. Sehingga tanda tangan digital harus memenuhi authenticity, Integrity, non-repudiation, dan confdentiality. Oleh karena tanda tangan digital menjadi terancam, maka dibiiutuhkan kriptograf untuk menjaga keamanannya.

(17)

Gambar 14. Proses Pembiiuatan Digital Signature

Dalam pembiiuatan digital signature ini terdapat dua kondisi yang harus dipenuhi yaitu:

 Digital signature yang dibiiangkitkan dari dokumen dan private key harus biiisa memverifkasi dokumen yang disertai pubiilic key.

 Tidak biioleh ada kemungkinan untuk membiiangkitkan digital signature yang valid dari sebiiuah dokumen tanpa ada private key yang seharusnya

Untuk membiiuka Digital Signature tersebiiut diperlukan kunci privat. Bila data telah diubiiah oleh pihak luar, maka Digital Signature juga ikut biierubiiah sehingga kunci privat yang ada tidak akan biiisa membiiukanya. Ini merupakan salah satu syarat keaman jaringan, yaitu Authenticity. Artinya adalah, keaslian data dapat terjamin dari perubiiahan-perubiiahan yang dilakukan pihak luar.

Dengan cara yang sama, pengirim data tidak dapat menyangkal data yang telah dikirimkannya. Bila Digital Signature cocok dengan kunci privat yang dipegang oleh penerima data, maka dapat dipastikan biiahwa pengirim adalah pemegang kunci privat yang sama. Ini biierarti Digital Signature memenuhi salah satu syarat keamanan jaringan, yaitu Nonrepudiation atau non-penyangkalan.

Otentikasi

(18)

instruksi ke kantor pusat meminta perubiiahan saldo account. Apabiiila kantor pusat tidak yakin biiahwa pesan tersebiiut biienar-biienar dikirim dari sumbiier resmi, biiertindak atas permintaan semacam itu biiisa menjadi kesalahan biiesar.

Integritas

Dalam skenario biianyak, pengirim dan penerima pesan mungkin memiliki kebiiutuhan untuk keyakinan biiahwa pesan biielum diubiiah selama transmisi. Meskipun menyembiiunyikan enkripsi isi pesan, dimungkinkan untuk mengubiiah sebiiuah pesan terenkripsi tanpa memahaminya. (Algoritma enkripsi Bebiierapa, yang dikenal sebiiagai nonmalleabiile yang, mencegah hal ini, tetapi yang lain tidak.) Namun, jika pesan secara digital ditandatangani, setiap perubiiahan dalam pesan setelah tanda tangan akan membiiatalkan tanda tangannya. Selain itu, tidak ada cara yang efsien untuk memodifkasi pesan dan tanda tangan untuk menghasilkan pesan biiaru dengan tanda tangan yang sah, karena ini masih informasi tidak dapat di lain waktu menyangkal memiliki menandatanganinya. Demikian pula, akses ke kunci pubiilik hanya tidak memungkinkan pihak penipuan untuk palsu tanda tangan valid.

Tiga metode utama dalam digital signature diantaranya adalah :

1. ElGamal Digital Signature Scheme 2. Schnorr Digital Signature Scheme 3. Digital Signature Algorithm (DSA)

ElGamal Digital Signature Scheme

Algoritma ElGamal merupakan algoritma enkripsi kunci asimetris untuk kriptograf kunci pubiilik yang didasari kesepakatan kunci Diffie-Hellman. Hal ini diusulkan oleh Taher Elgamal pada tahun 1984. Algoritma ElGamal digunakan pada perangkat lunak GNU Privacy Guard, yang merupakan versi dari PGP, dan kriptosistem lainnya. Digital Signature Algorithm (DSA) merupakan varian dari skema tanda tangan digital ElGamal, dan tidak sama dengan algoritma ElGamal. ElGamal merupakan skema tanda tangan digital biierbiiasis logaritma diskrit. ElGamal terdiri dari tiga komponen, yaitu pembiiangkit kunci (key generator), algoritma enkripsi, dan algoritma dekripsi.

ElGamal Digital Signature Scheme mirip dengan skema enkripsinya. Ada 3 proses yang dilakukan yaitu proses pembiiangkitan kunci, proses pembiiangkitan tanda tangan, dan proses verifkasi. Berikut adalah langkah-langkah dalam ElGamal:

(19)

Pembangkitan Tanda Tangan

Verifkasi

Contoh Perhitungan

Diketahui

Bilangan prima p = 23 Elemen primitif g mod p = 7 Bilangan acak a = 6

Hash h(m) = 7 Penyelesaian

i. Hitung A =

g

a mod p =

7

6

mod

23

= 4

Public Key (p, g, A) = (23, 7, 4) Private Key a = 6

(20)

r =

g

k mod p

Karena sama-sama 5, maka pesan yang didapat adalah pesan asli dari pengirim otentiknya.

Schnorr Digital Signature Scheme

Skema otentikasi dan tanda tangan digital mengambiiil sekuritas dari permasalahan menghitung logaritma diskrit. Skema ini juga menggunakan biiilangan prima dan perpangkatan modulo dalam proses pembiientukan kuncinya. Tingkat kesulitan untuk memecahkan algoritma ini adalah sekitar 2t, dimana nilai

t ini dapat ditentukan sendiri.

Skema ini dipatenkan di Amerika Serikat dan akan biierakhir pada tanggal 19 Pebiiruari 2008. Skema otentikasi dapat dimodifkasi menjadi skema tanda tanda digital. Proses pembiientukan kunci privat dan pubiiliknya sama seperti skema otentikasi, hanya saja pada skema tanda tangan digital ditambiiahkan sebiiuah fungsi hash.

Key Generation

Pembiientukan kunci biierfungsi untuk menghasilkan kunci privat dan kunci pubiilik yang akan digunakan dalam skema otentikasi dan skema tanda tangan digital. Proses pembiientukan kunci adalah sebiiagai biierikut:

1. Pilih 2 biiuah biiilangan prima p dan q, dan sebiiuah nilai a yang memenuhi syarat biierikut:

(21)

bii. Harus memenuhi operasi: aq 1 (mod p). 

2. Pilih sebiiuah nilai s, dimana s < q. (s adalah kunci privat) 3. Hitung nilai v dengan rumus biierikut:

v = a-s mod p

(v adalah kunci pubiilik).

Untuk lebiiih memahami proses pembiientukan kunci, perhatikan contoh biierikut: 1. Dipilih dua biiuah biiilangan prima p = 816961, q = 23 dan a = 40433 yang

memenuhi kedua syarat yang telah dijelaskan pada poin pertama proses pembiientukan kunci.

2. Pilih sebiiuah nilai s, s = 15 (s lebiiih kecil dari q yang biiernilai 23). 3. Hitung: v = a-s mod p 5. Kunci pubiilik: v = 578423.

Protokol Otentikasi

Misalkan, seha dan fandi sedang biierkomunikasi di dua tempat biierbiieda melalui aplikasi messenger (chatting). Permasalahan yang muncul adalah biiagaimana Seha dan Fandi dapat mengidentifkasi identitas satu sama lain untuk memastikan biiahwa orang yang sedang diajak komunikasi adalah biienar-biienar orang yang dimaksud. Dengan skema otentikasi schnorr, Seha dan Fandi dapat memverifkasi identitas masing-masing secara waktu yang real. Hal ini dapat dilakukan dengan mengirimkan biiebiierapa nilai matematis dimana hanya mereka biierdua yang dapat meresponnya secara tepat.

Protokol dari otentikasi schnorr dapat dijabiiarkan sebiiagai biierikut :

1. Seha mengambiiil sebiiuah biiilangan acak r, yang lebiiih kecil daripada q dan menghitung x = ar mod p.

2. Seha mengirimkan x kepada Fandi.

3. Fandi mengirimkan sebiiuah biiilangan acak e yang biierada di antara 0 dan 2t

– 1.

4. Seha menghitung y = (r + se) mod q dan mengirimkan y kepada Fandi. 5. Fandi memverifkasi biiahwa x = ayve mod p.

Dengan menggunakan contoh pada proses pembiientukan kunci, perhatikan contoh skema otentikasi di biiawah ini:

1. Seha memilih nilai r = 20 (r lebiiih kecil dari q yang biiernilai 23) dan menghitung:

x = ar mod p

x = 4043320 mod 816961

x = 738635

2. Seha mengirimkan x = 738635 kepada Fandi.

3. Fandi mengirimkan sebiiuah nilai e = 59195082 kepada seha. 4. Seha menghitung:

y = (r + se) mod q

y = (20 + 15 . 59195082) mod 23 y = 3

Seha mengirimkan y = 3 kepada Fandi. 5. Fandi memverifkasi biiahwa:

(22)

x = ((ay) mod p . (ve) mod p) mod p

x = (404333 mod 816961) . (57842359195082 mod 816961) mod 816961

x = (346483 . 402127) mod 816961

738635 = 738635 (True), Proses otentikasi biierhasil.

Protokol Tanda Tangan Digital (Digital Signature)

Protokol ini dapat dianalogikan seperti pengiriman surat yang menggunakan tanda tangan biiiasa. Fandi memang dapat merasa yakin biiahwa tanda tangan Seha adalah asli, tetapi biiagaimana Fandi dapat memastikan biiahwa isi pesan adalah asli dan tidak diganti oleh pihak ketiga. Untuk memastikan keaslian dan keutuhan pesan, Seha membiiubiiuhkan tanda tangan digitalnya pada pesan tersebiiut. Tanda tangan digital itu tidak mudah ditiru orang lain, hanya sah untuk pesan itu saja dan dapat diperiksa oleh Fandi.

Protokol dari skema tanda tangan digital Schnorr dapat dijabiiarkan sebiiagai biierikut:

1. Seha mengambiiil sebiiuah biiilangan acak, r, yang lebiiih kecil daripada q dan menghitung x = ar mod p.

2. Seha menggabiiungkan M dan x, dan menghitung nilai hash dari hasil penggabiiungan.

e = H(M, x).

3. Seha menghitung y = (r + se) mod q. Tandatangannya adalah e dan y. Seha mengirimkannya kepada Fandi.

4. Fandi menghitung x’ = ayve mod p dan memverifkasi nilai e dengan

nilai hash dari penggabiiungan dari M dan x’. e = H(M,x’).

Jika nilai e sesuai dengan nilai hash, maka tandatangan tersebiiut dianggap valid.

Dengan menggunakan contoh pada proses pembiientukan kunci pada subiibiiabii, perhatikan contoh skema tanda tangan digital di biiawah ini:

Misalkan nilai M (pesan) = 100

1. Seha memilih nilai r = 17 (r lebiiih kecil dari q yang biiernilai 23) dan menghitung:

x = ar mod p

x = 4043317 mod 816961

x = 402127

2. Seha menggabiiungkan M dan x, dan menghitung nilai hash dari hasil penggabiiungan.

(23)

x’ = 402127

Hasil penggabiiungan M (100) dan x’ (402127) = 100402127 Fandi memverifkasi: e = H(M, x’)

200804255 = (100402127 * 2) + 1 200804255 = 200804255 (True) Verifkasi tanda tangan sesuai. Digital Signature Algorithm (DSA)

Pada biiulan Agustus 1991, NIST (The National Institute of Standard and Technology) mengumumkan algoritma sidik digital yang disebiiut Digital Signature Algorithm (DSA). DSA dijadikan sebiiagai biiakuan (standard) dari Digital Signature Standard (DSS).

DSS adalah standard, sedangkan DSA adalah algoritma. Standard tersebiiut menggunakan algoritma ini, sedangkan algoritma adalah biiagian dari standard (selain DSA, DSS menggunakan Secure Hash Algorithm atau SHA sebiiagai fungsi hash).

DSA termasuk ke dalam sistem kriptograf kunci-pubiilik. Meskipun demikian, DSA tidak dapat digunakan untuk enkripsi. DSA mempunyai dua fungsi utama:

1. Pembiientukan sidik digital (signature generation), dan

2. Pemeriksaan keabiisahan sidik digital (signature verivication).

Sebiiagaimana halnya pada algoritma kriptograf kunci-pubiilik, DSA menggunakan dua biiuah kunci, yaitu kunci pubiilik dan kunci rahasia. Pembiientukan sidik digital menggunakan kunci rahasia pengirim, sedangkan verifkasi sidik digital menggunakan kunci pubiilik pengirim. DSA menggunakan fungsi hash SHA (Secure Hash Algorithm) untuk mengubiiah pesan menjadi message digest yang biierukuran 160 biiit (SHA akan dijelaskan pada kuliah selanjutnya).

Parameter DSA

DSA dikembiiangkan dari algoritma Elgamal. DSA menggunakan biiebiierapa parameter sebiiagai biierikut:

1. p, adalah biiilangan prima dengan panjang L biiit, yang dalam hal ini 512  L  1024 dan L harus kelipatan 64. Parameter p biiersifat pubiilik dan dapat

digunakan biiersama-sama oleh orang di dalam kelompok.

2. q, biiilangan prima 160 biiit, merupakan faktor dari p – 1. Dengan kata lain, (p – 1) mod q = 0. Parameter q biierisfat pubiilik.

3. g = h(p – 1)/q mod p, yang dalam hal ini h < p – 1 sedemikian sehingga h(p – 1)/

q mod p > 1. Parameter g biiersifat pubiilik.

4. x, adalah biiilangan biiulat kurang dari q. Parameter x adalah kunci rahasia. 5. y = gx mod p, adalah kunci pubiilik.

6. m, pesan yang akan dibiieri sidik digital.

Pembentukan Sepasang Kunci

1. Pilih biiilangan prima p dan q, yang dalam hal ini (p – 1) mod q = 0.

2. Hitung g = h(p – 1)/q mod p, yang dalam hal ini 1 < h < p – 1 dan h(p – 1)/q mod

p > 1.

(24)

Pembentukan Sidik Digital (Signing)

1. Ubiiah pesan m menjadi message digest dengan fungsi hash SHA, H. 2. Tentukan biiilangan acak k < q.

3. Sidik digital dari pesan m adalah biiilangan r dan s. Hitung r dan s sebiiagai biierikut:

r = (gk mod p) mod q

s = (k– 1 (H(m) + x * r)) mod q

4. Kirim pesan m dan sidik digital r dan s.

Verifkasi Keabsahan Sidik Digital (Verifying)

1. Hitung

w = s– 1 mod q

u1= (H(m) * w) mod q

u2= (r * w) mod q

v = ((gu1 * yu2) mod p) mod q)

2. Jika v = r, maka sidik digital sah, yang biierarti biiahwa pesan masih asli dan dikirim oleh pengirim yang biienar.

Contoh Perhitungan DSA

3. Tentukan kunci rahasia x, yang dalam hal ini x < q. x = 3223

4. Hitung kunci pubiilik y = gx mod p.

y = 29245

b. Pembentukan Sidik Digital (Signing)

1. Hitung nilai hash dari pesan, misalkan H(m) = 4321 2. Tentukan biiilangan acak k < q.

k = 997

k– 1 = 2907 (mod 3301)

(25)

s = (k– 1 (H(m) + x * r)) mod q

= 7957694475 mod 3301 = 183 4. Kirim pesan m dan sidik digital r dan s.

c. Verifkasi Keabiisahan Sidik Digital

1. Hitung

s– 1 = 469 (mod 3301)

w = s– 1 mod q = 469

u1= (H(m) * w) mod q 2026549 mod 3301 = 3036

u2= (r * w) mod q = 397712 mod 3301 = 1592

v = ((gu1 * yu2) mod p) mod q) = 848 mod 3301 = 848

2. Karena v = r, maka sidik digital sah.

Implementasi DSA

Adanya biiatasan biiahwa nilai p mempunyai panjang 512 sampai 1024 biiit dan q 160-biiit, menyebiiabiikan DSA hampir tidak mungkin diimplementasikan dalam perangkat lunak. Panjang biiit yang biiesar ini dimaksudkan agar upaya untuk memecahkan parameter yang lain sangat sulit dilakukan.

Compiler C hanya sanggup menyatakan biiilangan biiulat hingga 232. Oleh

karena itu, biiila DSA diimplementasikan dalam perangkat lunak, biiatasan panjang biiit p dan q diubiiah hingga maksimum nilai p dan q adalah 232.

Perbandingan ElGamal, Schnorr, dan DSA

Tabel 5. Perbiiandingan ElGamal, Schnorr, dan DSA

Properti ElGAMAL DSA SCHNORR

Panjang TTD Sedang Paling kecil Lebiiih biiesar Pembiiuatan Key Lama Sedang Cepat Pembiiuatan TTD Lama Cepat Sedang Proses Verifkasi Lama Cepat Sedang

(26)
(27)

SOAL DAN PEMBAHASAN

A. MULTIPLE CHOICE

1. Pertanyaan nomor 1 A. Pilihan jawabiian A B. Pilihan jawabiian B C. Pilihan jawabiian C D. Pilihan jawabiian D E. Pilihan jawabiian E

Tingkat Kesulitan Sumbiier Soal Kunci Jawabiian Pembiiahasan

2. Pertanyaan nomor 2 3. Pertanyaan nomor 3 4. Pertanyaan nomor 4 5. Pertanyaan nomor 5

6. Dst hingga minimal 15 soal

B. ESSAY

SOAL 1

Uraian soal

Tingkat Kesulitan Sumbiier Soal Kunci Jawabiian Pembiiahasan

SOAL 2

(28)

DAFTAR PUSTAKA

[Online] [Dikutip: 8 May 2015.]

http://en.wikipedia.org/wiki/Authenticated_encryption.

Analisis Algoritma dan Kinerja pada Counter dengan Cbc-Mac (Ccm) sebagai Fungsi Enkripsi Terotentikasi. Sugi Guritman, dkk. s.l. : Institut Pertanian Bogor.

Catur Setiawan, dkk. Digital Signature Algorithm (DSA). [2013] s.l. : Jurusan Teknik Elektro dan Teknologi Informasi Universitas Jogjakarta.

Jain, Raj. Message Authentication Codes. s.l. : Washington University in Saint Louis.

Munir, Rinaldi. Bahan Kuliah IF3058 Kriptograf 'Tandatangan Digital'. 2005 : STEI ITB.

—. 2003. Digital Signature Algorithm (DSA). s.l. : Jurusan Teknik Informatika ITB, Program Studi Teknik Informatika ITB, 2003.

Mustika, Fandi Ali. 2012. Simulasi Skema Otentikasi dan Tanda Tangan Digital Schnorr Berbasis Web. Jakarta : Universitas Mercu Buana, 2012.

Perbandingan Algoritma Tanda Tangan Digital Rabin dan Schnorr. Setiawan, Rachmansyah Budi. 2010. s.l. : Program Studi Teknik Informatika STEI ITB, 2010.

Rancang Bangun Sistem Pengamanan Dokumen pada Sistem Informasi

Akademik dengan Menggunakan Digital Signature. Hadi, Ahmaddul. 2013. 2, Padang : Jurnal Teknologi Informasi & Pendidikan , 2013, Vol. 6. 2086 – 4981.

Serangan terhadap Skema Tanda Tangan Digital RSA, ElGamal, Schnorr, dan DSA beserta Teknik untuk Melawan Serangan. Ferdian, Edward. s.l. : Program Studi Teknik Informatika STEI ITB.

(29)

LAMPIRAN ANGGOTA KELP DAN PEMBAGIAN TUGAS

Anggota 1

NRP 5112100038 Nama Madis Saralita

Email madis.saralita@gmail.com HP 085658383000

Tugas  Membiiuat presentasi pokok biiahasan umum digital signatures dan subiibiiabii Digital Signature Algorithm

 Mengintegrasikan presentasi (PPT)

 Membiiuat materi makalah pokok biiahasan umum digital signatures dan subiibiiabii DSA

Foto

Anggota 2

NRP 5112100132 Nama Shoffi Izza Sabiiilla Email shoffi.izza@gmail.com HP 08563122152

Tugas  Membiiuat presentasi pokok biiahasan umum digital signatures, subiibiiabii ElGamal dan Schnorr

 Membiiuat materi makalah biiabii digital signatures, subiibiiabii ElGamal dan Schnorr

 Membiiuat soal Foto

Anggota 3

NRP 5112100212

Nama Otniel Yehezkiel B Hutabiiarat Email biiraincreativelife@gmail.com

HP 085668507003

Tugas  Membiiuat presentasi subiibiiabii authenticated encryption dan PRNG using hash function and MACS

(30)

Gambar

Gambar 1. MtE
Gambar 3. E&M
Gambar 4. Proses generation-encryption CCM
Gambar 5. Proses decryption-verifcation CCM
+7

Referensi

Dokumen terkait

Karena proses pendataan yang dipakai di PT.Kharisma Prima Abadi sela ma ini masih menggunakan proses manual dan menggunakan Microsoft Office Excel, maka penulis ingin membuat

Sistematika penulisan yang digunakan dalam penelitian ini terdiri dari 5 bab yang masing-masing terbagi menjadi beberapa sub bab, hal ini dilakukan agar dapat mencapai

Penelitian ini difokuskan pada Sekolah Standar Nasional di era otonomi yang ditinjau dari kajian Pemasaran Pendidikan dalam ranah komunikasi Pemasaran, dengan

Terdapat load cell yang terhubung dengan Weighing indicator XK3190-A12, Terdapat LCD sebagai penampil inputan berupa nomer plat truk, nama perusahaan, berat awal

Hibah atau wakaf untuk aktiva tetap dengan pembatasan eksplisit yang menyatakan tujuan pemanfaatan aktiva tersebut dan sumbangan berupa kas atau aktiva lain yang harus digunakan

Scanner adalah sebuah alat yang dapat berfungsi untuk meng copy atau menyalin gambar atau teks yang kemudian disimpan ke dalam memori komputerA. Dari memori komputer

Metode bukan suatu tujuan, melainkan suatu cara untuk mencapai tujuan dengan sebaik-baiknya, dapat dipahami bahwa tujuan yang hendak dicapai dalam setiap kegiatan

squamosa yang terdapat di lokasi tersebut masih layak untuk dikonsumsi, hal ini sejalan dengan penelitian terdahulu yang menyatakan bahwa semakin banyak polutan yang