Kamis, 04 September 2014

FEEL

Seseorang pernah berkata,
Berhentilah berlari ketika rasa lelah itu merasuki
Aku menjawabnya IYA SAHABAT

Seseorang pernah berkata,
Berhentilah mengejar ketika kau tak sanggup untuk mendekatinya
Aku menjawabnya IYA SAHABAT

Seseorang berkata kembali kepadaku,
Bagaimana jika semua itu TENTANG CINTA
Aku menjawabnya TIDAK SAHABAT
Aku tidak akan pernah lelah dan berhenti ketika aku ingin mendapatkan CINTA ..

                                gimbuL & gembuL
...Meskipun suatu saat aku mulai terhapus sekalipun 
tetapi kau tak akan pernah bisa menghapus apa yang telah terlukis di hatiku tentangMu

Kamis, 02 Januari 2014

Review Jurnal Tema 1 "STUDI DAN IMPLEMENTASI PENGAMANAN BASIS DATA MENGGUNAKAN METODE ENKRIPSI MD5 (Message-Digest Algorihm 5)"

REVIEW JURNAL
STUDI DAN IMPLEMENTASI PENGAMANAN BASIS DATA
MENGGUNAKAN METODE ENKRIPSI MD5  
(Message-Digest Algorihm 5)

Di dalam industri dan penelitian basis  data, data yang tersimpan harus dapat terjamin keamanannya. Pengamanan data sendiri dapat dilakukan dengan dua cara. Cara yang Pertama ialah pengaturan hak akses setiap pengguna oleh administrator basis data. Cara yang kedua ialah pengamanan data dari sisi kandungan data yang tersimpan pada basis data. Pada makalah ini menguraikan implementasi pengamanan data pada basis data  dengan cara yang kedua yaitu dengan menggunakan teknik kriptografi md5. Penelitian (studi) yang dilakukan untuk mencari cara agar md5 dapat dimanfaatkan untuk mengamankan data serta  memberi kemudahan kepada pemilik data untuk mengamankan datanya tanpa perlu mengetahui query-query yang perlu diketikkan atau dijalankan.
Beberapa faktor keamanan dari enkripsi konvesional :
*   Algoritma enkripsi harus cukup kuat agar sulit untuk mendeskripsikan cipher teks dengan dasar cipher teks tersebut.
*   Keamanan dari algoritma enkripsi konvensional bergantung pada kerahasiaan dari kuncinya bukan algoritmanya, dengan kata lain, kita tidak perlu menjaga kerahasiaan dari algoritmanya tetapi cukup dengan kerahasiaan kuncinya.
Dalam penggunaan computer salah satu hal terpenting dalam menjamin kerahasiaan 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 kode atau chiper. Teknik chiper sendiri merupakan suatu sistem yang telah siap untuk di automasi, maka teknik ini digunakan dalam sistem keamanan komputer dan network.
Tinjauan Umum Pada jurnal ini penulis hanya membahas tentang metoda enkripsi dan keamanan proteksi data pada beberapa program-proggram aplikasi umum seperti Ms Word, WordPerfect, Exel, PKZip, akan tetapi fasilitas proteksi terssebut masih mudah untuk dibongkar. Seperti halnya yang dipakai oleh Norton Diskreet yang memproteksi dengan metoda DES ataupun metode “proprietary” yang dianggap lebih cepat, tapi kenyataannya berbicara lain. Berikut penjelasannya :
Ø  Metode DES, mempunyai kesalahan dalam implementasinya yang berpengaruh terhadap keefektifan metode tersebut. Walaupun dapat menerima password sampai 40 karakter, kemudian karakter ini diubah menjadi huruf besar semua dan kemudian di-reduce menjadi 8 karakter. Hal tersebut menyebabkan pengurangan yang sangat besar terhadap kemungkinan kunci enkripsi, sehingga tidak hanya terbatasnya jumlah password yang mungkin, tetapi juga ada sejumlah kunci yang equivalen yang dapat digunakan untuk mendekrip file.d
Kriptografi merupakan suatu bidang ilmu yang mempelajari tentang bagaimana merahasiakan informasi yang penting ke dalam suatu bentuk yang tidak dapat dibaca oleh siapapun serta mengembalikannya kembali menjadi informasi semula dengan menggunakan berbagai teknik yang telah ada sehingga informasi tersebut tidak 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.
Metode Enkripsi MD5 (Message-Digest algorithm 5) adalah fungsi hash (prosedur terdefinisi atau fungsi matematika yang mengubah vaariabel dari suatu data yang berukuran besar menjadi lebih sederhana). Enkripsi dengan MD5 masih mendominasi sebagian besar aplikasi PHP. Enkripsi dianggap strong karena enkripsi yang dihasilkannya bersifat “one way hash”.  Berapapun string yang di enkripsi hasilnya tetap sepanjang 32 karakter.
Hash-hash MD5 sepanjang 128-bit (16-byte), yang dikenal juga sebagai ringkasan pesan, secara tipikal ditampilkan dalam bilangan heksadesimal 32-digit. Berikut ini merupakan contoh pesan ASCII sepanjang 43-byte sebagai masukan dan hash MD5 terkait:
MD5(“The quick brown fox jumps over the lazy dog”) = 9e107d9d372bb6826bd81d3542a419d6
Bahkan perubahan yang kecil pada pesan akan (dengan probabilitas lebih) menghasilkan hash yang benar-benar berbeda, misalnya pada kata “dog”, huruf d diganti menjadi c:  MD5(“The quick brown fox jumps over the lazy cog”) = 1055d3e698d289f2af8663725127bd4b . Hash dari panjang-nol ialah: MD5(“”) = d41d8cd98f00b204e9800998ecf8427e

