Selasa, 12 Mei 2015

METODE ENKRIPSI MODERN

A.    ENKRIPSI MODERN
Di bidang kriptografi, enkripsi ialah proses mengamankan suatu informasi dengan membuat informasi tersebut tidak dapat dibaca tanpa bantuan pengetahuan khusus. Hanya organisasi-organisasi tertentu dan individu yang memiliki kepentingan yang sangat mendesak akan kerahasiaan yang menggunakan enkripsi.
Enkripsi modern berbeda dengan enkripsi konvensional. Enkripsi modern sudah menggunkan komputer untuk pengoperasiannya, berfungsi untuk mengamankan data baik yang ditransfer melalui jaringan komputer mauapun yang bukan. Hal ini sangat berguna untuk melindungi privacy, data integrity, authentication dan non-repudiation. Perkembangan algoritma kriptografi modern berbasis bit didorong oleh penggunaan komputer digital yang merepresentasikan data dalam bentuk biner.

B.     METODE-METODE ENKRIPSI MODERN
1.      Data Encryption System (DES)
DES merupakan salah satu algoritma kriptografi cipher block dengan ukuran blok 64 bit dan ukuran kuncinya 56 bit. Algoritma DES dibuat di IBM, dan merupakan modifikasi daripada algoritma terdahulu yang bernama Lucifer. Lucifer merupakan algoritma cipher block yang beroperasi pada blok masukan 64 bit dan kuncinya berukuran 28 bit. Pengurangan jumlah bit kunci pada DES dilakukan dengan alasan agar mekanisme algoritma ini bisa diimplementasikan dalam satu chip. 
DES pertama kali dipublikasikan di Federal Register pada 17 Maret 1975. Setelah melalui banyak diskusi, akhirnya algortima DES diadopsi sebagai algoritma standar yang digunakan oleh NBS (National Bureau of Standards) pada 15 Januari 1977. Sejak saat itu, DES banyak digunakan pada dunia penyebaran informasi untuk melindungi data agar tidak bisa dibaca oleh orang lain. Namun demikian, DES juga mengundang banyak kontroversi dari para ahli di seluruh dunia. Salah satu kontroversi tersebut adalah S-Box yang digunakan pada DES. S-Box merupakan bagian vital dari DES karena merupakan bagian yang paling sulit dipecahkan. Hal ini disebabkan karena S-Box merupakan satu – satunya bagian dari DES yang komputasinya tidak linear. Sementara itu, rancangan dari S-Box sendiri tidak diberitahukan kepada publik. Karena itulah, banyak yang curiga bahwa S-Box dirancang sedemikian rupa sehingga memberikan trapdoor kepada NSA agar NSA bisa membongkar semua ciphertext yang dienkripsi dengan DES kapan saja. 
Kontroversi yang kedua adalah jumlah bit pada kunci DES yang dianggap terlalu kecil, hanya 56 bit. Akibatnya DES rawan terhadap serangan brute force. Walaupun terdapat kerawanan tersebut, DES tetap digunakan pada banyak aplikasi seperti pada enkripsi PIN (Personal Identification Numbers) pada mesin ATM (Automatic Teller Machine) dan transaksi perbankan lewat internet. Bahkan, organisasi – organisasi pemerintahan di Amerika seperti Department of Energy, Justice Department, dan Federal Reserve System menggunakan DES untuk melindungi penyebaran data mereka.
Skema Global DES

  1. Blok plainteks dipermutasi dengan matriks permutasi awal (initial permutation atau IP).
  2. Hasil permutasi awal kemudian di-enciphering- sebanyak 16 kali (16 putaran). Setiap putaran menggunakan kunci internal yang berbeda.
  3. Hasil enciphering kemudian dipermutasi dengan matriks permutasi balikan (invers initial permutation atau IP-1 ) menjadi blok cipherteks.

Enkripsi 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 lengkap proses Enkripsi dengan menggunakan DES ditunjukan pada skema berikut :

Algoritma DES memerlukan sebuah kunci yang panjang bloknya 64 bit di setiap blok DES digunakan untuk mengamankan data pada perangkat lunak dan keras negara tersebut. Berikut desain input-output algoritma DES



Dapat dilihat bahwa ada dua input untuk fungsi enkripsi, yaitu plaintext dengan panjang 64-bit dan kunci dengan panjang 56-bit. Untuk mengenkripsi data dengan menggunakan algoritma DES, dimulai dengan membagi bit dari teks tersebut kedalam blok-blok dengan ukuran blok sebesar 64-bit, yang kemudian disebut blok plaintext. Adapun penjelasan langkah-langkah enkripsi DES dijelaskan sebagai berikut :
a.       Permutasi Awal


Sebelum putaran pertama, terhadap blok plainteks dilakukan permutasi awal (initial permutation atau IP). Tujuan permutasi awal adalah mengacak plainteks sehingga urutan bit-bit di dalamnya berubah. Pengacakan dilakukan dengan menggunakan matriks permutasi awal berikut ini:


b.      Pembangkitan Kunci Internal
Pada proses enchipering akan dilakukan proses pemutaran sebanyak 16 kali, oleh karena itu dibutuhkan 16 buah kunci. 16 buah kunci tersebut dibangkitkan dari kunci eksternal. Masukan kunci (input key) K dispesifikasikan sebagai 64-bit kunci (key), kunci eksternal ini akan menjadi masukan untuk permutasi dengan menggunakan matriks permutasi choice one (PC-1) berikut ini:

8 buah bit yaitu bit 8, 16, 24, 32, 40, 48, 56, dan 64 digunakan sebagai parity bit. Parity bit tersebut akan mereduksi ukuran efektif key dari 64-bit menjadi 56-bit. Selanjutnya, 56 bit yang tersisa ini dibagi menjadi dua bagian, yaitu bagian kiri (C0) dan bagian kanan (D0). Selanjutnya kedua bagian digeser ke kiri (left shifting) sepanjang satu atau dua bit sesuai tabel pergeseran berikut ini :


Setelah pergeseran bit, maka masing-masing Ci dan Di akan dipermutasi kembali dengan menggunakan matriks PC-2 berikut :


Berikut ini merupakan skema yang menjelaskan proses pembangkitan kunci-kunci internal DES :

c.       Enciphering
Seperti sudah dijelaskan sebelumnya, setiap blok plaintext mengalami 16 kali putaran enchipering. Secara matematis, satu putaran DES dinyatakan sebagai berikut :

Adapun langkah-langkah enchipering dapat dilihat pada skema berikut :

Adapun penjelasan dari skema diatas adalah :
  • E merupakan fungsi ekspansi yang memperluas blok Ri-1 yang panjangnya 32-bit menjadi 48-bit. Fungsi ekspansi ini direalisasikan melalui tabel berikut : 

  • Selanjutnya hasil ekspansi yaitu E(Ri-1), yang panjangnya 48-bit di XOR kan dengan Ki yang panjangnya juga 48-bit dan menghasilkan vektor A yang panjangnya 48-bit.
  • Vektor A kemudia dikelompokkan menjadi 8 kelompok yang masing-masing panjangnya 6 bit dan menjadi masukkan bagi proses substitusi. Proses substitusi dilakukan dengan menggunakan 8 buah kotak-s (s-box). Setiap kotak-s menerima 6 bit masukkan dan menghasilkan keluaran 4 bit. Kelompok 6 bit pertama akan menggunakan s1, 6 bit selanjutnya akan menggunakan s2, dan seterusnya. Bit awal dan akhir menentukan baris dan 4 bit ditengah akan menentukan kolom yang akan dipilih.

Kedelapan kotak S (s-box) adalah :








Contoh pencarian output dari kotak s adalah :
Bit 100110 = keluaran dari kotak-s adalah kotak-s pertama, baris ke 2 dan kolom ke3 yaitu 8 (1000).
Keluaran proses substitusi adalah vector B yang panjangnya 48 bit. Vector B menjadi masukan untuk proses permutasi. Adapun tujuan dari proses permutasi adalah untuk mengacak hasil proses substitusi kotak-S. Hasil permutasi dinyatakan dalam fungsi f(Ri-1,Ki). Permutasi ini dilakukan dengan menggunakan matriks permutasi sebagai berikut :



Implementasi DES
·         DES sudah diimplementasikan dalam bentuk perangkat keras.
·         Dalam bentuk perangkat keras, DES diimplementasikan di dalam chip. Setiap detik chipini dapat mengenkripsikan 16,8 juta blok (atau 1 gigabit per detik).
·         Implementasi DES ke dalam perangkat lunak dapat melakukan enkripsi 32.000 blok per detik (pada komputer mainframe IBM 3090).

2.      Advanced Encryption Standard (AES)

Advanced Encryption Standard (AES) merupakan algoritma cryptographic yang dapat digunakan untuk mengamakan data. Algoritma AES adalah blok chipertext simetrik yang dapat mengenkripsi (encipher) dan dekripsi (decipher) informasi. Enkripsi merubah data yang tidak dapat lagi dibaca disebut ciphertext; sebaliknya dekripsi adalah merubah ciphertext data menjadi bentuk semula yang kita kenal sebagai plaintext. Algoritma AES is mengunkan kunci kriptografi 128, 192, dan 256 bits untuk mengenkrip dan dekrip data pada blok 128 bits.
AES (Advanced Encryption Standard) adalah lanjutan dari algoritma enkripsi standar DES (Data Encryption Standard) yang masa berlakunya dianggap telah usai karena faktor keamanan. Kecepatan komputer yang sangat pesat dianggap sangat membahayakan DES, sehingga pada tanggal 2 Maret tahun 2001 ditetapkanlah algoritma baru Rijndael sebagai AES. Kriteria pemilihan AES didasarkan pada 3 kriteria utama yaitu: keamanan, harga, dan karakteristik algoritma beserta implementasinya. AES menggunakan struktur SPN (Substitution Permutation Network) yang memiliki derajat paralelisme yang lebih besar, sehingga diharapkan lebih cepat dari pada Feistel.
Kelemahan SPN pada umumnya (termasuk pada Rijndael) adalah berbedanya struktur enkripsi dan dekripsi sehingga diperlukan dua algoritma yang berbeda untuk enkripsi dan dekripsi. Dan tentu pula tingkat keamanan enkripsi dan dekripsinya menjadi berbeda. AES memiliki blok masukan dan keluaran serta kunci 128 bit. Untuk tingkat keamanan yang lebih tinggi, AES dapat menggunakan kunci 192 dan 256 bit. Setiap masukan 128 bit plaintext dimasukkan ke dalam state yang berbentuk bujursangkar berukuran 4×4 byte. State ini di-XOR dengan key dan selanjutnya diolah 10 kali dengan subtitusi-transformasi linear-Addkey. Dan di akhir diperoleh ciphertext. Berikut ini adalah operasi Rijndael (AES) yang menggunakan 128 bit kunci:
1.      Ekspansi kunci utama (dari 128 bit menjadi 1408 bit);
2.      Pencampuran subkey;
3.      Ulang dari i=1 sampai i=10 Transformasi : ByteSub (subtitusi per byte) ShiftRow (Pergeseren byte perbaris) MixColumn (Operasi perkalian GF(2) per kolom);
4.      Pencampuran subkey (dengan XOR);
5.      Transformasi : ByteSub dan ShiftRow;
6.      Pencampuran subkey.

