Jurnal Teknik Informatika  [PDF]

  • 0 0 0
  • Suka dengan makalah ini dan mengunduhnya? Anda bisa menerbitkan file PDF Anda sendiri secara online secara gratis dalam beberapa menit saja! Sign Up
File loading please wait...
Citation preview

IMPLEMENTASI SISTEM KEAMANAN FILE HOSTING DENGAN ALGORITMA AES PROSES HASH PADA PASSWORD Aris Trimanto1), Dadang Rusmana2) dan Aryo Nurutomo3) Program Studi Teknik Informatika, Institut Sains dan Teknologi Nasional Jl. Moh. Kahfi II, Bhumi Srengseng Indah, Jagakarsa, Jakarta Selatan 12640 Telp. (021) 7270090, Fax. (021) 7866955, E-mail : [email protected], [email protected] 1) [email protected], 2)[email protected], 3)[email protected] Naskah di terima 29 Februari 2016 dan naskah di setujui 29 Februari 2016



ABSTRACT The technology has been developed at this time led to a variety of alternative electronic storage media file or files. File Hosting is an alternative for the storage of electronic files because it can be used anywhere online. To ensure the security and integrity of the data in the File Hosting, it takes a process of encoding such as password protect files and encryption are performed when a file is uploaded. Meanwhile, the decryption process performed when users download files. By way of encoding earlier, the original data is uploaded into the server will not be read by unauthorized parties, but only to recipients who have the decryption key. In addition to the data file, the user's password properly is secured. The user password is stored in hashed form in the database, so that unauthorized parties such as the admin and the hacker can not read the actual password. In addition it is necessary to change the file name to prevent the name of the file containing the php script affect the system. Do also restrictions on file types may be uploaded, to prevent these types of malicious files such as viruses enter a computer server. So that the security system implemented, could improve information security for the user to store personal data such as files and confidential passwords from unauthorized parties. Keyword : AES, encryption, decryption, File Hosting, Hashing. ABSTRAK Teknologi yang sudah berkembang saat ini memunculkan berbagai alternatif media penyimpanan berkas elektronik atau file. File Hosting merupakan alternatif sebagai media penyimpanan berkas elektronik karena dapat digunakan dimana saja secara online. Untuk menjamin keamanan dan keutuhan dari suatu data dalam File Hosting tersebut, dibutuhkan suatu proses penyandian seperti memberikan password pada file dan enkripsi dilakukan ketika file di upload. Sementara itu, proses dekripsi dilakukan ketika pengguna men-download file. Dengan cara penyandian tadi, data asli yang di upload kedalam server tidak akan terbaca oleh pihak yang tidak berkepentingan, melainkan hanya oleh penerima yang memiliki kunci dekripsi. Selain data file, password milik pengguna pun patut diamankan. Password pengguna disimpan dalam bentuk hash didalam database, agar pihak yang tidak berkepentingan seperti admin dan hacker tidak dapat membaca password sesungguhnya. Selain itu perlu dilakukan perubahan nama file untuk mencegah nama file yang mengandung script php mempengaruhi proses sistem. Dilakukan juga pembatasan jenis file yang boleh di upload, untuk mencegah jenis file berbahaya seperti virus memasuki komputer server. Sehingga dengan sistem keamanan yang diterapkan tersebut dapat meningkatkan keamanan informasi untuk pengguna dalam menyimpan data pribadi seperti file dan password yang bersifat rahasia dari pihak yang tidak berkepentingan. Kata kunci : AES, enkripsi, dekripsi, File Hosting, Hash Password. 1



bahwa pernah terjadi serangan keamanan pada CV Maharta Mandiri Promo berupa pencurian file – file milik perusahaan yang bersifat rahasia dan penting sehingga mengakibatkan kerugian besar pada perusahaan tersebut. Tujuan dirancangnya aplikasi tersebut adalah untuk mengamankan file yang tersimpan dalam perusahaan dengan proses enkripsi menggunakan algoritma AES dan RSA[2]. Dari penelitian tersebut maka akan dilakukan enkripsi file yang tersimpan dalam server File Hosting ini dengan menggunakan algoritma AES (Advanced Encryption Standard) untuk mencegah data mudah terbaca ketika file dicuri entah oleh hacker atau rogue admin. Pada sisi keamanan informasi password milik pengguna, akan diterapkan proses hashing password, yaitu dengan membuat password milik pengguna yang tersimpan dalam database berbentuk hash, sehingga tidak mudah terbaca bahkan oleh admin sekalipun.



