Institutional Repository | Satya Wacana Christian University: Perancangan dan Implementasi Translucent Database Menggunakan Algoritma Kriptografi Rivest Code 6 (RC6) pada Data Personal Pegawai Sekolah: studi kasus SMA Kristen Payeti Waingapu

  

Perancangan dan Implementasi Translucent Database

Menggunakan Algoritma Kriptografi Rivest Code 6 (RC6)

pada Data Personal Pegawai Sekolah

(Studi Kasus: SMA Kristen Payeti Waingapu)

  

Artikel Ilmiah

Peneliti:

Reinhart Yohanis Sitaniapessy (672008249)

  

Magdalena A. Ineke Pakereng, M.Kom.

  

Program Studi Teknik Informatika

Fakultas Teknologi Informasi

Universitas Kristen Satya Wacana

Salatiga

  

November 2014

  

Perancangan dan Implementasi Translucent Database

Menggunakan Algoritma Kriptografi Rivest Code 6 (RC6)

pada Data Personal Pegawai Sekolah

(Studi Kasus: SMA Kristen Payeti Waingapu)

  

Artikel Ilmiah

Diajukan kepada

Fakultas Teknologi Informasi

untuk memperoleh Gelar Sarjana Komputer

  

Peneliti:

Reinhart Yohanis Sitaniapessy (672008249)

Magdalena A. Ineke Pakereng, M.Kom.

  

Program Studi Teknik Informatika

Fakultas Teknologi Informasi

Universitas Kristen Satya Wacana

Salatiga

  

November 2014

  

Lembar Persetujuan

  

Database Menggunakan Algoritma Kriptografi Rivest Code

6 (RC6) pada Data Personal Pegawai Sekolah

Studi Kasus : SMA Kristen Payeti Waingapu

1

2 Reinhart Yohanis Sitaniapessy , Magdalena A. Ineke Pakereng

  

Fakultas Teknologi Informasi

Universitas Kristen Satya Wacana

Jl. Diponegoro 52-60, Salatiga 50711, Indonesia

1

2 E-mail: [email protected] , [email protected]

  

Abstract

Data security is an integral part of any system that uses the validity and privacy of

data, especially if it involves a lot of interested parties. The form of data storage in a

database format is also one of the many forms of data handling is applied. High levels of

efficiency, better data management, extensive support, and of course, a high level of security,

are the criteria that need to be owned by a good database program. Translucent databases

can be used as a solution of the problem. Translucent databases is a method for securing

personal data is to encrypt the original data of employees, thus those who illegally enter the

system can not determine the original data. This method has several features that can be

used, among others, the RC6 encryption algorithm, ignorance, and data stunt. The results of

this study are an application for data processing school employee, which encode a school

employee personal data, so it can provide security in an employee database.

  Keywords: Translucent database, RC6, Cryptography

Abstrak

  Keamanan data merupakan bagian integral dari setiap sistem yang menggunakan

validitas dan privacy data, khususnya apabila melibatkan banyak pihak yang berkepentingan.

Bentuk penyimpanan data dalam format database juga merupakan salah satu bentuk

penanganan data yang banyak diterapkan. Tingkat efisiensi yang tinggi, manajemen data

yang baik, dukungan yang luas, dan tentunya, tingkat keamanan yang tinggi, merupakan

kriteria yang perlu dimiliki oleh program database yang baik. Solusi masalah tersebut adalah

metode translucent database. Metode translucent database adalah metode khusus untuk

mengamankan data personal. Translucent database dapat menyandikan data asli pegawai,

dan pihak yang masuk sistem secara ilegal tidak dapat mengetahui data aslinya. Metode ini

memiliki beberapa fitur yang dapat digunakan antara lain yaitu enkripsi menggunakan

algoritma RC6, ignorance, dan stunt data. Hasil dari penelitian ini adalah sebuah aplikasi

untuk mengolah data pegawai sekolah, yang menyandikan data pribadi pegawai sekolah,

sehingga dapat memberikan pengamanan dalam database pegawai. 1 Kata Kunci: Translucent database, RC6, Kriptografi

  

Mahasiswa Program Studi Teknik Informatika, Fakultas Teknologi Informasi, Universitas Kristen

2 Satya Wacana Salatiga Staf Pengajar Fakultas Teknologi Informasi Universitas Kristen Satya Wacana Salatiga

  1. Pendahuluan

  Keamanan data merupakan bagian integral dari setiap sistem yang mengutamakan validitas dan privacy data, khususnya apabila melibatkan banyak pihak yang berkepentingan. Dalam suatu jaringan komputer, umumnya data penting yang digunakan bersama-sama diletakkan pada suatu komputer pusat yang disebut

  

