Sabtu, 24 September 2011

Computer Security - pembahasan singkat (1)

Dalam pembahasan singkat ini akan dibahas seperti diagram berikut,
 


Secara umum kebutuhan untuk mengamankan sebuah pesan yang akan dikirimkan adalah untuk keperluan sebagai berikut :
  • Privacy : memproteksi bahwa tidak ada orang lain yang mengetahui pesan ini selain pengirim dan penerima pesan.
  • Authentication : menjamin bahwa pengirim adalah orang yang benar (sah), bukan penipu.
  • Integrity : menjamin bahwa pesan tidak terjadi kerusakan/modifikasi selama dan dalam perjalanan pengirimannya.
  • Non-repudiation : penerima mengetahui dengan pasti bahwa pengirim yang benar (sah) telah melakukan pengiriman pesan tersebut atau pengirim tidak dapat menyangkal bahwa ia telah melakukan pengiriman pesan.


Kriptografi (Cryptography)
Beberapa hal/jargon yang berkaitan dengan kriptografi adalah sebagai berikut:
  • Kriptografi adalah “menulis rahasia”.
  • Pesan asli disebut plaintext.
  • Pesan yang dienkrip disebut ciphertext.
  • Algoritma-algoritma enkripsi dan dekripsi disebut ciphers.
  • Sejumlah kode yang dihasilkan oleh sebuah cipher adalah key (kunci).
Adapaun tipe dari kriptografi adalah :
·         Kriptografi kunci simetris (symmetric key cryptography).
·         Kriptografi kunci publik (public key cryptography).

Kriptografi Kunci Simteris
Ilustrasi kriptografi kunci simetris dapat digambarkan seperti gambar dibawah ini dengan penjelasan sebagai berikut:
1.       Pesan dari si pengirim (Alice) akan dienkripsi menggunakan sebuah kunci simetris.
2.       Pesan yang diterima (Bob) akan didekripsi menggunakan kunci simetris yang sama, dimana sebelumnya kunci tersebut di distribusi diantara mereka.
Ciri dari kriptografi kunci simetris adalah :
  • Menggunakan kunci yang sama untuk enkripsi di pengirim dan untuk dekripsi di penerima.
  • Algoritma untuk dekripsi adalah kebalikan dari algoritma yang digunakan untuk enkripsi.
Algoritma-algoritma yang umum dipakai pada kriptografi kunci simetris ini adalah
  • DES (Data Encryption Standard)
  • Triple DES, pengembangan lebih lanjut dari DES dengan melakukan proses 3 kali DES untuk menghasilkan chipertext.
Keuntungan menggunakan kriptografi kunci simetris ini adalah
  • Algoritma efisien, artinya proses untuk mengenkripsi dan mendekripsi pesan membutuhkan waktu yang tidak lama.
  • Sederhana.
Adapun kerugian menggunakan kriptografi kunci simetris adalah
  • Setiap pasang (pengirim-penerima) harus mempunyai kunci yang unik, berarti jika dalam sebuah komunitas N orang maka untuk mengamankan pesan yang melintas diantara mereka memerlukan N(N-1)/2 kunci.
  • Mendistribusi  kunci-kunci antara 2 pihak agar tidak bocor diantara mereka akan sulit apalagi dengan meningkatnya jumlah orang dalam satu komunitas. Disamping itu setiap orang harus menjaga banyak kunci yang berbeda untuk pihak/tujuan yang berbeda.

Kriptografi Kunci Publik
Ilustrasi kriptografi kunci publik dapat digambarkan seperti gambar dibawah ini dengan penjelasan sebagai berikut:
  1. Pesan dari Alice yang akan dikirimkan ke Bob dienkripsi menggunakan kunci publik (public key) milik Bob, dimana sebelumnya kunci publik Bob di publikasikan sehingga Alice dapat memperoleh kunci publik Bob.
  2. Pesan Alice yang diterima oleh Bob akan didekripsi menggunakan kunci pribadi (private key) milik Bob sendiri. Dalam hal ini kunci publik dan kunci pribadi Bob memiliki kaitan.
