Thursday, January 9, 2014

keamanan Basis Data

Review STUDI DAN IMPLEMENTASI PENGAMANAN BASIS DATA
MENGGUNAKAN METODE ENKRIPSI MD5


Perkembangan teknologi informasi dan komunikasi (TIK) sangat Cepat, beberapa konsep dan aplikasi muncul seperti egoverment, e-commerce, e-community dan lain sebagainya. Penggunaan komputer dapat menghasilkan pengolahan data yang lebih akurat dan pencarian data yang lebih cepat pada teknologi berkembang saat ini, dapat menjadi teknologi yang tepat guna.  Dalam mengolah data menjadi informasi yang mendukung pengambilan keputusan yang tepat dan dapat memberikan keunggulan baik, sehingga mendapat prioritas yang tinggi dalam mendukung pelaksanaan operasional sebuah institusi.

Salah satu hal yang penting dalam komunikasi menggunakan computer untuk menjamin kerahasian data adalah enkripsi. Enkripsi adalah sebuah proses yang melakukan perubahan sebuah kode dari yang bisa dimengerti menjadi sebuah kode yang tidak bisa dimengerti (tidak terbaca). Enkripsi dapat diartikan sebagai kode atau chiper. Sebuah chiper menggunakan suatu algoritma yang dapat mengkodekan semua aliran data (stream) bit dari sebuah pesan menjadi cryptogram yang tidak dimengerti (unitelligible).  algoritma enkripsi harus cukup kuat sehingga menjadikan sangat sulit untuk mendekripsi cipher teks dengan dasar cipher teks tersebut. namun keamanan dari algoritma enkripsi konvensional bergantung pada
kerahasian dari kuncinya bukan algoritmanya,

Kriptografi merupakan suatu bidang ilmu yang mempelajari tentang bagaimana merahasiakan suatu informasi penting ke dalam suatu bentuk yang tidak dapat dibaca oleh siapapun serta mengembalikannya kembali menjadi informasi semula dengan menggunakan berbagai macam teknik yang telah ada sehingga informasi tersebut tidak dapat diketahui oleh pihak manapun yang bukan pemilik atau yang tidak berkepentingan. Sisi lain dari kriptografi ialah kriptanalisis (Cryptanalysis) yang merupakan studi tentang bagaimana memecahkan mekanisme kriptografi. Bagi kebanyakan orang, kriptografi lebih diutamakan dalam menjaga komunikasi tetap rahasia dan khusus. Seperti yang telah diketahui dan disetujui bahwa perlindungan (proteksi) terhadap komunikasi yang sensitif telah menjadi penekanan kriptografi selama ini.

Ada empat tujuan dari ilmu kriptografi, yaitu :
1. Kerahasiaan, adalah layanan yang digunakan untuk menjaga isi dari informasi dari siapapun kecuali yang memiliki otoritas,
2. Integritas data, adalah berhubungan dengan penjagaan dari perubahan data secara tidak sah. Untuk menjaga integritas data, sistem harus memiliki kemampuan untuk mendeteksi manipulasi data oleh pihak-pihak yang tidak berhak, antara lain menyangkut penyisipan, penghapusan, dan pensubtitusian data lain ke dalam data yang sebenarnya.
3. Autentikasi, adalah berhubungan dengan identifikasi, 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, yang berarti begitu pesan terkirim, maka tidak akan dapat dibatalkan.

Proses utama dalam suatu algoritma kriptografi adalah enkripsi dan dekripsi. Enkripsi merubah sebuah plaintext ke dalam bentuk ciphertext. Pada mode ECB (Elekctronic Codebook), sebuah blok pada plaintext dienkripsi ke dalam sebuah blok ciphertext dengan panjang blok yang sama. Blok cipher memiliki sifat bahwa setiap blok harus memiliki panjang yang sama (misalnya 128 bit). Namun apabila pesan yang dienkripsi memiliki panjang blok terakhir tidak tepat 128 bit, maka diperlukan mekanisme padding, yaitu
penambahan bit-bit dummies untuk menggenapi menjadi panjang blok yang sesuai; biasanya padding dilakukan pada blok terakhir plaintext.
Dekripsi merupakan proses kebalikan dari proses enkripsi, merubah ciphertext kembali ke dalam bentuk plaintext. Untuk menghilangkan padding yang diberikan pada saat proses enkripsi, dilakukan berdasarkan informasi jumlah padding yaitu angka pada byte terakhir.

