Kamis, 22 November 2012

IP SECURITY (ipsec)


KIPTOGRAFI

[DES, AES, DCS, IPsec, KERBEROS]
KELOMPOK I


NAMA MATA KULIAH   : Keamanan Jaringan Dan Komputer
NAMA DOSEN                   : Ahmad Safaat, S.kom




OLEH  :
Hasan Hasanudin (D1A.10.007)



PROGRAM STUDI SISTEM INFORMASI
FAKULTAS ILMU KOMPUTER
UNIVERSITAS SUBANG
2012
----------------------------------------------------------------------------------------------------------------------


Internet Protocol Security (IPsec) adalah protokol untuk mengamankan Internet Protocol (IP) komunikasi dengan otentikasi dan enkripsi setiap paket IP dari sebuah sesi komunikasi. IPsec juga mencakup protokol untuk mendirikan otentikasi bersama antara agen pada awal sesi dan negosiasi kunci kriptografi yang akan digunakan selama sesi.
IPsec merupakan end-to-end security skema yang beroperasi di layer internet dari Internet Protocol Suite . Hal ini dapat digunakan dalam melindungi aliran data antara sepasang host (host-to-host), antara sepasang gateway keamanan (jaringan-jaringan), atau antara gateway keamanan dan host (jaringan-to-host) .
IPsec adalah penerus dari standar ISO Layer Security Jaringan Protokol (NLSP). NLSP didasarkan pada protokol SP3 yang diterbitkan oleh NIST , tetapi dirancang oleh proyek Sistem Jaringan Data Aman dari National Security Agency (NSA). IPsec secara resmi ditetapkan oleh Internet Engineering Task Force (IETF) dalam serangkaian Request for Comment dokumen menangani berbagai komponen dan ekstensi. Ini menentukan ejaan dari nama protokol IPsec.
5.1  Keamanan arsitektur
IPsec suite adalah sebuah standar terbuka . IPsec menggunakan berikut protokol untuk melakukan berbagai fungsi:
·                Otentikasi Header (AH) menyediakan connectionless integritas dan data asal otentikasi untuk IP datagram dan memberikan perlindungan terhadap serangan replay .
·                Payloads Keamanan encapsulating (ESP) menyediakan kerahasiaan , data asal otentikasi , connectionless integritas , layanan anti-ulangan (suatu bentuk dari integritas urutan parsial), dan kerahasiaan arus lalu lintas terbatas.
·                Asosiasi keamanan (SA) memberikan bundel algoritma dan data yang memberikan parameter yang diperlukan untuk mengoperasikan AH dan / atau operasi ESP. Para Internet Security Association dan Protokol Manajemen Kunci (ISAKMP) menyediakan kerangka kerja untuk otentikasi dan pertukaran kunci, dengan bahan keying aktual dikonfirmasi disediakan baik oleh konfigurasi manual dengan kunci pra-berbagi, Internet Key Exchange (IKE dan IKEv2), Kerberized internet Negosiasi Keys (Kink), atau IPSECKEY DNS record .
5.2  Authentication Head
Otentikasi Header (AH) adalah anggota dari protokol IPsec suite. AH connectionless jaminan integritas data asal dan otentikasi dari IP paket . Selanjutnya, secara opsional dapat melindungi terhadap serangan replay dengan menggunakan sliding window teknik dan tua membuang paket (lihat bawah ).
·                Dalam IPv4 , AH melindungi muatan IP dan field header semua datagram IP bisa berubah kecuali untuk bidang (yaitu orang-orang yang mungkin diubah dalam perjalanan). Bisa berubah (dan karena itu berkepentingan) field header IP DSCP / KL , ECN , Flags, Fragment Offset , TTL dan header checksum .
·                Dalam IPv6 , AH melindungi AH sendiri, Tujuan Pilihan sundulan ekstensi setelah AH, dan muatan IP. Hal ini juga melindungi header IPv6 tetap dan semua header ekstensi sebelum AH, kecuali untuk bisa berubah bidang: DSCP , ECN ., Label Arus, dan Limit Hop .AH beroperasi secara langsung di atas IP, menggunakan nomor protokol IP 51.
5.3  Algoritma Kriptografi
Algoritma kriptografi yang ditetapkan untuk digunakan dengan IPsec meliputi:
·                HMAC - SHA1 untuk perlindungan integritas dan keaslian.
·                TripleDES - CBC untuk kerahasiaan
·                AES -CBC untuk kerahasiaan.



