Senin, 25 Oktober 2010

Teknik Pengamanan Program dan Sistem Operasi

PENDAHULUAN
Sistem keamanan komputer merupakan sebuah upaya yang dilakukan untuk mengamankan kinerja,fungsi atau proses komputer. sistem keamanan komputer juga berguna untuk menjaga komputer dari para hacker (penjahat dunia maya). Tetapi layaknya seperti gembok kunci dalam rumah yang menjaga rumah dari parah maling untuk masuk. Tetapi sebaik apapun sistem keamanan rumah anda pasti ada cara untuk masuk kedalam rumah anda. Dan mengapa dibutuhkannya sistem keamanan komputer karena meningkatnya perkembangan teknologi dalam jaringan.
Fungsi sistem keamanan komputer adalah untuk menjaga sumer daya sistem agar tidak digunakan,modfikasi,interupsi, dan diganggu oleh orang lain. Keamanan bisa diindentifikasikan dalam masalah teknis,manajerial,legalitas, dan politis.
Keamanan komputer adalah suatu cabang teknologi yang dikenal dengan nama keamanan informasi yang diterapkan pada komputer. Sasaran keamanan komputer antara lain adalah sebagai perlindungan informasi terhadap pencurian atau korupsi, atau pemeliharaan ketersediaan, seperti dijabarkan dalam kebijakan keamanan.
Keamanan komputer memberikan persyaratan terhadap komputer untuk membentuk pembatasan apa yang tidak boleh dilakukan oleh komputer. Karena pembatasan terancang akan menyulitkan komputer bekerja secara maksimal. Tetapi dengan persyaratan yang menyulitkan sistem akan terciptanya suatu strategi teknis yang menjaga kinerja sistem komputer.
Pendekatan yang umum dilakukan untuk meningkatkan keamanan komputer antara lain yaitu:
1. Membatasi akses fisik terhadap komputer,
2. Menerapkan mekanisme pada perangkat keras dan
3. Sistem operasi untuk keamanan komputer, serta
4. Membuat strategi pemrograman untuk menghasilkan program komputer yang dapat diandalkan.
KEAMANAN SISTEM
Ada tiga macam keamanan sistem, yaitu :
1. Keamanan eksternal / external security
Berkaitan dengan pengamanan fasilitas komputer dari penyusup dan bencana seperti kebakaran /kebanjiran.
2. Keamanan interface pemakai / user interface security
Berkaitan dengan indentifikasi pemakai sebelum pemakai diijinkan mengakses program dan data yang disimpan
3. Keamanan internal / internal security
Berkaitan dengan pengamanan beragam kendali yang dibangun pada perangkat keras dan sistem operasi yang menjamin operasi yang handal dan tak terkorupsi untuk menjaga integritas program dan data.
Dari macam keamanan sistem ada hal yang perlu untuk diperhatikan dalam menjaga keamanan komputer. Di bawah ini adalah dua masalah penting yang harus diperhatikan dalam keamanan komputer :
1. Kehilangan data / data loss
Masalah data loss bisa disebabkan oleh :
a. Bencana
b. Kesalahan perangkat lunak dan perangkat keras
c. Kesalahan manusia / human error
2. Penyusup / intruder
Penyusup bisa dikategorikan kedalam dua jenis :
a. Penyusup pasif yaitu membaca data yang tidak terotorisasi ( tidak berhak mengakses)
b. Penyusup aktif yaitu mengubah susunan sistem data yang tidak terotorisasi.
Selain itu ancaman lain terhadap sistem keamanan komputer bisa dikategorikan dalam empat macam :
1. Interupsi / interuption
Sumber daya sistem komputer dihancurkan menjadi tak berguna. Contohnya penghancuran harddisk atau pemotongan kabel. Ini merupakan ancaman terhadap ketersediaan.
2. Intersepsi / interception
Orang yang tak diotorisasi dapat masuk / mengakses ke sumber daya sistem. Contohnya menyalin file yang terotorisasi. Ini merupakan ancaman terhadap kerahasiaan.
3. Modifikasi / modification
Orang yang tak diotorisasi tidak hanya dapat mengakses tapi juga mengubah,merusak sumber daya. Contohnya mengubah isi pesan, atau mengacak program. Ini merupakan ancaman terhadap integritas
4. Fabrikasi / fabrication
Orang yang tak diotorisasi menyisipkan objek palsu ke dalam sistem. Contohnya memasukkan pesan palsu, menambah data palsu.
Dari kategori yang ada diatas dan jika dikaitkan dalam kehidupan sehari-hari pasti kita akan menemukan masalah dalam komputer. Dibawah ini merupakan nama-nama ancaman yang sering dilihat dalam sistem keamanan komputer.
• Adware
• Backdoor Trojan
• Bluejacking
• Bluesnarfing
• Boot Sector Viruses
• Browser Hijackers
• Chain Letters
• Cookies
• Denial of Service Attack
• Dialers
• Document Viruses
• Email Viruses
• Internet Worms
• Mobile Phone Viruses
JENIS ANCAMAN KOMPUTER
Dalam hal ini saya akan menguraikan sedikit saja tentang ancaman-ancaman yang sering dilihat :
1. Virus
Prinsip Virus adalah suatu program yang dapat berkembang dengan menggandakan dirinya. Melalui mekanisme penggandaan diri ini, mekanisme virus digunakan untuk berbagai jenis ancaman keamanan sistem komputer, seperti: menampilkan suatu pesan tertentu, merusak file system, mencuri data, hingga mengendalikan komputer pengguna.Virus dapat menggandakan dirinya melalui email, file-file dokumen dan file program aplikasi.
2. Email Virus
Tipe virus yang disisipkan di attachment email. Jika attachment dibuka maka akan menginfeksi komputer. Program virus tersebut akan mendata daftar alamat akun email pengguna. Secara otomatis virus akan mencopy dirinya dan mengirim email ke daftar akun email. Umumnya akan mengirim mass email, memenuhi trafik jaringan, membuat komputer menjadi lambat dan membuat down server email.
3. Internet Worms
Worm adalah sejenis program yang bisa mengcopy dan mengirim dirinya via jalur komunikasi jaringan Internet. Umumnya menyerang melalu celah/lubang keamanan OS komputer. Worm mampu mengirim paket data secara terus menerus ke situs tertentu via jalur koneksi LAN/Internet. Efeknya membuat trafik jaringan penuh, memperlambat koneksi dan membuat lambat/hang komputer pengguna. Worm bisa menyebar melalui email atau file dokumen tertentu.
4. Spam
Spam adalah sejenis komersial email yang menjadi sampah mail (junkmail). Para spammer dapat mengirim jutaan email via internet untuk kepentingan promosi produk/info tertentu. Efeknya sangat mengganggu kenyamanan email pengguna dan berpotensi juga membawa virus/worm/trojan.
5. Trojan Horse
Trojan adalah suatu program tersembunyi dalam suatu aplikasi tertentu. Umumnya disembuyikan pada aplikasi tertentu seperti: games software, update program, dsb. Jika aktif maka program tersebut umumnya akan mengirim paket data via jalur internet ke server/situs tertentu, atau mencuri data komputer Anda dan mengirimkannya ke situs tertentu. Efeknya akan memenuhi jalur komunikasi, memperlambat koneksi, membuat komputer hang, dan berpotensi menjadikan komputer Anda sebagai sumber Denidal Of Services Attack.
6. Spyware
Spyware adalah suatu program dengan tujuan menyusupi iklan tertentu (adware) atau mengambil informasi penting di komputer pengguna. Spyware berpotensi menggangu kenyamanan pengguna dan mencuri data-data tertentu di komputer pengguna untuk dikirim ke hacker. Efek spyware akan menkonsumsi memory komputer sehingga komputer menjadi lambat atau hang
7. Serangan Brute-force
Serangan brute-force adalah sebuah teknik serangan terhadap sebuah sistem keamanan komputer yang menggunakan percobaan terhadap semua kunci yang mungkin. Pendekatan ini pada awalnya merujuk pada sebuah program komputer yang mengandalkan kekuatan pemrosesan komputer dibandingkan kecerdasan manusia. Sebagai contoh, untuk menyelesaikan sebuah persamaan kuadrat seperti x²+7x-44=0, di mana x adalah sebuah integer, dengan menggunakan teknik serangan brute-force, penggunanya hanya dituntut untuk membuat program yang mencoba semua nilai integer yang mungkin untuk persamaan tersebut hingga nilai x sebagai jawabannya muncul. Istilah brute force sendiri dipopulerkan oleh Kenneth Thompson, dengan mottonya: “When in doubt, use brute-force” (jika ragu, gunakan brute-force). Teknik yang paling banyak digunakan untuk memecahkan password, kunci, kode atau kombinasi. Cara kerja metode ini sangat sederhana yaitu mencoba semua kombinasi yang mungkin. Sebuah password dapat dibongkar dengan menggunakan program yang disebut sebagai password cracker. Program password cracker adalah program yang mencoba membuka sebuah password yang telah terenkripsi dengan menggunakan sebuah algoritma tertentu dengan cara mencoba semua kemungkinan. Teknik ini sangatlah sederhana, tapi efektivitasnya luar biasa, dan tidak ada satu pun sistem yang aman dari serangan ini, meski teknik ini memakan waktu yang sangat lama, khususnya untuk password yang rumit.
TIPS KEAMANAN SISTEM
1. Gunakan Software Anti Virus
2. Blok file yang sering mengandung virus
3. Blok file yang menggunakan lebih dari 1 file extension
4. Gunakan firewall untuk koneksi ke Internet
5. Autoupdate dengan software patch
6. Backup data secara reguler
7. Hindari booting dari floopy disk USB disk
8. Terapkan kebijakan Sistem Keamanan Komputer Pengguna
a. Jangan download executables file atau dokumen secara langsung dari Internet apabila anda ragu-ragu asal sumbernya.
b. Jangan membuka semua jenis file yang mencurigakan dari Internet.
c. Jangan install game atau screen saver yang bukan asli dari OS.
d. Kirim file mencurigakan via emai lke developer Antivirus untuk dicek.
e. Simpan file dokumen dalam format RTF (Rich Text Format) bukan *doc. (Apabila anda merasa ada masalah pada program Office)
f. Selektif dalam mendownload attachment file dalam email.

