Integritas Data

PENDAHULUAN

Dalam proses mengolah bukti digital diperlukan juga untuk menjaga integritas data. Hal ini bertujuan untum melindungi keaslian data selama proses backup dan imaging. Selain itu juga untuk terpeliharanya keaslian data tersebut pada saat diajukan sebagai baran bukti digital pada persidangan agar tidak ada data-data yang berubah, sekalipun misalnya ada yang berubah maka masih ada yang aslinya.
Integritas data adalah jaminan konsistensi data terhadap semua status konstrain yang diberlakukan terhadap data tersebut, sehingga memberikan jaminan keabsahan data itu sendiri. Integritas data sangat erat kaitannya dengan keamanan keberadaan data, dimana dapat terjadi secara institusional atau asidental.
Integritas data sangat penting didalam operasi database tertentu dan umumnya pada data pergudangan dan bisnis intelijens. Karena integritas data dapat memastikan keakuratan, konsistensi, aksesibilitasi, dan kualitas tinggi dari sebuah data, sehingga sangat penting untuk mengikuti aturan pengintegritasan suatu data.
Data yang memiliki integritas identik dipertahankan selama operasi apapun (seperti bisnis transfer, penyimpanan, atau pengambilan). secara sederhana dalam istilah bisnis, integritas data adalah jaminan bahwa data konsisten, bersertifikat dan dapat dirujukkan.
Sebenarnya dalam pengelolaan integritas data sendiri itu termasuk kedalam ilmu kriptografi. Karena ilmu kriptografi menurut Bruce Schuneir ilmu dan seni untuk menjaga kerahasiaan berita. Selain itu juga ilmu kriptografi adalah ilmu yang mempelajari teknik-teknik matematika yang berhubungan dengan aspek keamanan informasi seperti kerahasiaan data, keabsahaan data, integritas data, serta autentikasi data.
Keuntungan menggunakan Integritas data :
• Lebih murah dan mudah menjaga data integrity di level database dibandingkan dengan aplikasi lain.
• Bugs akibat isi database yang tidak valid sulit untuk ditemukan(dapat muncul dikemudian hari.)