Metode Algoritma AES
Algoritma kriptografi bernama Rijndael yang didesain oleh oleh Vincent Rijmen dan John Daemen asal Belgia keluar sebagai pemenang kontes algoritma kriptografi pengganti DES yang diadakan oleh NIST (National Institutes of Standards and Technology) milik pemerintah Amerika Serikat pada 26 November 2001. Algoritma Rijndael inilah yang kemudian dikenal dengan Advanced Encryption Standard (AES). Setelah mengalami beberapa proses standardisasi oleh NIST, Rijndael kemudian diadopsi menjadi standard algoritma kriptografi secara resmi pada 22 Mei 2002. Pada 2006, AES merupakan salah satu algoritma terpopuler yang digunakan dalam kriptografi kunci simetrik. AES ini merupakan algoritma block cipher dengan menggunakan sistem permutasi dan substitusi (P-Box dan S-Box) bukan dengan jaringan Feistel sebagaiman block cipher pada umumnya. Jenis AES terbagi 3, yaitu:
1.    AES-128;
2.    AES-192;
3.    AES-256.
Pengelompokkan jenis AES ini adalah berdasarkan panjang kunci yang digunakan. Angka-angka di belakang kata AES menggambarkan panjang kunci yang digunakan pada tiap-tiap AES. Selain itu, hal yang membedakan dari masing-masing AES ini adalah banyaknya round yang dipakai. AES-128 menggunakan 10 round, AES-192 sebanyak 12 round, dan AES-256 sebanyak 14 round.
AES memiliki ukuran block yang tetap sepanjang 128 bit dan ukuran kunci sepanjang 128, 192, atau 256 bit. Tidak seperti Rijndael yang block dan kuncinya dapat berukuran kelipatan 32 bit dengan ukuran minimum 128 bit dan maksimum 256 bit. Berdasarkan ukuran block yang tetap, AES bekerja pada matriks berukuran 4x4 di mana tiap-tiap sel matriks terdiri atas 1 byte (8 bit). Sedangkan Rijndael sendiri dapat mempunyai ukuran matriks yang lebih dari itu dengan menambahkan kolom sebanyak yang diperlukan. Blok chiper tersebut dalam pembahasan ini akan diasumsikan sebagai sebuah kotak. Setiap plainteks akan dikonversikan terlebih dahulu ke dalam blok-blok tersebut dalam bentuk heksadesimal. Barulah kemudian blok itu akan diproses dengan metode yang akan dijelaskan. Secara umum metode yang digunakan dalam pemrosesan enkripsi dalam algoritma ini dapat dilihat melalui Gambar 1.
Gambar 1: Diagram AES

a.       Add Round Key
Add Round Key pada dasarnya adalah mengkombinasikan chiper teks yang sudah ada dengan chiper key yang chiper key dengan hubungan XOR. Bagannya bisa dilihat pada Gambar 2.

 Gambar 2: Add Round Key

b.      Sub Bytes
Prinsip dari Sub Bytes adalah menukar isi matriks/tabel yang ada dengan matriks/tabel lain yang disebut dengan Rijndael S-Box. Di bawah ini adalah contoh Sub Bytes dan Rijndael S-Box.

Gambar 3: Rijndael S-Box


Gambar 4: Ilustrasi Sub Bytes

Gambar 4 adalah contoh dari Rijndael S-Box, di sana terdapat nomor kolom dan nomor baris. Seperti yang telah disebutkan sebelumnya, tiap isi kotak dari blok chiper berisi informasi dalam bentuk heksadesimal yang terdiri dari dua digit, bisa angka-angka, angka-huruf, ataupun huruf-angka yang semuanya tercantum dalam Rijndael S-Box. Langkahnya adalah mengambil salah satu isi kotak matriks, mencocokkannya dengan digit kiri sebagai baris dan digit kanan sebagai kolom. Kemudian dengan mengetahui kolom dan baris, kita dapat mengambil sebuah isi tabel dari Rijndael S-Box. Langkah terakhir adalah mengubah keseluruhan blok chiper menjadi blok yang baru yang isinya adalah hasil penukaran semua isi blok dengan isi langkah yang disebutkan sebelumnya.

c.       Shift Rows
Shift Rows seperti namanya adalah sebuah proses yang melakukan shift atau pergeseran pada setiap elemen blok/tabel yang dilakukan per barisnya. Yaitu baris pertama tidak dilakukan pergeseran, baris kedua dilakukan pergeseran 1 byte, baris ketiga dilakukan pergeseran 2 byte, dan baris keempat dilakukan pergeseran 3 byte. Pergeseran tersebut terlihat dalam sebuah blok adalah sebuah pergeseran tiap elemen ke kiri tergantung berapa byte tergesernya, tiap pergeseran 1 byte berarti bergeser ke kiri sebanyak satu kali. Ilustrasi dari Tahap ini diperlihatkan oleh gambar di bawah ini.

   Gambar 5: Ilustrasi dari Shift Row

Seperti yang terlihat pada Gambar 5, tahap shift row sama sekali tidaklah rumit, karena ini adalah proses standar yang hanya berupa pergeseran. Langkah terakhir adalah Mix Column.

d.      Mix Columns
Yang terjadi saat Mix Column adalah mengalikan tiap elemen dari blok chiper dengan matriks yang ditunjukkan oleh Gambar 6. Tabel sudah ditentukan dan siap pakai. Pengalian dilakukan seperti perkalian matriks biasa yaitu menggunakan dot product lalu perkalian keduanya dimasukkan ke dalam sebuah blok chiper baru. Ilustrasi dalam gambar 7 akan menjelaskan mengenai bagaimana perkalian ini seharusnya dilakukan. Dengan begitu seluruh rangkaian proses yang terjadi pada AES telah dijelaskan dan selanjutnya adalah menerangkan mengenai penggunaan tiap-tiap proses tersebut.

Gambar 6: Tabel untuk Mix Column

Gambar 7: Ilustrasi Mix Column

Diagram Alir AES
Kembali melihat diagram yang ditunjukkan oleh Gambar 1. Seperti yang terlihat semua proses yang telah dijelaskan sebelumnya terdapat pada diagram tersebut. Yang artinya adalah mulai dari ronde kedua, dilakukan pengulangan terus menerus dengan rangkaian proses Sub Bytes, Shift Rows, Mix Columns, dan Add Round Key, setelah itu hasil dari ronde tersebut akan digunakan pada ronde berikutnya dengan metode yang sama. Namun pada ronde kesepuluh, Proses Mix Columns tidak dilakukan, dengan kata lain urutan proses yang dilakukan adalah Sub Bytes, Shift Rows, dan Add Round Key, hasil dari Add Round Key inilah yang dijadikan sebagai chiperteks dari AES. Lebih jelasnya bisa dilihat dengan Gambar 8 dan 9 yang akan menerangkan mengenai kasus tersebut.

Gambar 8: Ilustrasi Ronde 2 hingga Ronde 6

Gambar 9: Ilustrasi Rone 7 hingga Ronde 10

Dengan mengetahui semua proses yang ada pada AES, maka kita dapat menggunakannya dalam berbagai contoh kasus yang muncul di kehidupan sehari-hari.

 Implementasi Advanced Encryption Standard (AES)
AES atau algoritma Rijndael sebagai salah satu algoritma yang penting tentu memiliki berbagai kegunaan yang sudah diaplikasikan atau diimplementasikan di kehidupan sehari-hari yang tentu saja membutuhkan suatu perlindungan atau penyembunyian informasi di dalam prosesnya. Salah satu contoh penggunaan AES adalah pada kompresi 7-Zip. Salah satu proses di dalam 7-Zip adalah mengenkripsi isi dari data dengan menggunakan metode AES-256. Yang kuncinya dihasilkan melalui fungsi Hash. Perpaduan ini membuat suatu informasi yang terlindungi dan tidak mudah rusak terutama oleh virus yang merupakan salah satu musuh besar dalam dunia komputer dan informasi karena sifatnya adalah merusak sebuah data.
Hal yang serupa digunakan pada WinZip sebagai salah satu perangkat lunak yang digunakan untuk melakukan kompresi. Tapi prinsip kompresi pun tidak sama dengan prinsip enkripsi. Karena kompresi adalah mengecilkan ukuran suatu data, biasanya digunakan kode Huffman dalam melakukan hal tersebut. Contoh penggunaan lain adalah pada perangkat lunak DiskCryptor yang kegunaannya adalah mengenkripsi keseluruhan isi disk/partisi pada sebuah komputer. Metode enkripsi yang ditawarkan adalah menggunakan AES-256, Twofish, atau Serpent.

3.      IPSec (IP Security)
Internet Protocol Security atau sering disebut IPsec adalah end-to-end security skema operasi di Internet Layer dari Internet Protocol Suite. Hal ini dapat digunakan dalam melindungi arus data antara sepasang host (host-to-host), antara sepasang gateway keamanan (jaringan-jaringan), atau antara gateway keamanan dan host (jaringan-to-host) .
Internet Protocol Security (IPsec) adalah protokol untuk mengamankan Internet Protocol (IP) komunikasi dengan otentikasi dan mengenkripsi setiap paket IP dari suatu sesi komunikasi. IPsec juga mencakup protokol untuk mendirikan otentikasi bersama antara agen pada awal sesi dan negosiasi kunci kriptografi yang akan digunakan selama sesi.
Beberapa sistem keamanan Internet lainnya digunakan secara luas, seperti Secure Socket Layer (SSL), Transport Layer Security (TLS) dan Secure Shell (SSH), beroperasi di lapisan atas dari model TCP / IP. Di masa lalu, penggunaan TLS / SSL harus dirancang ke dalam aplikasi untuk melindungi protokol aplikasi. Sebaliknya, sejak hari pertama, aplikasi tidak perlu dirancang khusus untuk menggunakan IPsec. Oleh karena itu, IPsec melindungi lalu lintas aplikasi di jaringan IP.

