• Tidak ada hasil yang ditemukan

Pada algoritma AES ini input harus 128-bit blok AES ( 16 karakter atau 32 digit hexadesimal). Algoritma ini memiliki beberapa mode antara lain :

• Electronic Codebook

Setiap blok dienkripsi secara bebas dan tidak digunakan inisialisasi vector.

Gambar 12: Encipher Diagram

Gambar 13: Decipher Diagram

• Chiper Block Chaining

Blok input yang pertama akan di XOR dengan inisialisasi vektor. Hasil yang diperoleh akan dienkripsi sehingga menghasilkan sebuah blok ciphertext. Blok ciphertext yang pertama ini kemudian akan di XOR dengan blok input yang kedua, demikian seterusnya. dari block proceeding sebelum dienkripsi.

Gambar 14: Encipher Diagram

Gambar 15: Decipher Diagram

• Cipher Feedback

Mode ini menyimpan inisialisasi vektor ke shift register. Kemudian isi dari shift register ini dienkripsi, hasil dari enkripsi tersebut akan di XOR dengan Blok input (plaintext). Hasil dari XOR ini akan disimpan juga ke shift register yang berikutnya.

Gambar 16: Encipher Diagram

Gambar 17: Decipher Diagram

• Output Feedback

Inisialisasi vektor dienkripsi menggunakan algoritma blok yang ditetapkan.

Kemudian hasil enkripsi ini di XOR dengan blok input, dan disimpan ke en-cipher blok berikutnya.

Gambar 18: Encipher Diagram

Gambar 19: Decipher Diagram

• Counter

Mode ini menset suatu counter untuk nilai dari inisialisasi vector. Untuk enkripsi sebuah blok, counter dienkripsi menggunakan algoritma blok. Kemu-dian hasilnya di XOR dengan bagian pertama dari message.

Gambar 20: Encipher Diagram

Gambar 21: Decipher Diagram

3 APLIKASI DIGITAL SIGNATURE PADA KTP

Pada bagian ini akan dijelaskan bagaimana aplikasi digital signature pada Kartu Tanda Penduduk (KTP)sebagai otentikasi. Pada setiap KTP nantinya akan ditam-bahkan digital signaturenya, dimana data yang akan diambil adalah Nomor Induk Kependudukan. Karena setiap penduduk Indonesia hanya akan memiliki satu nomor penduduk dan bersifat unik. Pemerintah nantinya akan memberikan sebuah kunci kepada penduduk yakni kunci private. Dimana kunci private ini juga akan diberikan kepada Instansi terkait.

Ketika penduduk tersebut ingin malakukan suatu aktivitas yang memerlukan KTP, maka untuk memastikan bahwa KTP tersebut merupakan identitas yang benar dari penduduk tersebut maka digital signature tadi akan didekripsi dengan kunci tersebut yang telah diberikan pemerintah kepada penduduk tersebut. Dan setelah didekripsi menghasilkan output yang sama dengan message digest yang tersimpan pada data-base pemerintahan maka bisa dipastikan bahwa penduduk tersebut adalah orang yang benar.

Dalam makalah ini akan digunakan algoritma MD5 untuk hashing dan hasil hashing tersebut yang berupa message digest akan dienkripsi dengan menggunakan algoritma AES dengan chiper mode counter. Aplikasi yang digunakan adalah aplikasi online yang ada pada internet yaitu dari http://www.cs.eku.edu/faculty/styer/460/Encrypt

3.1 Proses Hashing dengan MD5

Aplikasi ini merupakan md5 string yaitu mencari nilai hash dari masukan berupa karakter-karakter yang dimasukkan oleh pemakai melalui keyboard. dan

Perancangan Aplikasi

Gambar 22: Proses MD5 dengan input string

1. Masuk ke alamat website http://www.cs.eku.edu/faculty/styer/460/Encrypt/JS-MD5.html.

2. Tahap Masukkan Karakter

Entrikan Nomor Induk Kependudukan pada kolom enter your message here seperti gambar berikut ini:

Gambar 23: Entri Message

3. klik tombol Calculate Hash untuk menghashing Nomor Induk Kependudukan yang sudah dientrikan diatas. Sehingga menghasilkan sebuah message digest seperti berikut:

Gambar 24: Hasil MD5 Hash

