• Tidak ada hasil yang ditemukan

Kriptografi Week10 Algoritma Simetri DES

N/A
N/A
Protected

Academic year: 2019

Membagikan "Kriptografi Week10 Algoritma Simetri DES"

Copied!
42
0
0

Teks penuh

(1)
(2)

Out line

Sejar ah DES

Enkr ipsi DES

Implement asi Har dwar e dan Soft war e DES

(3)

Se j a r a h D ES

Algorit m a DES dikem bangkan di I BM dibawah kepem im pinan

W.L. Tuchm an pada t ahun 1972. Algorit m a ini didasarkan

pada algorit m a LUCI FER yang dibuat oleh Horst Feist el.

Algorit m a ini t elah diset uj ui oleh

Nat ional Bureau of St andard

(4)

Tin j a u a n Um u m D ES

 DES t erm asuk ke dalam sist em kript ografi sim et ri dan t ergolong j enis cipher blok.

 DES beroperasi pada ukuran blok 64 bit . DES m engenkripsikan 64 bit plaint eks m enj adi 64 bit

ciphert eks dengan m enggunakan 56 bit kunci int ernal (int ernal key) at au upa- kunci (subkey) .

(5)
(6)

1. Blok plaint eks diperm ut asi dengan m at riks perm ut asi awal (init ial perm ut at ion at au I P) .

2. Hasil perm ut asi awal kem udian di-enciphering- sebanyak 16 kali ( 16 put aran) . Set iap put aran m enggunakan kunci int ernal yang berbeda.

3. Hasil enciphering kem udian diperm ut asi dengan m at riks

perm ut asi balikan (invers init ial perm ut at ion at au I P- 1 ) m enj adi

blok ciphert eks

(7)
(8)

P

= 0123456789ABCDEF

P

= 0000 0001 0010 0011 0100 0101 0110 0111

1000 1001 1010 1011 1100 1101 1110 1111

D a la m bin a r y m e n j a di:

P = 0123456789ABCDEF

K

= 133457799BBCDFF1

(9)

La n gk a h 1

: Encoding set iap 64 bit dat a pada

1010 1011 1100 1101 1110 1111

(10)

La n gk a h 1 ( Con t ’d)

: Encoding set iap 64 bit

1010 1011 1100 1101 1110 1111

(11)

La n gk a h 1 ( Con t ’d)

: Encoding set iap 64 bit

1010 1011 1100 1101 1110 1111

(12)

La n gk a h 1 ( Con t ’d)

: Encoding set iap 64 bit

1010 1011 1100 1101 1110 1111

(13)

La n gk a h 1 ( Con t ’d)

: Encoding set iap 64 bit

1010 1011 1100 1101 1110 1111

I P = 1100 1100 0000 0000 1100 1100 1111 1111 1111 0000 1010 1010 1111 0000 1010 1010

(14)

Pecah m enj adi L

0

dan R

0...! ! !

Pecah I P m enj adi bagian kiri sebanyak 32 bit ( L

0

) dan

kanan sebanyak 32 bit ( R

0

)

I P = 1100 1100 0000 0000 1100 1100 1111 1111 1111 0000 1010 1010 1111 0000 1010 1010

L

0

R

0

Jadi

L0 = 1100 1100 0000 0000 1100 1100 1111 1111

R0 = 1111 0000 1010 1010 1111 0000 1010 1010

(15)

K

= 133457799BBCDFF1

K dalam binary:

00010011 00110100 01010111 01111001 10011011 10111100 11011111 11110001

1 = 0001

3 = 0011

Dit ulis berkelom pok set iap 8 bit

m enj adi

00010011

Sehingga K m enj adi

Mem bangkit kan kunci ekst ernal

(16)

 Gunakan perm ut asi PC- 1

K= 00010011 00110100 01010111 01111001 10011011 10111100 11011111 11110001

K+ = 1

(17)

 Gunakan perm ut asi PC- 1

K+ = 1 K+ = 11

K= 00010011 00110100 01010111 01111001 10011011 10111100 11011111 11110001