server . Server inilah yang kemudian memperoleh perhatian ekstra guna menjaga agar

  data yang tersimpan di dalamnya tidak rusak, hilang, atau dapat diakses oleh pihak yang tidak berwenang.

  Bentuk penyimpanan data dalam format database juga merupakan salah satu bentuk penanganan data yang banyak diterapkan. Tingkat efisiensi yang tinggi, manajemen data yang baik, dukungan yang luas, dan tentunya, tingkat keamanan yang tinggi, merupakan kriteria yang perlu dimiliki oleh program database yang baik [1].

  SMA Kristen Payeti Waingapu menyimpan data sekolah dalam bentuk file

  

spreadsheet (Microsoft Excel). Salah satu data sekolah yang disimpan adalah data

  personal guru dan pegawai sekolah. File tersebut tersimpan pada satu komputer yang difungsikan sebagai server, dengan tujuan dapat diakses dan digunakan bersama- sama. File pada komputer server tersebut dapat diakses oleh pihak yang memiliki hak akses (username dan password) yang terdaftar pada komputer server. Namun ketika file tersebut tersalin pada komputer lain, tidak ada jaminan keamanan untuk

  

file tersebut. SMA Kristen Payeti Waingapu dapat memanfaatkan keuntungan yang

  ditawarkan oleh sistem informasi, yaitu sentralisasi data. Server yang dimiliki oleh sekolah dapat dimanfaatkan menjadi database server untuk menyimpan data, salah satunya data pribadi guru dan pegawai sekolah. Tingkat keamanan akan menjadi lebih baik, yaitu selain hak akses pada komputer server, juga hak akses pada aplikasi

  

database server yang ada pada komputer server tersebut. Namun hal ini juga belum

  cukup aman, karena ketika harddisk komputer server tersebut dicuri, maka data yang di dalamnya akan kehilangan perlindungan yang ditawarkan oleh sistem operasi

  

server [1]. SMA Kristen Payeti Waingapu memiliki masalah keamanan data pada file

  personal guru dan pegawai sekolah, dimana data tersebut dimanipulasi oleh pihak yang tidak memiliki hak akses sehingga data tersebut perlu diamankan.

  Solusi masalah tersebut adalah metode translucent database. Metode

  

translucent database adalah metode khusus untuk mengamankan data personal

  [1][2]. Translucent database dapat menyandikan data asli pegawai, dan pihak yang masuk sistem secara ilegal tidak dapat mengetahui data aslinya. Data asli hanya terlihat jika administrator sistem yang membuka kunci pengaman data pegawai.

  Berkaitan dengan masalah yang ada maka dilakukan penelitian berjudul “Perancangan dan Implementasi Translucent Database Menggunakan Algoritma Kriptografi Rivest Code 6 (RC6) pada Data Personal Pegawai Sekolah (Studi Kasus: SMA Kristen Payeti Waingapu)”.

  2. Tinjauan Pustaka

  Pada penelitian berjudul “Translucent databases: A Precursor to Privacy

  

Sensitive Databases”, dibahas tentang penerapan translucent database untuk

  mengamankan data personal pada beberapa kasus. Contoh kasus yang pertama adalah translucent database pada data personal objek penelitian kanker. Konsep metode translucent database yang diterapkan adalah menggunakan fitur enkripsi satu arah untuk mengamankan data personal. Enkripsi menggunakan algoritma kriptografi

  MD

  5. Peneliti terdahulu memberikan pengaman pada saat data akan disimpan dalam

  

database data personal objek penelitian, sehingga ketika data sudah berada dalam

database , maka kondisi data sudah dalam keadaan terenkripsi [3].

  Penelitian tentang translucent database yang lain adalah “Perancangan dan Implementasi Translucent database Menggunakan Algoritma Kriptografi AES dan

  

Vigenere pada Data Personal Pegawai Sekolah (Studi Kasus: SMA Sedes Sapientiae

  Semarang)”. Tujuan penelitian tersebut adalah untuk mengamankan data personal yang tersimpan di database, sehingga terhindar dari penyalahgunaan/pencurian informasi. Pada penelitian tersebut diterapkan dua algoritma kriptografi untuk pengamanan data personal pegawai sekolah. Algoritma tersebut adalah AES dan Vigenere. Algoritma AES digunakan untuk menyandikan data otentikasi guru dan pegawai. Algoritma Vigenere digunakan untuk menyandikan data personal pegawai dan guru. Hasil dari penelitian tersebut adalah sebuah aplikasi translucent database untuk data pegawai SMA Sedes Sapientiae, yang dapat digunakan untuk meningkatkan keamanan penyimpanan data pegawai sekolah [4].

  Pada penelitian "Implementation of RC5 and RC6 Block Ciphers on Digital

Images" , Mohamed menggunakan RC5 dan RC6 untuk menyandikan citra digital.

Penelitian tersebut dipelajari efisiensi dari algoritma RC5 dan RC6, yang diaplikasikan pada citra digital. Hasil analisis keamanan menunjukkan bahwa RC6 lebih aman dari pada RC5 [5].

  Berdasarkan penelitian–penelitian terkait translucent database dan algoritma RC6 maka dilakukan penelitian yang membahas tentang metode translucent

  