PEMBAHASAN
Integritas data dapat di kelompokkan sebagai berikut:
1. Entity Integritas
Entity integritas mendefenisikan sebuah baris sebagai sebuah entitas yang unik untuk suatu tabel. Entity integritas memaksa integritas dari colum atau primary key dari suatu tabel (melalui index,unique,constrains,primarykey) tidak boleh null.
2. Domain integritas
Domain Integritas merupakan validasi dari masukan untuk sebuah kolom. Anda dapat memaksa domain integritas dengan membatasi tipe (melalui data types), format (melalui check constraints dan rules), atau range nilai-nilai yang mungkin (melalui Foreign Key Constraints, Check Constraints, Default Definitions dan rules).
3.Refferential Integritas
Refferential integritas memastiakn bahwa seluruh nilai dari foreign key cocok dengan nilai primary key yamng dihubungkan.
4. User Defined integritas
User defined integritas mengizinkan kita untuk menentukan spesific business rules sendiri yang tidak sama pada kategori integrity yang lain
Cara paling umum untuk menjaga integritas data adalah pemakaian property kolom (field). Properti kolom yang paling sederhana adalah tipe dan ukuran data dan dapat mengontrol jenis ukuran data yang dimasukkan. Tipe data dapat dipakai untuk menjamin integritas data, karena data yang dimasukkan atau data hasil perubahan harus sesuai dari tipe dari objek kolom tabel. Tipe-tipe rule yang menjamin integritas data di dalamnya yaitu :
• PRIMARY KEY
PRIMARY KEY atau Kunci Utama dalam sebuah tabel merupakan kunci yang akan membatasi pengisian record dalam sebuah tabel agar tidak duplikat (redundant). Syarat sebuah kolom/ field dijadikan PRIMARY KEY dalam sebuah tabel adalah unik dan tidak boleh kosong (NOT NULL). Artinya bahwa nilai record-record dalam kolom yang dijadikan PRIMARY KEY haruslah unik satu sama lain dan nilainya tidak boleh di kosongkan. Jika sebuah kolom di beri constraint PRIMARY KEY maka sudah pasti kolom tersebut nilainya tidak boleh kosong atau harus berisi data.
• FOREIGN KEY
FOREIGN KEY atau KUNCI TAMU merupakan kunci yang digunakan sebagai penghubung antara satu tabel dengan tabel lainnya. Jika sebuah tabel memiliki FOREIGN KEY maka tabel tersebut dapat di sebut juga dengan tabel kedua dimana tabel utamanya adalah tabel yang memiliki kolom PRIMARY KEY dari FOREIGN KEY tersebut.
• UNIQUE
UNIQUE merupakan sebuah constraint yang akan membatasi pengisian record yang sama kedalam sebuah kolom jika kolom tersebut di berikan constraint UNIQUE dalam sebuah tabel. Constraint ini hampir sama dengan PRIMARY KEY, yaitu menjamin bahwa setiap nilai record yang ada dalam sebuah kolom UNIQUE tidak boleh ada yang sama (unik satu sama lain). UNIQUE dapat dibuat pada level kolom ataupun level tabel. Sama dengan constraint PRIMARY KEY, FOREIGN KEY, CHECK.
• NOT NULL
NOT NULL merupakan constraint yang digunakan untuk menjamin pengisian record ke sebuah tabel agar nilai record tersebut harus berisi data. Sebuah kolom jika di berikan constraint NOT NULL, maka kolom tersebut harus berisikan nilai untuk recordnya dan tidak boleh di kosongkan. NOT NULL hanya bisa di definisikan dalam sebuah tabel pada level kolom dan tidak bisa pada level tabel. Perbedaan antara NOT NULL dan PRIMARY KEY adalah bahwa setiap kolom yang dijadikan PRIMARY KEY pasti NOT NULL dan tidak berlaku sebaliknya.
• CHECK
CHECK merupakan constraint yang memaksa integritas domain dengan membatasi pemasukan nilai yang mungkin di masukkan ke dalam sebuah kolom atau beberapa kolom. Hampir sama dengan constraint FOREIGN KEY dalam hal bagaimana mengendalikan nilai yang akan di masukkan kedalam sebuah kolom. Perbedaannya adalah pada bagaimana keduanya menentukan nilai mana yang valid. FOREIGN KEY mendapatkan daftar nilai valid dari tabel yang lain, sementara CHECK menentukan nilai valid dari ekspresi logika yang tidak menggunakan data yang berdasarkan data pada kolom yang lain.
Selama backup dan imaging, integritas media asli harus dipelihara. Untuk memastikan bahwa proses backup atau imaging tidak merubah data pada media yang asli, analis dapat menggunakan write-blocker ketika memback-up atau mengimage media. Write-blocker adalah tool hardware atau software yang mencegah komputer menulis ke media penyimpanan komputer yang terhubung dengannya. Write-blocker hardware secara fisik terhubung ke komputer dan media penyimpanan yang sedang diproses untuk mencegah penulisan apapun ke media tersebut. Write-blocker software diinstalasi pada sistem analis dan saat ini hanya tersedia sistem MS-DOS dan Windows. (Beberapa sistem operasi, misalnya Mac OS dan Linux, mungkin tidak memerlukan write-blocker software karena mereka dapat diset untuk boot ke device sekunder yang belum dikaitkan).
Bagaimanapun, memasang suatu alat perangkat keras writeblocking akan memastikan terpeliharanya integritas. Software write-blocker berbasis MS-DOS bekerja dengan menjebak Interrupt 13 dan extended Interrupt 13 disk write. Software write-blocker berbasis Windows menggunakan filter untuk mengurutkan Interrupt yang dikirim ke alat untuk mencegah penulisan ke media penyimpanan.
Secara umum, ketika menggunakan write-blocker hardware, device atau media yang digunakan untuk membaca media harus terhubung langsung ke write-blocker, dan write-blocker harus dihubungkan ke komputer atau device yang digunakan untuk
melakukan backup. Ketika menggunakan write-blocker software, softwarenya harus sudah ada dalam komputer sebelum alat atau media yang digunakan untuk membaca media dihubungkan ke komputer itu. Write-blocker dapat juga mengijinkan write-blocking untuk diset on atau off bagi alat tertentu. Hal tersebut penting ketika write-blocking digunakan, ia harus diset on untuk semua alat yang dihubungkan. Write-blocker juga harus diuji secara rutin untuk memastikan bahwa mereka mendukung alat lebih baru.
Setelah suatu backup atau imaging dilakukan, penting untuk memverifikasi bahwa data yang disalinkan adalah salinan yang tepat dari data asli. Menghitung message digest data yang disalin dapat digunakan untuk memverifikasi dan memastikan integritas data. Sebuah message digest adalah sebuah hash yang secara unik mengidentifikasi data dan memiliki sifat yaitu merubah satu bit data akan menghasilkan message digest yang berbeda sama sekali. Terdapat banyak algoritma untuk menghitung message digest data, namun dua buah yang umum digunakan adalah MD5 dan SHA1. Kedua algoritma ini mengambil data masukan dengan ukuran sembarang dan menghasilkan 128-bit message digest untuk MD5, sedangkan SHA1 menghasilkan 160-bit message digest.
Ketika dilakukan image bit stream, message digest media asli perlu dihitung dan disimpan sebelum image dilakukan. Setelah proses imaging, message digest media salinan perlu dihitung juga dan dibandingkan dengan message digest asli untuk memverifikasi bahwa integritas data telah dipelihara. Message digest media asli kemudian perlu dihitung kembali untuk memastikan bahwa proses imaging tidak merubah media asli, dan seluruh hasil harus didokumentasikan. Proses harus dilakukan untuk backup logikal, kecuali bahwa message digests harus dihitung dan dibandingkan untuk setiap file data. Untuk stream images dan logical backups, message digests dibuat untuk memastikan bahwa integritas data harus disimpan pada media read-only atau write-once atau dicetak lalu diamankan pada lokasi yang tepat.