Teknik Kriptografi pada umumnya menggunakan dua teknik, yaitu : kunci simerik dan kunci asimetrik (public-key).

Massage Digest MD2, MD4, dan MD5 termasuk ke dalam algoritma message-digest, atau kadang juga dikenal dengan hash function. MD5 sebenarnya merupakan perbaikan dari pendahulunya, yaitu MD4. Terdapat 6 perbedaan utama antara MD5 dan MD4, yaitu :
*   Penambahan tahap ke empat
*   Fungsi pada tahap ke-dua diubah dari XY v XZ v YZ menjadi XZ v YZ’
*   Urutan pembacaan input pada tahap ke-dua dan ke-tiga diubah
*   Jumlah pergesaran bit pada setiap tahap tidak ada yang sama
*   Setiap tahap memiliki penambahan konstanta yang unik
Untuk mendapatkan hasil akhir, output dari setiap tahap ditambahkan ke tahap setelahnya.


Tema 1 : Keamanan Basis Data

Selasa, 31 Desember 2013

Review Jurnal Tema 1 "Disaster Recovery using Oracle Data Guard"

Review Jurnal
Disaster Recovery using Oracle Data Guard

Di dalam dunia bisnis  peran IT sangatlah penting guna menunjang kelangsungan bisnis perusahaan tersebut. Penting bagi perusahaan untuk mengemplementasikan konsep high availability (HA) yang berguna untuk melindungi data-data yang merupakan aset terpenting perusahaan. Tujuan proyek akhir ini adalah membangun sistem disaster recovery yang mudah digunakan, murah, komprehensif, efektif, efisien, dan dapat diandalkan serta menjamin ketersediaan data. Dengan menggunakan Oracle Database hasil dari proyek akhir ini intinya berupa sistem Data Guard yang berfungsi melindungi data perusahaan tersebut dari kerusakan, bencana, failure, error, serta perawatan rutin yang menyebabkan database menjadi Down. Data Guard ini memungkinkan ketersedian datanya selama 24 jam per hari, 7 hari per minggu. Dalam sistem Data Guard terdapat dua macam Database, yaitu Database utama (primary Database) dan satu atau lebih Database cadangan (stanby Database) yang akan digunakan jika primary Database mengalami downtime.
Di setiap sistem database, kemungkinan terjadinya failure terhadap sistem dan perangkat keras selalu ada. Maka dari itu perlu mempersiapkan sistem backup untuk menjamin proses operasional harian yang penting bisa tetap berjalan, meskipun primary database sedang mengalami failure.
Berdasarkan survei dari Disaster Recovery Journal (DRJ) penyebab utama kerusakan data yang mengakibatkan sistem mengalami downtime yang tidak direncanakan itu berasal dari hardware and system error (49%), disusul oleh human error (36%), lalu computer viruses (7%), software corruption (4%), dan terakhir natural disaster (3%). Adapula downtime yang di rencanakan, seperti perubahan data, perubahan sistem, perawatan rutin, serta pengembangan sistem.       
Business Continuity Plan (BCP) dan Disaster Recovery Plan (DRP) adalah dua hal yang sangat penting dalam proses bisnis. Secara umum tujuan dari BCP dan DRP adalah menjaga bisnis tetap beroperasi meskipun ada gangguan dan menyelamatkan sistem informasi dari dampak bencana lebih lanjut.
BCP adalah proses otomatis ataupun manual yang dirancang untuk mengurangi fungsi-fungsi penting organisasi, sehingga menjamin kontinuitas layanan bagi operasi yang penting. DRP adalah prosedur yang dijalankan saat BCP berlangsung berupa langkah-langkah untuk penyelamatan dan pemulihan (recovery) khususnya terhadap fasilitas IT dan sistem informasi serta database. Proses perencanaan suatu DRP akan melindungi organisasi dari kegagalan layanan komputer utama, meminimalisasi risiko organisasi terhadap delay dalam penundaan layanan, menjamin keandalan sistem yang tersedia melalui pengujian dan simulasi, serta meminimalisasi pengambilan keputusan olehmanusia selama bencana.
Konsep Oracle Data Guard dapat menjamin high availability, data protection, dan disaster recovery bagi data perusahaan. Jika production database mengalami downtime karena sebab tertentu, maka Data Guard             akan mengalihkan tugas dan fungsinyakepada stanby database, sehingga downtime dapat di minimalisir. Dengan Data Guar, administrator juga dapat dengan bebas meningkatkan performance dari production database dengan menyerahkan backup dan operasi reporting kepada stanby database.
Oracle database beroperasi pada salah satu dari dua role, yaitu primary dan stanby. Dengan Data Guard role dapat diubah dengan melakukan operasi switchover atau failover. Switchover adalah operasi penukaran role antara  primary database dengan salah satu dari stanby database. Biasanya dilakukan untuk alasan perawatan rutin atau perawatan lain yang telah direncanakan. Operasi ini menjamin tidak ada data yang hilang. Selama switchoveri, primary database beroperasi pada stanby role dan stanby database beroperasi pada primary role.
Operasi failover dilakukan hanya pada saat primary database mengalami downtime yang tidak direncanakan. Misalnya terjadi Hardware failure atau bencana alam. Operasi ini membuat stanby database beroperasi pada primary role. Database  administrator dapat melakukan konfigurasi agar Data Guard dapat menjamin tidak ada data yang hilang.
Data Guard Broker adalah manajemen framework terdistribusi yang digunakan untuk mengotomatisasi pembuatan, pengelolaan, dan pengawasan sistem Data Guard. Data Guard Broker secara logis mengelompokkan primary dan stanby database dalam sebuah broker configuration sehingga keduanya dapat dikelolabersama sebagai unit yang terintregrasi. Manajemen broker configuration dapat dilakukan baik secara local maupun remote dengan Oracle Enterprise Manager Grid Control graphical user interface (GUI) atau Data Guard command-line interface (DGMGRL).
Oracle Data Guard menyediakan tiga jenis mode proteksi yang dapat diterapkan sesuai dengan kondisi yang paling cocok dengan kriteria masing-masing mode. Mode proteksi pertama adalah maximum protection. Mode ini menjamin tidak ada data yang hilang jika primary database mengalami downtime. Mode proteksi kedua adalah  maximum availability yang mampu menyediakan perlindungan data level tinggi tanpa menggangu atau membahayakan availabilitas dari primary database. Mode proteksi ketiga adalah maximum performance yang merupakan mode default, juga menyediakan perlindungan data level tinggi tanpa mempengaruhi performance dari primary database.
  Perbedaan metode Recovery Data Guard dengan cara konvensioanal. Proses recovery konvensional pada dasarnya terdiri dari backup, restoration, serta recovery. Dibutuhkan langkah yang panjang untuk melakukan ketiga proses tersebut. Sementara Oracle Data Guard menawarkan metode recovery yang lebih sederhana dan mudah. Pada proses ini cukup melakukan satu kali konfigurasi yang dilakukan di awal, yaitu pada saat sistem data Guard dibangun. Proses backup dilakukan secara otomatis dengan pengiriman redo data. Ketika terjadi failure, tidak perlu melakukan proses restorasi dan recovery seperti cara konvensional. Data Guard hanya tinggal melakukan proses switchover atau failover.