I. PENDAHULUAN A. Latar Belakang Media penyimpanan berkas elektronik atau file merupakan komponen penting dalam komputer, mulai dari yang berbentuk fisik seperti CD, harddisk atau flashdisk maupun yang berbasis website seperti File Hosting. Nikka Biruwatattaqu pada penelitiannya yang berjudul “Aplikasi File Sharing pada Jaringan LAN (Local Area Network)” menjelaskan bahwa aplikasi file sharing tersebut dibuat dengan tujuan untuk mempermudah mahasiswa di prodinya dalam menyimpan file dan berbagi file dengan mahasiswa lainnya. Dalam perancangannya, aplikasi file sharing tersebut juga membatasi jenis file yang diperbolehkan untuk di upload hanya file berekstensi PDF, msword, text dan odt untuk mencegah file virus dengan jenis yang tidak diketahui tersebar diantara para mahasiswa yang menggunakan aplikasi[1]. Dari penelitian tersebut dapat disimpulkan pembatasan file diperlukan untuk menghindari server terserang dari jenis file yang berbahaya, seperti file virus. Dilakukan perubahan nama file untuk setiap file yang di upload, dimaksudkan agar nama file yang terlalu panjang dapat diubah menjadi lebih pendek, selain itu perubahan nama file bisa digunakan sebagai id untuk file tersebut.



B. Rumusan Masalah Berdasarkan uraian latar belakang, maka permasalahan yang akan diteliti adalah : a. Dibutuhkan proses untuk mengenkripsi file yang tesimpan dalam server. b. Bagaimana melakukan hashing password pengguna agar tidak mudah terbaca oleh pihak yang tidak diinginkan, seperti admin dan hacker ? c. Karena file memiliki beragam jenis ekstensi, maka diperlukan pembatasan jenis file yang diperbolehkan untuk di upload.



Zaenal Mutaqqin pada penelitiannya yang berjudul “Pembuatan Aplikasi Enkripsi Menggunakan Metode Advance Encryption Standard dan Rivest Shamir Adleman Studi Kasus CV Maharta Mandiri Promo” menjelaskan 2



d. Nama file yang bisa saja berbentuk script PHP atau terlalu panjang, maka perlu dilakukan perubahan nama oleh sistem.



d. Perubahan nama file berfungsi untuk menyaring nama – nama file yang di upload dan sebagai unique id untuk setiap file.



C. Batasan Masalah



E. Manfaat Penelitian



Untuk terfokusnya penelitian ini, maka batasan masalah pada penelitian ini :



Manfaat dari penelitian ini adalah sebagai sistem File Hosting alternatif yang nantinya dapat dipergunakan untuk publik secara lokal ataupun menggunakan jaringan internet dalam suatu organisasi dan sebagai bahan penelitian untuk menganalisa celah keamanan khususnya pada sistem File Hosting bagi peneliti lain.



a. Enkripsi dan dekripsi file menggunakan algoritma AES Rijndael. b. Hashing password pengguna menggunakan fungsi Crypt yang tersedia dalam PHP dengan algoritma MD5. c. Jenis file yang dapat di upload dibatasi hanya jpeg, mp4, mp3, zip, rar, pdf, ppt, tiff, txt, xls dan doc. d. Proses perubahan nama file dilakukan dengan membuat fungsi untuk men-generate random name sepanjang 10 digit dari gabungan karakter antara A-Z,a-z, dan 0-9.



II. TINJAUAN PUSTAKA A. Keamanan Data Keamanan data adalah pemberian perlindungan basis data terhadap ancaman dan gangguan baik yang bersifat teknis maupun administrasi. Gangguan terhadap basis data sangat bervariasi, dimana dapat meliputi hardware, software, manusia dan data. Secara keseluruhan, gangguan baik fisik maupun nonfisik meliputi pencurian, hilangnya kerahasiaan, kehilangan integritas dan kehilangan [6] kemampuan .