database untuk menyimpan data personal menggunakan algoritma kriptografi RC6

  pada data personal pegawai sekolah, dengan mengambil studi kasus pada SMA Kristen Payeti Waingapu. Ketika data akan disimpan, data tersebut dienkripsi terlebih dahulu sehingga data yang masuk ke dalam database merupakan data yang telah dienkripsi. Hal ini bertujuan untuk memberikan kerangka ide bagi penelitian

  

translucent database selanjutnya dan memberikan software bagi SMA Kristen Payeti

  Waingapu yang dapat membantu menyelesaikan masalah keamanan dalam hal penyimpanan database pegawai.

  Penelitian yang dilakukan membahas tentang penerapan translucent

database . Translucent database adalah sebuah metode pengamanan database.

Pengamanan database sering dilakukan untuk database yang berkaitan dengan data personal seseorang, atau sekelompok orang [2]. Peter Wayner dalam bukunya yang berjudul Translucent databases Lite: Confusion, Misdirection, Randomness, Sharing,

  

Authentication And Steganography To Defend Privacy , menjelaskan bahwa istilah

translucent database memiliki arti bahwa sebagian "cahaya" atau informasi

  dibiarkan untuk dapat dilihat namun tetap menyediakan lapisan keamanan.

  

Translucent database tidak mendefinisikan sebuah cara tertentu, namun merupakan

  visi dan tujuan, yang masing-masing bagian di dalamnya dapat berdiri sendiri atau gabungan beberapa di antaranya [6]. Beberapa hal yang merupakan bagian dari visi tersebut adalah [6]: (1) Encryption. Translucent database mengamankan data dengan

  

one-way functions dan enkripsi, (2) Ignorance. Dalam banyak kasus, data disandikan

  oleh komputer user, sebelum akhirnya dilewatkan pada jaringan, menuju server

  

database . Sehingga translucent database tidak pernah melihat informasi sebenarnya

  yang disembunyikan, (3) Minimization. Translucent database menyamarkan informasi dengan cara menyimpan seminimal mungkin data yang diperlukan. Sebagai contoh jika kodepos sudah cukup memenuhi kebutuhan, maka tidak perlu menyimpan keseluruhan alamat, (4) Misdirection . Translucent database menambahkan data palsu dan mencampurnya dengan data asli. Hanya pengguna yang sah yang dapat membedakan data asli dari data palsu, (5) Stunt data.

  

Translucent database dapat mengganti data dengan cipher data hasil enkripsi, (6)

Equivalence . Translucent database dapat menyamarkan informasi yang sensitif

  dengan menggantikannya dengan nilai yang mirip secara fungsional. Sebagai contoh, data tinggi badan seseorang yang berupa angka, dapat diganti dengan nilai seperti "tinggi", "rata-rata", atau "pendek", dan (7) Quantization. Fitur kuantisasi ini digunakan untuk data angka. Penggunaan fitur ini ditunjukkan dengan adanya penyamaran nilai atau pembulatan nilai, misalnya untuk data titik koordinat. Ketujuh fitur tersebut bukan merupakan definisi yang secara keseluruhan harus dipenuhi oleh

  

translucent database , dengan kata lain, penggunaan salah satu fitur atau

  penggabungan fitur tersebut sudah dapat dikategorikan sebagai translucent database [6].

  Translucent database ketika diterapkan dalam sebuah database memiliki

  beberapa keuntungan. Keuntungan translucent database antara lain [2]: (1) Lebih aman. Translucent database dapat membuat sistem menjadi lebih aman. Bahkan jika penyusup dapat lolos dalam lapisan keamanan password, data personal tetap tidak bisa dicuri, karena pengamanan langsung diberikan pada data sasaran. Bentuk pengamanannya antara lain dapat mengacak data, mengganti data asli dengan data yang disandikan, atau bisa juga menampilkan data dalam sesuatu yang khusus, seperti pengkategorian kelompok data, (2) Lebih privasi. Translucent database banyak berguna bagi organisasi, karena anggota organisasi data personalnya jadi lebih privasi. Hal ini karena hanya si pemilik data saja yang dapat mengakses data.

  

Translucent database dapat mengurangi adanya penyalahgunaan privasi seseorang

  atau sekelompok orang, (3) Bebas. Translucent database dapat mengurangi jumlah data yang terlihat dalam sebuah informasi. Penyamaran data personal dapat mengurangi rasa ingin tahu orang lain, misalnya dalam sistem informasi pelayanan pos hanya menampilkan data nama pelanggan, dan kode pos yang berkaitan, sedangkan untuk data yang lain diberi pengamanan khusus. Jika ada sebuah penyajian informasi yang memakai translucent database, dapat membebaskan data tersebut dari rasa ingin tahu orang lain, (4) Cepat. Translucent database yang diimplementasikan dalam sebuah sistem tidak mengurangi kecepatan kinerjanya. Penerapan translucent database dapat memperingan dan mempercepat upaya pengamanan data dalam sistem. Fitur-fitur yang dimiliki oleh translucent database dapat digabungkan satu sama lain, untuk dapat meminimalkan terjadinya hambatan karena adanya sebuah pengamanan pada system, dan (5) Fleksibel. Translucent

  

