Jenis-Jenis Enkripsi 1

dokumen-dokumen yang mirip
Algoritma Kriptografi Modern (AES, RSA, MD5)

Algoritma MD5. Bahan Kuliah IF3058 Kriptografi. Rinaldi Munir/Teknik Informatika STEI-ITB 1

Fungsi Hash Satu-Arah dan Algoritma MD5

STUDI PERBANDINGAN ALGORITMA SIMETRI BLOWFISH DAN ADVANCED ENCRYPTION STANDARD

Advanced Encryption Standard (AES) Rifqi Azhar Nugraha IF 6 A.

BAB II LANDASAN TEORI

TEKNIK DASAR KRIPTOGRAFI. Algoritma Kriptografi Modern (Bagian 1) Substitusi. Tabel Subsitusi. Substitusi Blocking Permutasi Ekspansi Pemampatan

Data Encryption Standard (DES)

BAB 2 LANDASAN TEORI

ANALISA PROSES ENKRIPSI DAN DESKRIPSI DENGAN METODE DES

ERWIEN TJIPTA WIJAYA, ST.,M.KOM KEAMANAN INFORMASI

RSA (Rivest, Shamir, Adleman) Encryption

ADVANCED ENCRYPTION STANDARD (AES) DENGAN ONE TIME PASSWORD UNTUK KEAMANAN LAYANAN SMS BANKING

DATA ENCRYPTION STANDARD (DES) STANDAR ENKRIPSI DATA. Algoritma Kriptografi Modern

Digital Signature Standard (DSS)

APLIKASI TRANSFORMASI CITRA TANDA TANGAN MENJADI TANDA TANGAN DIGITAL

Outline. Sejarah DES Enkripsi DES Implementasi Hardware dan Software DES Keamanan DES

BAB 2 LANDASAN TEORI. 2.1 Pengertian Kriptografi

BAB 1 PENDAHULUAN. 1.1 Latar Belakang

TEKNIK DASAR KRIPTOGRAFI SISTEM KEAMANAN KOMPUTER

WINDOWS VISTA BITLOCKER DRIVE ENCRYPTION

BAB II DASAR TEORI. Gambar 2.1. Proses Enkripsi Dekripsi

Bab II. Tinjuan Pustaka

BAB III ANALISIS DAN PERANCANGAN

Metode Enkripsi RSA. Swastyayana Wisesa ) 1) Jurusan Teknik Informatika ITB, Bandung,

ANALISIS PERANCANGAN JARINGAN KOMPUTER

Modul Praktikum Keamanan Sistem

Sedangkan berdasarkan besar data yang diolah dalam satu kali proses, maka algoritma kriptografi dapat dibedakan menjadi dua jenis yaitu :

STUDI DAN IMPLEMENTASI ADVANCED ENCRYPTION STANDARD DENGAN EMPAT MODE OPERASI BLOCK CIPHER

TUGAS KRIPTOGRAFI Membuat Algortima Sendiri Algoritma Ter-Puter Oleh : Aris Pamungkas STMIK AMIKOM Yogyakarta emali:

TINJAUAN PUSTAKA. Kriptografi

BAB I PENDAHULUAN. diperhatikan, yaitu : kerahasiaan, integritas data, autentikasi dan non repudiasi.

BAB 2 TINJAUAN PUSTAKA

APLIKASI TEORI BILANGAN UNTUK AUTENTIKASI DOKUMEN

Aplikasi Pengamanan Data dengan Teknik Algoritma Kriptografi AES dan Fungsi Hash SHA-1 Berbasis Desktop

BAB 2 TINJAUAN PUSTAKA

SISTEM KRIPTOGRAFI. Mata kuliah Jaringan Komputer Iskandar Ikbal, S.T., M.Kom

Penggabungan Algoritma Kriptografi Simetris dan Kriptografi Asimetris untuk Pengamanan Pesan

Protocol Sistem Keamanan

MODEL KEAMANAN INFORMASI BERBASIS DIGITAL SIGNATURE DENGAN ALGORITMA RSA

STUDI KASUS PENGGUNAAN TinyCA SEBAGAI APLIKASI CERTIFICATE AUTHORIZATION (CA) YANG MUDAH DAN SEDERHANA PADA SISTEM OPERASI UBUNTU

PENGAMANAN JARINGAN KOMUTER

Penggunaan Digital Signature Standard (DSS) dalam Pengamanan Informasi

BAB I PENDAHULUAN. berkembang seperti penggunaan teknologi internet sebagai pendukung kinerja

Manajemen Keamanan Informasi

1 BAB 1 PENDAHULUAN. 1.1 Latar Belakang

Pembangkitan Nilai MAC dengan Menggunakan Algoritma Blowfish, Fortuna, dan SHA-256 (MAC-BF256)

BAB 2 LANDASAN TEORI

ANALISA ALGORITMA BLOCK CIPHER DALAM PENYANDIAN DES DAN PENGEMBANGANNYA

BAB II TINJAUAN PUSTAKA DAN LANDASAN TEORI

Advanced Encryption Standard (AES)

STUDI DAN ANALISIS ALGORITMA HASH MD6 SERTA PERBANDINGANNYA DENGAN MD5

ANALISIS DAN IMPLEMENTASI KEAMANAN JARINGAN VOICE OVER INTERNET PROTOKOL (VOIP) MENGGUNAKAN VPN TUNNELING PPTP DAN L2TP/IPSEC

Imam Prasetyo Pendahuluan

MODEL KEAMANAN INFORMASI BERBASIS DIGITAL SIGNATURE DENGAN ALGORITMA RSA

Proses Enkripsi dan Dekripsi menggunakan Algoritma Advanced Encryption Standard (AES)

BAB 9: VIRTUAL PRIVATE NETWORK

STUDI DAN IMPLEMENTASI ALGORITMA RIJNDAEL UNTUK ENKRIPSI SMS PADA TELEPON GENGGAM YANG BERBASIS WINDOWS MOBILE 5.0

BAB I PENDAHULUAN. Universitas Sumatera Utara

Algoritma Spiral shifting

MENGENAL PROSES PERHITUNGAN ENKRIPSI MENGGUNAKAN ALGORITMA KRIPTOGRAFI ADVANCE ENCRYPTION STANDARD(AES) RIJDNAEL

Pengantar E-Business dan E-Commerce

Kriptografi Modern Part -1

Implementasi Disk Encryption Menggunakan Algoritma Rijndael

Kriptografi. A. Kriptografi. B. Enkripsi

BAB I PENDAHULUAN 1.1. LATAR BELAKANG

DESAIN DAN IMPLEMENTASI PROTOKOL KRIPTOGRAFI UNTUK APLIKASI SECURE CHAT PADA MULTIPLATFORM SISTEM OPERASI

Sistem Keamanan Transaksi e-commerce

BAB 1 PENDAHULUAN 1.1. Latar belakang

