Antara JCA dan JCE (bagian 2)

28 12 2009

JCA

Keseluruhan desain dari class Kriptografi ditentukan oleh Java Cryptography Architecture (JCA). JCA menspesifikasikan pola desain dan sebuah arsitektur yang dapat diperluas untuk mendefinisikan konsep dan algoritma Kriptografi. JCA didesain untuk memisahkan konsep Kriptografi dari implementasinya. Konsep-konsep tersebut terenkapsulasi pada class-class yang terdapat pada package java.security dan javax.crypto . Implementasi akan dipenuhi oleh provider Kriptogafi. JDK 1.2 hadir dengan default provider yang bernama SUN, yang mengimplementasikan sedikit algoritma.

JCE

Pemerintah U.S Amerika telah mempertimbangkan beberapa tipe perangkat lunak Kriptografi yang dapat menjadi senajata dan batasan terhadap ekspornya. Oleh karena itu, Sun membagi class Kriptografinya ke dalam dua grup. Grup pertama termasuk dalam package java.security.* yang merupakan bagian dari JDK 1.2 . Class-class tersebut dapat diekspor tanpa ada pembatasan. Grup kedua yaitu Java Cryptography Extension (JCE) hanya untuk didistribusikan di U.S Amerika dan Canada. JCE merupakan perluasan dari JCA dan termasuk ke dalam provider Kriptografi lainnya yang dinamakan SunJCE.

JCE merupakan standar dari library perluasan (extension) yang berarti bahwa : meskipun JCE bukanlah bagian utama dari JDK, namun package JCE bekerja dengan JDK. Versi saat ini yaitu JCE 1.2, mengikuti penamaan konvensional pada standar library perluasan dengan mendefinisikan semua class-nya dalam penamaan javax.crypto.* .

Sumber : Knudsen, Jonathan. 1998. Java Cryptography. Sebastopol : O’Reilly & Associates, Inc.





Antara JCA dan JCE

23 12 2009

Fungsi mendasar untuk menggunakan teknik Kriptografi dalam Java didukung oleh Java Cryptography Architecture (JCA) dan Java Cryptography Extention (JCE).

Satu hal perlu dipahami, bahwa antara JCA dan JCE terdapat sedikit perbedaan terhadap implementasi algoritma sebenarnya dalam hal class dan interface yang membangunnya. JCA dan JCE dirancang untuk menyediakan layer abstraksi bagi para pengembang (developer) aplikasi dan juga merupakan objek yang memungkinkan dilakukan implementasi dari algoritma dengan cara memanfaatkan class factory yang telah tersedia.

Arsitektur ini merupakan provider-based architecture, sehingga dapat disimpulkan bahwa JCE dan JCA menyediakan kumpulan class dan interface yang dapat diubah oleh para pengembang dan bersama dengan factory dapat juga menciptakan objek baru yang selaras dengan class dan factory yang telah tersedia. Objek-objek tersebut pada akhirnya akan memberikan fungsionalitas, namun dengan catatan bahwa para pengembang menggunakannya dalam implementasi melalui sebuah factory pattern dan itu pun tidak secara langsung dapat dimanfaatkan oleh para pengembang. Di dalam JCA dan JCE, kumpulan class yang menyediakan objek tersebut disebut sebagai provider.  Kemudian JCA dan JCE mempunyai sedikit mekanisme yang sederhana guna memungkinkan semua orang dapat melakukan penambahan provider dan juga memilih provider tertentu secara spesifik.

Kode aplikasi dituliskan dengan memanggil class JCA/JCE API yang bersesuaian. Hal tersebut akan melibatkan class dalam provider yang menyediakan implementasi untuk class Service Provider Interface (SPI) JCA/JCE. Class tersebut akan melibatkan kode internal (internal code) di dalam provider untuk memberikan fungsionalitas yang diminta.