Source :
http://id.wikipedia.org/wiki/Serangan_brute-force
http://74.125.153.132/search?q=cache:OxOqxfEaP_YJ:dataku.comuv.com/Ancaman%2520Sistem%2520Keamanan%2520Komputer.ppt+sistem+keamanan+komputer&cd=1&hl=id&ct=clnk&gl=id
http://a60377.wordpress.com/2009/01/22/sistem-keamanan-komputer/

Steganografi

Steganografi adalah seni dan ilmu menulis atau menyembunyikan pesankriptografi menyamarkan arti dari suatu pesan, tapi tidak menyembunyikan bahwa ada suatu pesan. Kata steganografi (steganografi) berasal dari bahasa Yunani steganos, yang artinya “tersembunyi atau terselubung”, dan graphein, “menulis”. tersembunyi dengan suatu cara sehingga selain si pengirim dan si penerima, tidak ada seorangpun yang mengetahui atau menyadari bahwa ada suatu pesan rahasia. Sebaliknya,
Kini, istilah steganografi termasuk penyembunyian data digital dalam file-file komputer. Contohnya, si pengirim mulai dengan file gambar biasa, lalu mengatur warna setiap pixel ke-100 untuk menyesuaikan suatu huruf dalam alphabet (perubahannya begitu halus sehingga tidak ada seorangpun yang menyadarinya jika ia tidak benar-benar memperhatikannya).
Pada umumnya, pesan steganografi muncul dengan rupa lain seperti gambar, artikel, daftar belanjaan, atau pesan-pesan lainnya. Pesan yang tertulis ini merupakan tulisan yang menyelubungi atau menutupi. Contohnya, suatu pesan bisa disembunyikan dengan menggunakan tinta yang tidak terlihat diantara garis-garis yang kelihatan.
Teknik steganografi meliputi banyak sekali metode komunikasi untuk menyembunyikan pesan rahasia (teks atau gambar) di dalam file-file lain yang mengandung teks, image, bahkan audio tanpa menunjukkan ciri-ciri perubahan yang nyata atau terlihat dalam kualitas dan struktur dari file semula. Metode ini termasuk tinta yang tidak tampak, microdots, pengaturan kata, tanda tangan digital, jalur tersembunyi dan komunikasi spektrum lebar. Tujuan dari steganografi adalah merahasiakan atau menyembunyikan keberadaan dari sebuah pesan tersembunyi atau sebuah informasi. Dalam prakteknya kebanyakan diselesaikan dengan membuat perubahan tipis terhadap data digital lain yang isinya tidak akan menarik perhatian dari penyerang potensial, sebagai contoh sebuah gambar yang terlihat tidak berbahaya. Perubahan ini bergantung pada kunci (sama pada kriptografi) dan pesan untuk disembunyikan. Orang yang menerima gambar kemudian dapat menyimpulkan informasi terselubung dengan cara mengganti kunci yang benar ke dalam algoritma yang digunakan.
Pada metode steganografi cara ini sangat berguna jika digunakan pada cara steganografi komputer karena banyak format file digital yang dapat dijadikan media untuk menyembunyikan pesan. Format yang biasa digunakan diantaranya:
  • Format image : bitmap (bmp), gif, pcx, jpeg, dll.
  • Format audio : wav, voc, mp3, dll.
  • Format lain : teks file, html, pdf, dll.