database dapat memberikan fleksibilitas pada sistem. Pengamanan data yang

  dirancang dapat disesuaikan kebutuhan pemilik dan pengguna sistem. Pengamanan dapat diberikan pada saat data akan disimpan dalam database. Pengamanan juga dapat diberikan pada saat data sudah banyak tersimpan, sehingga menggunakan sebuah sistem tambahan yang berfungsi sebagai pengaman data.

  Pada penelitian ini digunakan algoritma RC6 sebagai algoritma untuk proses enkripsi dan dekripsi data. Algoritma RC6 [7] adalah versi yang dilengkapi dengan beberapa parameter, sehingga dituliskan sebagai RC6-w/r/b, dimana parameter w merupakan ukuran kata dalam satuan bit, r adalah bilangan bulat bukan negatif yang menunjukkan banyaknya iterasi selama proses enkripsi, dan b menunjukkan ukuran kunci enkripsi dalam byte. Ketika algoritma ini masuk sebagai kandidat AES, maka ditetapkan nilai parameter w = 32, r = 20 dan b bervariasi antara 16, 24, dan 32 byte. RC6-w/r/b memecah block 128 bit menjadi 4 buah block 32 bit, dan mengikuti enam aturan operasi dasar sebagai berikut : A + B Operasi penjumlahan bilangan integer. A – B Operasi pengurangan bilangan integer. A  B Operasi exclusive-OR (XOR). A x B Operasi perkalian bilangan integer. A<<<B A dirotasikan ke kiri sebanyak variabel kedua (B) A>>>B A dirotasikan ke kanan sebanyak variabel kedua (B)

  RC6 memecah block 128 bit menjadi 4 buah block 32 bit, maka algoritma ini bekerja dengan 4 buah register 32-bit A, B, C, dan D. Byte yang pertama dari atau ciphertext ditempatkan pada byte A, sedangkan byte yang terakhirnya

  plaintext

  ditempatkan pada byte D. Dalam prosesnya akan didapatkan (A, B, C, D) = (B, C, D,

  A) yang diartikan bahwa nilai yang terletak pada sisi kanan berasal dari register di sisi kiri.

  

Gambar 1 Diagram Proses Enkripsi RC6 [7]

  Proses dekripsi ciphertext pada algoritma RC6 merupakan pembalikan dari proses enkripsi. Pada proses whitening, bila proses enkripsi menggunakan operasi penjumlahan, maka pada proses dekripsi menggunakan operasi pengurangan. Sub kunci yang digunakan pada proses whitening, setelah iterasi terakhir diterapkan sebelum iterasi pertama, begitu juga sebaliknya sub kunci yang diterapkan pada proses whitening, sebelum iterasi pertama digunakan pada whitening setelah iterasi terakhir. Pada proses dekripsi, hal yang harus dilakukan adalah menerapkan algoritma yang sama dengan proses enkripsi, dengan tiap iterasi menggunakan sub kunci yang sama dengan yang digunakan pada saat enkripsi, hanya saja urutan sub kunci yang digunakan terbalik.

  

Gambar 2 Diagram Proses Dekripsi RC6 [7]

  RC6 jika dibandingkan dengan Rijndael dalam hal keceptan enkripsi sedikit lebih lambat tetapi dalam hal ini tidak menggangu hasil penelitian yang dibangun.

3. Metode dan Perancangan Sistem

  Penelitian yang dilakukan, diselesaikan melalui tahapan penelitian yang terbagi dalam empat tahapan, yaitu: (1) Identifikasi masalah dan studi literatur, (2) Perancangan sistem, (3) Implementasi sistem, dan (4) Pengujian sistem dan analisis hasil pengujian.

  Identifikasi Masalah dan Studi Literatur Perancangan Sistem meliputi Perekayasaan Perangkat Lunak, Perancangan Basis data dan Perancangan Antarmuka Sistem Implementasi Sistem Pengujian Sistem dan Analisis Hasil Pengujian

Gambar 3 Tahapan Penelitian

  Tahapan penelitian pada Gambar 3, dapat dijelaskan sebagai berikut. Tahap

  

pertama : identifikasi masalah, yaitu mengidentifikasi masalah-masalah yang akan

  dibahas, serta mendapatkan data dan literatur yang terkait dengan metode translucent

  

database dan kriptografi RC6 untuk proses pengamanan data personal pegawai dan

  guru, dan memberikan pengamanan dalam lapisan aplikasi, sehingga hanya guru dan pegawai yang mengetahui password saja yang dapat mengakses data personal pegawai; Tahap kedua: perancangan sistem yang meliputi perekayasaan perangkat lunak menggunakan sebuah bahasa pemodelan sistem, yaitu UML (Unified Modeling

  

Language ), perancangan basis data yang meliputi tabel data autentikasi dan tabel

  data pegawai dan perancangan antarmuka sistem, dalam sistem yang akan dibangun;

  