4. Proses detail dari MD5 Hash diatas adalah sebagai berikut:

03.5: 352e3330

Starting block at word 0 x[0]=352e3330

F (ef cdab89, 98badcf e, 10325476) = 98badcf e a + F (b, c, d) + xk + ti = 0c98d7a7

F F : b + (... <<< 7) = 3c397f 0f

F F : a = 10325476, b = 3c397f 0f, c = ef cdab89, d = 98badcf e, xk = 2e363030, s = 12, ti = e8c7b756

F (3c397f 0f, ef cdab89, 98badcf e) = ac8babf 9 a + F (b, c, d) + xk + ti = d3bbe7f 5

F F : b + (... <<< 12) = f ab8dc4aF F : a = 98badcf e, b = f ab8dc4a, c = 3c397f 0f, d = ef cdab89, xk = 37303134, s = 17, ti = 242070db

F (f ab8dc4a, 3c397f 0f, ef cdab89) = 3d7d7f 8b a + F (b, c, d) + xk + ti = 3188f e98

F (f 72cb3d6, e90f 8034, f 7605bdc) = e14cc81c a + F (b, c, d) + xk + ti = 81664d8a

F F : b + (... <<< 17) = 9241b6a2F F : a = f 7605bdc, b = 9241b6a2, c = f 72cb3d6, d = e90f 8034, xk = 00000000, s = 22, ti = f d469501

F (9241b6a2, f 72cb3d6, e90f 8034) = f b0eb296 a + F (b, c, d) + xk + ti = ef b5a373

F F : b + (... <<< 22) = 6f 3da40aF F : a = e90f 8034, b = 6f 3da40a, c = 9241b6a2, d = f 72cb3d6, xk = 00000000, s = 7, ti = 698098d8

F (6f 3da40a, 9241b6a2, f 72cb3d6) = 9201b7d6 a + F (b, c, d) + xk + ti = e491d0e2

F F : b + (... <<< 7) = b826157c

F F : a = f 72cb3d6, b = b826157c, c = 6f 3da40a, d = 9241b6a2, xk = 00000000, s = 12, ti = 8b44f 7af

F (b826157c, 6f 3da40a, 9241b6a2) = 2a65a68a a + F (b, c, d) + xk + ti = acd7520f

F F : b + (... <<< 12) = 2d471049

F F : a = 9241b6a2, b = 2d471049, c = b826157c, d = 6f 3da40a, xk = 00000000, s = 17, ti = f f f f 5bb1

F (2d471049, b826157c, 6f 3da40a) = 6a3eb44a a + F (b, c, d) + xk + ti = f c7f c69d

F F : b + (... <<< 17) = ba830948

F F : a = 6f 3da40a, b = ba830948, c = 2d471049, d = b826157c, xk = 00000000, s = 22, ti = 895cd7be

F (ba830948, 2d471049, b826157c) = 2827147c a + F (b, c, d) + xk + ti = 20c19044

F F : b + (... <<< 22) = cb8b39ac

F F : a = b826157c, b = cb8b39ac, c = ba830948, d = 2d471049, xk = 00000000, s =

7, ti = 6b901122

F (cb8b39ac, ba830948, 2d471049) = aec70949 a + F (b, c, d) + xk + ti = d27d2f e7

F F : b + (... <<< 7) = 0a232d95

F F : a = 2d471049, b = 0a232d95, c = cb8b39ac, d = ba830948, xk = 00000000, s = 12, ti = f d987193

F (0a232d95, cb8b39ac, ba830948) = ba8329cc a + F (b, c, d) + xk + ti = e562aba8

F F : b + (... <<< 12) = 34ddbbeb

F F : a = ba830948, b = 34ddbbeb, c = 0a232d95, d = cb8b39ac, xk = 00000098, s = 17, ti = a679438e

F (34ddbbeb, 0a232d95, cb8b39ac) = cb032985 a + F (b, c, d) + xk + ti = 2bf f 76f 3

F F : b + (... <<< 17) = 22c413e9

F F : a = cb8b39ac, b = 22c413e9, c = 34ddbbeb, d = 0a232d95, xk = 00000000, s = 22, ti = 49b40821

F (22c413e9, 34ddbbeb, 0a232d95) = 28e73f f d a + F (b, c, d) + xk + ti = 3e2681ca