Pada umumnya terdapat dua teknik yang digunakan dalam kriptografi  yaitu kunci simetrik dan kunci asimetrik (public-key). disebut kunci simetrik apabila pasangan kunci untuk proses enkripsi dan dekripsinya sama. Pada skema enkripsi kunci simetrik dibedakan lagi menjadi dua kelas, yaitu block-cipher dan stream-cipher. Block-cipher adalah skema enkripsi yang akan membagi-bagi plaintext yang akan dikirimkan menjadi sting-string (disebut blok) dengan panjang t, dan mengenkripsinya per-blok. Pada umumnya block-cipher memproses plaintext dengan blok yang relatif panjang lebih dari 64 bit dengan tujuan untuk mempersulit penggunaan pola-pola serangan yang ada untuk membongkar kunci. Sedangkan skema stream cipher pada dasarnya juga block-cipher, hanya dengan panjang bloknya adalah satu bit. Kunci Asimetrik  adalah algoritma yang menggunakan kunci yang berbeda untuk proses enkripsi dan dekripsinya.



MD5 yang merupakan singkatan dari Message-Digest algortihm 5, adalah fungsi hash (prosedur terdefinisi atau fungsi matematika yang mengubah variabel dari suatu data yang berukuran besar menjadi lebih sederhana) kriptografik yang digunakan secara luas dengan hash value 128-bit. MD5 dimanfaatkan dalam berbagai aplikasi keamanan, dan umumnya digunakan untuk meguji integritas sebuah file.
Enkripsi menggunakan MD5 masih mendominasi sebagian besar aplikasi PHP. Enkripsi MD5 dianggap strong karena enkripsi yang dihasilkannya bersifat ‘one way hash’. Berapapaun string yang di enkripsi hasilnya tetap sepanjang 32 karakter.

Algoritma MD5 diambil dari RFC 1321, yang disusun oleh Ron Rivest. Dimisalkan kita memiliki pesan sepanjang “b”-bit, dan akan dicari message digestnya. Untuk menghitung message digest dari sebuah pesan, pada MD5 dilakukan tiga langkah sebagai berikut :
1. Penambahan Panjang Bit.
jika panjang pesan telah melebihi 448 bit ini, maka perpanjangan pesan akan dilakukan sampai sebesar  512 + 448 bit, dan begitu seterusnya.

2. Penambahan Panjang Pesan Total
Representasi sebesar 64 bit dari “b” (panjang pesan awal) ditambahkan ke dalam pesan. Jika representasi
“b” ini ternyata lebih besar dari 64 bit, maka yang akan diambil hanyalah 64 bit awal (low-order) saja. Panjang pesan total sampai pada tahap ke-dua ini sebesar (kelipatan dari) 512 bit. Tujuan dari penambahan ukuran pesan sampai sebesar kelipatan dari 512 bit ini adalah agar pesan memiliki panjang tepat kelipatan dari 16 word (satu word memiliki ukuran 32 bit)


implementasi pengamanan basis data menggunakan metode enkripsi md5 messagedigest algorithm 5 yang dapat berjalan sesuai design implementasi pengamanan basis data menggunakan metode enkripsi md5 message-digest algorithm 5 ini dapat diimplementasikan dalam pengamanan basis data khususnya basis data yang berhubungan dengan login ke sistem. Sistem pengamanan basis data ini dibuat menggunakan bahasa pemrograman PHP dan MySQL sebagai databasenya.


jurnal yang di riview http://eprints.binadarma.ac.id/92/1/JURNAL_SAIPUL%20BAHRI_08142057.pdf

review sistem basis data terdistribusi


review
DISTRIBUSI BASIS DATA KEPENDUDUKAN
UNTUK OPTIMALISASI AKSES DATA

 Database kependudukan WNI mendukung terkumpulnya data dan informasi yang diperlukan,  berbagai berbagai permasalahan redudansi data dan proses serta penggunaan nomor identitas unik yang berbeda-beda pada berbagai database dan sistem aplikasi layanan publik yang digunakan membentuk “pulau-pulau informasi” dengan database, application builder dan operating system berbeda. Database dan sistem aplikasi layanan publik satu dengan yang lainnya tidak dapat saling berkomunikasi, akibatnya informasi tidak akurat karena masing-masing memiliki versi data berbeda. Hal ini menyebabkan kebutuhan baru untuk penyusunan database baru dengan biaya mahal.

program e-KTP berbasis Nomor Induk Kependudukan (NIK). Program ini diharapkan mampu mengatasi permasalahan tersebut. Bentuk fisik E-KTP mirip KTP biasa, tetapi ditambah chip dan foto dan tandatangan digital sehingga berfungsi sebagai smart card. e-KTP memiliki kapasitas 4-8KB, memuat data NIK, nama, tempat dan tanggal lahir, jenis kelamin, agama, status perkawinan, golongan darah, alamat, pekerjaan, kewarganegaraan, foto, masa berlaku, tempat dan tanggal dikeluarkan, tandatangan, serta nama dan nomor induk pegawai pejabat yang menandatanganinya.