Kelebihan steganografi daripada kriptografi adalah pesan-pesannya tidak menarik perhatian orang lain. Pesan-pesan berkode dalam kriptografi yang tidak disembunyikan, walaupun tidak dapat dipecahkan, akan menimbulkan kecurigaan. Seringkali, steganografi dan kriptografi digunakan secara bersamaan untuk menjamin keamanan pesan rahasianya.
Sebuah pesan steganografi (plaintext), biasanya pertama-tama dienkripsikan dengan beberapa arti tradisional, yang menghasilkan ciphertext. Kemudian, covertext dimodifikasi dalam beberapa cara sehingga berisi ciphertext, yang menghasilkan stegotext. Contohnya, ukuran huruf, ukuran spasi, jenis huruf, atau karakteristik covertext lainnya dapat dimanipulasi untuk membawa pesan tersembunyi; hanya penerima (yang harus mengetahui teknik yang digunakan) dapat membuka pesan dan mendekripsikannya.

Metode Steganografi

Kebanyakan algoritma steganografi menggunakan sebuah kombinasi dari bidang jenis teknik untuk melakukan sebuah tugas dalam penyelubungan pesan rahasia dalam sebuah selubung file. Sebuah program steganografi dibutuhkan untuk melakukan hal-hal berikut (baik implisit melalui suatu perkiraan maupun eksplisit melalui sebuah perhitungan), menemukan kelebihan bits dalam selubung file yang dapat digunakan untuk menyelubungi pesan rahasia didalamnya, memilih beberapa diantaranya untuk digunakan dalam menyelubungi data dan penyelubungan data dalam bits dipilih sebelumnya. Ada empat jenis metode Steganografi, yaitu :

Least Significant Bit Insertion (LSB)

Metoda yang digunakan untuk menyembunyikan pesan pada media digital tersebut berbeda-beda. Contohnya pada file image pesan dapat disembunyikan dengan menggunakan cara menyisipkannya pada bit rendah atau bit yang paling kanan (LSB) pada data pixel yang menyusun file tersebut. Seperti kita ketahui untuk file bitmap 24 bit maka setiap pixel (titik) pada gambar tersebut terdiri dari susunan tiga warna merah, hijau dan biru (RGB) yang masing-masing disusun oleh bilangan 8 bit (byte) dari 0 sampai 255 atau dengan format biner 00000000 sampai 11111111. Dengan demikian pada setiap pixel file bitmap 24 bit kita dapat menyisipkan 3 bit data. Kekurangan dari LSB Invertion : Dapat diambil kesimpulan dari contoh 8 bit pixel, menggunakan LSB Insertion dapat secara drastis merubah unsur pokok warna dari pixel. Ini dapat menunjukkan perbedaan yang nyata dari cover image menjadi stego image, sehingga tanda tersebut menunjukkan keadaan dari steganografi. Variasi warna kurang jelas dengan 24 bit image, bagaimanapun file tersebut sangatlah besar. Antara 8 bit dan 24 bit image mudah diserang dalam pemrosesan image, seperti cropping (kegagalan) dan compression (pemampatan). Keuntungan dari LSB Insertion : Keuntungan yang paling besar dari algoritma LSB ini adalah cepat dan mudah. Dan juga algoritma tersebut memiliki software steganografi yang mendukung dengan bekerja diantara unsur pokok warna LSB melalui manipulasi pallete (lukisan).

