Usaha Mengamankan Internet bagi Dunia Usaha.

Onno W. Purbo
Computer Network Research Group ITB

Internet sebagai jaringan data public sangat diragukan keamanannya untuk transaksi dagang / bisnis. Bagaimana usaha yang dilakukan untuk menjamin keamanan data yang dikirimkan melalui jaringan public Internet akan dicoba diterangkan pada kesempatan ini. Bentuk tulisan ini akan mendasarkan dirinya untuk menjawab beberapa pertanyaan yang sering muncul. Beberapa cerita tambahan tentang ketahanan sistem security RSA juga akan dicoba dikembangkan & mungkin dapat menjadi masukan sejauh mana ketahanan sistem ini. Informasi tentang security sebetulnya cukup mudah di peroleh di Internet seperti di http://www.netscape.com, http://www.rsa.com atau melalui berbagai search engine di Internet menggunakan keyword  yang berkaitan dengan network security.

Web sebagai media aplikasi untuk dunia bisnis di Internet merupakan tool yang paling menarik karena kemampuan multimedia & interaktifnya. Perkembangan yang pesat dari Web server ternyata cukup pesat, hal ini dapat kita lihat dengan jelas dari grafik pertumbuhan Web server di Internet yang di publikasikan oleh WebCrawler salah satu search engine yang besar di Internet. Berbagai pertanyaan yang seringkali muncul ke permukaan pada saat kita dihadapkan pada kenyataan untuk melakukan bisnis di Internet melalui Netscape Navigator atau Micro$oft Explorer antara lain adalah:

1.	Mengapa perlu security features?
2.	Apa saja resiko minimal yang harus di tanggung oleh pengguna Internet?
3.	Bagaimana caranya teknologi security mengamankan browser dari resiko ini?
4.	Sampai sejauh mana security feature yang ada di browser dapat membantu kita bertahan terhadap resiko yang ada?
5.	Bagaimana caranya kita dapat melihat level security dari dokumen yang saat ini kita lihat.
6.	Bagaimana caranya kita mengetahui bahwa Navigator yang kita gunakan sedang beroperasi pada encrypted mode?
7.	Apakah dibutuhkan semacam metoda sertifikasi / authentikasi untuk menggunakan Internet secara aman?
8.	Apakah mungkin / cukup aman mengirimkan informasi personal melalui Internet, seperti nomor kartu kredit?
9.	Apakah dengan mengaktifkan security features maka kita akan menambahkan limitasi untuk mengakses berbagai site di Internet?

Baiklah mari kita lihat jawaban dari masing-masing pertanyaan yang seringkali muncul satu per satu.

Mengapa perlu security features?
Security merupakan prasyarat dasar karena pada dasarnya Internet adalah sebuah jaringan yang tidak aman. Jutaan komputer membentuk public network Internet dimana komunikasi dapat di dengarkan di tengah jalan. Pada saat data bergerak dari pengirim ke penerima, pasti melalui beberapa koneksi (router dll) sebelum mencapai tujuan akhirnya. Artinya komputer lain di luar dua komputer yang saling berkomunikasi tersebut sangat mungkin untuk akses data tersebut. Oleh karenanya, security merupakan prasyarat mutlak jika kita ingin data kita selamat melalui jaringan publik tersebut.

Resiko apa saja yang harus di tanggung oleh pengguna Internet?
Pada dasarnya pada saat data dikirim melalui Internet akan terbuka pada tiga (3) macam resiko keamanan, yaitu:

1.	Eavesdropping - komputer antara mendengarkan pembicaraan dari dua komputer yang sedang berbicara secara private.
2.	Manipulation - komputer antara akan mengganti informasi dalam data yang dikirimkan.
3.	Impersonation - sebuah komputer akan berpura-pura menjadi komputer lain (misalnya menjadi komputer tempat melakukan transaksi dagang).

Sebetulnya situasi ini sama persis dengan kondisi kita pada saat melakukan pembelian mail order melalui telepon. Ketiga resiko di atas akan terjadi pada saat melakukan transaksi mail order.

