LAPORAN SKRIPSI APLIKASI PELINDUNG SOURCE CODE PHP DARI PELANGGARAN HAK CIPTA MENGGUNAKAN ALGORITMA RC4 DAN BASE64 SERTA PERLINDUNGAN SATU ARAH ENKRIPSI TANPA DEKRIPSI AGUNG RAHMAT RAMADHAN NIM. 201451062 DOSEN PEMBIMBING Endang Supriyati, S.kom., M.Kom Muhammad Malik Hakim, S.T., M.T.I PROGRAM STUDI TEKNIK INFORMATIKA FAKULTAS TEKNIK UNIVERSITAS MURIA KUDUS 2018 i
HALAMAN PENGESAHAN ii
PERNYATAAN KEASLIAN iii
APLIKASI PELINDUNG SOURCE CODE PHP DARI PELANGGARAN HAK CIPTA MENGGUNAKAN ALGORITMA RC4 DAN BASE64 SERTA PERLINDUNGAN SATU ARAH ENKRIPSI TANPA DEKRIPSI Nama mahasiswa : Agung Rahmat Ramadhan NIM : 201451062 Pembimbing : 1. Endang Supriyati, S.Kom., M.Kom 2. Muhammad Malik Hakim, S.T., M.T.I RINGKASAN Kriptografi adalah suatu ilmu yang mempelajari teknik maupun cara untuk melindungi suatu data agar tetap aman saat digunakan dan tidak dapat dibaca oleh orang yang tidak berkepentingan. Bahasa PHP merupakan bahasa pemrograman berbasis web yang sangat populer saat ini. Namun bahasa tersebut rentan untuk dilakukan pembajakan source code maupun ide dari pembuat asli suatu program tersebut dikarenakan tidak tersedianya software packaging. Keamanan source code masih mengalami banyak masalah dengan banyak penyalahguna an yang dilakukan terhadap source code asli dari pembuat program. Penelitian ini dimaksudkan untuk membuat suatu sistem keamanan dengan menggunakan algoritma RC4 dan Base64. Algoritma tersebut berfungsi sebagai pengubah data plaintext menjadi chipertext. Aplikasi dari penggunaan algoritma enkripsi tersebut dapat digunakan sebagai pelindung source code untuk para pembuat program yang takut kodenya dicuri atau disalahgunakan. Penerapan dari algoritma ini diharapkan dapat menjaga hak cipta dan privasi kode program dari penyalahgunaan dan pelanggaan hak cipta. Kata kunci : PHP, source code, software packaging, RC4, Base64, plaintext, chipertext. iv
SOFTWARE PROTECTION FOR PHP SOURCE CODE FROM VIOLATION OF COPYRIGHT USING RC4 AND BASE64 ALGORITHM AND ONE WAY ENCRYPTION WITHOUT DECRYPTION Student Name : Agung Rahmat Ramadhan Student Identity Number : 201451062 Supervisor : 1. Endang Supriyati, S.Kom., M.Kom 2. Muhammad Malik Hakim, S.T., M.T.I ABSTRACT Cryptography is a science that studies of techniques and ways to protect a data remains safe when used and can not be read by people who are not concerned. PHP language is a web-based programming language that is very popular today. But the language is very open because many people are trying to steal the source code and ideas from the original creator of a program. Security of source code still encountered many problems with many abuses committed to the original source code of the program maker. This research is intended to create a security system using RC4 and Base64 algorithm. The algorithm functions is to convert a plaintext data to chipertext. Applications from the usage of such encryption algorithms can be used as source code protectors for programmers who are afraid the code is stolen or misused. The application of this algorithm is expected to preserve the copyright and privacy of the code from the programmers of the abuse and retention of copyright. Keywords : PHP, source code, software packaging, RC4, Base64, plaintext, chipertext. v
KATA PENGANTAR Segala puji bagi Allah Tuhan sekalian alam yang telah memberikan waktu dan kesempatan kepada penulis untuk menyelesaikan Skripsi berjudul Aplikasi Pelindung Source Code PHP dari Pelanggaran Hak Cipta Menggunakan Algoritma RC4 dan Base64 Serta Perlindungan Satu Arah Enkripsi Tanpa Dekripsi. Penyusunan Skripsi ini ditujukan untuk memenuhi salah satu syarat memperoleh gelar Sarjana Komputer. Pelaksanaan Skripsi tidak terlepas dari bantuan dan dukungan beberapa pihak, untuk itu penulis menyampaikan ucapan terima kasih kepada : 1. Dr Suparnyo SH. MS., selaku Rektor Universitas Muria Kudus 2. Bapak Mohammad Dahlan ST. MT. selaku Dekan Fakultas Teknik Universitas Muria Kudus 3. Bapak Ahmad Jazuli S.Kom., M.Kom. selaku Ketua Program Studi Teknik Informatika S-1. 4. Ibu Endang Supriyati, S.Kom., M.Kom. yang telah menjadi pembibing 1 penulis untuk menyelesaikan skripsi. 5. Bapak Muhammad Malik Hakim, S.T., M.T.I yang telah menjadi pembibing 2 penulis untuk menyelesaikan skripsi. 6. Kepada orang tua saya yang telah menguatkan saya dalam segala aspek kehidupan. 7. Rekan-rekan mahasiswa angkatan 2014 atas rasa solid dan kebersamaan selama ini. Penulis menyadari adanya kekurangan dan ketidaksempurnaan dalam penulisan skripsi ini, karena itu penulis menerima kritik, saran dan masukan dari pembaca sehingga penulis dapat lebih baik di masa yang akan datang. Akhirnya penulis berharap semoga buku tesis ini bisa bermanfaat khususnya bagi penulis dan umumnya bagi para pembaca. Kudus, 7 Agustus 2017 Penulis vi
DAFTAR ISI HALAMAN PENGESAHAN... ii PERNYATAAN KEASLIAN... iii RINGKASAN... iv ABSTRACT... v KATA PENGANTAR... vi DAFTAR ISI... vii DAFTAR GAMBAR... ix DAFTAR TABEL... x DAFTAR LAMPIRAN... xi DAFTAR ISTILAH DAN SINGKATAN... xii BAB I PENDAHULUAN... 1 1.1. Latar Belakang... 1 1.2. Perumusan Masalah... 2 1.3. Batasan Masalah... 2 1.4. Tujuan... 3 1.5. Manfaat... 3 1.6. Sasaran Pengguna... 3 BAB II TINJAUAN PUSTAKA... 5 2.1. Keamanan Data... 5 2.2. Aplikasi... 5 2.3. Enkripsi dan Dekripsi... 5 2.4. Algortima Kriptografi RC4... 7 2.5. Algortima Kriptografi Base64... 15 2.6. Diagram Alir... 17 2.7. Penelitian Terkait... 19 BAB III METODOLOGI... 23 3.1. Metode Pengumpulan Data... 23 vii
3.2. Metodologi Pengembangan Sistem... 23 3.3. Kerangka Pemikiran... 24 3.4. Perancangan... 25 BAB IV HASIL DAN PEMBAHASAN... 29 4.1. Rancangan Interface Kriptografi RC4 dan Base64... 29 4.2. Proses Enkripsi RC4... 30 4.3. Proses Enkripsi Base64... 35 4.4. Antarmuka Program... 36 4.5. Uji Sistem... 37 BAB V PENUTUP... 45 5.1. Kesimpulan... 45 5.2. Saran... 45 DAFTAR PUSTAKA... 47 LAMPIRAN... 49 viii
DAFTAR GAMBAR Gambar 2.1 Cara kerja enkripsi dasar... 7 Gambar 2.2 Flowchart Alur Kerja Pengguna... 8 Gambar 2.3 Diagram RC4... 9 Gambar 2.4 Indeks Base64... 16 Gambar 2.5 American Standard Code for Information Interchange (ASCII)... 16 Gambar 2.6. Output Padding Base64... 17 Gambar 2.7 Kerangka Pemikiran... 24 Gambar 2.8 Perancangan Alur Sistem... 26 Gambar 4.1 Rancangan Antarmuka Kriptografi RC4 dan Base64... 29 Gambar 4.2 Antarmuka dasar sebelum enkripsi... 36 Gambar 4.3 Antarmuka setelah proses enkripsi... 37 Gambar 4.4 Pengaturan Dasar... 37 Gambar 4.5 Tampilan Dasar... 38 Gambar 4.6 Hasil Enkripsi... 38 Gambar 4.7 Skrip dimasukkan ke Text Editor... 38 Gambar 4.8 Tampilan Hasil Enkripsi di Browser... 39 Gambar 4.9 Code Manipulation Detected... 39 Gambar 4.10 Domain is not Allowed... 40 Gambar 4.11 Percobaan Dekripsi Base64Decode... 40 Gambar 4.12 Percobaan Dekripsi RBL JP... 41 Gambar 4.13 Percobaan Dekripsi URL Encode Decode... 42 Gambar 4.14 Percobaan Dekripsi Menggunakan Tools4Noob... 43 ix
DAFTAR TABEL Tabel 2.1 Proses XOR pseudo random byte dengan plaintext pada enkripsi... 15 Tabel 2.2 Proses XOR pseudo random byte dengan ciphertext pada dekripsi... 15 Tabel 2.3 Flowchart... 17 x
DAFTAR LAMPIRAN Lampiran 1 Biodata Penulis... 49 Lampiran 2 Hasil Blackbox Testing... 50 Lampiran 3 Hasil Whitebox Testing... 51 Lampiran 4 Hasil User Acceptance Testing... 52 xi
DAFTAR ISTILAH DAN SINGKATAN PHP : PHP Hypertext Preprocessor RC4 : Rivest s Code 4 KSA PRGA GPL CMS : Key-scheduling Algorithm : Pseudo-Random Generation Algorithm : GNU Public License : Content Management System xii