Perencanaan sistem dalam proyek ini diasumsikan bahwa DBA     dari PENS-ITS memutuskan untuk mengimplementasikan Oracle Data Guard guna melindungi Oracle database institusi tersebut. Manajemen sistem data Guard dilakukan dengan menggunakan perintah-perintah SQL baik melalui Enterprise Manager Grid Control maupun melalui SQL*Plus. Untuk merealisasikan hal tersebut dibuat satu primary database dan satu stanby database. Setelah itu dilakukan pemeriksaan dan pengujian terhadap konfigurasi yang kemudian diberlakukan mode proteksi maximum availability yang mampu menyediakan proteksi data pada tingkat yang paling tinggi tanpa membahayakan primary database. Lalu hal terakhir yang perlu dilakukan adalah menguji sistem dengan cara menambahkan datafile pada primary database serta memasukkan data baru pada salah satu tabel dalah skema HR. Apabila pada stanby database terdapat data yang baru saja dimasukkan melalui primary database, maka sistem Data Guard dapat dikatakan berhasil dibangun. Semua cara pelaksanaan pembangunan telah dijelaskan di dalam jurnal.
Dalam proses penelitian yang dilakukan, penyusun mengalami kesulitan pada saat mengatur konfigurasi, terutama saat mengintegrasikan primary server dengan stanby server. Namun setelah kedua server tersambung dan dapat berkomunikasi, konfigurasi menjadi lebih mudah. Setelah seluruh konfigurasi telah dilakukan dan sistem Data Guard berhasil dibangun, manajemen dan penggunaan sistem ternyata mudah, sederhana dan cukup user-friendly.
Kesimpulan setelah dilakukan percobaan dan analisa terhadap kinerja sistem adalah sebagai berikut :
1.      Implementasi sistem Data Guard terbagi menjadi dua bagian, yaitu pembuatan dan penggunaan. Proses pembuatan dilakukan dengan hati-hati karena cukup rumit. Kesalahan pada proses ini dapat berakibat buruk pada kinerja sistem. Namun setelah pembuatan berhasil, pengguna dan manajemen sistem sangat nudah dan sederhana terutama dalam hal recovery data.
2.      Metode recovery Data Guard dapat menggantikan metode recovery konvensional yang menghabiskan banyak waktu. Dengan Data Guard, downtime dapat diminimalisir hingga kurang dari 10 detik.
3.      Penggunaan Data Guard Broker sangat membantu dalam pengelolaan sistem, karena dapat di kontrol ssecara terpusat melalui satu interface,
4.      Data Guard merupakan solusi yang murah tetapi tetap efektif dan dapat diandalkan untuk menjamin ketersediaan data.