Bagaimana caranya teknologi security mengamankan browser dari resiko ini?
Pada saat ini ada banyak sekali pengembangan perangkat keamanan komputer maupun yang dapat dijalankan di jaringan komputer. Salah satu yang cukup pesat berkembang antara lain adalah Secure Socket Layer (SSL) yang dikembangkan oleh Netscape. SSL pada dasarnya sebuah set aturan yang memberitahukan step yang harus dilalui untuk meningkatkan tingkat keamanan komunikasi. Aturan SSL ini di disain untuk melakukan:

1.	Encryption, untuk mengatasi eavesdropping 
2.	Data integrity, untuk mengatasi manipulation 
3.	Authentication, untuk mengatasi impersonation 

Perlu dipahami bahwa SSL hanya akan memproteksi data kita pada saat transmisi saja. Hal ini yang disebut network security. Protokol SSL sama sekali tidak akan memproteksi data - sebelum maupun sesudah dilakukan komunikasi. Artinya kita harus percaya penuh bahwa penjual / merchant tidak memberikan nomor kartu kredit yang kita miliki ke orang lain.

Sampai sejauh mana security feature yang ada di browser dapat membantu kita bertahan terhadap resiko yang ada?
Internet pada dasarnya adalah jaringan yang tidak aman. Sebetulnya tidak ada teknik security di dunia ini yang berani mengklaim sebagai teknik yang tidak bisa di tembus / paling aman. Untuk itu perlu digiatkan para pengguna Internet untuk menjamin keamanannya untuk melakukan beberapa hal di bawah ini:

1.	Selalu menggunakan versi terakhir dari software yang digunakan. Umumnya vendor software akan mengeluarkan versi terbaru untuk memperbaiki berbagai lubang security / bug yang ada.
2.	Sedapat mungkin gunakan versi security tertinggi. Saat ini pengguna Netscape di US & Canada dapat menggunakan software Netscape yang mempunyai 128-bit key yang akan memberikan keamanan jauh lebih tinggi daripada 40-bit key yang saat ini boleh di export keluar US. Regulasi di US sedang diperjuangkan untuk di ubah untuk memungkinkan penggunaan jumlah bit key yang tinggi.

Cara setting system security?
Pada dasarnya sebuah sistem security akan terbagi dalam dua hal besar, yaitu:

1.	Cipher suite adalah algoritma kryptografi  yang digunakan untuk sebuah komunikasi; umumnya digunakan beberapa algoritma sekaligus. SSL menggunakan sebuah algoritma untuk verifikasi identitas, sebuah untuk enkripsi data yang di transaksikan, dan sebuah algoritma lagi untuk message integrity.
2.	Sertifikasi digunakan untuk binding sebuah (client atau server) ke public key. Sebuah sertifikatpada dasarnya sebuah data file dengan beberapa buah informasi di dalamnya. Informasi ini berisi:

•	“Nama” yang menjelaskan pemegang sertifikat.
•	Public key dari pemegang sertifikat.
•	Autoritas sertifikat tersebut, yang akan memberikan  informasi seperti, serial number, expiration date, dan sidik jari digital.
. 
Bagaimana caranya kita mengetahui browse yang kita operasikan sedang dalam keadaan aman?
Jika kita menggunakan Netscape maka di URL yang dituju haruslah https:// bukan http:// jadi ada huruf “s” sesudah http. Di samping itu di pojok kiri bawah, gambar kunci tersambung - tidak terpisah seperti pada saat operasi biasa dilakukan.

Apakah sertifikasi diperlukan untuk menggunakan Internet secara aman?
Sertikat diperlukan oleh minimal salah satu unit / komputer yang berkomunikasi menggunakan SSL.  Sejak tahun 1996, umumnya sertifikasi dilakukan oleh server, yang akan mengautentikasi identitas & menerima informasi dari pengunjung yang datang ke site mereka dalam lingkungan komunikasi yang terproteksi. Pola ini banyak digunakan oleh berbagai sites yang menjual barang di Internet. Saat ini semakin banyak user individual yang mempunyai personal sertifikasi terutama untuk mengirimkan mail secara aman maupun untuk keperluan autentikasi.

