
1.JAVA Virtual Machine (JVM)
JVM adalah sebuah mesin imajiner (maya) yg
bekerja dg menyerupai aplikasi pada sebuah mesin nyata.JVM menyediakan
spesifikasi hardware dan platform dimana kompilasi kode JAVA
terjadi.Spesifikasi inilah yg membuat aplikasi berbasis java menjadi bebas dari
platform manapun karena proses kompilasi di sesuaikan oleh JVM.
Aplikasi program Java di ciptakan dg file teks
berekstensi.java.Program ini di kompilasi menghasilkan satu berkas bytecode berextensi .class atau
lebih.Bytecode adalah serangkaian instruksi serupa instruksi kode
mesin.Perbedaannya adalah kode mesin harus di jalankan pada sistem komputer
dimana kompilasi di tujukan, sementara bytecode berjalan pada java interpreter
yg tersedia di semua platform sistem
komputer dan sistem operasi.
2.Gerbage Collection
Banyak bahas pemrograman lain yg mengijinkan
seorang programer mengalokasikan memori pada saat di jalankan.Namun, seelah
menggunakan alokasi memory tersebut harus terdapat cara untuk menempatkan
kembali blok memori tersebut supaya
program lain dapat menggunakannya.Dalam C,C++ dan bahasa pemrograman lainnya
adalah programer yg mutlak bertanggung jawab akan hal ini.Hal ini dapat
menyulitkan apabila programer tersebut alpa untuk mengembalikan blok
memory sehingga menyebabkan situasi yg
di kenal dg nama memory leaks.
Program JAVA melakukan gerbage collection yg
berarti program tidak perlu menghapus sendiri objek-objek yg tidak di gunakan
lagi.Fasilitas ini mengurangi beban
pengelolaan memory oleh programer dan mengurangi atau mengeliminasi sumber
kesalahan terbesar yg terdapat pada bahasa yang memungkinkan alokasi dinamis.
3.Code Security
Code security terimplementasi pada JAVA
melalui penggunaan Java Runtime Environment (JRE).Java menggunakan model
pengamanan 3lapis untuk melindungi sistem dari untrusted Java Code.
berikut 3 lapisan tersebut:
pertama, class-loader menangani pemuatan kelas
Java ke Runtime interpreter.Proses ini menyediakan penanganan dg memisahkan
kelas-kelas yg berasal dari local disk dg kelas-kelas yg di ambil dari
jaringan.Hal ini membatasi aplikasi Trojan karena kelas-kelas yg berasal dari
localdisk yg di muat terlebih dahulu.
Kedua, bytecode verifier membaca bytecode sebelum dijalankan dan menjamin bytecode
memenuhi aturan-aturan dasar bahasa java.
Ketiga, Manajemen keamanan menangani keamanan
tingkat aplikasi dengan mengendalikan apakah program berhak mengakses sumber
daya seperti sistem file, port jaringan, proses eksternal dan sistem windowing.Setelah
seluruh proses tersebut selesai di jalankan, barulah kode program di eksekusi.
Selain 3 lapis perlindungan di atas java juga
memiliki beragam teknik pengamanan lain:
a.Bahasa di rancang untuk mempersulit eksekusi
kode perusak.Peniadaan pointer merupakan langkah besar pengamanan.Java tidak
mengenal operasi pointer.Di tangan programer handal, operasi pointer merupakan
hal yg luar biasa untuk optimasi dan pembuatan program yg efisien serta
mengagumkan.Namun mode ini dapat menjadi petaka di hadapan programer
jahat.Pointer merupakan sarana luar biasa
untuk pengaksesan tak di otorisasi.Dengan peniadaan operasi pointer,
java dapat menjadi bahasa yg lebih aman.
b.Java memiliki beberapa pengaman terhadap applet.Untuk mencegah program
bertindak mengganggu media penyimpanan, maka applet tidak di perbolehkan
melakukan open, read ataupun write terhadap berkas secara sembarangan.Karena
java applet dapat membuka jendela browser yg baru, maka jendela mempunyai logo
java dan teks identifikasi terhadap jendela yg di buka.Hal ini mencegah jendela
pop-up menipu sebagai permintaan keterangan username dan password.
No comments:
Post a Comment