D. Tujuan Penelitian Berikut adalah penelitian ini :



tujuan



dari



a. Mengamankan file dengan merubah isi file melalui enkripsi agar tidak dapat terbaca jika terjadi pencurian file tanpa memiliki kunci untuk file tersebut. b. Merubah bentuk password yang tersimpan dalam database agar tidak mudah terbaca oleh hacker dan admin sekalipun. c. Pembatasan file dilakukan untuk menyaring jenis file apa saja yang diperbolehkan untuk disimpan dalam File Hosting.



Untuk memberikan perlindungan keamanan basis data, diantaranya dapat dilakukan dengan pemberian otoritas terhadap pengguna dalam melakukan akses objek yang meliputi tabel basis data, view, aplikasi, prosedur atau objek lainnya dalam sistem. Adapun aspek-



3



aspek keamanan data adalah sebagai berikut.



untuk menjaga (message)[7].



a. Kerahasiaan (confidentiality), adalah layanan yang ditujukan untuk menjaga agar pesan tidak dapat dibaca oleh pihak-pihak yang tidak berhak. b. Integritas data (data integrity), adalah layanan yang menjamin bahwa pesan masih asli/utuh atau belum pernah dimanipulasi selama pengiriman. c. Otentikasi (Authentication), adalah layanan yang berhubungan dengan identifikasi, baik mengidentifikasi kebenaran pihak-pihak yang berkomunikasi (user Authentication) maupun mengidentifikasi kebenaran sumber pesan (data origin Authentication). d. Nirpenyangkalan (non-repudation), layanan untuk mencegah entitas yang berkomunikasi melakukan penyangkalan, yaitu pengirim pesan menyangkal melakukan pengiriman atau penerima pesan menyangkal telah menerima pesan.



keamanan



pesan



C. Enkripsi dan Dekripsi Proses Proses menyandikan plaintext menjadi ciphertext disebut enkripsi (encryption) atau enciphering (standar nama menurut ISO 7498-2). Proses mengembalikan ciphertext menjadi plaintext-nya disebut dekripsi (decryption) atau deciphering (standard nama menurut ISO 7498-2). Enkripsi adalah sebuah proses yang melakukan perubahan sebuah kode yang bisa dimengerti menjadi sebuah kode yang tidak bisa dimengerti (tidak terbaca). Enkripsi dapat diartikan sebagai kode atau cipher. Proses yang dilakukan untuk mengamankan pesan (yang disebut plaintext) menjadi pesan yang tersembunyi (disebut chipertext) adalah enkripsi (encryption). Ciphertext adalah pesan yang sudah tidak dapat dibaca dengan mudah. Proses sebaliknya, untuk mengubah ciphertext menjadi plaintext disebut deskripsi (decryption)[7].



B. Kriptografi



D. Algoritma AES



Kriptografi (cryptography) berasal dari bahasa Yunani: "cryptos" artinya "secret" (rahasia), sedangkan "gráphein" artinya "writing" (tulisan). Jadi kriptografi berarti "secret writing" (tulisan rahasia).



AES (Advanced Encryption Standard) adalah teknik enkripsi yang dijadikan standard FIPS oleh NIST tahun 2001. AES dimaksudkan akan, secara bertahap, menggantikan DES sebagai standar enkripsi di Amerika Serikat untuk abad ke 21. (DES sebagai standar FIPS telah dicabut, Mei 2005.) AES menjadi standar melalui proses seleksi. Dari beberapa teknik enkripsi yang dicalonkan untuk menjadi AES, yang terpilih adalah enkripsi Rijndael. Teknik enkripsi ini termasuk jenis



Menurut Menezes, kriptografi adalah ilmu yang mempelajari teknikteknik matematika yang berhubungan dengan aspek keamanan informasi seperti kerahasiaan, integritas data serta otentikasi. Menurut Schneier, kriptografi adalah ilmu sekaligus seni 4