Database penduduk ditampung dalam database nasional. KTP lama akan diubah menjadi e-KTP, dan data kependudukan dalam e-KTP akan dikaitkan dengan sistem terpadu pendataan sidik jari yang dikelola oleh Indonesia Automatic Fingerprint Identification System (INAFIS) dari POLRI.

distribusi database kependudukan adalah penting karena penerapan database secara tersentral akan menimbulkan permasalahan, seperti kemungkinan bottleneck dan kegagalan pada database tersentral mengakibatkan kegagalan pada keseluruhan sistem.

Distributed Database (DDB) adalah kumpulan database yang saling terkait secara logis yang didistribusikan melalui jaringan. DDB terdiri atas kumpulan site yang masing-masing mempertahankan database lokal. Dalam DDB, database disimpan pada beberapa komputer yang berhubungan satu sama lain dalam jringan. DDB terkait dengan :
1. Distribusi: data disimpan pada tempat yang berbeda sehingga dapat dibedakan dari database tunggal (sentralisasi).
2. Korelasi logika: data memiliki properti yang berhubungan sehingga DDB dapat dibedakan dari sekumpulan database lokal atau file yang disimpan pada tempat yang berbeda dalam jaringan komputer.

Sistem manajemen DDB (DDBMS) merupakan sebuah software yang dapat memelihara DDBS dan transparan ke pengguna. Keuntungan penerapan DDBS adalah:
1) otonomi lokal;
2) peningkatan kinerja;
3) peningkatan reliability/availability;
4) ekonomis;
5) expandibility;
 6) shareability
Sedangkan kerugiannya, antara lain:
1) kurangnya pengalaman;
2) kompleksitas;
3) biaya hardware dan personel ;
4) kontrol distribusi;
5) keamanan;
6) kesuliatan pada perubahan

Kinerja Distributed Database
Kinerja akses data pada DDB untuk aplikasi kependudukan berbasis web yang dibangun menggunakan bahasa PHP dan

basis data Oracle 9i pernah diuji sebelumnya. Pengujian dilakukan pada 11 tabel database relasional yang didistribusikan dengan replikasi multimaster tipe asynchronous, menggunakan 2 master site. Pengujian dilakukan pada administrasi data kependudukan, yaitu pemrosesan KTP, kartu keluarga, akta kelahiran, catatan pindah, catatan kematian, serta akta nikah. Pengujian distribusi dilakukan pada eksekusi query insert, update, dan delete (IUD) secara bertahap untuk setiap jenis query pada 5.000, 25.000, 50.000, dan 100.000 record secara kontinyu. Hasil penelitian ini menunjukkan bahwa implementasi DDB menghasilkan kinerja yang baik menyangkut ketersediaan data. Replikasi database yang dapat menghasilkan kesamaan posisi data pada beberapa master site memungkinkan pembagian beban kerja server, sehingga kegagalan akses data dapat diminimalkan.

Perancangan Distributed Database
Alokasi data DDBS dapat dilakukan dalam dua kategori, yakni partisi dan replikasi. Dalam skema partisi, database dibagi ke sejumlah partisi yang disjoin di mana masing-masing ditempatkan pada site berbeda. Perancangan replikasi dibedakan atas fully replication atau fully duplicated yaitu seluruh database ditempatkan di masing-masing site, atau partially replicated yaitu masing-masing partisi database disimpan di beberapa site tetapi tidak pada semua site. Perancangan dasar alokasi DDB dapat dilakukan dengan cara fragmentasi dan distribusi. Dalam fragmentasi, relasi dibagi ke partisi-partisi yang disebut fragmen, setiap fragmen disimpan pada site berbeda. Fragmentasi dibedakan menjadi dua, yaitu fragmentasi horisontal dan vertikal.

Fragmentasi vertikal r(R) melibatkan sejumlah subset R1, R2, …, Rn dari R sedemikian sehingga union dari R1, R2, …, Rn sama dengan R. Fragmentasi vertikal dibuat dengan menambahkan atribut khusus yaitu tuple-id, yang merupakan alamat fisik/logik record dan menjadi kunci pada schema, tetapi tuple-id tidak diperlihatkan ke user. Alternatif fragmentasi campuran dapat dilakukan dengan mengaplikasikan fragmentasi horisontal terhadap fragmen vertikal, dan mengaplikasikan fragmentasi vertikal terhadap fragmen horizontal. Jika relasi r direplikasi, maka salinan dari relasi r disimpan di dua atau lebih site. Full replication menyimpan salinan di setiap site dari sistem.