Ciri dari kriptografi kunci publik adalah :
  • Terdapat dua kunci: satu kunci pribadi (private key) dan satu kunci publik (public key) yang secara algoritma berkaitan.
  • Kunci pribadi disimpan oleh penerima dan kunci publik di umumkan ke publik.
  • Pengirim akan mengunci pesan menggunakan kunci publik dari si penerima. Dan penerima akan membuka pesan yang diterima menggunakan kunci pribadi nya.
Algoritma-algoritma yang umum dipakai pada kriptografi kunci publik ini adalah
  • RSA (Rivest, Shamir and Adleman).
Keuntungan menggunakan kriptografi kunci publik ini adalah
  • Keperluan untuk mendistribusi kunci hanya kunci publik saja. Kunci pribadi dapat tetap disimpan oleh masing-masing orang.
  • Jumlah kunci yang lebih sedikit, misal untuk 1 juta orang maka hanya perlu 2 juta kunci saja untuk kunci pribadi dan kunci publik (bandingkan dengan kriptografi kunci simetris yang akan memerlukan 500 milyar kunci).
Adapun kerugian menggunakan kriptografi kunci publik adalah
  • Algoritma-algoritmanya sangat kompleks.
  • Hubungan antara kunci publik dan pemiliknya harus diverifikasi (kebutuhan untuk sertifikat).

Tandatangan Digital (Digital Signature)
Fitur dari tandatangan digital adalah
  • Mengakomodasi kebutuhan untuk integrity, authentication dan non-repudiation.
  • Kunci pribadi digunakan untuk menandatangani sebuah pesan (atau hash).
  • Kunci publik digunakan untuk memverifikasi tandatangan tersebut.
Fungsi Hash (Hash Functions)
  • Menandatangani seluruh pesan adalah tidak efisien.
  • Fungsi Hash digunakan untuk menciptakan sebuah digest unik dari pesan.
  • Algoritma hashing yang populer adalah SHA-1 (secure hash algorithm) dan MD5 (message digest).
Ilustrasi dari tandatangan digital pada sisi pengirim ini adalah seperti gambar berikut dengan penjelasan sebagai berikut:
  1. Pesan dari Alice (pengirim) akan dilakukan fungsi Hash sehingga menghasilkan sebuah kode digest untuk pesannya.
  2. Digest ini akan dienkripsi menggunakan kunci pribadi Alice sehingga menghasilkan digest yang telah ditandatangan oleh Alice (Signed Digest).
  3. Pesan bersama-sama dengan Signed Digest Alice akan dikirimkan ke Bob (penerima).
Ilustrasi dari tandatangan digital pada sisi penerima ini adalah seperti gambar berikut dengan penjelasan sebagai berikut:
4.       Signed Digest dari Alice yang diterima oleh Bob akan didekripsi menggunakan kunci publik Alice sehingga menghasilkan Digest Alice.
5.       Sedangkan pesan dari Alice yang diterima oleh Bob akan dilakukan fungsi Hash yang sama sehingga menghasilkan Digest juga.
6.       Digest yang dihasilkan dari Signed Digest Alice akan dibandingkan dengan Digest yang dihasilkan dari pesan Alice apakah sama atau tidak sama.
Dengan proses ini maka akan diketahui aspek:
  • Integrity : yaitu jika Digest yang dihasilkan dari Signed Digest Alice dibandingkan dengan Digest yang dihasilkan dari pesan Alice adalah sama, maka pada pesan Alice tersebut berarti tidak mengalami perubahan/modifikasi selama perjalanan pengiriman pesan tersebut.
  • Authentication : yaitu jika Digest yang dihasilkan dari Signed Digest Alice dibandingkan dengan Digest yang dihasilkan dari pesan Alice adalah sama, maka benar bahwa yang mengirima pesan tersebut adalah Alice karena Digest yang dihasilkan dari Signed Digest Alice dienkripsi dan didekripsi menggunakan kunci pribadi dan kunci publik Alice.
  • Non-repudiation : yaitu jika Digest yang dihasilkan dari Signed Digest Alice dibandingkan dengan Digest yang dihasilkan dari pesan Alice adalah sama dan diterima oleh Bob (pengirim) berarti benar bahwa Alice telah melakukan pengiriman pesan tersebut karena untuk menghasilkan digest Alice maka Alice harus melakukan fungsi Hash.