Algorithms and Transformation

Algoritma compression adalah metode steganografi dengan menyembunyikan data dalam fungsi matematika. Dua fungsi tersebut adalah Discrete Cosine Transformation (DCT) dan Wavelet Transformation. Fungsi DCT dan Wavelet yaitu mentransformasi data dari satu tempat (domain) ke tempat (domain) yang lain. Fungsi DCT yaitu mentransformasi data dari tempat spatial (spatial domain) ke tempat frekuensi (frequency domain).

Redundant Pattern Encoding

Redundant Pattern Encoding adalah menggambar pesan kecil pada kebanyakan gambar. Keuntungan dari metode ini adalah dapat bertahan dari cropping (kegagalan), kerugiannya yaitu tidak dapat menggambar pesan yang lebih besar.

Spread Spectrum method

Spread Spectrum steganografi terpencar-pencar sebagai pesan yang diacak (encrypt) melalui gambar (tidak seperti dalam LSB). Untuk membaca suatu pesan, penerima memerlukan algoritma yaitu crypto-key dan stego-key. Metode ini juga masih mudah diserang yaitu penghancuran atau pengrusakan dari kompresi dan proses image (gambar).

Steganalisis dan Stegosystem

Seperti Kriptografi dan Kriptanalisis, Steganalisis didefinisikan sebagai suatu seni dan ilmu dalam mendeteksi informasi tersembunyi. Sebagai tujuan dari steganografi adalah untuk merahasiakan keberadaan dari sebuah pesan rahasia, satu keberhasilan penyerangan pada sebuah sistem steganografi terdiri dari pendeteksian bahwa sebuah file yang diyakini berisikan data terselubung. Seperti dalam Kriptanalisis diasumsikan bahwa sistem steganografi telah diketahui oleh si penyerang dan maka dari itu keamanan dari sistem steganografi bergantung hanya pada fakta bahwa kunci rahasia tidak diketahui oleh si penyerang.
Stegosystem disini berisi tentang penyerangan-penyerangan yang dilakukan terhadap suatu sistem steganografi, sebuah perbedaan penting harus dibuat diantara penyerangan-penyerangan pasif dimana penyerang hanya dapat memotong data dan penyerangan-penyerangan aktif dimana penyerang juga dapat memanipulasi data. Pada gambar dibawah ini menunjukkan sebuah diagram untuk menjelaskan sistem stego. Lingkaran-lingkaran menunjukkan tempat-tempat penyerang yang berpotensi memiliki jalan masuk ke satu atau lebih dari tempat-tempat tersebut akibat penyerangan-penyerangan yang berbeda jenis, dan juga berfungsi untuk melakukan sebuah penyerangan aktif. Jika lingkaran tidak terisi, penyerang hanya dapat melakukan penyerangan pasif yaitu menghalangi memotong data.
Penyerangan-penyerangan berikut memungkinkan dalam model dari stegosistem ini :
  • Stego-Only-Attack (Penyerangan hanya Stego).Penyerang telah menghalangi stego data dan dapat menganalisisnya.
  • Stego-Attack (Penyerangan Stego). Pengirim telah menggunakan cover yang sama berulangkali untuk data terselubung. Penyerang memiliki file stego yang berasal dari cover file yang sama. Dalam setiap file-file stego tersebut, sebuah pesan berbeda disembunyikan.
  • Cover-Stego-Attack (Penyerangan selubung Stego). Penyerang telah menghalangi file stego dan mengetahui cover file mana yang digunakan untuk menghasilkan file stego ini. Ini menyediakan sebuah keuntungan melalui penyerangan stego-only untuk si penyerang.
  • Manipulating the stego data (Memanipulasi data stego).Penyerang memiliki kemampuan untuk memanipulasi data stego. Jika penyerang hanya ingin menentukan sebuah pesan disembunyikan dalam file-stego ini, biasanya ini tidak memberikan sebuah keuntungan tapi memiliki kemampuan dalam memanipulasi data stego yang berarti bahwa si penyerang mampu memindahkan pesan rahasia dalam data stego (jika ada).
  • Manipulating the cover data (Memanipulasi data terselubung). Penyerang dapat memanipulasi data terselubung dan menghalangi hasil data stego. Ini dapat membuat tugas dalam menentukan apakah data stego berisikan sebuah pesan rahasia lebih mudah bagi si penyerang.

Public Key

Kriptografi adalah ilmu/seni penyadian pesan ke dalam bentuk yang tidak dipahami oleh orang lain. Kriptografi kunci-publik menggunakan sepasang kunci, satu kunci untuk enkripsi dan satu kunci untuk dekripsi [MUN06]. Kunci untuk enkripsi bersifat publik (tidak rahasia) sehingga dinamakan kunci publik (public key), sedangkan kunci dekripsi bersifat rahasia sehingga dinamakan kunci rahasia (private key atau secret key).

1. RSA
Salah satu algoritma kriptografi kunci-nirsimetri (kunci-publik) yang paling terkenal adalah RSA (Rivest, Shamir, Adleman). Algoritma ini dibuat oleh Ron Rivest, Adi Shamir, dan Leonard Adleman. Keamanan algoritma RSA terletak pada sulitnya memfaktorkan bilangan yang besar menjadi faktorfaktor prima. Pemfaktoran ini dilakukan untuk memperoleh kunci rahasia. Selama pemfaktoran bilangan besar menjadi faktor-faktor prima belum ditemukan algoritma maka selama itu pula keamanan algoritma RSA tetap terjamin [MUN06].