Telnet dan SSH. Aloysius S Wicaksono, Glagah Seto S Katon, Jurusan Teknik Elektro FT UGM, Yogyakarta

BAB 2 LANDASAN TEORI

PENDAHULUAN TINJAUAN PUSTAKA

BAB III ANALISA DAN DESAIN SISTEM

Ada 4 mode operasi cipher blok: 1. Electronic Code Book (ECB) 2. Cipher Block Chaining (CBC) 3. Cipher Feedback (CFB) 4. Output Feedback (OFB)

KEAMANAN DALAM E-COMMERCE

BAB 2 TINJAUAN PUSTAKA

TINJAUAN PUSTAKA. Protokol

Studi dan Analisis Dua Jenis Algoritma Block Cipher: DES dan RC5

Studi dan Implementasi RSA, SHA-1, TimeStamp Untuk penangangan Non Repudiation

STUDI, IMPLEMENTASI DAN PERBANDINGAN ALGORITMA KUNCI SIMETRI TRIPLE DATA ENCRYPTION STANDARD DAN TWOFISH

Bab 2 Tinjauan Pustaka 2.1 Penelitian Terdahulu

Rancang Bangun Aplikasi Keamanan Data Menggunakan Metode AES Pada Smartphone

PERANCANGAN APLIKASI ENKRIPSI DATA MENGGUNAKAN METODE ADVANCED ENCRYPTION STANDARD

BAB II TINJAUAN PUSTAKA

BAB III ANALISIS MASALAH

BAB III ANALISIS DAN PERANCANGAN

BAB II TINJAUAN PUSTAKA

Kriptografi Modern Part -1


Implementasi SHA, Algoritma HAJ, dan Algoritma RSA pada BlackBerry Messanger

PERANGKAT APLIKASI KEAMANAN DATA TEXT MENGGUNAKAN ELECTRONIC CODEBOOK DENGAN ALGORITMA DES

Annisa Cahyaningtyas

Oleh: Benfano Soewito Faculty member Graduate Program Universitas Bina Nusantara

Universitas Sumatera Utara BAB 2 LANDASAN TEORI

BAB III ANALISIS DAN PERANCANGAN SISTEM. permasalahan-permasalahan dan kebutuhan-kebutuhan yang diharapkan sehingga dapat

Bab I Pendahuluan 1 BAB I PENDAHULUAN

BAB II DASAR TEORI 2.1. Jaringan Nirkabel

BAB I PENDAHULUAN. melalui ringkasan pemahaman penyusun terhadap persoalan yang dibahas. Hal-hal

Rancangan dan Implementasi Algoritma Pembangkitan Kunci Kombinasi antara Algoritma RSA dan ElGamal

Review Implementasi VPN Mikrotik

Transkripsi:

Kriptografi Data Encryption Standard (DES) Advanced Encryption Standard (AES) Digital Certificate Server (DCS) IP Security (IPSec) Kerberos Point to Point Tunneling Protocol (PPTP) dan Layer Two Tunneling Protocol (L2TP) Remote Access Dial-in User Service (RADIUS) RSA Encryption Secure Hash Algoritm (SHA) MD5 Secure Shell (SSH) Secure Socket Layer (SSL) Security Token Kriptografi Kriptografi adalah suatu ilmu yang mempelajari bagaimana cara menjaga agar data atau pesan tetap aman saat dikirimkan, dari pengirim ke penerima tanpa mengalami gangguan dari pihak ketiga. Menurut Bruce Scheiner dalam bukunya "Applied Cryptography", kriptografi adalah ilmu pengetahuan dan seni menjaga message-message agar tetap aman (secure). Konsep kriptografi sendiri telah lama digunakan oleh manusia misalnya pada peradaban Mesir dan Romawi walau masih sangat sederhana. Prinsip-prinsip yang mendasari kriptografi yakni : Confidelity (kerahasiaan) yaitu layanan agar isi pesan yang dikirimkan tetap rahasia dan tidak diketahui oleh pihak lain (kecuali pihak pengirim, pihak penerima / pihakpihak memiliki ijin). Umumnya hal ini dilakukan dengan cara membuat suatu algoritma matematis yang mampu mengubah data hingga menjadi sulit untuk dibaca dan dipahami. Data integrity (keutuhan data) yaitu layanan yang mampu mengenali/mendeteksi adanya manipulasi (penghapusan, pengubahan atau penambahan) data yang tidak sah (oleh pihak lain). Jenis-Jenis Enkripsi 1

Authentication (keotentikan) yaitu layanan yang berhubungan dengan identifikasi. Baik otentikasi pihak-pihak yang terlibat dalam pengiriman data maupun otentikasi keaslian data/informasi. Non-repudiation (anti-penyangkalan) yaitu layanan yang dapat mencegah suatu pihak untuk menyangkal aksi yang dilakukan sebelumnya (menyangkal bahwa pesan tersebut berasal dirinya). Berbeda dengan kriptografi klasik yang menitikberatkan kekuatan pada kerahasiaan algoritma yang digunakan (yang artinya apabila algoritma yang digunakan telah diketahui maka pesan sudah jelas "bocor" dan dapat diketahui isinya oleh siapa saja yang mengetahui algoritma tersebut), kriptografi modern lebih menitikberatkan pada kerahasiaan kunci yang digunakan pada algoritma tersebut (oleh pemakainya) sehingga algoritma tersebut dapat saja disebarkan ke kalangan masyarakat tanpa takut kehilangan kerahasiaan bagi para pemakainya. Berikut adalah istilah-istilah yang digunakan dalam bidang kriptografi : Plaintext (M) adalah pesan yang hendak dikirimkan (berisi data asli). Ciphertext (C) adalah pesan ter-enkrip (tersandi) yang merupakan hasil enkripsi. Enkripsi (fungsi E) adalah proses pengubahan plaintext menjadi ciphertext. Dekripsi (fungsi D) adalah kebalikan dari enkripsi yakni mengubah ciphertext menjadi plaintext, sehingga berupa data awal/asli. Kunci adalah suatu bilangan yang dirahasiakan yang digunakan dalam proses enkripsi dan dekripsi. Kriptografi itu sendiri terdiri dari dua proses utama yakni proses enkripsi dan proses dekripsi. Seperti yang telah dijelaskan di atas, proses enkripsi mengubah plaintext menjadi ciphertext (dengan menggunakan kunci tertentu) sehingga isi informasi pada pesan tersebut sukar dimengerti. plaintext enkripsi ciphertext dekripsi plaintext kunci enkripsi kunci dekripsi Diagram Proses Enkripsi dan Dekripsi Jenis-Jenis Enkripsi 2