Pengelolaan Kunci (Key Management)
Dalam sistem kunci simetris terdapat beberapa hal berikut:
  • Kita perlu sebuah mekanisme untuk mendistribusi kunci diantara pengirim dan penerima secara aman (kunci tidak dicuri (intercept) saat perjalanan distribusinya), dan juga keinginan mengurangi jumlah dari kunci-kunci tersebut.
  • Dalam beberapa kasus, sistem kunci publik juga menggunakan kunci simetris untuk mengenkripsi sebuah pesan dan mengenkripsi kunci menggunakan kunci publik.
  • Solusi : kunci-kunci sesi (session keys). Kunci-kunci simetris diciptakan untuk sebuah sesi dan dihancurkan ketika sesi tersebut telah berlalu.
  • Teknik-teknik untuk pengelolaan kunci adalah :
    • Metode Deffie Hellman.
    • Pusat distribusi kunci (Key distribution center) Needham-Schroeder protocol dan Otway-Rees protocol).
Dalam sistem kunci publik terdapat beberapa hal berikut:
  • Alice memerlukan untuk mengetahui apakah kunci publik milik Bob adalah asli?
  • Solusi untuk diatas : Certificates (Sertifikat).
  • Bob menuju ke sebuah Certification Authority (CA), misalnya VeriSign, dimana mengikat kunci publik milik Bob ke sebuah entitas yang disebut sertifikat (certificate).
  • Sertifikat ditandatangani oleh CA, yang memiliki kunci publik yang terkenal, dan sudah pasti tidak dapat dipalsukan.
  • Alice dapat memverifikasi tandatangan CA dan karenanya menjadi yakin tentang kunci publik Bob.

Sertifikat (Certificates)
  • Sertifikat dijelaskan dalam protokol X.509.
  • X.509 menggunakan ASN.1 (Abstract Syntax Notation 1) untuk mendefinisikan field-field.
  • Field-field X.509 adalah
Rantai Kepercayaan (Chain of Trust)
  • Perjalanan query pada level-leval CA mirip dengan query pada DNS.
  • Pada setiap level manapun, CA dapat mensertifikasi kinerja dari Cas pada level-level dibawahnya, misal CA level-1 dan mensertifikasi Cas level-2
  • Aturan baku : setiap oarang mempercayai Root CA.

Keamanan pada Level IP
IPSec – IP Security
Mengamankan paket IP dengan menambahkan header tambahan.
Kemudian melakukan pemilihan metode-motode enkripsi, autentikasi dan hashing di sisi user.
Hal ini memerlukan sebuah logika koneksi antara dua host, dapat diperoleh menggunakan Security Association (SA).
Sebuah SA didefinisikan dengan :
  • Sebuah 32 bit Security Parameter Index (SPI).
  • Jenis protokol : Authentication Header (AH) atau Encapsulating Security Payload (ESP).
  • Alamat IP sumber (source IP address).

Keamanan pada Layer Transport
Secure Socket Layer (SSL)
Dikembangkan pertama kali oleh Netscape.
Digunakan untuk membangun koneksi yang aman antara dua pihak (di Internet).
Protokolnya mirip dengan TLS (p.t.o).
OpenSSL (www.openssl.org) adalah organisasi nirlaba yang menyediakan pustaka-pustaka bagaimana mengimplementasi SSL dan TLS.
Protokol lapisan aplikasi keamanan beberapa berjalan di atas SSL. Misalnya Secure HTTP (https).

Transport Layer Security (TLS)
Didisain oleh IETF (Internet Engineering Task Force); diturunkan dari SSL.
Terletak diatas lapisan transport.
Menggunakan dua protokol :
  • Handshake protokol
  • Data exchange protokol
o   Menggunakan kunci rahasia (secret key) untuk enkripsi data.
o   Sebelumnya kunci rahasia telah di distribusi antara dua pihak sebelum handshake.
Adapun proses dari TLS ini dapat digambarkan dengan urutan gambar sebagai berikut:

akan dilanjutkan pada bagian 2 mengenai Keamanan pada Layer Aplikasi ....




Referensi
·         PERSISTENT, Venkatesh Iyer, 2005
·         Overview of cryptography:
·         Implementation of SSL and TSL :
·         S/MIME Internet task force :
·         Relationship between S/MIME and PGP/MIME :


Tidak ada komentar:

Posting Komentar