block cipher seperti halnya dengan DES. Perbedaan utama antara teknik enkripsi AES dan teknik enkripsi DES adalah AES juga menggunakan substitusi (menggunakan S-boxes) secara langsung terhadap naskah, sedangkan substitusi S-box digunakan DES hanya dalam fungsi cipher f yang hasilnya kemudian dioperasikan terhadap naskah menggunakan exclusive or, jadi DES tidak menggunakan substitusi secara langsung terhadap naskah. AES juga menggunakan kunci enkripsi yang lebih besar yaitu 128 bit, 192 bit, atau 256 bit[9].



i.



SubBytes: substitusi byte dengan menggunakan tabel substitusi (S-box). ii. ShiftRows: pergeseran barisbaris array state secara wrapping. iii. MixColumns: mengacak data di masing-masing kolom array state. iv. AddRoundKey: melakukan XOR antara state sekarang round key. c. Final round: proses untuk putaran terakhir: i. SubBytes ii. ShiftRows iii. AddRoundKey E. Algoritma MD5 MD5 di desain oleh Ronald Rivest pada tahun 1991 untuk menggantikan hash function sebelumnya, yaitu MD4 yang berhasil diserang oleh kriptanalis. Algoritma MD5 menerima masukan berupa pesan dengan ukuran sembarang dan menghasilkan message digest yang panjangnya 128 bit.



Gambar II.1 Diagram proses enkripsi AES



MD-5 adalah salah satu aplikasi yang digunakan untuk mengetahui bahwa pesan yang dikirim tidak ada perubahan sewaktu berada di jaringan. Algoritma MD-5 secara garis besar adalah mengambil pesan yang mempunyai panjang variabel diubah menjadi ‘sidik jari’ atau ‘intisari pesan’ yang mempunyai panjang tetap yaitu 128 bit. ‘Sidik jari’ ini tidak dapat dibalik untuk mendapatkan pesan, dengan kata lain tidak ada orang yang dapat melihat pesan dari ‘sidik jari’ MD-5.



Seperti pada gambar 2.2, garis besar Algoritma Rijndael yang beroperasi pada blok 128-bit dengan kunci 128-bit adalah sebagai berikut (di luar proses pembangkitan round key) : a. AddRoundKey: melakukan XOR antara state awal (plaintext) dengan cipher key. Tahap ini disebut juga initial round. b. Putaran sebanyak Nr–1 kali. Proses yang dilakukan pada setiap putaran adalah: 5



Message Digest 5 (MD-5) adalah salah satu penggunaan fungsi hash satu arah yang paling banyak digunakan. MD-5 merupakan fungsi hash kelima yang dirancang oleh Ron Rivest dan didefinisikan pada RFC 1321. MD-5 merupakan pengembangan dari MD-4 dimana terjadi penambahan satu ronde. MD-5 memproses teks masukan ke dalam blok-blok bit sebanyak 512 bit, kemudian dibagi ke dalam 32 bit sub blok sebanyak 16 buah. Keluaran dari MD-5 berupa 4 buah blok yang masing-masing 32 bit yang mana akan menjadi 128 bit yang biasa disebut nilai hash. Simpul utama MD5 mempunyai blok pesan dengan panjang 512 bit yang masuk ke dalam 4 buah ronde. Hasil keluaran dari MD5 adalah berupa 128 bit dari byte terendah A dan tertinggi byte D[9].



Tingkat kontrol aksesnya terdiri dari Admin dan Client. B. Metode Penelitian Tahapan metode penelitian yang dilakukan dalam penelitian ini :



Langkah-langkah pembuatan message digest secara garis besar: a. Penambahan bit-bit pengganjal (padding bits). b. Penambahan nilai panjang pesan semula. c. Inisialisasi penyangga (buffer) MD. d. Pengolahan pesan dalam blok berukuran 512 bit.



Gambar III.1 Tahapan Penelitian



C. Identifikasi Masalah Pada tahap ini dilakukan identifikasi terhadap permasalahan yang akan dibahas dalam penelitian, yaitu : a. Apa alternatif sistem backup file selain media fisik seperti harddisk ? b. Bagaimana keamanan informasi milik user pada sistem penyimpanan tersebut ?



III. METODOLOGI PENELITIAN A. Objek Penelitian Objek penelitian ini adalah sistem File Hosting berbasis web yang dibuat secara sederhana dan ditekankan pada perancangan sistem keamanannya. File Hosting ini terdiri dari proses registrasi, login, upload file, download file, remove file, dan administration. 6