Sejarah IP Sec
Eksperimental Babatan Keamanan IP (protokol) yang diteliti di Columbia University dan AT & T Bell Labs pada bulan Desember 1993. Kemudian, Wei Xu pada bulan Juli 1994 di Sistem Informasi Trusted melanjutkan penelitian ini. Setelah beberapa bulan, penelitian ini berhasil diselesaikan pada sistem BSDI. Dengan hacking kernel biner, Wei telah diperpanjang dengan cepat perkembangannya ke Sun OS, HP UX, dan sistem UNIX lainnya. Salah satu tantangan adalah kinerja lambat dari DES dan 3DES. Enkripsi perangkat lunak bahkan tidak bisa mendukung kecepatan T1 di bawah arsitektur Intel 80386. Dengan menjelajahi kartu Crypto dari Jerman, Xu Wei lanjut mengembangkan device driver otomatis, yang dikenal sebagai plug-and-play hari. Dengan mencapai throughput lebih dari satu T1s, pekerjaan ini membuat produk komersial praktis hal itu layak, yang dirilis sebagai bagian dari firewall Gauntlet terkenal.
Pada Desember 1994, itu adalah pertama kalinya dalam produksi untuk mengamankan beberapa situs remote antara timur dan barat pesisir negara bagian Amerika Serikat. Lain Protokol Keamanan IP dikembangkan pada tahun 1995 di Laboratorium Riset Naval sebagai bagian dari proyek penelitian DARPA disponsori. ESP awalnya berasal dari protokol SP3D, bukannya berasal dari ISO Jaringan-Layer Security Protocol (NLSP). Spesifikasi protokol SP3D diterbitkan oleh NIST, tetapi dirancang oleh proyek Jaringan Sistem Data Aman dari National Security Agency (NSA), AH yang berasal dari bagian dalam pekerjaan standar sebelumnya IETF untuk otentikasi dari Simple Network Management Protocol (SNMP).
Sejak tahun 1996, lokakarya Keamanan IP diselenggarakan untuk standardisasi protokol. IPsec secara resmi ditetapkan oleh Internet Engineering Task Force (IETF) dalam serangkaian Permintaan untuk dokumen Komentar menangani berbagai komponen dan ekstensi. Ini menentukan ejaan nama protokol menjadi IPsec.

Cara Kerja IP Security
·         Protokol AH menyediakan integritas hubungan, otentifikasi data asal dan layanan anti jawaban.
·         Protokol ESP menyediakan kerahasiaan (enkripsi), dan pembatasan aliran lalulintas kerahasiaan.
·         ESP Juga menyediakan layanan integritas hubungan, otentifikasi data asal dan layanan anti jawaban.
·         Kedua protokol ini merupakan pembawa kontrol akses berbasis distribusi kunci kriptografi dan manajemen aliran lalulintas relatif terhadap protokol keamanan.

 Secara umum layanan yang diberikan IPSec adalah :
1.      Data Confidentiality, pengirim data dapat mengengkripsi paket data sebelum dilakukan transmit data.
2.      Data Integrity, penerima dapat mengotentifikasi paket yang dikirimkan oleh pengirim untuk meyakinkan bahwa data tidak dibajak selama transmisi.
3.      Data Origin Authentication, penerima dapat mengotentifikasi asal dari paket IPSEC yang dikirimkan.
4.      Anti Replay, penerima dapat mendeteksi dan menolak paket yang telah dibajak.

Kelebihan IPSec
1.      IPsec dapat melindungi protokol apa pun yang berjalan di atas IP dan pada medium apa pun yang dapat digunakan IP, sehingga IPsec merupakan suatu metode umum yang dapat menyediakan keamanan komunikasi melalui jaringan computer.
2.      IPsec menyediakan keamanan secara transparan, sehingga dari sisi aplikasi, user tidak perlu menyadari keberadaannya
3.      IPsec dirancang untuk memenuhi standar baru IPv6 tanpa melupakan IPv4 yang sekarang digunakan
4.      Perancangan IPsec tidak mengharuskan penggunaan algoritma enkripsi atau hash tertentu sehingga jika algoritma yang sering digunakan sekarang telah dipecahkan, fungsinya dapat diganti dengan algoritma lain yang lebih sulit dipecahkan.