(18)

 Gunakan perm ut asi

(19)

Selanj ut nya bagi Key m enj adi 2 bagian kanan dan kiri,C

0

dan D

0

yang set iap bagian 28 bit panj angnya

Dari K+ = 1111000 0110011 0010101 0101111 0101010 1011001 1001111 0001111

Kit a m endapat kan

C0 = 1111000 0110011 0010101 0101111

D0 = 0101010 1011001 1001111 0001111

C0 D0

(20)

Set elah m endapat kan C0 dan D0, sekarang

kit a m em buat 6 blok Cn dan Dn yang

set iap blok berasal dari Cn- 1 dan Dn- 1.

Selanj ut nya, kedua bagian digeser ke kiri

(

left shift

) sepanj ang sat u at au dua bit

bergant ung pada t iap put aran.

Operasi pergeseran bersifat

w rapping

at au

round- shift

.

(21)
(22)

Dari C

0

dan D

0

awal kit a m endapat kan :

C0 = 1111000011001100101010101111

D0 = 0101010101100110011110001111

Dari ket erangan t abel sebelum nya m aka kit a geser

C

0

dan D

0

ke kiri sebanyak 1 kali ( berdasarkan slide

di halam an sebelum nya)

C

0

= 1111000011001100101010101111

D

0

= 0101010101100110011110001111

C

1

= 1110000110011001010101011111

D

1

= 1010101011001100111100011110

Dan lakukan set erusnya sam pai C16 dan D16

C

1

= 1110000110011001010101011111

D

1

= 1010101011001100111100011110

C

2

= 1100001100110010101010111111

D

2

= 0101010110011001111000111101

C

3

= 0000110011001010101011111111

D

3

= 0101011001100111100011110101

C

4

= 0011001100101010101111111100

D

4

= 0101100110011110001111010101

C

5

= 1100110010101010111111110000

D

5

= 0110011001111000111101010101

C

6

= 0011001010101011111111000011

D

6

= 1001100111100011110101010101

C

7

= 1100101010101111111100001100

D

7

= 0110011110001111010101010110

C

8

= 0010101010111111110000110011

D

8

= 1001111000111101010101011001

C

9

= 0101010101111111100001100110

D

9

= 0011110001111010101010110011

C

1 0

= 0101010111111110000110011001

D

1 0

= 1111000111101010101011001100

C

1 1

= 0101011111111000011001100101

D

1 1

= 1100011110101010101100110011

C

1 2

= 0101111111100001100110010101

D

1 2

= 0001111010101010110011001111

C

1 3

= 0111111110000110011001010101

D

1 3

= 0111101010101011001100111100

C

1 4

= 1111111000011001100101010101

D

1 4

= 1110101010101100110011110001

C

1 5

= 1111100001100110010101010111

D

1 5

= 1010101010110011001111000111

C

1 6

= 111100001100110010101010111

D

1 6

= 010101010110011001111000111

(23)

Gunakan perm ut asi PC- 2

14 17 11 24 1 5

3 28 15 6 21 10

23 19 12 4 26 8

16 7 27 20 13 2

41 52 31 37 47 55

30 40 51 45 33 48

44 49 39 56 34 53

46 42 50 36 29 32

Unt uk C1D1 kit a m endapat kan

C1D1 = 1110000 1100110 0101010 1011111 1010101 0110011 0011110 0011110

Diperm ut asi m enj adi

K1 = 000110 110000 001011 101111 111111 000111 000001 110010

(24)

Unt uk subkey yang lain kit a m endapat kan

K2 = 011110 011010 111011 011001 110110 111100 100111 100101

K3 = 010101 011111 110010 001010 010000 101100 111110 011001

K4 = 011100 101010 110111 010110 110110 110011 010100 011101

K5 = 011111 001110 110000 000111 111010 110101 001110 101000

K6 = 011000 111010 010100 111110 010100 000111 101100 101111

K7 = 111011 001000 010010 110111 111101 100001 100010 111100

K8 = 111101 111000 101000 111010 110000 010011 101111 111011

