Kriptografi
<!-- /* Font Definitions */ @font-face {font-family:Wingdings; panose-1:5 0 0 0 0 0 0 0 0 0; mso-font-charset:2; mso-generic-font-family:auto; mso-font-pitch:variable; mso-font-signature:0 268435456 0 0 -2147483648 0;} /* Style Definitions */ p.MsoNormal, li.MsoNormal, div.MsoNormal {mso-style-parent:""; margin:0cm; margin-bottom:.0001pt; mso-pagination:widow-orphan; font-size:12.0pt; font-family:"Times New Roman"; mso-fareast-font-family:"Times New Roman";} h1 {mso-style-next:Normal; margin:0cm; margin-bottom:.0001pt; mso-pagination:widow-orphan; page-break-after:avoid; mso-outline-level:1; font-size:18.0pt; mso-bidi-font-size:12.0pt; font-family:"Times New Roman"; mso-font-kerning:0pt;} h2 {mso-style-next:Normal; margin:0cm; margin-bottom:.0001pt; mso-pagination:widow-orphan; page-break-after:avoid; mso-outline-level:2; font-size:15.0pt; mso-bidi-font-size:12.0pt; font-family:"Times New Roman"; font-weight:normal;} h3 {mso-style-next:Normal; margin:0cm; margin-bottom:.0001pt; text-align:center; mso-pagination:widow-orphan; page-break-after:avoid; mso-outline-level:3; font-size:15.0pt; mso-bidi-font-size:12.0pt; font-family:"Times New Roman"; font-weight:normal;} h4 {mso-style-next:Normal; margin-top:0cm; margin-right:0cm; margin-bottom:0cm; margin-left:36.0pt; margin-bottom:.0001pt; mso-pagination:widow-orphan; page-break-after:avoid; mso-outline-level:4; font-size:15.0pt; mso-bidi-font-size:12.0pt; font-family:"Times New Roman"; font-weight:normal;} h5 {mso-style-next:Normal; margin-top:0cm; margin-right:0cm; margin-bottom:0cm; margin-left:36.0pt; margin-bottom:.0001pt; mso-pagination:widow-orphan; page-break-after:avoid; mso-outline-level:5; font-size:18.0pt; mso-bidi-font-size:12.0pt; font-family:"Times New Roman"; font-style:italic;} h6 {mso-style-next:Normal; margin:0cm; margin-bottom:.0001pt; mso-pagination:widow-orphan; page-break-after:avoid; mso-outline-level:6; font-size:20.0pt; mso-bidi-font-size:12.0pt; font-family:"Times New Roman";} p.MsoHeading7, li.MsoHeading7, div.MsoHeading7 {mso-style-next:Normal; margin-top:0cm; margin-right:0cm; margin-bottom:0cm; margin-left:36.0pt; margin-bottom:.0001pt; text-indent:-36.0pt; mso-pagination:widow-orphan; page-break-after:avoid; mso-outline-level:7; font-size:18.0pt; mso-bidi-font-size:12.0pt; font-family:"Times New Roman"; mso-fareast-font-family:"Times New Roman"; font-weight:bold;} p.MsoHeading8, li.MsoHeading8, div.MsoHeading8 {mso-style-next:Normal; margin-top:0cm; margin-right:0cm; margin-bottom:0cm; margin-left:36.0pt; margin-bottom:.0001pt; text-indent:-36.0pt; mso-pagination:widow-orphan; page-break-after:avoid; mso-outline-level:8; font-size:15.0pt; mso-bidi-font-size:12.0pt; font-family:"Times New Roman"; mso-fareast-font-family:"Times New Roman";} p.MsoHeading9, li.MsoHeading9, div.MsoHeading9 {mso-style-next:Normal; margin-top:0cm; margin-right:0cm; margin-bottom:0cm; margin-left:36.0pt; margin-bottom:.0001pt; text-indent:-36.0pt; mso-pagination:widow-orphan; page-break-after:avoid; mso-outline-level:9; font-size:15.0pt; mso-bidi-font-size:12.0pt; font-family:"Times New Roman"; mso-fareast-font-family:"Times New Roman"; font-style:italic;} p.MsoFooter, li.MsoFooter, div.MsoFooter {margin:0cm; margin-bottom:.0001pt; mso-pagination:widow-orphan; tab-stops:center 216.0pt right 432.0pt; font-size:12.0pt; font-family:"Times New Roman"; mso-fareast-font-family:"Times New Roman";} p.MsoBodyTextIndent, li.MsoBodyTextIndent, div.MsoBodyTextIndent {margin-top:0cm; margin-right:0cm; margin-bottom:0cm; margin-left:36.0pt; margin-bottom:.0001pt; text-indent:27.0pt; mso-pagination:widow-orphan; font-size:15.0pt; mso-bidi-font-size:12.0pt; font-family:"Times New Roman"; mso-fareast-font-family:"Times New Roman";} p.MsoBodyTextIndent2, li.MsoBodyTextIndent2, div.MsoBodyTextIndent2 {margin-top:0cm; margin-right:0cm; margin-bottom:0cm; margin-left:36.0pt; margin-bottom:.0001pt; mso-pagination:widow-orphan; font-size:15.0pt; mso-bidi-font-size:12.0pt; font-family:"Times New Roman"; mso-fareast-font-family:"Times New Roman";} @page Section1 {size:612.0pt 792.0pt; margin:72.0pt 90.0pt 72.0pt 90.0pt; mso-header-margin:36.0pt; mso-footer-margin:36.0pt; mso-paper-source:0;} div.Section1 {page:Section1;} /* List Definitions */ @list l0 {mso-list-id:63843873; mso-list-type:hybrid; mso-list-template-ids:-871445982 67698689 67698691 67698693 67698689 67698691 67698693 67698689 67698691 67698693;} @list l0:level1 {mso-level-number-format:bullet; mso-level-text:; mso-level-tab-stop:36.0pt; mso-level-number-position:left; text-indent:-18.0pt; font-family:Symbol;} @list l1 {mso-list-id:173737728; mso-list-type:hybrid; mso-list-template-ids:1722575594 67698689 67698691 67698693 67698689 67698691 67698693 67698689 67698691 67698693;} @list l1:level1 {mso-level-number-format:bullet; mso-level-text:; mso-level-tab-stop:36.0pt; mso-level-number-position:left; text-indent:-18.0pt; font-family:Symbol;} @list l2 {mso-list-id:188296917; mso-list-type:hybrid; mso-list-template-ids:-1604166522 67698689 67698691 67698693 67698689 67698691 67698693 67698689 67698691 67698693;} @list l2:level1 {mso-level-number-format:bullet; mso-level-text:; mso-level-tab-stop:36.0pt; mso-level-number-position:left; text-indent:-18.0pt; font-family:Symbol;} @list l3 {mso-list-id:213272034; mso-list-type:hybrid; mso-list-template-ids:1090826874 67698703 67698713 67698715 67698703 67698713 67698715 67698703 67698713 67698715;} @list l3:level1 {mso-level-tab-stop:36.0pt; mso-level-number-position:left; text-indent:-18.0pt;} @list l4 {mso-list-id:318702103; mso-list-type:hybrid; mso-list-template-ids:-399111068 -1528012796 67698713 67698715 67698703 67698713 67698715 67698703 67698713 67698715;} @list l4:level1 {mso-level-tab-stop:54.0pt; mso-level-number-position:left; margin-left:54.0pt; text-indent:-18.0pt;} @list l5 {mso-list-id:635717532; mso-list-type:hybrid; mso-list-template-ids:-549429992 67698689 67698691 67698693 67698689 67698691 67698693 67698689 67698691 67698693;} @list l5:level1 {mso-level-number-format:bullet; mso-level-text:; mso-level-tab-stop:36.0pt; mso-level-number-position:left; text-indent:-18.0pt; font-family:Symbol;} @list l6 {mso-list-id:681126658; mso-list-type:hybrid; mso-list-template-ids:1164756916 67698689 67698691 67698693 67698689 67698691 67698693 67698689 67698691 67698693;} @list l6:level1 {mso-level-number-format:bullet; mso-level-text:; mso-level-tab-stop:36.0pt; mso-level-number-position:left; text-indent:-18.0pt; font-family:Symbol;} @list l7 {mso-list-id:827285070; mso-list-type:hybrid; mso-list-template-ids:1354688826 67698689 67698691 67698693 67698689 67698691 67698693 67698689 67698691 67698693;} @list l7:level1 {mso-level-number-format:bullet; mso-level-text:; mso-level-tab-stop:36.0pt; mso-level-number-position:left; text-indent:-18.0pt; font-family:Symbol;} @list l8 {mso-list-id:849837806; mso-list-type:hybrid; mso-list-template-ids:1676307188 67698689 67698691 67698693 67698689 67698691 67698693 67698689 67698691 67698693;} @list l8:level1 {mso-level-number-format:bullet; mso-level-text:; mso-level-tab-stop:36.0pt; mso-level-number-position:left; text-indent:-18.0pt; font-family:Symbol;} @list l9 {mso-list-id:921522897; mso-list-type:hybrid; mso-list-template-ids:1780677626 -1875051978 67698713 67698715 67698703 67698713 67698715 67698703 67698713 67698715;} @list l9:level1 {mso-level-tab-stop:54.0pt; mso-level-number-position:left; margin-left:54.0pt; text-indent:-18.0pt;} @list l10 {mso-list-id:1028070462; mso-list-type:hybrid; mso-list-template-ids:1045346612 67698689 67698691 67698693 67698689 67698691 67698693 67698689 67698691 67698693;} @list l10:level1 {mso-level-number-format:bullet; mso-level-text:; mso-level-tab-stop:36.0pt; mso-level-number-position:left; text-indent:-18.0pt; font-family:Symbol;} @list l11 {mso-list-id:1182549612; mso-list-type:hybrid; mso-list-template-ids:-528557740 67698689 67698691 67698693 67698689 67698691 67698693 67698689 67698691 67698693;} @list l11:level1 {mso-level-number-format:bullet; mso-level-text:; mso-level-tab-stop:36.0pt; mso-level-number-position:left; text-indent:-18.0pt; font-family:Symbol;} @list l12 {mso-list-id:1386828899; mso-list-type:hybrid; mso-list-template-ids:626136668 -736314426 67698713 67698715 67698703 67698713 67698715 67698703 67698713 67698715;} @list l12:level1 {mso-level-start-at:2; mso-level-text:%1; mso-level-tab-stop:216.0pt; mso-level-number-position:left; margin-left:216.0pt; text-indent:-126.0pt;} @list l13 {mso-list-id:1387218067; mso-list-type:hybrid; mso-list-template-ids:-209177794 67698689 67698691 67698693 67698689 67698691 67698693 67698689 67698691 67698693;} @list l13:level1 {mso-level-number-format:bullet; mso-level-text:; mso-level-tab-stop:36.0pt; mso-level-number-position:left; text-indent:-18.0pt; font-family:Symbol;} @list l14 {mso-list-id:1398212610; mso-list-type:hybrid; mso-list-template-ids:-449383142 67698689 67698691 67698693 67698689 67698691 67698693 67698689 67698691 67698693;} @list l14:level1 {mso-level-number-format:bullet; mso-level-text:; mso-level-tab-stop:36.0pt; mso-level-number-position:left; text-indent:-18.0pt; font-family:Symbol;} @list l15 {mso-list-id:1501388597; mso-list-type:hybrid; mso-list-template-ids:2026773526 67698689 67698691 67698693 67698689 67698691 67698693 67698689 67698691 67698693;} @list l15:level1 {mso-level-number-format:bullet; mso-level-text:; mso-level-tab-stop:36.0pt; mso-level-number-position:left; text-indent:-18.0pt; font-family:Symbol;} @list l16 {mso-list-id:1511330673; mso-list-type:hybrid; mso-list-template-ids:-27333406 67698689 67698691 67698693 67698689 67698691 67698693 67698689 67698691 67698693;} @list l16:level1 {mso-level-number-format:bullet; mso-level-text:; mso-level-tab-stop:36.0pt; mso-level-number-position:left; text-indent:-18.0pt; font-family:Symbol;} @list l17 {mso-list-id:1935622781; mso-list-type:hybrid; mso-list-template-ids:-426867724 67698689 67698691 67698693 67698689 67698691 67698693 67698689 67698691 67698693;} @list l17:level1 {mso-level-number-format:bullet; mso-level-text:; mso-level-tab-stop:36.0pt; mso-level-number-position:left; text-indent:-18.0pt; font-family:Symbol;} @list l18 {mso-list-id:1940794733; mso-list-type:hybrid; mso-list-template-ids:-1074338064 -1875051978 67698689 67698715 67698703 67698713 67698715 67698703 67698713 67698715;} @list l18:level1 {mso-level-tab-stop:54.0pt; mso-level-number-position:left; margin-left:54.0pt; text-indent:-18.0pt;} @list l18:level2 {mso-level-number-format:bullet; mso-level-text:; mso-level-tab-stop:90.0pt; mso-level-number-position:left; margin-left:90.0pt; text-indent:-18.0pt; font-family:Symbol;} ol {margin-bottom:0cm;} ul {margin-bottom:0cm;} -->
Data Encryption Standard (DES)
Sejarah DES
· Algoritma DES dikembangkan di IBM dibawah kepemimpinan W.L. Tuchman pada tahun 1972. Algoritma ini didasarkan pada algoritma LUCIFER yang dibuat oleh Horst Feistel.
· Algoritma ini telah disetujui oleh National Bureau of Standard (NBS) setelah penilaian kekuatannya oleh National Security Agency (NSA) Amerika Serikat.
Tinjauan Umum
· DES termasuk ke dalam sistem kriptografi simetri dan tergolong jenis cipher blok.
· DES beroperasi pada ukuran blok 64 bit. DES mengenkripsikan 64 bit plainteks menjadi 64 bit cipherteks dengan menggunakan 56 bit kunci internal (internal key) atau upa-kunci (subkey). Kunci internal dibangkitkan dari kunci eksternal (external key) yang panjangnya 64 bit.
· Skema global dari algoritma DES adalah sebagai berikut (lihat Gambar 1):
1. Blok plainteks dipermutasi dengan matriks permutasi awal (initial permutation atau IP).
2. Hasil permutasi awal kemudian di-enciphering- sebanyak 16 kali (16 putaran). Setiap putaran menggunakan kunci internal yang berbeda.
3. Hasil enciphering kemudian dipermutasi dengan matriks permutasi balikan (invers initial permutation atau IP-1 ) menjadi blok cipherteks.
Plainteks