Untuk membangkitkan pasangan kunci (kunci publik dan kunci rahasia), beberapa langkah yang harus dilakukan antara lain:
1. Pilih dua bilangan prima sembarang p dan q
2. Hitung n = p.q. Sebaiknya p ≠ q maka n = p2 sehingga p dapat diperoleh dengan menarik akar kuadrat dari n
3. Hitung φ(n) = (p - 1).(q - 1)
4. Pilih kunci publik e yang relatif prima terhadap φ(n)
5. Bangkitkan kunci rahasia d dengan persamaan:
e.d ≡ 1 (mod φ(n)) ..............................................(1)
Perhatikan bahwa persamaan diatas ekivalen dengan e.d ≡ 1 + k φ(n), sehingga d dapat dihitung dengan:
d = (1 + k φ(n))/e .............................................(2)
Disini akan didapat dua hasil perhitungan yaitu pasangan n dan d sebagai kunci rahasia (private) dan pasangan n dan e sebagai kunci publik yang sifatnya tidak rahasia [MUN06].

Untuk mengenkripsi pesan (plainteks) menjadi cipherteks, langkah-langkah yang dilakukan adalah:
1. Ambil kunci penerima pesan e dan modulus n 
2. Nyatakan plainteks m menjadi blok-blok m1, m2, ... sedemikian sehingga setiap blok merepresentasikan nilai dalam selang [0,n-1]
3. Setiap blok mi dienkripsi menjadi blok ci dengan rumus
E m c me n
e i i i ( ) = ≡ mod ........................ ..............(3)
Sedangkan untuk dekripsi digunakan rumus:
D c m cd n
d i i i ( ) = = mod ..................................... (4)
Kekuatan algoritma RSA ini terletak pada sulitnya memfaktorkan suatu bilangan yang besar menjadi faktor primanya. Sehingga semakin panjang pasangan kunci yang digunakan (dalam artian semakin besar bilangan kuncinya) maka algoritma RSA akan semakin aman.

2. Protokol Diffie-Hellman
Protokol merupakan serangkaian aturan yang terurut yang harus dilakukan untuk tercapainya tujuan. Seperti yang telah dijelaskan pada bagian sebelumnya bahwa Protokol Diffie-Hellman diperkenalkan oleh Whitfield Diffie dan Martin E. Hellman. Protokol Diffie-Hellman ini digunakan untuk mempertukarkan kunci antara pihak yang saling berkomunikasi. Protokol ini bekerja pada saluran komunikasi publik yang tidak aman, namun dapat menghasilkan kunci (shared secret key) secara aman.
Secara matematis Protokol Diffie-Hellman
digambarkan sebagai berikut [MUN06] :
 
Parameter Umum
Misalkan Alice dan Bob akan mempertukarkan kunci melalui saluran publik. Maka untuk dapat menggunakan protokol ini keduanya akan memilih suatu bilangan dasar n dan g sedemikian sehingga g < n. Nilai n dan g tidak perlu rahasia. Bahkan, Alice dapat membicarakannya melalui saluran yang tidakaman sekalipun.

Algoritma Diffie-Hellman
1. Alice membangkitkan bilangan bulat acak yang
besar x dan mengirim hasil perhitungan berikut
kepada Bob:
X = gx mod n ......................................................(5)
2. Bob membangkitan bilangan bulat acak besar y dan mengirimkan hasil perhitungan berikut kepada
Alice:
Y = gy mod n.......................................................(6)
3. Alice menghitung
K = Yx mod n..................................................... (7)
4. Bob menghitung
K’ = Xy mod n.................................................... (8)
Jika perhitungan dilakukan dengan benar, maka
K = K’
yang berarti kunci simetri sudah berhasil diterima oleh kedua belah pihak. Baik K dan K’ sama dengan gxy mod n. Carol yang menyadap pembicaraan antara Alice dan Bob tidak dapat menghitung K. Ia hanya memiliki informasi n, g, X dan Y, tetapi ia tidak mempunyai informasi nilai x dan y. Untuk mengetahui nilai x dan y, ia perlu melakukan perhitungan logaritma diskrit, yang mana sangat sulit dikerjakan.

Model Enkripsi

Pada bagian ini kita akan membahas berbagai macam teknik enkripsi yang biasa digunakan dalam sistem sekuriti dari sistem komputer dan network.

A. Enkripsi Konvensional.
Proses enkripsi ini dapat digambarkan sebagai berikut :

Plain teks -> Algoritma Enkripsi -> Cipher teks ->Algoritma Dekrispsi -> Plain teks
User A | | User B
|———————-Kunci (Key) ——————–|
Gambar 1

Informasi asal yang dapat di mengerti di simbolkan oleh Plain teks, yang kemudian oleh algoritma Enkripsi diterjemahkan menjadi informasi yang tidak dapat untuk dimengerti yang disimbolkan dengan cipher teks. Proses enkripsi terdiri dari dua yaitu algoritma dan kunci. Kunci biasanya merupakan suatu string bit yang pendek yang mengontrol algoritma. Algoritma enkripsi akan menghasilkan hasil yang berbeda tergantung pada kunci yang digunakan. Mengubah kunci dari enkripsi akan mengubah output dari algortima enkripsi.
Sekali cipher teks telah dihasilkan, kemudian ditransmisikan. Pada bagian penerima selanjutnya cipher teks yang diterima diubah kembali ke plain teks dengan algoritma dan dan kunci yang sama.

Keamanan dari enkripsi konvensional bergantung pada beberapa faktor. Pertama algoritma enkripsi harus cukup kuat sehingga menjadikan sangat sulit untuk mendekripsi cipher teks dengan dasar cipher teks tersebut. Lebih jauh dari itu keamanan dari algoritma enkripsi konvensional bergantung pada kerahasian dari kuncinya bukan algoritmanya. Yaitu dengan asumsi bahwa adalah sangat tidak praktis untuk mendekripsikan informasi dengan dasar cipher teks dan pengetahuan tentang algoritma diskripsi / enkripsi. Atau dengan kata lain, kita tidak perlu menjaga kerahasiaan dari algoritma tetapi cukup dengan kerahasiaan kuncinya.

