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 http://fajj27blog.wordpress.com/2009/01/05/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
ciphertext enkripsi
kunci enkripsi
plaintext dekripsi
kunci dekripsi
Diagram Proses Enkripsi dan Dekripsi
Jenis-Jenis Enkripsi http://fajj27blog.wordpress.com/2009/01/05/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 : Ee(M) – C Sedangkan untuk proses dekripsi, merupakan pengoperasian fungsi D (dekripsi) menggunakan d (kunci dekripsi) pada C (ciphertext) sehingga dihasilkan M (plaintext), notasinya : Dd(C) = M Sehingga dari dua hubungan diatas berlaku : Dd(Ee(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 http://fajj27blog.wordpress.com/2009/01/05/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 Ki. Keluaran dai fungsi f di-XOR-kan dengan blok L untuk mendapatkan blok R yang baru. Sedangkan blok L yang baru langsung diambil dari blok R sebelumnya. Ini adalah satu putaran DES.
Secara matematis, satu putaran DES dinyatakan sebagai berikut.
L i = Ri – 1 Ri = Li – 1 ⊕ f(Ri – 1, Ki)
Gambar berikut memperlihatkan skema algoritma DES yang lebih rinci.
Jenis-Jenis Enkripsi http://fajj27blog.wordpress.com/2009/01/05/jenis_enkripsi
4
Plainteks
IP
L0
R0
f
K1
⊕ L1 = R 0
R1 = L0 ⊕ f ( R 0 , K 1 )
f
K2
⊕ L2 = R 1
R 2 = L1 ⊕ f ( R1 , K 2 )
L15 = R14
R15 = L14 ⊕ f ( R14 , K 15 )
f
K16
⊕ R16 = L15 ⊕ f ( R15 , K 16 )
L16 = R15
IP-1
Cipherteks
Gambar Algoritma Enkripsi dengan DES
Jenis-Jenis Enkripsi http://fajj27blog.wordpress.com/2009/01/05/jenis_enkripsi
5
•
Catatlah bahwa satu putaran DES merupakan model jaringan Feistel (lihat Gambar berikut).
Li - 1
Ri −1
f
Ki
⊕ Li
Ri
Gambar Jaringan Feistel untuk satu putaran DES
•
Perlu dicatat dari Gambar Algoritma Enkripsi Dengan DES bahwa jika (L16, R16) merupakan keluaran dari putaran ke-16, maka (R16, L16) 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 http://fajj27blog.wordpress.com/2009/01/05/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) AES-128 4 AES-192 6 AES-256 8 Catatan : 1 word = 32 bit
Ukuran Blok (Nb words) 4 4 4
Jumlah Putaran (Nr) 10 12 14
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 2128 ≈ 3,4 x 1038 kemungkinan kunci. Jika digunakan sebuah mesin dengan semilyar prosesor paralel, masingmasing dapat menghitung sebuah kunci setiap satu pico detik, maka akan dibutuhkan waktu 1010 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 http://fajj27blog.wordpress.com/2009/01/05/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
Standard Round 1-ByteSub 2-ShiftRow 3-MixColumn 4-AddRoundKey
Cipher Key
Nr – 1 Rounds
Final Round 1-ByteSub 2-ShiftRow 3-AddRoundKey
Cipher Text
Round Key Nn
Round Key Nr
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 http://fajj27blog.wordpress.com/2009/01/05/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 http://fajj27blog.wordpress.com/2009/01/05/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 http://fajj27blog.wordpress.com/2009/01/05/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 http://fajj27blog.wordpress.com/2009/01/05/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 http://fajj27blog.wordpress.com/2009/01/05/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 http://fajj27blog.wordpress.com/2009/01/05/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 http://fajj27blog.wordpress.com/2009/01/05/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 http://fajj27blog.wordpress.com/2009/01/05/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 http://fajj27blog.wordpress.com/2009/01/05/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 http://fajj27blog.wordpress.com/2009/01/05/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 http://fajj27blog.wordpress.com/2009/01/05/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 1024bit 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 http://fajj27blog.wordpress.com/2009/01/05/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 http://fajj27blog.wordpress.com/2009/01/05/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 264 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
K mod 264
Padding bits (1 - 512 bit)
Pesan
512
512
Y0
Y1 512
ABCD
128
HMD5
1000...000
512
HMD5
128
512
Yq
... 512
128
Panjang Pesan
YL - 1
... 512
128
HMD5
128
512
128
HMD5
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 http://fajj27blog.wordpress.com/2009/01/05/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 > 264 maka yang diambil adalah panjangnya dalam modulo 264. Dengan kata lain, jika panjang pesan semula adalah K bit, maka 64 bit yang ditambahkan menyatakan K modulo 264.
•
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 http://fajj27blog.wordpress.com/2009/01/05/jenis_enkripsi
22
4. Pengolahan Pesan dalam Blok Berukuran 512 bit. •
Pesan dibagi menjadi L buah blok yang masing-masing panjangnya 512 bit (Y0 sampai YL – 1).
•
Setiap blok 512-bit diproses bersama dengan penyangga MD menjadi keluaran 128bit, dan ini disebut proses HMD5. Gambaran proses HMD5 diperlihatkan pada gambar berikut.
Yq MDq 512
ABCD ← f F ( ABCD, Yq , T [1..16])
A
B
C
D
ABCD ← f G ( ABCD , Yq , T [17..32])
A
B
D
C
ABCD ← f H ( ABCD, Yq , T [33..48])
A
B
C
D
ABCD ← f I ( ABCD , Yq , T [ 49..64])
+
+
+
+
128
MDq + 1 Gambar Pengolahan blok 512 bit (Proses HMD5)
•
Proses HMD5 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, 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
Jenis-Jenis Enkripsi http://fajj27blog.wordpress.com/2009/01/05/jenis_enkripsi
23
message digest 128-bit dari proses HMD5 ke-q. Pada awal proses, MDq berisi nilai inisialisasi penyangga MD. •
Fungsi-fungsi fF, fG, fH, dan fI 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]
CLSs
+
Gambar Operasi dasar MD5
•
Operasi dasar MD5 yang diperlihatkan pada gambar di atas dapat ditulis dengan sebuah persamaan sebagai berikut.
a ← b + CLSs(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 http://fajj27blog.wordpress.com/2009/01/05/jenis_enkripsi
24
g
= Salah satu fungsi F, G, H, I
CLSs
= 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 232
Fungsi fF, fG, fH, dan fI 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)
fF fG fH fI
F(b, c, d) G(b, c, d) H(b, c, d) I(b, c, d)
(b ∧ c) ∨ (~b ∧ d) (b ∧ d) ∨ (c ∧ ~d) 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 232 × 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] T[18] T[19] T[20] T[21] T[22] T[23] T[24] T[25] T[26] T[27] T[28] T[29] T[30] T[31] T[32]
= = = = = = = = = = = = = = = =
F61E2562 C040B340 265E5A51 E9B6C7AA D62F105D 02441453 D8A1E681 E7D3FBCB 21E1CDE6 C33707D6 F4D50D87 455A14ED A9E3E905 FCEFA3F8 676F02D9 8D2A4C8A
T[33] T[34] T[35] T[36] T[37] T[38] T[39] T[40] T[41] T[42] T[43] T[44] T[45] T[46] T[47] T[48]
= = = = = = = = = = = = = = = =
FFFA3942 8771F681 69D96122 FDE5380C A4BEEA44 4BDECFA9 F6BB4B60 BEBFBC70 289B7EC6 EAA127FA D4EF3085 04881D05 D9D4D039 E6DB99E5 1FA27CF8 C4AC5665
T[49] T[50] T[51] T[52] T[53] T[54] T[55] T[56] T[57] T[58] T[59] T[60] T[61] T[62] T[63] T[64]
= = = = = = = = = = = = = = = =
F4292244 432AFF97 AB9423A7 FC93A039 655B59C3 8F0CCC92 FFEFF47D 85845DD1 6FA87E4F FE2CE6E0 A3014314 4E0811A1 F7537E82 BD3AF235 2AD7D2BB EB86D391
Dari persamaan (7) dapat dilihat bahwa masing-masing fungsi fF, fG, fH, dan fI melakukan 16 kali operasi dasar.
Jenis-Jenis Enkripsi http://fajj27blog.wordpress.com/2009/01/05/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. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
[abcd k s i] [ABCD 0 [DABC 1 [CDAB 2 [BCDA 3 [ABCD 4 [DABC 5 [CDAB 6 [BCDA 7 [ABCD 8 [DABC 9 [CDAB 10 [BCDA 11 [ABCD 12 [DABC 13 [CDAB 14 [BCDA 15
7 1] 12 2] 17 3] 22 4] 7 5] 12 6] 17 7] 22 8] 7 9] 12 10] 17 11] 22 12] 7 13] 12 14] 17 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 http://fajj27blog.wordpress.com/2009/01/05/jenis_enkripsi
26
Tabel Rincian Operasi Pada Fungsi G(b, c, d) No. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
[abcd k s i ] [ABCD 1 [DABC 6 [CDAB 11 [BCDA 0 [ABCD 5 [DABC 10 [CDAB 15 [BCDA 4 [ABCD 9 [DABC 14 [CDAB 3 [BCDA 8 [ABCD 13 [DABC 2 [CDAB 7 [BCDA 12
5 9 14 20 5 9 14 20 5 9 14 20 5 9 14 20
17] 18] 19] 20] 21] 22] 23] 24] 25] 26] 27] 28] 29] 30] 31] 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. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
[abcd k s i ] [ABCD 5 [DABC 8 [CDAB 11 [BCDA 14 [ABCD 1 [DABC 4 [CDAB 7 [BCDA 10 [ABCD 13 [DABC 0 [CDAB 3 [BCDA 6 [ABCD 9 [DABC 12 [CDAB 15 [BCDA 2
4 11 16 23 4 11 16 23 4 11 16 23 4 11 16 23
33] 34] 35] 36] 37] 38] 39] 40] 41] 42] 43] 44] 45] 46] 47] 48]
Putaran 4: 16 kali operasi dasar dengan g(b, c, d) = I(b, c, d) dapat dilihat pada tabel berikut.
Jenis-Jenis Enkripsi http://fajj27blog.wordpress.com/2009/01/05/jenis_enkripsi
27
Tabel Rincian Operasi Pada Fungsi I(b, c, d) No. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
•
[abcd k s i ] [ABCD 0 [DABC 7 [CDAB 14 [BCDA 5 [ABCD 12 [DABC 3 [CDAB 10 [BCDA 1 [ABCD 8 [DABC 15 [CDAB 6 [BCDA 13 [ABCD 4 [DABC 11 [CDAB 2 [BCDA 9
6 10 15 21 6 10 15 21 6 10 15 21 6 10 15 21
49] 50] 51] 52] 53] 54] 55] 56] 57] 58] 59] 60] 61] 62] 63] 64]
Setelah putaran keempat, a, b, c, dan d ditambahkan ke A, B, C, dan D, dan selanjutnya algoritma memproses untuk blok data berikutnya (Yq+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.
MD0 = IV
(8)
MDq + 1 = MDq + fI(Yq + fH(Yq + fG(YQ + fF(Yq + MDq))))
MD = MDL – 1
(10)
yang dalam hal ini, IV
= initial vector dari penyangga ABCD, yang dilakukan pada proses inisialisasi penyangga
Yq
= blok pesan berukuran 512-bit ke-q
L
= jumlah blok pesan
MD = nilai akhir message digest
Jenis-Jenis Enkripsi http://fajj27blog.wordpress.com/2009/01/05/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 http://fajj27blog.wordpress.com/2009/01/05/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 http://fajj27blog.wordpress.com/2009/01/05/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 http://fajj27blog.wordpress.com/2009/01/05/jenis_enkripsi
31