(Studi kasus: BiNus Center Bintaro)
SKRIPSI
Sebagai salah satu syarat untuk memperoleh gelar Sarjana Komputer (S.Kom) Program Studi Teknik Informatika Fakultas Sains dan Teknologi
Universitas Islam Negeri (UIN) Syarif Hidayatullah Jakarta
Oleh :
ASEP ERLAN MAULANA
NIM : 203091001957
PROGRAM STUDI TEKNIK INFORMATIKA
FAKULTAS SAINS DAN TEKNOLOGI
UNIVERSITAS ISLAM NEGERI SYARIF HIDAYATULLAH
JAKARTA 2010 / 1431 H
(Studi kasus: BiNus Center Bintaro)
Skripsi
Sebagai salah satu syarat untuk memperoleh gelar Sarjana Komputer Pada Fakultas Sains dan Teknologi
Universitas Islam Negeri Syarif Hidayatullah Jakarta
Oleh :
ASEP ERLAN MAULANA
203091001957
Menyetujui,
Pembimbing I, Pembimbing II,
Qurrotul Aini, MT NIP. 197303252009012001 Arini, MT
NIP. 197601312009012001
Mengetahui,
Ketua Program Studi Teknik Informatika
Yusuf Durrachman M.Sc, MIT NIP. 197105222006041002
Sidang Munaqosah Fakultas Sains dan Teknologi Universitas Islam Negeri Syarif Hidayatullah Jakarta, pada hari Rabu tanggal 1 September 2010. Skripsi ini telah diterima sebagai salah satu syarat untuk memperoleh gelar Sarjana Komputer pada Program Teknik Informatika
Jakarta, September 2010
Tim Penguji,
Penguji I
Viva Arifin, MMSI NIP. 197308102006042001
Penguji II
Imam M.Shofi, MT NIP. 197202052008011010
Qurrotul Aini, MT NIP. 197303252009012001
Mengetahui,
Dekan
Fakultas Sains Dan Teknologi
DR. Syopiansyah Jaya Putra, M.Sis NIP. 196801172001121001
Ketua Program Studi Teknik Informatika
Yusuf Durrachman M.Sc, MIT NIP. 197105222006041002
SEBAGAI SKRIPSI ATAU KARYA ILMIAH PADA PERGURUAN TINGGI ATAU LEMBAGA MANAPUN.
Jakarta, September 2010
Asep Erlan Maulana 203091001957
DES dan kompresi LZSS (Studi kasus: BiNus Center Bintaro). dibimbing oleh Arini dan Qurrotul Aini.
Perkembangan teknologi komunikasi dengan menggunakan komputer memungkinkan pengiriman data jarak jauh melalui gelombang radio maupun media lain yang digunakan masyarakat luas sangat memungkinkan pihak lain untuk menyadap dan mengubah data yang dikirimkan. Seperti kasus yang terjadi pada BiNus Center Bintaro yaitu perubahan atau kehilangan data yang berupa nilai siswa pada jaringan LAN Dikarenakan keteledoran oleh admin yang menggunakan komputer kelas dan lupa untuk mematikan komputer tersebut sehingga siswa bisa dengan mudah mengakses server untuk Merubah atau mencuri data. Demikian juga Kasus yang terjadi ketika admin BiNus Center Bintaro mengirimkan data yang berupa nilai siswa ke BiNus Center Pusat terjadi perubahan atau kehilangan data oleh pihak-pihak yang tidak bertanggung jawab. Untuk mencegah terjadinya kehilangan data tersebut peneliti disini membuat sebuah aplikasi yang menggabungkan enkripsi data yang menggunakan algoritma
Triple DES dan kompresi data yang menggunakan algoritma LZSS pada pengiriman data dari BiNus Center Bintaro ke BiNus Center Pusat. Metode yang digunakan adalah Extreme Programming (XP). Ada empat tahapan yang dilakukan dalam melakukan pengembangan aplikasi XP (Extreme Programming) yaitu: Perencanaan (Planning), Perancangan (Design), Pengkodean (Coding) dan Pengujian (Testing). Dengan adanya aplikasi Pengamanan data dengan enkripsi Triple DES dan kompresi LZSS berbasis web memberikan solusi pada BiNus Center Bintaro dalam mengamankan sekaligus mengurangi ukuran byte data. Pengembangan aplikasi selanjutnya dapat dikembangkan dengan menggunakan algoritma AES (Advanced Encryption Standard) dan kompresi data yang menggunakan LZ78.
Kata Kunci: Aplikasi, Extreme Programming, Kriptografi Triple Data Encryption Standard, Algoritma Lempel Ziv Storer szymanski.
Puji syukur kehadirat Allah SWT yang telah memberikan nikmat iman,
nikmat sehat jasmani dan rohani. Shalawat serta salam tak lupa penulis tujukan
kepada Nabi Muhammad SAW, Nabi terakhir yang telah membimbing umatnya
menuju jalan yang diridhai Allah SWT. Penulis bersyukur karena dengan izin
Allah SWT, pada akhirnya penulis dapat menyelesaikan laporan ini.
Skripsi yang berjudul ” Pengamanan data dengan enkripsi triple DES dan kompresi LZSS (Studi kasus: BiNus Center Bintaro)“ Dengan merupakan salah satu tugas wajib mahasiswa sebagai persyaratan untuk mengambil
gelar Strata 1 (S1) pada program studi Teknik Informatika Universitas Islam
Negeri Syarif Hidayatullah Jakarta.
Penyusunan skripsi ini tidak mungkin dapat penulis laksanakan dengan
baik tanpa bantuan dari berbagai pihak yang terkait. Untuk itu penulis ingin
mengucapkan banyak terima kasih secara khusus kepada beberapa pihak, antara
lain :
1. Bapak DR. Ir. Syopiansyah Jaya Putra, M.Sis, selaku Dekan Fakultas
Sains dan Teknologi UIN Syarif Hidayatullah Jakarta.
2. Bapak Yusuf Durrachman M.Sc, MIT sebagai ketua program studi
Teknik Informatika.
3. Ibu Arini, MT dan Ibu Qurroatul Aini, MT selaku Dosen Pembimbing,
yang telah memberikan bimbingan, waktu dan perhatiannya dalam
penyusunan skripsi ini.
dadan dan Keluarga di Tasikmalaya yang tiada hentinya memberikan
dorongan dan spirit serta doa dan kasih sayangnya.
7. M. Taufik Yusuf se-keluarga yang telah menyempatkan waktunya
membantu dan membimbing selama penulisan ini berlangsung.
8. Indra Jatmiko se-keluarga yang telah menyempatkan waktunya
membantu dan membimbing selama penulisan ini berlangsung.
9. Dian Wahyuningsih S.IKom. calon istriku yang selalu memberikan
doa, semangat dan sabar dalam menunggu.
10.Teman-teman seperjuangan angkatan 2003 Fakultas Sains dan
Teknologi Ekstensi yang tidak bisa disebutkan satu persatu, “Junjung
Tinggi Nilai Kebersamaan dan Persaudaraan”.
Penulis sadar masih banyak sekali kekurangan dari skripsi ini, dan penulis
terbuka terhadap segala saran dan kritik yang membangun.
Akhir kata penulis mempersembahkan skripsi ini dengan segala kelebihan
dan kekurangannya, semoga dapat bermanfaat bagi kita semua, amien.
Jakarta, September 2010
Asep Erlan Maulana
sebesar-besarnya kepada semua pihak atas dukungan moral maupun materiil yang
sangat berarti sehingga penulisan skripsi ini dapat diselesaikan, diantaranya :
1. Allah SWT. Dzat Yang Maha Pengasih dan Maha Penyayang. Terima kasih ya Allah
atas semua kemudahan yang Engkau berikan kepada hamba-Mu ini. Berkahilah jihad
hamba-Mu dalam menuntut ilmu ini, dan semoga ilmu yang telah Engkau berikan
dapat hamba amalkan dengan baik.
2. Penghargaan yang setinggi-tingginya kepada Bapak(Alm) dan Mamah tercinta
yang selalu mendoakan dan mencurahkan kasih sayang kepada AA. AA
sayang kalian.
3. Kakak dan adikku tersayang, Teteh Rohyeni, AA dadan, Ai Nuralisah. Jika
bukan karena kalian mungkin aa ga semangat lagi ngerjain skripsi.
4. Dosen pembimbingku, Bu Arini dan Pak Bu Qurratul Aini. Makasih ya bu,
atas ilmu dan waktu yang telah ibu korbankan untuk membimbing skripsi
saya.
5. Seluruh keluarga besar penulis baik yang ada di Jakarta, Bekasi, Bandung,
Tasik, dan garut.
6. Sahabat-sahabat Cipasungku Bang nana, V-rex, Jampek, Goday, Bos kutu,
Dani dan Agus lalo. Ki Vrex Anom Berkata : “Sing manfaat elmu ti
CIPASUNG teh” hehehehe. Saya akan mengingat terus kata-kata itu.
7. Special thanks for Dyean Maulana dan Keluarga, terimakasih atas doa dan dukungannya yang luar biasa. “AA mah Pokonamah Bogoh Pisan Ka Neng”
persahabatan selama di kampus serta bantuan yang kalian berikan selama
penulisan skripsi ini. Semoga persahabatan ini tetap terjalin.
9. Sahabat-sahabat di KOS 69 : Denis, Achonk, Saidil, Ma’ruf, kang Acep.
Makasih ya atas dorongannya wabil khusus ka mang Arif “Haturnuhun pisan
tos masihan ka Abdi tempat iye jang ngerjakeun skripsi iye nepi ka tuntas”.
10.Dan semua pihak yang telah membantu penulis dalam menyelesaikan skripsi
ini, secara langsung maupun tidak langsung. Mohon maaf jika belum tersebut
di atas. Terima kasih untuk kalian semuanya.
Ciputat, September 2010
Asep Erlan Maulana
Persetujuan Pembimbing ... ii
Halaman Pengesahan ... iii
Halaman Pernyataan ... iv
Abstrak ... v
Kata Pengantar ... vi
Halaman Persembahan... viii
Daftar Isi ... x
Daftar Gambar ... xiv
Daftar Tabel... xvi
BAB I : PENDAHULUAN ... 1
1.1 Latar Belakang Masalah... 1
1.2 Perumusan Masalah ... 2
1.3 Batasan Masalah ... 2
1.4 Tujuan Penelitian...3
1.5 Manfaat Penelitian ... 3
1.6 Metode Penelitian ... 5
1.6.1 Metode Pengumpulan Data ... 5
1.6.2 Metode Pengembangan Sistem ... 6
1.7 Sistematika Penelitian ... 6
2.2 Pengertian Komunikasi Data ...8
2.2.1 Komponen Komunikasi Data ...9
2.3 Pengertian Kriptografi ...9
2.3.1 Konsep Dasar Kriptografi...9
2.3.2 Sistem Kriptografi (Cryptosystem)...10
2.3.3 Algoritma Kriptografi...11
2.3.3.1 Kriptosistem Simetrik...14
2.3.3.2 Kriptosistem Asimetrik...14
2.3.4 Kriptosistem DES ...15
2.3.4.1 Kelebihan DES ...19
2.3.4.2 Kelemahan DES ...19
2.3.5 Triple Data Encryption Standard (Triple DES) ...19
2.3.5.1 Kelebihan Triple DES ...22
2.3.5.2 Kelemahan Triple DES...22
2.4 Kompresi Data ...22
2.4.1 Lempel Ziv Storer and szymanski (LZSS) ...22
2.4.2 Algoritma Kompresi LZSS...24
2.4.3 Algoritma Dekompresi LZSS ...25
2.5 HTML ...26
2.6 PHP ...30
2.9.1 Sejarah Perusahaan ...37
2.9.2 Visi dan Misi BiNus Center...39
2.9.3 Struktur Organisasi ...40
2.10 Metodologi Penelitian...41
2.10.1 Pengertian Metodologi Penelitian ...41
2.10.2 Metodologi Pengumpulan Data ...42
2.11 Metode Pengembangan Sistem...43
2.12 Unified Modelling Language (UML) ...47
BAB III : METODOLOGI PENELITIAN ...51
3.1 Metode Pengumpulan Data ...51
3.1.1 Studi Pustaka...51
3.1.2 Studi Lapangan ...52
3.1.3 Studi Literatur Sejenis...53
3.2 Metode Pengembangan Sistem ...56
BAB IV IMPLEMENTASI DAN PEMBAHASAN ...60
4.1 Perencanaan (Planning) ...60
4.1.1 Analisis Sistem berjalan...60
4.1.2 Studi kelayakan ...60
4.1.3 Analisis Kebutuhan Aplikasi...62
4.1.4 Penentuan Actor...63
4.1.4.3 Uses Case Scenario...66
4.2 Perancangan (Design) ...73
4.2.1 Perancangan Use Case Diagram ...73
4.2.2 Perancangan Sequence Diagram...82
4.2.3 Perancangan Class Diagram...92
4.3 Pengkodean (Coding) ...93
4.3.1 Halaman Login...93
4.3.2 Menu Home...97
4.3.3 Menu Kompresi & Enkripsi ...102
4.3.4 Proses Kompresi & Enkripsi...104
4.3.5 Halaman Laporan (report) Proses Kompresi & Enkripsi ...106
4.3.6 Menu Dekripsi & Dekompresi ...110
4.3.7 Proses Dekripsi & Dekompresi...112
4.3.8 Halaman Laporan (report) Proses Dekripsi & Dekompresi .115 4.4 Pengujian (Testing) ...117
BAB V : KESIMPULAN DAN SARAN ...129
5.1 Kesimpulan ...131
5.2 Saran...132
DAFTAR PUSTAKA ...133
LAMPIRAN ...A-1
Halaman
Gambar 2.1. Komunikasi Data... 9
Gambar 2.2. Ilustrasi Proses Enkripsi dan Dekripsi ... 13
Gambar 2.3. Round Pada DES ... 15
Gambar 2.4. Key Schedule Pada DES ... 16
Gambar 2.5. Hubungan Antar S-box ... 17
Gambar 2.6. Skema Enkripsi DES... 18
Gambar 2.7. Proses Triple DES Dengan Tiga Kunci... 19
Gambar 2.8. Lemvel-Zip Family ... 23
Gambar 2.9. Teks Cetak... 33
Gambar 2.10. Teks Hasil Scan... 34
Gambar 2.11. Teks Elektronik ... 35
Gambar 2.12. Hypertext... 36
Gambar 2.13. Fase Dari XP ... 45
Gambar 2.14. Notasi Use Case... 48
Gambar 2.15. Diagram Use Case... 48
Gambar 3.1. Alur Kerja Penilitian... 58
Gambar 4.1. Use Case Diagram... 66
Gambar 4.2. Activity Diagram untuk Login... 74
Gambar 4.3. Activity Diagram untuk menentukan password ... 75
Gambar 4.4. Activity Diagram Untuk Memasukkan File ... 76
Gambar 4.5. Activity Diagram Untuk Mengkompresi & Menenkripsi File ... 77
Gambar 4.6.Activity Diagram Untuk Mendownload File... 78
Gambar 4.11. Sequence Diagram Untuk menentukan Password... 83
Gambar 4.12. Sequence Diagram Untuk Memasukkan File... 85
Gambar 4.13. Sequence Diagram Untuk Mengkompresi & Mengenkripsi... 86
Gambar 4.14. Sequence Diagram Untuk Mendownload File ... 87
Gambar 4.15. Sequence Diagram Untuk Memasukkan Password ... 89
Gambar 4.16. Sequence Diagram Untuk Mendekripsi & Mendekompresi File. 90 Gambar 4.17. Sequence Diagram Untuk Logout... 91
Gambar 4.18. Class Diagram... 92
Halaman
Tabel 2.1. Contoh Enkripsi ... 12
Tabel 2.2. 16 putaran untuk tiga kunci... 20
Tabel 2.3. Input stream untuk Kompresi... 24
Tabel 2.4. Proses Kompresi Algoritma LZSS ... 25
Tabel 2.5. Input Stream untuk Dekompresi ... 26
Tabel 2.6. Proses Dekompresi Algoritma LZSS... 26
Tabel 2.7. Perbedaan Pengembangan Sistem... 43
Tabel 2.8. Aspek-aspek Studi Kelayakan ... 46
Tabel 3.1. Studi Literatur ... 53
Tabel 4.1. Scenario Pada Login... 67
Tabel 4.2. Scenario Pada Menentukan Password ... 67
Tabel 4.3. Scenario Pada Memasukkan File... 68
Tabel 4.4. Scenario Pada Mengkompresi & Mengenkripsi File... 69
Tabel 4.5. Scenario Pada Mendownload File ... 70
Tabel 4.6. Scenario Pada Memasukkan password ... 71
Tabel 4.7. Scenario Pada Mendekripsi & Mendekompresi File ... 72
Tabel 4.8. Scenario Pada Logout... 72
Tabel 4.9. Menampilkan Halaman login... 119
Tabel 4.10.Menampilkan Halaman Home... 120
Tabel 4.11.Menampilkan Halaman Kompresi & Enkripsi... 122
Tabel 4.12.Menampilkan Halaman Laporan Kompresi & Enkripsi ... 123
Tabel 4.13.Hasil Proses Enkripsi Kompresi ... 124
Tabel 4.14.Menampilkan Halaman Dekripsi & Dekompresi... 125
(Studi kasus: BiNus Center Bintaro)
Oleh :
ASEP ERLAN MAULANA
203091001957
PROGRAM STUDI TEKNIK INFORMATIKA
FAKULTAS SAINS DAN TEKNOLOGI
xiii
Halaman
Gambar 2.1. Komunikasi Data... 9
Gambar 2.2. Ilustrasi Proses Enkripsi dan Dekripsi ... 12
Gambar 2.3. Round Pada DES ... 15
Gambar 2.4. Key Schedule Pada DES ... 16
Gambar 2.5. Hubungan Antar S-box ... 16
Gambar 2.6. Skema Enkripsi DES... 17
Gambar 2.7. Proses Triple DES Dengan Tiga Kunci... 19
Gambar 2.8. Lemvel-Zip Family ... 22
Gambar 2.9. Teks Cetak... 32
Gambar 2.10. Teks Hasil Scan... 33
Gambar 2.11. Teks Elektronik ... 34
Gambar 2.12. Hypertext... 35
Gambar 2.13. Fase Dari XP ... 46
Gambar 2.14. Notasi Use Case... 50
Gambar 2.15. Diagram Use Case... 50
Gambar 3.1. Alur Kerja Penilitian... 62
Gambar 4.1. Use Case Diagram... 68
Gambar 4.2. Activity Diagram untuk Login... 74
Gambar 4.3. Activity Diagram untuk menentukan password ... 75
Gambar 4.4. Activity Diagram Untuk Memasukkan File ... 76
Gambar 4.5. Activity Diagram Untuk Mengkompresi & Menenkripsi File ... 77
Gambar 4.6.Activity Diagram Untuk Mendownload File... 78
Gambar 4.7. Activity Diagram Untuk Memasukkan Password ... 79
Gambar 4.8.Activity Diagram Untuk mendekripsi & mendekompresi File... 80
xiv
Gambar 4.14. Sequence Diagram Untuk Mendownload File ... 86 Gambar 4.15. Sequence Diagram Untuk Memasukkan Password ... 87 Gambar 4.16. Sequence Diagram Untuk Mendekripsi & Mendekompresi File. 88 Gambar 4.17. Sequence Diagram Untuk Logout... 89 Gambar 4.18. Class Diagram... 90
xii
Tabel 2.1. Contoh Enkripsi ... 11
Tabel 2.2. 16 putaran untuk tiga kunci... 19
Tabel 2.3. Input stream untuk Kompresi... 23
Tabel 2.4. Proses Kompresi Algoritma LZSS ... 24
Tabel 2.5. Input Stream untuk Dekompresi ... 25
Tabel 2.6. Proses Dekompresi Algoritma LZSS... 25
Tabel 2.7. Perbedaan Pengembangan Sistem... 42
Tabel 2.8. Aspek-aspek Studi Kelayakan ... 22
Tabel 3.1. Studi Literatur ... 56
Tabel 4.1. Scenario Pada Login... 68
Tabel 4.2. Scenario Pada Menentukan Password ... 69
Tabel 4.3. Scenario Pada Memasukkan File... 70
Tabel 4.4. Scenario Pada Mengkompresi & Mengenkripsi File... 70
Tabel 4.5. Scenario Pada Mendownload File ... 71
Tabel 4.6. Scenario Pada Memasukkan password ... 72
Tabel 4.7. Scenario Pada Mendekripsi & Mendekompresi File ... 72
Tabel 4.8. Scenario Pada Logout... 73
Tabel 4.9. Menampilkan Halaman login... 113
Tabel 4.10.Menampilkan Halaman Home... 114
Tabel 4.11.Menampilkan Halaman Kompresi & Enkripsi... 116
Tabel 4.12.Menampilkan Halaman Laporan Kompresi & Enkripsi ... 117
Tabel 4.13.Hasil Proses Enkripsi Kompresi ... 119
Tabel 4.14.Menampilkan Halaman Dekripsi & Dekompresi... 120
Tabel 4.15.Menampilkan Halaman Laporan Dekripsi & Dekompresi ... 121
Tabel 4.16.Hasil Proses Dekripsi & Dekompresi ... 122
1.1Latar Belakang
Perkembangan teknologi komunikasi dengan menggunakan komputer
memungkinkan pengiriman data jarak jauh melalui gelombang radio maupun media
lain yang digunakan masyarakat luas sangat memungkinkan pihak lain untuk
menyadap dan mengubah data yang dikirimkan. Bocornya informasi dan
penyalahgunaan data yang berakibat sangat fatal pada sebuah perusahaan, lembaga
ataupun perorangan. Demikian juga, pada sistem jaringan komputer maupun secara
luas pada internet dengan jumlah pemakai yang banyak.
Seperti kasus yang terjadi pada BiNus Center Bintaro yaitu perubahan atau
kehilangan data yang berupa nilai siswa pada jaringan LAN dikarenakan keteledoran
oleh admin yang menggunakan komputer kelas dan lupa untuk mematikan komputer
tersebut sehingga siswa bisa dengan mudah mengakses server untuk Merubah atau mencuri data. Demikian juga kasus yang terjadi ketika admin BiNus Center Bintaro
mengirimkan data yang berupa nilai siswa ke BiNus Center Pusat terjadi perubahan
atau kehilangan data oleh pihak-pihak yang tidak bertanggung jawab. Untuk
mencegah terjadinya kehilangan data tersebut peneliti disini membuat suatu aplikasi
pengamanan dan kompresi data yang berbasiskan web dengan menggunakan algoritma Triple DES dan algoritma LZSS.
Algoritma Triple DES dikembangkan untuk mengatasi kelemahan ukuran kunci yang digunakan pada proses enkripsi-deskripsi DES sehingga teknik kriptografi ini
lebih tahan terhadap exhaustive key search yang dilakukan oleh kriptoanalis. Dan dalam penggunaanya Triple DES, mampu menahan serangan terhadap brute force.
Sedangkan pada teknologi kompresi data, banyak algoritma yang telah
dikembangkan di antaranya algoritma Huffman, aritmatik, Lempel-Ziv. Peneliti
hanya menggunakan algoritma LZSS, yaitu algoritma turunan dari algoritma
Lempel-Ziv.
1.2Perumusan masalah
Berdasarkan latar belakang serta identifikasi masalah yang peneliti lakukan,
maka peneliti merumuskan permasalahan yaitu:
a. Bagaimana cara mengamankan data dengan menggunakan enkripsi triple DES Pada BiNus Center Bintaro yang berbasis web?
b. Bagaimana cara mengurangi ukuran data dengan menggunakan kompresi
LZSS pada BiNus Center Bintaro yang berbasis web?
1.3Batasan Masalah
Seiring dengan kemampuan peneliti yang sangat terbatas dan untuk menghindari
meluasnya permasalahan, maka pada penelitian skripsi ini hanya mencakup:
a. Meneliti dan menganalisis terhadap prosedur-prosedur yang berhubungan
yang digunakan untuk enkripsi adalah algoritma Triple DESS dan untuk kompresi menggunakan algoritma LZSS.
b. Penelitian dititikberatkan pada segi keamanan data dengan pencegahan
pembacaan file oleh pihak-pihak yang tidak bertanggung jawab dan segi kompresi data.
c. Implementasi program sebagai penyelesaian masalah dikembangkan dalam
basis web, yaitu dengan menggunakan bahasa pemograman PHP 5. Web server yang digunakan dalam pengembangan program adalah Apache.
1.4Tujuan Penelitian
Adapun tujuan penelitian ini adalah membuat sebuah aplikasi yang
menggabungkan enkripsi data yang menggunakan algoritma Triple DES dan kompresi data yang menggunakan algoritma LZSS pada pengiriman data dari BiNus
Center Bintaro ke BiNus Center Pusat.
1.5Manfaat Penelitian
Sesuai dengan permasalahan dan tujuan penelitian yang telah disebutkan di atas,
maka manfaat penelitian dapat dirumuskan sebagai berikut:
1. Bagi Peneliti :
a) Menambah wawasan peneliti tentang pemrograman PHP dengan
memanfaatkan algoritma Triple DES untuk enkripsi data dan kompresi data menggunakan algoritma LZSS pada pengiriman nilai-nilai siswa di BiNus
b) Untuk memenuhi salah satu syarat dalam menempuh gelar S1 (Strata 1)
pada Fakultas Sains dan Teknologi Jurusan Teknik Informatika Universitas
Islam Negeri Jakarta.
2.Bagi Pengguna :
a) Memberikan pengamanan data khususnya pada nilai-nilai siswa di BiNus
Center Bintaro ke Binus Center pusat agar data tersebut benar-benar
terjamin dan terjaga keamanannya serta tidak mudah untuk dibaca oleh
pihak-pihak lain yang tidak berkepentingan.
b) Sebagai referensi bagi pengguna yang mempunyai minat dalam
mengembangkan tentang pemrograman PHP khususnya PHP 5 dengan
memanfaatkan bidang ilmu kriptografi.
3.Bagi Universitas :
a) Mengetahui kemampuan mahasiswa dalam menguasai materi baik teori
maupun praktek yang telah diperoleh selama masa kuliah.
b) Mengetahui kemampuan mahasiswa dalam menerapkan ilmunya dan
1.6 Metode Penelitian
Metode penelitian yang digunakan dalam penyusunan skripsi ini adalah sebagai
berikut:
1.6.1 Metode Pengumpulan Data
1. Studi Pustaka
Pengumpulan data dan informasi dengan cara mempelajari buku-buku
referensi, e-book, dan website yang dapat dijadikan acuan pembahasan dalam masalah ini.
2. Studi Lapangan
a. Wawancara
Pengumpulan data dan informasi dengan cara melakukan
wawancara dengan staf yang ada pada Binus Center Bintaro.
b. Observasi
Observasi adalah metode pengumpulan informasi dengan cara pengamatan atau peninjauan langsung terhadap obyek penelitian.
3. Studi Penelitian Sejenis
Pengumpulan data dan informasi dengan cara membaca hasil
penelitian yang sudah dilakukan sebelumnya yang didapat dari internet
atau perpustakaan yang dapat dijadikan sebagai acuan dalam
1.6.2 Metode Pengembangan Sistem
Metode yang digunakan adalah Extreme Programming (XP). Ada empat tahapan yang dilakukan dalam melakukan pengembangan aplikasi XP
(Extreme Programming) yaitu: Perencanaan (Planning), Perancangan (Design), Pengkodean (Coding) dan Pengujian (Testing).
1.7 Sistematika penelitian
Sistematika penelitian tugas akhir secara garis besar menggambarkan isi
keseluruhan dari tugas akhir ini, dimana terdiri dari lima bab dan setiap bab saling
terkait. Berikut ini penjelasan umum mengenai tiap-tiap bab, yaitu:
BAB I Pendahuluan
Membahas mengenai latar belakang, perumusan masalah, batasan masalah,
tujuan penelitian, manfaat penelitian, metode penelitian dan sistematika
penelitian.
BAB II Landasan Teori
Berisi penjelasan secara umum mengenai teori yang menjadi dasar penelitian
skripsi, yaitu konsep dasar enkripsi dan dekripsi, konsep kompresi dan
dekompresi data, bahasa pemograman yang dipakai, profile perusahaan
BAB III Metode Penelitian
Bab ini menjelaskan metode yang digunakan, seperti metode pengumpulan
data dan metode pengembangan sistem menggunakan model Extreme Programming (XP) yang meliputi empat tahap yaitu Perencanaan, Perancangan, Pengkodean dan Pengujian.
BAB IV Implementasi dan Pembahasan
Bab ini menjelaskan tentang tahapan metode XP dalam pengamanan data
menggunakan enkripsi Triple DES dan Kompresi LZSS berbasis web. BAB V Kesimpulan dan Saran
Bab ini berisikan kesimpulan dari implementasi dan pembahasan serta saran
untuk mengembangkan penelitian yang lebih baik di masa akan datang.
BAB II
LANDASAN TEORI
2.1Pengertian Aplikasi
Menurut Roger S. Pressman perangkat lunak adalah perintah (program
komputer) yang bila dieksekusi memberikan fungsi dan unjuk kerja seperti yang
diinginkan, struktur data yang memungkinkan program memanipulasi informasi
secara proporsional, dokumen yang menggambarkan operasi dan kegunaan
program.(Pressman, 2002).
Aplikasi adalah sebuah program komputer yang dibuat khusus untuk
menjalankan fungsi-fungsi tertentu sesuai dengan kebutuhan pengguna yang di
gunakan untuk mempercepat suatu kegiatan. (http://unduhan.sytes.net/Dokumen/).
Aplikasi adalah penggunaan atau penerapan.(http://pusatbahasa.diknas.go.id).
2.2Pengertian Komunikasi data
Komunikasi data adalah merupakan bagian dari telekomunikasi yang secara
khusus berkenaan dengan transmisi atau pemindahan data dan informasi diantara
komputer-komputer dan piranti-piranti yang lain dalam bentuk digital yang
dikirimkan melalui media komunikasi data. Data berarti informasi yang disajikan
oleh isyarat digital. Komunikasi data merupakan bangunan vital dari suatu
masyarakat informasi karena sistem ini menyediakan infrastruktur yang
2.2.1 Komponen Komunikasi Data
1. Pengirim, adalah piranti yang mengirimkan data
2. Penerima, adalah piranti yang menerima data
3. Data, adalah informasi yang akan dipindahkan
4. Media pengiriman, adalah media atau saluran yang digunakan untuk
mengirimkan data
5. Protokol, adalah aturan-aturan yang berfungsi untuk menyelaraskan
hubungan.
Gambar 2.1. Komunikasi data
(http://www.scribd.com/doc/21958583/Komunikasi-Data).
2.3Pengertian Kriptografi
2.3.1 Konsep Dasar Kriptografi
Kriptografi berasal dari bahasa yunani crypto yang berarti tersembunyi atau rahasia dan graphia yang berarti tulisan. Menurut terminologinya, kriptografi adalah ilmu dan seni untuk menjaga keamanan
pesan ketika pesan dikirim dari suatu tempat ke tempat lain (Ariyus, 2008).
Pesan adalah data atau informasi yang dapat dibaca dan dimengerti
kurir, saluran telekomunikasi,dsb) atau yang disimpan didalam media
perekaman (kertas, storage, dsb). (Munir, 2006).
Ada beberapa pengertian menurut istilah, diantaranya yaitu :
1. Kriptografi adalah ilmu sekaligus seni untuk menjaga kerahasiaan pesan
dengan cara menyandikannya ke dalam bentuk yang tidak dapat
dimengerti lagi maknanya (Munir, 2006).
2. Kriptografi adalah ilmu yang mempelajari bagaimana supaya pesan atau
dokumen kita aman, tidak bisa dibaca oleh pihak yang tidak berhak
(Kurniawan, 2004).
3. Kriptografi adalah ilmu yang mempelajari bagaimana melakukan enkripsi
dan dekripsi, dengan memanfaatkan model matematika (Kurniawan, 2008).
2.3.2 Sistem kriptografi (Cryptosystem)
Cryptosystem adalah prosedur secara matematika, bagaimana suatu
plaintext diubah menjadi ciphertext. Secara umum cyptosystem dibagi menjadi dua tipe prosedur, yaitu:
1. Hashing functions, prosedur one-way (satu arah) untuk menghasilkan
ciphertext dari plaintext. Maksud one-way disini artinya, apabila suatu
plaintext telah diubah menjadi ciphertext, maka ciphertext ini tidak diubah kembali menjadi plaintext.
2. Encryption algorithms, prosedur two-way yang memungkinkan suatu
plaintext diubah menjadi ciphertext ataupun sebaliknya.
a. Symmetric algorithm, memakai share key untuk melakukan enkripsi dan dekripsi.
b. Asymmetric algorithm, memakai dua key, yaitu public key untuk enkripsi dan private key untuk dekripsi (Kurniawan, 2008).
2.3.3 Algoritma kriptografi
Algoritma adalah urutan langkah-langkah logis untuk menyelesaikan
masalah yang disusun secara sistematis. Algoritma kriptografi merupakan
merupakan langkah-langkah logis bagaimana menyembunyikan pesan dari
orang-orang yang tidak berhak atas pesan tersebut (Ariyus, 2008).
Algoritma kriptografi terdiri dari tiga fungsi dasar, yaitu:
1. Enkripsi : merupakan hal yang sangat penting dalam kriptografi,
merupakan pengamanan data yang dikirimkan agar terjaga
kerahasiaannya. Pesan asli disebut plaintext, yang di ubah menjadi kode-kode yang tidak di mengerti. Enkripsi bisa diartikan dengan cipher atau
kode. Beda halnya dengan enkripsi, untuk mengubah teks-asli ke bentuk
teks kode kita menggunakan algoritma yang dapat mengkodekan data yang
kita ingini.
Sebagai contoh : kita mengubah beberapa kata menjadi angka, seperti pada
Tabel 2.1
Contoh Enkripsi
Huruf Asal Huruf diganti
A 4
U 2
I 1
E 3
O 8
PHY 7
Dari tabel diatas, misalkan kita mempunyai kata CRYPTOGRAPHY, maka akan menjadi CR7PT8GR47.
2. Dekripsi : merupakan kebalikan dari enkripsi. Pesan yang telah di enkripsi
dikembalikan ke bentuk asalnya (teks-asli), disebut dengan dekripsi pesan.
Algoritma yang digunakan untuk dekripsi tentu berbeda dengan algoritma
yang digunakan untuk enkripsi. Sebagai contoh: kata CR7PT8GR47
dengan menggunakan algoritma dekripsi tertentu, akan menjadi kata
CRYPTOGRAPHY
3. Kunci : yang dimaksud disini adalah kunci yang dipakai untuk melakukan
enkripsi dan dekripsi. Kunci terbagi menjadi dua bagian, yaitu: kunci
Ciphertext
Plaintext
Kunci Kunci
Plaintext Enkripsi Dekripsi
Gambar 2.2. Ilustrasi Proses Enkripsi dan Dekripsi
Secara matematis proses enkripsi dan dekripsi dapat
digambarkan sebagai:
C = E(P) dan P = D(C), sehingga
P = D(E(P))
Dimana
P = plaintext
C = ciphertext
E = fungsi enkripsi yang memetakan plaintext ke ciphertext
D = fungsi dekripsi yang memetakan ciphertext ke plaintext
Ada empat tujuan mendasar dari ilmu kriptografi ini yang juga
merupakan aspek keamanan informasi yaitu (Munir, 2006):
1. Kerahasiaan (confidentiality), adalah layanan yang ditujukan untuk menjaga agar pesan tidak dapat dibaca oleh pihak-pihak yang tidak
berhak.
2. Integritas data (data integrity), adalah layanan yang menjamin bahwa pesan masih asli/utuh atau belum pernah dimanipulasi selama
3. Otentikasi (authentication), adalah layanan yang berhubungan dengan identifikasi, baik mengidentifikasi kebenaran pihak-pihak yang
berkomunikasi (user authentication atau entity authentication) maupun mengidentifikasi kebenaran sumber pesan (data origin authentication). 4. Nirpenyangkalan (non-repudiation), adalah layanan untuk mencegah
suatu entitas yang berkomunikasi melakukan penyangkalan, yaitu
pengirim pesan menyangkal melakukan pengiriman atau penerima
pesan menyangkal telah melakukan pengiriman.
Kriptosistem membutuhkan suatu kunci, berdasarkan kunci yang
digunakan kriptosistem dibagi menjadi dua yaitu :
2.3.3.1 Kriptosistem Simetrik
Enkripsi dan dekripsi menggunakan kunci yang sama. Contoh: DES,
RC4, Blowfish, AES, IDEA, A5.
2.3.3.2 Kriptosistem Asimetrik
Enkripsi dan dekripsi menggunakan kunci yang berbeda tetapi
merupakan pasangan. Pasangan tersebut terdiri dari :
1. Kunci publik (public )
Kunci ini dapat disebarkan kesiapa saja. Setiap yang mengetahui
kunci ini dapat melakukan enkripsi namun cipherteks yang
dihasilkan hanya dapat didekripsi menggunakan kunci
2. Kunci pribadi (private )
Kunci ini adalah pasangan dari kunci publik, hanya boleh diketahui
oleh pihak yang membangkitkan kunci.
Kriptosistem asimetrik bisa disebut juga kriptosistem kunci publik.
Contoh: RSA, El Gamal, Rabin.
2.3.4 Kriptosistem DES
Data Encryption Standard (DES) adalah salah satu kriptosistem simetrik. Dipublikasikan sejak tahun 1977 dan telah dipakai sebagai standar
selama 18 tahun. Berdasarkan data inputan yang diproses, DES termasuk
dalam kriptosistem blok dimana enkripsi dilakukan terhadap 1 blok data
plaintext sebanyak 64-bit dan kunci 56-bit. Plaintext tersebut dilewatkan kepada 16 tahap enkripsi yang disebut iterasi atau round. Round dapat
digambarkan sebagai berikut:
Li-1 Li-1 Key
Shift Shift
Gambar 2.3.Round pada DES
S-Box Permutation
P-Box P t ti
Expansion Compression
Nilai keluaran setiap round ditukar posisinya sebelum memasuki
round berikutnya. Pada tiap round digunakan nilai kunci yang dibangkitkan
dari kunci input melalui proses schedule. Proses tersebut dapat digambarkan sebagai berikut:
Bagian yang terpenting dari kriptosistem DES adalah S-box. S-box ini
merupakan fungsi yang memetakan suatu nilai biner 6-bit menjadi nilai biner
LEFTSHIFTS LEFT SHIFTS LEFT SHIFTS
D 15
C 15
LEFT SHIFTS LEFT SHIFTS
4-bit. DES memiliki 8 buah S-box yang merupakan fungsi non linear, dimana
nilai keluarannya tidak dapat dikembalikan atau digunakan untuk mencari
nilai inputan S-box tersebut. S-box dapat digambarkan sebagai berikut :
48-Bit Input
S-Box 1 S-Box 2 S-Box 3 S-Box 4 S-Box 5 S-Box 6 S-Box 7 S-Box 8
32-Bit Output
Gambar 2.5. Hubungan Antar S-box
Sebelum memasuki round pertama plainteks mengalami perubahan posisi bit melalui proses initial permutasi. Dan setelah melewati round
terakhir terjadi perubahan posisi bit melalui proses invers initial permutasi
yang merupakan kebalikan dari initial permutasi. Output dari invers initial
Cipherteks R0
R1=L0⊕ f(R0,K1)
R2=L1⊕ f(R1,K2)
R15=L14⊕ f(R14,K15)
L16 = R15
L0
L2 = R1
R16=L15⊕ f(R15,K16)
L15 = R14
L1 = R0
IP
IP-1 f
f
f
K1
K16
K2
Gambar 2.6. Skema Enkripsi DES
Dalam implementasinya DES banyak digunakan untuk mengamankan
data yang bersifat terbatas, dimana klasifikasinya penting tetapi tidak terlalu
rahasia. Kriptosistem ini digunakan karena dianggap cukup kuat dan mudah
diimplementasikan pada perangkat keras maupun perangkat lunak. Diantara
aplikasi penggunaannya adalah pada bidang perbankan yaitu untuk
2.3.4.1 Kelebihan DES
1. Proses enkripsinya lebih cepat.
2. kekuatanya terletak pada panjang kuncinya.
2.3.4.2 Kelemahan DES
1. Enkripsi dan dekripsi menggunakan kunci yang sama
2. Panjang kunci DES yang hanya 56 bit, sehingga dengan muda bagi
kriptoanalis untuk dapat membobolnya.
2.3.5 Triple Data Encryption Standard (Triple DES)
3DES (Triple Data Encryption Standard) merupakan suatu algoritma pengembangan dari algoritma DES (Data Encryption Standard). Pada dasarnya algoritma yang digunakan sama, hanya pada 3DES dikembangkan
dengan melakukan enkripsi dengan implementasi algoritma DES sebanyak
tiga kali. 3DES memiliki tiga buah kunci yang berukuran 168-bit (tiga kali
kunci 56-bit dari DES). Coba perhatikan gambar dibawah ini:
Enkripsi
Pada gambar diatas terdapat tiga kunci, yaitu K1, K2, K3. Proses kerja dari
3DES, K1 berfungsi untuk enkripsi, K2 untuk dekripsi, dan K3 untuk
enkripsi, atau juga dikenal dengan mode Encrypt Descrypt Encript (EDE).
Contoh:
Diberikan tiga kunci:
K1 = 0x260b152f31b51c68
K2 = 0x321f0d61a773b558
K3 = 0x519b7331bf104ce3
Dan teks-asli P = 0x403da8a295d3fed9
16 Putaran kunci yang cocok diberikan K1, K2, dan K3. Untuk melakukan
perhitungan, yaitu pada tabel:
Tabel 2.2 : 16 Putaran tiga Kunci
Putaran K1 K2 K3
1 000ced9158c9 5a1ec4b60e98 03e4ee7c63c8
2 588490792e94 710c318334c6 8486dd46ac65
3 54882eb9409b c5a8b4ec83a5 575a226a8ddc
4 a2a006077207 96a696124ecf aab9e009d59b
5 280e26b621e4 7e16225e9191 98664f4f5421
6 e03038a08bc7 Ea906c836569 615718ca496c
7 84867056a693 88c25e6abb00 4499e580db9c
8 c65a127f0549 245b3af0453a 93e853d116b1
10 A311155c0deb 1a915708a7f0 27b30c31c6a6
11 0d02d10ed859 2d405ff9cc05 0a1ce39c0c87
12 1750b843f570 2741ac4a469a f968788e62d5
13 9e01c0a98d28 9a09b19d710d 84e78833e3c1
14 1a4a0dc85e16 9d2a39a252e0 521f17b28503
15 09310c5d42bc 87368cd0ab27 6db841ce2706
16 53248c80ee34 30258f25c11d C9313c0591e3
Enkripsi:
Tahap Pertama : EK1 = 0x7a39786f7ba32349
Tahap Kedua : DK2 = 0x9c60f85369113aea
Tahap Ketiga : EK3 = 0xe22ae33494beb930 = C ( Teks Kode )
Dekripsi:
Tahap Pertama : DK3 = 0x9c60f85369113aea
Tahap Kedua : EK2 = 0x7a39786f7ba32349
Tahap Ketiga : DK1 = 0x403da8a295d3fed9 = P ( Teks asli )
2.3.5.1 Kelebihan Triple DES
1. Proses enkripsi dekripsi 3 kali dari DES jadi lebih aman dibandingkan
dengan DES.
2.3.5.2 Kelemahan Triple DES
1. Proses enkripsi dan dekripsinya menggunakan kunci yang sama.
2. Dapat dianalisis dengan metode linier cryptoanalysis atau davies attack.
2.4 Kompresi Data
Kompresi data menurut David Solomon (2004) adalah suatu metode
mengurangi munculnya kata berulang-ulang dengan mengecilkan atau
menggabungkan bit-bit data yang sama sehingga data lebih kecil dan dapat
diandalkan dalam penyimpanannya atau kompresi data menurut Ida
Mangyi Pu (2006) adalah ilmu atau seni untuk menampilkan informasi yang
tersusun rapi dan padat. Sedangkan pemampatan (decomperssion) adalah kegiatan mengembalikan data yang telah dimampatkan ke dalam bentuk
dan ukuran semula tanpa menghilangkan atau mengurangi informasi yang ada
sebelumnya dalam data tersebut.
2.4.1 Lempel Ziv Storer and szymanski (LZSS)
LZSS ( Lempel Ziv Storer and Szymanski ) merupakan skema yang diinisialisasikan oleh Lempel dan Ziv dan dikembangkan oleh Storer dan
Szymanski.
LZSS berasal dari turunan LZ77 dan bagian dari kompresi data
loseless yang mana data yang terkompresi akan tetap asli setelah dikompresi.
Berikut gambar yang menerangkan bahwa LZSS adalah turunan dari LZ77 :
Gambar 2.8. Lempel-Ziv Family
(http://www.mahastama.com/kompresi).
Dan berikut istilah-istilah yang dipakai dalam algoritma LZSS :
1. Input Stream : urutan karakter yang akan di kompres.
2. Coding Position : posisi karakter dalam input stream yang akan dikodekan
( awal lookahead buffer ).
3. lookahead buffer : urutan karakter dari coding position sampai akhir input stream.
4. window Ukuran W yang berisi W karakter dari coding position kebelakang, yaitu karakter W yang terakhir di proses.
2.4.2 Algoritma kompresi LZSS
Berikut langkah-langkah proses kompresi LZSS :
1. Menempatkan coding position pada awal input stream. 2. Mencari deretan karakter terpanjang pada lookahead buffer.
P : = pointer yang cocok
L : = pointer yang cocok
3. Apakah L >= MIN_LENGTH ?
YA : Output P dan pindahkan coding position L karakter ke depan TIDAK : Output karakter pertama dari lookahead buffer and pindahkan coding position satu karakter kedepan
4. jika masih ada karakter pada input stream, maka kembali ke langkah 2,
jika tidak ada karakter lagi pada input stream, berarti proses kompresi selesai.
Untuk lebih jelasnya dapat dilihat contoh proses kompresi pada
algoritma LZSS. Contoh ini memakai panjang minimum penyalinan string
dengan dua, yang dapat dilihat pada Tabel 2.3 dan 2.4.
Tabel 2.3
Input stream untuk kompresi
Posisi 1 2 3 4 5 6 7 8 9 10 11
Tabel 2.4
Proses kompresi algoritma LZSS ( MIN_LENGTH = 2 )
Langkah Posisi Cocok Output
1 1 -- A
2 2 A A
3 3 -- B
4 4 B B
5 5 -- C
6 6 BB (3,2)
7 8 AAB (7,3)
8 11 C C
Pada Tabel 2.2 ada empat kolom, berikut penjalasan singkatnya :
1. Kolom Langkah menunjukkan langkah proses kompresi .
2. Kolom Posisi menunjukkan coding position.
3. Kolom Cocok menampilkan deretan karakter pada Window
4. Kolom Output penulisan ke Output stream, format pengkodeannya
(B,L). Berarti ”Kembali B karakter pada window dan copy L
karakter ke output ”.
2.4.3 Algoritma dekompresi LZSS
Proses dekompresi merupakan kebalikan dari proses kompresi. Untuk
Tabel 2.5
Input stream untuk dekompresi
Posisi 1 2 3 4 5 6 7 8
Karakter A A B B C (3,2) (7,3) C
Tabel 2.6
Proses dekompresi algoritma LZSS
Langkah Input Output
1 A A
2 A A
3 B B
4 B B
5 C C
6 (3,2) BB
7 (7,3) AAB
8 C C
2.5 HTML
HTML adalah singkatan dari HyperText Markup Languageadalah salah satu bahasa pemprograman web desaign dan juga biasa di sebut script untuk menyusun
dokumen-dokumen Web. Dokumen HTML disimpan dalam format teks reguler
(http://ilmukomputer.org).
Struktur dasar HTML adalah sebagai berikut:
<html>
<head>
<title>Judul Dokumen HTML</title>
</head>
<body>
penulisan informasi Web
</body>
</html>
Dari struktur dasar HTMLdi atas dapat dijelaskan sebagai berikut:
1.
Tag
Adalah teks khusus (markup) berupa dua karakter "<" dan ">", sebagai contoh <body> adalah tag dengan nama body. Tag harus ditulis secara
berpasangan, yang terdiri atas tag pembuka dan tag penutup
(ditambahkan karakter "/" setelah karakter "<"),
sebagai contoh <body> ini adalah tag pembuka isi dokumen HTML,
dan </body> ini adalah tag penutup isi dokumen HTML.
2.
Element
Element terdiri atas tiga bagian, yaitu tag pembuka, isi, dan tag
penutup. Sebagai contoh untuk menampilkan judul dokumen HTML
pada web browser digunakan element title, dimana: <title> ini adalah
isi judul dari dokumen HTML</title> ini adalah tag penutup judul
dokumen HTMLTag-tag yang ditulis secara berpasangan pada suatu
element HTML, tidakboleh saling tumpang tindih dengan pasangan
tag-tag lainnya.
Contoh penulisan tag-tag yang benar :
<p>
<b>
</b>
</p>
Catatan : Jika penulisan script salah, maka script tidak terbaca
sempurna (Error) sehingga dapat mengganggu penampilan dan dinamika web itu sendiri.
3.
Attribute
Attribute mendefinisikan property dari suatu element HTML, yang
terdiri atasn nama dan nilai. Penulisannya adalah sebagai berikut:
<TAG>
nama-attr="nilai-attr"
nama-attr="nilai-attr"
>
</TAG>
Secara umum nilai attribute harus berada dalam tanda petik satu atau
dua. Sebagai contoh, untuk membuat warna teks menjadi kuning dan
<body bgcolor="black"
text="yellow">
4.
Element HTML
Menyatakan pada browser bahwa dokumen Web yang digunakan
adalah
HTML.
Sintaks:
<html>
</html>
5.
Element HEAD
Merupakan kepala dari dokumen HTML. Tag <head> dan tag </head>
terletak di antara tag <html> dan tag </html>. Sintaks:
<head>
</head>
6.
Element TITLE
Merupakan judul dari dokumen HTML yang ditampilkan pada judul
jendela browser. Tag <title> dan tag </title> terletak di antara tag
<head> dan tag
</head>.
Sintaks:
<title>
7.
Element BODY
Element ini untuk menampilkan isi dokumen HTML. Tag <body> dan
tag </body> terletak di bawah tag <head> dan tag </head>.
Element BODY mempunyai attribute-attribute yang menspesifikasikan
khususnya warna dan latarbelakang dokumen yang akan ditampilkan
pada browser.
2.6 PHP
PHP disusun pada tahun 1994 oleh Rasmus Lerdorf. PHP Hypertext Preprocessor merupakan suatu script yang bersifat server side yang digunakan untuk membuat sebuah menjadi lebih menarik, dinamis, interaktif. PHP adalah
suatu bahasa pemograman open source yang digunakan secara luas terutama untuk pengembangan dan dapat disimpan dalam bentuk HTML. (wahana
komputer, 2006).
Diatas dikatakan bahwa PHP bersifat server-side, yang berarti bahwa pengerjaan berlangsung di script berlangsung di server bukan di browser atau
client. Dengan kata lain jika kita menggunakan sebuah browser untuk memanggil sebuah file PHP, maka browser tersebut mengirimkan permintaan ke server
kemudian server tersebut mengeksekusi setiap script yang ada dan hasilnya dikirimkan kembali ke browser anda. Karena bersifat server-side, maka untuk dapat dijalankan pada sebuah kompuer biasa yang berbasis Windows, komputer tersebut perlu disimulasikan menjadi server dengan menginstallApache.
<?
Baris perintah PHP
2.7 JavaScript
JavaScript diperkenalkan pertama kali oleh Brendan Eich Netscape pada
tahun 1995. Pada awalnya bahasa yang sekarang disebut ini dulunya dinamai
LiveScript yang berfungsi sebagai bahasa sederhana untuk browser Netscape Navigator 2 yang sangat populer pada saat itu. Kemudian sejalan dengan sedang
giatnya kerjasama antara Netscape dan Sun (pengembang bahasa pemrograman
“Java”) pada masa itu, maka Netscape memberikan nama kepada bahasa tersebut
pada tanggal 4 desember 1995. Pada saat yang bersamaan Microsoft sendiri
mencoba untuk mengadaptasikan teknologi ini yang mereka sebut sebagai Jscript
di browser milik mereka yaitu Internet Explorer 3. sendiri merupakan modifikasi
dari bahasa pemrograman C++ dengan pola penulisan yang lebih sederhana dari
bahasa pemrograman C++. (wahana komputer, 2006).
JavaScript adalah bahasa pemrograman yang khusus untuk halaman agar
halaman menjadi lebih hidup. Kalau dilihat dari suku katanya terdiri dari dua
suku kata, yaitu Java dan Script. Java adalah Bahasa pemrograman berorientasi obyek, sedangkan Script adalah serangkaian instruksi program. Dalam aplikasi
client untuk Navigator, pernyataan yang tertulis dalam sebuah halaman dapat mengetahui dan merespon perintah pemakai seperti gerakan mouse, input form,
dan navigasi halaman HTML. Sebagai contoh, anda dapat menulis sebuah fungsi
informasi yang cocok dalam sebuah form yang meminta diisi nomor telepon dan
nomor kode pos. Tanpa transmisi jaringan apapun, sebuah halaman HTML yang
dilengkapi dengan tulisan JavaScript dapat menginterpretasikan teks yang dituliskan pada halaman tersebut dan memberikan tampilan teks dialog penolakan
apabila teks yang dituliskan tadi salah. Atau anda dapat mempergunakan Java
Script untuk memerintahkan sebuah aksi (seperti memainkan file suara,
mengeksekusi sebuah applet atau berkomunikasi dengan plug-in lain) sebagai respon terhadap dibukanya sebuah halaman web atau penutupan halaman tersebut oleh pengguna internet. (http://masrois.com).
script dari javacript mempunyai bentuk seperti berikut :
<SCRIPT language=” Javascript”>
Baris perintah javascript
</SCRIPT>
2.8 Teks
Hampir semua orang yang biasa menggunakan komputer sudah terbiasa
dengan teks. Teks merupakan dasar dari pengolahan kata dan informasi. (sutopo,
1. Teks cetak
teks hasil cetakan yang akan dimasukkan kedalam sistem harus
ditransformasikan kebentuk yang dapat di baca oleh komputer.cara yang biasa
digunakan adalah mengetikkan teks tersebut dengan pengolah kata atau teks
editor. Seperti : Microsoft Word, Notepad, Editplus, Scientila dan lain-lain.
Gambar 2.9. Teks Cetak
2. Teks hasil scan
Kini tersedia banyak scanner berbiaya rendah yang dapat membaca teks cetak
dan mengkonversinya menjadi format yang terbaca mesin dan menghasilkan
tersebut kita scan, kita dapat mengeditnya dengan pengolah data atau teks editor.
3. Teks elektronik
Gambar 2.11. Teks elektronik
teks elektronik adalah teks yang dapat di baca oleh komputer dan dapat
4. Hypertext
Gambar 2.12. Hypertext
2.9 Profil Perusahaan BiNus Center
2.9.1 Sejarah Perusahaan
Di era globalisasi yang ketat dengan persaingan bisnis, keberhasilan
suatu perusahaan sangat bergantung pada kualitas Sumber Daya
Manusia(SDM) yang menjalankan bisnis tersebut. SDM yang berkualitas
dan mampu bersaing dalam era tersebut harus memiliki nilai tambah berupa
soft skills,hard skills, pengalaman, serta komunitas/jaringan, selain
pengetahuan yang diperolehnya melalui pendidikan formal.
Menjawab kebutuhan akan SDM yang berkualitas sejak tahun 1991 BiNus
Center terus berupaya menyediakan berbagai program pelatihan
bersertifikasi, yang berbasis kompetensi dan Teknologi informasi &
komunikasi, didukung kurikulum khusus yang selalu diperbaharui sesuai
tuntutan dunia bisnis, dunia pendidikan dan perkembangan teknologi paling
mutakhir, serta metode pembelajaran yang mudah diserap oleh berbagai
kalangan, mulai dari pelajar/mahasiswa hingga masyarakat umum.
BiNus Center menyadari kebutuhan tenaga kerja tidak hanya dilihat
dari kemampuan akademis saja, melainkan harus dibekali kemampuan non
akademis. Oleh karena itu, BiNus Center memberikan pelatihan kepada para
peserta berupa :
1. Peningkatan hard skills (pengetahuan, keterampilan dan keahlian di
2. Peningkatan soft skills agar peserta memiliki etos kerja yang baik dan
mampu beradaptasi / bersosialisasi dalam lingkungan kerjanya.
3. Pengarahan para peserta untuk mengerjakan berbagai studi kasus sesuai
bidangnya untuk menambah pengalaman dalam menghadapi kasus
/masalah dalm lingkungan kerja nyata.
Di dukung sarana dan lingkungan yang kondusif bagi pelaksanaan
pelatihan, hal-hal tersebut menghasilkan lulusan BiNus Center yang siap
terap dan bermutu. Inilah alasan utama sehingga sertifikasi dari BiNus
Center diakui oleh perusahaan berskala nasional dan Internasional.
Selain itu, setiap peserta pelatihan di BiNus Center akan tergabung
dalam komunitas BiNusian yang memungkinkan terciptanya peluang
kerja antar sesame BiNusian, dengan demikian para lulusan BiNus
Center dapat disalurkan ke setiap perusahaan / institusi yang
membutuhkan. Hadirnya BiNus Center di berbagai kota di seluruh
Indonesia semakin memantapkan komitmen BiNus Center untuk
menjadi lembaga pelatihan, yang menjadi panutan bagi masyarakat di
seluruh Indonesia dan mendukung terciptanya SDM Indonesia yang
2.9.2 Visi dan Misi BiNus Center
a. Visi
Menjadi Pusat pembelajaran berkelanjutan, yang menjadi panutan
dalam pengembangan Sumber Daya Manusia, khususnya di bidang
informasi.
b. Misi
1. Menjadi penyelenggara program pendidikan berkelanjutan
(countinuing education center) yang ditujukan oleh hal yang terkait dengan teknologi informasi, kemampuan berbahasa asing,
komunikasi, kemampuan berinovasi dan berwirausaha serta
berkarakter baik.
2. Lembaga penelitian terdepan dengan kurikulum berbasis ICT
(Information and Communication Technology), mutakhir dan terkait dengan industri dan komunikasi.
3. Lembaga pelatihan yang selalu mengutamakan service excellence
dalam setiap kegiatan.
4. Menyediakan sarana dan lingkungan yang kondusif bagi
pelaksanaan kegiatan pembelajaran sehingga dapat menghasilkan
keluaran yang siap terap dan bermutu.
5. Sebagai lembaga pelahan panutan dalam penerapan ICT untuk
pelaksanaan pembelajaran dan bisnis.
6. Melaksanakan kerjasama dengan dunia usaha dalam penyebaran
7. Lembaga pelatihan terkemuka dengan jaringan yang terbesar di 10
kota besar Indonesia dan 4 di Negara lain.
8. Lembaga pelatihan dan sertifikasi yang mendapatkan pengakuan
dari dunia industri baik nasional dan internasional.
9. Lembaga pelatihan yang terkenal dengan diversifikasi produk,
bisnis dan market.
2.9.3 Struktur Organisasi
Keterangan Tugas dan Tanggung Jawab dari Bagan Struktur
Organisasi :
a. Tugas dan tanggung jawab Branch Manager :
1. Mengontrol Bagian Marketing
2. Mengontrol Bagian Academic
3. Mengontrol Bagian Operational
b. Tugas dan tanggung jawab Marketing :
Mengurus semua yang berhubungan dengan pihak internal dan
Mengurus semua yang berhubungan dengan pihak eksternal.
c. Tugas dan tanggung jawab Academic Staff: 1. Membuat surat perijinan tempat, dan lain-lain.
2. Membuat surat kontrak antara pihak pertama dengan pihak kedua.
3. Membuat proposal acara.
4. Mencari sponsor.
5. Menyiapkan seluruh fasilitas yang dibutuhkan dalam
6. Melaksanakan presentasi, dan lain-lain.
d. Tugas dan tanggung jawab Operasional Staff:
1. Bagian ini bertugas untuk melaksanakan acara sesuai dengan
konsep yang telah direncanakan sebelumnya.
2. Pada saat pelaksanaan, bagian ini juga mengontrol setiap bagian
pekerjaan, seperti mengontrol bagian keamanan, bagian
pelaksanaan, dan lain-lain.
3. Setelah kegiatan tersebut selesai, bagian ini menilai kembali
mengenai kelebihan maupun kekurangan pada saat pelaksanaan
kegiatan tersebut.
2.10 Metode Penelitian
2.10.1Pengertian Metode Penelitian
Metode ialah kerangka kerja untuk melakukan suatu tindakan, atau
suatu kerangka berfikir untuk menyusun suatu gagasan yang terarah dan
terkait dengan maksud dan tujuan.(Hasibuan, 2007)
Metode penelitian merupakan suatu kerangka dan asumsi yang ada
dalam melakukan elaborasi penelitian sedangkan metode penelitian
memerlukan teknik atau prosedur untuk menganalisa data yang ada. Dari
pengertian tersebut dapat disimpulkan bahwa metodologi penelitian
merupakan langkah-langkah yang ada dalam penelitian sedangkan metode
Langkah-langkah dalam metodologi penelitian sebaiknya
disesuaikan dengan metode, prosedur, tools dan lain sebagainya. Hal ini berguna untuk membantu dalam memecahkan permasalahan yang ada dan
juga membantu dalam menangani, mengontrol, dan mengevaluasi suatu
proses riset/penelitian.(Hasibuan, 2007).
2.10.2Metodologi Pengumpulan Data
Pengumpulan data pada penelitian dimaksudkan sebagai pencatatan
peristiwa atau karakteristik dari sebagian atau seluruh elemen populasi
penelitian. Pengumpulan data penelitian dapat dilakukan berdasarkan
beberapa cara pengumpulan.(Hasan, 2004).
I. Studi Pustaka
Kegiatan yang meliputi mencari, membaca, dan menelaah
laporan-laporan penelitian dan bahan pustaka yang memuat teori-teori yang
relevan dengan penelitian yang akan dilakukan.(Anggoro, 2007).
II. Studi Lapangan
a. Wawancara
Wawancara adalah cara pengumpulan data dengan mengadakan
tanya jawab langsung kepada objek yang diteliti atau kepada
perantara yang mengetahui persoalan dari objek yang diteliti.
b. Observasi
Pengamatan atau observasi adalah cara pengumpulan data
dengan terjun dan melihat langsung ke lapangan (laboratorium)
terhadap objek yang diteliti (populasi atau sampel). (Hasan,
2004).
III. Studi Literatur Sejenis
Studi literatur sejenis adalah cara pengumpulan data dengan
menggunakan sebagian atau seluruh data yang telah ada atau laporan
data dari peneliti sebelumnya.(Hasan, 2004).
2.11 Metode pengembangan system
Dalam sebuah perancangan perangkat lunak diperlukan model-model
proses atau paradigm rekayasa perangkat lunak berdasarkan sifat aplikasi dan
proyeknya, metode dan alat bantu yang dipakai dan control serta penyampaian
yang dibutuhkan. Menurut (Pressman, 2005) ada beberapa proses model
diantaranya Sequential Linier, Prototype, Rapid Aplication Development (RAD), Incremental, Iterative, Spiral, Concurrent, Componen-Based Development, Model Metode Fomral, Aspect Oriental Software Development, Unified Process,dan
Extreme Programming (XP). Berikut perbedaan model-model pengembangan sistem yang dapat dilihat pada Table 2.7 lampiran B-1.
efisien, berisiko rendah, fleksibel, dapat diprediksi, ilmiah, dan cara yang
menyenangkan untuk mengembangkan perangkat lunak. (Beck, 1999).
Extreme Programming (XP) adalah metode pengembangan perangkat
lunak yang ringan dan termasuk salah satu agile methods yang dipelopor oleh
Kent Beck, Ron Jeffries, dan Ward Cunningham. XP merupakan agile methods
yang paling banyak digunakan dan menjadi sebuah pendekatan yang sangat
terkenal. Sasaran XP adalah tim yang dibentuk berukuran antara kecil sampai
medium saja, tidak perlu menggunakan sebuah tim yang besar. Hal ini
dimaksudkan untuk menghadap requirements yang tidak jelas maupun terjadinya
perubahan-perubahan requirements yang sangat cepat. XP sebagai sebuah metode
yang dinamis diperlihatkan dalam empat values yang dimilikinya dan keempatnya
merupakan dasar-dasar yang diperlukan dalam XP. Kent Beck menyatakan
bahwa tujuan jangka pendek individu sering berbenturan dengan tujuan sosial
jangka panjang. Karena itu dibuatlah values yang menjadi aturan, hukuman, dan
juga penghargaan. Keempat values tersebut adalah:
1. Komunikasi (Communication)
2. Kesederhanaan (Simplicity)
3. Umpan Balik (Feedback)
4. Keberanian (Courage)
Ada empat tahapan yang dilakukan dalam melakukan pengembangan
Gambar 2.13. Fase dari XP
(Pressman, 2010)
1. Perencanaan (planning)
Perencanaan (planning) yang membentuk suatu rangkaian User Story.
Serta adanya studi kelayakan karena Studi Kelayakan digunakan
untuk menentukan kemungkinan keberhasilan solusi yang
diusulkan. Tahap ini berguna untuk memastikan bahwa solusi yang
diusulkan tersebut benar-benar dapat dicapai dengan sumber daya
dan dengan memperhatikan kendala yang terdapat pada
perusahaan serta dampak terhadap lingkungan sekeliling.
Tabel 2.8
Aspek-Aspek Studi Kelayakan
Aspek Pertimbangan
Teknis Tersediakah perangkat keras dan perangkat lunak untuk melaksanakan pemrosesan yang diperlukan?
Ekonomi
Dapatkah sistem yang diajukan dinilai secara keuangan dengan membandingkan kegunaan dan biayanya?
Hukum dan Etika Apakah sistem yang diusulkan tidak bertentangan dengan etika atau hukum?
Operasional Apakah rancangan sistem seperti ini akan dibantu oleh orang-orang yang akan menggunakannya? Jadwal Mungkinkah menerapkan sistem tersebut sesuai
dengan jadwal yang telah ditetapkan? ( Mcleod, 2001)
2. Perancangan (designing)
Perancangan (designing) yang menekankan pada kesederhanaan, mengikuti aturan KIS (keep it simple).
3. Pengkodean (coding)
Sebelum melakukan pengkodean, terlebih dahulu membuat unit testing
untuk menguji ketepatan aplikasi tersebut. Setelah itu baru dilakukan
pengkodean untuk tiap-tiap user story. 4. Testing
a. Black Box Testing
Pada Black Box testing, cara pengujian hanya dilakukan dengan menjalankan atau mengeksekusi unit atau modul, kemudian di amati apakah hasil dari unit itu sesuai dengan proses bisnis yang diinginkan.
b. White Box Testing
White box testing adalah cara pengujian dengan melihat kedalam modul untuk meneliti kode-kode program yang ada, dan
menganalisis apakah ada kesalahan atau tidak. Jika ada modul yang
menghasilkan output yang tidak sesuai dengan proses bisnis yang dilakukan, maka baris-baris program, variable, dan parameter yang terlibat pada unit tersebut akan di cek satu persatu dan diperbaiki, kemudian di-compile ulang. (Fatta, 2007).
2.12 Unified Modelling Language (UML)
Untuk perancangan aplikasi, peneliti menggunakan tools yaitu UML
(Unified Modeling Language).
UML adalah sistem kerja bersama dari Grady Booch, James Rumbaugh
dan Ivar Jacobson. UML yang terdiri dari serangkaian diagram memungkinkan
bagi sistem analis untuk membuat cetak biru sistem yang komprehensif kepada
klien, programmer dan tiap orang yang terlibat dalam proses pengembangan tersebut. Sangat penting untuk bisa mengeluarkan semua diagram tersebut, karena
bukan bagaimana yang seharusnya dilakukan oleh sebuah sistem. (Munawar, 2005). Perancangan aplikasi yang peneliti lakukan adalah :
a. Perancangan Use Case Diagram
Merupakan suatu bentuk diagram yang menggambarkan fungsi-fungsi yang
diharapkan dari sebuah sistem yang dirancang. Dalam diagram use case
penekanannya adalah “apa” yang diperbuat oleh sistem, dan bukan
“bagaimana”.(Dharwiyanti, 2003).
Notasi yang digunakan pada diagram use case adalah sebagai berikut :
Aktor Use case Relasi
Gambar 2.13. Notasi Use Case
Aktor adalah seseorang atau sesuatu yang berinteraksi dengan sistem, dengan
kata lain adalah apapun yang berada diluar sistem. Use case adalah fungsi yang akan disediakan oleh sistem dan berada didalam sistem. Sedangkan relasi
menggambarkan hubungan yang terjadi antara aktor dengan use case. Contoh diagram use case dapat digambarkan sebagai berikut :
b. Perencanaan Activity Diagram
Merupakan Teknik untuk mendiskripsikan logika procedural, proses bisnis
dan aliran kerja dalam banyak kasus. Activity Diagram mempunyai peran
seperti halnya flowchart, akan tetapi perbedaannya dengan flowchart adalah
activity diagram bisa mendukung prilaku parallel sedangkan flowchart tidak
bisa.
c. Perancangan Sequence Diagram Sequence diagram
menjelaskan secara detail urutan proses yang dilakukan dalam sistem untuk
mencapai tujuan dari use case. Pembuatan sequence diagram merupakan aktivitas yang paling kritikan dalam proses desain karena diagram inilah
yang menjadi pedoman dalam proses pemograman nantinya dan berisi aliran
kontrol dari program. (Hermawan, 2000).
d. Perancangan class diagram
Class adalah sebuah spesifikasi yang jika diinstansiasi akan menghasilkan
sebuah objek dan merupakan inti dari pengembangan dan desain berorientasi
objek. Class menggambarkan keadaan (atribut/properti) suatu sistem, sekaligus menawarkan layanan untuk memanipulasi keadaan tersebut
(metoda/fungsi). Diagram class menggambarkan struktur dan deskripsi
class, package dan objek beserta hubungan satu sama lain seperti
containment, pewarisan, asosiasi, dan lain-lain. Class memiliki tiga area pokok yaitu :
1. Nama (dan stereotype)
Class
- Attribute
3. Metoda
Atribut dan metoda dapat memiliki salah satu sifat berikut :
1. Private, tidak dapat dipanggil dari luar class yang bersangkutan.
2. Protected, hanya dapat dipanggil oleh class yang bersangkutan dan anak-anak yang mewarisinya.
3. Public, dapat dipanggil oleh siapa saja. e. Perancangan Deployment Diagram
Deployment diagram menyediakan gambaran bagaimana sistem secara fisik akan terlihat. Sistem terdiri dari node-node dimana setiap node diwakili untuk sebuah kubus. Garis yang menghubungkan antara 2 kubus menunjukkan
hubungan diantara kedua node tersebut. Tipe node bisa berupa device yang berwujud hardware dan bisa juga prosesor (yang mengeksekusi komponen) atau execution environment (software yang menjadi host atau mengandung
software yang lain). (Munawar, 2005).
2.12 Alasan Penggunaan Exteme Programming (XP)
1. Penggunaan algoritma triple DES dengan metode pengembangan sistem
extreme programming pada aplikasi pengamanan data sangat tepat