Tema 1 : Recovery


Rabu, 09 Oktober 2013

KEY dan SQL

KEY dan SQL
Kunci (key) adalah kolom/atribut atau kombinasi kolom/atribut yang dapat digunakan untuk mengidentifikasi baris dalam tabel (entitas) secara unik.
Penentuan Key suatu tabel didasarkan pada sifat “determinasi”.     
Determinan : gugus atribut dimana satu atau lebih atribut lain tergantung secara fungsional.
“A determinan B” artinya apabila nilai atribut A akan menentukan nilai-nilai atribut B.
“A determinan B” dapat dituliskan sebagai suatu ketergantungan fungsional A à B. Jika A menentukan B,C dan D maka dituliskan A à B,C,D. Contoh : Relasi Mahasiswa=(NIM,Nama,Agama,TglLhr) Bila nilai NIM seorang mahasiswa diketahui maka dapat digunakan untuk melihat nilai-nilai atribut Nama, Agama dan Tanggal Lahirnya. Dituliskan NIM à Nama,Agama,TglLhr.
Superkey (key) :
-           gugus atribut entitas yang dapat digunakan untuk mengidentifikasikan       entitas/obyek secara unik.
-           satu atau lebih atribut yang membedakan setiap baris secara unik.
Misal R skema relasi, dan K adalah satu atau lebih atribut dari R
dimana K Í R maka K disebut Superkey jika dan hanya jika K à R.
Catatan : Suatu skema relasi dapat memiliki lebih dari 1 superkey.  Bila K adalah superkey maka semua atribut gabungan yang mengandung K juga merupakan superkey    
Contoh : Relasi Sopir=(NoKTP,NoSIM,Nama,Alamat). Alternatif superkey :
§   NoKTP            superkey ;        NoKTP à Sopir
§   NoSIM            superkey ;        NoSIM à Sopir
§   (NoKTP,NoSIM)        superkey ;        (NoKTP,NoSIM) à Sopir
§   (NoKTP,Nama)           superkey ;        (NoKTP,Nama) à Sopir
§   (NoKTP,NoSIM,Nama)          superkey ;        (NoSKTP,NoSIM,Nama) à Sopir
§   (NoKTP,NoSIM,Nama,Alamat) dengan sendirinya juga superkey
§   Nama bukan superkey. Demikian juga (Nama,Alamat) juga bukan superkey