Bagaimana dengan pengiriman informasi yang sifatnya pribadi seperti nomor kartu kredit?
Kita dapat mengirimkan nomor kartu kredit  jika pada saat itu security diaktifkan di brwoser (https) maupun di server. Dengan menggunakan jalur komunikasi yang telah diaktifkan security-nya maka akan dikurangi resiko fraud dll pada saat informasi di transmisikan melalui Internet.

Satu hal yang harus kita jaga adalah kita harus percaya penuh pada penerima informasi finansial tersebut. Teknologi security hanya akan mengamankan jalur komunikasi akan tetapi tidak akan mengamanan kita pada orang-orang yang sembrono di balik server sana.

Apakah security features akan membatasi kemungkinan bagi kita mengakses site Internet?
Sama sekali tidak, bahkan kita masih tetap bisa menerima mail & news baik yang di encrypt maupun tidak secara transparan.

Mudah-mudahan sedikit jawaban dari Frequently Asked Questions (FAQ) di atas akan memberikan sedikit gambaran tentang usaha yang sedang berlangsung untuk mengamankan Internet bagi dunia usaha. Selanjutnya akan kita perdalam lebih lanjut beberapa hal yang berkaitan dengan pengembangan protokol security itu sendiri. Usaha pengembangan protocol security sejalan dengan berbagai usaha untuk men-challenge / membobol protocol tersebut yang merupakan sayembara Internasional.

Secure Socket Layer
Netscape telah merancang & menspesifikasikan protokol untuk menjamin security data antara protocol layer aplikasi (seperti HTTP, Telnet, NNTP atau FTP) dengan TCP/IP. Protokol security itu di sebut, Secure Socket Layer (SSL), yang memberikan enkripsi data, autentikasi server, message integrity dan option untuk autentikasi client pada saat hubungan TCP/IP berlangsung.

SSL pada dasarnya sebuah protocol yang non-proprietary & open. MD5 dan RC4, dua dari komponen kriptografi (yang sangat baik) dari SSL, di disain oleh Ron Rivest dari RSA Laboratories <http://www.rsa.com/>. SSL sudah dimasukan ke W3 Consortium (W3C) working group on security untuk dilihat kemungkinannya sebagai standard security pada World Wide Web browser & server di Internet. Versi terakhir dari protocol SSL sudah dimasukan ke Internet Engineering Task Force (IETF) <http://www.ietf.org> dan tersedia di Internet sebagai Internet Draft. Kita bahkan dapat dengan mudah berpartisipasi dalam pengembangan protocol ini dengan cara subscribe ke mailing list IETF untuk keperluan tersebut. Caranya:

1.	kirim mail ke ietf-tls-request@w3.org
2.	pada subject tulis “subscribe”

Selain itu juga mailing list ssl-talk@netscape.com yang dapat di subscribe melalui cara:

1.	kirim mail ke ssl-talk-request@netscape.com
2.	pada subject tulis “subscribe”

Untuk mempelajari lebih lanjut dari SSL dapat diperoleh dengan mendatangi site-site berikut:

1.	http://home.netscape.com/eng/ssl3/index.html - yang menerangkan secara detail dari Secure Socket Layer versi 3.
2.	http://home.netscape.com/info/security-doc.html - dokumentasi dari Netscape tentang aspek security.
3.	http://home.netscape.com/assist/security/ssl/protocol.html - Secure Socket Layer.
4.	http://home.netscape.com/assist/security/ssl/howitworks.html - bagaimana SSL bekerja.
5.	http://www.consensus.com/security/ssl-talk-faq.html - Frequently Asked Questions (FAQ) tentang SSL.

RSA
RSA yang bermarkas di Redwood City, California <http://www.rsa.com> merupakan salah satu lembaga penelitian bidang security yang cukup besar khususnya dalam bidang enkripsi data. Public key RSA merupakan salah satu algoritma yang digunakan oleh SSL Netscape. Saat ini RSA Lab sedang mengembangkan yang disebut sebagai:

	Public-Key Cryptographics Standards (PKCS)

yang dikembangkan sejak tahun 1991 bersama Apple, Digital, Lotus, Microsoft, MIT, Northern Telecom, Novell dan Sun. Standard yng dikembangkan meliputi beberapa hal seperti RSA encryption, Diffie-Hellman key agreement, password-based encryption, extended-certificate syntax, cryptographic message syntax, private-key information syntax, dan certification request syntax. Detail artikel tentang berbagai standard ini dapat dengan mudah di ambil dari Homepage RSA di http://www.rsa.com/.