Tahap ketiga : implementasi sistem, yaitu membuat aplikasi sesuai perancangan

  proses pada tahap kedua; dan Tahap keempat: pengujian sistem dan analisis hasil pengujian, yaitu dilakukan pengujian terhadap aplikasi penyimpan data yang digunakan untuk tempat pegawai menyimpan data personal, dan aplikasi pengaman data, serta melihat hasil yang diberikan apakah sudah sesuai dengan konsep translucent database menggunakan kriptografi RC6.

  Berdasarkan analisis kebutuhan sistem yang didapat, maka dalam penelitian ini dilakukan implementasi translucent database pada sistem database pegawai sekolah. Fitur dari metode translucent database yang digunakan adalah fitur encryption , ignorence dan stunt data.

  Proses utama dalam sistem yaitu pada saat pegawai melakukan registrasi untuk mendaftarkan data personalnya ke dalam database. Proses ini digambarkan dalam bentuk flowchart pada Gambar 4.

  

Gambar 4 Skema Proses Penyimpanan Data Personal Pegawai

  Gambar 4 menunjukkan proses penyimpanan data personal pegawai yang dimulai dengan pegawai melakukan registrasi dengan memasukkan NIK dan

  

password untuk pengamanan data pada saat login pegawai. NIK dan password secara

  otomatis akan masuk ke dalam database. Password yang masuk ke dalam database berupa data enkripsi karena telah dienkripsi tanpa sepengetahuan admin dan pemilik

  

password tersebut. Setelah selesai mengisi NIK dan password, pegawai mengisi data

  dirinya kemudian disimpan tetapi sebelum disimpan pengguna harus terlebih dahulu mengenkripsi data tersebut agar data yang disimpan di dalam database terenkripsi. Enkripsi tersebut menggunakan algoritma RC6. Kemudian keluar untuk mengakhirinya.

  Perancangan proses pada sistem yang dibangun menggunakan diagram UML, yaitu Use-Case Diagram, Activity Diagram dan Class Diagram. Use case diagram digunakan untuk menjelaskan fungsi-fungsi yang bersentuhan langsung dengan pengguna. fungsi kepala sekolah

  

fungsi admin fungsi pegawai

user admin pegawai login kepala sekolah manage database melihat semua data personal

registrasi edit data personal

pegawai

Gambar 5 Use Case Diagram Sistem

Gambar 5 menunjukkan use case diagram sistem, dijelaskan sebagai berikut.

  Terdapat tiga aktor yang menggunakan sistem. Aktor pertama yaitu pegawai yang memiliki hak akses melakukan registrasi dan mengedit data personal miliknya. Aktor kedua yaitu admin yang bertugas untuk memanage database. Aktor ketiga yaitu kepala sekolah yang bertanggung jawab atas semua data personal pegawai sekolah dan memiliki hak akses untuk melihat semua data personal pegawai sekolah tersebut.

  

Gambar 6 Activity Diagram Pencatatan Data Pribadi Guru dan Pegawai

  Gambar 6 menunjukkan activity diagram sistem untuk proses pencatatan data pribadi guru dan pegawai. Proses dimulai oleh administrasi, dengan melakukan pendataan data login tiap-tiap guru dan pegawai sekolah. Kemudian dengan menggunakan data login, masing-masing guru dan pegawai memasukkan data pribadinya. Tiap guru dan pegawai dapat melakukan perubahan terhadap data yang dimilikinya. Administrator dapat melakukan proses cetak data guru dan pegawai.

  Gambar 7 Class Diagram Sistem

  Gambar 7 merupakan rancangan class diagram, yang menjadi dasar dari desain database pada sistem. Class Pribadi merupakan representasi dari data pribadi guru dan pegawai. Class ini sekaligus representasi dari tabel pribadi. Tabel tersebut merupakan satu dari dua tabel yang terenkripsi. Tabel terenkripsi yang kedua adalah tabel PegawaiLogin, yang diwakili oleh class PegawaiLogin pada desain class

  

diagram . User menggunakan informasi dari tabel Pegawai melalui antarmuka

  PribadiUI, kemudian dijembatani oleh PegawaiController. Demikian pula antara antarmuka PegawaiLoginUI dijembatani oleh PegawaiLoginController untuk berkomunikasi dengan class PegawaiLogin.

4. Hasil dan Pembahasan

  Hasil implementasi sistem berdasarkan rancangan sistem dijelaskan sebagai berikut. Fitur dari metode translucent database yang digunakan adalah fitur

  