c. Apakah sistem tersebut dapat diandalkan sekaligus aman sesuai dengan standar CIA (Confidentiality, Integrity, Availability) triad keamanan informasi ? D. Analisa Kebutuhan Sistem Dilakukan analisa kebutuhan sistem untuk keamanan pada sistem File Hosting, yaitu : a. Menentukan tingkat kontrol akses pengguna yang terdiri dari grup admin dan client. b. Memilih enkripsi untuk password melalui fungsi “Crypt” hashing dalam PHP yang menggunakan algoritma MD5. c. Memilih algoritma enkripsi/dekripsi file menggunakan algoritma AES Rijndael dan menggunakan AES encryption library sebagai fungsi dalam plugin. E. Perancangan Sistem Pada tahap ini dibuat rancangan sistem keamanan File Hosting dengan membuat diagram UML (Unified Model Language) yang terdiri dari use case, class, activity, sequence dan deployment diagram, serta conceptual data model dan rancangan layout sistem.



Pengujian sistem dilakukan sebagai pembuktian bahwa sistem keamanan yang dibuat berfungsi dengan baik dan sesuai dengan yang sudah dirancang melalui beberapa skenario pengujian. 1. Proses enkripsi file Proses enkripsi file digambarkan dengan flowchart algoritma sebagai berikut :



Gambar IV.1 Flowchart proses enkripsi sebuah file



Pada gambar diatas adalah flowchart proses enkripsi sebuah file dengan ukuran key 128 bit dengan jumlah putaran 10 kali. Proses SubBytes, ShiftRows, MixColumn dan AddRoundKey dilakukan disetiap putaran. Tabel S-Box dalam proses merupakan tabel dengan isi yang sudah dikomputasi oleh sistem.



IV. HASIL DAN PEMBAHASAN A. Implementasi dan Pengujian Implementasi sistem dilakukan setelah tahap perancangan dengan fungsi – fungsi yang diinginkan selesai. Pada tahap ini dilakukan implementasi sistem keamanan terhadap sistem File Hosting yang sudah dibuat.



Proses enkripsi menggunakan algoritma AES disini diuji coba menggunakan file berekstensi .txt dengan nama daftar pustaka.txt dan isi sebagai berikut : 7



Gambar IV.2 Isi file .txt yang akan diuji coba Gambar IV.4 Key dan IV untuk file daftar pustaka.txt



Dapat dilihat pada gambar diatas file teks tersebut sudah berisi beberapa inputan dan akan diuji coba untuk dilakukan enkripsi pada file tersebut. Kemudian file diupload kedalam server dan dilakukan enkripsi oleh sistem. Saat enkripsi sistem akan mengenerate random key untuk file tersebut sepanjang 32 bytes.



Pada gambar diatas terdapat informasi key dan iv yang sudah di generate khusus untuk file Daftar Pustaka.txt. Selanjutnya sistem membaca terlebih dahulu isi data file tersebut sebagai plaintext melalui fungsi :



Gambar IV.5 Fungsi baca isi file dan enkripsi file



Gambar IV.3 Fungsi generate random key



Gambar diatas adalah fungsi yang digunakan oleh sistem untuk membaca isi data file, kemudian dilakukan enkripsi terhadap isi data file tersebut. Setelah isi data file sudah dienkripsi, maka hasil enkripsi tersebut dimasukkan kembali kedalam file, sebagai isi data file yang baru berbentuk ciphertext, melalui fungsi :



Gambar diatas adalah fungsi untuk generate random key saat file akan di upload, kemudian random key tersebut disimpan dalam database untuk digunakan kembali ketika file tersebut akan didekripsi.



8



Fungsi diatas digunakan untuk menulis ulang isi file dengan iv dan ciphertext yang sudah dihasilkan melalui proses enkripsi.



admin, maka isi file tersebut tidak dapat langsung terbaca tanpa dilakukan proses dekripsi kembali menggunakan key yang hanya dimiliki oleh pengguna.



Pengujian file yang telah terenkripsi dengan merubah nama file dengan menambahkan ekstensi file tersebut, untuk melihat isi file apakah sudah menjadi ciphertext atau belum.