F F : b + (... <<< 22) = 95539d89

GG : a = 0a232d95, b = 95539d89, c = 22c413e9, d = 34ddbbeb, xk = 2e363030, s = 5, ti = f 61e2562

G(95539d89, 22c413e9, 34ddbbeb) = 16519989 a + G(b, c, d) + xk + ti = 44c91cb0

GG : b + (... <<< 5) = 2e773391

GG : a = 34ddbbeb, b = 2e773391, c = 95539d89, d = 22c413e9, xk = 00000000, s = 9, ti = c040b340

G(2e773391, 95539d89, 22c413e9) = b7579f 81 a + G(b, c, d) + xk + ti = ac760eac

GG : b + (... <<< 9) = 1a948ce9

GG : a = 22c413e9, b = 1a948ce9, c = 2e773391, d = 95539d89, xk = 00000000, s = 14, ti = 265e5a51

G(1a948ce9, 2e773391, 95539d89) = 3a34ae99 a + G(b, c, d) + xk + ti = 83571cd3

GG : b + (... <<< 14) = e1c96dbe

GG : a = 95539d89, b = e1c96dbe, c = 1a948ce9, d = 2e773391, xk = 352e3330, s = 20, ti = e9b6c7aa

G(e1c96dbe, 1a948ce9, 2e773391) = 30c1adf 8 a + G(b, c, d) + xk + ti = e4f a465

GG : b + (... <<< 20) = 4787bd62

GG : a = 2e773391, b = 4787bd62, c = e1c96dbe, d = 1a948ce9, xk = 00000000, s = 5, ti = d62f 105d

G(4787bd62, e1c96dbe, 1a948ce9) = e3cded76a + G(b, c, d) + xk + ti = e8743164 GG : b + (... <<< 5) = 560de9f f

GG : a = 1a948ce9, b = 560de9f f, c = 4787bd62, d = e1c96dbe, xk = 00000000, s = 9, ti = 02441453

G(560de9f f, 4787bd62, e1c96dbe) = 460f f 9f e a + G(b, c, d) + xk + ti = 62e89b3a

GG : b + (... <<< 9) = 27445ec4

GG : a = e1c96dbe, b = 27445ec4, c = 560de9f f, d = 4787bd62, xk = 00000000, s = 14, ti = d8a1e681

G(27445ec4, 560de9f f, 4787bd62) = 170c5cdd a + G(b, c, d) + xk + ti = d177b11c

GG : b + (... <<< 14) = 138b9321

GG : a = 4787bd62, b = 138b9321, c = 27445ec4, d = 560de9f f, xk = 80353030, s = 20, ti = e7d3f bc8

G(138b9321, 27445ec4, 560de9f f ) = 33499721 a + G(b, c, d) + xk + ti = e2da807b

GG : b + (... <<< 20) = 1b49c0c9

GG : a = 560de9f f, b = 1b49c0c9, c = 138b9321, d = 27445ec4, xk = 00000000, s = 5, ti = 21e1cde6

G(1b49c0c9, 138b9321, 27445ec4) = 13cbc1e1 a + G(b, c, d) + xk + ti = 8bbb79c6

GG : b + (... <<< 5) = 92b8f 99a

GG : a = 27445ec4, b = 92b8f 99a, c = 1b49c0c9, d = 138b9321, xk = 00000098, s = 9, ti = c33707d6

G(92b8f 99a, 1b49c0c9, 138b9321) = 1ac8d1c8 a + G(b, c, d) + xk + ti = 054438f a

GG : b + (... <<< 9) = 1b2aeda4

GG : a = 138b9321, b = 1b2aeda4, c = 92b8f 99a, d = 1b49c0c9, xk = 302e3138, s = 14, ti = f 4d50d87

G(1b2aeda4, 92b8f 99a, 1b49c0c9) = 9bb8f 992 a + G(b, c, d) + xk + ti = d447cb72

GG : b + (... <<< 14) = 0e07a2b5

GG : a = 1b49c0c9, b = 0e07a2b5, c = 1b2aeda4, d = 92b8f 99a, xk = 00000000, s = 20, ti = 455a14ed

G(0e07a2b5, 1b2aeda4, 92b8f 99a) = 0b02a4b4 a + G(b, c, d) + xk + ti = 6ba67a6a