encryption , ignorence dan stunt data. Penggunaan fitur dijelaskan sebagai berikut:

  (1) Fitur Encryption. Sistem menggunakan algoritma kriptografi RC6 untuk menyandikan informasi yang tersimpan pada tabel di database. Terdapat dua proses enkripsi untuk dua tabel. Tabel login pegawai berisi informasi NIK dan password tiap pegawai. Isi pada tabel tersebut dienkripsi dengan menggunakan kunci utama (master key). Kunci tersebut tersimpan di dalam aplikasi. Tabel kedua adalah tabel pribadi pegawai yang berisi informasi data pribadi masing-masing pegawai. Isi dari tabel tersebut dienkripsi dengan menggunakan password pegawai, yang tersimpan di dalam tabel login pegawai; (2) Fitur Ignorance. Fitur ignorance yang memiliki arti bahwa sistem database tidak peduli apakah data yang disimpan berupa data plain atau data cipher. Hal ini dicapai dengan cara melakukan proses enkripsi dan dekripsi pada bagian aplikasi, dan bukan pada bagian database, dengan kata lain, data dienkripsi oleh aplikasi sebelum dikirimkan ke sistem database. Demikian pula ketika akan digunakan, data diperoleh dari sistem database, kemudian didekripsi oleh aplikasi. Sistem database tidak perlu mengetahui (ignore) cara ataupun format dari data yang disimpannya; dan (3) Fitur Stunt Data. Fitur ini merupakan implikasi dari fitur encryption. Fitur stunt data berarti mengganti informasi dalam tabel, dengan data cipher hasil enkripsi. Fitur minimization tidak dapat digunakan, karena data yang disimpan harus detail, contohnya adalah alamat. Fitur misdirection tidak dapat digunakan karena selain pengguna yang sah, administrator juga berhak dan perlu untuk melihat data asli. Fitur equivalence dan quantization tidak digunakan karena data yang disimpan bukan merupakan data angka dengan rentang nilai, seperti contohnya adalah data tinggi badan, berat badan, dan koordinat

  Gambar 8 Form Login Gambar 8 merupakan antarmuka form login dimana pegawai harus terlebih dulu melakukan registrasi untuk mengisi data personal pribadinya dengan cara memasukkan NIK / KTP dan password.

  

Gambar 9 Form Data Pribadi Pegawai Sebelum Enkripsi

  Gambar 9 merupakan antarmuka form data pribadi pegawai sebelum dan Gambar 10 sesudah proses enkripsi. Setelah berhasil melakukan registrasi maka akan muncul form data pribadi pegawai yang kemudian pegawai tersebut mengisi data pribadi dirinya. Sebelum disimpan ke dalam database pegawai harus mengenkripsi data pribadi dirinya dengan cara mencentang tanda encrypt data, jika tanda tersebut tidak dicentang maka data tidak dapat disimpan.

  

Gambar 10 Form Data Pribadi Pegawai Sesudah Proses Enkripsi

Fitur Encryption ditunjukkan pada Kode Program 1. Enkripsi dan dekripsi dilakukan dengan menggunakan algoritma RC6.

  Kode Program 1 Perintah Untuk Proses Enkripsi dan Dekripsi Menggunakan RC6 1. public static byte[] Encrypt(byte[] v, byte[] k) 2. { 3. byte[] kfull = new byte[16];

  4. Array.Copy(k, 0, kfull, 0, k.Length 5. < kfull.Length ? k.Length : kfull.Length); 6. byte[] plain = AddPadding(v); 7.

  8. RC6 e = new RC6(kfull, true); 9. byte[] buffer = new byte[plain.Length]; 10. for (int i = 0; i < plain.Length; i += BlockSize) 11. { 12. e.Transform(plain, i, buffer, i); 13. } 14. return buffer; 15. }

  16. 17. public static byte[] Decrypt(byte[] v, byte[] k) 18. { 19. byte[] kfull = new byte[16];

  20. Array.Copy(k, 0, kfull, 0, k.Length 21. < kfull.Length ? k.Length : kfull.Length);

  22. RC6 d = new RC6(kfull, false); 23. byte[] buffer = new byte[v.Length]; 24. for (int i = 0; i < v.Length; i += BlockSize) 25. { 26. d.Transform(v, i, buffer, i); 27. } 28. return RemovePadding(buffer); 29. }

  Kode Program 1 menunjukkan perintah untuk dua fungsi kriptografi, yaitu proses enkripsi dan dekripsi. Algoritma RC6 merupakan block cipher, sehingga data perlu dikelompokkan ke dalam blok-blok dengan ukuran 16 byte (baris 3). Data yang berjumlah kurang dari 16 byte, dilakukan proses padding (baris 6) untuk tiap blok, baru kemudian dilakukan proses enkripsi (baris 10-13) ataupun dekripsi (baris 24- 27).

  Fitur Ignorance pada sistem ditunjukkan pada Kode Program 2. Fitur

Ignorance pada aplikasi ini berada pada bagian aplikasi, yang berarti aplikasi