Peranan kunci sangatlah penting dalam proses enkripsi dan dekripsi (disamping pula algoritma yang digunakan) sehingga kerahasiaannya sangatlah penting, apabila kerahasiaannya terbongkar, maka isi dari pesan dapat diketahui. Secara matematis, proses enkripsi merupakan pengoperasian fungsi E (enkripsi) menggunakan e (kunci enkripsi) pada M (plaintext) sehingga dihasilkan C (ciphertext), notasinya : E e (M) C Sedangkan untuk proses dekripsi, merupakan pengoperasian fungsi D (dekripsi) menggunakan d (kunci dekripsi) pada C (ciphertext) sehingga dihasilkan M (plaintext), notasinya : D d (C) = M Sehingga dari dua hubungan diatas berlaku : D d (E e (M)) = M Data Encryption Standard (DES) Sejarah 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. 1. Blok plainteks dipermutasi dengan matriks permutasi awal (initial permutation atau IP). Jenis-Jenis Enkripsi 3

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. 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 K i. 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 berikut. L i = R i 1 R i = L i 1 f(r i 1, K i ) Gambar berikut memperlihatkan skema algoritma DES yang lebih rinci. Jenis-Jenis Enkripsi 4

Plainteks IP L 0 R 0 f K 1 L 1 = R 0 R 1 = L0 K f ( R0, 1) f K 2 L 2 = R 1 R 2 = L1 K f ( R1, 2 ) L 15 = R 14 R 15 = L14 K f ( R14, 15 ) f K 16 R = L15 f ( R15, 16 ) L 16 = R 15 16 K IP -1 Cipherteks Gambar Algoritma Enkripsi dengan DES Jenis-Jenis Enkripsi 5

Catatlah bahwa satu putaran DES merupakan model jaringan Feistel (lihat Gambar berikut). L i - 1 R i 1 f K i L i R i Gambar Jaringan Feistel untuk satu putaran DES Perlu dicatat dari Gambar Algoritma Enkripsi Dengan DES bahwa jika (L 16, R 16 ) merupakan keluaran dari putaran ke-16, maka (R 16, L 16 ) merupakan pracipherteks (pre-ciphertext) dari enciphering ini. Cipherteks yang sebenarnya diperoleh dengan melakukan permutasi awal balikan, IP -1, terhadap blok pra-cipherteks. Advanced Encryption Standard (AES) Pada Advanced Encryption Standard (AES), algoritma kriptogenik yang digunakan adalah Algoritma Rijndael, yang menggunakan blok cipher simetris untuk proses enkripsi dan dekripsi yang dapat memproses data input 128 bit dengan menggunakan chiper key 128, 192 atau 256 bit. Pada algoritma AES, data input atau Plaintext diproses melalui serangkaian transformasi, disebut Chiper, yang terdiri dari transformasi SubBytes, ShiftRows, MixColumns dan AddRoundKey, dengan menggunakan kunci kriptogenik rahasia yaitu Cipher Key. Data yang dihasilkan cipher disebut Ciphertext dan akan diproses untuk dikonversikan kembali menjadi plaintext melalui serangkaian transformasi, disebut Inverse Cipher, yang terdiri dari tansformasi InvShiftRows, InvSubBytes, AddRoundKey dan InvMixColumns, dengan menggunakan cipher key. Jenis-Jenis Enkripsi 6

A. Panjang Kunci dan Ukuran Blok Rijndael Rijndael mendukung panjang kunci 128 bit sampai 256 bit dengan step 32 bit. Panjang kunci dan ukuran blok dapat dipilih secara independen. Karena AES menetapkan bahwa ukuran blok harus 128 bit, dan panjang kunci harus 128, 192, dan 256 bit, maka dikenal AES-128, AES-192, AES-256. Setiap blok dienkripsi dalam sejumlah putaran tertentu bergantung pada panjang kuncinya. Tabel Jumlah Putaran Setiap Blok pada AES Varian AES Panjang Kunci (Nk words) Ukuran Blok (Nb words) Jumlah Putaran (Nr) AES-128 4 4 10 AES-192 6 4 12 AES-256 8 4 14 Catatan : 1 word = 32 bit Secara de-fakto, hanya ada dua varian AES, yaitu AES-128 dan AES-256, karena akan sangat jarang pengguna menggunakan kunci yang panjangnya 192 bit. Karena AES mempunyai panjang kunci paling sedikit 128 bit, maka AES tahan terhadap serangan exhaustive key search dengan teknologi saat ini. Dengan panjang kunci 128-bit, maka terdapat 2 128 3,4 x 10 38 kemungkinan kunci. Jika digunakan sebuah mesin dengan semilyar prosesor paralel, masingmasing dapat menghitung sebuah kunci setiap satu pico detik, maka akan dibutuhkan waktu 10 10 tahun untuk mencoba seluruh kemungkinan kunci. B. Algoritma Rijndael Seperti pada DES, Rijndael menggunakan substitusi dan permutasi, dan sejumlah putaran. Untuk setiap putarannya, Rijndael menggunakan kunci yang berbeda. Kunci setiap putaran disebut round key. Tetapi tidak seperti DES yang berorientasi bit, Rijndael beroperasi dalam orientasi byte sehingga memungkinkan untuk implementasi algoritma yang efisien ke dalam software dan hardware. Garis besar algoritma Rijndael yang beroperasi blok 128-bit dengan kunci 128-bit adalah sebagai berikut. Jenis-Jenis Enkripsi 7

1. AddRoundKey : Melakukan XOR antara state awal (plainteks) dengan cipher key. Tahap ini disebut juga initial round. 2. Putaran sebanyak Nr 1 kali. Proses yang dilakukan pada setiap putaran adalah : a. ByteSub : Substitusi byte dengan menggunakan tabel substitusi (S-box). b. ShiftRow : Pergeseran baris-baris array state secara wrapping. c. MixColumn : Mengacak data di masing-masing kolom array state. d. AddRoundKey : Melakukan XOR antara state sekarang dengan round key. 3. Final round : Proses untuk putaran terakhir : a. ByteSub b. ShiftRow c. AddRoundKey Diagram proses enkripsi AES dapat dilihat pada gambar berikut. Plain Text Initial Round AddRoundKey Cipher Key Standard Round 1-ByteSub 2-ShiftRow 3-MixColumn 4-AddRoundKey Nr 1 Rounds Round Key Nn Final Round 1-ByteSub 2-ShiftRow 3-AddRoundKey Round Key Nr Cipher Text n : putaran ke Algoritma Rijndael mempunyai 3 parameter sebagai berikut. 1. Plainteks : Array yang berukuran 16 byte, yang berisi data masukan. 2. Cipherteks : Array yang berukuran 16 byte, yang berisi hasil enkripsi. Jenis-Jenis Enkripsi 8