Kelemahan IPSec
1.      IPsec terlalu kompleks, penyediaan beberapa fitur tambahan dengan menambah kompleksitas yang tidak perlu.
2.      Beberapa dokumentasinya masih mengandung beberapa kesalahan, tidak menjelaskan  beberapa penjelasan esensial, dan ambigu.
3.      Beberapa algoritma default yang digunakan dalam IPsec telah dapat dipecahkan/dianggap tidak aman (misalnya DES yang dianggap tidak aman dan MD5 yang telah mulai berhasil diserang. Algoritma penggantinya telah tersedia dan administrator sistem sendiri yang harus memastikan bahwa mereka menggunakan algoritma lain untuk mendapatkan keamanan yang lebih tinggi.

Security architecture
IPSec bekerja pada lapisan network, memproteksi dan mengotentifikasi komunikasi paket IP antara host dan berfungsi baik pada lalu lintas IPv6 maupun IPv4. IPSec ini sebenarnya adalah fitur yang dimiliki oleh IPv6 namun oleh beberapa developer diaplikasikan kedalam IPv4. IPSec mempunyai 4 buah elemen, yaitu :
1.      AH (authentication header )
2.      ESP (encasulapting security payload)
3.      IPcomp (IP payload compression)
4.      IKE (internet key exchange)

Authentication Header
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.


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.

          
Security Association
Sebuah Asosiasi Keamanan (SA) adalah pembentukan atribut keamanan bersama antara dua entitas jaringan untuk mendukung komunikasi yang aman. Sebuah SA mungkin termasuk atribut seperti: algoritma kriptografi dan mode, kunci enkripsi lalu lintas, dan parameter untuk data jaringan yang akan melewati sambungan. Kerangka untuk mendirikan asosiasi keamanan disediakan oleh Internet Security Association dan Key Management Protocol (ISAKMP). Protokol seperti Internet Key Exchange dan Kerberized Negosiasi internet Keys menyediakan dikonfirmasi material kunci. Sebuah SA adalah simpleks (satu arah channel) dan koneksi logis yang mendukung dan menyediakan koneksi data yang aman antara perangkat jaringan. Persyaratan mendasar dari sebuah SA tiba ketika dua entitas berkomunikasi melalui lebih dari satu saluran. Ambil contoh pelanggan seluler dan base station. Pelanggan dapat berlangganan sendiri untuk lebih dari satu layanan.

Oleh karena itu setiap layanan mungkin memiliki layanan yang berbeda primitif seperti kunci enkripsi data algoritma, publik atau vektor inisialisasi. Sekarang untuk membuat segalanya lebih mudah, semua informasi keamanan yang dikelompokkan secara logis. Ini kelompok logis itu sendiri adalah Asosiasi Keamanan. Setiap SA memiliki ID sendiri disebut SAID. Jadi sekarang base station dan pelanggan seluler akan berbagi SAID dan mereka akan memperoleh semua parameter keamanan, membuat hal-hal jauh lebih mudah. Singkatnya, sebuah SA adalah kelompok logis dari parameter keamanan yang memungkinkan berbagi informasi kepada entitas lain.

Modes Of Operation
IPsec dapat diimplementasikan dalam mode transportasi host-to-host, serta dalam modus jaringan terowongan.

Transportasi modus
Dalam modus transportasi, hanya payload dari paket IP biasanya dienkripsi dan / atau disahkan. Routing utuh, karena header IP tidak diubah atau dienkripsi, namun ketika header otentikasi yang digunakan, alamat IP tidak dapat diterjemahkan, karena hal ini akan membatalkan nilai hash. Transportasi dan lapisan aplikasi selalu dijamin dengan hash, sehingga mereka tidak dapat diubah dengan cara apapun (misalnya dengan menerjemahkan nomor port). Sebuah sarana untuk merangkum pesan IPsec untuk NAT traversal telah didefinisikan oleh dokumen RFC menggambarkan mekanisme NAT-T.

Terowongan modus
Dalam modus terowongan, paket IP seluruh dienkripsi dan / atau disahkan. Hal ini kemudian dikemas ke dalam paket IP baru dengan header IP yang baru. Modus terowongan yang digunakan untuk membuat jaringan pribadi virtual untuk jaringan-jaringan komunikasi (misalnya antara router ke situs link), host-to-jaringan komunikasi (misalnya akses pengguna jarak jauh), dan host-to-host komunikasi (chat pribadi misalnya).

Software implementations
IPsec dukungan biasanya diimplementasikan dalam kernel dengan manajemen kunci dan ISAKMP / IKE negosiasi dilakukan dari user-space. Ada IPsec implementasi seringkali mencakup.


Standards status
IPsec dikembangkan bersama dengan IPv6 dan harus tersedia di semua standar-compliant implementasi IPv6 meskipun tidak semua implementasi IPv6 termasuk dukungan IPsec, adalah opsional untuk IPv4 implementasi. Namun, karena penyebaran lambat IPv6, IPsec ini paling sering digunakan untuk mengamankan IPv4 lalu lintas. Protokol IPsec awalnya didefinisikan dalam RFC 1825 dan RFC 1829, yang diterbitkan pada tahun 1995. Pada tahun 1998, dokumen-dokumen tersebut digantikan oleh RFC 2401 dan RFC 2412 dengan aspek kompatibel, meskipun mereka secara konseptual identik. Selain itu, sebuah saling otentikasi dan pertukaran kunci protokol Internet Key Exchange (IKE) didefinisikan untuk membuat dan mengelola asosiasi keamanan. Pada bulan Desember 2005, standar baru didefinisikan dalam RFC 4301 dan RFC 4309 yang sebagian besar merupakan superset dari edisi sebelumnya dengan versi kedua dari Bursa kunci standar Internet IKEv2. Ini generasi ketiga dokumen standar singkatan dari IPsec menjadi huruf besar "IP" dan huruf kecil "sec". Hal ini tidak biasa untuk melihat produk yang menawarkan dukungan untuk RFC 1825 dan 1829. "ESP" umumnya mengacu pada RFC 2406, sedangkan ESPbis mengacu pada RFC 4303. Sejak pertengahan 2008, sebuah Pemeliharaan IPsec dan kelompok Ekstensi bekerja aktif di IETF.

4.      Digital Certificate Server (DCS)

A.    Pengertian Digital Certificate
Digital Certificates adalah file elektronik yang  hanya bekerja sebagai paspor online. Digital Certificates dikeluarkan oleh pihak ketiga yang  dikenal sebagai Certification Authority seperti VeriSign atau Thawte. Digital certificate adalah dokumen digital yang berisi informasi sebagai berikut:
·         nama subjek (perusahaan/individu yang disertifikasi)
·         kunci publik si subjek
·         waktu kadaluarsa sertifikat (expired time)
·          informasi relevan lain seperti nomor seri sertifikat, dll

Fungsi Digital Certificate
Digital certificate memiliki dua fungsi dasar, yaitu:
·         Untuk menyatakan  bahwa orang-orang, website, dan sumber daya jaringan seperti server dan router merupakan  sumber terpercaya,  dengan kata lain sesuai dengan siapa atau apa yang menjadi tuntutan  mereka.
·         Untuk memberikan perlindungan bagi pertukaran data dari  pengunjung dan website dari gangguan atau bahkan pencurian, seperti informasi kartu kredit.

Bentuk Digital Certificate
Sebuah sertifikat digital (Digital Certificate) berisi nama organisasi atau individu, alamat bisnis, tanda tangan digital, public key, nomor seri, dan tanggal kedaluwarsa. Ketika Anda sedang online dan browser web Anda mencoba untuk mengamankan sambungan, maka sertifikat digital yang diterbitkan untuk website yang akan diperiksa oleh browser web untuk memastikan bahwa semuanya baik-baik saja dan dapat Anda telusuri dengan aman. Ada dua jenis utama sertifikat digital yang penting untuk membangun situs Web aman dan ini adalah server certificates dan personal certificates.

a.       Server certificates
Sertifikat server hanya memungkinkan pengunjung website untuk aman mentransfer informasi pribadi mereka seperti kartu kredit dan informasi rekening bank tanpa khawatir tentang pencurian atau gangguan. Sertifikat server juga bertanggung jawab untuk memvalidasi identitas pemilik website sehingga pengunjung dapat merasa seolah-olah mereka berhadapan dengan sumber yang sah saat membuat atau memasukkan password, rincian rekening bank, atau nomor kartu kredit ke dalam situs web.
b.      Personal Certificates
Personal Certificates sedikit berbeda dari Server Certificates karena memungkinkan Anda untuk memvalidasi identitas pengunjung situs Web dan bahkan membatasi akses mereka kepada bagian-bagian tertentu dari website.



Keamanan Standar
Sebagian besar protokol standar yang banyak digunakan untuk komunikasi elektronik mengandalkan digital certificates:
a.       SSL (Secure Socket Layer), yang dirancang oleh Netscape Communication Corporation, diterima secara luas sebagai browser forweb dasar standar dan otentikasi server, dan aman untuk pertukaran data di Internet.
b.      S/MIME (Secure Multipurpose Internet Mail Extensions Protocol) dianggap sebagai standar dasar untuk email yang aman dan EDI (Electronic Data Interchange).
c.       SET (Secure Transaksi Elektronik protokol) melindungi pembayaran elektronik dari pengunjung web untuk operator situs.
d.      nternet Protocol Secure Standard (IPSec) memverifikasi perangkat jaringan seperti server dan router.

Cara Kerja Digital Certificate
a.       Proses Registrasi
Langkah pembentukan sertifikat digital:
1.      Diperlukan sebagai identifikasi sebelum seorang pelanggan  dapat melakukan akses/transaksi pada suatu aktifitas kegiatan berbasis WEB (B2B, B2C, G2C) yang menggunakan pengamanan dan  enkripsi dengan metoda Public Key Infrastructure (PKI).
2.      Setiap orang/pelanggan yang akan berkomunikasi/bertransaksi harus terlebih dahulu mendaftar (registrasi) untuk memperoleh Identifikasi dalam bentuk Elektronik Identification Number.
3.      Setelah Elektronik Identification Number (E-ID) diterbitkan dan diterima oleh pelanggan, selanjutnya Elektronik Identification Number (E-ID) tersebut oleh provider yang bersangkutan akan dikirimkan ke Certificate Authority Server untuk di registrasikan.
4.      Selanjutnya pelanggan melalui komputer yang dimiliki (personal) akan melakukan koneksi secara on line menggunakan komunikasi yang khusus/secure (menuju address WEB site yang telah ditentukan) untuk melalukan verifikasi dengan cara mengirimkan Elektronik Identification Number (E-ID) yang telah diperoleh sebelumnya, dalam rangka memperoleh Digital Certificate.
5.      Selanjutnya Certificate Authority Server akan melakukan verifikasi terhadap kebenaran dan keabsahan Elektronik Identification Number (E-ID) yang telah dikirimkan oleh pelanggan.
6.      Jika Elektronik Identification Number (E-ID) tersebut benar dan absah, maka selanjutnya Certificate Authority Server akan menerbitkan Digital Certificate, dengan disertai Public Key dan Private Key.

b.      Proses pengiriman
1.      Diperlukan sebagai identifikasi sebelum seorang pelanggan dapat melakukan   akses/transaksi pada suatu aktifitas kegiatan berbasis WEB (B2B, B2C, G2C) yang menggunakan pengamanan dan enkripsi dengan metoda Public Key Infrastructure (PKI).
2.      Setelah Elektronik Identification Number (E-ID) diterbitkan dan diterima oleh pelanggan, selanjutnya Elektronik Identification Number (E-ID) tersebut oleh provider yang bersangkutan akan dikirimkan ke Certificate Authority Server untuk di registrasikan.
3.      Selanjutnya pelanggan melalui komputer yang dimiliki (personal) akan melakukan   koneksi secara on line menggunakan komunikasi yang khusus/secure (menuju address WEB site yang telah ditentukan) untuk melalukan verifikasi dengan cara mengirimkan Elektronik Identification Number (E-ID) yang telah diperoleh sebelumnya, dalam rangka memperoleh Digital Certificate.
4.      Selanjutnya Certificate Authority Server akan melakukan verifikasi terhadap    kebenaran dan keabsahan Elektronik Identification Number (E-ID) yang telah dikirimkan oleh pelanggan.
5.      Jika Elektronik Identification Number (E-ID) tersebut benar dan absah, maka selanjutnya Certificate Authority Server akan menerbitkan Digital Certificate, dengan disertai Public Key dan Private Key.
6.      Digital Certificate tersebut akan dikirimkan ke pelanggan dengan menggunakan komunikasi yang khusus/secure untuk selanjutnya Digital Certificate tersebut diinstall di komputer pelanggan.

B.     Digital Signature
1.      Pengertian Digital Signature
Digital signature merupakan sistem keamanan kriptografi simetris (symetric crypthography/secret key crypthography) atau public key cryptography system yang dikenal sebagai kriptografi simetris, menggunakan kunci yang sama dalam melakukan enkripsi dan dekripsi terhadap suatu pesan (message), disini pengirim dan penerima menggunakan kunci yang sama sehingga mereka harus menjaga kerahasian (secret) terhadap kuci tersebut. Salah satu algoritma yang terkenal dalam kriptografi simetris ini adalah Data Encryption  Stkitard (DES)  yang bertujuan untuk memastikan otentisitas dari dokumen tersebut.

a.       Authenticity (Ensured)
Dengan memberikan digital signature pada data elektronik yang dikirimkan maka akan dapat ditunjukkan darimana data elektronis tersebut sesungguhnya berasal. Integritas pesan tersebut akan terjamin karena keberadaan dari Digital Certificate yang diperoleh atas dasar aplikasi kepada Cerfication Authority oleh user/subscriber. digital certificate berisi informasi mengenai  pengguna yaitu identitas, kewenangan, kedudukan hokum serta status dari user.Digital certificate ini memiliki berbagai tingkatan/level yang menentukan berapa besar kewenangan yang dimiliki oleh pengguna.

b.      Integrity
Integritas/integrity yaitu jika seorang penerima pesan/data merasa yakin bahwa pesan/data tersebut pernah dimodifikasi atau diubah selama proses pengiriman atau penyimpanan. Penggunaan digital signature yang diaplikasikan pada pesan/data elektronik yang dikirimkan dapat menjamin bahwa pesan/data elektronik tersebut tidak mengalami suatu perubahan atau modifikasi oleh pihak yang tidak berwenang.

c.       Non-Repudiation (Tidak dapat disangkal keberadaannya)
Non repudiation timbul dari keberadaan digital signature yang menggunakan enkripsi asimetris (asymmetric encryption) yang melibatkan keberadaan dari kunci  prifat dan kunci public. Pengirim pesan tidak dapat menyangkal bahwa ia telah mengirimkan suatu pesan apabila ia sudah mengirimkan suatu pesan. Non repudiation adalah hal yang sangat penting bagi e-commerce apabila suatu transaksi dilakukan melalui suatu jaringan internet, kontrak elektronik (electronic contracts), ataupun transaksi pembayaran.Pesan yang telah dienkripsi dengan menggunakan kunci prifat maka ia hanya dapat dibuka/dekripsi dengan menggunakan kunci publik dari pengirim.

d.      Confidentiality
Pesan dalam bentuk data elektronik yang dikirimkan bersifat rahasia/confidential, sehingga tidak semua orang dapat mengetahui isi data elektronik yang telah di-sign dan dimasukkan dalam digital envelope.

Implementasi
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) pengguna membutuhkan Digital Certificate ketika ingin membangun kepercayaan pengguna situs, memberikan kepastian mengenai identitas institusi dan menjamin kerahasiaan data yang dimasukkan oleh pengguna situs.

5.      Secure Socket Layer (SSL)
dirancang oleh Netscape, menyediakan enkripsi RSA pada layes session dari model OSI., independen terhadap servise yang digunakan., melindungi system secure web e-commerce, metode public/private key dan dapat melakukan authentication, terintegrasi dalam produk browser dan web server Netscape.
SSL atau Secure Socket Layer merupakan  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 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.