Candidate Key :
- Superkey dengan jumlah atribut minimal
- Superkey tanpa redundansi (tidak memuat subset superkey yang lain)
K adalah Candidate Key dari skema relasi R jika dan hanya jika :
K à R dan tidak terdapat a Ì K dengan a à R
Contoh :
Skema relasi Sopir=(NoKTP,NoSIM,Nama,Alamat). Alternatif superkey :
§    NoKTP                                    superkey ;        NoKTP à Sopir
§    NoSIM                                    superkey ;        NoSIM à Sopir
§    (NoKTP,NoSIM)                    superkey ;        (NoKTP,NoSIM) à Sopir
§    (NoKTP,Nama)                       superkey ;        (NoKTP,Nama) à Sopir
§    (NoKTP,NoSIM,Nama)         superkey ;        (NoSKTP,NoSIM,Nama) à Sopir
§    (NoKTP,NoSIM,Nama,Alamat) dengan sendirinya juga superkey
Sebagai Candidate Key nya adalah NoKTP atau NoSIM

Secondary Key
  • Secondary Key adalah atribut (atau kombinasinya), yang digunakan
            sebagai perantara untuk mendapatkan kembali data asal.
  • Biasanya dipakai pada pencarian data (data retrieval).
Foreign Key

  • Foreign Key adalah satu atau lebih atribut dalam satu tabel yang merupakan primary key tabel lain (kunci penghubung).
SQL
(Structure Query Language)

DDL (Data Definition Language)
         Create Tables
CREATE TABLE table (An Dn, An Dn, .., An Dn)
Membuat Tabel Siswa :
( NISN char(6) , nama_siswa char(30),  tgl_lahir date(), tempat_lahir char (30), KLS char(2), alamat char(30),              nama_ortu_wali char(30))
Keterangan :
tabel = nama tabel yang akan dibuat
A1..An = atribut atau variabel field
D1, Dn= tipe data untuk A1..An
         Create Indexes
Index adalah struktur data eksternal yang digunakan untuk mengurutkan atau mengatur pointer data dalam sebuah table.
Peringatan :
Jika kita menggunakan beberapa index pada suatu tabel akan menunjukkan penurunan performa dikarenakan extra overhead dalam pemeliharaan indexnya.
Selian itu :
Banyak menggunakan index dapat menyebabkan masalah penguncian record, bila digunakan dalam peralatan multiuser.
Dengan demikian :
Gunakanlah index dalam konteks yang benar, sebuah index dapat memperbaiki performa lebih tinggi sebuah aplikasi. 
Gunakan pernyataan CREATE INDEX untuk membuat index.
Structure pembuatan index adalah :
CREATE INDEX nama_index   
ON  nama_tabel (nama_field)

CREATE INDEX idxCustomerID     
ON tblCustomers
(CustomerID) WITH PRIMARY

CREATE UNIQUE INDEX nama_index   
ON  nama_tabel (nama_field)
         Altering Tables
ALTER TABLE tabel
ADD | MODIFY (An dn, An dn, .., An dn);
Menghapus Field :
ALTER TABLE tblCustomers   
DROP COLUMN Address
         Dropping Tables/Indexes
Untuk menghapus index :
DROP INDEX nama_index   
ON  nama_tabel
Untuk menghapus Tabel :
DROP TABLE nama_tabel 

DML ( Data Manipulation Language)
          Insertion : Menyisipkan data record ke  dalam suatu tabel
INSERT INTO tabel (A1, A2, .., An )
VALUES (C1, C2, …,Cn-1, Cn)
         Updating : Memperbaiki data record dalam suatu tabel
UPDATE  tabel
SET  assignments
WHERE Criteria
          Deletion  : Menghapus data record pada  suatu tabel
DELETE FROM    Tabel
WHERE Criteria
          Selection : Menampilkan data record dari  suatu table
SELECT A1, A2, ………,An-1, An
FROM    T1, T2, ………,Tn-1, Tn
WHERE Criteria
GROUP BY A1, A2, ………,An-1, An
HAVING Criteria_Agregate_function
ORDER BY Criteria_A   

CDL (Control Definition Language)
         GRANT : Memberikan otoritas (hak akses) manipulasi data pada suatu tabel (database) kepada user
GRANT <otoritas> ON <nm_tabel> TO <user_name>
Grant Type :
                        insert ,             select,
                        update ,          delete ,            all
         REVOKE : Mencabut otoritas (hak akses) manipulasi data pada suatu tabel (database) dari user
REVOKE <otoritas> ON <nm_tabel> FROM <user_name>
Revoke Type :
                        insert ,             select,
                        update ,          delete ,            all

Mengenai Saya

Foto saya
Saya mahasiswa di Universitas Dian Nuswantoro Semarang. Semoga artikel yang saya postingkan dapat menambah informasi pengetahuan dan menambah pembelajaran hidup anda. Terima Kasih kepada anda yang telah mengunjungi blog ini. --brain--