GG : b + (... <<< 20) = b4ae5d1c

GG : a = 92b8f 99a, b = b4ae5d1c, c = 0e07a2b5, d = 1b2aeda4, xk = 00000000, s = 5, ti = a9e3e905

G(b4ae5d1c, 0e07a2b5, 1b2aeda4) = 142f 4f 15 a + G(b, c, d) + xk + ti = 50cc31b4

GG : b + (... <<< 5) = ce3493a6

GG : a = 1b2aeda4, b = ce3493a6, c = b4ae5d1c, d = 0e07a2b5, xk = 37303134, s = 9, ti = f cef a3f 8

G(ce3493a6, b4ae5d1c, 0e07a2b5) = beacdf ac a + G(b, c, d) + xk + ti = 0df 7a27c

GG : b + (... <<< 9) = bd798bc1

GG : a = 0e07a2b5, b = bd798bc1, c = ce3493a6, d = b4ae5d1c, xk = 00000000, s = 14, ti = 676f 02d9

G(bd798bc1, ce3493a6, b4ae5d1c) = f e388ba2 a + G(b, c, d) + xk + ti = 73af 3130

GG : b + (... <<< 14) = 89c5a8ac

GG : a = b4ae5d1c, b = 89c5a8ac, c = bd798bc1, d = ce3493a6, xk = 00000000, s = 20, ti = 8d2a4c8a

G(89c5a8ac, bd798bc1, ce3493a6) = b94d88e5 a + G(b, c, d) + xk + ti = f b26328b

GG : b + (... <<< 20) = b2855b0f

HH : a = ce3493a6, b = b2855b0f, c = 89c5a8ac, d = bd798bc1, xk = 00000000, s = 4, ti = f f f a3942

H(b2855b0f, 89c5a8ac, bd798bc1) = 86397862 a + H(b, c, d) + xk + ti = 5468454a

HH : b + (... <<< 4) = f 909af b4

HH : a = bd798bc1, b = f 909af b4, c = b2855b0f, d = 89c5a8ac, xk = 00000000, s = 11, ti = 8771f 681

H(f 909af b4, b2855b0f, 89c5a8ac) = c2495c17 a + H(b, c, d) + xk + ti = 0734de59

HH : b + (... <<< 11) = 9f f c77ed

HH : a = 89c5a8ac, b = 9f f c77ed, c = f 909af b4, d = b2855b0f, xk = 00000000, s = 16, ti = 6d9d6122

H(9f f c77ed, f 909af b4, b2855b0f ) = d4708356 a + H(b, c, d) + xk + ti = cbd38d24

HH : b + (... <<< 16) = 2d2143c0

HH : a = b2855b0f, b = 2d2143c0, c = 9f f c77ed, d = f 909af b4, xk = 00000098, s = 23, ti = f de5380c

H(2d2143c0, 9f f c77ed, f 909af b4) = 4bd49b99 a + H(b, c, d) + xk + ti = f c3f 2f 4c

HH : b + (... <<< 23) = d39f 6357

HH : a = f 909af b4, b = d39f 6357, c = 2d2143c0, d = 9f f c77ed, xk = 2e363030, s = 4, ti = a4beea44

H(d39f 6357, 2d2143c0, 9f f c77ed) = 6142577a a + H(b, c, d) + xk + ti = 2d4121a2

HH : b + (... <<< 4) = a7b17d79

HH : a = 9f f c77ed, b = a7b17d79, c = d39f 6357, d = 2d2143c0, xk = 80353030, s = 11, ti = 4bdecf a9

H(a7b17d79, d39f 6357, 2d2143c0) = 590f 5dee a + H(b, c, d) + xk + ti = c51f d5b4

HH : b + (... <<< 11) = a65f 23a1

HH : a = 2d2143c0, b = a65f 23a1, c = a7b17d79, d = d39f 6357, xk = 00000000, s = 16, ti = f 6bb4b60

H(a65f 23a1, a7b17d79, d39f 6357) = d2713d8f a + H(b, c, d) + xk + ti = f 64dccaf

HH : b + (... <<< 16) = 730f 19ee

HH : a = d39f 6357, b = 730f 19ee, c = a65f 23a1, d = a7b17d79, xk = 00000000, s = 23, ti = bebf bc70