6.      Security Token

Aplikasi penyimpanan password dan data user di smart card. 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 memberikan 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 two-factor 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.

7.      Kerberos
Kerberos merupakan layanan autentikasi yang dikembangkan oleh MIT (Massachusetts Institute of Technology) Amerika Serikat, dengan bantuan dari Proyek Athena. Tujuannya adalah untuk memungkinkan pengguna (user) dan layanan (service) untuk saling mengautentikasi satu dengan yang lainnya. Dengan kata lain, saling menunjukkan identitasnya.
Tentu saja ada banyak cara untuk menunjukkan identitas pengguna kepada layanan tersebut. Salah satu cara yang paling umum adalah dengan penggunaan password. Seseorang “log in” ke dalam server dengan mengetikkan username dan password, yang idealnya hanya diketahui oleh pengguna dan server tersebut. Server tersebut kemudian diyakinkan bahwa orang yang sedang berusaha mengaksesnya adalah benar-benar pengguna.
Namun, penggunaan password ini memiliki banyak kelemahan. Misalnya seseorang memilih password yang mudah ditebak oleh orang lain dalam beberapa kali usaha percobaan. Dalam hal ini dikatakan bahwa password tersebut lemah. Masalah lainnya timbul ketika password ini akan dikirimkan melalui jaringan: Password tersebut harus melalui jaringan tanpa dienkripsi. Dengan kata lain, jika ada orang lain yang “mendengarkan” jaringan tersebut dapat mencegat password itu dan mendapatkannya kemudian menggunakannya untuk masuk sebagai pengguna.
Inovasi utama dalam Kerberos adalah gagasan bahwa password tersebut dapat dilihat sebagai suatu shared secret, sesuatu rahasia yang hanya pengguna dan server yang mengetahuinya. Menunjukkan identitas dilakukan tanpa pengguna harus membuka rahasia tersebut. Ada suatu cara untuk membuktikan bahwa kita mengetahui rahasia tersebut tanpa mengirimnya ke jaringan. Dalam perkembangan teknologi informasi yang semakin berkembang pesat saat ini, manusia dituntut untuk bergerak lebih cepat mendapatkan informasi yang terbaru di bidang teknologi informasi dan komunikasi agar tidak ketinggalan karena pengetahuan tersebut selalu up to date setiap harinya. Hubungan antara informasi dan komunikasi dengan dunia jaringan komputer sangatlah dekat. Sekarang komputer banyak digunakan untuk mendapatkan informasi, dan juga sebagai salah satu alat komunikasi.
Dan Kerberos dibuat untuk menangani masalah otentikasi. Kerberos memungkinkan server dan cliet saling melakukan otentikasi sebelum membuat suatu koneksi. Kerberos dalam keamanan computer adalah merujuk kepada sebuah protocol autentikasi yang dikembangkan oleh Massachusetts Institute Technology (MIT). Protokol Kerberos memiliki tiga subprotokol agar dapat melakukan aksinya:
1.     Authentication Service (AS) Exchange: yang digunakan oleh Key Distribution Center (KDC) untuk menyediakan Ticket-Granting Ticket (TGT) kepada klien dan membuat kunci sesi logon.
2.    Ticket-Granting Service (TGS) Exchange: yang digunakan oleh KDC untuk mendistribusikan kunci sesi layanan dan tiket yang diasosiasikan dengannya.
3.    Client/Server (CS) Exchange: yang digunakan oleh klien untuk mengirimkan sebuah tiket sebagai pendaftaran kepada sebuah layanan.

Sesi autentikasi Kerberos yang dilakukan antara klien dan server adalah sebagai berikut:


Gambar 5. Autentikasi Kerberos

Cara kerja protokol Kerberos
1.        Informasi pribadi pengguna dimasukkan ke dalam komputer klien Kerberos, yang kemudian akan mengirimkan sebuah request terhadap KDC untuk mengakses TGS dengan menggunakan protokol AS Exchange. Dalam request tersebut terdapat bukti identitas pengguna dalam bentuk terenkripsi.
2.        KDC kemudian menerima request dari klien Kerberos, lalu mencari kunci utama (disebut sebagai Master Key) yang dimiliki oleh pengguna dalam layanan direktori Active Directory (dalam Windows 2000/Windows Server 2003) untuk selanjutnya melakukan dekripsi terhadap informasi identitas yang terdapat dalam request yang dikirimkan. Jika identitas pengguna berhasil diverifikasi, KDC akan meresponsnya dengan memberikan TGT dan sebuah kunci sesi dengan menggunakan protokol AS Exchange.
3.        Klien selanjutnya mengirimkan request TGS kepada KDC yang mengandung TGT yang sebelumnya diterima dari KDC dan meminta akses tehradap beberapa layanan dalam server dengan menggunakan protokol TGS Exchange.
4.        KDC selanjutnya menerima request, malakukan autentikasi terhadap pengguna, dan meresponsnya dengan memberikan sebuah tiket dan kunci sesi kepada pengguna untuk mengakses server target dengan menggunakan protokol TGS Exchange.
5.        Klien selanjutnya mengirimkan request terhadap server target yang mengandung tiket yang didapatkan sebelumnya dengan menggunakan protokol CS Exchange. Server target kemudian melakukan autentikasi terhadap tiket yang bersangkutan, membalasnya dengan sebuah kunci sesi, dan klien pun akhirnya dapat mengakses layanan yang tersedia dalam server.
6.        Proses autentifikasinya cukup sederhana. Pertama kali pengguna hendak login ke server, ia harus membuktikan keaslian dirinya kepada authentication server (AS). Server ini akan membentuk session key dan encryption key bagi pengguna, untuk mengacak password maupun isi percakapan yang terjadi antara pengguna dan server.
7.        Encryption key berfungsi sebagai tiket masuk, istilahnya ticket-granting-ticket, ke dalam server. Dengannya, pengguna belum bisa melayangkan request layanan (service). Selanjutnya, tiket ini akan dikirim kepada ticket granting server (TGS) yang akan memberikan tiket untuk mengirim request layanan kepada service server.
8.        Tiket yang digunakan untuk melakukan request layanan dibatasi oleh rentang waktu, biasanya 8 jam. Dengan demikan, potensi ancaman keamanan tiket ini digunakan oleh orang lain di lain waktu dapat dikurangi.

Tahap – tahap Otentikasi
Cara kerja Kerberos melakukan otentikasi dapat dibagi menjadi empat tahap sebagai berikut.

Gambar 6.Tahap 1 Authentication Exchange

Tahap pertama disebut Authentication Exchange.Pihak yang terlibat adalah client dan KerberosAuthentication Server (AS). Untuk login ke jaringan, program di sisi client (dikenal dengan kinit) akan meminta user untuk memasukkan username dan password. Program ini akan menurunkan client key (KC) dari password dan menghapus password sebenarnya di workstation tersebut. Usernameakan dikirim melintasi jaringan ke AS. Jika username terdapat di database, maka AS akan membuat Session Key 1 (SK1 atau KC,TGS) untuk komunikasi antara client dan Ticket-granting Server (TGS).
Selain itu, AS juga membuat ticket untuk komunikasi antara client dan TGS (disebut TicketgrantingTicket atau TGT atau TC,TGS). Selanjutnya KC,TGS dan TC,TGS dienkripsi dengan TGS key (KTGS). Paket ini diperuntukkan untuk dibuka hanya oleh TGS. Paket TGS dan KC,TGS dienkripsi dengan KC, lalu dikirimkan ke client. Notasi untuk proses ini dapat ditunjukkan seperti di bawah ini:
{ KC,TGS, { KC,TGS, TC,TGS }KTGS } KCdimana { TX }KX berarti ticket TX dienkripsi dengan kunci KX. Warna merah menunjukkan paket TGS yang dienkripsi dengan KTGS.

Gambar 7. Tahap 2: Ticket-granting Server (TGS) Exchange
Tahap berikutnya disebut TGS Exchange.Data dari AS didekripsi dengan menggunakan KC. Jika password yang dimasukkan sesuai dengan username, maka clientakan mampu mendekripsi data dengan benar. Client akan mendapatkan KC,TGS dan paket TGS yang masih dalam keadaan terenkripsi. Client tidak dapat membuka paket ini karena kunci yang dipakai adalah KTGS, yang hanya diketahui oleh AS dan TGS. Selanjutnya clientakan membuat Authenticator (Auth atau AC) yang berisi username, IP addressclient, dan time-stamp. Lalu clientakan mengirimkan nama server yang dituju (S), AC, dan mem-forward paket TGS dari AS ke TGS melintasi jaringan.
Notasi dari pengiriman tersebut adalah sebagai berikut:
S, { AC }KC,TGS, { KC,TGS, TC,TGS }KTGS
Di TGS paket TGS dari AS didekrip dengan KTGS dan TGS memperoleh KC,TGS dan TTGS. KC,TGS digunakan untuk mendekrip AC. Jika isi AC dan TC,TGS sesuai, maka TGS akan memberi akses dengan cara membuat Session Key 2 (SK2 atau KC,S) untuk komunikasi antara client dan server yang dituju (disebut juga Target Server atau TS). TGS akan mengeluarkan ticket baru (disebut TK-TS atau TC,S). TC,S an KC,S akan dienkrip dengan kunci privat server (KS) menjadi paket TS dari TGS. KC,S dan paket TS dienkrip dengan KC,TGS, kemudian dikirimkan ke client melintasi jaringan.
Notasi untuk pengiriman ini dinyatakan sebagai berikut:
{ KC,S, { KC,S, TC,S }KS }KC,TGS
Warna jingga menunjukkan paket TS dari TGS.

Gambar 8. Tahap 3: Client/Server Exchange