3. Key : Array yang berukuran 16 byte, yang berisi kunci ciphering (disebut juga cipher key). Dengan 16 byte, maka baik blok data dan kunci yang berukuran 128-bit dapat disimpan di dalam ketiga array tersebut (128 = 16 x 8). Selama kalkulasi plainteks menjadi cipherteks, status sekarang dari data disimpan di dalam array of byte dua dimensi, state, yang berukuran NROWS x NCOLS. Elemen array state diacu sebagai S[r,c], dengan 0 r < 4 dan 0 c < Nc (Nc adalah panjang blok dibagi 32). Pada AES, Nc = 128/32 = 4. Tabel S-box yang digunakan dalam transformasi ByteSub() AES Gambar Ilustrasi Transformasi ByteSub() AES Gambar Ilustrasi Transformasi ShiftRow() AES Jenis-Jenis Enkripsi 9

Gambar Ilustrasi Transformasi MixColumn() AES Gambar Ilustrasi Transformasi AddRoundKey() AES C. Cipher Kebalikan (Inverse Cipher) Cipher kebalikan merupakan algoritma kriptografi AES yang digunakan untuk melakukan proses dekripsi cipherteks menjadi plainteksnya. Secara garis besar, cipher kebalikan yang beroperasi blok 128-bit dengan kunci 128-bit adalah sebagai berikut. 1. AddRoundKey : Melakukan XOR antara state awal (cipherteks) dengan cipher key. Tahap ini disebut juga initial round. 2. Putaran sebanyak Nr 1 kali. Proses yang dilakukan pada setiap putaran adalah : a. InvShiftRow : Pergeseran baris-baris array state secara wrapping. b. InvByteSub : Substitusi byte dengan menggunakan tabel substitusi kebalikan (inverse S-box). Tabel substitusi dapat dilihat pada tabel 3. c. AddRoundKey : Melakukan XOR antara state sekarang dengan round key. d. InvMixColumn : Mengacak data di masing-masing kolom array state. 3. Final round : proses untuk putaran terakhir : a. InvShiftRow b. InvByteSub c. AddRoundKey Jenis-Jenis Enkripsi 10

Tabel S-box yang digunakan dalam transformasi InvByteSub() AES Diagram Proses Dekripsi AES Digital Certificate Server (DCS) Digital Certificate Server melakukan verifikasi untuk digital signature, autentikasi user, menggunakan public dan private key, contoh : Netscape Certificate Server. Jenis-Jenis Enkripsi 11

Digital Certificate memungkinkan anda untuk menyampaikan informasi mengenai perusahaan anda ketika melakukan transaksi dengan pengguna situs anda. Dengan demikian akan membuktikan identitas perusahaan anda. Digital Certificate mengikat Identitas anda dengan sepasang key yang dapat digunakan untuk melakukan enkripsi dan menandatangani informasi. Sebuah Trusted Digital Certificate diterbitkan oleh Certificate Authority (CA) - dalam hal ini adalah Thawte, dan di sign secara digital oleh CA dengan menggunakan sebuah private key. Digital Certificate biasanya terdiri dari : Public Key Pemilik Nama Pemilik Tanggal Berlaku Public Key Serial Number Digital Certificate Digital Signature dari CA (Issuer) Digital Certificate dapat digunakan untuk berbagai macam keperluan yang menuntut perlindungan dan privacy data antara pengguna situs dengan server situs. Yang paling umum adalah digunakan untuk formulir yang berisi data sensitif yang banyak ditemukan implementasinya pada situs e-commerce, atau juga e-mail (seperti GMail dan YahooMail) Anda membutuhkan Digital Certificate ketika anda ingin membangun kepercayaan pengguna situs anda, memberikan kepastian mengenai identitas institusi anda, dan menjamin kerahasiaan data yang dimasukkan oleh pengguna situs anda. Sebuah Digital Certificate dapat digunakan untuk mengamankan sebuah Domain di sebuah Server. Lisensi tambahan memungkinkan kita untuk mengamankan domain yang sama di server yang berbeda, misalnya pada konfigurasi load balancing yang menggunakan banyak server untuk satu domain. IP Security (IPSec) 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 Jenis-Jenis Enkripsi 12

terhadap data pada lapisan yang sama dengan protokol IP dan menggunakan teknik Tunnelinguntuk 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 lapisan 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. Kebijakankebijakan keamanan tersebut berisi kumpulan filter yang diasosiasikan dengan kelakuan tertentu. Ketika sebuah alamat IP, nomor port TCP dan UDP atau protokol dari sebuah paket datagram IP cocok dengan filter tertentu, maka kelakukan yang dikaitkan dengannya akan diaplikasikan terhadap paket IP tersebut. IPSec merupakan enkripsi public/private key, dirancang oleh CISCO System, menggunakan DES 40-bit dan authentication, built-in pada produk CISCO, solusi tepat untuk Virtual Private Network (VPN) dan Remote Network Access. Dalam sistem operasi Windows 2000, Windows XP, dan Windows Server 2003, kebijakan keamanan tersebut dibuat dan ditetapkan pada level 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. Jenis-Jenis Enkripsi 13

Peraturan-peraturan tersebut dapat menentukan metode-metode autentikasi dan negosiasi, atribut proses tunnel ing, 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 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 Jenis-Jenis Enkripsi 14

sebelumnya (skema Pre-Shared Key/PSK) untuk melakukan enkripsi secara privat Kerberos Kerberos adalah sebuah sistem autentikasi yang dikembangkan oleh Proyek Athena di MIT. Ketika pemakai login, Kerberos mengautentikasi pemakai tersebut (menggunakan password), dan memberikan pemakai suatu cara untuk membuktikan identitasnya ke server dan host lain yang tersebar di jaringan. Autentikasi ini kemudian digunakan oleh program seperti rlogin untuk membolehkan pemakai login ke host lain tanpa password (seperti file.rhosts). Autentikasi juga digunakan oleh sistem surat dalam rangka menjamin bahwa surat dikirimkan kepada orang yang tepat, dan juga menjamin bahwa pengirim adalah benar orang yang diklaimnya. Efek keseluruhan menginstalasi Kerberos dan berbagai program bersamanya adalah secara virtual menghilangkan kemampuan pemakai untuk menipu (spoof) sistem agar mempercayai bahwa mereka adalah orang lain. Sayangnya, instalasi Kerberos sangat sulit, membutuhkan modifikasi atau mengganti berbagai program standar. Point to point Tunneling Protocol (PPTP) dan Layer Two Tunneling Protocol (L2TP) Point-to-Point Tunneling Protocol. Point-to-Point Tunneling Protocol (PPTP) menyajikan fungsionalitas VPN yang mirip dengan apa yang disediakan IPSec. PPTP juga mendukung banyak protocol jaringan seperti IP, Internetwork Packet Exchange (IPX), dan NetBIOS Enhanced User Interface (NetBEUI). Layer Two Tunneling Protocol. Layer Two Tunneling Protocol (L2TP) merupakan suatu kombinasi PPTP dan Layer Two Forwarding (L2F). L2F adalah suatu protocol transmisi yang memungkinkan server akses dial-up membingkai lalu lintas dial-up di dalam Point to Point Protocol (PPP) dan mentransmisikannya pada hubungan WAN ke server L2F (router). Jenis-Jenis Enkripsi 15

