keamanan jaringan dan komputer

Upload: ema-zalfa-ayesha

Post on 04-Apr-2018

242 views

Category:

Documents


0 download

TRANSCRIPT

  • 7/31/2019 Keamanan Jaringan Dan Komputer

    1/69

    Keamanan Jaringan Dan Komputer

    KRIPTOGRAFI

    Cryptography (kriptografi): Kriptografi berasal dari bahasa Yunani,

    terdiri dari dua suku kata yaitu kripto dan graphia. Kripto artinya

    menyembunyikan, sedangkan graphia artinya tulisan. Kriptografi adalah

    ilmu yang mempelajari teknik-teknik matematika yang berhubungan

    dengan aspek keamanan informasi seperti kerahasiaan data, keabsahan

    data, integritas data, serta autentikasi data (Menezes, Oorschot and

    Vanstone, 1997). Kriptografi dapat pula diartikan sebagai ilmu atau seni

    untuk menjaga keamanan pesan. Ketika suatu pesan dikirim dari suatu

    tempat ke tempat lain, isi pesan tersebut mungkin dapat disadap olehpihak lain yang tidak berhak untuk mengetahui isi pesan tersebut. Untuk

    menjaga pesan, maka pesan tersebut dapat diubah menjadi suatu kode

    yang tidak dapat dimengerti oleh pihak lain.Plaintext atau cleartext:

    Pesan yang dapat dibaca atau pesan yang belum disamarkan

    Chipertext: Pesan yang sudah disamarkan.Enkripsi: Proses mengubah

    plaintext jadi chipertext, dengan kata lain menyandikan pesan.Dekripsi:

    Kebalikan dari enkripsi. Yaitu mengubah chipertext menjadi plaintext.Cryptanalysis (kriptoanalisis): Kriptoanalisis adalah kebalikan dari

    kriptografi, yaitu suatu ilmu untuk memecahkan mekanisme kriptografi

    dengan cara mendapatkan kunci dari cipherteks yang digunakan untuk

    mendapatkan plainteks. Cryptology (kriptologi): Kriptologi adalah ilmu

    yang mencakup kriptografi dan kriptoanalisis.

    Cryptosystem (sistem kriptografi) adalah suatu 5-tuple (P, C, K, E,

    D), dimana memenuhi kondisi sebagai berikut.

    P adalah himpunan berhingga plaintekt,

    C adalah himpunan berhingga ciphertekt,

    K adalah himpunan berhingga kunci,

    Untuk setiap K terdapat E dan D. Setiap :PC dan :CP merupakan

    fungsi sedemikian hingga untuk setiap plaintektP.Mungkin kata yang

  • 7/31/2019 Keamanan Jaringan Dan Komputer

    2/69

    kurang familiar bagi yang bukan orang matematika adalah tuple, artinya

    sendiri adalah himpunan pasangan berurutan. Terus maksudnya fungsi

    adalah fungsi matematis seperti yang pernah diajarkan di SMA dulu.

    Salah satu contoh sistem kriptografi yang paling sederhana adalah

    Caesar Chiper, jadi jaman dahulu kala cara ini digunakan untuk

    mengirimkan pesan saat peperangan dimana pesannya disandikan

    dengan cara menggeser huruf misalnya jika digeser tiga maka huruf 'a'

    menjadi 'd', dst...

    Berikut salah satu contoh implementasi Caesar Chiper yang saya

    bikin pake program java, mungkin bukan program yang bagus, bagi

    para programmer java mohon jangan kecewa saya malah butuh saran

    dan kritikannya. Buat yang pengen belajar java silahkan download

    listingnya, lumayan buat belajar GUI ma action event sederhana, trus

    juga ada sedikit manipulasi string dan tentu saja anda bisa belajar

    Caesar Chiper atau mungkin lebih tepat disebut Shift Chiper.

    Data Encryption Standard (DES)

  • 7/31/2019 Keamanan Jaringan Dan Komputer

    3/69

    A. Sejarah DES(Data Encryption Standart)

    Algoritma DES dikembangkan di IBM dibawah kepemimpinan W.L.Tuchman pada tahun 1972. Algoritma ini didasarkan padaalgoritma LUCIFER yang dibuat oleh Horst Feistel.

    Algoritma ini telah disetujui oleh National Bureau of Standard(NBS) setelah penilaian kekuatannya oleh National SecurityAgency (NSA) Amerika Serikat.

    B. Tinjauan Umum

    DES termasuk ke dalam sistem kriptografi simetri dan tergolongjenis cipher blok.

    DES beroperasi pada ukuran blok 64 bit. DES mengenkripsikan 64bit plainteks menjadi 64 bit cipherteks dengan menggunakan 56bit kunci internal (internal key) atau upa-kunci (subkey). Kunciinternal dibangkitkan dari kunci eksternal (external key) yangpanjangnya 64 bit.

    Skema global dari algoritma DES adalah sebagai berikut (lihatGambar 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 internalyang berbeda.

    3. Hasil enciphering kemudian dipermutasi dengan matrikspermutasi balikan (invers initial permutation atau IP-1 ) menjadiblok cipherteks.

    Plainteks

    IP

  • 7/31/2019 Keamanan Jaringan Dan Komputer

    4/69

    16 kali Enciphering

    IP-1

    Cipherteks

    Gambar 1. Skema Global Algoritma DES

    Di dalam proses enciphering, blok plainteks terbagi menjadi duabagian, kiri (L) dan kanan (R), yang masing-masing panjangnya 32bit. Kedua bagian ini masuk ke dalam 16 putaran DES.

    Pada setiap putaran i, blok R merupakan masukan untuk fungsitransformasi yang disebut f. Pada fungsi f, blok R dikombinasikandengan kunci internal Ki. Keluaran dai fungsi f di-XOR-kan denganblok L untuk mendapatkan blok R yang baru. Sedangkan blok Lyang baru langsung diambil dari blok R sebelumnya. Ini adalahsatu putaran DES.

    Secara matematis, satu putaran DES dinyatakan sebagai

    Li = Ri 1Ri = Li 1 f(Ri 1, Ki)

    Gambar 2 memperlihatkan skema algoritma DES yang lebih rinci.

  • 7/31/2019 Keamanan Jaringan Dan Komputer

    5/69

    P l a i n t e k s

    I P

    L0

    R0

    f

    ),( 1001 KRfLR =L 1 = R 0

    K1

    f

    ),( 2112 KRfLR =L 2 = R 1

    K2

    ),( 15141415 KRfLR =L 1 5 = R 1 4

    K1 6

    ),( 16151516 KRfLR = L 1 6 = R 1 5

    I P - 1

    C i p h e r t e k s

    f

    Gambar 2. Algoritma Enkripsi dengan DS

  • 7/31/2019 Keamanan Jaringan Dan Komputer

    6/69

    Catatlah bahwa satu putaran DES merupakan model jaringanFeistel (lihat Gambar 3).

    1iRL

    i - 1

    f

    iRL i

    Ki

    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 yangsebenarnya diperoleh dengan melakukan permutasi awal balikan,IP-1, terhadap blok pra-cipherteks.

    C. Permutasi Awal

    Sebelum putaran pertama, terhadap blok plainteks dilakukanpermutasi awal (initial permutation atau IP). Tujuan permutasi awal

    adalah mengacak plainteks sehingga urutan bit-biit di dalamnyaberubah. Pengacakan dilakukan dengan menggunakan matrikspermutasi awal berikut ini:

    58 50 42 34 26 18 10 2 60 52 44 36 28 20 12 462 54 46 38 30 22 14 6 64 56 48 40 32 24 16 857 49 41 33 25 17 9 1 59 51 43 35 27 19 11 361 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 dan50) berarti:

    pindahkan bit ke-58 ke posisi bit 1pindahkan bit ke-50 ke posisi bit 2, dst

    D. Pembangkitan Kunci Internal

    Karena ada 16 putaran, maka dibutuhkan kunci internal sebanyak16 buah, yaitu K1, K2, , K 16. Kunci-kunci internal ini dapat

  • 7/31/2019 Keamanan Jaringan Dan Komputer

    7/69

    dibangkitkan sebelum proses enkripsi atau bersamaan denganproses enkripsi.

    Kunci internal dibangkitkan dari kunci eksternal yang diberikanoleh 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 denganmenggunakan matriks permutasi kompresi PC-1 sebagai berikut:

    57 49 41 33 25 17 9 1 58 50 42 34 26 1810 2 59 51 43 35 27 19 11 3 60 52 44 3663 55 47 39 31 23 15 7 62 54 46 38 30 2214 6 61 53 45 37 29 21 13 5 28 20 12 4

    Dalam permutasi ini, tiap bit kedelapan (parity bit) dari delapanbyte kunci diabaikan. Hasil permutasinya adalah sepanjang 56 bit,sehingga dapat dikatakan panjang kunci DES adalah 56 bit.

    Selanjutnya, 56 bit ini dibagi menjadi 2 bagian, kiri dan kanan,yang masing-masing panjangnya 28 bit, yang masing-masingdisimpan di dalam C0 dan D0:

    C0: berisi bit-bit dari K pada posisi57, 49, 41, 33, 25, 17, 9, 1, 58, 50, 42, 34, 26, 1810, 2, 59, 51, 43, 35, 27, 19, 11, 3, 60, 52, 44, 36

    D0: berisi bit-bit dari K pada posisi63, 55, 47, 39, 31, 23, 15, 7, 62, 54, 46, 38, 30, 2214, 6, 61, 53, 45, 37, 29, 21, 13, 5, 28, 20, 12, 4

    Selanjutnya, kedua bagian digeser ke kiri (left shift) sepanjangsatu atau dua bit bergantung pada tiap putaran. Operasipergeseran bersifat wrapping atau round-shift. Jumlah pergeseranpada setiap putaran ditunjukkan pada Tabel 1 sbb:

    Tabel 1. Jumlah pergeseran bit pada setiap putaran

    Putaran, i Jumlah pergeseran bit1 12 13 24 2

  • 7/31/2019 Keamanan Jaringan Dan Komputer

    8/69

  • 7/31/2019 Keamanan Jaringan Dan Komputer

    9/69

    Bila jumlah pergeseran bit-bit pada Tabel 1 dijumlahkansemuanya, maka jumlah seluruhnya sama dengan 28, yangsama dengan jumlah bit pada Ci dan Di. Karena itu, setelahputaran ke-16 akan didapatkan kembali C16 = C0 dan D16 =D0.

    K u n c i e k s t e r n a l

    P e r m u t a s i

    P C - 1

    C0

    D0

    L e f t S h i f t L e f t S h i f t

    C1

    D1

    L e f t S h i f t L e f t S h i f t

    P e r m u t a s i

    P C - 2 K 1

    Cj

    Dj

    P e r m u t a s i

    P C - 2 K j

    L e f t S h i f t L e f t S h i f t

    C1 6

    D1 6

    P e r m u t a s i

    P C - 2 K 1 6

    Gambar 4. Proses pembangkitan kunci-kunci internal DES

  • 7/31/2019 Keamanan Jaringan Dan Komputer

    10/69

    Enciphering

    Proses enciphering terhadap blok plainteks dilakukan setelahpermutasi awal (lihat Gambar 1). Setiap blok plainteks mengalami16 kali putaran enciphering (lihat Gambar 2). Setiap putaranenciphering merupakan jaringan Feistel yang secara matematisdinyatakan sebagai

    Li = Ri 1Ri = Li 1 f(Ri 1, Ki)

    Diagram komputasi fungsi f diperlihatkan pada Gambar 5.

  • 7/31/2019 Keamanan Jaringan Dan Komputer

    11/69

    Ri - 1

    3 2 b i t

    E ( Ri - 1

    )

    E k s p a n s i m e n j a d i 4 8 b i t

    4 8 b i t

    K i4 8 b i t

    AKREii=

    )( 1

    S1

    S8

    . . .

    B

    M a t r i k s s u b s t i t u s i

    3 2 b i t

    4 8 b i t

    P ( B )

    3 2 b i t

    Gambar 5. Rincian komputasi fungsi f E adalah fungsi ekspansi yang memperluas blok Ri 1 yang

    panjangnya 32-bit menjadi blok 48 bit. Fungsi ekspansidirealisasikan dengan matriks permutasi ekspansi sbb:

    32 1 2 3 4 5 4 5 6 7 8 98 9 10 11 12 13 12 13 14 15 16 1716 17 18 19 20 21 20 21 22 23 24 2524 25 26 27 28 29 28 29 30 31 32 1

    Selanjutnya, hasil ekpansi, yaitu E(Ri 1), yang panjangnya 48 bit

    di-XOR-kan dengan Ki yang panjangnya 48 bit menghasilkanvektor A yang panjangnya 48-bit:

    E(Ri 1) Ki = A

    Vektor A dikelompokkan menjadi 8 kelompok, masing-masing 6bit, dan menjadi masukan bagi proses substitusi. Proses substitusidilakukan dengan menggunakan delapan buah kotak-S (S-box), S1

  • 7/31/2019 Keamanan Jaringan Dan Komputer

    12/69

  • 7/31/2019 Keamanan Jaringan Dan Komputer

    13/69

    12 1 10 15 9 2 6 8 0 13 3 4 14 7 5 1110 15 4 2 7 12 9 5 6 1 13 14 0 11 3 89 14 15 5 2 8 12 3 7 0 4 10 1 13 11 64 3 2 12 9 5 15 10 11 14 1 7 6 0 8 13

    S7:4 11 2 14 15 0 8 13 3 12 9 7 5 10 6 113 0 11 7 4 9 1 10 14 3 5 12 2 15 8 61 4 11 13 12 3 7 14 10 15 6 8 0 5 9 26 11 13 8 1 4 10 7 9 5 0 15 14 2 3 12S8:

    13 2 8 4 6 15 11 1 10 9 3 14 5 0 12 71 15 13 8 10 3 7 4 12 5 6 11 0 14 9 27 11 4 1 9 12 14 2 0 6 10 13 15 3 5 82 1 14 7 4 10 8 13 15 12 9 0 3 5 6 11

    Keluaran proses substitusi adalah vektor B yang panjangnya 48bit. Vektor B menjadi masukan untuk proses permutasi. Tujuanpermutasi adalah untuk mengacak hasil proses substitusi kotak-S.Permutasi dilakukan dengan menggunakan matriks permutasi P(P-box) sbb:

    16 7 20 21 29 12 28 17 1 15 23 26 5 8 31 102 8 24 14 32 27 3 9 19 13 30 6 22 11 4 25

    Bit-bit P(B) merupakan keluaran dari fungsi f. Akhirnya, bit-bit P(B) di-XOR-kan dengan Li 1 untuk mendapatkanRi (lihat Gambar 6):

    Ri = Li 1 P(B)

    Jadi, keluaran dari putaran ke-i adalah

    (Li, Ri) = (Ri 1 , Li 1 P(B))

  • 7/31/2019 Keamanan Jaringan Dan Komputer

    14/69

    f

    Li - 1

    Ri

    3 2 b i t

    3 2 b i t

    Gambar 6. Skema perolehan RiE. Permutasi Terakhir (Inverse Initial Permutation)

    Permutasi terakhir dilakukan setelah 16 kali putaran terhadap

    gabungan blok kiri dan blok kanan.

    Proses permutasi menggunakan matriks permutasi awal balikan(inverse initial permutation atau IP-1 ) sbb:

    40 8 48 16 56 24 64 32 39 7 47 15 55 23 63 3138 6 46 14 54 22 62 30 37 5 45 13 53 21 61 2936 4 44 12 52 20 60 28 35 3 43 11 51 19 59 2734 2 42 10 50 18 58 26 33 1 41 9 49 17 57 25

    F. Dekripsi

    Proses dekripsi terhadap cipherteks merupakan kebalikan dariproses enkripsi. DES menggunakan algoritma yang sama untukproses enkripsi dan dekripsi. Jika pada proses enkripsi urutankunci internal yang digunakan adalah K1, K2, , K16, maka padaproses dekripsi urutan kunci yang digunakan adalah K16, K15, , K1.

    Untuk tiap putaran 16, 15, , 1, keluaran pada setiap putaran

    deciphering adalah

    Li = Ri 1Ri = Li 1 f(Ri 1, Ki)

    yang dalam hal ini, (R16, L16) adalah blok masukan awal untukdeciphering. Blok (R16, L16) diperoleh dengan mempermutasikancipherteks dengan matriks permutasi IP-1. Pra-keluaran dari

  • 7/31/2019 Keamanan Jaringan Dan Komputer

    15/69

    deciphering adalah adalah (L0, R0). Dengan permutasi awal IP akandidapatkan kembali blok plainteks semula.

    Tinjau kembali proses pembangkitan kunci internal pada Gambar4. Selama deciphering, K16 dihasilkan dari (C16, D16) dengan

    permutasi PC-2. Tentu saja (C16, D16) tidak dapat diperolehlangsung pada permulaan deciphering. Tetapi karena (C16, D16) =(C0, D0), maka K16 dapat dihasilkan dari (C0, D0) tanpa perlu lagimelakukan pergeseran bit. Catatlah bahwa (C0, D0) yangmerupakan bit-bit dari kunci eksternal K yang diberikan penggunapada waktu dekripsi.

    Selanjutnya, K15 dihasilkan dari (C15, D15) yang mana (C15, D15)diperoleh dengan menggeser C16 (yang sama dengan C0) dan D16(yang sama dengan C0) satu bit ke kanan. Sisanya, K14 sampai K1dihasilkan dari (C14, D14) sampai (C1, D1). Catatlah bahwa (Ci 1, Di 1) diperoleh dengan menggeser Ci dan Di dengan cara yang samaseperti pada Tabel 1, tetapi pergeseran kiri (left shift) digantimenjadi pergeseran kanan (right shift).

    G. Mode DES

    DES dapat dioperasikan dengan mode ECB, CBC, OFB, dan CFB.Namun karena kesederhanaannya, mode ECB lebih seringdigunakan pada paket program komersil meskipun sangat rentanterhadap serangan.

    Mode CBC lebih kompleks daripada EBC namun memberikantingkat keamanan yang lebih bagus daripada mode EBC. ModeCBC hanya kadang-kadang saja digunakan.

    H. Implementasi Hardware dan Software DES

    DES sudah diimplementasikan dalam bentuk perangkat keras. Dalam bentuk perangkat keras, DES diimplementasikan di dalam

    chip. Setiap detik chip ini dapat mengenkripsikan 16,8 juta blok(atau 1 gigabit per detik).

    Implementasi DES ke dalam perangkat lunak dapat melakukanenkripsi 32.000 blok per detik (pada komputer mainframe IBM3090).

  • 7/31/2019 Keamanan Jaringan Dan Komputer

    16/69

    I. Keamanan DES

    Isu-isu yang menjadi perdebatan kontroversial menyangkutkeamanan DES:1. Panjang kunci

    2. Jumlah putaran3. Kotak-S

    J. Panjang kunci

    Panjang kunci eksternal DES hanya 64 bit atau 8 karakter, itupunyang dipakai hanya 56 bit. Pada rancangan awal, panjang kunciyang diusulkan IBM adalah 128 bit, tetapi atas permintaan NSA,

    panjang kunci diperkecil menjadi 56 bit. Alasan pengurangantidak diumumkan.

    Tetapi, dengan panjang kunci 56 bit akan terdapat 256 atau72.057.594.037.927.936 kemungkinan kunci. Jika diasumsikanserangan exhaustive key search dengan menggunakan prosesorparalel mencoba setengah dari jumlah kemungkinan kunci itu,maka dalam satu detik dapat dikerjakan satu juta serangan. Jadiseluruhnya diperlukan 1142 tahun untuk menemukan kunci yangbenar.

    Tahun 1998, Electronic Frontier Foundation (EFE) merancang danmembuat perangkat keras khusus untuk menemukan kunci DESsecara exhaustive search key dengan biaya $250.000 dandiharapkan dapat menemukan kunci selama 5 hari. Tahun 1999,kombinasi perangkat keras EFE dengan kolaborasi internet yangmelibatkan lebih dari 100.000 komputer dapat menemukan kunciDES kurang dari 1 hari.

    Jumlah putaran

    Sebenarnya, delapan putaran sudah cukup untuk membuatcipherteks sebagai fungsi acak dari setiap bit plainteks dan setiapbit cipherteks. Jadi, mengapa harus 16 kali putaran?

    Dari penelitian, DES dengan jumlah putaran yang kurang dari 16ternyata dapat dipecahkan dengan known-plaintext attack lebihmangkus daripada dengan brute force attack.

    Kotak-S

  • 7/31/2019 Keamanan Jaringan Dan Komputer

    17/69

    Pengisian kotak-S DES masih menjadi misteri tanpa ada alasanmengapa memilih konstanta-konstanta di dalam kotak itu.

    Kunci Lemah dan Kunci Setengah Lemah

    DES mempunyai beberapa kunci lemah (weak key). Kunci lemahmenyebabkan kunci-kunci internal pada setiap putaran sama (K1= K2 = = K 16). Akibatnya, enkripsi dua kali berturut-turutterhadap plainteks menghasilkan kembali plainteks semula.

    Kunci lemah terjadi bila bit-bit di dalam Ci dan Di semuanya 0 atau1, atau setengah dari kunci seluruh bitnya 1 dan setengah lagiseluruhnya 0.

    Kunci eksternal (dalam notasi HEX) yang menyebabkan terjadinyakunci lemah adalah (ingat bahwa setiap bit kedelapan adalah bitparitas).

    Kunci lemah (dengan bit paritas) Kunci sebenarnya

    0101 0101 0101 0101 0000000 00000001F1F 1F1F 1F1F 1F1F 0000000 FFFFFFFE0E0 E0E0 F1F1 F11F FFFFFFF 0000000FEFE FEFE FEFE FEFE FFFFFFF FFFFFFF

    Selain kunci lemah, DES juga mempunyai sejumlah pasangankunci setengah-lemah (semiweak key). Pasangan kunci setengah-lemah mengenkripsikan plainteks menjadi cipherteks yang sama.Sehingga, satu kunci dalam pasangan itu dapat mendekripsipesan yang dienkripsi oleh kunci yang lain di dalam pasangan itu.

    Kunci setengah-lemah terjadi bila:1. Register C dan D berisi bit-bit dengan pola 01010101 atau

    101010102. Register yang lain (C atau D) berisi bit-bit dengan pola 0000

    0000, 11111111, 01010101, atau 10101010

    Ada 6 pasang kunci setengah lemah (dalam notasi HEX):a. 01FE 01FE 01FE 01FE dan FE01 FE01 FE01 FE01b. 1FE0 1FE0 0EF1 0EF1 dan E01F E01F F10E F10Ec. 01E0 01E0 01F1 01F1 dan E001 E001 F101 F101d. 1FFE 1FFE 0EFE 0EFE dan FE1F FE1F FE0E FE0Ee. 011F 011F 010E 010E dan 1F01 1F01 0E01 0E01

  • 7/31/2019 Keamanan Jaringan Dan Komputer

    18/69

    f. E0FE E0FE F1FE F1FE dan FEE0 FEE0 FEF1 FEF1

    AES (Advanced Encryption Standard)

    I.Pengertian AES

    AES (Advanced Encryption Standard) adalahlanjutan dari

    algoritma enkripsi standar DES(Data Encryption Standard) yang masaberlakunya dianggap telah usai

    karena faktorkeamanan. Kecepatan komputer yang sangatpesat

    dianggap sangat membahayakan DES,sehingga pada tanggal 2 Maret

    tahun 2001ditetapkanlah algoritma baru Rijndael sebagaiAES.

    Rijndael dipilih dari 15 algoritma yang didaftarkanoleh berbagai

    kalangan industri dan akademik diseluruh dunia ke NIST (National

    Institute ofStandard and Technology), Amerika.Tulisan ini bersifat

    review pengetahuanmengenai desain algoritma enkripsi standar

    internasional AES. Pada makalah ini akandijelaskan berbagai komponen

    yang terdapatdi dalam AES, dan

    fungsikomponenkomponentersebut.Kriteria pemilihan AES

    didasarkanpada 3kriteria utama yaitu : keamanan, harga,

  • 7/31/2019 Keamanan Jaringan Dan Komputer

    19/69

    dankarakteristik algoritma beserta implementasinya. Keamanan

    merupakan faktor terpenting dalam evaluasi (minimal seamana triple

    DES), yang meliputi ketahanan terhadap semua analisis sandi yang

    telah diketahui dan diharapkan dapat menghadapi analisis sandi yang

    belum diketahui. Disamping itu, AES juga harus dapat digunakan secara

    bebas tanpa harus membayar royalti, dan juga murah untuk

    diimplementasikan

    pada smart card yang memiliki ukuran memori kecil. AES juga

    harus efisien dan cepat (minimal secepat Triple DES) dijalankan

    dalamberbagai mesin 8 bit hingga 64 bit, danberbagai perangkat

    lunak.DES menggunakan stuktur Feistel yang memiliki kelebihan bahwa

    struktur enkripsi dandekripsinya sama, meskipun menggunakan fungsi F

    yang tidak invertibel. Kelemahan Feistel yang utama adalah bahwa pada

    setiap ronde, hanya setengah data yang diolah. Sedangkan AES

    menggunakan struktur SPN (Substitution Permutation Network) yang

    memiliki derajat paralelisme yang lebih besarsehingga diharapkan lebih

    cepat dari pada Feistel.Kelemahan SPN pada umumnya (termasuk pada

    Rijndael) adalah berbedanya struktur enkripsi dandekripsi sehingga

    diperlukan dua algoritma yang berbeda untuk enkripsi dan dekripsi. Dantentu pula tingkat keamanan enkripsi dan dekripsinya

    menjadi berbeda. AES[4] memiliki blok masukan dan keluaran serta

    kunci 128 bit. Untuk tingkat keamanan yang lebih tinggi, AES dapat

    menggunakan kunci 192 dan256 bit. Setiap masukan 128 bit plaintext

    dimasukkan ke dalam state yang berbentuk bujursangkar berukuran 4x4

    byte. State ini di-XOR dengan key dan selanjutnya diolah 10 kali dengan

    subtitusi-transformasi linear-Addkey. Dan di akhir

    diperoleh ciphertext.

    II.OPERASI RIJNDAEL (AES)

    Berikut ini adalah operasi Rijndael (AES) yangmenggunakan 128

    bit kunci: Ekspansi kunci utama (dari 128 bit menjadi1408

    bit)Pencampuran subkey. Ulang dari i=1 sampai i=10 Transformasi

  • 7/31/2019 Keamanan Jaringan Dan Komputer

    20/69

    ByteSub (subtitusi per byte)ShiftRow (Pergeseren byte

    perbaris)MixColumn (Operasi perkalian GF(2) per

    kolom) Pencampuran subkey (dengan XOR) Transformasi : ByteSub

    dan ShiftRow Pencampuran subkey

    III. DESAIN AES

    Ekspansi kunci utama bertujuan untuk memperoleh subkey

    sebanyak 1280 bit,sedangkan user hanya diminta memberikan

    128 bit key. Pencampuran subkey berupa operasi XOR antara subkey

    dengan state (plaintext atau cipher antara).Substitusi dapat dilakukan

    dengan melihat tabel kotak-substitusi jika diperlukan operasi

    yang cepat, namun tabel ini membutuhkan ruang yang lebih besar pada

    implementasi perangkat keras. Substitusi juga dapat diperoleh dengan

    operasi inversi masukan dalam GF(28) dalam mod m(x) di mana m(x) =

    x8 + x4 + x3 + x + 1, dan hasilnya kemudian dikalikan dengan matriks

    L berukuran 8x8 dalam GF(2) seperti berikut :

    1 0 0 0 1 1 1 1

    1 1 0 0 0 1 1 11 1 1 0 0 0 1 1

    1 1 1 1 0 0 0 1

    1 1 1 1 1 0 0 0

    0 1 1 1 1 1 0 0

    0 0 1 1 1 1 1 0

    0 0 0 1 1 1 1 1

    L =

    Operasi ini dilakukan dalam mod 257d.

    Hasilnya di-XOR-kan dengan konstanta

    c=01100011.

    Masukan 0 dipetakan ke 0 pula.

  • 7/31/2019 Keamanan Jaringan Dan Komputer

    21/69

    Secara formal[1], proses subtitusi dapat

    dinyatakan sebagai berikut :

    1 : F

    _

    F, f

    { 1 0

    0 0

    f if f

    if f

    -

    =

    L : f

    (x4 + x3 + x2 + x + 1)f mod x8 + 1

    2

    : F

    _

    F, f_

    x6 + x5 + x + 1 + f

    Di mana permutasi

    dari grup simetri 256

    elemen dipecah menjadi 3 permutasi

    1, L dan

    2

    Contoh :

  • 7/31/2019 Keamanan Jaringan Dan Komputer

    22/69

    Masukan kotak-S berupa x = 98hex = 100110002 =x7 + x4 +x3,

    maka cari x-1. x.x-1 mod m(x) = 1.Diperoleh x-1 = 2Ax. Lalu x-1.L + c =

    46x. Sehingga bila masukan kotak-S x = 98x, maka keluarannya adalah

    46x.Operasi shiftrow dilakukan dengan menggeser baris kedua ke kiri

    satu byte, baris ketiga kekiri dua byte, baris ketiga ke kiri tiga byte, dan

    baris pertama tidak digeser. Operasi Mixcolumn dilakukan dengan

    mengambil setiap kolom yang diperlakukan sebagai vektor kolom

    GF(28) dan dikalikan dengan matrik

    02 03 01 01

    01 02 03 01

    01 01 02 03

    03 01 01 02

    mod (x4+1)

    IV.NALISIS DESAIN AES

    AES didesain berdasarkan wide trail strategy yang dicetuskan

    pendesain Rijndael, Daemen, dalam disertasinya. Strategi ini

    mengusulkan agarcipher terdiri dari tiga komponen utama :

    Infomatek Volume 5

    pencampuran kunci, transformasi tidak linear dan transformasi

    linear. Pencampuran kunci bertujuan agar keamanan algoritma tidak

    terletak pada dirahasiakannya algoritma,melainkan pada kerahasiaan

    kunci. Transformasi nonlinear bertujuan agar bila diketahui keluaran,

    maka tidak dapat diketahui masukannya. Hal ini dapat dilakukan dengan

    kotak-S. Transformasi linear bertujuan agar sebanyak mungkintransfomasi nonlinear yang aktif. Dengan memisahkan transformasi

    linear dengan non linear, diharapkan kita dapatmendesain transformasi

    nonlinear terbebas dari transformasi linear dan sebaliknya. Daemen

    menekankan betapa perlunya desain transformasi linear yang baik.

    Analisis sandi pada DES menunjukkan betapa buruknya transformasi

  • 7/31/2019 Keamanan Jaringan Dan Komputer

    23/69

    linear pada DES (permutasi) sehingga tidak dapat menahan analisis

    sandi linear dan diferensial. Pada awal dan akhir cipher, diberikan

    operasi Pre-whitening dan post-whitening,

    yangberupaXORplaintext/ciphertext dengansubkey. Operasi ini

    bertujuan meningkatkan keamanan seperti halnya pada DES-X.

    Sedangkan pada awal dan akhir DES hanyaterdapat permutasi yang

    tidak meningkatkankeamanan.

    Kotak Substitusi

    Kotak-S pada AES didesain dengan rumusanmatematika untuk

    menghilangkan kecurigaan akan ditanamnya backdoor pada kotak-S.

    Penggunaan inversi x-1 pada GF(28) dikarenakan ketahanan operasi ini

    terhadap analisis sandi linear dan diferensial. Maksimum peluang

    propagasi diferensialnya DPmaks = 2-6 dan korelasi linear

    maksimumnya LPmaks = 2-3. Meskipun inversi ini sudah mengamankan

    AES dari analisis sandi diferensial (ASD) dan linear (ASL), namun karena

    kesederhanaannya, maka dikuatirkan kotak-S ini mudah diserang

    dengan algebraattack, khususnya interpolation attack. Karena

    itulah ditambahkan transformasi linear yang memiliki sifat tidakmempengaruhi ketahanan terhadap ASD dan ASL, namun

    menghilangkan kesempatan penyerang untuk mengeksploitasi

    kesederhanaan aljabar AES. Karena itu dikalikanlah dengan matrik L

    dalam GF(2). Ketidakkompatibelan operasi antara GF(28) dan

    GF(2) ini mempersulit serangan aljabar terhadap

    AES. Kemudian, untuk menghindari pemetaan 0 ke 0, maka

    ditambahkan konstanta c. Pemetaan 0 ke 0 dalam kotak-S pada DESmembuat DES[3] rentan terhadap serangan ASD dan ASL. Dalam ASD,

    pemetaan semacam ini memudahkan penyerang mendapatkan

    karakteristik iteratif sehingga DES dapat dipecahkan. Kotak-S juga

    didesain agar memungkinkan operasi berjalan secara paralel penuh.

  • 7/31/2019 Keamanan Jaringan Dan Komputer

    24/69

    Pada setiap ronde, ke-16 kotak-S AES dapat dioperasikan bersamaan,

    khususnya pada

    Desain AES (Advanced Encrypion Standart)

    perangkat keras, sehingga operasi dapatberjalan dengan sangat

    cepat. AES hanya memiliki satu macam kotak-S, sehingga menghemat

    jumlah gerbang yang diperlukan pada perangkat keras. Kotak-S ini juga

    invertible sehingga inversinya dapat digunakan pada proses dekripsi.

    Berikut ini adalah ringkasan kriteria kotak-S

    a. Invertibility (untuk dekripsi)

    b. Minimisasi korelasi antara kombinasi linear bit-bit masukan dan

    kombinasi linear bit-bit keluaran (menahan ASL)

    c. Minimisasi nilai terbesar pada tabel XOR (menahan ASD)

    d. Kompleksitas ekspresi aljabar padaGF(28) (diperoleh

    dengantambahan L untuk menghalangi interpolation attack)

    e. Kesederhanaan deskripsi (mudah analisisnya)

    Operasi Mixcolumns

    Bersama dengan operasi ShiftRows, MixColumn merupakantransformasi linear yang bertujuan untuk menyebarkan pengaruh

    transformasi nonlinear ke sebanyak mungkin komponen nonlinear di

    ronde selanjutnya. Bila shiftRows bertujuan menyebarkan pada arah

    baris, maka MixColumn bertujuan menyebarkan ke arah kolom. Dengan

    perpaduan dua operasi ini, diperolehlah difusi

    yang sangat baik. Dalam MixColumn diperkenalkan konsep jumlah

    cabang (yang dicetuskan Daemen dalam disertasinya[5]) entuk matrikM. Bila jumlah koefisien tidak-nol dalam vektor a dinyatakandengan

    wb(a), maka untuk ab= min { wb (a b) + wb (Ma Mb) } Matrik

    MixColumn M memiliki= 5. Artinyabahwa beda tidak nol dalam satu

    byte akan disebarkan paling sedikit ke beda tidak nol dalam empat byte,

    seperti terlihat pada gambar 1. Dari gambar 1 terlihat bahwa ASD dan

  • 7/31/2019 Keamanan Jaringan Dan Komputer

    25/69

    ASL untuk 4 ronde ke atas akan melibatkan sedikitnya 21 kotak-S aktif,

    sehingga DPmaks = (2-6)21 = 2-126 danLPmaks = 2(21-1)(2-3)21 =

    2202-63 = 2-43.Gambar 1. ASD dan ASL AES

    KRITERIA EKSPANSI KUNCI

    Subkey pada tiap ronde dapat diperoleh dari umus :W[i] = W[i-6]

    W[i-1]W[6i] = W[6i-6] f(W[6i-1]) i mana f() merupakan fungsi

    penggunaankotak-S dan penambahan konstanta ronde.Penjadwalan

    kunci dapat diimplementasikan anpa eksplisit menggunakan array W.

    Jikajumlah yang tersedia kecil, maka kunci perronde dapat dihitung on-

    the-flydan hanya embutuhkan buffer sebesar 64 byte.

    Rekursi ekspansi kunci bersifat invertible. Iniberarti bahwa mengetahui

    4 word (64 byte) erurutan dari kunci terekspansi akan dapat

    membangkitkan seluruh tabel subkey. eskipun demikian, mengetahui

    sebagian bitsubkey (kurang dari 4 word) tidak akanmengijinkan

    mengetahui bit-bit subkey ataukey yang lain. Ekspansi kunci sederhana

    danefisien untuk banyak prosesor. Konstanta perronde menghilangkan

    sifat simetri. Substitusi padaekspansi

    uncimemberikanketidaklinearansehingga dapat menghindari related-key

    attack.

  • 7/31/2019 Keamanan Jaringan Dan Komputer

    26/69

    Digital Certificate

    Selalu ada keragu-raguan di sisi pengguna ketika akan ditanya

    mengenai informasi pribadi di situs kita. Sebagian besar pengguna internet

    meninggalkan situs yang sedang diaksesnya karena diminta informasi

    pribadinya pada halaman yang tidak dilengkapi oleh Digital

    Certificate.Tidak ada cara yang lebih tepat bagi kita, pemilik situs, untuk

    mendapatkan kepercayaan pengguna dalam hal transaksi data, kecuali

    dengan memasang sebuah SSL Certificate dari Certificate Authorityyang

    terpercaya.Magnet Web Hosting menawarkan Digital Certificate dari

    Thawte dengan pilihan skalabilitas dan harga yang sesuai dengan

    kebutuhan anda

    Fitur Digital Certificate dari Thawte

    FiturSSL 123

    Certificate

    Web Server

    Certificate

    SGC

    Supercert

    Wildcard

    Server

    Certificate

    Step Up tdk tdk ya tdk

    Verifikasi Domain Verifikasi Verifikasi Verifikasi

    http://www.thawte.com/http://www.thawte.com/http://www.thawte.com/http://www.thawte.com/http://www.thawte.com/http://www.thawte.com/
  • 7/31/2019 Keamanan Jaringan Dan Komputer

    27/69

    Check

    Instant

    Otentikasi

    Bisnis

    Otentikasi

    Bisnis

    Otentikasi

    Bisnis

    Waktu Penerbitan

    * 1 hari 2 hari 2 hari 2 hari

    Biaya @ 2

    Tahun950.000 2.650.000 6.850.000 11.400.000

    Biaya @ 1 Tahun 600.000 1.550.000 4.000.000 7.200.000

    Perpanjangan

    @ 2 Tahun 950.000 2.500.000 5.900.000 11.400.000

    @ 1 Tahun 600.000 1.450.000 3.150.000 7.200.000

    Lisensi

    Tambahan

    @ 2 Tahun 700.000 1.700.000 4.750.000 8.150.000

    @ 1 Tahun 450.000 900.000 2.650.000 4.750.000

    Order Order Order Order

    * Waktu penerbitan akan tergantung kepada proses

    verifikasi bisnis terhadap Digital Certificate yang

    bersangkutan.

    Brand dengan Kualitas Terbaik

    Thawte merupakan brand yang dikenal dengan baik dalam industri

    Digital Certificate. Dengan Thawte's Trusted Seal anda akan mendapatkan

    http://manage.magnet-id.com/order.php?step=2&pid=10http://manage.magnet-id.com/order.php?step=2&pid=11http://manage.magnet-id.com/order.php?step=2&pid=12http://manage.magnet-id.com/order.php?step=2&pid=13http://manage.magnet-id.com/order.php?step=2&pid=10http://manage.magnet-id.com/order.php?step=2&pid=11http://manage.magnet-id.com/order.php?step=2&pid=12http://manage.magnet-id.com/order.php?step=2&pid=13
  • 7/31/2019 Keamanan Jaringan Dan Komputer

    28/69

    kemudahan dalam menjalin kepercayaan dengan pengunjung situs dan

    pengguna layanan anda.

    Pilihan Sesuai dengan Kebutuhan

    Thawte memberikan pilihan dan tipe Digital Certificate untuk

    disesuaikan dengan kebutuhan anda. Semua akan tergantung kepada

    usaha yang anda jalankan dan perhatian anda terhadap pentingnya

    keamanan transaksi data pengguna layanan anda.

    Thawte Trusted Site Seal

    Dengan memilik Digital CertificateThawte, anda dapatmemasangThawte Trusted Site Seal di situs anda. Seal ini memberikan

    kenyamanan dan perasaan aman bagi pengunjung situs anda.

  • 7/31/2019 Keamanan Jaringan Dan Komputer

    29/69

    IP Security

    IPSec (singkatan dari IP Security) adalah sebuah protokol yang

    digunakan untuk mengamankan transmisi datagram dalam sebuah

    internetwork berbasis TCP/IP. IPSec mendefiniskan beberapa standar

    untuk melakukan enkripsi data dan juga integritas data pada lapisan

    kedua dalam DARPA Reference Model ( internetwork layer ). IPSec

    melakukan enkripsi terhadap data pada lapisan yang sama dengan

    protokol IP dan menggunakan teknik tunneling untuk mengirimkan

    informasi melalui jaringan Internet atau dalam jaringan Intranet secara

    aman. IPSec didefinisikan oleh badan Internet Engineering Task Force

    (IETF) dan diimplementasikan di dalam banyak sistem operasi. Windows

    2000 adalah sistem operasi pertama dari Microsoft yang mendukung

    IPSec.

    IPSec diimplementasikan pada lapisan transport dalam OSI

    Reference Model untuk melindungi protokol IP dan protokol-protokol

    yang lebih tinggi dengan menggunakan beberapa kebijakan keamanan

    yang dapat dikonfigurasikan untuk memenuhi kebutuhan keamanan

    pengguna, atau jaringan. IPSec umumnya diletakkan sebagai sebuah

    lapsian tambahan di dalam stack protokol TCP/IP dan diatur oleh setiap

    kebijakan keamanan yang diinstalasikan dalam setiap mesin komputer

    dan dengan sebuah skema enkripsi yang dapat dinegosiasikan antara

    pengirim dan penerima. Kebijakan-kebijakan keamanan tersebut berisi

    kumpulan filter yang diasosiasikan dengan kelakuan tertentu. Ketika

    sebuah alamat IP, nomor port TCP dan UDP atau protokol dari sebuah

  • 7/31/2019 Keamanan Jaringan Dan Komputer

    30/69

    paket datagram IP cocok dengan filter tertentu, maka kelakukan yang

    dikaitkan dengannya akan diaplikasikan terhadap paket IP tersebut.

    Dalam sistem operasi Windows 2000, Windows XP, dan Windows

    Server 2003, kebijakan keamanan tersebut dibuat dan ditetapkan padalevel domain Active Directory atau pada host individual dengan

    menggunakan snap-in IPSec Management dalam Microsoft Management

    Console (MMC). Kebijakan IPSec tersebut, berisi beberapa peraturan

    yang menentukan kebutuhan keamanan untuk beberapa bentuk

    komunikasi. Peraturan-peraturan tersebut digunakan ntuk memulai dan

    mengontrol komunikasi yang aman berdasarkan sifat lalu lintas IP,

    sumber lalu lintas tersebut dan tujuannya. Peraturan-peraturan tersebutdapat menentukan metode-metode autentikasi dan negosiasi, atribut

    proses tunneling, dan jenis koneksi.

    Untuk membuat sebuah sesi komunikasi yang aman antara dua

    komputer dengan menggunakan IPSec, maka dibutuhkan sebuah

    framework protokol yang disebut dengan ISAKMP/Oakley. Framework

    tersebut mencakup beberapa algoritma kriptografi yang telah

    ditentukan sebelumnya, dan juga dapat diperluas dengan

    menambahkan beberapa sistem kriptografi tambahan yang dibuat oleh

    pihak ketiga. Selama proses negosiasi dilakukan, persetujuan akan

    tercapai dengan metode autentikasi dan kemanan yang akan

    digunakan, dan protokol pun akan membuat sebuah kunci yang dapat

    digunakan bersama (shared key) yang nantinya digunakan sebagi kunci

    enkripsi data. IPSec mendukung dua buah sesi komunikasi keamanan,

    yakni sebagai berikut:

    protokol Authentication Header (AH): menawarkan autentikasi

    pengguna dan perlindungan dari beberapa serangan (umumnya

    serangan man in the middle), dan juga menyediakan fungsi

    autentikasi terhadap data serta integritas terhadap data. Protokol

  • 7/31/2019 Keamanan Jaringan Dan Komputer

    31/69

    ini mengizinkan penerima untuk merasa yakin bahwa identitas si

    pengirim adalah benar adanya, dan data pun tidak dimodifikasi

    selama transmisi. Namun demikian, protokol AH tidak

    menawarkan fungsi enkripsi terhadap data yang

    ditransmisikannya. Informasi AH dimasukkan ke dalam header

    paket IP yang dikirimkan dan dapat digunakan secara sendirian

    atau bersamaan dengan protokol Encapsulating Security Payload.

    protokol Encapsulating Security Payload (ESP): Protokol ini

    melakukan enkapsulasi serta enkripsi terhadap data pengguna

    untuk meningkatkan kerahasiaan data. ESP juga dapat memiliki

    skema autentikasi dan perlindungan dari beberapa serangan dan

    dapat digunakan secara sendirian atau bersamaan dengan

    Authentication Header. Sama seperti halnya AH, informasi

    mengenai ESP juga dimasukkan ke dalam header paket IP yang

    dikirimkan.

    Beberapa perangkat keras serta perangkat lunak dapat

    dikonfigurasikan untuk mendukung IPSec, yang dapat dilakukan dengan

    menggunakan enkripsi kunci publik yang disediakan oleh Certificate

    Authority (dalam sebuah public key infrastructure) atau kunci yang

    digunakan bersama yang telah ditentukan sebelumnya (skema Pre-

    Shared Key/PSK) untuk melakukan enkripsi secara privat

  • 7/31/2019 Keamanan Jaringan Dan Komputer

    32/69

  • 7/31/2019 Keamanan Jaringan Dan Komputer

    33/69

    tersebut. Server tersebut kemudian diyakinkan bahwa orang yang

    sedang berusaha mengaksesnya adalah benar-benar

    pengguna.Namun,penggunaan password ini memiliki banyak

    kelemahan. Misalnya seseorang memilih password yang mudah ditebak

    oleh orang lain dalam beberapa kali usaha percobaan. Dalam hal ini

    dikatakan bahwa password tersebut lemah. Masalah lainnya timbul

    ketika password ini akan dikirimkan melalui jaringan: Password tersebut

    harus melalui jaringan tanpa dienkripsi. Dengan kata lain, jika ada orang

    lain yang 7mendengarkan jaringan tersebut dapat mencegat

    password itu dan mendapatkannya kemudian menggunakannya untuk

    masuk sebagai pengguna. Inovasi utama dalam Kerberos adalah

    gagasan bahwa password tersebut dapat dilihat sebagai suatu shared

    secret, sesuatu rahasia yang hanya pengguna dan server yang

    mengetahuinya. Menunjukkan identitas dilakukan tanpa pengguna harus

    membuka rahasia tersebut. Ada suatu cara untuk membuktikan bahwa

    kita mengetahui rahasia tersebut tanpa mengirimnya ke jaringan.

    II. Dasar-Dasar Kerberos

    Pendekatan dasar dari Kerberos adalah menciptakan suatu

    layanan yang tujuan satu-satunya adalah untuk autentikasi. Alasannya

    adalah untuk membebaskan layanan tersebut dari keharusan untuk

    mengurusi record akun pengguna. Dalam pendekatan ini, pengguna dan

    layanan harus memercayai Kerberos authentication server (AS). AS ini

    berperan sebagai pengenal kepada mereka. Untuk melakukan hal ini,

    pengguna dan layanan harus mempunyai shared secret key yang telah

    terdaftar di AS. Key tersebut dinamakan long-term keys, karena

    memang digunakan dalam jangka waktu yang cukup lama, yaitu

    berminggu-minggu atau berbulan-bulan. Ada tiga langkah dasar dalam

  • 7/31/2019 Keamanan Jaringan Dan Komputer

    34/69

  • 7/31/2019 Keamanan Jaringan Dan Komputer

    35/69

    password tersebut. Hal tersebut dapat menjadi menyulitkan jika kita

    memiliki banyak akun dan kita harus memasukkan password tersebut

    satu per satu. Mungkin kita akan mencoba membuat password yang

    mudah untuk diketik, dan sebagai akibatnya maka password kita

    tersebut akan menjadi mudah untuk ditebak. Dan jika kita

    menggunakan password yang 9sama untuk setiap akun kita, maka jika

    password kita tersebut terbongkar, seluruh akun kita menjadi rentan

    ditembus. Kerberos mengatasi masalah ini dengan memperkenalkan

    suatu layanan baru, yaitu Ticket Granting Server (TGS). TGS secara

    logika berbeda dari AS, meskipun mungkin mereka berada dalam satu

    mesin yang sama (keduanya sering disebut sebagai KDC Key

    Distribution Center) Tujuan dari TGS adalah untuk menambahkan layer

    tambahan sehingga pengguna hanya perlu untuk memasukkan

    password sebanyak satu kali saja. Ticket dan session key yang didapat

    dari password tersebut digunakan untuk ticket selanjutnya. Jadi,

    sebelum mengakses suatu layanan regular, pengguna meminta ticket

    dari AS untuk berbicara dengan TGS. Ticket ini disebut ticket granting

    ticket (TGT) , sering juga disebut sebagai initial ticket. Session key

    untuk TGT dienkripsi menggunakan long-term key milik pengguna,sehingga password dibutuhkan untuk mendekripsikannya kembali dari

    respon AS kepada pengguna. Setelah menerima TGT, kapanpun

    pengguna ingin mengakses layanan, dia meminta ticket bukan dari AS

    tetapi dari TGS. Lebih jauh lagi, jawabannya tidak dienkripsi

    menggunakan secret key milik pengguna, tetapi menggunakan session

    key yang datang bersama TGT, sehingga password pengguna tidak

    diperlukan untuk mendapatkan session key yang baru. Hal tersebut

    dapat diilustrasikan sebagai berikut. Bayangkan Anda adalah seorang

    karyawan di sebuah gedung. Anda menunjukkan kartu ID regular untuk

    mendapatkan kartu

    ID guest. Sekarang, ketika Anda ingin memasuki berbagai ruangan

    di gedung tersebut, Anda tidak menunjukkan kartu ID regular lagi dan

  • 7/31/2019 Keamanan Jaringan Dan Komputer

    36/69

    lagi, yang mungkin dapat mudah sekali hilang atau dicuri orang, tetapi

    Anda tinggal menunjukkan kartu ID guest yang 10hanya berlaku untuk

    suatu waktu yang singkat saja. Jika kartu ID guest tersebut hilang atau

    dicuri, Anda dapat dengan segera memblokirnya dan membuat kartu

    yang baru, suatu hal yang tidak dapat dilakukan terhadap kartu ID

    regular Keuntungan dari hal ini adalah jika password biasanya valid

    untuk jangka waktu yang panjang, misalnya berminggu-minggu atau

    berbulan-bulan, maka TGT hanya valid untuk jangka waktu yang

    pendek, misalnya hanya delapan hingga sepuluh jam saja.

    Setelah itu, TGT tidak dapat digunakan lagi oleh siapapun. TGT ini

    disimpan dalam credentials cache.

    IV.OPERASI KERBEROS

    Pada bab ini akan dijelaskan operasi atau cara kerja Kerberos

    secara lebih detail. Sebelum menjelaskan bagaimana kerberos

    beroperasi atau bekerja, kita harus mengetahui paket apa saja yang

    dikirim di antara pengguna dan KDC (AS dan TGS),

    dan antara pengguna dengan layanan selama proses autentikasi. Perludiingat bahwa layanan tidak pernah berkomunikasi secara langsung

    dengan KDC (Key Distribution Center). Berikut adalah

    daftar paket-paket:

    AS_REQ adalah request autentikasi pengguna awal. Pesan ini

    ditujukan kepada komponen KDC, yaitu AS.

    AS_REP adalah jawaban dari AS terhadap pesan sebelumnya. Pada

    dasarnya pesan ini mengandung TGT (dienkripsi menggunakan TGS

    secret key) dan session key (dienkripsi menggunakan secret key dari

    pengguna).

  • 7/31/2019 Keamanan Jaringan Dan Komputer

    37/69

    TGS_REQ adalah request dari pengguna kepada Ticket Granting

    Server (TGS) untuk mendapatkan service ticket. Paket ini mengandung

    TGT yang didapat dari pesan sebelumnya dan authenticator yang dibuat

    oleh pengguna

    dan dienkripsi dengan session key.

    TGS_REP adalah jawaban dari Ticket Granting Server terhadap pesan

    sebelumnya. Dalam paket ini terdapat service ticket yang diminta

    (dienkripsi dengan secret key dari layanan) dan session key milik

    layanan yang dibuat oleh TGS dan dienkripsi dengan session key

    sebelumnya yang dibuat oleh AS.

    12 AP_REQ adalah request yang dikirimkan oleh pengguna kepada

    layanan/aplikasi agar dapat mengakses layanannya. Komponennya

    adalah service ticket yang didapat dari TGS dengan jawaban

    sebelumnya dan authenticator yang dibuat oleh pengguna, tetapi kali ini

    dienkripsi menggunakan session key milik layanan (dibuat oleh TGS).

    AP_REP adalah jawaban yang diberikan oleh layanan kepadapengguna untuk membuktikan bahwa layanan tersebut adalah benar

    merupakan layanan yang ingin

    diakses oleh pengguna. Paket ini tidak selalu diminta.

  • 7/31/2019 Keamanan Jaringan Dan Komputer

    38/69

  • 7/31/2019 Keamanan Jaringan Dan Komputer

    39/69

    PAC dan PNS. Mekanisme ini memungkinkan untuk efisien penggunaan

    bandwidth yang tersedia untuk menghindari terowongan dan tidak perlu

    retransmisions dan penyangga overruns. PPTP tidak mendikte khusus

    untuk algoritma ini digunakan untuk mengontrol tingkat rendah tetapi ia

    menetapkan parameter yang harus melakukan komunikasi untuk

    algoritma tersebut memungkinkan untuk bekerja. Fungsi tombol dari

    Microsoft PPTP telah dilindungi oleh L2TP, yang merupakan standar

    protokol IETF untuk tunneling. Network Monitoring and

    TroubleshootingEasy to use tool with comprehensive features at a

    fraction of the cost of others. Click here for free demo.Technical books,

    quick guides and posters

    Networking, telecom, computing, wireless, information technologies,

    security and much more ...

    Struktur protokol - pptp: menunjuk ke titik Tunneling Protokol

    16 32 bit Panjang PPTP jenis pesan Magic cookie Kontrol jenis pesan

    Reserved 0

    Versi protokol Reserved 1 Framing kemampuan Mengingat kemampuanMaksimum saluran Firmware revisi Nama Host (64 Octets) Vendor string

    (64 Octets)

    Panjang - Total panjang dalam octets ini termasuk pesan PPTP PPTP

    seluruh kepala.

    PPTP jenis pesan - Pesan jenis. Nilai yang mungkin adalah: 1Control

    pesan; 2Management pesan. Magic Cookie - Cookie adalah sihir yang

    selalu dikirim sebagai 0x1A2B3C4D konstan. Dasar dan tujuan adalah

    untuk memungkinkan penerima untuk memastikan bahwa itu benar

    disinkronkan dengan data TCP streaming.

    Pesan kontrol Jenis - Nilai dapat: Kontrol Koneksi Manajemen - 1Start-

    Control-Permintaan sambungan-2 Mula-Control-Connection-Balas; 3Stop-

  • 7/31/2019 Keamanan Jaringan Dan Komputer

    40/69

    Control-Connection-Permintaan; 4Stop-Control-Connection-Balas; 5Echo-

    Permintaan; 6Echo-Balas.

    Manajemen panggilan - 7Outgoing-panggilan-Permintaan; 8Outgoing-

    panggilan-Balas; 9Incoming-panggilan-Permintaan; 10Incoming-

    panggilan-Balas; 11Incoming-panggilan-Hubungkan; 12Call-Hapus-

    Permintaan; 13Call-Putus-Beritahu

    Kesalahan Pelaporan - 14WAN-Kesalahan-Beritahu Acara Kontrol

    PPP - 15Set-Link-Info. Reserved 0 & 1 - Harus ditetapkan ke angka 0.

    Protokol versi - PPTP nomor versi Framing Kemampuan - Menunjukkan

    jenis pemasangan bahwa pengirim pesan ini dapat menyediakan: 1 -

    Asynchronous Framing didukung; 2 - sinkronis Framingdidukung

    Kemampuan P'bawa - Menunjukkan kemampuan pembawa bahwa

    pengirim pesan ini dapat menyediakan: 1 - Analog akses didukung; 2 -

    Digital akses didukung Saluran maksimum - Jumlah individu PAC PPP

    sesi ini dapat mendukung. Revisi firmware - Berisi dengan firmware

    revisi jumlah penerbitan PAC, ketika dikeluarkan oleh PAC, atau versi

    PNS PPTP driver jika dikeluarkan oleh PNS. Nama host - Berisi nama DNS

    dari penerbitan PAC atau PNS. Nama vendor - Berisi yang spesifikvendor string yang menjelaskan jenis PAC yang digunakan, atau PNS

    jenis perangkat lunak yang digunakan jika permintaan ini dikeluarkan

    oleh PNS.

  • 7/31/2019 Keamanan Jaringan Dan Komputer

    41/69

    Layer 2 Tunneling Protocol

    Membangun tunneling Untuk membuat sebuah tunnel, diperlukan

    sebuah protokol pengaturnya sehingga tunnel secara logika ini dapat

    berjalan dengan baik bagaikan koneksi point-to-point sungguhan. Saat

    ini, tersedia banyak sekali protokol pembuat tunnel yang bisa

    digunakan. Namun, tunneling protocol yang paling umum dan paling

    banyak digunakan terdiri dari tiga jenis di bawah ini:

    1. Layer 2 Tunneling Protocol (L 2 TP) L 2 TP adalah sebuah tunneling

    protocol yang memadukan dan mengombinasikan dua buah tunneling

    protocol yang bersifat proprietary, yaitu L 2 F (Layer 2 Forwarding) milik

    Cisco Systems dengan PPTP (Point-to-Point Tunneling Protocol) milik

    Microsoft. Pada awalnya, semua produk Cisco menggunakan L 2 F untuk

    mengurus tunneling-nya, sedangkan operating system Microsoft yang

    terdahulu hanya menggunakan PPTP untuk melayani penggunanya yangingin bermain dengan tunnel. Namun saat ini, Microsoft Windows

    NT/2000 telah dapat menggunakan PPTP atau L 2 TP dalam teknologi

    VPN-nya.

    L 2 TP biasanya digunakan dalam membuat Virtual Private Dial Network

    (VPDN) yang dapat bekerja membawa semua jenis protokol komunikasi

    didalamnya. Selain itu, L 2 TP juga bersifat media independen karena

    dapat bekerja di atas media apapun. L 2 TP memungkinkan

    penggunanya untuk tetap dapat terkoneksi dengan jaringan lokal milik

    mereka dengan policy keamanan yang sama dan dari manapun mereka

    berada, melalui koneksi VPN atau VPDN. Koneksi ini sering kali dianggap

    sebagai sarana memperpanjang jaringan lokal milik penggunanya,

    namun melalui media publik.Namun, teknologi tunneling ini tidak

  • 7/31/2019 Keamanan Jaringan Dan Komputer

    42/69

    memiliki mekanisme untuk menyediakan fasilitas enkripsi karena

    memang benar-benar murni hanya membentuk jaringan tunnel. Selain

    itu, apa yang lalu-lalang di dalam tunnel ini dapat ditangkap dan

    dimonitor dengan menggunakan protocol analizer.

    2. Generic Routing Encapsulation (GRE) Protokol tunneling yang satu

    ini memiliki kemampuan membawa lebih dari satu jenis protokol

    pengalamatan komunikasi. Bukan hanya paket beralamat IP saja yang

    dapat dibawanya, melainkan banyak paket protokol lain seperti CNLP,

    IPX, dan banyak lagi. Namun, semua itu dibungkus atau dienkapsulasi

    menjadi sebuah paket yang bersistem pengalamatan IP. Kemudian

    paket tersebut didistribusikan melalui sistem tunnel yang juga bekerja di

    atas protokol komunikasi IP. Dengan menggunakan tunneling GRE,

    router yang ada pada ujung-ujung tunnel melakukan enkapsulasi paket-

    paket protokol lain di dalam header dari protokol IP. Hal ini akan

    membuat paket-paket tadi dapat dibawa ke manapun dengan cara dan

    metode yang terdapat pada teknologi IP. Dengan adanya kemampuan

    ini, maka protokol-protokol yang dibawa oleh paket IP tersebut dapat

    lebih bebas bergerak ke manapun lokasi yang dituju, asalkan terjangkausecara pengalamatan IP. Aplikasi yang cukup banyak menggunakan

    bantuan protokol tunneling ini adalah menggabungkan jaringan-jaringan

    lokal yang terpisah secara jarak kembali dapat berkomunikasi. Atau

    dengan kata lain, GRP banyak digunakan untuk memperpanjang dan

    mengekspansi jaringan lokal yang dimiliki si penggunanya. Meski cukup

    banyak digunakan, GRE juga tidak menyediakan sistem enkripsi data

    yang lalu-lalang di tunnel-nya, sehingga semua aktivitas datanya dapat

    dimonitor menggunakan protocol analyzer biasa saja.

    3. IP Security Protocol (IP Sec) IP Sec adalah sebuat pilihan tunneling

    protocol yang sangat tepat untuk digunakan dalam VPN level korporat.

    IP Sec merupakan protokol yang bersifat open standar yang dapat

  • 7/31/2019 Keamanan Jaringan Dan Komputer

    43/69

    menyediakan keamanan data, keutuhan data, dan autentikasi data

    antara kedua peer yang berpartisipasi di dalamnya. IP Sec menyediakan

    sistem keamanan data seperti ini dengan menggunakan sebuah metode

    pengaman yang bernama Internet Key Exchange (IKE). IKE ini bertugas

    untuk menangani masalah negosiasi dari protokol-protokol dan

    algoritma pengamanan yang diciptakan berdasarkan dari policy yang

    diterapkan pada jaringan si pengguna. IKE pada akhirnya akan

    menghasilkan sebuah sistem enkripsi dan kunci pengamannya yang

    akan digunakan untuk autentikasi pada sistem IP Sec ini.

  • 7/31/2019 Keamanan Jaringan Dan Komputer

    44/69

  • 7/31/2019 Keamanan Jaringan Dan Komputer

    45/69

    Secure Hash Algorithm

    ( SHA )

    Verifikasi dan otentikasi merupakan hal yang penting dalam

    pertukaran informasi. Hal ini dikarenakan dalam pertukaran informasi itu

    dibutuhkan suatu keaslian data dan keutuhannya. Asli di sini dalam arti

    datanya tidak berubah dan juga diketahui pengirim yang jelas dari data

    yang telah dikirimkan tersebut sehingga tidak terjadi penyangkalan

    terhadap data yang dikirimkan. Sedangkan keutuhan data di sini berarti

    data yang dikirimkan tersebut tetap dan tidak mengalami perubahan

    terhadap isi dari data yang dikirimkan tersebut.

    Fungsi hash merupakan salah satu fungsi yang memberikan layanan

    untuk verifikasi dan otentikasi karena fungsi hash ini menghasilkan

    suatu nilai yang unik untuk setiap pesan. Fungsi hash ini disebut juga

    fungsi satu arah ( one way hash function ) karena sangat sulit untuk

    mendapatkan kembali pesan awal dari hasil fungsi hash. Dan juga fungsihash ini memiliki karakteristik berapa pun input yang diberikan akan

    menghasilkan output yang sama dengan nilai yang unik. Sebagian besar

    implementasi dari fungsi hash ini terdapat pada cryptography.

    Secure Hash Algorithm ( SHA ) merupakan salah satu algoritma

    fungsi hash yang digunakan. SHA adalah fungsi hash satu-arah yang

    dibuat oleh NIST dan digunakan bersama DSS (Digital Signature

    Standard). Oleh NSA, SHA dinyatakan sebagai standard fungsi hash

    satu-arah. SHA didasarkan pada MD4 yang dibuat oleh Ronald L. Rivest

    dari MIT. SHA disebut aman (secure) karena ia dirancang sedemikian

    sehingga secara komputasi tidak mungkin menemukan pesan yang

    berkoresponden dengan message digestyang diberikan.

  • 7/31/2019 Keamanan Jaringan Dan Komputer

    46/69

    Dengan mengubah sedikit pada pesan dengan probabilitas sangat

    tinggi akan menghasilkan message digest yang berbeda. Hal ini akan

    menjadikan kegagalan dalam verifikasi ketika secure hash algorithm ini

    digunakan dengan digital signature algorithm atau sebuah keyed-hash

    message authentication algorithm. SHA mempunyai empat spesifikasi,

    yaitu SHA-1, SHA-256, SHA-384 dan SHA-512. perbedaan dari keempat

    spesifikasi ini diperlihatkan pada tabel 1. Di sini akan dibahas tentang

    SHA-1 dan SHA-256.

    Tabel 1. Perbedaan pada spesifikasi pada secure hash algorithm

    SHA-1

    Algoritma

    Algoritma SHA-1 menerima masukan berupa pesan dengan ukuran

    maksimum 264 bit (2.147.483.648 gigabyte) dan menghasilkan message

    digestyang panjangnya 160 bit, lebih panjang dari message digestyang

    dihasilkan oleh MD5. Gambaran pembuatan message digest dengan

    algoritma SHA-1 diperlihatkan pada Gambar 1.

    http://amanjdac.files.wordpress.com/2008/01/011208-2014-securehasha1.png
  • 7/31/2019 Keamanan Jaringan Dan Komputer

    47/69

    Gambar 1. Pembuatan message digestdengan algoritma SHA-1

    Langkah-langkah pembuatan message digestsecara garis besar adalah

    sebagai berikut :

    1. Penambahan bit-bit pengganjal (padding bits).

    o Pesan ditambah dengan sejumlah bit pengganjal sedemikiansehingga panjang pesan (dalam satuan bit) kongruen

    dengan 448 modulo 512. Ini berarti panjang pesan setelah

    ditambahi bit-bit pengganjal adalah 64 bit kurang dari

    kelipatan 512. Angka 512 ini muncul karena SHA-1

    memperoses pesan dalam blok-blok yang berukuran 512.

    o Pesan dengan panjang 448 bit pun tetap ditambah dengan

    bit-bit pengganjal. Jika panjang pesan 448 bit, maka pesantersebut ditambah dengan 512 bit menjadi 960 bit. Jadi,

    panjang bit-bit pengganjal adalah antara 1 sampai 512.

    o Bit-bit pengganjal terdiri dari sebuah bit 1 diikuti dengan

    sisanya bit 0.

    2. Penambahan nilai panjang pesan semula.

    http://amanjdac.files.wordpress.com/2008/01/011208-2014-securehasha2.png
  • 7/31/2019 Keamanan Jaringan Dan Komputer

    48/69

    o Pesan yang telah diberi bit-bit pengganjal

    o selanjutnya ditambah lagi dengan 64 bit yang menyatakan

    panjang pesan semula.

    o Setelah ditambah dengan 64 bit, panjang pesan sekarang

    menjadi 512 bit.

    3. Inisialisasi penyangga (buffer) MD.

    o SHA membutuhkan 5 buah penyangga (buffer) yang

    masing-masing panjangnya 32 bit (MD5 hanya mempunyai

    4 buah penyangga). Total panjang penyangga adalah 5

    32 = 160 bit. Keempat penyangga ini menampung hasil

    antara dan hasil akhir.

    o Kelima penyangga ini diberi nama A, B, C, D, dan E. Setiap

    penyangga diinisialisasi dengan nilai-nilai (dalam notasi

    HEX) sebagai berikut:

    A = 67452301

    B = EFCDAB89

    C = 98BADCFE

    D = 10325476

    E =

    C3D2E1F0

    4. Pengolahan pesan dalam blok berukuran 512 bit.

    o Pesan dibagi menjadi L buah blok yang masing-masing

    panjangnya 512 bit (Y0 sampai YL 1).

    o Setiap blok 512-bit diproses bersama dengan penyangga

    MD menjadi keluaran 128-bit, dan ini disebut proses HSHA.Gambaran proses HSHA diperlihatkan pada Gambar 2.

  • 7/31/2019 Keamanan Jaringan Dan Komputer

    49/69

    Gambar 2. Pengolahan blok 512 bit (Proses HSHA)

    o Proses HSHA terdiri dari 80 buah putaran (MD5 hanya 4

    putaran), dan masing-masing putaran menggunakan

    bilangan penambah Kt, yaitu:

    o Pada Gambar 2, Yq menyatakan blok 512-bit ke-q dari pesan

    yang telah ditambah bit-bit pengganjal dan tambahan 64 bit

    nilai panjang pesan semula. MDq adalah nilai message

    digest160-bit dari proses HSHA ke-q. Pada awal proses, MDq

    berisi nilai inisialisasi penyangga MD.

    o Setiap putaran menggunakan operasi dasar yang sama

    (dinyatakan sebagai fungsi f). Operasi dasar SHA-1

    diperlihatkan pada Gambar 3.

    http://amanjdac.files.wordpress.com/2008/01/011208-2014-securehasha4.pnghttp://amanjdac.files.wordpress.com/2008/01/putaran.jpghttp://amanjdac.files.wordpress.com/2008/01/011208-2014-securehasha3.png
  • 7/31/2019 Keamanan Jaringan Dan Komputer

    50/69

    Gambar 3. Operasi dasar SHA-1 dalam satu putaran (fungsi f)

    o Operasi dasar SHA-1 yang diperlihatkan pada Gambar 3

    dapat ditulis dengan persamaan sebagai berikut :

    yang dalam hal ini,

    atau dapat dinyatakan dalam kode program sebagai berikut :

    http://amanjdac.files.wordpress.com/2008/01/list.jpghttp://amanjdac.files.wordpress.com/2008/01/ket.jpghttp://amanjdac.files.wordpress.com/2008/01/rumus.jpg
  • 7/31/2019 Keamanan Jaringan Dan Komputer

    51/69

  • 7/31/2019 Keamanan Jaringan Dan Komputer

    52/69

    berbeda, maka pesan atau data yang diterima tersebut telah berubah.

    Bisa kemungkinan terjadi kesalahan atau bit error dalam pengiriman

    atau ada yang merubah pesan tersebut.

    Implementasi

    SHA-1 ini dapat diimplementasikan dalam hardware, software

    maupun kombinasi antara hardware dan software. Selain itu bisa

    digunakan untuk otentikasi pada pengiriman berita rahasia, seperti pada

    publik key. SHA-1 bisa juga diimplementasikan ke dalam digital

    signature, message authentication code, password table, key derivation,

    universally unique identifier ( UUI ) dan globally unique identifier ( GUI ).

  • 7/31/2019 Keamanan Jaringan Dan Komputer

    53/69

    MD5

    Dalam kriptografi, MD5 (Message-Digest algortihm 5) ialah fungsi

    hash kriptografik yang digunakan secara luas dengan hash value 128-

    bit. Pada standart Internet (RFC 1321), MD5 telah dimanfaatkan secara

    bermacam-macam pada aplikasi keamanan, dan MD5 juga umum

    digunakan untuk melakukan pengujian integritas sebuah file.MD5 di

    desain oleh Ronald Rivest pada tahun 1991 untuk menggantikan hash

    function sebelumnya, MD4. Pada tahun 1996, sebuah kecacatan

    ditemukan dalam desainnya, walau bukan kelemahan fatal, pengguna

    kriptografi mulai menganjurkan menggunakan algoritma lain, seperti

    SHA-1 (klaim terbaru menyatakan bahwa SHA-1 juga cacat). Pada tahun

    2004, kecacatan-kecacatan yang lebih serius ditemukan menyebabkan

    penggunaan algoritma tersebut dalam tujuan untuk keamanan jadi

    makin dipertanyakan.Daftar isi :

    1 Sejarah dan kriptoanalisis

    2 Efek nyata dari kriptoanalisis

    3 Pengujian Integritas

    4 Algortima5 Pseudocode

    6 Hash-hash MD5

    7 Lihat pula

    8 Pranala luar

    8.1 Informasi MD5

    8.2 Implementasi

    8.3 Kerusakan

    Sejarah dan kriptoanalisis

  • 7/31/2019 Keamanan Jaringan Dan Komputer

    54/69

    MD5 adalah salah satu dari serangkaian algortima message digest

    yang didesain oleh Profesor Ronald Rivest dari MIT (Rivest, 1994). Saat

    kerja analitik menunjukkan bahwa pendahulu MD5 MD4 mulai tidak

    aman, MD5 kemudian didesain pada tahun 1991 sebagai pengganti dari

    MD4 (kelemahan MD4 ditemukan oleh Hans Dobbertin).Pada tahun

    1993, den Boer dan Bosselaers memberikan awal, bahkan terbatas, hasil

    dari penemuan pseudo-collision dari fungsi kompresi MD5. Dua vektor

    inisialisasi berbeda I dan J dengan beda 4-bit diantara keduanya.

    MD5compress(I,X) = MD5compress(J,X)

    Pada tahun 1996 Dobbertin mengumumkan sebuah kerusakan

    pada fungsi kompresi MD5. Dikarenakan hal ini bukanlah serangan

    terhadap fungsi hash MD5 sepenuhnya, hal ini menyebabkan para

    pengguna kriptografi menganjurkan pengganti seperti WHIRLPOOL, SHA-

    1 atau RIPEMD-160.Ukuran dari hash 128-bit cukup kecil untuk

    terjadinya serangan brute force birthday attack. MD5CRK adalah proyek

    distribusi mulai Maret 2004 dengan tujuan untuk menunjukka

    kelemahan dari MD5 dengan menemukan kerusakan kompresi

    menggunakan brute force attack.

    Bagaimanapun juga, MD5CRK berhenti pada tanggal 17 Agustus2004, saat [[kerusakan hash]] pada MD5 diumumkan oleh Xiaoyun

    Wang, Dengguo Feng, Xuejia Lai dan Hongbo Yu [1][2]. Serangan

    analitik mereka dikabarkan hanya memerlukan satu jam dengan

    menggunakan IBM P690 cluster.Pada tanggal 1 Maret 2005, Arjen

    Lenstra, Xiaoyun Wang, and Benne de Weger mendemontrasikan[3]

    kunstruksi dari dua buah sertifikat X.509 dengan public key yang

    berbeda dan hash MD5 yang sama, hasil dari demontrasi menunjukkan

    adanya kerusakan. Konstruksi tersebut melibatkan private key untuk

    kedua public key tersebut. Dan beberapa hari setelahnya, Vlastimil

    Klima menjabarkan[4] dan mengembangkan algortima, mampu

    membuat kerusakan Md5 dalam beberapa jam dengan menggunakan

    sebuah komputer notebook. Hal ini menyebabkan MD5 tidak bebas dari

  • 7/31/2019 Keamanan Jaringan Dan Komputer

    55/69

    kerusakan.Dikarenakan MD5 hanya menggunakan satu langkah pada

    data, jika dua buah awalan dengan hash yang sama dapat dibangun,

    sebuah akhiran yang umum dapat ditambahkan pada keduanya untuk

    membuat kerusakan lebih masuk akal. Dan dikarenakan teknik

    penemuan kerusakan mengijinkan pendahuluan kondisi hash menjadi

    arbitari tertentu, sebuah kerusakan dapat ditemukan dengan awalan

    apapun. Proses tersebut memerlukan pembangkitan dua buah file

    perusak sebagai file templat, dengan menggunakan blok 128-byte dari

    tatanan data pada 64-byte batasan, file-file tersebut dapat mengubah

    dengan bebas dengan menggunakan algoritma penemuan kerusakan.

    Efek nyata dari kriptoanalisis

    Saat ini dapat diketahui, dengan beberapa jam kerja, bagaimana

    proses pembangkitan kerusakan MD5. Yaitu dengan membangkitkan

    dua byte string dengan hash yang sama. Dikarenakan terdapat bilangan

    yang terbatas pada keluaran MD5 (2128), tetapi terdapat bilangan yang

    tak terbatas sebagai masukannya, hal ini harus dipahami sebelum

    kerusakan dapat ditimbulkan, tapi hal ini telah diyakini benar bahwa

    menemukannya adalah hal yang sulit.Sebagai hasilnya bahwa hash MD5dari informasi tertentu tidak dapat lagi mengenalinya secara berbeda.

    Jika ditunjukkan informasi dari sebuah public key, hash MD5 tidak

    mengenalinya secata berbeda jika terdapat public key selanjutnya yang

    mempunyai hash MD5 yang sama.Bagaimanapun juga, penyerangan

    tersebut memerlukan kemampuan untuk memilih kedua pesan

    kerusakan. Kedua pesan tersebut tidak dengan mudah untuk

    memberikan serangan preimage, menemukan pesan dengan hash MD5

    yang sudah ditentukan, ataupun serangan preimage kedua, menemukan

    pesan dengan hash MD5 yang sama sebagai pesan yang

    diinginkan.Hash MD5 lama, yang dibuat sebelum serangan-serangan

    tersebut diungkap, masih dinilai aman untuk saat ini. Khususnya pada

    digital signature lama masih dianggap layak pakai. Seorang user boleh

  • 7/31/2019 Keamanan Jaringan Dan Komputer

    56/69

    saja tidak ingin membangkitkan atau mempercayai signature baru

    menggunakan MD5 jika masih ada kemungkinan kecil pada teks

    (kerusakan dilakukan dengan melibatkan pelompatan beberapa bit pada

    bagian 128-byte pada masukan hash) akan memberikan perubahan

    yang berarti.Penjaminan ini berdasar pada posisi saat ini dari

    kriptoanalisis. Situasi bisa saja berubah secara tiba-tiba, tetapi

    menemukan kerusakan dengan beberapa data yang belum-ada adalah

    permasalahan yang lebih susah lagi, dan akan selalu butuh waktu untuk

    terjadinya sebuah transisi.

    Pengujian Integritas

    Ringkasan MD5 digunakan secara luas dalam dunia perangkat

    lunak untuk menyediakan semacam jaminan bahwa file yang diambil

    (download) belum terdapat perubahan. Seorang user dapat

    membandingkan MD5 sum yang dipublikasikan dengan checksum dari

    file yang diambil. Dengan asumsi bahwa checksum yang dipublikasikan

    dapat dipercaya akan keasliannya, seorang user dapat secara yakin

    bahwa dile tersebut adalah file yang sama dengan file yang dirilis oleh

    para developer, jaminan perlindungan dari Trojan Horse dan viruskomputer yang ditambahkan pada perangkat lunak.Bagaimanapun juga,

    seringkali kasus yangterjadi bahwa checksum yang dipublikasikan tidak

    dapat dipercaya (sebagai contoh, checksum didapat dari channel atau

    lokasi yang sama dengan tempat mengambil file), dalam hal ini MD5

    hanya mampu melakukan error-checking. MD5 akan mengenali file yang

    didownload tidak sempurna, cacat atau tidak lengkap.

    Algortima

    Gambar 1. Satu operasi MD5 MD5 terdiri atas 64 operasi,

    dikelompokkan dalam empat putaran dari 16 operasi. F adalah fungsi

    nonlinear; satu fungsi digunakan pada tiap-tiap putaran. Mi menujukkan

    blok 32-bit dari masukan pesan, dan Ki menunjukkan konstanta 32-bit,

  • 7/31/2019 Keamanan Jaringan Dan Komputer

    57/69

    berbeda untuk tiap-tiap operasi.s menunjukkan perputaran bit kiri oleh

    s; s bervariasi untuk tiap-tiap operasi. menunjukan tambahan modulo

    232. MD5 memproses variasi panjang pesan kedalam keluaran 128-bit

    dengan panjang yang tetap. Pesan masukan dipecah menjadi dua

    gumpalan blok 512-bit; Pesan ditata sehingga panjang pesan dapat

    dibagi 512. Penataan bekerja sebagai berikut: bit tunggal pertama, 1,

    diletakkan pada akhir pedan. Proses ini diikuti dengan serangkaian nol

    (0) yang diperlukan agar panjang pesan lebih dari 64-bit dan kurang dari

    kelipatan 512. Bit-bit sisa diisi dengan 64-bit integer untuk menunjukkan

    panjang pesan yang asli. Sebuah pesan selalu ditata setidaknya dengan

    1-bit tunggal, seperti jika panjang pesan adalah kelipatan 512 dikurangi

    64-bit untuk informasi panjang (panjang mod(512) = 448), sebuah blok

    baru dari 512-bit ditambahkan dengan 1-bit diikuti dengan 447 bit-bit

    nol (0) diikuti dengan panjang 64-bit.Algortima MD5 yang utama

    beroperasi pada kondisi 128-bit, dibagi menjadi empat word 32-bit,

    menunjukkan A, B, C dan D. Operasi tersebut di inisialisasi dijaga untuk

    tetap konstan. Algoritma utama kemudian beroperasi pada masing-

    masing blok pesan 512-bit, masing-masing blok melakukan pengubahan

    terhadap kondisi.Pemrosesan blok pesan terdiri atas empat tahap,batasan putaran; tiap putasan membuat 16 operasi serupa berdasar

    pada fungsi non-linear F, tambahan modular, dan rotasi ke kiri. Gambar

    satu mengilustrasikan satu operasi dalam putaran. Ada empat macam

    kemungkinan fungsi F, berbeda dari yang digunakan pada tiap-tiap

    putaran:

    menunjukkan operasi logikan XOR, AND, OR dan NOT.

    Pseudocode

    Pseudocode pada algoritma MD5 adalah sebagai berikut.

    //Catatan: Seluruh variable tidak pada 32-bit dan dan wrap modulo 2^32

    saat melakukan perhitungan

  • 7/31/2019 Keamanan Jaringan Dan Komputer

    58/69

    //Mendefinisikan r sebagai berikut

    var int[64] r, k

    r[ 0..15] := {7, 12, 17, 22, 7, 12, 17, 22, 7, 12, 17, 22, 7, 12, 17, 22}

    r[16..31] := {5, 9, 14, 20, 5, 9, 14, 20, 5, 9, 14, 20, 5, 9, 14, 20}

    r[32..47] := {4, 11, 16, 23, 4, 11, 16, 23, 4, 11, 16, 23, 4, 11, 16, 23}

    r[48..63] := {6, 10, 15, 21, 6, 10, 15, 21, 6, 10, 15, 21, 6, 10, 15, 21}

    //Menggunakan bagian fraksional biner dari integral sinus sebagai

    konstanta:

    for i from 0 to 63

    k[i] := floor(abs(sin(i + 1)) 2^32)

    //Inisialisasi variabel:

    var int h0 := 0x67452301

    var int h1 := 0xEFCDAB89

    var int h2 := 0x98BADCFEvar int h3 := 0x10325476

    //Pemrosesan awal:

    append "1" bit to message

    append "0" bits until message length in bits 448 (mod 512)

    append bit length of message as 64-bit little-endian integer to message

    //Pengolahan pesan paada kondisi gumpalan 512-bit:

    for each 512-bit chunk of message

    break chunk into sixteen 32-bit little-endian words w(i), 0 i 15

    //Inisialisasi nilai hash pada gumpalan ini:

  • 7/31/2019 Keamanan Jaringan Dan Komputer

    59/69

    var int a := h0

    var int b := h1

    var int c := h2

    var int d := h3

    //Kalang utama:

    for i from 0 to 63

    if 0 i 15 then

    f := (b and c) or ((not b) and d)

    g := i

    else if 16 i 31

    f := (d and b) or ((not d) and c)

    g := (5i + 1) mod 16

    else if 32 i 47

    f := b xor c xor d

    g := (3i + 5) mod 16

    else if 48 i 63

    f := c xor (b or (not d))

    g := (7i) mod 16

    temp := d

    d := c

    c := b

    b := ((a + f + k(i) + w(g)) leftrotate r(i)) + b

    a := temp

    //Tambahkan hash dari gumpalan sebagai hasil:

    h0 := h0 + a

    h1 := h1 + b

    h2 := h2 + c

    h3 := h3 + d

  • 7/31/2019 Keamanan Jaringan Dan Komputer

    60/69

    var int digest := h0 append h1 append h2 append h3 //(diwujudkan

    dalam little-endian)

    Catatan: Meskipun rumusan dari yang tertera pada RFC 1321, berikut ini

    sering digunakan untuk meningkatkan efisiensi:

    (0 i 15): f := d xor (b and (c xor d))

    (16 i 31): f := c xor (d and (b xor c))

    Hash-hash MD5

    Hash-hash MD5 sepanjang 128-bit (16-byte), yang dikenal juga

    sebagai ringkasan pesan, secara tipikal ditampilkan dalam bilangan

    heksadesimal 32-digit. Berikut ini merupakan contoh pesan ASCII

    sepanjang 43-byte sebagai masukan dan hash MD5 terkait:

    MD5("The quick brown fox jumps over the lazy dog") =

    9e107d9d372bb6826bd81d3542a419d6 Bahkan perubahan yang kecil

    pada pesan akan (dengan probabilitas lebih) menghasilkan hash yang

    benar-benar berbeda, misalnya pada kata "dog", huruf d diganti menjadi

    c:MD5("The quick brown fox jumps over the lazy cog") =

    1055d3e698d289f2af8663725127bd4b

    Hash dari panjang-nol ialah:

    MD5("") = d41d8cd98f00b204e9800998ecf8427e

  • 7/31/2019 Keamanan Jaringan Dan Komputer

    61/69

    SSH

    SEJARAH SSH

    Pada awalnya SSH dikembangkan oleh Tatu Yl nen di

    Helsinki University of Technology. SSH memberikan alternatif yang

    secure terhadap remote session tradisional dan file transfer protocol

    seperti telnet dan relogin.Protokol SSH mendukung otentikasi

    terhadap remote host, yang dengan demikian meminimalkan ancaman

    pemalsuan identitas client lewat IP address spoofing maupun

    manipulasi DNS. Selain itu SSH mendukung beberapa protocol

    enkripsi secret key (DES,TripleDES,IDEA, dan Blowfish) untuk

    membantu memastikan privacy dari keseluruhan komunikasi, yang

    dimulai dengan username/password awal.SSH menyediakan suatuvirtual private connection pada application layer, mencakup

    interactive logon protocol (ssh dan sshd) serta fasilitas untuk secure

    transfer file (scd). Setelah meng-instal SSH, sangat dianjurkan untuk

    mendisable telnet dan rlogin. Implementasi SSH pada

    linuxdiantaranya adalah OpenSSH. SSH merupakan paket program yang

    digunakan sebagai pengganti yang aman untuk rlogin, rsh dan rcp. Ia

    menggunakan public-key cryptography untuk mengenkripsi komunikasiantara dua host, demikian pula untuk autentikasi pemakai. Ia

    dapat digunakan untuk login secara aman ke remote host atau

    menyalin data antar host, sementara mencegah man-in-the-middle

    attacks (pembajakan sesi) dan DNS spoofing atau dapat dikatakan

    Secure Shell adalahprogram yang melakukan loging terhadap komputer

  • 7/31/2019 Keamanan Jaringan Dan Komputer

    62/69

    lain dalam jaringan, mengeksekusi perintah lewat mesin secara remote,

    dan memindahkan file dari satu mesin ke mesin lainnya.

    Secure Socket Layer(SSL)

    SSL (Secure Socket Layer) dikembangkan oleh

    Netscape untuk mengamankan HTTPdan sampai sekarang masih inilah

    pemanfaatan utama SSL. SSL menjadi penting karena beberapa produk

    umum seperti Netscape Communicator, Internet Explorer, dan WS_FTP

    Pro,yang merupakan produk yang lazim digunakan, menggunakan SSL.

    Secure Sockets Layer,adalah metode enkripsi yang dikembangkan oleh

    Netscape untuk memberikan keamanan diInternet. Ia mendukung

    beberapa protokol enkripsi dan memberikan autentikasi client danserver. SSL beroperasi pada layer transpor, menciptakan saluran

    enkripsi yang aman untuk data,dan dapat mengenkripsi banyak tipe

    data. Hal ini dapat dilihat ketika mengunjungi site yang aman untuk

    melihat dokumen online aman dengan Communicator, dan berfungsi

    sebagai dasar komunikasi yang aman dengan Communicator, juga

    dengan enkripsi data Netscape

    Communication lainnya. Atau dapat dikatakan bahwa SSLmerupakan Protokol berlapis. Dalam tiap lapisannya, sebuah data terdiri

    dari panjang, deskripsi dan isi. SSL mengambil data untuk

    dikirimkan, dipecahkan kedalam blok-blok yang teratur, kemudian

    dikompres jika perlu,menerapkan MAC, dienkripsi, dan hasilnya

    http://wibisastro.wordpress.com/2008/04/23/secure-socket-layer/http://wibisastro.wordpress.com/2008/04/23/secure-socket-layer/
  • 7/31/2019 Keamanan Jaringan Dan Komputer

    63/69

    dikirimkan. Di tempat tujuan, data didekripsi,verifikasi, dekompres, dan

    disusun kembali. Hasilnya dikirimkan ke klien di atasnya

    Secure Sockets Layer atau yang disingkat SSL adalah sebuah

    protokol keamanan data yang digunakan untuk menjaga pengiriman

    data antara web server dan pengguna situs web tersebut.SSL umumnya

    sudah terinstall didalam mayoritas browser web yang ada (IE, Netscape,

    Firefox, dll), sehingga pengguna situs web dapat mengidentifikasi

    tingkat keamanan situs web tersebut yang menggunakan protokol

    keamanan SSL ini.Browser web secara otomatis akan mencek apakah

    sertifikat SSL dan identitas situs web valid dan situs tersebut terdaftar

    pada otoritas sertifikasi (CA) SSL (cth. Verisign). Dengan demikian, SSL

    ini menjadi sangat penting terutama untuk situs web yang menjalankan

    transaksi online.Koneksi SSL akan memproteksi informasi vital dengan

    meng-enkripsi informasi yang dikirim dan diterima antara pc pengguna

    situs dan web server, sehingga informasi yang berjalan tidak mungkin

    dapat diambil ditengah jalan dan dibaca isinya. Hal ini berarti pengguna

    tidak perlu ragu untuk mengirim informasi vital seperti nomor kartu

    kredit kepada situs web yang telah memasang SSL tersertifikat ini.

    A.CARAKERJASSL

    Seorang pelanggan masuk kedalam situs anda dan melakukan

    akses ke URL yang terproteksi (ditandai dengan awalan https atau

    dengan munculnya pesan dari browser).Server anda akan

    memberitahukan secara otomatis kepada pelanggan tersebut mengenai

    sertifikat digital situs anda yang menyatakan bahwa situs anda telah

    tervalidasi sebagai situs yang menggunakan SSL.Browser pelanggan

    akan mengacak session key dengan public key situs anda sehingga

    hanya situs anda yang akan dapat membaca semua transaksi yang

    terjadi antara browser pelanggan dengan situs anda.Hal diatas semua

    terjadi dalam hitungan detik dan tidak memerlukan aktifitas apapun dari

    pelanggan.

  • 7/31/2019 Keamanan Jaringan Dan Komputer

    64/69

  • 7/31/2019 Keamanan Jaringan Dan Komputer

    65/69

  • 7/31/2019 Keamanan Jaringan Dan Komputer

    66/69

    menggunakan fungsi CreateProcessAsUser(). Ukuran token adalah

    bervariasi, karena akun pengguna yang berbeda akan memiliki hak dan

    group yang berbeda pula. Meskipun demikian, semua token

    mengandung informasi yang sama.Nama field Keterangan Token

    Source Berisi deskripsi mengenai entitas yang membuat token yang

    bersangkutan. Program yang hendak mengetahui di mana sebuah token

    dibuat akan menggunakan field ini untuk membedakan sumber

    pembuat token.Impersonation Type Token ID Berisi informasi Locally

    Unique Identifier (LUID) yang dibuat oleh Security Reference Monitor

    terhadap token ketika membuat token. Windows akan memelihara

    sebuah daftar LUID yang disebut dengan Executive LUID, yang

    merupakan sebuah nilai yang digunakan untuk memberikan sebuah

    angka yang unik terhadap setiap token. Authentication ID Berisi

    informasi LUID yang dibuat oleh pembuat token yang bersangkutan.

    Proses lsass.exe biasanya merupakan pembuat token di dalam sistem,

    dan lsass.exe mendapatkan LUID dari Executive LUID. Selanjutnya

    lsass.exe akan menyalin field ini untuk semua token yang berasal dari

    token awal yang dibuat pada saat logon. Sebuah program juga dapat

    memperoleh nilai field ini untuk melihat apakah token tersebut berasaldari sesi logon yang sama atau tidak. Modified ID Field ini akan

    diperbarui oleh Executive LUID saat karakteristik sebuah token diubah.

    Sebuah program dapat menguji apakah sebuah token berubah atau

    tidak dengan melihat field ini dan membandingkannya dengan nilai

    yang sebelumnya. Expiration time Menentukan kapan waktu sebuah

    token mengalami kadaluwarsa. Field ini sebenarnya telah ada dari

    Windows NT 3.1 tapi tidak pernah digunakan. Default Primary Grou p

    Atribut keamanan yang diaplikasikan terhadap objek-objek yang dibuat

    oleh proses atau thread ketika menggunakan token. Dengan

    memasukkan informasi keamanan dalam token, Windows dapat

    menjadikan sebuah proses atau thread untuk membuat objek dengan

    atribut keamanan karena proses atau thread tersebut tidak perlu lagi

  • 7/31/2019 Keamanan Jaringan Dan Komputer

    67/69

    melakukan request terhadap informasi keamanan yang berbeda untuk

    setiap objek yang dibuatnya.Default DACLAtribut keamanan yang

    diaplikasikan terhadap objek-objek yang dibuat oleh proses atau thread

    ketika menggunakan token. Dengan memasukkan informasi keamanan

    dalam token, Windows dapat menjadikan sebuah proses atau thread

    untuk membuat objek dengan atribut keamanan karena proses atau

    thread tersebut tidak perlu lagi melakukan request terhadap informasi

    keamanan yang berbeda untuk setiap objek yang dibuatnya.User

    Account SIDBerisi Security Identifier (SID) yang dimiliki oleh

    pengguna.Group 1 SID hingga Group n SID Berisi daftar group di mana

    pengguna menjadi anggota yang direpresentasikan dalam bentuk

    SID.Restricted SID 1 hingga Restricted SID n Berisi daftar group SID yang

    dinonaktifkan.Privilege 1 hingga Privilege n Berisi hak-hak yang dimiliki

    oleh sebuah token. Privilege tidak dapat dihapus tapi dapat

    dinonaktifkan. Kebanyakan privilege dinonaktifkan secara default untuk

    mencegah adanya kerusakan yang terjadi pada program yang didesain

    tanpa disertai dengan kesadaran akan masalah keamanan.

    Mekanisme keamanan dalam Windows 2000 menggunakan dua

    komponen token untuk menentukan apa yang dapat dilakukan olehthread atau proses yang berjalan atas token tersebut. Satu komponen

    akan menangani field User Account SID dan Group SID di dalam Token.

    SRM kemudian menggunakan SID untuk menentukan apakah sebuah

    proses atau thread dapat memperoleh akses yang dimintanya terhadap

    objek yang dapat diamankan, seperti berkas dalam sistem berkas NTFS.

    Group SID dalam token dapat membedakan termasuk ke dalam group

    manakah akun pengguna yang bersangkutan. Sebuah aplikasi server

    dapat menonaktifkan group spesifik untuk membatasi token ketika

    aplikasi tersebut melakukan beberapa operasi yang diminta oleh klien.

    Menonaktifkan sebuah group dapat menyebabkan group tersebut

    seolah-olah tidak ada dalam token.

  • 7/31/2019 Keamanan Jaringan Dan Komputer

    68/69

    Komponen kedua dari dua komponen token yang digunakan oleh

    Windows 2000 yang menentukan apa yang dapat dilakukan oleh thread

    atau proses yang berjalan atas token tersebut, adalah larik privilege

    (privilege array). Larik privilege merupakan sebuah daftar hak yang

    diasosiasikan dengan token. Sebagai contoh dari privilege adalah hak

    yang dimiliki oleh proses atau thread untuk melakukan shutdown

    terhadap komputer.

    Objek token terbagi menjadi dua jenis, yakni:

    Primary Token, yakni token yang mengidentifikasikan konteks

    keamanan dari sebuah proses

    Impersonation Token, yakni token yang mengadopsi sebuah

    konteks keamanan yang berbeda (umumnya pengguna lainnya)

    secara sementara.

  • 7/31/2019 Keamanan Jaringan Dan Komputer

    69/69