Tahap ketiga disebut Client/Server Exchange. Pada tahap ini client dan server yang bersangkutan akan melakukan otentikasi. Otentikasi ini dapat berlangsung searah atau dua arah (mutual authentication).Otentikasi searah berarti client harus membuktikan ke server siapa dirinya, sedangkan pada otentikasi dua arah server juga harus membuktikan kepada client siapa dirinya.Client mendekrip data yang diterima dengan KC,TGS dan mendapatkan KC,S dan paket TS dari TGS. Paket TS ini tidak dapat dibuka oleh client karena proses dekripsi dilakukan dengan menggunakan kunci privat KS yang hanya diketahui oleh TGS dan TS. Kemudian client akan membuat AC, dan mengenkripsinya dengan KC,S. Selanjutnya client mengirimkan AC tersebut dan mem-forward paket TS dari TGS ke server yang dituju melintasi jaringan. Notasi untuk proses ini dinyatakan sebagai berikut:
{ AC }KC,S, { KC,S, TC,S }KS
Sesampainya di TS, server akan mendekrip paket TS dari TGS dengan kunci privat yang dimilikinya, dan mendapatkan KC,S dan TC,S. KC,S digunakan untuk mendekrip AC. Jika isi AC dan TC,S sesuai, maka TS akan memberi akses kepada client untuk mendapatkan service darinya. Dengan demikian TS telah diyakinkan bahwa user yang meminta service padanya adalah user yang sah. Jika mutualauthentication dibutuhkan, maka TS akan mengirimkan data timestamp yang tercantum di AC ditambah satu, lalu dienkripsi dengan sessionkey KC,S. Notasinya adalah sebagai berikut:
{ time-stamp AC+ 1 }KC,S
Dengan demikian kedua belah pihak diyakinkan akan kebenaran identitas masing-masing.
         Gambar 9. Tahap 4: Secure Communication

Tahap terakhir disebut Secure Communication. Baik client dan TS telah diyakinkan akan kebenaran identitas masing-masing. Pertukaran data diantara keduanya dapat dilakukan dengan aman karena client dan server memiliki kunci privat KC,S yang hanya diketahui oleh mereka saja. Gambar ini memperlihatkan jalannya otentikasi yang harus dilalui sebelum client mendapat akses ke server.

8.      Point-to-Point Tunneling Protocol (PPTP)
Point-to-Point Tunneling Protocol (PPTP) adalah suatu protokol jaringan yang memungkinkan pengiriman data secara aman dari remote client kepada server dengan membuat suatu virtual private network (VPN) melalui jaringan data berbasis TCP/IP.
Dalam VPN, karena media penghubung antar jaringannya adalah jaringan publik, diperlukan pengamanan dan pembatasan-pembatasan. Pengamanan diperlukan untuk menjaga agar tidak sebarang orang dari jaringan publik dapat masuk ke jaringan pribadi. Yang dikecualikan untuk dapat masuk ke jaringan pribadi hanyalah orang-orang yang terdaftar atau terautentifikasi terlebih dahulu. Pembatasan diperlukan untuk menjaga agar tidak semua orang atau user dari jaringan pribadi dapat mengakses jaringan publik (internet).
Salah satu cara untuk membangun VPN adalah dengan Metode Tunneling. Sesuai dengan arti tunnel (yang bisa diartikan dengan "lorong"), cara membentuk suatu VPN dengan cara ini adalah dengan membuat suatu tunnel di dalam jaringan publik untuk menghubungkan antara jaringan yang satu dan jaringan lain dari suatu grup atau perusahaan yang ingin membangun VPN tersebut. Seluruh komunikasi data antarjaringan pribadi akan melalui tunnel ini, sehingga orang atau user dari jaringan publik yang tidak memiliki izin untuk masuk tidak akan mampu untuk menyadap, mengacak atau mencuri data yang melintasi tunnel ini. Di dalam tunneling terdapat proses enkapsulasi, transmisi dan dekapsulasi paket yang dikomunikasikan.
Metode tunneling dapat digambarkan secara ringkas sebagai berikut:


Teknologi tunneling dikelompokkan secara garis besar berdasarkan protokol tunneling layer 2 (Data Link Layer) dan layer 3 (Network Layer) model OSI layer. Yang termasuk ke dalam tunneling layer 2 adalah L2F, PPTP, dan L2TP. Sedangkan yang termasuk layer 3 adalah IPSec, VTP, dan ATMP.
Teknologi jaringan PPTP merupakan perluasan dari remote access Point-to-Point protocol yang telah dijelaskan dalam RFC 1171 yang berjudul “The Point-to-Point Protocol for the Transmission of  Multi-Protocol Datagrams over Point-to-Point Links” . PPTP adalah suatu protokol jaringan yang membungkus paket PPP ke dalam IP datagram untuk transmisi yang dilakukan melalui internet atau jaringan publik berbasis TCP/IP. PPTP dapat juga digunakan pada jaringan LAN-to-LAN.
Fitur penting dalam penggunaan PPTP adalah dukungan terhadap VPN dengan menggunakan Public-Switched Telephone Networks (PSTNs). PPTP menyederhanakan dan mengurangi biaya dalam penggunaan pada perusahaan besar dan sebagai solusi untuk remote atau mobile userskarena PPTP memberikan komunikasi yang aman dan terenkripsi melalui line public telephonedan internet.
Secara umum, terdapat tiga komponen di dalam komputer yang menggunakan PPTP yaitu :
1.      PPTP client
2.      Network Access Server
3.      PPTP server

Ikhtisar Arsitektur PPTP
Komunikasi yang aman dibuat dengan menggunakan protokol PPTP secara tipikal terdiri dari tiga proses, dimana membutuhkan keberhasilan penyelesaian dari proses sebelumnya. Ketiga proses tersebut adalah :

·         PPP Connection and Communication
Suatu client PPTP  menggunakan PPP untuk koneksi ke sebuah ISP dengan memakai line telepon standar atau line ISDN. Koneksi ini memakai protokol PPP untuk membuat koneksi dan mengenkripsi paket data.
·         PPTP Control Connection
Penggunaan koneksi ke internet dibuat oleh protokol PPP, protokol PPTP membuat control connection dari client PPTP ke server PPTP pada internet. Koneksi ini memakai TCP untuk membuat koneksi yang disebut dengan PPTP tunnel.
·         PPTP Data Tunneling
Terakhir, protokol PPTP membuat IP datagram yang berisi paket PPP yang terenkripsi dan kemudian dikirim melalui PPTP tunnel ke server PPTP.  Server PPTP memeriksa IP datagram dan mendekripsi paket PPP, dan kemudian mengarahkan paket yang terdekripsi ke jaringanprivate.

Keamanan PPTP
PPTP secara luas memberikan layanan keamanan otentikasi dan enkripsi yang kuat dan tersedia pada computer yang menjalankan RAS dari server Windows NT versi 4.0 dan Windows NT Workstation versi 4.0 ke client PPTP di internet. PPTP juga dapat melindungi server PPTP dan jaringan private dengan mengabaikan semuanya kecuali PPTP traffic. Walaupun kemanannya kuat, PPTP sangat mudah digunakan dengan adanya firewalls.

1.      Otentikasi
Otentikasi dibutuhkan server network access ISP dalam initial dial-in. Jika otentikasi ini dibutuhkan maka sangat sulit untuk log on ke server network access ISP; otentikasi ini tidak berhubungan dengan otentikasi berbasis Windows NT. Dengan kata lain, jika server windows NT versi 4.0 sebagai server PPTP, maka server tersebut yang akan mengendalikan semua akses ke jaringan private. Dengan kata lain, server PPTP merupakan gateway menuju jaringanprivate. Server PPTP membutuhkan proses logon berbasis Windows NT standar. Semua client PPTP harus memiliki user name dan password. Oleh karena itu keamanan logon akses terbatas dengan menggunakan komputer dengan Windows NT server atau windows NT workstation versi 4 harus sama dengan keamanan saat logging pada komputer berbasis windows NT yang terkoneksi ke LAN lokal. Otentikasi client remote PPTP dilakukan dengan menggunakan metode otentikasi PPP yang sama dimana client RAS langsung terhubung dengan server RAS. User account terletak dalam directory service windows NT server versi 4.0 dan diatur melalui user manager untuk domain. User manager ini menyediakan pengaturan terpusat yang terintegrasi dengan user account jaringan private yang tersedia. Hanya account yang diakui saja yang bisa mengakses jaringan. Memiliki password yang sulit ditebak akan mengurangi resiko terhadapbrute force attack karena proses otentikasi tersebut rentan terhadap brute force attack.

2.      Access Control
Setelah proses otentikasi, semua akses ke private LAN diteruskan dengan memakai model keamanan berbasis windows NT. Akses ke sumber pada drive NTFS atau sumber jaringan lainnya membutuhkan ijin yang sesuai. Direkomendasikan bahwa sistem file NTFS digunakan untuk sumber file yang diakses oleh client PPTP.

3.      Enkripsi Data
Untuk enkripsi data, PPTP menggunakan proses enkripsi RAS “shared-secret”. Disebut “shared-secret” karena pada awal dan akhir koneksi PPTP membagi kunci enkripsi. Dalam implementasi Microsoft dari RAS, shared secret disebut user password. (metode enkripsi lainnya berbasis enkripsi pada tersedianya kunci untuk public; metode enkripsi kedua ini dikenal sebagai public key encryption). PPTP menggunakan skema PPP encryption dan PPPcompression. CCP (Compression Control Protocol) digunakan PPP untuk enkripsi. User namedan password PPTP client tersedia untuk PPTP server dan diberikan oleh PPTP client. Kunci enkripsi dihasilkan dari penyimpanan password yang telah di-hash yang terdapat di client dan server. RSA RC4 standar digunakan untuk menghasilkan session key 40 bit berdasarkan padapassword client. Kunci ini dipakai untuk mengenkripsi semua data yang melewati internet, untuk melindungi koneksi private agar aman.
Data pada paket-paket PPP dienkripsi. Paket PPP yang berisi blok data terenkripsi kemudian dibungkus hingga manjadi IP datagram yang besar untuk routing melalui internet ke serverPPTP. Jika hacker internet melakukan intercept IP datagram, ia hanya akan mendapatkan media header, IP header dan paket PPP berisi blok data yang terenkripsi bukan data yang terdekripsi.

4.      PPTP Packet Filtering
Keamanan jaringan dari aktivitas kejahatan dapat meningkat dengan memakai PPTP filteringpada server PPTP. Ketika PPTP filtering digunakan, PPTP server pada jaringan privatemenerima dan mengarahkan paket-paket PPTP dari user yang terotentikasi. Hal ini akan melindungi semua paket yang berasal dari server PPTP dan jaringan private. Berhubungan dengan enkripsi PPP, maka hal ini akan menjamin hanya data terenkripsi yang berhak masuk dan keluar private LAN.