Remote Access Dial-in User Service (RADIUS) RADIUS atau Remote Authentication Dial-In User Service merupakan sebuah protocol yang memungkinkan perusahaan untuk melakukan Authentication (pembuktian keaslian), Authorize (otoritas/pemberian hak) dan Accounting (akutansi) (AAA) untuk me-remote para pengguna atau user yang ingin mengakses suatu sistem atau layanan dari pusat server jaringan komputer. Anda mungkin telah mendapatkan pengalaman dalam hal Authentication, misalnya saja Anda menggunakan account internet dial up untuk masuk dan melakukan browsing untuk mendapatkan informasi mengenai berita-berita terkini. Selain itu, anda mengecek email perusahaan untuk melihat email-email yang telah dikirim oleh client-client anda. Dan akhir pekan ini, mungkin saja anda menggunakan VPN (Virtual Private Network) untuk menghubungkan ke jaringan kantor perusahaan sehingga bisa memonitoring kondisi jaringan client perusahaan anda. Agar anda bisa menggunakan VPN dan account internet dial up maka anda harus melakukan authentication terlebih dahulu. Tetapi apa yang terjadi dibelakang layar ketika anda melakukan authentication pada komputer?. Komputer harus mempunyai satu set protocol dan proses untuk memverifikasi authentication yang telah anda lakukan. Salah satu protocol yang mampu mengerjakan proses authentication tersebut adalah RADIUS (Remote Authentication Dial-In User Service). RADIUS, mula-mula dikembangkan oleh perusahan Livingston, merupakan sebuah protocol access-control yang memverifikasi dan yang melakukan authentication para pengguna berdasarkan metoda yang umum digunakan. RADIUS umumnya digunakan oleh ISP (Internet Service Provider) atau penyedia layanan internet untuk melakukan Authentication (pembuktian keaslian pengguna), Authorize (mengatur pemberian hak/otoritas) dan Accounting (mencatat penggunaan layanan yang digunakan). RADIUS menjalankan sistem administrasi pengguna yang terpusat, sistem ini akan mempermudah tugas administrator. Dapat kita bayangkan berapa banyak jumlah pelanggan yang dimiliki oleh sebuah ISP, dan ditambah lagi dengan penambahan pelanggan baru dan penghapusan pelanggan yang sudah tidak berlangganan lagi. Apabila tidak ada suatu sistem administrasi yang terpusat, maka akan merepotkan administrator dan tidak menutup kemungkinan Jenis-Jenis Enkripsi 16

ISP akan merugi atau pendapatannya berkurang. Dengan sistem ini pengguna dapat menggunakan hotspot di tempat yang berbeda-beda dengan melakukan autentikasi ke sebuah RADIUS server. RADIUS merupakan suatu protokol yang dikembangkan untuk proses AAA (authentication, authorization, and Accounting.) Berikut ini adalah RFC (Request For Comment) yang berhubungan dengan RADIUS : RFC2865 : Remote Authentication Dial-In User Service (RADIUS) RFC 2866 : RADIUS Accounting RFC 2867 : RADIUS Accounting for Tunneling RFC 2868 : RADIUS Authentication for Tunneling RFC2869 : RADIUS Extensions RFC 3162 : RADIUS over IP6 RFC 2548 : Microsoft Vendor-Specific RADIUS Attributes Pada awal pengembangannya, RADIUS menggunakan port 1645, yang ternyata bentrok dengan layanan datametrics. Sekarang, port yang dipakai RADIUS adalah port 1812. Gambar Struktur Paket Data RADIUS Struktur paket data RADIUS pada Gambar diatas terdiri dari lima bagian, yaitu: 1. Code Code memiliki panjang adalah satu oktet, digunakan untuk membedakan tipe pesan RADIUS yang dikirimkan pada paket. Kode-kode tersebut (dalam desimal) ialah : Jenis-Jenis Enkripsi 17

2. Identifier Memiliki panjang satu oktet, bertujuan untuk mencocokkan permintaan. 3. Length Memiliki panjang dua oktet, memberikan informasi mengenai panjang paket. 4. Authenticator Memiliki panjang 16 oktet, digunakan untuk membuktikan balasan dari RADIUS server, selain itu digunakan juga untuk algoritma password. 5. Attributes Berisikan informasi yang dibawa pesan RADIUS, setiap pesan dapat membawa satu atau lebih atribut. Contoh atribut RADIUS: nama pengguna, password, CHAP-password, alamat IP access point(ap), pesan balasan. RSA Encryption RSA di bidang kriptografi adalah sebuah algoritma pada enkripsi public key. RSA merupakan algoritma pertama yang cocok untuk digital signature seperti halnya ekripsi, dan salah satu yang paling maju dalam bidang kriptografi public key. RSA masih digunakan secara luas dalam protokol electronic commerce, dan dipercaya dalam mengamnkan dengan menggunakan kunci yang cukup panjang. Jenis-Jenis Enkripsi 18

Algortima RSA dijabarkan pada tahun 1977 oleh tiga orang : Ron Rivest, Adi Shamir dan Len Adleman dari Massachusetts Institute of Technology. Huruf RSA itu sendiri berasal dari inisial nama mereka (Rivest Shamir Adleman). Clifford Cocks, seorang matematikawan Inggris yang bekerja untuk GCHQ, menjabarkan tentang sistem equivalen pada dokumen internal di tahun 1973. Penemuan Clifford Cocks tidak terungkap hingga tahun 1997 karena alasan topsecret classification. Algoritma tersebut dipatenkan oleh Massachusetts Institute of Technology pada tahun 1983 di Amerika Serikat sebagai U.S. Patent 4405829. Paten tersebut berlaku hingga 21 September 2000. Semenjak Algoritma RSA dipublikasikan sebagai aplikasi paten, regulasi di sebagian besar negara-negara lain tidak memungkinkan penggunaan paten. Hal ini menyebabkan hasil temuan Clifford Cocks di kenal secara umum, paten di Amerika Serikat tidak dapat mematenkannya. Penyerangan yang paling umum pada RSA ialah pada penanganan masalah faktorisasi pada bilangan yang sangat besar. Apabila terdapat faktorisasi metode yang baru dan cepat telah dikembangkan, maka ada kemungkinan untuk membongkar RSA. Pada tahun 2005, bilangan faktorisasi terbesar yang digunakan secara umum ialah sepanjang 663 bit, menggunakan metode distribusi mutakhir. Kunci RSA pada umumnya sepanjang 1024 2048 bit. Beberapa pakar meyakini bahwa kunci 1024- bit ada kemungkinan dipecahkan pada waktu dekat (hal ini masih dalam perdebatan), tetapi tidak ada seorangpun yang berpendapat kunci 2048-bit akan pecah pada masa depan yang terprediksi. Semisal Eve, seorang eavesdropper (pencuri dengar penguping), mendapatkan public key N dan e, dan ciphertext c. Bagimanapun juga, Eve tidak mampu untuk secara langsung memperoleh d yang dijaga kerahasiannya oleh Alice. Masalah untuk menemukan n seperti pada ne=c mod N di kenal sebagai permasalahan RSA. Cara paling efektif yang ditempuh oleh Eve untuk memperoleh n dari c ialah dengan melakukan faktorisasi N kedalam p dan q, dengan tujuan untuk menghitung (p-1)(q-1) yang dapat menghasilkan d dari e. Tidak ada metode waktu polinomial untuk melakukan faktorisasi pada bilangan bulat berukuran besar di komputer saat ini, tapi hal tersebut pun masih belum terbukti. Jenis-Jenis Enkripsi 19

