BAB 2 LANDASAN TEORI 2.1 Pengertian Folder Sebuah directory (folder) adalah seperti ruangan-ruangan (kamar-kamar) pada sebuah komputer yang berfungsi sebagai tempat penyimpanan dari berkas-berkas (file). Sedangkan file adalah kumpulan data-data baik berupa teks, angka, gambar, video, slide, program, dan lain-lain yang diberi nama tertentu secara digital (Daniel. C dan Angkasa. W. P. 2009). Biasanya folder dapat diakses oleh seluruh user dari komputer tersebut. Oleh karena itu tingkat keamanan suatu folder masih belum terjamin. 2.2 Keamanan Folder Keamanan folder merupakan salah satu cara untuk memberikan suatu keamanan pada folder yang di dalam folder tersebut terdapat data atau file yang bersifat rahasia dan penting sehingga tidak dapat diakses oleh pihak lain. Dalam penerapannya, telah banyak cara untuk memberikan sistem keamanan terhadap folder, diantaranya dengan memberikan password berupa huruf/ angka, atau dengan menyembunyikan folder tersebut sehingga tidak kelihatan oleh orang lain (Daniel. C, et al. 2009). Dengan berkembangnya teknologi, sudah banyak aplikasi yang berfungsi untuk memberikan keamanan pada folder yang rahasia dan penting. Keamanan folder adalah keadaan dimana folder tidak dapat diakses oleh pihak lain. Jika ada yang ingin mengakses folder tersebut, user diharuskan untuk memasukkan password yang benar terlebih dahulu.
7 Bagi orang yang sering menggunakan komputer khususnya windows, tentu telah mengetahui bahwa Folder (directory) memiliki beberapa attribute. Attribute itu dapat dilihat dengan cara klik kanan pada salah satu folder kemudian pilih properties, maka akan terlihat attribute Folder Read-Only, Archive, & Hidden. Namun, tidak semua orang mengtahui bahwa Windows memiliki attribute lain yang tidak ditampilkan. Salah satunya adalah attribute System (kadang disebut juga sebagai SuperHidden) yang biasa digunakan Windows untuk menyembunyikan komponen komponen folder yang penting bagi Windows. Pada pembuatan Folder Lock ini, attribute System juga akan diberikan, sehingga folder yang telah dikunci tidak dapat dilihat oleh user lain 2.3 Sidik jari Fingerprint (sidik jari) merupakan pola-pola guratan pada jari manusia yang dapat digunakan sebagai salah satu identitas diri. Sidik jari seseorang merupakan hal yang unik karena sidik jari yang dimiliki seseorang tidak akan sama dengan orang lain bahkan untuk dua orang yang kembar identik. Pada saat ini, sidik jari dapat digunakan untuk pembuktian atas identitas seseorang. Kualitas sidik jari yang baik yaitu jika memiliki kontras, dapat menggambarkan struktur pola bukit (ridge) dan lembah (valley) (Salahuddin, et al. 2013), seperti pada Gambar 2.1 di bawah ini. Gambar 2.1 Ridge dan valley dalam sidik jari Adapun klasifikasi sidik jari antara lain : 1) Arch adalah bentuk pokok sidik jari dimana garis-garis datang dari sisi lukisan yang satu mengalir ke arah sisi yang lain, dengan sedikit bergelombang naik ditengah, pola arch seperti pada gambar 2.2 (a).
8 2) Loop adalah garisnya memasuki pokok lukisan dari sisi yang searah dengan keliling, melengkung ditengah pokok lukisan dan kembali atau cenderung kembali ke arah sisi semula pola loop seperti pada gambar 2.2 (b). 3) Whorl (lingkaran) adalah bentuk pokok sidik jari, mempunyai dua delta dan sedikitnya satu garis melingkar di dalam pola area, berjalan didepan kedua delta pola whorl seperti pada Gambar 2.2 (c). (a) (b) (c) Gambar 2.2 Sidik jari (a) arch, (b) loop, (c) whorl (Kurniawan, 2011) 2.4 Fingerprint Recognition Fingerprint recognition merupakan salah satu dari sistem biometrika. Fingerprint recognition merupakan suatu cara untuk mengidentifikasi sidik jari seseorang. Fingerprint recognition mengidentifikasi sidik jari seseorang dengan melihat pola guratan yang ada pada sidik jari seseorang. Penggunaan biometrik untuk sistem pengenalan memiliki beberapa keunggulan dibanding sistem konvensional (penggunaan password, PIN, kartu, dan kunci), di antaranya (Putra, D. 2009): 1) Non-repudation : suatu sistem yang menggunakan teknologi biometrik untuk melakukan suatu akses, penggunaanya tidak akan menyangkal bahwa bukan dia yang melakukan akses atau transaksi. Hal ini berbeda dengan penggunaan password atau PIN. Pengguna masih dapat menyangkal atas transaksi yang dilakukanya, karena PIN atau password bisa dipakai bersama-sama. 2) Keamanan (security) : sistem berbasis password dapat diserang menggunakan metode atau algoritma brute force, sedangkan sistem biometrik tidak dapat diserang dengan cara ini, karena sistem biometrika membutuhkan kehadiran pengguna secara langsung pada proses pengenalan. 3) Penyaringan (screening) : proses penyaringan untuk mengatasi seseorang yang menggunakan banyak identitas, seperti teroris yang dapat menggunakan lebih dari satu paspor untuk memasuki satu negara. Sebelum menambahkan identitas
9 seseorang kesistem, perlu dipastikan terlebih dahulu bahwa identitas orang tersebut belum terdaftar sebelumnya. Untuk mengatasi masalah tersebut maka diperlukan proses penyaringan identitas yang mana sistem konvensional tidak dapat melakukanya. Biometrika mampu menghasilkan atau menyaring beberapa informasi sidik jari yang mirip dengan sidik jari atau wajah yang dicari. 2.5 Pengenalan sidik jari Proses pencocokan (matching) dilakukan dengan membandingkan tingkat kesamaan antara fitur citra sidik jari pengujian dengan fitur citra sidik jari yang telah tersimpan di dalam database menggunakan jarak euclidean. Jarak euclidean merupakan tahap yang sering digunakan untuk menghitung / menentukan perbedaan antara 2 vektor pada proses pencocokan sidik jari. Dalam proses pengenalan sidik jari ini pencarian citra sidik jari yang digunakan adalah metode content-based image retrieval (CBIR) dimana citra input akan dibandingkan dengan citra yang telah ada di database. Proses pengenalan sidik jari adalah sebagai berikut: 1. Pengambilan citra sidik jari Pengambilan citra sidik jari adalah proses pengambilan citra sidik jari menggunakan scanner sidik jari. Pada penelitian ini, penulis menggunakan scanner digital persona u are u 4500. Alat ini digunakan untuk mengambil citra sidik jari yang akan digunakan sebagai kunci untuk mengakses folder yang telah dikunci. Pengambilan citra sidik jari dilakukan sebanyak empat kali pada proses sign up dan sekali pada proses login. Citra yang di-input akan dibandingkan dengan citra yang telah ada di database dan jika citra sidik jari yang di-input dengan citra sidik jari yang di database sama maka folder dapat dibuka. 2. Normalisasi citra input Pada tahap ini, citra input sidik jari akan dinormalisasi ukuran citranya. Pada proses ini, citra input akan diseragamkan dengan menggunakan ukuran 130 x 180 piksel.
10 3. Grayscalling Pada proses ini, warna citra input sidik jari akan diubah menjadi grayscale. Pada tahapan ini, gambar yang telah diseragamkan ukurannya akan diubah warnanya menjadi grayscale. Hal ini dilakukan untuk mempermudah proses pengenalan sidik jari. Citra RGB (Red Green Blue) dapat diubah menjadi citra grayscale dengan menghitung rata-rata elemen warna Red (Merah), Green (Hijau) dan Blue (Biru). Secara matematis perhitungan sebagai berikut (Sutoyo, 2010): F o (x, y) = ( ) ( ) ( ) (2.1) F o f i x,y = nilai grayscale = nilai piksel ke i = adalah kordinat piksel pada posisi x,y Berikut gambar contoh proses perhitungan konversi citra RGB menjadi grayscale. F 0 = (213+213+213)/3 R=213 G=213 B=213 R=40 G=80 B=30 R=80 G=60 B=40 G=90 G=65 R=100 G=100 B=100 G=80 R=70 G=70 R=40 G=60 R=40 G=60 B=80 R=90 G=90 B=90 R=40 G=90 B=80 R=80 G=90 R=70 G=70 R=80 G=80 B=80 R=80 G=50 R=20 G=20 R=10 G=70 B=10 R=60 G=20 B=40 R=70 G=60 G=30 B=40 G=60 R=80 G=50 B=80 G=80 R=90 G=85 213 100 90 60 40 50 60 70 30 60 60 70 80 30 70 70 50 70 40 60 60 60 80 60 80 Gambar 2.3 Proses Konversi Citra RGB Menjadi Grayscale
11 Pada gambar 2.3 merupakan tahap konversi citra RGB menjadi citra grayscale, dimana dalam proses ini adalah proses pengambilan nilai grayscale pada citra sidik jari. 4. Thresholding Thresholding adalah proses mengubah citra berderajat keabuan menjadi cirtra biner atau hitam putih sehingga dapat diketahui daerah mana yang termasuk obyek dan daerah mana yang termasuk background. Proses Thresholding akan menghasilkan citra biner yaitu citra yang memiliki dua nilai tingkat keabuan yaitu hitam dan putih. Secara umum proses thresholding citra grayscale untuk menghasilkan citra biner adalah sebagai berikut : g(x,y) ={ ( ) ( ) } (2.2) Dengan g(x,y) adalah citra biner dari citra grayscale f(x,y), dan T menyatakan nilai ambang. Nilai T memegang peranan yang sangat penting dalam proses pengambangan. Kualitas citra biner sangat tergantung terhadap nilai T yang digunakan. Pada penilitian ini, penulis menggunakan nilai 128. Jika nilai grayscale < 128 maka nilai binernya adalah 0, sedangkan jika nilai grayscale >= 128 maka nilai binernya adalah 1. 5. Proses pencocokan dengan euclidean distance Euclidean distance adalah tahap yang sering digunakan untuk menghitung / menentukan perbedaan antara 2 vektor pada proses pencocokan sidik jari. Berikut merupakan rumus menghitung jarak Euclidean ternormalisasi antara lain sebagai berikut: (u, v) = (( ( ) ) (2.3) dengan : (u, v) = Jarak antara objek u dan v = Koordinat dari obyek i pada piksel ke-t = Koordinat dari obyek j pada piksel ke-t
12 2.6 Kriptografi Pengamanan komunikasi untuk mencegah pihak-pihak yang tidak berwenang dalam melakukan tindakan penyadapan terhadap data dan informasi yang dirasa sensitif, saat ini tidak hanya merupakan kebutuhan dari institusi militer ataupun pemerintah. Sektor bisnis dan bidang lainnya juga merasakan kebutuhan dalam bidang ini. Data yang sifatnya rahasia, otentifikasi informasi, dan keamanan file adalah beberapa elemen yang membutuhkan pengamanan pada komputer dan sistem komunikasi. Teknik untuk membuat pesan menjadi tidak dapat dibaca disebut sebagai enkripsi. Pesan yang tidak dapat dibaca tersebut disebut sebagai ciphertext. Proses yang merupakan kebalikan dari enkripsi disebut sebagai dekripsi. Jadi, enkripsi merupakan proses untuk mengubah pesan yang dapat dibaca (plaintext) menjadi suatu pesan yang tidak dapat dibaca (ciphertext). Sedangkan deskripsi merupakan suatu proses untuk mengembalikan pesan yang tidak dapat dibaca tadi (ciphertext), menjadi dapat dibaca kembali (plaintext). Secara matematis, proses umum enkripsi dijelaskan sebagai berikut: E (P) = C (2.4) Jadi, proses enkripsi (E) plaintext (P) akan menghasilkan ciphertext C. Sedangkan proses umum deskripsi adalah sebagai berikut: D (C) = P (2.5) Proses dekripsi (D) ciphertext (C), akan menghasilkan plaintext (P). Bagan dibawah ini akan menggambarkan lebih jelas lagi mengenai proses umum yang terjadi di dalam kriptografi: Plaintext Enkripsi Cipher text Dekripsi Plaintext Gambar 2.4 Proses Umum Dalam Kriptografi 2.7 Data Encryption Standard DES beroperasi pada ukuran blok 64-bit. DES mengenkripsikan 64-bit plainteks menjadi 64-bit cipherteks dengan menggunakan 56-bit kunci internal yang dibangkitkan dari kunci eksternal yang panjangnya 64-bit.
13 2.7.1 Proses Kunci Kunci eksternal yang diinputkan akan diproses untuk mendapatkan 16 kunci internal. Pertama, Kunci eksternal yang panjangnya 64-bit disubstitusikan pada matriks permutasi kompresi PC-1. Dalam permutasi ini, setiap bit kedelapan (parity bit) dari delapan byte diabaikan. Hasil permutasi panjangnya menjadi 56-bit, yang kemudian dibagi menjadi dua bagian, yaitu kiri (C0) dan kanan (D0) masing-masing panjangnya 28-bit. Kemudian, bagian kiri dan kanan melakukan pergeseran bit pada setiap putaran sebanyak satu atau dua bit tergantung pada tiap putaran. Pada proses enkripsi, bit bergeser kesebelah kiri (left shift). Sedangkan untuk proses dekripsi, bit bergeser kesebelah kanan (right shift). Setelah mengalami pegeseran bit, Ci dan Di digabungkan dan disubstitusikan pada matriks permutasi kompresi dengan menggunakan matriks PC-2, sehingga panjangnya menjadi 48-bit. Proses tersebut dilakukan sebanyak 16 kali secara berulang-ulang. Gambar 2.5 Proses Pembangkitan Kunci Internal DES (Stinson, 1995)
14 2.7.2 Proses Enkripsi Plainteks yang diinputkan pertama akan disubstitusikan pada matriks permutasi awal (initial permutation) atau IP panjangnya 64-bit. Kemudian dibagi menjadi dua bagian, yaitu kiri (L) dan kanan (R) masing-masing panjangnya menjadi 32-bit. Kedua bagian ini masuk ke dalam 16 putaran DES. Satu putaran DES merupakan model jaringan Feistel, secara matematis jaringan Feistel dinyatakan sebagai berikut: Li = R i-1 ; 1 i 16 (2.6) R i = L i-1 ϴ f(r i-1, k i ) (2.7) Proses Pembangkitan Kunci-kunci Internal DES dapat dilihat seperti pada Gambar 2.6. Gambar 2.6 Proses Pembangkitan Kunci-kunci Internal DES (Stinson, 1995) Bagian R disubstitusikan pada fungsi ekspansi panjangnya menjadi 48-bit kemudian di-xor-kan dengan kunci internal yang sudah diproses sebelumnya pada proses pembangkitan kunci (pada putaran pertama menggunakan kunci internal pertama, dan seterusnya). Hasil XOR kemudian disubstitusikan pada S-box yang
15 dikelompokkan menjadi 8 kelompok, masing-masing 6-bit hasilnya menjadi 4-bit. Kelompok 6-bit pertama menggunakan S1, kelompok 6-bit kedua menggunakan S2, dan seterusnya. Setelah proses S-box tersebut panjangnya menjadi 32-bit. Kemudian disubstitusikan lagi pada matriks permutasi P-box, kemudian di-xor-kan dengan bagian L. Hasil dari XOR tersebut disimpan untuk bagian R selanjutnya. Sedangkan untuk bagian L diperoleh dari bagian R yang sebelumnya. Proses tersebut dilakukan 16 kali. Setelah 16 putaran selesai, bagian Ldan R digabungkan dan disubstitusikan pada matriks permutasi awal balikan (invers initial permutation) atau IP-1, hasilnya merupakan cipherteks 64-bit. 2.7.3 Proses Dekripsi Proses dekripsi terhadap cipherteks merupakan kebalikan dari proses enkripsi. DES menggunakan algoritma yang sama untuk proses enkripsi dan dekripsi. Jika pada proses enkripsi urutan kunci internal yang digunakan adalah k1, k2,..., k16 maka pada proses dekripsi urutan kunci internal yang digunakan adalah k16, k15,..., k1. Pada algoritma DES proses dekripsi dan enkripsinya menggunakan kunci yang sama. Proses dekripsi pada ciphertext merupakan proses kebalikan dari proses enkripsi. Jika pada proses enkripsi urutan kunci yang digunakan adalah K1, K2,, K16, maka untuk proses dekripsi urutan kunci yang digunakan adalah K16, K15,, K1. Masukkan awalnya adalah R16 dan L16 untuk deciphering. Blok R16 dan L16 diperoleh dengan mempermutasikan ciphertext dengan matriks permutasi IP-1. 2.8 Penelitian Terdahulu Penulis memiliki beberapa referensi dari beberapa penelitian terdahulu, mengenai pengenalan sidik jari maupun keamanan folder untuk membangun aplikasi Keamanan Folder pada penelitian ini dapat dilihat pada tabel 2.1. Tabel 2.1 Penelitian Terdahulu No Penelitian Metode Keterangan 1. Hani Febrina, 2014 Algoritma Eigenface Folder berhasil dikunci di windows akan tetapi folder dapat dibuka di operating system lain seperti Ubuntu dan mac.
16 Tabel 2.2 Penelitian Terdahulu (Lanjutan) No Penelitian Metode Keterangan 2. Christopel Daniel dan Willy. P, 2009 3. Bernardino Madaharsa, 2011 Data Encryption Standard Algoritma Serpent Folder dapat dikunci sehingga tidak dapat diakses tanpa memasukkan password pada aplikasi yang telah dibuat terlebih dahulu. Folder dapat dikunci dan ekstensi folder menjadi.dat. Folder yang dikunci akan menghasilkan ukuran yang lebih besar dari ukuran folder sebelum dikunci.