K9 = 111000 001101 101111 101011 111011 011110 011110 000001

K1 0 = 101100 011111 001101 000111 101110 100100 011001 001111

K1 1 = 001000 010101 111111 010011 110111 101101 001110 000110

K1 2 = 011101 010111 000111 110101 100101 000110 011111 101001

K1 3 = 100101 111100 010111 010001 111110 101011 101001 000001

K1 4 = 010111 110100 001110 110111 111100 101110 011100 111010

K1 5 = 101111 111001 000110 001101 001111 010011 111100 001010

K1 6 = 110010 110011 110110 001011 000011 100001 011111 110101

(25)

Enchipering

Set iap blok plaint eks m engalam i 16 kali put aran

enciphering

.

Set iap put aran

enciphering

m erupakan j aringan Feist el

yang secara m at em at is dinyat akan sebagai

L

i

=

R

i – 1

R

i

=

L

i – 1

f

(

R

i – 1

,

K

i

)

Unt uk m enghit ung fungsi f , pert am a kit a perluas set iap blok dari Ri- 1 dari 32 bit m enj adi 48 bit dengan m enggunakan t abel yang m engulang beberapa bit daridi Rn- 1. Tabel ini dikenal dengan fungsi E.

(26)

E- Bit Select ion Table

32 1 2 3 4 5

4 5 6 7 8 9

8 9 10 11 12 13

12 13 14 15 16 17

16 17 18 19 20 21

20 21 22 23 24 25

24 25 26 27 28 29

28 29 30 31 32 1

R0 = 1111 0000 1010 1010 1111 0000 1010 1010 m enj adi

E(R0) = 011110 100001 010101 010101 011110 100001 010101 010101

(27)

Selanj ut nya unt uk m enghit ung

f

XOR hasil dari

E( R

n- 1

) dengan Key K

n

K1 = 000110 110000 001011 101111 111111 000111 000001 110010

E(R0) = 011110 100001 010101 010101 011110 100001 010101 010101

K1E(R0) = 011000 010001 011110 111010 100001 100110 010100 100111

Selanj ut nya gunakan set iap 6 bit hasil dari K1E(R0) unt uk m enj adi alam at t abel yang dinam akan S- Box. Set iap kelom pok 6 bit akan

m em berikan alam at pada m asing- m asing S- box yang berbeda.

Jika dit ulis dengan m at em at is

S1( B1) S2( B2) S3( B3) S4( B4) S5( B5) S6( B6) S7( B7) S8( B8)

La n gk a h 1 1

(28)

Kedelapan S- box

14

4

13

1

2

15 11

8

3

10

6

12

5

9

0

7

0

15

7

4

14

2

13

1

10

6

12 11

9

5

3

8

4

1

14

8

13

6

2

11 15 12

9

7

3

10

5

0

15 12

8

2

4

9

1

7

5

11

3

14 10

0

6

13

S1

15

1

8

14

6

11

3

4

9

7

2

13 12

0

5

10

3

13

4

7

15

2

8

14 12

0

1

10

6

9

11

5

0

14

7

11 10

4

13

1

5

8

12

6

9

3

2

15

13

8

10

1

3

15

4

2

11

6

7

12

0

5

14

9

(29)

10

0

9

14

6

3

15

5

1

13 12

7

11

4

2

8

13

7

0

9

3

4

6

10

2

8

5

14 12 11 15

1

13

6

4

9

8

15

3

0

11

1

2

12

5

10 14

7

1

10 13

0

6

9

8

7

4

15 14

3

11

5

2

12

7 13 14

3

0

6

9 10

1

2

8

5 11 12

4 15

13

8 11

5

6 15

0

3

4

7

2 12

1 10 14

9

10

6

9

0 12 11

7 13 15

1

3 14

5

2

8

4

3 15

0

6 10

1 13

8

9

4

5 11 12

7

2 14

S3

(30)

2

12

4

1

7

10 11

6

8

5

3

15 13

0

14

9

14 11

2

12

4

7

13

1

5

0

15 10

3

9

8

16

4

2