5.3.1                 HMAC
Pengertian HMAC Dalam kriptografi , HMAC (Hash berbasis Pesan Kode Otentikasi) adalah konstruksi khusus untuk menghitung kode otentikasi pesan (MAC) yang melibatkan kriptografi fungsi hash dalam kombinasi dengan rahasia kunci . Seperti halnya MAC, hal itu dapat digunakan untuk memverifikasi secara simultan baik integritas data dan keaslian dari suatu pesan . Setiap fungsi hash kriptografi, seperti MD5 atau SHA-1 , dapat digunakan dalam perhitungan suatu HMAC; algoritma MAC yang dihasilkan disebut HMAC-MD5 atau HMAC-SHA1 sesuai. Kekuatan kriptografi HMAC tergantung pada kekuatan kriptografi fungsi hash yang mendasari, ukuran panjang keluaran hash-nya dalam bit, dan pada ukuran dan kualitas dari kunci kriptografi.
Sebuah fungsi hash iteratif istirahat sampai pesan ke blok ukuran tetap dan iterates atas mereka dengan fungsi kompresi . Sebagai contoh, MD5 dan SHA-1 beroperasi pada 512-bit blok. Ukuran output dari HMAC adalah sama dengan fungsi hash yang mendasari (128 atau 160 bit dalam kasus MD5 atau SHA-1, masing-masing), meskipun dapat dipotong jika diinginkan.
Definisi dan analisis pembangunan HMAC pertama kali diterbitkan pada tahun 1996 oleh Mihir Bellare , Ran Canetti, dan Hugo Krawczyk,  yang juga menulis RFC 2104 . Makalah ini juga didefinisikan varian disebut NMAC yang jarang jika pernah digunakan. FIPS PUB 198 generalizes dan standarisasi penggunaan HMACs. HMAC-SHA-1 dan HMAC-MD5 digunakan dalam IPsec dan TLS protokol.