Pada awalnya ketika JCA dan JCE pertama kali dikembangkan, kontrol ekspor pada teknologi enkripsi (setidaknya di USA, Amerika) lebih ketat dibandingkan dengan saat ini. Inilah alasan utama mengapa JCA hanya berkutat dengan permasalahan otentikasi, yang pada umumnya dibebaskan karena marupakan algoritma mendasar yang tidak dapat digunakan untuk mengenkripsi. Ini juga menjadi alasan mengapa JCE merupakan sebuah extention dibandingkan dengan maksud yang sebenarnya yaitu sebagai bagian dari regular security API. Kontol ekspor tidak hanya memperluas implementasi mendasar, tetapi juga mengarahkan pada adanya “crypto in hole” atau dalam ungkapan jelasnya framework dapat digunakan untuk enkripsi juga komponen magic-nya ditambahkan kemudian. Dalam hal ini karena JCE merupakan sebuah framework untuk melakukan enkripsi, maka hal ini ditutupi dengan “crypto in hole” tersebut. Oleh karena itu, hal ini dianggap sebagai sebuah cover atas adanya hukum ekspor Kriptografi sampai dengan adanya titik berupa spesifikasi resmi yang dipresentasikan sebagai white paper dalam sebuah konferensi pada Mei 1997 sebagai presentasi akademik yang juga menandakan legalnya penggunaan dan publikasi JCE.

Itulah briefing mengenai JCA dan JCE. Semoga cukup jelas dan memberikan pemahaman baru, bukan malahan jadi tambah bingung, hoho…





Rindu Wisuda

22 12 2009

Gaudeamus Igitur… Juvenes Dum Sumus

Gaudeamus Igitur… Juvenes Dum Sumus

Lagu itu (Gaudeamus Igitur) beberapa waktu belakangan ini sering menjadi backsound di pikiranku. Saat pikiranku berada dalam kondisi STAND BY dan ada di suasana yang santai tentunya. Betapa wisuda merupakan upacara yang sakral, maka demikian pula lagu itu. Ada nuansa hikmat yang sungguh begitu terasa setiap kali lagu itu dibawakan di upacara wisuda. Dan setiap kali aku menyanyikan atau mendengar lagu itu, aku selalu merindukan saat-saat aku akan lulus dari pendidikanku, melepas jabatanku sebagai mahasiswa, memakai toga, dan secara resmi diwisuda.

Lagu Gaudeamus Igitur memang begitu mempesona. Dalam lantunan syahdu suara dari Paduan Suara ‘Gita Caraka’ lagu itu semakin berkesan bagiku. Tak aneh memang. Tak lain dan tak bukan ya karena aku memang salah satu anggotanya di posisi Sopran. Hoho…  :D

Lagu Gaudeamus Igitur ini merupakan lagu berbahasa Latin dan secara harfiah berarti “Karenanya marilah kita bergembira”. Lagu ini merupakan lagu komersium akademik dan sering dinyanyikan di berbagai negara Eropa. Di negara-negara Barat, lagu ini dijadikan sebagai anthem dalam upacara kelulusan. Dan di Indonesia sendiri lagu ini sering dinyanyikan di beberapa Universitas yang memiliki tradisi Paduan Suara yang kuat, yaitu untuk mengiringi kehadiran para anggota Senat Universitas pada awal upacara penerimaan mahasiswa baru dan upacara wisuda.

Pada umumnya, lagu ini dipersingkat dari tujuh bait menjadi hanya bait pertama dan keempat saja yang dinyanyikan.

Gaudeamus igitur =  Mari kita bersenang-senang
Juvenes dum sumus =  Selagi masih muda
Post jucundam juventutem =  Setelah masa muda yang penuh keceriaan
Post molestam senectutem =  Setelah masa tua yang penuh kesukaran
Nos habebit humus =  Tanah akan menguasai kita

Vivat academia !  =  Panjang umur akademi !
Vivant professores !  =  Panjang umur para pengajar !
Vivat membrum quod libet !  =  Panjang umur setiap pelajar !
Vivant membra quae libet !  =  Panjang umur seluruh pelajar !
Semper sint in flore !  =  Semoga mereka terus tumbuh berkembang !

Dengan catatan : Pada kalimat terakhir di partitur Paduan Suara-ku dengan notasi melodi yang sama, bunyi liriknya adalah Vivant Senatores !

Ough… aku memang begitu merindukan wisuda. You know lah… Sudah berapa lama aku menantikan moment seperti ini. Setelah sekian lama aku bekerja keras, membanting tenaga, memeras otak dengan sedemikian hebatnya.  Setelah sekian banyak aral rintangan yang berhasil dilalui, segala tantangan yang berhasil dijawab, sekian rekor diri berhasil diraih.

Tak sabar rasanya menantikan saat-saat indah itu. Selasa, 23 Februari 2010… aku datang…








Follow

Get every new post delivered to your Inbox.