2. Proses hash password Proses hashing password dijelaskan dalam flowchart algoritma sebagai berikut :



Gambar IV.7 Flowchart proses hashing password



Pada gambar diatas, menunjukkan proses algoritma hashing password. Ketika password sebagai pesan diinput, dihitung dahulu panjang pesan tersebut, jika panjang pesan ≠ 448 mod 512, maka akan dilakukan padding bits dengan bit pertama ‘1’ dan bit – bit selanjutnya ‘0’ hingga panjang pesan = 448 mod 512. Selanjutnya nilai panjang pesan disimpan dengan panjang 64 bit. Nilai panjang pesan tersebut kemudian ditambahkan ke pesan semula sehingga panjang pesan



Gambar IV.6 Hasil output berupa ciphertext setelah dienkripsi



Pada gambar diatas adalah isi file Daftar Pustaka.txt yang sudah terenkripsi oleh sistem menggunakan algoritma enkripsi AES dengan key dan iv yang sudah di generate secara random. Hasil diatas membuktikan fungsi enkripsi sebagai pengamanan file agar ketika file dicuri oleh hacker atau rogue 9



menjadi kelipatan 512 bit. Kemudian dilakukan initial buffer, yaitu pembentukan word A,B,C,D dengan panjang 8 bit. Pesan yang akan diproses dibagi menjadi blok – blok dengan panjang 512 bit dan setiap blok diproses menggunakan initial buffer yang menghasilkan pesan dengan bentuk word A,B,C,D. Langkah terakhir adalah menggabungkan hasil word A,B,C,D tersebut menjadi bentuk hash. Proses Hashing dilakukan pada saat pengguna melakukan registrasi dan login. Pada registrasi, jika masukkan adalah berupa password, maka akan dilakukan proses hashing menggunakan fungsi Crypt dalam PHP dengan algoritma MD5.



sudah dihashing kedalam database.



disimpan



Untuk pengguna dengan info sebagai berikut : Username : arisclient Password : artking Menghasilkan password dengan bentuk hashing yang tersimpan dalam database sebagai berikut :



Gambar IV.9 Password dalam database yang sudah di hashing



Pada gambar diatas menunjukkan bahwa password dengan input “artking” menghasilkan hashing dengan keluaran yaitu “$1$b4/.IN/.$j36VBeQWgdDa fYrjs70Dm.”. Bagian “b4/.IN/.” adalah random salt yang sudah di generate oleh sistem Hashing adalah proses one-way encryption yang berarti proses enkripsi satu arah, jadi tidak bisa dilakukan pembalikan hasil hashing menjadi password dengan hasil plaintext “artking” kembali. Jika terjadi perubahan input walaupun hanya 1 karakter, akan menghasilkan hasil hashing yang berbeda dengan yang tersimpan dalam database.



Gambar IV.8 Fungsi untuk hashing password pengguna



Pada gambar diatas adalah fungsi yang terdapat dalam kelas defaultAuth dalam sistem. Ketika inputan adalah password, maka akan dilakukan fungsi “Crypt” pada password tersebut, yaitu fungsi hashing menggunakan algoritma MD5 dengan random salt yang digunakan di generate secara otomatis oleh sistem. Setelah itu baru password yang 10



Untuk password file, proses hashing password kurang lebih sama dengan proses hashing password user, yaitu menggunakan fungsi “Crypt” dalam PHP dengan algortima MD5. Hanya saja password file disimpan dalam tabel untuk files dan fungsi hashing tersebut disimpan dalam kelas PasswordPlugin.



Gambar IV.10 Contoh hasil hash dengan perbedaan hanya 1 karakter



Karena itu pada proses login hanya dilakukan pembandingan hasil hashing password dengan hasil hashing password saat input password dalam proses login, jika terjadi kesalahan walaupun hanya 1 karakter, akan mengakibatkan gagal untuk login.



Gambar IV.12 Password file yang sudah dihashing



Pada gambar diatas, file Daftar Pustaka.txt dengan masukkan password “aris123” menghasilkan hasil hashing yaitu “$1$N23.SL3.$nDg0QJTPpH M28VCezIt61/”.