Masih belum ada bukti pula bahwa melakukan faktorisasi N adalah satusatunya cara untuk memperoleh n dari c, tetapi tidak ditemukan adanya metode yang lebih mudah (setidaknya dari sepengatahuan publik). Bagaimanapun juga, secara umum dianggap bahwa Eve telah kalah jika N berukuran sangat besar. Jika N sepanjang 256-bit atau lebih pendek, N akan dapat difaktorisasi dalam beberapa jam pada Personal Komputer, dengan menggunakan perangkat lunak yang tersedia secara bebas. Jika N sepanjang 512-bit atau lebih pendek, N akan dapat difaktorisasi dalam hitungan ratusan jam seperti pada tahun 1999. Secara teori, perangkat keras bernama TWIRL dan penjelasan dari Shamir dan Tromer pada tahun 2003 mengundang berbagai pertanyaan akan keamanan dari kunci 1024-bit. Santa disarankan bahwa N setidaknya sepanjang 2048-bit. Pada thaun 1993, Peter Shor menerbitkan Algoritma Shor, menunjukkan bahwa sebuah komputer quantum secara prinsip dapat melakukan faktorisasi dalam waktu polinomial, mengurai RSA dan algoritma lainnya. Bagaimanapun juga, masih terdapat pedebatan dalam pembangunan komputer quantum secara prinsip. RSA memiliki kecepatan yang lebih lambat dibandingkan dengan DES dan algoritma simetrik lainnya. Pada prakteknya, Bob menyandikan pesan rahasia menggunakan algoritma simetrik, menyandikan kunci simetrik menggunakan RSA, dan mengirimkan kunci simetrik yang dienkripsi menggunakan RSA dan juga mengirimkan pesan yang dienkripasi secara simetrik kepada Alice. Prosedur ini menambah permasalahan akan keamanan. Singkatnya, Sangatlah penting untuk menggunakan pembangkit bilangan acak yang kuat untuk kunci simetrik yang digunakan, karena Eve dapat melakukan bypass terhadap RSA dengan menebak kunci simterik yang digunakan. Secure Hash Algoritm (SHA) 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. Jenis-Jenis Enkripsi 20

SHA disebut aman (secure) karena ia dirancang sedemikian sehingga secara komputasi tidak mungkin menemukan pesan yang berkoresponden dengan message digest yang diberikan. Algoritma SHA menerima masukan berupa pesan dengan ukuran maksimum 2 64 bit (2.147.483.648 gigabyte) dan menghasilkan message digest yang panjangnya 160 bit, lebih panjang dari message digest yang dihasilkan oleh MD5. MD5 MD5 adalah fungsi hash satu-arah yang dibuat oleh Ron Rivest. MD5 merupakan perbaikan dari MD4 setelah MD4 berhasil diserang oleh kriptanalis. Algoritma MD5 menerima masukan berupa pesan dengan ukuran sembarang dan menghasilkan message digest yang panjangnya 128 bit. Gambaran pembuatan message digest dengan algoritma MD5 diperlihatkan pada gambar berikut. L x 512 bit K bit Padding bits K mod 2 64 (1-512 bit) Pesan 1000...000 Panjang Pesan 512 512 512 512 Y 0 Y 1... Y q... Y L - 1 512 512 512 512 ABCD H MD5 H MD5 128 128 128 H MD5 128 128 128 H MD5 128 Message Digest Pembuatan Message Digest dengan Algoritma MD5 Langkah-langkah pembuatan message digest secara garis besar adalah sebagai berikut. 1. Penambahan bit-bit pengganjal (padding bits) 2. Penambahan nilai panjang pesan semula 3. Inisialisasi penyangga (buffer) MD 4. Pengolahan pesan dalam blok berukuran 512 bit Jenis-Jenis Enkripsi 21

1. Penambahan Bit-bit Pengganjal Pesan ditambah dengan sejumlah bit pengganjal sedemikian sehingga 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 MD5 memperoses pesan dalam blok-blok yang berukuran 512. Pesan dengan panjang 448 bit pun tetap ditambah dengan bit-bit pengganjal. Jika panjang pesan 448 bit, maka pesan tersebut ditambah dengan 512 bit menjadi 960 bit. Jadi, panjang bit-bit pengganjal adalah antara 1 sampai 512. Bit-bit pengganjal terdiri dari sebuah bit 1 diikuti dengan sisanya bit 0. 2. Penambahan Nilai Panjang Pesan Semula Pesan yang telah diberi bit-bit pengganjal selanjutnya ditambah lagi dengan 64 bit yang menyatakan panjang pesan semula. Jika panjang pesan > 2 64 maka yang diambil adalah panjangnya dalam modulo 2 64. Dengan kata lain, jika panjang pesan semula adalah K bit, maka 64 bit yang ditambahkan menyatakan K modulo 2 64. Setelah ditambah dengan 64 bit, panjang pesan sekarang menjadi 512 bit. 3. Inisialisai Penyangga MD MD5 membutuhkan 4 buah penyangga (buffer) yang masing-masing panjangnya 32 bit. Total panjang penyangga adalah 4 32 = 128 bit. Keempat penyangga ini menampung hasil antara dan hasil akhir. Keempat penyangga ini diberi nama A, B, C, dan D. Setiap penyangga diinisialisasi dengan nilai-nilai (dalam notasi HEX) sebagai berikut. A = 01234567 B = 89ABCDEF C = FEDCBA98 D = 76543210 Jenis-Jenis Enkripsi 22