bertugas menyandikan data sebelum diteruskan ke sistem database untuk disimpan.

  Kode Program 2 Perintah untuk Proses Enkripsi Data Sebelum Disimpan ke Database 1. internal static void Insert(PegawaiLogin p) 2. {

  3. PegawaiLogin cipher = p.Encrypt(); 4. using (MySqlConnection conn = new MySqlConnection(Connection.Koneksi)) 5. { 6. conn.Open(); 7. var command = conn.CreateCommand(); 8. command.Connection = conn; 9. command.CommandText = 10. "INSERT INTO pegawai_login VALUES (@nik, @pwd, @level)"; 11. command.Parameters.Add( 12. "@nik", MySqlDbType.VarChar).Value = cipher.NIK; 13. command.Parameters.Add( 14. "@pwd", MySqlDbType.VarChar).Value = cipher.Password; 15. command.Parameters.Add( 16. "@level", MySqlDbType.VarChar).Value = cipher.Level; 17. command.ExecuteNonQuery(); 18. } 19. } 20. 21. internal PegawaiLogin Encrypt() 22. {

  23. PegawaiLogin p = new PegawaiLogin(); 24. p.NIK = this.NIK; 25. p.Password = RC6Wrapper.EncryptString( 26. this.Password, MasterKey.KEY); 27. p.Level = RC6Wrapper.EncryptString( 28. this.Level, MasterKey.KEY); 29. return p; 30. }

  Kode Program 2 menunjukkan perintah untuk enkripsi data sebelum disimpan ke database, yaitu perintah enkripsi untuk tabel PegawaiLogin. Sebelum disimpan, data dienkripsi dengan menggunakan master key (perintah pada baris 21-29). Kemudian hasil enkripsi disimpan ke dalam tabel pegawai_login (perintah pada baris 4-17).

  Fitur Stunt Data dapat ditunjukkan pada tabel di database, yaitu berupa

ciphertext yang tersimpan pada tabel pribadi maupun pegawai_login. Pada Gambar

  11 ditunjukkan stunt data pada tabel pribadi dengan pengecualian yaitu nomor induk karyawan (NIK) karena merupakan primary key untuk tabel pribadi.

  Gambar 11 Hasil Penggunaan Fitur Stunt Data

  Pengujian sistem dilakukan untuk menguji fungsi-fungsi aplikasi hasil implementasi. Pengujian ini dilakukan untuk mengkaji fitur translucent database yang digunakan. Ada tiga fitur yang digunakan dari tujuh fitur translucent database yang ada. Fitur yang digunakan yaitu fitur encryption, ignorance, dan stunt data merupakan translucent database. Pengujian fitur dilakukan oleh pengembang aplikasi. Selain pengujian fitur translucent database, juga dilakukan pengujian responden yang dilakukan oleh user.

  Tabel 1 Hasil Pengujian Pengembang Aplikasi No Fitur Translucent Database

  Hasil Pengujian Kesimpulan

  1 Encryption Fitur encryption ditunjukkan

dengan adanya algoritma RC6,

yang menyandikan data pribadi

pegawai dan data login pegawai.

(Kode Program 1) Berhasil

  2 Ignorance Proses enkripsi dan dekripsi

dilakukan pada sisi aplikasi. Data

yang dilewatkan di antara aplikasi

dan sistem database merupakan

data cipher. (Kode Program 2) Berhasil

  3 Stunt Data Data yang disimpan di dalam

tabel pribadi pegawai dan data

login pegawai merupakan data