Untuk melakukan diseminasi informasi maupun interaksi dengan para ahli / penggemar dunia kriptograpfi beberapa mailing list telah dibuat oleh RSA yang diatur melalui majordomo@rsa.com. Adapun mailing list tersebut adalah:

pkcs-tng@rsa.com - PKCS The Next Generation.
cryptoki@rsa.com - Cryptographic Token Interface Standard.
pica@rsa.com - Platform-Independent Cryptography API.

Pretty Good Privacy (PGP)
PGP merupakan salah satu protocol untuk security yang banyak digunakan di Internet selain SSL. Sebetulnya PGP jauh lebih sulit di bobol daripada SSL. Hal ini disebabkan panjang dari key yang digunakan di PGP jauh lebih panjang dari SSL sehingga pembobolan secara paksa sangat sulit dilakukan, meskipun dengan beberapa juta komputer secara parallel. Diskusi tentang hal ini banyak dilakukan di newsgroup sci.crypt dan alt.security.pgp - tampaknya konsensus yang ada menunjukan bahwa PGP - Pretty Good.

Sekedar gambaran untuk membobol PGP dengan 1024-bit key PGP message akan membutuhkan sekitar 300,000,000,000 MIPS year. Jadi sebetulnya dibutuhkan banyak waktu & uang untuk melakukan penjebolan itu. Untuk melihat detail dari penyerangan ke PGP dapat dilihat pada FAQ yang berlokasi di http://axion.physics.ubc.ca/pgp-attack.html.

Software PGP versi Internasional yang di koordinir oleh Ståle Schumacher <stale@hypnotech.com> dapat diperoleh dengan mudah dari Internet pada alamat:

http://www.ifi.uio.no/pgp/download.shtml
ftp://ftp.ifi.uio.no/pub/pgp/
ftp://ftp.encomix.es/pub/pgp/
ftp://ftp.ox.ac.uk/pub/crypto/pgp/

Atau melalui E-mail dengan mengirimkan mail ke pgp@hypnotech.com dengan perintah GET PGP di Subject.

Tempat untuk mencari lebih lanjut berbagai informasi tentang PGP dapat dilakukan melalui Internet:

http://www.ifi.uio.no/pgp/
	http://www.prairienet.org/~jalicqui/pgpfaq.txt
	ftp://ftp.uu.net/usenet/news.answers/pgp-faq/where-is-PGP.Z
	http://world.std.com/~franl/pgp/pgp-passphrase-faq.html
	http://axion.physics.ubc.ca/pgp-attack.html
	ftp://net-dist.mit.edu/pub/PGP/PGP_FAQ
	http://world.std.com/~franl/pgp/pgp.html
	http://www.mit.edu:8001/people/warlord/pgp-faq.html

Usaha Pembobolan Sistem Security.
Seperti kita ketahui bersama bahwa tidak ada satupun sistem di dunia ini yang sempurna. Oleh karena itu, usaha untuk membobol sistem security yang dikembangkan bahkan akhir-akhir ini di sayembarakan di Internet untuk menguji sampai sejauh mana tingkat kesulitan untuk menembus sistem security tersebut. Hasil dari usaha pembobolan tersebut biasanya menjadi umpan balik bagi para perancang protocol security untuk kemudian diperbaiki. Ada baiknya penulisan dilakukan secara kronologis.

14 Juli 1996: Hal Finney melakukan posting dari SSL challenge: sebuah record dari “secure” Netscape sesion yang di enkrip menggunakan algoritma RC4-128-EXPORT-40.

15 Agustus 1996: Dua kelompok berhasil memecahkan SSL challenge tersebut. Kelompok yang pertama adalah David Byers <davby@ida.liu.se> dan Eric Young <eay@mincom.oz.au>, bekerjasama dengan Adam Back <aba@dcs.ex.ac.uk> berhasil memecahkannya pada pukul 10:43. Dua jam kemudian, Damien Doligez <Damien.Doligez@inria.fr> berhasil memecahkan pada pukul 12:23. Menarik untuk dilihat lamanya waktu untuk menguasai ilmu untuk memecahkan challenge tersebut dibutuhkan waktu hampir bulan.