Gambar IV.11 Fungsi untuk validasi hashing password saat login



Pada gambar diatas merupakan fungsi dalam kelas defaultAuth dalam sistem. Fungsi ini melakukan pengecekan apakah pengguna sedang aktif atau tidak, kemudian saat proses login dilakukan hashing pada password dengan salt yang digunakan adalah hasil hash password milik pengguna yang tersimpan didalam database. Kemudian dicocokkan dengan password yang sudah tersimpan dalam database, jika sama maka diberikan hasil dengan value benar dan jika tidak sama maka akan digagalkan dengan memunculkan peringatan salah password.



Gambar IV.13 Fungsi untuk validasi password file



Gambar diatas, saat melakukan proses download suatu file, dilakukan hashing masukkan berupa password file menggunakan fungsi “Crypt” dengan algoritma MD5, kemudian hasil hashing akan dicocokkan dengan hashing password yang tersimpan, jika sama maka akan dilanjutkan dengan proses download file dan jika tidak sama maka 11



proses akan memunculkan peringatan password file salah.



V. PENUTUP A. Simpulan Kesimpulan dari penelitian ini adalah : a. Proses enkripsi memerlukan key agar dapat merubah isi dari suatu file menjadi data rahasia yang tidak bisa dibaca, sehingga pihak yang dapat melihat isi asli dari file tersebut hanyalah si pemilik key untuk file tersebut. b. Password hashing memerlukan salt untuk mengamankan password user dengan menghasilkan bentuk acak berupa bilangan heksadesimal dan karena bersifat one-way encryption, yaitu data password tidak dapat dikembalikan ke bentuk password yang asli, sehingga yang mengetahui password asli hanyalah si pemilik password tersebut. c. Mime type dapat dijadikan pedoman untuk menyaring jenis file apa saja yang diperbolehkan untuk memasuki sistem ketika upload. d. Proses perubahan nama file menjadi bentuk acak membantu dalam menyaring nama file yang kurang baik, seperti terlalu panjang atau mengandung unsur script PHP dan juga dapat dijadikan unique id untuk file tersebut. e. Performa sistem dipengaruhi oleh jumlah sistem keamanan yang diterapkan dan dampak negatif terbesar ada pada proses sistem keamanan enkripsi file. B. Saran Saran untuk perkembangan penelitian ini lebih lanjut :



B. Tampilan website



Gambar IV.14 Halaman login



Gambar IV.15 Halaman upload file



Gambar IV.16 Halaman Admin



Gambar IV.17 Halaman register



12



a. Mengganti algoritma hashing password dengan algoritma yang lebih modern, seperi SHA (Secure Hash Algorithm). b. Menambahkan sistem yang mendukung enkripsi untuk multi-file upload. DAFTAR PUSTAKA [1]. Nikka Biruwatattaqu. 2014. Aplikasi File Sharing Pada Jaringan Lan (Local Area Network). Skripsi Universitas Muhammadiyah Surakarta. [2]. Zaenal Muttaqin. 2010. Aplikasi Enkripsi menggunakan Metode Advance Encryption Standard dan Rivest Shamir Adleman – Studi Kasus CV Maharta Mandiri Promo. Skripsi – UIN - Jakarta. [3]. Kadir, Abdul dan Triwahyuni, Terra CH. 2012. Pengantar Teknologi Informasi. Yogyakarta: Penerbit Andi. [4]. Jubilee Enterprise. 2013. Rahasia Manajemen File. Jakarta: Elex Media Komputindo. [5]. Riyanto, Djalal. 2014. Buku Ajar Basis Data. Semarang : Universitas Diponegoro. [6]. Dadan Rosnawan. 2012. Aplikasi Algoritma RSA untuk Keamanan Data. Skripsi - UNS-Semarang. [7]. Rinaldi Munir, R. 2014. Kriptografi. Bandung: Informatika. [8]. Deris Setiawan. 2013. Sistem Keamanan Komputer. Jakarta: Elex Media Komputindo [9]. Sentot Kromodimoeljo. 2012. Teori dan Aplikasi Kriptografi. SPK IT Consulting. [10]. Chris Shiflett. 2014. Essential PHP Security. USA: O’Reilly Media. 13