cipher .

  (Gambar 11 Berhasil

  Pengujian pada user, yang dilakukan oleh pegawai, untuk mengetahui respon dari pengguna terhadap sistem yang telah dikembangkan. Hasil pengujian ditunjukkan pada Tabel 2. Responden berjumlah 3 orang terdiri dari seorang guru komputer, pegawai sekolah yang merupakan seorang admin, dan kepala sekolah.

  

Tabel 2 Hasil Pengujian Responden

No Materi Pengujian Hasil Pengujian

1 Kemudahan penggunaan aplikasi.

  3 Responden menyatakan bahwa aplikasi SANGAT MUDAH digunakan karena susunannya mirip dengan FORMULIR DATA GURU DAN PENGAWAS JENJANG

PENDIDIKAN MENENGAH.

  2 Kejelasan informasi yang

  3 Responden menyatakan bahwa informasi yang ditampilkan dalam aplikasi ditampilkan SANGAT JELAS. Istilah yang digunakan familiar.

  3 Keamanan data pribadi

  3 Responden menyatakan bahwa merasa SANGAT PERCAYA dengan tingkat keamanan yang disediakan oleh aplikasi.

  Berdasarkan hasil pengujian 3 responden, disimpulkan bahwa aplikasi mudah digunakan, menampilkan informasi yang jelas, dan memberikan dukungan keamanan terhadap data yang disimpan.

  5. Simpulan

  Berdasarkan perancangan dan implementasi translucent database pada data pegawai SMA Kristen Payeti Waingapu, diperoleh kesimpulan bahwa metode

  

translucent database dapat digunakan untuk membuat data pegawai sekolah

  tersimpan dengan lebih aman. Penggunaan fitur translucent database pada data pegawai sekolah adalah fitur encryption, ignorance, dan stunt data. Penggunaan fitur tersebut sudah dapat dikategorikan translucent database. Hasil pengujian user menunjukkan bahwa aplikasi mudah digunakan, menampilkan informasi yang jelas, dan memberikan dukungan keamanan terhadap data yang disimpan. Saran yang dapat diberikan untuk penelitian dan pengembangan lebih lanjut adalah: (1) Fitur

  

Misdirection dapat diimplementasikan sebagai tambahan keamanan. Fitur ini akan

  memberikan kendali keamanan kepada pemilik data secara penuh. Keuntungan yang juga merupakan kelemahaan yaitu hanya pemilik data yang mengetahui data sebenarnya. Kelemahan yang lain adalah tabel akan menjadi lebih besar daripada seharusnya, karena menyimpan data-data palsu yang digunakan untuk mengecoh (misdirect) pihak yang tidak memiliki hak akses.

  6. Daftar Pustaka

  [1]. Wayner, P. 2009. Disappearing cryptography: Information hiding:

Steganography & watermarking . 3rd edn. Burlington: Morgan Kaufmann.

[2]. Wayner, P. 2009. Translucent databases 2nd Edition: Confusion,

  

misdirection, randomness, sharing, authentication and steganography to

defend privacy . CreateSpace.

  [3]. Bhattacharya, P. & Karyar, M. 2004. Translucent databases: A Precursor to

  Privacy Sensitive Databases . CSCI E170- Security, Privacy, and Usability,

  Fall [4]. Simanungkalit, A. V. H., Pakereng, M. A. I. & Beeh, Y. R. 2010.

  Perancangan dan Implementasi Translucent database menggunakan

Algoritma Kriptografi AES dan Vigenere pada Data Personal Pegawai

  Sekolah (Studi Kasus : SMA Sedes Sapientiae Semarang) . Skripsi. Fakultas

  Teknologi Informasi Universitas Kristen Satya Wacana [5]. Mohamed, A. B., Zaibi, G. & Kachouri, A. 2011. Implementation of RC5 and

  RC6 block ciphers on digital images . In Systems, Signals and Devices (SSD), 2011 8th International Multi-Conference on, pp. 1–6.

  [6]. Wayner, P. 2009. Translucent databases Lite: Confusion, misdirection, randomness, sharing, authentication and steganography to defend privacy .

  CreateSpace. [7]. Rivest, R., Robshaw, M. J. B., Sidney, R. & Yin, Y. L. 1998. The RC6 Block Cipher . in First Advanced Encryption.

Dokumen yang terkait

Institutional Repository | Satya Wacana Christian University: Aktivitas Antioksidan Antosianin Buah Lobi-Lobi (Flacourtia inermis Roxb.) terhadap Kolesterol Total dalam Mencit = Antioxidant Activity of Anthocyanin of Batoko Plum Fruit (Flacourtia inermis

0 0 11

Institutional Repository | Satya Wacana Christian University: Desain Air Track Sederhana, Murah, dan Portable

0 0 19

Institutional Repository | Satya Wacana Christian University: Perancangan Sistem Informasi Kepegawaian di Badan Pertanahan Nasional di Jayapura

0 0 26

Bab 2 Tinjauan Pustaka - Institutional Repository | Satya Wacana Christian University: Perancangan Sistem Informasi Pemetaan Lokasi SPBU di Kota Semarang Berbasis Web Menggunakan Google Maps API

0 0 10

Bab 3 Metode dan Perancangan Sistem - Institutional Repository | Satya Wacana Christian University: Perancangan Sistem Informasi Pemetaan Lokasi SPBU di Kota Semarang Berbasis Web Menggunakan Google Maps API

0 1 25

Bab 4 Hasil Penelitian dan Pembahasan - Institutional Repository | Satya Wacana Christian University: Perancangan Sistem Informasi Pemetaan Lokasi SPBU di Kota Semarang Berbasis Web Menggunakan Google Maps API

0 0 16

Institutional Repository | Satya Wacana Christian University: Perancangan Sistem Informasi Pemetaan Lokasi SPBU di Kota Semarang Berbasis Web Menggunakan Google Maps API

0 0 19

Institutional Repository | Satya Wacana Christian University: Perancangan dan Implementasi Translucent Database Menggunakan Kombinasi Algoritma Vernam Cipher dan Pseudorandom Number Generator pada Data Transaksi Barang

0 0 22

Institutional Repository | Satya Wacana Christian University: Sistem Keamanan Dokumen Perusahaan Menggunakan Advanced Encryption Standard (AES) Algorithm: studi kasus: PT. Adika Dwikarya Utama

0 1 29

Institutional Repository | Satya Wacana Christian University: Perancangan dan Implementasi Sistem Penilaian Kinerja Keuangan Perusahaan Manufaktur Menggunakan Metode Rasio Keuangan dengan Google Chart Berbasis Framework CodeIgniter

0 0 26