Sebuah fragmen dapat direplikasi, misal ada sistem terdistribusi terdiri dari S1, S2, …, S10.
Salinan fragmen deposit3a pada site S1, S3 dan S7. Salinan deposit3b pada site S7 dan S10 dan salinan deposit4 ada pada site S2, S8 dan S9.
Keuntungan dan kerugian Replikasi adalah :
1. Availability : jika satu site yang berisi relasi r gagal, relasi r masih bisa diperoleh di site yang lain, sehingga sistem tetap dapat melanjutkan proses.
2. Meningkatkan paralel: beberapa site dapat memproses query pada r secara paralel. Semakin banyak replikasi, semakin besar kemungkinan ditemukan data pada site di mana transaksi dijalankan. Replikasi meminimalkan pergerakan data antar site.
3. Meningkatkan overhead update: sistem harus memastikan bahwa semua replikasi dari relasi r konsisten. Di mana pun r di-update, maka update ini harus disebar ke seluruh site. Replikasi meningkatkan kinerja operasi read dan availability data. Transaksi update meningkatkan overhead. Pengontrolan konkurensi update data yang direplikasi akan semakin kompleks dibandingkan database terpusat. Cara sederhana adalah membuat salinan utama dari r. Misal: dalam sistem perbankan, rekening dapat dihubungkan dengan site di mana rekening tersebut dibuka.

Problem Integrasi Sistem Informasi
Salah satu problem yang sulit dipecahkan adalah untuk menintegrasikan sejumlah sistem informasi yang berbeda. Berdasarkan pengalaman, kompleksitas permasalahan yang dijumpai tidak bertumpu pada aspek teknis, namun kerap lebih menonjol pada aspek non-teknis yang biasanya didominasi oleh isu "ego sektoral" masing-masing institusi. Tanpa adanya strategi yang jelas, seringkali kegiatan integrasi sistem menemui jalan buntu. Kunci permasalahan atas fenomena tersebut pada dasarnya terletak pada kesalahan pemilihan pendekatan atau metodologi proses terkait. Metodologi yang dipergunakan harus mampu menjawab berbagai kendala teknis dan non teknis pada setiap isu integrasi.


Rancangan Konseptual SISFONAS
Rancangan konseptual pengembangan sistem informasi nasional (SISFONAS) merekomendasikan sebuah konsep simpul informasi yang menggambarkan kerangka arsitektur sistem informasi secara terintegrasi dalam lingkup pemerintahan NKRI. Arsitektur dimaksud adalah sebuah rancang bangun konseptual tentang alur informasi beserta hubungan intra dan antar instansi sehingga membentuk jaringan informasi terintegrasi atas simpul informasi pemerintah yang terdiri atas 4 lapisan utama yaitu: kabinet, pemerintah pusat, pemerintah propinsi, serta pemerintah kabupaten/kota.  Rancangan konseptual SISFONAS juga menyajikan kerangka restrukturisasi data nasional yang  meliputi 3 data primer, yakni data kependudukan, data kewilayahan, dan data kepemerintahan. Data primer kependudukan digunakan oleh sistem-sistem seperti kependudukandan Komunikasi (PTIK) BPPT mendampingi Depdagri secara teknis dalam pengembangan software Sistem Informasi Administrasi Kependudukan (SIAK) online yang mencakup perancangan infrastruktur jaringan antar kabupaten, data center pada Dirjen Administrasi Kependudukan, perancangan disaster recovery center (DRC), dan konsolidasi data dalam sistem.


berikut adalah usulan skenario DDB kependudukan untuk memperoleh kinerja akses data yang optimal :
1. Database Master Tunggal & Terpusat

Mengingat kompleksitas keterkaitan antar record dalam database kependudukan, sulit dibayangkan jika database tersebut tidak tunggal. e-KTP, merupakan kartu identitas diri yang terkait dengan database tunggal warganegara dimana database ini terkait dengan berbagai database dan sistem informasi lain selama menyangkut identitas diri seorang warga negara. Bahkan tidak hanya dengan IT pemerintahan (e-Gov), tetapi juga berbagai IT non e-Gov. Semua database dalam e-Gov sebuah negara harus tunggal dan terpusat. Database terpusat memberikan kesederhanaan dalam hal:
 1) integrasi penyusunan struktur untuk obyek-obyek yang saling terkait baik dalam satu database maupun antar database, 2) program aplikasi, 3) komputasi, 4) perawatan dan pengembangan software dan hardware, 5) biaya lebih murah, 6) sistem secara keseluruhan lebih cepat dan mudah dikembangkan, serta 7) pengawasan untuk perawatan dan pengembangan.