9.      Remote Authentication Dial In User Service (Radius)
Pengenalan
Remote Access (pada sebagian literatur Authentication) Dial-In User Service, yang sering disingkat menjadi RADIUS, adalah sebuah protokol keamanan komputer yang digunakan untuk melakukan autentikasi, otorisasi, dan pendaftaran akun pengguna secara terpusat untuk mengakses jaringan. RADIUS didefinisikan didalam RFC 2865 dan RFC 2866, yang pada awalnya digunakan untuk melakukan autentikasi terhadap akses jaringan jarak jauh (remote) dengan menggunakan koneksi dial-up.
RADIUS kini telah diimplementasikan untuk melakukan autentikasi terhadap akses jaringan secara jarak jauh dengan menggunakan koneksi selain dial-up, seperti halnya Virtual Private Networking (VPN), access point nirkabel, switch Ethernet, dan perangkat lainnya.
RADIUS mula-mula dikembangkan oleh perusahan Livingston. Pada awal pengembangannya, RADIUS menggunakan port 1645, yang ternyata bentrok dengan layanan “datametrics”. Sekarang, port yang dipakai RADIUS adalah port 1812. Berikut ini adalah RFC (Request For Comment) yang berhubungan dengan RADIUS:
·         RFC 2865 : Remote Authentication Dial-In User Service (RADIUS)
·         RFC 2866 : RADIUS Accounting
·         RFC 2867 : RADIUS Accounting for Tunneling
·         RFC 2868 : RADIUS Authentication for Tunneling
·         RFC 2869 : RADIUS Extensions
·         RFC 3162 : RADIUS over IP6
·         RFC 2548 : Microsoft Vendor-Specific RADIUS Attributes

Karakteristik
Beberapa karakteristik dari RADIUS adalah sebagai berikut:
  • Berbasis UDP Protocol
  • Bisa ditempatkan dimana saja di internet dan dapat membuat autentikasi (PPP, PAP, CHAP, MS-CHAP, EAP) antara Network Access Server (NAS) dan server itu sendiri
  • RADIUS menggunakan Remote Access Server (RAS) Secure ID untuk membuat autentikasi yang kuat dalam pengontrolan akses
Struktur paket data RADIUS bisa digambarkan sebagai berikut:

Paket Data RADIUS

Code, memiliki panjang satu oktet dan digunakan untuk membedakan tipe pesan RADIUS yang dikirimkan pada paket. Kode-kode tersebut (dalam desimal) antara lain:
1.      Access-Request
2.      Access-Accept
3.      Access-Reject
4.      Accounting-Request
5.      Accounting-Response
11.  Access-Challenge
12.  Status-Server
13.  Status-Client
255. Reserved

Identifier, Memiliki panjang satu oktet dan bertujuan untuk mencocokkan permintaan.
Length, Memiliki panjang dua oktet, memberikan informasi mengenai panjang paket.
Authenticator, Memiliki panjang 16 oktet, digunakan untuk membuktikan balasan dari RADIUS server, selain itu digunakan juga untuk algoritma password.
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.

Cara Kerja
RADIUS menggunakan konsep AAA (Authentication, Authorization, Accounting). Konsep tersebut dapat digambarkan sebagai berikut:

Aliran Data Pada RADIUS

·         Access Reject
User ditolak aksesnya ke semua sumberdaya dalam jaringan. Penyebabnya bisa termasuk kegagalah untuk menyediakan indentifikasi yang tepat atau nama akun yang salah/tidak aktif
·         Access Challenge
Permintaan informasi tambahan dari user, seperti password alteernatif, PIN, token atau kartu.
·         Access Accept
User diberikan akses masuk. Begitu User ter-autentifikasi, server RADIUS akan sering mengecek agar User hanya menggunakan sumberdaya sesuai dengan yang diminta. Misalnya User hanya boleh mengakses fasilitas hotspot, dan tidak untuk menggunakan printer. Informasi tentang User dalam database bisa disimpan secara lokal dalam server RADIUS atau disimpan dalam tempat penyimpanan eksternal seperti LDAP atau Active Directory
Proses Authentication
Proses autentikasi diperlukan ketika Anda mempunyai kebutuhan untuk membatasi siapa saja yang diperbolehkan masuk ke dalam jaringan remote access milik Anda. Untuk memenuhi kebutuhan tersebut, pengguna yang ingin mengakses sebuah jaringan secara remote harus diidentifikasi terlebih dahulu. Pengguna yang ingin masuk ke dalam jaringan pribadi tersebut perlu diketahui terlebih dahulu sebelum bebas mengakses jaringan tersebut. Pengenalan ini bertujuan untuk mengetahui apakah pengguna tersebut berhak atau tidak untuk mengakses jaringan.
Analoginya sederhananya adalah seperti rumah Anda. Apabila ada orang yang ingin berkunjung ke rumah Anda, kali pertama yang akan dilakukan oleh pemilik rumahnya adalah mengidentifikasi siapa yang ingin datang dan masuk ke dalamnya. Jika Anda tidak mengenal orang tersebut, bisa saja Anda tolak permintaannya untuk masuk ke rumah Anda. Namun jika sudah dikenal, maka Anda mungkin akan langsung mempersilakannya masuk. Demikian juga dengan apa yang dilakukan oleh perangkat remote access terhadap pengguna yang ingin bergabung ke dalam jaringan di belakangnya.
Pada umumnya, perangkat remote access telah dilengkapi dengan sebuah daftar yang berisikan siapa-siapa saja yang berhak masuk ke jaringan di belakangnya. Metode yang paling umum digunakan untuk mengenali pengakses jaringan adalah dialog Login dan Password. Metode ini juga didukung oleh banyak komponen lainnya, seperti metode challenge dan response, messaging support, dan enkripsi, tergantung pada protokol sekuriti apa yang Anda gunakan.

Proses Authorization
Proses authorization merupakan langkah selanjutnya setelah proses autentikasi berhasil. Ketika pengguna yang ingin mengakses jaringan Anda telah dikenali dan termasuk dalam daftar yang diperbolehkan membuka akses, langkah berikutnya Anda harus memberikan batasan hak-hak apa saja yang akan diterima oleh pengguna tersebut.
Analogi dari proses ini dapat dimisalkan seperti peraturan-peraturan yang tertempel di dinding-dinding rumah Anda. Isi dari peraturan tersebut biasanya akan membatasi para pengunjung agar mereka tidak dapat dengan bebas berkeliling rumah Anda. Tentu ada bagian yang privasi di rumah Anda, bukan? Misalnya setiap pengunjung rumah Anda tidak diperbolehkan masuk ke ruang kerja Anda. Atau setiap pengunjung harus membuka alas kakinya ketika memasuki ruangan ibadah di rumah Anda. Atau setiap pengunjung hanya diperbolehkan masuk sampai teras rumah.
Semua itu merupakan peraturan yang dapat dengan bebas Anda buat di rumah Anda. Begitu juga dengan apa yang terjadi pada proses pengamanan jaringan remote access Anda. Perlu sekali adanya batasan untuk para pengguna jaringan remote karena Anda tidak akan pernah tahu siapa yang ingin masuk ke dalam jaringan Anda tersebut, meskipun telah teridentifikasi dengan benar. Bisa saja orang lain yang tidak berhak menggunakan username dan password yang bukan miliknya untuk mendapatkan akses ke jaringan Anda.
Bagaimana untuk membatasi masing-masing pengguna tersebut? Banyak sekali metode untuk melakukan pembatasan ini, namun yang paling umum digunakan adalah dengan menggunakan seperangkat atribut khusus yang dirangkai-rangkai untuk menghasilkan policy tentang hak-hak apa saja yang dapat dilakukan si pengguna. Atribut-atribut ini kemudian dibandingkan dengan apa yang dicatat di dalam database.
Setelah dibandingkan dengan informasi yang ada di database, hasilnya akan dikembalikan lagi kepada fasilitas AAA yang berjalan pada perangkat tersebut. Berdasarkan hasil ini, perangkat remote access akan memberikan apa yang menjadi hak dari si pengguna tersebut. Apa saja yang bisa dilakukannya dan apa saja yang dilarang sudah berlaku dalam tahap ini.
Database yang berfungsi untuk menampung semua informasi ini dapat dibuat secara lokal di dalam perangkat remote access atau router maupun dalam perangkat khusus yang biasanya disebut dengan istilah server sekuriti. Di dalam server sekuriti ini biasanya tidak hanya informasi profil penggunanya saja yang ditampung, protokol sekuriti juga harus berjalan di sini untuk dapat melayani permintaan informasi profil dari perangkat-perangkat yang berperan sebagai kliennya. Pada perangkat inilah nantinya attribute-value (AV) dari pengguna yang ingin bergabung diterima dan diproses untuk kemudian dikembalikan lagi menjadi sebuah peraturan oleh fasilitas AAA tersebut.
Metode authorization biasanya dilakukan dalam banyak cara. Bisa dilakukan dengan cara one-time authorization yang memberikan seluruh hak dari si pengguna hanya dengan satu kali proses authorization. Atau bisa juga dilakukan per service authorization yang membuat pengguna harus diotorisasi berkali-kali ketika ingin menggunakan layanan tertentu. Authorization juga bisa dibuat per pengguna berdasarkan daftar yang ada di server sekuriti, atau kalau protokolnya mendukung otorisasi bisa diberlakukan per group pengguna. Selain itu, jika keamanan server memungkinkan, Anda dapat memberlakukan aturan-aturan otorisasi berdasarkan sistem pengalamatan IP, IPX, dan banyak lagi