4. Pengolahan Pesan dalam Blok Berukuran 512 bit. Pesan dibagi menjadi L buah blok yang masing-masing panjangnya 512 bit (Y 0 sampai Y L 1 ). Setiap blok 512-bit diproses bersama dengan penyangga MD menjadi keluaran 128- bit, dan ini disebut proses H MD5. Gambaran proses H MD5 diperlihatkan pada gambar berikut. Y q 512 MD q ABCD f F ( ABCD, Y, T[1..16]) q A B C D ABCD f G ( ABCD, Y, T[17..32]) q A B C D ABCD f H ( ABCD, Y, T[33..48]) q A B C D ABCD f ( ABCD, Y, T[49..64]) I q + + + + 128 MD q + 1 Gambar Pengolahan blok 512 bit (Proses H MD5 ) Proses H MD5 terdiri dari 4 buah putaran, dan masing-masing putaran melakukan operasi dasar MD5 sebanyak 16 kali dan setiap operasi dasar memakai sebuah elemen T. Jadi setiap putaran memakai 16 elemen Tabel T. Pada Gambar 4, Y q menyatakan blok 512-bit ke-q dari pesan yang telah ditambah bit-bit pengganjal dan tambahan 64 bit nilai panjang pesan semula. MD q adalah nilai Jenis-Jenis Enkripsi 23

message digest 128-bit dari proses H MD5 ke-q. Pada awal proses, MD q berisi nilai inisialisasi penyangga MD. Fungsi-fungsi f F, f G, f H, dan f I masing-masing berisi 16 kali operasi dasar terhadap masukan, setiap operasi dasar menggunakan elemen Tabel T. Operasi dasar MD5 diperlihatkan pada gambar berikut. a b c d g + + X[k] + T[i] CLS s + Gambar Operasi dasar MD5 Operasi dasar MD5 yang diperlihatkan pada gambar di atas dapat ditulis dengan sebuah persamaan sebagai berikut. a b + CLS s (a + g(b, c, d) + X[k] + T[i]) (7) yang dalam hal ini, a, b, c, d = Empat buah peubah penyangga 32-bit (berisi nilai penyangga A, B, C, D) Jenis-Jenis Enkripsi 24

g = Salah satu fungsi F, G, H, I CLS s = Circular left shift sebanyak s bit X[k] = Kelompok 32-bit ke-k dari blok 512 bit message ke-q. Nilai k = 0 sampai 15. T[i] = Elemen Tabel T ke-i (32 bit) + = Operasi penjumlahan modulo 2 32 Fungsi f F, f G, f H, dan f I adalah fungsi untuk memanipulasi masukan a, b, c, dan d dengan ukuran 32-bit. Masing-masing fungsi dapat dilihat pada tabel berikut. Tabel Fungsi-fungsi dasar MD5 Nama Notasi g(a, b, c, d) f F F(b, c, d) (b c) (~b d) f G G(b, c, d) (b d) (c ~d) f H H(b, c, d) b c d f I I(b, c, d) c (b ~ d) Catatan : Operator logika AND, OR, NOT, XOR masing-masing dilambangkan dengan,, ~, Nilai T[i] dapat dilihat pada Tabel 2. Tabel ini disusun oleh fungsi 2 32 abs(sin(i)), i dalam radian. Tabel Nilai T[i] T[1] = D76AA478 T[2] = E8C7B756 T[3] = 242070DB T[4] = C1BDCEEE T[5] = F57C0FAF T[6] = 4787C62A T[7] = A8304613 T[8] = FD469501 T[9] = 698098D8 T[10] = 8B44F7AF T[11] = FFFF5BB1 T[12] = 895CD7BE T[13] = 6B901122 T[14] = FD987193 T[15] = A679438E T[16] = 49B40821 T[17] = F61E2562 T[18] = C040B340 T[19] = 265E5A51 T[20] = E9B6C7AA T[21] = D62F105D T[22] = 02441453 T[23] = D8A1E681 T[24] = E7D3FBCB T[25] = 21E1CDE6 T[26] = C33707D6 T[27] = F4D50D87 T[28] = 455A14ED T[29] = A9E3E905 T[30] = FCEFA3F8 T[31] = 676F02D9 T[32] = 8D2A4C8A T[33] = FFFA3942 T[34] = 8771F681 T[35] = 69D96122 T[36] = FDE5380C T[37] = A4BEEA44 T[38] = 4BDECFA9 T[39] = F6BB4B60 T[40] = BEBFBC70 T[41] = 289B7EC6 T[42] = EAA127FA T[43] = D4EF3085 T[44] = 04881D05 T[45] = D9D4D039 T[46] = E6DB99E5 T[47] = 1FA27CF8 T[48] = C4AC5665 T[49] = F4292244 T[50] = 432AFF97 T[51] = AB9423A7 T[52] = FC93A039 T[53] = 655B59C3 T[54] = 8F0CCC92 T[55] = FFEFF47D T[56] = 85845DD1 T[57] = 6FA87E4F T[58] = FE2CE6E0 T[59] = A3014314 T[60] = 4E0811A1 T[61] = F7537E82 T[62] = BD3AF235 T[63] = 2AD7D2BB T[64] = EB86D391 Dari persamaan (7) dapat dilihat bahwa masing-masing fungsi f F, f G, f H, dan f I melakukan 16 kali operasi dasar. Jenis-Jenis Enkripsi 25

Misalkan notasi : [abcd k s i] menyatakan operasi a b + ((a + g(b, c, d) + X[k] + T[i])<<<s) yang dalam hal ini <<<s melambangkan operasi circular left shift 32-bit, maka operasi dasar pada masing-masing putaran dapat ditabulasikan sebagai berikut. Putaran 1: 16 kali operasi dasar dengan g(b, c, d) = F(b, c, d) dapat dilihat pada tabel berikut. Tabel Rincian Operasi Pada Fungsi F(b, c, d) No. [abcd k s i] 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 [ABCD 0 7 1] [DABC 1 12 2] [CDAB 2 17 3] [BCDA 3 22 4] [ABCD 4 7 5] [DABC 5 12 6] [CDAB 6 17 7] [BCDA 7 22 8] [ABCD 8 7 9] [DABC 9 12 10] [CDAB 10 17 11] [BCDA 11 22 12] [ABCD 12 7 13] [DABC 13 12 14] [CDAB 14 17 15] [BCDA 15 22 16] Putaran 2: 16 kali operasi dasar dengan g(b, c, d) = G(b, c, d) dapat dilihat pada tabel berikut. Jenis-Jenis Enkripsi 26

Tabel Rincian Operasi Pada Fungsi G(b, c, d) No. [abcd k s i ] 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 [ABCD 1 5 17] [DABC 6 9 18] [CDAB 11 14 19] [BCDA 0 20 20] [ABCD 5 5 21] [DABC 10 9 22] [CDAB 15 14 23] [BCDA 4 20 24] [ABCD 9 5 25] [DABC 14 9 26] [CDAB 3 14 27] [BCDA 8 20 28] [ABCD 13 5 29] [DABC 2 9 30] [CDAB 7 14 31] [BCDA 12 20 32] Putaran 3: 16 kali operasi dasar dengan g(b, c, d) = H(b, c, d) dapat dilihat pada tabel berikut. Tabel Rincian Operasi Pada Fungsi H(b, c, d) No. [abcd k s i ] 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 [ABCD 5 4 33] [DABC 8 11 34] [CDAB 11 16 35] [BCDA 14 23 36] [ABCD 1 4 37] [DABC 4 11 38] [CDAB 7 16 39] [BCDA 10 23 40] [ABCD 13 4 41] [DABC 0 11 42] [CDAB 3 16 43] [BCDA 6 23 44] [ABCD 9 4 45] [DABC 12 11 46] [CDAB 15 16 47] [BCDA 2 23 48] Putaran 4: 16 kali operasi dasar dengan g(b, c, d) = I(b, c, d) dapat dilihat pada tabel berikut. Jenis-Jenis Enkripsi 27