Manfaat dari konvensional enkripsi algoritma adalah kemudahan dalam penggunaan secara luas. Dengan kenyataan bahwa algoritma ini tidak perlu dijaga kerahasiaannya dengan maksud bahwa pembuat dapat dan mampu membuat suatu implementasi dalam bentuk chip dengan harga yang murah. Chips ini dapat tersedia secara luas dan disediakan pula untuk beberapa jenis produk. Dengan penggunaan dari enkripsi konvensional, prinsip keamanan adalah menjadi menjaga keamanan dari kunci.

Model enkripsi yang digunakan secara luas adalah model yang didasarkan pada data encrytion standard (DES), yang diambil oleh Biro standart nasional US pada tahun 1977. Untuk DES data di enkripsi dalam 64 bit block dengan menggunakan 56 bit kunci. Dengan menggunakan kunci ini, 64 data input diubah dengan suatu urutan dari metode menjadi 64 bit output. Proses yang yang sama dengan kunci yang sama digunakan untuk mengubah kembali enkripsi.

B. Enkripsi Public-Key
Salah satu yang menjadi kesulitan utama dari enkripsi konvensional adalah perlunya untuk mendistribusikan kunci yang digunakan dalam keadaan aman. Sebuah cara yang tepat telah diketemukan untuk mengatasi kelemahan ini dengan suatu model enkripsi yang secara mengejutkan tidak memerlukan sebuah kunci untuk didistribusikan. Metode ini dikenal dengan nama enkripsi public-key dan pertama kali diperkenalkan pada tahun 1976.

Plain teks -> Algoritma Enkripsi -> Cipher teks -> Algoritma Dekrispsi -> Plain teks
User A | | User B
Private Key B —-|
|———————-Kunci (Key) ——————–|
Gambar 2

Algoritma tersebut seperti yang digambarkan pada gambar diatas. Untuk enkripsi konvensional, kunci yang digunakan pada prosen enkripsi dan dekripsi adalah sama. Tetapi ini bukanlah kondisi sesungguhnya yang diperlukan. Namun adalah dimungkinkan untuk membangun suatu algoritma yang menggunakan satu kunci untuk enkripsi dan pasangannya, kunci yang berbeda, untuk dekripsi. Lebih jauh lagi adalah mungkin untuk menciptakan suatu algoritma yang mana pengetahuan tentang algoritma enkripsi ditambah kunci enkripsi tidak cukup untuk menentukan kunci dekrispi. Sehingga teknik berikut ini akan dapat dilakukan :

Masing – masing dari sistem dalam network akan menciptakan sepasang kunci yang digunakan untuk enkripsi dan dekripsi dari informasi yang diterima.
Masing – masing dari sistem akan menerbitkan kunci enkripsinya ( public key ) dengan memasang dalam register umum atau file, sedang pasangannya tetap dijaga sebagai kunci pribadi ( private key ).
Jika A ingin mengisim pesan kepada B, maka A akan mengenkripsi pesannya dengan kunci publik dari B.
Ketika B menerima pesan dari A maka B akan menggunakan kunci privatenya untuk mendeskripsi pesan dari A.

Seperti yang kita lihat, public-key memecahkan masalah pendistribusian karena tidak diperlukan suatu kunci untuk didistribusikan. Semua partisipan mempunyai akses ke kunci publik ( public key ) dan kunci pribadi dihasilkan secara lokal oleh setiap partisipan sehingga tidak perlu untuk didistribusikan. Selama sistem mengontrol masing – masing private key dengan baik maka komunikasi menjadi komunikasi yang aman. Setiap sistem mengubah private key pasangannya public key akan menggantikan public key yang lama. Yang menjadi kelemahan dari metode enkripsi publik key adalah jika dibandingkan dengan metode enkripsi konvensional algoritma enkripsi ini mempunyai algoritma yang lebih komplek. Sehingga untuk perbandingan ukuran dan harga dari hardware, metode publik key akan menghasilkan performance yang lebih rendah. Tabel berikut ini akan memperlihatkan berbagai aspek penting dari enkripsi konvensional dan public key.

Enkripsi Konvensional
Yang dibutuhkan untuk bekerja :
Algoritma yang sama dengan kunci yang sama dapat digunakan untuk proses dekripsi – enkripsi.
Pengirim dan penerima harus membagi algoritma dan kunci yang sama.
Yang dibutuhkan untuk keamanan :
Kunci harus dirahasiakan.
Adalah tidak mungkin atau sangat tidak praktis untuk menerjemahkan informasi yang telah dienkripsi.
Pengetahuan tentang algoritma dan sample dari kata yang terenkripsi tidak mencukupi untuk menentukan kunci.

Enkripsi Public Key
Yang dibutuhkan untuk bekerja :
Algoritma yang digunakan untuk enkripsi dan dekripsi dengan sepasang kunci, satu untuk enkripsi satu untuk dekripsi.
Pengirim dan penerima harus mempunyai sepasang kunci yang cocok.
Yang dibutuhkan untuk keamanan :
Salah satu dari kunci harus dirahasiakan.
Adalah tidak mungkin atau sangat tidak praktis untuk menerjemahkan informasi yang telah dienkripsi.
Pengetahuan tentang algoritma dan sample dari kata yang terenkripsi tidak mencukupi untu menentukan kunci.

Model Penyandian