H(730f 19ee, a65f 23a1, a7b17d79) = 72e14736 a + H(b, c, d) + xk + ti = 054066f d

HH : b + (... <<< 23) = f 191ba21

HH : a = a7b17d79, b = f 191ba21, c = 730f 19ee, d = a65f 23a1, xk = 00000000, s = 4, ti = 289b7ec6

H(f 191ba21, 730f 19ee, a65f 23a1) = 24c1806e a + H(b, c, d) + xk + ti = f 50e7cad

HH : b + (... <<< 4) = 42798500

HH : a = a65f 23a1, b = 42798500, c = f 191ba21, d = 730f 19ee, xk = 352e3330, s = 11, ti = eaa127f a

H(42798500, f 191ba21, 730f 19ee) = c0e726cf a + H(b, c, d) + xk + ti = 8715a59a

HH : b + (... <<< 11) = ef a65938

HH : a = 730f 19ee, b = ef a65938, c = 42798500, d = f 191ba21, xk = 302e3138, s = 16, ti = d4ef 3085

H(ef a65938, 42798500, f 191ba21) = 5c4e6619 a + H(b, c, d) + xk + ti = d47ae1c4

HH : b + (... <<< 16) = d16b2db2

HH : a = f 191ba21, b = d16b2db2, c = ef a65938, d = 42798500, xk = 00000000, s = 23, ti = 04881d05

H(d16b2db2, ef a65938, 42798500) = 7cb4f 18a a + H(b, c, d) + xk + ti = 72cec8b0

HH : b + (... <<< 23) = 29a49516

HH : a = 42798500, b = 29a49516, c = d16b2db2, d = ef a65938, xk = 00000000, s = 4, ti = d9d4d039

H(29a49516, d16b2db2, ef a65938) = 1769e19c a + H(b, c, d) + xk + ti = 33b836d5

HH : b + (... <<< 4) = 65280269

HH : a = ef a65938, b = 65280269, c = 29a49516, d = d16b2db2, xk = 00000000, s = 11, ti = e6db99e5

H(65280269, 29a49516, d16b2db2) = 9de7bacd a + H(b, c, d) + xk + ti = 7469adea

HH : b + (... <<< 11) = b297560c

HH : a = d16b2db2, b = b297560c, c = 65280269, d = 29a49516, xk = 00000000, s = 16, ti = 1f a27cf 8

H(b297560c, 65280269, 29a49516) = f e1bc173 a + H(b, c, d) + xk + ti = ef 296c1d

HH : b + (... <<< 16) = 1eb54535

HH : a = 29a49516, b = 1eb54535, c = b297560c, d = 65280269, xk = 37303134, s = 23, ti = c4ac5665

H(1eb54535, b297560c, 65280269) = c90a1150 a + H(b, c, d) + xk + ti = ee8b2df f

HH : b + (... <<< 23) = 1eac8acb

II : a = 65280269, b = 1eac8acb, c = 1eb54535, d = b297560c, xk = 352e3330, s = 6, ti = f 4292244

I(1eac8acb, 1eb54535, b297560c) = 4159eece a + I(b, c, d) + xk + ti = cf d946ab

II : b + (... <<< 6) = 14f e35be

II : a = b297560c, b = 14f e35be, c = 1eac8acb, d = 1eb54535, xk = 00000000, s = 10, ti = 432af f 97

I(14f e35be, 1eac8acb, 1eb54535) = eb523535 a + I(b, c, d) + xk + ti = e1148ad8

II : b + (... <<< 10) = 67299942

II : a = 1eb54535, b = 67299942, c = 14f e35be, d = 1eac8acb, xk = 00000098, s = 15, ti = ab9423a7

I(67299942, 14f e35be, 1eac8acb) = f 385c8c8 a + I(b, c, d) + xk + ti = bdcf 323c

II : b + (... <<< 15) = 0047f 829

II : a = 1eac8acb, b = 0047f 829, c = 67299942, d = 14f e35be, xk = 00000000, s = 21, ti = f c93a039

I(0047f 829, 67299942, 14f e35be) = 8c6e632b a + I(b, c, d) + xk + ti = a7ae8e2f

II : b + (... <<< 21) = c63cedf a

II : a = 14f e35be, b = c63cedf a, c = 0047f 829, d = 67299942, xk = 00000000, s = 6, ti = 655b59c3