1

11 10 13

7

8

15

9

12

5

6

3

0

14

11

8

12

7

1

14

2

13

6

15

0

9

10

4

5

3

12

1

10

15

9

2

6

8

0

13

3

4

14

7

5

11

10

15

4

2

7

12

9

5

6

1

13

14

0

11

3

8

9

14

15

5

2

8

12

3

7

0

4

10

1

13

11

6

4

3

2

12

9

5

15

10

11

14

1

7

6

0

8

13

S5

(31)

4

11

2

14

15

0

8

13

3

12

9

7

5

10

6

1

13

0

11

7

4

9

1

10

14

3

5

12

2

15

8

6

1

4

11

13

12

3

7

14

10

15

6

8

0

5

9

2

6

11

13

8

1

4

10

7

9

5

0

15

14

2

3

12

13

2

8

4

6

15

11

1

10

9

3

14

5

0

12

7

1

15

13

8

10

3

7

4

12

5

6

11

0

14

9

2

7

11

4

1

9

12

14

2

0

6

10

13

15

3

5

8

2

1

14

7

4

10

8

13

15

12

9

0

3

5

6

11

S7

(32)

Cara Menggunakan S- Box

Misal kit a m enghit ung S1( B) dengan B = 011001 dan

m enggunakan t abel S1

1. Gunakan bit awal dan akhir sebagai penanda baris. Dalam hal ini dengan 01 dim ana desim alnya adalah 1 j adi am bil baris 1

2. Gunakan bit pert engahan ant ara bit awal dan akhir sebagai penanda kolom . Dalam hal ini 1100 dim ana desim alnya adalah 13 j adi am bil kolom ke 13

14

4

13

1

2

15 11

8

3

10

6

12

5

9

0

7

3. Gunakan perpot ongan baris dan kolom sebagai

hasilnya, yang dalam hal ini adalah 5, sehingga hasil dari S1( B) = 0101

14

4

13

1

2

15 11

8

3

10

6

12

5

9

0

7

0

15

7

4

14

2

13

1

10

6

12 11

9

5

3

8

4

1

14

8

13

6

2

11 15 12

9

7

3

10

5

0

(33)

K1E(R0) = 011000 010001 011110 111010 100001 100110 010100 100111.

Sehingga kit a m endapat kan

S1( B1) S2( B2) S3( B3) S4( B4) S5( B5) S6( B6) S7( B7) S8( B8) = 0101 1100 1000 0010 1011 0101 1001 0111

Langkah akhir

(34)

Jadi

R

1

=

L

0

+

f

(

R

0

,

K

1

)

= 1100 1100 0000 0000 1100 1100 1111 1111

0010 0011 0100 1010 1010 1001 1011 1011

= 1110 1111 0100 1010 0110 0101 0100 0100

L

0

=

1100 1100 0000 0000 1100 1100 1111 1111

f

(

R

0

,

K

1

) =

0010 0011 0100 1010 1010 1001 1011 1011

Kit a m endapat kan

Dalam put aran selanj ut nya kit a m endapat kan L

2

= R

1

Dan m enghit ung

R

2

=

L

1

+

f

(

R

1

,

K

2

) dan set erusnya selam a

1 6 pu t a r a n

(35)

Set elah 16 put aran

Jika kit a t elah m enyelesaikan 16 put aran m aka akan m endapat kan

L1 6 = 0100 0011 0100 0010 0011 0010 0011 0100

R1 6 = 0000 1010 0100 1100 1101 1001 1001 0101

Kit a r ever se m enj adi :

R1 6L1 6 = 00001010 01001100 11011001 10010101 01000011 01000010

00110010 00110100

I P- 1 = 10000101 11101000 00010011 01010100 00001111 00001010

10110100 00000101

(36)

Hasil Akhir

I P

- 1

= 10000101 11101000 00010011 01010100

00001111 00001010 10110100 00000101

Jika dalam form at hexadecim al m enj adi

85E813540F0AB405.

Jadi enkripsi dari P = 0123456789ABCDEF

Menj adi

(37)