1.      Penyandi Monoalfabetik
Penyandi Monoalfabetik merupakan setiap huruf digantikan dengan sebuah huruf. Huruf yang sama akanmemikili pengganti yang sama. Misalnya huruf “a” digantikan dengan huruf “e”, maka setiap huruf “a” akan digantikan dengan huruf “e”.
Metode pada Penyandi Monoalfabetik :

1.      Caesar
Metode Caesar Cipher yang digunakan oleh Julius Caesar. Pada prinsipnya, setiap huruf digantikan dengan huruf yang berada tiga (3) posisi dalam urutan alfabet.
Sebagai contoh huruf “a” digantikan dengan huruf “D” dan seterusnya.
Transformasi yang digunakan adalah:
plain : a b c d e f g h i j k l m n o p q r s t u v w x y z
cipher: D E F G H I J K L M N O P Q R S T U V W X Y Z A B C

2.      ROT13
Pada sistem ini sebuah huruf digantikan dengan huruf yang letaknya 13 posisi darinya.
Sebagai contoh, huruf “A” digantikan dengan huruf “N”, huruf “B” digantikan dengan huruf “O”, dan seterusnya.
Secara matematis, hal ini dapat dituliskan sebagai:
C ROT13 = (M)
Untuk mengembalikan kembali ke bentuk semulanya dilakukan proses enkripsi ROT13 dua kali.
M = ROT13(ROT13(M))


2.    Penyandi Polialfabetic
Enkripsi dapat dilakukan dengan mengelompokkan beberapa huruf menjadi sebuah kesatuan (unit) yang kemudian dienkripsi. Metode pada Penyandi Polialfabetik :
Playfair
Penggunaan public key
Salah satu cara untuk menambah tingkat keamanan sebuah algoritma enkripsi dan dekripsi adalah dengan menggunakan sebuah kunci (key) yang biasanya disebut K.
Sehingga persamaan matematisnya menjadi:
EK (M) = C
DK(M) = M
Terdapat 2 macam kunci :

1.      Algoritma Simetris
Algoritma simetris (symmetric algorithm) adalah suatu algoritma dimana kunci enkripsi yang digunakan sama dengan kunci dekripsi sehingga algoritma ini disebut juga sebagai single-key algorithm.
Sebelum melakukan pengiriman pesan, pengirim dan penerima harus memilih suatu suatu kunci tertentu yang sama untuk dipakai bersama, dan kunci ini haruslah rahasia bagi pihak yang tidak berkepentingan sehingga algoritma ini disebut juga algoritma kunci rahasia (secret-key algorithm).
Metode : DES (Data Encryption Standard)
Dalam bidang kriptografi, Data Encryption Standard (DES) adalah sebuah algoritma enkripsi sandi blok kunci simetrik dengan ukuran blok 64-bit dan ukuran kunci 56-bit. DES untuk saat ini sudah dianggap tidak aman lagi. Penyebab utamanya adalah ukuran kuncinya yang sangat pendek (56-bit)

2.      Algoritma Asimetris
Algoritma asimetris (asymmetric algorithm) adalah suatu algoritma dimana kunci enkripsi yang digunakan tidak sama dengan kunci dekripsi.
Pada algoritma ini menggunakan dua kunci yakni kunci publik (public key) dan kunci privat (private key).
Kunci publik disebarkan secara umum sedangkan kunci privat disimpan secara rahasia oleh si pengguna. Walau kunci publik telah diketahui namun akan sangat sukar mengetahui kunci privat yang digunakan.
Metode : RSA (Rivest, Shamir, Adleman)

Enkripsi dan Deskripsi

Apakah yang dimaksud dengan ENKRIPSI.
Enkripsi adalah proses mengamankan suatu informasi dengan membuat informasi tersebut tidak dapat dibaca tanpa bantuan pengetahuan khusus. atau bisa didefinisikan juga Enkripsi, merupakan proses untuk mengubah plainteks menjadi chiperteks.Planteks sendiri adalah data atau pesan asli yang ingin dikirim, sedangkan Chiperteks adalah data hasil enkripsi.Definisi lain tentang Enkripsi adalah proses mengacak data sehingga tidak dapat dibaca oleh pihak lain.
Enkripsi mempunyai kelebihan dan kekurangan yang diantaranya adalah:
  • Kelebihan dari Enkripsi
    • Kerahasiaan suatu informasi terjamin
    • Menyediakan autentikasi dan perlindungan integritas pada algoritma checksum/hash
    • Menanggulangi penyadapan telepon dan email
    • Untuk digital signature
  • Kekurangan dari Enkripsi
    • Penyandian rencana teroris
    • Penyembunyian record kriminal oleh seorang penjahat
    • Pesan tidak bisa dibaca bila penerima pesan lupa atau kehilangan kunci
Jadi kesimpulan dari Enkripsi adalah upaya untuk mengamankan data/informasi, meskipun bukan merupakan satu-satunya cara untuk mengamankan data/informasi. Adapun tujuan dari enkripsi adalah sebagai berikut:
  1. Kerahasiaan :Yaitu untuk menjaga isi dari informasi dari siapapun kecuali yang memiliki otoritas atau kunci rahasia untuk membuka informasi yang telah dienkripsi.
  2. Integritas data : Untuk menjaga keaslian/keutuhan data, sistem harus memiliki kemampuan untuk mendeteksi manipulasi data oleh pihak-pihak yang tidak berhak, antara lain penyisipan, penghapusan, dan pensubsitusian data lain kedalam data yang sebenarnya.
  3. Autentikasi : Ini berhubungan dengan identifikasi/pengenalan, baik secara kesatuan sistem maupun informasi itu sendiri. Dua pihak yang saling berkomunikasi harus saling memperkenalkan diri. Informasi yang dikirimkan melalui kanal harus diautentikasi keaslian, isi datanya, waktu pengiriman, dan lain-lain.
  4. Non-repudiasi/Nirpenyangkalan : Adalah usaha untuk mencegah terjadinya penyangkalan terhadap pengiriman/terciptanya suatu informasi oleh yang mengirimkan/membuat. Cara kerja dari algoritma ini adalah dengan menggantikan setiap karakter dari plaintext dengan karakter lain.