I(c63cedf a, 0047f 829, 67299942) = deb917d6 a + I(b, c, d) + xk + ti = 5912a757

II : b + (... <<< 6) = 0ae6c3d0

II : a = 67299942, b = 0ae6c3d0, c = c63cedf a, d = 0047f 829, xk = 302e3138, s = 10, ti = 8f 0ccc92

I(0ae6c3d0, c63cedf a, 0047f 829) = 39c22a2c a + I(b, c, d) + xk + ti = 6026c138

II : b + (... <<< 10) = a5eba550

II : a = 0047f 829, b = a5eba550, c = 0ae6c3d0, d = c63cedf a, xk = 00000000, s = 15, ti = f f ef f 47d

I(a5eba550, 0ae6c3d0, c63cedf a) = b70d7485 a + I(b, c, d) + xk + ti = b745612b

II : b + (... <<< 15) = 568180f 2

II : a = c63cedf a, b = 568180f 2, c = a5eba550, d = 0ae6c3d0, xk = 2e363030, s = 21, ti = 85845dd1

I(568180f 2, a5eba550, 0ae6c3d0) = 527219af a + I(b, c, d) + xk + ti = cc6995aa

II : b + (... <<< 21) = 0bdb0e24

II : a = 0ae6c3d0, b = 0bdb0e24, c = 568180f 2, d = a5eba550, xk = 00000000, s = 6, ti = 6f a87e4f

I(0bdb0e24, 568180f 2, a5eba550) = 0d5ede5d a + I(b, c, d) + xk + ti = 87ee207c

II : b + (... <<< 6) = 07632d45

II : a = a5eba550, b = 07632d45, c = 0bdb0e24, d = 568180f 2, xk = 00000000, s = 10, ti = f e2ce6e0

I(07632d45, 0bdb0e24, 568180f 2) = a4a47169 a + I(b, c, d) + xk + ti = 48bcf d99

II : b + (... <<< 10) = f b599267

II : a = 568180f 2, b = f b599267, c = 07632d45, d = 0bdb0e24, xk = 00000000, s = 15, ti = a3014314

I(f b599267, 07632d45, 0bdb0e24) = f 81edeba a + I(b, c, d) + xk + ti = f 1a1a2c0

II : b + (... <<< 15) = ccba0b37

II : a = 0bdb0e24, b = ccba0b37, c = f b599267, d = 07632d45, xk = 00000000, s = 21, ti = 4e0811a1

I(ccba0b37, f b599267, 07632d45) = 07e749d8 a + I(b, c, d) + xk + ti = 61ca699d

II : b + (... <<< 21) = 00664484

II : a = 07632d45, b = 00664484, c = ccba0b37, d = f b599267, xk = 80353030, s = 6, ti = f 7537e82

I(00664484, ccba0b37, f b599267) = c85c66ab a + I(b, c, d) + xk + ti = 474842a2

II : b + (... <<< 6) = d276ed15

II : a = f b599267, b = d276ed15, c = 00664484, d = ccba0b37, xk = 00000000, s = 10, ti = bd3af 235

I(d276ed15, 00664484, ccba0b37) = f 311b959 a + I(b, c, d) + xk + ti = aba63df 5

II : b + (... <<< 10) = 6b6ec3c3

II : a = ccba0b37, b = 6b6ec3c3, c = d276ed15, d = 00664484, xk = 37303134, s = 15, ti = 2ad7d2bb

I(6b6ec3c3, d276ed15, 00664484) = 2d8916ee a + I(b, c, d) + xk + ti = 5c4b2614

II : b + (... <<< 15) = f e78f 1e8

II : a = 00664484, b = f e78f 1e8, c = 6b6ec3c3, d = d276ed15, xk = 00000000, s = 21, ti = eb86d391

I(f e78f 1e8, 6b6ec3c3, d276ed15) = 94973029 a + I(b, c, d) + xk + ti = 8084483e

Setelah hasil hash didapat maka langkah selanjutnya adalah enkripsi, disini akan digunakan algoritma AES dengan Cipher Mode Counter.

1. Entrikan hasil hashing 1610bc39faad16f6e6ce33973918a17b ke kolom Message Part 1.

2. Pilih Hexadecimal

Dokumen terkait