Proses Accounting
Proses accounting dalam layanan koneksi remote access amat sangat penting, apalagi jika Anda membuat jaringan ini untuk kepentingan komersial. Dalam proses accounting ini, perangkat remote access atau server sekuriti akan mengumpulkan informasi seputar berapa lama si pengguna sudah terkoneksi, billing time (waktu start dan waktu stop) yang telah dilaluinya selama pemakaian, sampai berapa besar data yang sudah dilewatkan dalam transaksi komunikasi tersebut. Data dan informasi ini akan berguna sekali untuk pengguna maupun administratornya. Biasanya informasi ini akan digunakan dalam melakukan proses auditing, membuat laporan pemakaian, penganalisisan karakteristik jaringan, pembuatan billing tagihan, dan banyak lagi. Fasilitas accounting pada jaringan remote access umumnya juga memungkinkan Anda untuk melakukan monitoring terhadap layanan apa saja yang digunakan oleh pengguna. Dengan demikian, fasilitas accounting dapat mengetahui seberapa besar resource jaringan yang Anda gunakan. Ketika fasilitas AAA diaktifkan pada sebuah perangkat jaringan remote access, perangkat tersebut akan melaporkan setiap transaksi tersebut ke keamanan server. Tergantung pada protokol sekuriti apa yang Anda gunakan, maka cara melaporkannya pun berbeda-beda. Setiap record accounting akan mempengaruhi nilai-nilai atribut dari proses AAA yang lain seperti authentication dan authorization. Semua informasi yang saling terkait ini kemudian disimpan di dalam database server sekuriti atau jika memang diperlukan, kumpulan informasi ini dapat disimpan di server khusus tersendiri. Biasanya server khusus billing diperlukan jika penggunanya sudah berjumlah sangat banyak. Berikut ini adalah contoh cara kerja RADIUS:
1.      Sebuah Wireless Node (WN) / Supplicant dengan alamat IP 192.168.10.30 dan IP yang telah terdaftar dalam pemfilteran MAC ADDRESS meminta akses ke wireless network atau Access Point (AP).
2.      Access Point (AP) akan menanyakan identitas Supplicant. Tidak ada trafik data selain Client yang diperbolehkan sebelum Supplicant terautentikasi. Dalam hal ini, Access point bukanlah sebuah autentikator, tetapi access point berisi autentikator.
3.      Setelah nama-pengguna dan password dikirim, proses autentikasi dimulai. Autentikator mengenkapsulasi kembali pesan ke dalam format RADIUS, dan mengirimnya ke RADIUS server. Selama proses autentikasi, autentikator hanya menyampaikan paket antara Supplicant dan RADIUS server. Setelah proses autentikasi selesai, RADIUS server mengirimkan pesan sukses (atau gagal, apabila proses autentikasinya gagal.) Apabila proses autentikasi sukses, Supplicant diperbolehkan untuk mengakses wireless LAN dan/atau internet.
4.      Jika nama Supplicant tidak terautentifikasi, maka radius server akan mengirim pesan gagal. Dan proses authentifikasi tidak berjalan atau gagal.

Contoh Implementasi
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 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.

10.  RSA Encryption
Pengenalan
RSA adalah sebuah algoritma berdasarkan skema public-key cryptography. Diberi nama RSA sebagai inisial para penemunya: Ron Rivest, Adi Shamir, dan Leonard Adleman. RSA dibuat di MIT pada tahun 1977 dan dipatenkan oleh MIT pada tahun 1983. Setelah bulan September tahun 2000, paten tersebut berakhir, sehingga saat ini semua orang dapat menggunakannya dengan bebas.
Lebih jauh, RSA adalah algoritma yang mudah untuk diimplementasikan dan dimengerti. Algoritma RSA adalah sebuah aplikasi dari sekian banyak teori seperti extended euclid algorithm, euler's function sampai fermat theorem.

Notasi Matematika
Untuk memahami algoritma RSA, seseorang harus memahami beberapa notasi matematika dasar, teori dan formula. Hal tersebut dibutuhkan untuk mendukung semua kalkulasi yang dilakukan dalam algoritma RSA.
1.      Modulo (didenotasikan dengan 'x mod m' atau 'x % m' dalam beberapa bahasa komputer)
·         x % m = x mod m = pembagian x dengan m dan mengambil sisanya.
Contoh:   25 mod 5 = 0 karena 5 habis membagi 25
              25 mod 4 = 1 karena 25 / ( 4 * 6 ) menyisakan 1
                           x  mod m = x jika dan hanya jika x < m              
2.      Z/mZ
·         Z/7Z : { 0,1,2,3,4,5,6 } dimana [7]=[0], [8]=[1], [9]=[2] dan seterusnya.
·         Operasi yang didukung dalam Z/mZ aalah penjumlahan, pengurangan, pembagian dan perkalian.
·         Inverse: Sebuah elemen dalam Z/mZ seperti A, memiliki sebuah inverse B jika dan hanya jika [A]x[B] = [1]
·         Units: Setiap elemen dalam Z/mZ yang memiliki inverse adalah sebuah unit.

Contoh: Z/7Z
     Penjumlahan: [2]+[3] = [5]                    ; [5]+[5] = [10] ... [10-7] = [3]  
     Pengurangan: [2]-[3] = [-1] = [6]          ; [6]-[4] = [2]
     Pembagian  : [6]/[2] = [3]                      ; [6]/[4] = [5] ([4]x[5] = [20] = [6])
     Perkalian  : [2]x[6] = [12] = [5]             ;

3.      GCD(A,B)
GCD            = greatest common divisor.
GCD(A,B)   = D
GCD(78,32) = 2, karena tidak ada bilangan yang lebih besar dari dua yang
                        membagi 78 dan 32.
GCD(A,B) dapat ditemukan dengan menggunakan algoritma extended euclid.

Jika GCD(A,B) = 1 maka A and B dalah coprime satu sama lainnya (dengan kata lain, A dan B adalah relatively prime).

4.      Memecahkan 8x mod 13 = 1, dimana x adalah bilangan yang belum diketahui.
·         Cari gcd(8,13) yang berarti 1  ... yang berarti persamaan dapat diselesaikan.
·         Membuat sebuah matriks dan menggunakan operasi gaussian dalam matriks.

          8 | 1 0   r2=r2-r1    8 |  1 0  r1=r1-r2  
         13 | 0 1   --------->  5 | -1 1  --------->
    
          3 |  2 -1  r2=r2-r1    3 | 2 -1
          5 | -1  1  --------->  2 |-3  2

lakukan sampai kita mendapatkan format : 1 | s  t
                                     0 | s' t'

s, t, s', t' dapat berupa bilangan apa saja.

     Jika hasil akhir yang di dapat sbb:  0 | s' t' , kita harus
                                          1 | s  t
                                         
     rotasi atas-bawah hasil nya menjadi format: 1 | s  t
                                          0 | s' t'

     sehingga sekarang kita mendapatkan d =  1, s = 5, t = -3, sehingga
                                               x = s = 5.

5.      Euler's phi function (jangan sampai keliru dengan phi = 3.14)
· Euler's phi function adalah sebuah total bilangan unit dalam Z/mZ
· Theorem
    
a.       Jika p adalah sebuah bilangan prima, maka phi(p) = p – 1
p dan phi(p) adalah (contoh: gcd(p,phi(p)) = 1) 
          ii): phi(m*n) = phi(m) * phi (n)
               phi(p^a) = (p^a) - p^(a-1)

b.      Contoh:
        -- phi(7)   = 6
        -- phi(840) = phi(8) * phi(105) = phi(2^3) * phi(3*5*7)
                    = [(2^3) - (2^2)] * phi(3) * phi(5) * phi(7)  

6.      Pangkat. pow(a,b)
Saya akan menggunakan notasi '^' seperti pada a^b
 
Key Generation
Misalkan Alice ingin Bob mengirimnya sebuah pesan melalui jalur yang aman. Alice akan memberikan public keynya kepada Bob dan menyimpan private key untuk dirinya.

a.       Pilih 2 bilangan prima besar seperti p,q dimana p tidak sama dengan q.
b.      Hitung M = p x q
c.       Hitung phi(M) = phi(p) * phi(q)
d.      Pilih sebuah integer 'e' dimana 1 < e < phi(M) dan 'e' serta phi(M) adalah coprime.
e.       Hitung 'd' integer sehingga (d * e) mod M = 1
f.       (M,e) adalah public key dimana M adalah modulo dan e adalah eksponen encryption.
g.      (M,d) adalah private key dimana M adalah modulo dan d adalah eksponen decryption.

Encrypting Message
Misalkan Bob ingin mengirim sebuah pesan 'H' kepada Alice.
a.       Alice harus membuat keynya; sehingga ia memiliki private dan public keys.
 private key = (M,d)
 public key  = (M,e)
b.      Mengubah 'H' menjadi sebuah bilangan yang menggunakan alphabet  yang valid dengan tabel bilangan. Sebuah contoh mudah adalah mapping A = 1, B = 2 ... Z = 26.
sehingga H = 8
c.       C = 8^e (mod M)
       C adalah sebuah bilangan ter-encrypt.
d.      Bob mengirimkan bilangan tersebut kepada Alice sehingga Alice dapat melakukan decode ulang menggunakan private keynya.

Decrypting Message
Misalkan Alice menerima sebuah pesan ter-encrypt, ia akan men-decrypt-nya
menggunakan tahapan-tahapan berikut:
a.       Alice mempunyai private key dari langkah-langkah di atas (M,d)
b.      N = C^d (mod M)
c.       N adalah bilangan. Gunakan konversi table alphabet untuk mengubah N menjadi karakter yang direpresentasikannya.

RSA merupakan contoh yang powerful dan cukup aman dari Public-Key Cryptography. Berdasarkan matematika, proses yang digunakan berdasarkan fungsi-fungsi trap-door satu arah. Sehingga melakukan encryption dengan menggunakan public key sangat mudah bagi semua orang, namun proses decryption menjadi sangat sulit.
Proses decryption sengaja dibuat sulit agar seseorang, walaupun menggunakan Cray super computers dan ribuan tahun, tidak dapat men-decrypt pesan tanpa mempunyai private key.

Perlu diingat juga bahwa pemilihan p*q = M haruslah sebuah bilangan yang sangat besar sehingga sulit dicari eksponen decoding-nya karena sulit melakukan pemfaktoran bilangan prima.


SUMBER :
Sadikin, Rifki, 2012,Kriptografi Untuk Keamanan Jaringan, Yogyakarta: Andi.
http://samuyab.blogspot.com/2012/07/aes_13.htmlv
http://studyinformatics.blogspot.com/2012/07/des-data-encryption-standard.html
https://saadus.files.wordpress.com/2011/11/des-dan-aes.pdf
http://softteknik.blogspot.com/2013/07/ip-security_16.html
http://desyhermarianti.blogspot.com/2012/11/digital-certificate-digital-signature.html
https://saadus.files.wordpress.com/2011/11/dcs-vpn-kerberos.pdf
https://sufriadi.files.wordpress.com/2010/07/security-komputer.docx
http://renoxtremez.blogspot.com/2013/07/point-to-point-tunneling-protocol-pptp.html
http://putrajatim.blogspot.com/2012/08/remote-access-dial-in-user-service.html
http://ezine.echo.or.id/ezine12/echo12-05.txt

Tidak ada komentar:

Posting Komentar

leave your comment, please :)

 

Blog Template by BloggerCandy.com