I m ple m e n t a si

H a r dw a r e

da n

Soft w a r e

D ES

 DES sudah diim plem ent asikan dalam bent uk perangkat keras.

 Dalam bent uk perangkat keras, DES diim plem ent asikan di dalam chip. Set iap det ik chip ini dapat

m engenkripsikan 16,8 j ut a blok ( at au 1 gigabit per det ik) .

(38)

Ke a m a n a n D ES

 I su- isu yang m enj adi perdebat an kont roversial m enyangkut keam anan DES:

(39)

Ke a m a n a n D ES

# Pa n j a n g k u n ci

 Panj ang kunci ekst ernal DES hanya 64 bit at au 8 karakt er, it upun yang dipakai hanya 56 bit . Pada rancangan awal, panj ang kunci yang

diusulkan I BM adalah 128 bit , t et api at as perm int aan NSA, panj ang kunci diperkecil m enj adi 56 bit . Alasan pengurangan t idak dium um kan.

 Tet api, dengan panj ang kunci 56 bit akan t erdapat 256 at au

72.057.594.037.927.936 kem ungkinan kunci. Jika diasum sikan serangan

exhaust ive key sear ch dengan m enggunakan prosesor paralel m encoba set engah dari j um lah kem ungkinan kunci it u, m aka dalam sat u det ik dapat dikerj akan sat u j ut a serangan. Jadi seluruhnya diperlukan 1142 t ahun unt uk m enem ukan kunci yang benar.

 Tahun 1998, Elect r onic Fr ont ier Foundat ion ( EFE) m erancang dan

m em buat perangkat keras khusus unt uk m enem ukan kunci DES secara

exhaust ive sear ch key dengan biaya $250.000 dan diharapkan dapat m enem ukan kunci selam a 5 hari. Tahun 1999, kom binasi perangkat

(40)

Ke a m a n a n D ES

# Jum lah put aran

 Sebenarnya, delapan put aran sudah cukup unt uk

m em buat ciphert eks sebagai fungsi acak dari set iap bit plaint eks dan set iap bit ciphert eks. Jadi, m engapa harus 16 kali put aran?

 Dari penelit ian, DES dengan j um lah put aran yang kurang dari 16 t ernyat a dapat dipecahkan dengan

(41)

Ke a m a n a n D ES

# Kot ak- S

(42)

Referensi :

 Miles E Sm id & Dennis K Brandst ad ( 1988) .The Dat a Encrypt ion St andart Past and Fut ure. Nat ional I nst it ut e of St andards and Technology

 Coppersm it h,D ( 1994) . The Dat a Encrypt ion St andart ( DES) and I t s St rengt h Against At t ack .I BM

Referensi

Dokumen terkait

Dalam masingmasing kategori terdapat beberapa masalah yang dihadapi oleh user, dan tiap user dapat membagi masalah yang dihadapinya dengan menyesuaikan topik yang sudah dibuat

Yang dimaksud dengan “asas berbasis ilmu pengetahuan dan teknologi” adalah bahwa dalam penyelenggaraan penanggulangan bencana harus memanfaatkan ilmu

Terbilang : ( Satu Milyar Enam Ratus Delapan Puluh Dua Juta Empat Ratus Tujuh Puluh Sembilan Ribu Rupiah ) Hasil Evaluasi : LULUS. Demikian untuk diketahui dan atas

[r]

Perbandingan Antara Metode Latihan Neural Activation Dengan Metode Piramida Terbalik Terhadap Peningkatan Power Otot Lengan Atlet UKM Hoki UPI.. Universitas Pendidikan Indonesia |

- Hidrogel kering pada komposisi bahan optimum direndam dalam 50 mL larutan KCl 1 M selama 48 jam - Dikeringkan Hidrogel PPG-CN Hidrogel kering Tahap Optimasi Komposisi CNT.

[r]

Secara umum polychaeta ditemukan melimpah baik pada area tambak maupun vegetasi mangrove kecuali pada vegetasi mangrove stasiun kedua yang hanya memiliki nilai kelimpahan