Menurut Damien, untuk memecahkan SSL dengan 40-bit key dibutuhkan sekitar 40 buah high end Pentium PC yang di kaitkan dalam sebuah jaringan komputer sehingga dapat dipecahkan secara parallel untuk memperkuat kemampuan komputasinya. Perlu diketahui bahwa Damien menggunakan sekitar 120 komputer secara parallel untuk memecahkannya. Waktu yang dibutuhkan untuk memecahkan challenge tersebut dengan kekuatan 120 komputer adalah sekitar 8 hari (estimasi maksimum akan dibutuhkan waktu 15 hari).

17 Agustus 1996: Netscape mengirimkan responds resmi mereka. Walaupun sebagian besar orang kurang setuju (karena underestimate) dengan angka US$10,000 untuk biaya pembobolan algoritma RC4-128 di SSL mereka.

Sejak saat ini mulai ada usaha-usaha dari para cyberpunk untuk bersatu & membentuk sebuah jaringan “key cracking ring” untuk melihat seberapa cepat kita kita dapat membongkar sesion yang di enkrip dengan menggunakan banyak mesin di Internet secara parallel dari ring tersebut.

19 August 1996: Hal Finney kembali melakukan posting dari SSL challenge yang kedua kepada para cyberpunk untuk "key cracking ring". Kegiatan ini di koordinir oleh Adam Back dan Piete Brooks.

24 Agustus 1996: “Key cracking ring” yang merupakan kumpulan komputer yang bekerja secara parallel melalui jaringan Internet mulai bekerja pada challenge tanggal 19 Agustus yang dilakukan pada pukul 18:00 GMT. Dalam waktu kurang dari 32 jam hasilnya diperoleh!

17 September 1996: Ian Goldberg dan David Wagner berhasil membobol pseudo-random number generator dari Netscape Navigator 1.1. Mereka berhasil masuk ke session key dalam waktu beberapa jam dari sebuah workstation. 

Seperti kita lihat di atas bahwa untuk memecahkan sebuah secure session SSL dengan 40-bit key ternyata membutuhkan waktu yang lama (berhari-hari) dengan kekuatan 120 komputer melakukan komputasi secara parallel. Hal ini menunjukan betapa sulitnya untuk memecahkan sebuah secure session. Dengan adanya usaha Netscape untuk mengexport versi SSL yang lebih aman dengan 128-bit key maka akan semakin sulit untuk menembus proteksi yang akan ada.

Summary
Pada dasarnya berbagai algoritma security yang dikembangkan untuk mengamankan transmisi data melalui jaringan komputer public Internet sebetulnya mampu untuk mengamankan saluran transmisi sehingga cukup aman. Untuk membobol sebuah session yang telah di amankan, dibutuhkan banyak waktu & komputer yang bekerja secara parallel.

Kita semua berharap agar pemerintah Amerika Serikat akan melunakan peraturan export mereka supaya program security yang kuat dapat di export dengan mudah ke luar Amerika Serikat & akhirny akan meningkatkan keamanan transmisi data melalui Internet sehingga akan menambah semangat dunia usaha untuk berusaha di Internet.

Sekedar tambahan berbagai Newsgroup di Internet yang membahas tentang berbagai hal yang berkaitan dengan security antara lain adalah:

alt.anonymous
alt.anonymous.messages
alt.privacy.clipper
alt.security
alt.security.pgp
alt.security.ripem
alt.security.keydist
alt.society.civil-liberty
comp.compression
comp.org.eff.news
comp.org.eff.talk
comp.patents
comp.risks
comp.society.privacy
comp.security.announce
misc.legal.computing
sci.crypt
sci.math
talk.politics.crypto

Mudah-mudahan tulisan yang cukup panjang ini dapat memberikan gambaran secara garis besar tentang usaha yang sedang berjalan untuk mengamankan Internet bagi dunia usaha. Juga diharapkan dapat menjadi acuan awal bagi rekan-rekan yang ingin mendalami lebih lanjut masalah keamanan / security di Internet.