MD5 dan SHA-1
Hash adalah suatu teknik “klasik” dalam Ilmu Komputer yang banyak digunakan dalam praktek secara mendalam. Hash merupakan suatu metode yang secara langsung mengakses record-record dalam suatu tabel dengan melakukan transformasi aritmatik pada key yang menjadi alamat dalam tabel tersebut. Key merupakan suatu input dari pemakai di mana pada umumnya berupa nilai atau string karakter. Pelacakan dengan menggunakan Hash terdiri dari dua langkah utama, yaitu:
1. Menghitung Fungsi Hash.
Fungsi Hash adalah suatu fungsi yang mengubah key menjadi alamat dalam tabel. Fungsi Hash memetakan sebuah key ke suatu alamat dalam tabel. Idealnya, key-key yang berbeda seharusnya dipetakan ke alamat-alamat yang berbeda juga. Pada kenyataannya, tidak ada fungsi Hash yang sempurna. Kemungkinan besar yang terjadi adalah dua atau lebih key yang berbeda dipetakan ke alamat yang sama dalam tabel. Peristiwa ini disebut dengan collision (tabrakan). Karena itulah diperlukan langkah berikutnya, yaitu collision resolution (pemecahan tabrakan).
2. Collision Resolution.
Collision resolution merupakan proses untuk menangani kejadian dua atau lebih key di-hash ke alamat yang sama. Cara yang dilakukan jika terjadi collision adalah mencari lokasi yang kosong dalam tabel Hash secara terurut. Cara lainnya adalah dengan menggunakan fungsi Hash yang lain untuk mencari lokasi kosong tersebut.

MD5
Fungsi hash yang paling banyak digunakan dalam keamanan jaringan komputer dan internet adalah MD5 yang dirancang oleh Ron Rivest yang juga merupakan salah satu pengembang algoritma RSA pada tahun 1991. MD5 merupakan kelanjutan daru MD4 yang dirancang dengan tujuan keamanan. Secara perhitungan matetamatis tidak dimungkinkan untuk mendapatkan dua pesan yang memiliki hash yang sama. Tidak ada serangan yang lebih efisien untuk membongkar/mengetahui hash suatu pesan selain brute-force.
MD5 adalah salah satu dari rangkaian algoritma yang diciptakan oleh seorang Professor di MIT bernama Ronald Rivest (Rivest, 1992). Beliau menciptakan MD5 karena algoritma sebelumnya telah dianggap tidak aman, yaitu MD4. Den Boer dan Bosselaers menemunakan bentrokan pada MD5. Yaitu dua pesan yang berbeda yang menghasilkan digest yang identik pada tahun 1993. Pada tahun 1996, Dobbertin mengumumkan fungsi compression bentrokan untuk MD5. Hal ini tidak menyebabkan MD5 jadi dikatakan tidak aman. Namun, cukup untuk membuat para pakar kriptografi untuk mengusulkan pengganti, yaitu SHA-1 [2]. Ukuran hash (128 bit) cukup kecil untuk dilakukan bitrhday attack.
Birthday attack adalah serangan yang ditujukan pada MD5 untuk mendapatkan bentrokan sebuah digest. Fungsi salt dimanfaatkan untuk membuat hacker lebih kesulitan untuk memecahkan kata sandi seseorang. Fungsi salt memanfaatkan lebih dari sekedar password untuk dibuatkan digest.