IP

![]()
16 kali Enciphering
![]()

IP-1
![]()
Cipherteks
Gambar 1. Skema Global Algoritma DES
· Di dalam proses enciphering, blok plainteks terbagi menjadi dua bagian, kiri (L) dan kanan (R), yang masing-masing panjangnya 32 bit. Kedua bagian ini masuk ke dalam 16 putaran DES.
· Pada setiap putaran i, blok R merupakan masukan untuk fungsi transformasi yang disebut f. Pada fungsi f, blok R dikombinasikan dengan kunci internal Ki. Keluaran dai fungsi f di-XOR-kan dengan blok L untuk mendapatkan blok R yang baru. Sedangkan blok L yang baru langsung diambil dari blok R sebelumnya. Ini adalah satu putaran DES.
Secara matematis, satu putaran DES dinyatakan sebagai
Li = Ri – 1
Ri = Li – 1 Å f(Ri – 1, Ki)
Gambar 2 memperlihatkan skema algoritma DES yang lebih rinci.

Gambar 2. Algoritma Enkripsi dengan DS
· Catatlah bahwa satu putaran DES merupakan model jaringan Feistel (lihat Gambar 3).

Gambar 3. Jaringan Feistel untuk satu putaran DES
· Perlu dicatat dari Gambar 2 bahwa jika (L16, R16) merupakan keluaran dari putaran ke-16, maka (R16, L16) merupakan pra-cipherteks (pre-ciphertext) dari enciphering ini. Cipherteks yang sebenarnya diperoleh dengan melakukan permutasi awal balikan, IP-1, terhadap blok pra-cipherteks.
Permutasi Awal
Sebelum putaran pertama, terhadap blok plainteks dilakukan permutasi awal (initial permutation atau IP). Tujuan permutasi awal adalah mengacak plainteks sehingga urutan bit-biit di dalamnya berubah. Pengacakan dilakukan dengan menggunakan matriks permutasi awal berikut ini:
|
58 |
50 |
42 |
34 |
26 |
18 |
10 |
2 |
60 |
52 |
44 |
36 |
28 |
20 |
12 |
4 |
|
62 |
54 |
46 |
38 |
30 |
22 |
14 |
6 |
64 |
56 |
48 |
40 |
32 |
24 |
16 |
8 |
|
57 |
49 |
41 |
33 |
25 |
17 |
9 |
1 |
59 |
51 |
43 |
35 |
27 |
19 |
11 |
3 |
|
61 |
53 |
45 |
37 |
29 |
21 |
13 |
5 |
63 |
55 |
47 |
39 |
31 |
23 |
15 |
7 |
Cara membaca tabel/matriks di atas: dua entry ujung kiri atas (58 dan 50) berarti:
“pindahkan bit ke-58 ke posisi bit 1”
“pindahkan bit ke-50 ke posisi bit 2”, dst
Pembangkitan Kunci Internal
· Karena ada 16 putaran, maka dibutuhkan kunci internal sebanyak 16 buah, yaitu K1, K2, …, K16. Kunci-kunci internal ini dapat dibangkitkan sebelum proses enkripsi atau bersamaan dengan proses enkripsi.
· Kunci internal dibangkitkan dari kunci eksternal yang diberikan oleh pengguna. Kunci eksternal panjangnya 64 bit atau 8 karakter.
· Misalkan kunci eksternal yang tersusun dari 64 bit adalah K.
Kunci eksternal ini menjadi masukan untuk permutasi dengan menggunakan matriks permutasi kompresi PC-1 sebagai berikut:
|
|
|
57 |
49 |
41 |
33 |
25 |
17 |
9 |
1 |
58 |
50 |
42 |
34 |
26 |
18 |
|
|
|
10 |
2 |
59 |
51 |
43 |
35 |
27 |
19 |
11 |
3 |
60 |
52 |
44 |
36 |
|
|
|
63 |
55 |
47 |
39 |
31 |
23 |
15 |
7 |
kirim ke teman | versi cetak
Berita "Komputer Dan Internet" Lainnya
|
Visitors :1607 Org
Hits : 5563 hits
Month : 160 Users