5.3.2                 Definisi ( dari RFC 2104 )
Misalkan:
·                H (·) adalah fungsi hash kriptografi
·                K menjadi kunci rahasia melangkah ke kanan dengan nol ekstra untuk ukuran blok input dari fungsi hash, atau hash dari kunci asli jika itu lebih lama dari itu ukuran blok
·                m adalah pesan yang akan dikonfirmasi
·                menunjukkan Rangkaian
·                menunjukkan eksklusif atau (XOR)
·                opad menjadi padding luar (0x5c5c5c ... 5c5c, satu-blok-panjang heksadesimal konstan)
·                ipad menjadi padding bagian dalam (0x363636 ... 3636, satu-blok-panjang heksadesimal konstan)
Kemudian HMAC (K, m) adalah matematis didefinisikan oleh
HMAC (K, m) = H ((K opad) H ((K ipad) m)).
5.3.3                 Implementasi
Berikut pseudocode menunjukkan bagaimana HMAC dapat diimplementasikan. Blocksize adalah 64 (byte) ketika menggunakan salah satu fungsi hash sebagai berikut:. SHA-1, MD5, RIPEMD-128/160
fungsi HMAC (kunci, pesan)
jika (panjang (kunci)> blocksize) maka
kunci = hash (kunci) / / kunci lama dari blocksize diperpendek
akhir jika
jika (panjang (kunci) <blocksize) maka
kunci = kunci [0x00 * (blocksize - panjang (kunci))] / / kunci lebih pendek dari blocksize adalah diisi-nol ('' adalah penggabungan)
akhir jika
o_key_pad = [0x5c * blocksize] kunci / / Dimana blocksize adalah bahwa dari fungsi hash yang mendasari
i_key_pad = [0x36 * blocksize] kunci / / Dimana eksklusif atau (XOR)
kembali hash (hash o_key_pad (i_key_pad pesan)) / / Dimana '' adalah penggabungan
5.3.4                 Algoritma
Dalam matematika dan ilmu komputer , algoritma i / l æ ɡ ə r ɪ ð əm / merupakan metode yang efektif dinyatakan sebagai terbatas daftar didefinisikan dengan baik instruksi untuk menghitung fungsi . Algoritma yang digunakan untuk perhitungan , pengolahan data , dan otomatis penalaran . Dengan kata yang sederhana algoritma adalah prosedur langkah-demi-langkah untuk perhitungan.
Diagram alir dari algoritma ( algoritma Euclid 's ) untuk menghitung pembagi umum terbesar (FPB) dari dua bilangan a dan b di lokasi bernama A dan B. Hasil algoritma dengan pengurangan yang berturut-turut dalam dua loop: JIKA tes B ≤ A menghasilkan "ya "(atau benar) (lebih akurat jumlah b pada lokasi B kurang dari atau sama dengan nomor di lokasi A) KEMUDIAN algoritma menentukan B ← B - A (yang berarti jumlah b - sebuah menggantikan b tua). Demikian pula JIKA A> B THEN A ← A - B. Proses ini berakhir ketika (isi) B adalah 0, yang menghasilkan FPB dalam A. (Algoritma berasal dari Scott 2009:13; simbol dan gaya menggambar dari Tausworthe 1977).
5.3.4.1           Algoritma Mengekspresikan
Algoritma dapat dinyatakan dalam berbagai macam notasi, termasuk bahasa-bahasa alamiah , pseudocode , flowchart , bahasa pemrograman atau tabel kontrol (diproses oleh interpreter ). Ekspresi bahasa alami algoritma cenderung verbose dan ambigu, dan jarang digunakan untuk algoritma kompleks atau teknis. Pseudocode, flowchart dan tabel kontrol terstruktur cara untuk mengekspresikan algoritma yang menghindari banyak ambiguitas pernyataan umum dalam bahasa alami. Bahasa pemrograman yang terutama ditujukan untuk mengekspresikan algoritma dalam bentuk yang dapat dieksekusi oleh komputer, tetapi sering digunakan sebagai cara untuk mendefinisikan atau dokumen algoritma.
Ada berbagai macam representasi yang mungkin dan satu dapat mengekspresikan diberikan mesin Turing program sebagai urutan tabel mesin (lihat lebih lanjut di mesin negara yang terbatas dan tabel negara transisi ), seperti diagram alur (lihat lebih lanjut di diagram negara ), atau sebagai bentuk dari dasar kode mesin atau kode assembly disebut "set quadruples" (lihat lebih lanjut di mesin Turing ).
Representasi algoritma dapat digolongkan menjadi tiga tingkatan yang diterima dari deskripsi mesin Turing:
1.             Tingkat tinggi description: "... Prosa untuk menggambarkan sebuah algoritma, mengabaikan rincian pelaksanaan. Pada tingkat ini kita tidak perlu menyebutkan bagaimana mesin mengelola kaset atau kepala."
2.             Pelaksanaan description: "... Prosa digunakan untuk menentukan cara mesin Turing menggunakan kepala dan cara yang menyimpan data pada tape nya. Pada tingkat ini kita tidak memberikan rincian negara atau fungsi transisi."
3.             Formal description: Paling rinci, "tingkat terendah", memberikan "tabel negara" mesin Turing
5.3.4.2           Algoritma Komputer
Flowchart contoh kanonik Bohm-Jacopini struktur : para URUTAN (persegi panjang turun halaman), yang WHILE-DO dan IF-THEN-ELSE. Tiga struktur yang terbuat dari GOTO bersyarat primitif (JIKA tes = true THEN GOTO langkah xxx) (berlian), yang GOTO tanpa syarat (persegi panjang), operator penugasan berbagai (persegi panjang), dan
HALT (persegi
panjang). Nesting ini struktur dalam tugas-blok menghasilkan diagram kompleks (lih Tausworthe 1977:100,114).
Dalam sistem komputer , algoritma pada dasarnya adalah sebuah contoh dari logika ditulis dalam perangkat lunak oleh pengembang perangkat lunak menjadi efektif untuk komputer dimaksudkan "target" (s), dalam rangka untuk mesin target untuk menghasilkan output dari input yang diberikan (mungkin nol).
5.3.4.3           Pengalamatan dan Routing IP
Mungkin aspek yang paling kompleks dari IP pengalamatan IP dan routing yang . Mengatasi mengacu pada bagaimana akhir host menjadi alamat IP yang ditetapkan dan bagaimana subnetwork dari alamat host IP dibagi dan dikelompokkan bersama. IP routing dilakukan oleh semua host, tetapi yang paling penting oleh router internetwork, yang biasanya menggunakan salah satu protokol gateway interior (iGPS) atau protokol gateway eksternal (EGPs) untuk membantu membuat keputusan datagram IP forwarding di jaringan yang terhubung IP. IP routing juga umum dalam jaringan lokal. Sebagai contoh, Ethernet switch dijual hari ini multicast dukungan IP. Switch ini terutama menggunakan alamat IP tetapi juga mendukung alamat MAC untuk kompatibilitas dengan yang lebih tua 2 lapisan switch Ethernet.

5.3.4.4           IPSec Ikhtisar
Seperti namanya, IPSec menyediakan keamanan untuk datagram IP. Berdasarkan asumsi bahwa jaringan yang paling tidak aman, sehingga membutuhkan komponen tambahan untuk melindungi data saat ia berpindah melalui kawat, IPSec menyediakan otentikasi sumber, memeriksa integritas, dan kerahasiaan konten.
Data Mengamankan bukan hal baru, ada banyak cara untuk memberikan keamanan itu. Beberapa aplikasi menyediakan layanan keamanan pada layer aplikasi termasuk Secure Socket Layer (SSL) atau Transport Layer Security (TLS). Dalam kasus ini protokol, aplikasi membuat panggilan ke penyedia keamanan yang mendasari untuk menyediakan layanan ini. Meskipun sebagian besar rincian pelaksanaan dapat diabstraksikan (misalnya, dalam Windows 2000, Support Antarmuka Keamanan Provider, atau SSPI, menyediakan antarmuka umum untuk aplikasi untuk mengakses komponen keamanan yang mendasari) aplikasi harus minimal menjadi "keamanan sadar. " IPSec menghilangkan persyaratan ini dengan memindahkan keamanan ke lapisan jaringan. Hal ini memungkinkan aplikasi untuk tetap independen dari infrastruktur keamanan yang mendasarinya. IP datagrams dilindungi terlepas dari aplikasi yang awalnya dihasilkan lalu lintas. Dengan kata lain, aplikasi tidak IPSec-sadar. Aturan keamanan yang didefinisikan oleh administrator terlepas dari menjalankan aplikasi; IPSec adalah transparan untuk aplikasi. Implikasi dari ini adalah luar biasa-IPSec menyediakan kemampuan untuk mengotentikasi, aman, dan opsional mengenkripsi data bepergian atas setiap jaringan IP, termasuk Internet. IPSec menyediakan end-to-end keamanan antara komputer dan jaringan.
5.3.4.5           Bagaimana IPSec Bekerja
IPSec menyediakan keamanan datagram IP. Ini adalah ujung ke ujung, menyiratkan bahwa hanya pengirim dan penerima harus menyadari rincian tentang keamanan. Devices di antara kedua pihak tidak perlu khawatir tentang enkripsi, kunci rahasia, dan seterusnya, dalam rangka untuk meneruskan data bersama. Hal ini penting untuk pelanggan seperti Bank Dunia karena dua alasan. Pertama, kawat di mana data tersebut mungkin tidak aman bepergian. Ini berarti bahwa dalam kebanyakan kasus, infrastruktur jaringan yang mendasarinya tidak perlu dimodifikasi. Kedua, implementasi relatif sederhana. Hanya host yang perlu berkomunikasi perlu memahami IPSec. Perantara perangkat seperti router tidak perlu IPSec-sadar. Untuk pelanggan ini berarti bahwa tingkat keamanan yang tinggi dapat dilaksanakan tanpa biaya yang besar atau perubahan signifikan terhadap infrastruktur jaringan mereka. Namun demikian, penting untuk dicatat bahwa firewall dan perangkat lain yang memblokir jenis lalu lintas tertentu memerlukan pertimbangan khusus dan akan dibahas kemudian. Windows 2000 pelaksanaan IPSec didasarkan pada standar industri yang ditetapkan oleh kelompok kerja IETF IPSec. IPSec bekerja dengan mengidentifikasi lalu lintas yang perlu diamankan dan kemudian menerapkan tingkat keamanan yang ditetapkan. Jadi, misalnya, Bank dapat mengidentifikasi lalu lintas yang memenuhi kriteria tertentu seperti alamat sumber IP atau nama host, dan memilih tingkat yang sesuai keamanan berdasarkan identifikasi itu.
Menggunakan IPSec, data dapat diamankan antara host tertentu, router jaringan, atau firewall atau antara host dan router atau firewall. Menggunakan industri otentikasi standar dan algoritma enkripsi, IPSec memanfaatkan teknologi yang sudah ada dan memberikan pendekatan yang komprehensif untuk menjaga lalu lintas jaringan. Perlindungan datagram IP disediakan oleh dua protokol, Authentication Header (AH) dan Encapsulating Security Payload (ESP). AH digunakan untuk menjamin integritas data, memberikan perlindungan antireplay, dan memastikan otentikasi host. ESP menyediakan fungsionalitas mirip dengan AH, namun, ESP juga mencakup kerahasiaan data opsional. Penting untuk dicatat bahwa baik AH atau ESP menyediakan algoritma kriptografi sebenarnya untuk mengimplementasikan fitur-fitur diatas, namun kriptografi yang ada bukannya AH dan ESP dan memanfaatkan algoritma otentikasi.
Ada empat komponen utama untuk IPSec pada Windows 2000:
·                IPSec protokol
·                Keamanan asosiasi
·                Kebijakan keamanan
·                IPSec sopir
Protokol IPSec
Dua protokol, AH dan ESP, bekerja untuk menyediakan otentikasi, integritas, dan kerahasiaan. Protokol ini dapat dikonfigurasi untuk melindungi seluruh IP payload, atau hanya lapisan atas protokol dari payload IP. Menggunakan protokol secara terpisah, atau dalam kombinasi, Bank dapat mencapai otentikasi sederhana dan memeriksa integritas, serta enkripsi data saat dikirimkan melalui kawat.
Otentikasi header AH, seperti yang didefinisikan oleh RFC 2402, memberikan integritas data yang ditransmisikan melalui hashing mengetik. Algoritma hashing Saat ini didukung termasuk HMAC MD5 dan HMAC SHA. (HMAC atau Kode Otentikasi Pesan hash adalah sebuah algoritma kunci rahasia yang menciptakan tanda tangan digital dari data yang dapat diverifikasi oleh penerima hasil MD5 dalam nilai 128-bit,. Sementara SHA menghasilkan nilai 160-bit. SHA biasanya lebih aman, tapi tidak secepat MD5.) Perhatikan bahwa hash AH header IP dan muatan, tetapi tidak termasuk bagian dari datagram yang diduga berubah, seperti hop. Karena kedua header dan payload yang terenkripsi, AH dapat memverifikasi informasi pengalamatan dan menjamin bahwa data IP belum dirusak.
Layanan Antireplay juga merupakan fungsi dari AH. Meningkatkan serial nomor urut dan geser menerima jendela memberikan jaminan antireplay untuk kedua AH dan ESP. AH tidak memberikan kerahasiaan dalam bentuk enkripsi data-yang merupakan fungsi dari ESP. ESP adalah sebuah protokol Internet yang didefinisikan dalam RFC 2406. Digunakan sendiri atau dalam kombinasi dengan AH, ESP menyediakan integritas data dan enkripsi. Algoritma enkripsi yang didukung oleh ESP termasuk DES-CBC, 56-bit DES, 3DES dan. ESP juga menyediakan memeriksa integritas menggunakan HMAC MD5 dan HMAC SHA. Layanan Antireplay diimplementasikan dalam cara yang sama seperti AH.

Keamanan asosiasi
Sebelum dua host dapat berkomunikasi menggunakan IPSec, mereka harus terlebih dahulu menetapkan pedoman untuk itu sesi (misalnya, metode otentikasi dan algoritma enkripsi). Pertimbangkan asosiasi keamanan (SA) sebagai perjanjian antara kedua belah pihak mengenai pengaturan keamanan tertentu untuk mempekerjakan. Misalnya, jika Host A ingin berkomunikasi dengan Host B, mereka harus setuju pada pengaturan keamanan tertentu. Apakah mereka menggunakan AH atau ESP untuk integritas, Kerberos atau sertifikat untuk otentikasi, dan sebagainya. Dasar keamanan IP adalah untuk mengidentifikasi jenis lalu lintas tertentu dan untuk memastikan bahwa lalu lintas aman. Bank kami ingin untuk mengamankan lalu lintas antara kantor cabang dan jaringan perusahaan melalui koneksi VPN. Aman dalam konteks IPSec bisa berarti otentik, dimodifikasi, dan mungkin dienkripsi. Menentukan apa yang lalu lintas untuk mengamankan dan tingkat keamanan untuk diterapkan didefinisikan dalam kebijakan keamanan.
Virtual Private Network (VPN) adalah sebuah teknologi komunikasi yang memungkinkan untuk dapat terkoneksi ke jaringan publik dan menggunakannya untuk dapat bergabung dengan jaringan lokal. Dengan cara tersebut maka akan didapatkan hak dan pengaturan yang sama seperti halnya berada di dalam kantor atau LAN itu sendiri, walaupun sebenarnya menggunakan jaringan milik publik. VPN dapat terjadi antara dua end-system atau dua komputer atau antara dua atau lebih jaringan yang berbeda. VPN dapat dibentuk dengan menggunakan teknologi tunneling dan enkripsi. Koneksi VPN juga dapat terjadi pada semua layer pada protocol OSI, sehingga komunikasi menggunakan VPN dapat digunakan untuk berbagai keperluan. Dengan demikian, VPN juga dapat dikategorikan sebagai infrastruktur WAN alterbatif untuk mendapatkan koneksi point-to-point pribadi antara pengirim dan penerima. Dan dapat dilakukan dengan menggunakan media apa saja, tanpa perlu media leased line atau frame relay.








Gambar 5.3.4.5 Ilustrasi VPN