2. Distribusi Database Kependudukan
 penetapan struktur data nasional akan menjadi common database bagi sistem informasi lain yang memerlukan data yang sama sebagai turunan data yang berasal dari sumber yang sama. Dengan metode seperti ini, maka di setiap daerah tingkat kabupaten/kota akan terbentuk pusat-pusat data yang bersifat common database bagi seluruh sistem informasi pemerintahan berbasis elektronik yang berada di daerahnya. Dengan menggunakan pusat data daerah kabupaten/kota yang sama akan menjamin ketersediaan data yang seragam.
.
a. Replikasi Database

Mengingat kondisi infrastruktur dan kualitas komunikasi data yang beragam, sementara kecepatan akses menjadi tuntutan, dan mengacu pada desain logik dan fisik pengembangan database kependudukan, maka replikasi database kependudukan dapat dilakukan secara partially replicated yaitu masing-masing partisi database kependudukan propinsi disimpan di server database propinsi.

b. Fragmentasi Database

Alokasi DDB dilakukan dengan skenario fragmentasi horisontal dari server database nasional ke server database propinsi. Fragmentasi horisontal dilakukan sesuai kode wilayah propinsi dan kemudian disimpan di server database propinsi. Selanjutnya, database kabupaten/kota merupakan hasil fragmentasi horisontal sesuai kode kabupaten dan kemudian disimpan di server database kabupaten. Fragmentasi vertikal dilakukan dengan memisahkan data yang sering di-update, sementara data yang jarang berubah tetap disimpan di server database propinsi.

3. Transparansi

DDBMS menyatakan bahwa sistem seharusnya melakukan distribusi yang transparan kepada user. Detail implementasi tidak perlu dietahui oleh user. DDBMS menampilkan banyak level transparan yang berpartisipasi di semua obyek, agar DDB sejalan dengan database tersentralisasi.

a. Transparansi Distribusi

Distribusi transparansi dimaksudkan agar pengguna tidak tahu mengenai fragmentasi dari database ataupun lokasi dimana data tersebut disimpan. Transparansi distribusi terkait dengan 5 macam transparansi, yakni fragmentasi, lokasi, replikasi, pemetaan lokal, serta pemberian nama. Tansparansi fragmentasi adalah tingkat tertinggi dari distribusi transparansi yang disediakan oleh DDBMS, sehingga user tidak perlu tahu mengenai data yang difragmentasikan. Akses ke database dilakukan berdasarkan pada skema global, sehingga user tidak perlu menspesifikasi nama fragmen atau lokasi datanya. Transparansi lokasi, berada pada tingkat menengah. Dengan transparansi ini, user tidak perlu tahu dimana lokasi dari data tersebut. Transparansi replikasi sama dengan lokasi transparansi, yaitu transparansi untuk menggandakan suatu data tanpa diketahui oleh user.

b. Transparansi Transaksi
Transparansi ini memastikan bahwa semua transaksi terdistribusi menjamin konsistensi dan integritas DDB. Transaksi terdistribusi mengakses data dari banyak tempat. Setiap transaksi dibagi menjadi beberapa sub transaksi, satu untuk mengakses site yang harus diakses, dan direpresentasikan oleh agen/perwakilan.

c. Transparansi Kinerja

Di dalam suatu DDBMS, query processor (QP) harus mengevaluasi setiap permintaan data dan melaksanakan strategi yang optimal, yang terdiri dari suatu urutan operasional yang diperintah pada database. Distributed query prosessor (DQP) memetakan permintaan data ke dalam urutan operasi yang diperintahkan pada database lokal. Hal ini menambah kompleksitas perhitungan fragmentasi, replikasi, dan alokasi schema. DQP harus memutuskan fragmen mana yang akan diakses, salinan fragmen mana yang akan digunakan jika fragmen akan direplikasi, dan lokasi mana akan digunakan.

d. Transparansi DBMS

DDBMS harus terlihat seperti DBMS terpusat untuk penggunanya.

KESIMPULAN
Banyak instansi-instansi pemerintah daerah maupun swasta mengembangkan aplikasi dan database sesuai dengan kebutuhannya sendiri, akibatnya muncul aplikasi dengan beragam platform dan database. Proyek e-KTP berbasis NIK diharapkan menjadi langkah perbaikan yang berarti.




review dari jurnal http://ojs.unud.ac.id/index.php/jik/article/viewFile/2698/1910