Deskripsi dalam dunia keamanan komputer merupakan proses untuk mengubah chiperteks menjadi plainteks atau pesan asli jadi Deskripsi merupakan  kebalikan dari Enkripsi upaya pengolahan data menjadi sesuatu yang dapat diutarakan secara jelas dan tepat dengan tujuan agar dapat dimengerti oleh orang yang tidak langsung mengalaminya sendiri
Contoh Enkripsi kata UNINDRA dengan MONOALPHABETIC dengan Key:4


B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
A
B
C
D
UNINDRA -->YRMRHVE

source: http://adhiecenter.blogspot.com/2010/05/enkripsi-dan-deskripsi.html


Selasa, 28 September 2010

Kriptografi

Kriptografi (cryptography) berasal dari bahasa Yunani yaitu cryptos artinya rahasia (secret) dan graphein artinya tulisan (writing). Jadi kriptografi berarti tulisan rahasia (secret writing). Kriptografi tidak hanya ilmu yang mempelajari teknik-teknik matematika yang berhubungan dengan aspek keamanan informasi seperti kerahasiaan, integritas data, nirpenyangkalan, otentikasi tetapi juga sekumpulan teknik yang berguna.

Terminologi Kriptografi

a. Pesan, Plainteks dan Cipherteks

Pesan adalah data atau informasi yang dapat dibaca dan dimengerti maknanya. Nama lain untuk pesan adalah plainteks. Agar pesan tidak bisa dimengerti maknanya oleh pihak lain, maka pesan perlu disandikan ke bentuk lain yang tidak dapat dipahami. Bentuk pesan yang tersandi disebut cipherteks

b. Pengirim dan Penerima

Pengirim adalah entitas yang mengirim pesan kepada entitas lainnya. Penerima adalah entitas yang menerima pesan. Entitas di sini dapat berupa orang, mesin (komputer), kartu kredit dan sebagainya.

c. Enkripsi dan dekripsi

Proses menyandikan plainteks menjadi cipherteks disebut enkripsi. Sedangkan proses mengembalikan cipherteks menjadi plainteks semula dinamakan dekripsi

d. Cipher dan kunci

Algoritma kriptografi disebut juga cipher yaitu aturan untuk enciphering dan deciphering, atau fungsi matematika yang digunakan untuk enkripsi dan dekripsi. Konsep matematis yang mendasari algoritma kriptografi adalah relasi antara dua buah himpunan yaitu himpunan yang berisi elemen-elemen plainteks dan himpunan yang berisi cipherteks. Enkripsi dan dekripsi adalah fungsi yang memetakan elemen-elemen antara kedua himpunan tersebut.

e. Sistem kriptografi

Sistem kriptografi merupakan kumpulan yang terdiri dari algoritma kriptografi, semua plainteks dan cipherteks yang mungkin dan kunci.

f. Penyadap

Penyadap adalah orang yang berusaha mencoba menangkap pesan selama ditransmisikan dengan tujuan mendapatkan informasi sebanyak-banyaknya mengenai sistem kriptografi yang digunakan untuk berkomunikasi dengan maksud untuk memecahkan cipherteks.

g. Kriptanalisis dan kriptologi

Kriptanalisis (cryptanalysis) adalah ilmu dan seni untuk memecahkan cipherteks menjadi plainteks tanpa mengetahui kunci yang digunakan. Pelakunya disebut kriptanalis. Kriptologi adalah studi mengenai kriptografi dan kriptanalisis.

Sejarah Kriptografi

Sejarah kriptografi sebagian besar merupakan sejarah kriptografi klasik yaitu metode enkripsi yang menggunakan kertas dan pensil atau mungkin dengan bantuan alat mekanik sederhana. Secara umum algoritma kriptografi klasik dikelompokkan menjadi dua kategori, yaitu algoritma transposisi (transposition cipher) dan algoritma substitusi (substitution cipher). Cipher transposisi mengubah susunan huruf-huruf di dalam pesan, sedangkan cipher substitusi mengganti setiap huruf atau kelompok huruf dengan sebuah huruf atau kelompok huruf lain.

Kriptografi modern dipicu oleh perkembangan peralatan komputer digital. Tidak seperti kriptografi

klasik yang mengenkripsi karakter per karakter (dengan menggunakan alfabet tradisionil), kriptografi modern beroperasi pada string biner. Kriptografi modern tidak hanya memberikan aspek keamanan confidentially, tetapi juga aspek keamanan lain seperti otentikasi, integritas data dan nirpenyangkalan.


Kriptografi Kunci Simetri dan Asimetri

Berdasarkan kunci yang digunakan untuk enkripsi dan dekripsi, kriptografi dapat dibedakan lagi menjadi kriptografi kunci simetri dan kriptografi kunci asimetri. Pada sistem kriptografi kunci simetri, kunci untuk enkripsi sama dengan kunci untuk dekripsi. Jika kunci untuk enkripsi tidak sama dengan kunci untuk dekripsi, maka dinamakan sistem kriptografi asimetri.



source: http://www.ittelkom.ac.id/library/index.php?view=article&catid=15%3Apemrosesan-sinyal&id=43%3Akriptografi&option=com_content&Itemid=15