Tabel Rincian Operasi Pada Fungsi I(b, c, d) No. [abcd k s i ] 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 [ABCD 0 6 49] [DABC 7 10 50] [CDAB 14 15 51] [BCDA 5 21 52] [ABCD 12 6 53] [DABC 3 10 54] [CDAB 10 15 55] [BCDA 1 21 56] [ABCD 8 6 57] [DABC 15 10 58] [CDAB 6 15 59] [BCDA 13 21 60] [ABCD 4 6 61] [DABC 11 10 62] [CDAB 2 15 63] [BCDA 9 21 64] Setelah putaran keempat, a, b, c, dan d ditambahkan ke A, B, C, dan D, dan selanjutnya algoritma memproses untuk blok data berikutnya (Y q+1 ). Keluaran akhir dari algoritma MD5 adalah hasil penyambungan bit-bit di A, B, C, dan D. Dari uraian di atas, secara umum fungsi hash MD5 dapat ditulis dalam persamaan matematis berikut. MD 0 = IV (8) MD q + 1 = MD q + f I (Y q + f H (Y q + f G (Y Q + f F (Y q + MD q )))) MD = MD L 1 (10) yang dalam hal ini, IV = initial vector dari penyangga ABCD, yang dilakukan pada proses inisialisasi penyangga Y q = blok pesan berukuran 512-bit ke-q L = jumlah blok pesan MD = nilai akhir message digest Jenis-Jenis Enkripsi 28

Secure Shell (SSH), Stelnet SSH dan stelnet adalah program yang memungkinkan Anda untuk login ke sistem remote dan memiliki koneksi yang terenkripsi. SSH adalah paket program yang digunakan sebagai pengganti yang aman untuk rlogin, rsh dan rcp. Ia menggunakan public-key cryptography untuk mengenkripsi komunikasi antara 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. Ia akan melakukan kompresi data pada koneksi anda, dan komunikasi X11 yang aman antar host. Secure Socket Layer (SSL) SSL atau Secure Socket Layer adalah suatu teknik pengamanan data dengan cara melakukan enkripsi data yang dikirimkan. Dengan SSL ini, meskipun secara fisik saluran disadap maka data-data yang ditangkap oleh pihak ketiga adalah data yang teracak sehingga dibutuhkan effort khusus lagi untuk menterjemahkannya ke data aslinya. Untuk proses enkripsi ini dapat digunakan bermacam-macam teknik enkripsi yang telah dikenal seperti DES, RSA, MD5 atau menggunakan teknik Public dan Private Key. Untuk meningkatkan keamanan ke level yang lebih tinggi, bahkan dapat digunakan teknik yang berbeda-beda sekaligus, atau menggunakan kunci yang berganti-ganti pada setiap sesinya. Proses enkripsi data dengan SSL ini bila dilihat pada layer TCP/IP berada antara layer Application dengan layer Transport. SSL diciptakan untuk mengamankan data pada layer Application, sebelum data tersebut disalurkan ke jaringan (layer Transport, Internet, dan Data Link). Bila seorang penyadap (sniffer) melakukan penyadapan, maka ketiga layer terbawah inilah yang dapat menjadi sasaran. Sehingga data yang telah diamankan dengan SSL tadi, relatif cukup aman dari sadapan para sniffer tersebut. Dikatakan relatif, karena sebetulnya ada teknik kejahatan baru yang telah dikembangkan untuk mem-bypass SSL ini. Dan karena kejahatan ini dilakukan di layer Application, maka SSL menjadi tidak berguna. Teknik ini adalah yang disebut Jenis-Jenis Enkripsi 29

dengan Man In the Middle Attack, di mana ada pihak ketiga yang bertindak sebagai perantara antara client dengan server (tanpa diketahui oleh kedua pihak) dan menerima dan meneruskan semua data yang diterimanya dari dan ke kedua belah pihak. Proses masuknya pihak ketiga di tengah ini bisa terjadi karena adanya corruption pada DNS system ataupun akibat adanya virus / trojan yang memang secara sengaja dimasukkan oleh pihak ketiga tersebut ke komputer client. Security Token Token merupakan istilah bahasa asing untuk tanda. Security Token adalah tanda keamanan yang diberikan oleh sebuah perusahaan untuk menjaga keamanan datanya. Biasanya perusahaan yang menggunakan Security Token adalah bank. Untuk memberikan keyamanan bagi nasabah, banyak pihak perbankan mengembangkan layanan-layanan yang memanfaatkan teknologi informasi dan komunikasi. Layanan-layanan tersebut adalah SMS Banking, Phone Banking dan Internet banking. Salah satu faktor penting pihak perbankan dalam memberikann layanan-layanan ini ada jaminan terhadap seluruh transaksi yang dilakukan agar tidak terjadi seperti yang dialami oleh salah satu bank swasta di tahun 2001 lalu dimana situs plesetannya muncul dan menangkap PIN penggunanya walaupun tidak disalahgunakan oleh pelakunya, namun hal ini telah menunjukan bahwa security harus merupakan faktor penting yang perlu diperhatikan selain tambahan fitur bagi kenyaman pengguna. Mungkin belajar dari pengalaman yang pernah dialami bank tersebut sehingga saat ini semua instansi perbankan meningkatkan keamanan layanan internet banking. Keamananan yang ditingkatkan adalah dengan menggunakan twofactor authentication atau yang biasanya dikenal juga sebagai strong authentication sehingga apabila kita ingin menggunakan layanan internet banking pasti akan diberikan security token. Setiap bank memiliki security token yang berbeda sehingga apabila kita memiliki rekening di empat bank yang berbeda dan menggunakan layanan internet banking maka sudah bisa dipastikan kita akan mengantongi empat Security Token. Jenis-Jenis Enkripsi 30

Daftar Pustaka http://blog.re.or.id/metode-metode-enkripsi-modern.htm http://ganingku.com/index.php http://indrasufian.web.id http://id.wikipedia.org/wiki/ip_security.htm http://id.wikipedia.org/wiki/kerberos.htm http://kriptografi.multiply.com http://www.skma.org http://id.wikipedia.org/wiki/kriptografi http://id.wikipedia.org/wiki/md5.htm http://kur2003.if.itb.ac.id/file/sha.doc Jenis-Jenis Enkripsi 31