CARA KERJA MD5
MD5 mengolah blok 512 bit, dibagi kedalam 16 subblok berukuran 32 bit. Keluaran algoritma diset menjadi 4 blok yang masing-masing berukuran 32 bit yang setelah digabungkan akan membentuk nilai hash 128 bit. Pesan diberi tambahan sedemikian sehingga panjang menjadi k-bit, dimana k = 512n – 64 bit. n merupakan blok masukan. Tambahan ini diperlukan hingga pesan menjadi k bit. Kemudian 64 bit yang masing kosong, dibagian akhir, diisi panjang pesan. Inisiasi 4 variabel dengan panjang 32 bit yaitu a,b,c,d. Variabel a,b,c,d dikopikan ke variabel a,b,c,d yang kemudian diolah melalui 4 tahapan yang sangat serupa. Setiap tahapan menggunakan 16 kali operasi berbeda, menjalankan fungsi nonlinear pada tiga variabel a,b,c, atau d. Hasilnya ditambahkan ke variabel keempat, subblok pesan dan suatu konstanta.
Kemudian dirotasi kekiri beberapa bit yang kemudian ditambahkan ke salah satu dari a,b,c, atau d. Kemudian nilai a,b,c, dan d menggantikan nilai a,b,c, dan d. Kemudian dikeluarkan output yang merupakan gabungan dari a,b,c, dan d. Fungsi kompresi yang digunakan oleh algoritma MD5 adalah sebagai berikut :
a ← b + (( a + g ( b,c,d) + X[k] + T[i] <<< s ), dimana g adalah salah fungsi primitif F,G,H,I seperti dibawah ini :

dan operasi XOR, AND, OR, dan NOT adalah sebagai berikut :

SHA
SHA dikembangkan oleh National Institute of Standards and Technology ( NIST ) dan National Security Agency ( NSA ) sebagai komponen Digital Signature Standart ( DSS ) . Standart hash adalah Secure Hash Standart ( SHS ) dengan SHA sebagai algoritma yang digunakan. SHS menetapkan SHA yang diperlukan untuk menjamin keamanan Digital Signature Algorithm ( DSA ).
SHA-1 adalah salah satu dari rangkaian algoritma yang diciptakan United States National Security Agency. SHA adalah singkatan dari Secure Hash Algorithm. Dari semua jenis SHA yang ada, SHA-1 adalah yang paling umum digunakan. SHA-1 sudah digunakan dalam berbagai macam aplikasi dan protokol. Pada tahun 2005, kriptanalis menemukan beberapa serangan yang mengatakan bahwa SHA-1 kemungkinan tidak cukup aman untuk terus digunakan.
SHA terdiri dari : SHA-0, SHA-1, SHA-2, SHA-3 dan juga SHA-256, SHA-384 dan SHA-512.
SHA-1 menghasilkan digest sebesar 160-bit. Asal-usul SHA-1 adalah dari prinsip-prinsip yang mirip dengan yang digunakan oleh Ronald L. Rivest untuk algoritma MD4 dan MD5.
SHA – 1
Sebuah versi revisi dari SHA sebagai FIPS 180-1 pada tahun 1995 dan secara umum dikenal sebagai SHA-1.
CARA KERJA SHA – 1
Pesan diberi tambahan untuk membuat panjangnya menjadi kelipatan 512 bit ( l x 512 ). Jumlah bit asal adalah k bit. Tambahkan bit secukupnya sampai 64 bit kurangnya dari kelipatan 512 ( 512 – 64 = 448 ), yang disebut juga kongruen dengan 448 ( mod 512 ). Kemudian tambahkan 64 bit yang menyatakan panjang pesan. Inisiasi 5 MD variabel dengan panjang 32 bit yaitu a,b,c,d,e. Pesan dibagi menjadi blok-blok berukuran 512 bit dan setiap blok diolah. Kemudian keluaran setiap blok digabungkan dengan keluaran blok berikutnya, sehingga diperoleh output ( diggest ). Fungsi kompresi yang digunakan oleh algoritma SHA-1 adalah sebagai berikut : A,b,c,d,e ← ( e + f(t,b,c,d) + s5(a) + wt + kt),a,s30(b),c,d.

PERBANDINGAN SHA-1 DAN MD5
1. Karena SHA-1 dan MD5 dikembangkan atau diturunkan dari MD4 maka keduanya mempunyai kemiripina satu sama lain, baik kekuatan dan karakteristiknya. Keamanan terhadap serangan brute-force. Hal yang paling penting adalah bahwa SHA-1 menghasilkan diggest 32-bit lebih panjang dari MD5. Dengan brute-force maka SHA-1 lebih kuat dibanding MD5.
2. Keamanan terhadap kriptanalisis. Kelemahan MD5 ada pada design sehingga lebih mudah dilakukan kriptanalisis dibandingkan SHA-1
3. Kecepatan. Kedua algoritma bekerja pada modulo 232 sehingga keduanya bekerja baik pada arsitektur 32 bit. SHA-1 mempunyai langkah lebih banyak dibandingkan MD5 ( 80 dibanding MD5 64 ) dan harus memproses 160 bit buffer dibanding DM5 128 bit buffer, sehingga SHA-1 bekerja lebih lambat dibanding MD5 pada perangkat keras yang sama.
4. Simplicity. Kedua algoritma simple untuk dijelaskan dan mudah untuk diiemplementasikan karena tidak membutuhkan program yang besar atau tabel subtitusi yang besar pula.
5. Little-endian Versus Big-endian Arsitektur. MD5 menggunakan skema little-endian, sedangkan SHA-1 menggunakan skema big-endian. Keduanya tidak memberikan keuntungan yang signifikan untuk SHA-1 maupun MD5.

KESIMPULAN
Integritas data sangat penting didalam operasi database tertentu dan umumnya pada data pergudangan dan bisnis intelijens. Karena integritas data dapat memastikan keakuratan, konsistensi, aksesibilitasi, dan kualitas tinggi dari sebuah data, sehingga sangat penting untuk mengikuti aturan pengintegritasan suatu data. Keuntungan menggunakan Integritas data :
• Lebih murah dan mudah menjaga data integrity di level database dibandingkan dengan aplikasi lain.
• Bugs akibat isi database yang tidak valid sulit untuk ditemukan(dapat muncul dikemudian hari.)
Selama backup dan imaging, integritas media asli harus dipelihara. Untuk memastikan bahwa proses backup atau imaging tidak merubah data pada media yang asli, analis dapat menggunakan write-blocker ketika memback-up atau mengimage media. Write-blocker adalah tool hardware atau software yang mencegah komputer menulis ke media penyimpanan komputer yang terhubung dengannya.
Terdapat banyak algoritma untuk menghitung message digest data, namun dua buah yang umum digunakan adalah MD5 dan SHA1. Kedua algoritma ini mengambil data masukan dengan ukuran sembarang dan menghasilkan 128-bit message digest untuk MD5, sedangkan SHA1 menghasilkan 160-bit message digest.

DAFTAR PUSTAKA
http://tumbur-manurung.blogspot.com/2011/10/integritas-data-pada-oracle.html

Integritas Data Dalam Basis Data


http://id.wikipedia.org/wiki/Kriptografi

Click to access SI433-071046-594-4.pdf

Click to access SI433-071046-594-4.pdf

http://ruanghanafi.blogspot.com/2013/06/integritas-data-concurency-transaksi.html

Click to access Kris%20integritas%20data.pdf

http://catatanbangjack.blogspot.com/2013/10/integritas-data-dalam-basis-data.html

Click to access Cover.pdf

Selain reverensi di atas, juga dapat didownload reverensi yang saya gunakan pada link di bawah ini :
http://www.4shared.com/office/7ZS34UFX/KOMPUTER_FORENSIK.html

http://www.4shared.com/office/_6FobFKZ/jbptunikompp-gdl-aliffinand-23.html

http://www.4shared.com/office/ppuzimxf/integritas-data.html

http://www.4shared.com/office/jVM6mGFg/538-1050-1-PB.html

http://www.4shared.com/office/GqRZtXny/SI433-071046-594-4.html

Dapat juga mendownload hasil tulisan saya pada link berikut ini :
http://www.4shared.com/office/IxEwXJM_/Integritas_File_Data.html

Semoga dapat bermanfaat.