• Tidak ada hasil yang ditemukan

7

N/A
N/A
Protected

Academic year: 2021

Membagikan "7"

Copied!
11
0
0

Teks penuh

(1)

BAB II

LANDASAN TEORI

2.1 Tinjauan Pustaka

Sejumlah penelitian yang sejenis dengan penelitian yang dilakukan oleh penulis sudah pernah dilakukan oleh peneliti terdahulu. Penelitian-penelitian tersebut menghasilkan berbagai cara untuk mengimplementasikan enkripsi sederhana, tidak hanya untuk mengamankan komunikasi, tetapi juga untuk memberi keamanan pada suatu informasi yang dianggap penting dan rahasia. Berikut ini adalah beberapa karya yang berkaitan dengan pembuatan tugas akhir ini:

1. Model dan Implementasi Metode Enkripsi Kombinasi MD5 dan Skrip Pengolah String pada Fitur Layanan PMB Online (Marisa & Hardianto, 2014).

2. Pengamanan Sistem Data Medis Menggunakan Pola Kriptografi (Purnama & Winarko, 2012).

3. Penerapan Keamanan Basis Data dengan Teknik Enkripsi (Purwanto, 2014).

Karya-karya di atas merupakan beberapa penelitian yang menggunakan enkripsi untuk keamanan informasi, baik itu bidang pendidikan maupun medis. Penelitian yang akan dilakukan penulis adalah mengamankan informasi pada basis data.

(2)

2.2 PHP

PHP yang merupakan singkatan dari hypertext preprocessor, adalah bahasa pemrograman sumber terbuka yang digunakan secara luas untuk pengembangan web (PHP Group, 2016). Perbedaan antara PHP dan HTML adalah kegunaannya yang membuat web menjadi dinamis, tidak hanya statis. PHP adalah sebuah bahasa pemrograman untuk membuat halaman web menjadi dinamis.

Gambar 2.1 Ilustrasi Perbandingan Web Statis dan Web Dinamis

Fungsi dari PHP itu sendiri adalah untuk mengembangkan web dari sisi server (server side), berbeda dengan HTML yang berfungsi untuk mengembangkan web dari sisi user (client side). Walaupun PHP dan HTML berbeda, PHP dan HTML biasanya menjadi sebuah satu kesatuan.

(3)

2.3 Basis Data

Pengembangan perangkat lunak berbasis web hampir selalu menyertakan sistem manajemen basis data, di samping penggunaan bahasa pemrograman web dinamisnya. Pengertian basis data adalah sekumpulan data yang memiliki hubungan secara logika dan diatur dengan susunan tertentu serta disimpan dalam media penyimpanan komputer. Basis data itu sendiri bisa dikategorikan sebagai sebuah perangkat lunak yang bias berinteraksi dengan pengguna maupun perangkat lunak lainnya. Salah satu contoh sistem manajemen basis data adalah MySQL, yang digunakan oleh penulis untuk penelitian tugas akhir ini.

(4)

2.3.1 MySQL

MySQL merupakan sistem manajemen basis data sumber terbuka yang dikembangkan, didistribusikan, dan didukung oleh Oracle (Oracle Corporation, 2016). Basis data pada MySQL bersifat relasional, sehingga MySQL juga bisa disebut RDBMS (Relational Database Management System). Walaupun memiliki produk basis data lainnya, Oracle menggratiskan distribusi MySQL dibawah lisensi GPL (General Public License). Pada awal kemunculannya, MySQL dibuat oleh sebuah perusahaan asal Swedia bernama MySQL AB. Sun Microsystems lalu mengakuisisi MySQL AB pada tahun 2008, dan tidak lama kemudian, Oracle mengakuisisi Sun Microsystems pada tahun 2010.

2.4 Bootstrap

Pada awalnya, Bootstrap merupakan bagian inti dari tampilan situs jejaring sosial Twitter. Sebelum Bootstrap dirilis ke publik sebagai kode sumber terbuka, Twitter mengadakan kontes hacking pada tahun 2010 yang memodifikasi kode sumber dari situs Twitter (Bootstrap & Otto, 2017). Lalu dari kesuksesan kontes hacking yang diadakan, Bootstrap menjadi panduan tidak resmi yang mengarahkan situs-situs lainnya untuk membuat tampilan yang mobile-first approach.

Bootstrap adalah kerangka kerja antarmuka sumber terbuka yang memiliki desain responsive. Alasan penulis memilih Bootstrap sebagai antarmuka dari sistem yang dibuat sebab dokumentasi penggunaan Bootstrap sudah lengkap, sehingga pengintegrasiannya menjadi mudah. Selain itu, tampilannya yang user friendly menjadi alasan penulis lainnya untuk menggunakan Bootstrap.

(5)

2.5 Kriptografi

Kebutuhan akan keamanan informasi semakin meningkat seiring dengan berkembangnya teknologi informasi yang mempermudah duplikasi data dan informasi. Salah satu cara untuk mengamankan data dan informasi di dunia digital adalah dengan pemanfaatan kriptografi. Kriptografi adalah sebuah disiplin ilmu yang mempelajari tentang keamanan suatu informasi atau data (Microsoft Corporation, 2016).

Penggunaan sandi pada informasi agar tidak dapat terbaca oleh orang yang tidak berhak setidaknya dimulai pada era Romawi dengan Caesar cipher-nya. Caesar cipher digunakan oleh bangsa Romawi untuk mengamankan pesan yang dikirim oleh kurir agar apabila jatuh ke tangan musuh, pesan itu tidak bisa terbaca. Memasuki zaman modern, kriptografi juga dipakai oleh Nazi Jerman dengan mesin enigma-nya. Kini, kriptografi telah berkembang secara pesat, bahkan sekarang public key cryptography, yang bisa mengenkripsi dan mendekripsi pesan dengan dua sandi berbeda, yang dikembangkan oleh Whitfield Diffie dan Martin Hellman pada tahun 1976, mulai digunakan secara marak untuk keamanan.

2.5.1 Cipher Substitusi

Cipher substitusi sederhana merupakan sebuah cipher yang telah lama digunakan. Cara kerja cipher ini adalah dengan mengganti setiap karakter yang ada dalam plaintext dengan karakter ciphertext yang key-nya telah ditentukan sebelumnya (Lyons, 2012). Berbeda dengan Caesar cipher yang hanya menggeser urutan huruf untuk menyandikan pesan, cipher substitusi bekerja dengan cara mengacak urutannya.

(6)

2.6 Operasi XOR (Exclusive or)

Ada beberapa operasi logika yang terdapat di dalam matematika, salah satunya adalah XOR. Pada tabel kebenaran, XOR merupakan operasi yang menghasilkan hasil benar hanya apabila salah satu di antara dua operand bernilai benar.

Tabel 2.1 Tabel Kebenaran XOR a b a XOR B

B B S

B S B

S B B

S S S

Menurut Leo J. Scanlon, operasi exclusive or atau XOR adalah variasi dari operasi OR, karena apabila kedua operand bernilai benar, maka hasil dari operasi tersebut adalah salah (pada operasi OR, hasilnya adalah benar).

2.7 Rapid Application Development

Rapid application development atau biasa disingkat RAD, adalah metode pengembangan perangkat lunak yang digunakan sebagai alternatif dari metode waterfall yang sudah sering digunakan. Secara umum, metode RAD lebih mengutamakan proses pengembangan perangkat lunak dari sisi coding dan testing (pengujian), keterbalikan dari metode waterfall yang melalui beberapa proses pra-pengembangan (inisiasi, analisis, dan desain). Hal ini menyebabkan metode RAD sering dipakai untuk mengejar implementasi perangkat lunak dengan tenggat waktu yang tidak terlalu lama.

Metode pengembangan RAD memiliki 4 (empat) fase untuk mengembangkan sebuah perangkat lunak, yaitu:

(7)

1. Requirements planning phase

Fase ketika tujuan-tujuan dari aplikasi akan diidentifikasi. Fase ini juga menelusuri apa saja syarat-syarat yang dibutuhkan untuk mengembangkan aplikasi.

2. Design phase

Fase bagi calon pengguna untuk berinteraksi dengan pengembang sebagai langkah kolaborasi untuk mengembangkan model dari aplikasi tersebut, baik itu dari sisi masukan, cara kerja sistem, maupun hasil keluaran.

3. Construction phase

Fase pengembangan aplikasi, coding, dan pengujian yang dilakukan oleh programmer berdasarkan masukan dari pengguna. Fase ini memungkinkan pengguna untuk tetap berkontribusi untuk memberikan masukan bagaimana aplikasi akan dikembangkan.

4. Cutover phase

Fase terakhir dalam pengembangan yaitu dengan dilakukannya implementasi aplikasi untuk membuat suatu sistem baru ataupun integrasi aplikasi ke dalam sistem yang sudah ada.

2.8 Metode Pengujian Whitebox

Berdasarkan standar yang ditetapkan oleh IEEE, metode pengujian whitebox adalah sebuah metode pengujian perangkat lunak yang pengujiannya dilakukan dengan cara mengecek struktur internal dan cara kerjanya melalui kode internalnya. Berbeda dengan pengujian blackbox yang menguji perangkat lunak hanya berdasarkan fungsional dan proses kerja dari luarnya saja (tidak melalui kode sumber), sehingga metode pengujian whitebox membutuhkan waktu yang lama untuk menguji sebuah perangkat lunak.

(8)

Tabel 2.2 Perbandingan Metode Pengujian Blackbox dan Whitebox

Blackbox Whitebox

Disebut juga metode pengujian fungsional

Disebut juga metode pengujian struktural

Biasanya dilakukan oleh software tester

Biasanya dilakukan oleh programmer pembuatnya langsung

Tidak membutuhkan keahlian

pemrograman Membutuhkan keahlian pemrograman

Walaupun pengujian whitebox membutuhkan waktu yang lama, metode ini mempunyai kelebihan, di antaranya adalah:

1. Penguji bisa mengetahui cara kerja perangkat lunak melalui kode sumbernya, tidak hanya dari fungsi luar aplikasinya saja.

2. Mempermudah proses debugging dikarenakan penguji bias melihat kesalahan dari kode sumbernya secara langsung.

3. Pengembangan perangkat lunak akan lebih mudah dilakukan karena perubahan yang dilakukan bisa terlacak melalui kode sumber.

2.9 Unified Modeling Language

Unified Modeling Language adalah standar yang digunakan untuk membuat model diagram dari sebuah sistem perangkat lunak. Menurut Robert France dan Bernhard Rumpe, UML yang merupakan singkatan dari Unified Modeling Language merupakan sebuah bahasa untuk menspesifikasikan, memvisualisasi, mengkonstruksi, dan mendokumentasikan bagian-bagian dari suatu sistem perangkat lunak.

UML memiliki beberapa diagram standar, beberapa diantaranya yang digunakan oleh penulis adalah activity diagram, use case diagram, dan sequence diagram.

(9)

2.9.1 Activity Diagram

Activity diagram adalah diagram yang digunakan untuk memberi pemahaman bagaimana alur kerja dari sebuah sistem melalui objek-objek “perbuatan” yang dilakukan oleh pengguna dan sistem.

Gambar 2.3 Contoh Activity Diagram

2.9.2 Use Case Diagram

(10)

fungsi-fungsi penting pada sistem serta hubungan antara fungsi-fungsi pada sistem itu sendiri.

Gambar 2.4 Contoh Use Case Diagram

2.9.3 Sequence Diagram

Sequence diagram adalah diagram yang memberi detail lebih jelas untuk bagian tertentu dari sebuah use case diagram. Diagram ini menunjukkan hubungan antara objek-objek dalam sistem.

(11)

Gambar 2.5 Contoh Sequence Diagram

2.10 Entity Relationship Diagram

Dilihat dari penampilannya, entity relationship diagram memiliki penampilan yang hampir sama dengan class diagram, namun meskipun secara fisik hampir mirip, kegunaan dari keduanya berbeda. Fungsi utama dari entity relationship diagram adalah memberikan suatu gambaran bagaimana hubungan antara tabel-tabel di dalam basis data. Hubungan antar tabel ini juga diperjelas dengan adanya kardinalitas yang merupakan jumlah maksimum entitas dalam berhubungan dan bagaimana cara entitas tersebut berhubungan. Contoh dari entity relationship diagram bisa dilihat pada gambar 2.2 di halaman sebelumnya.

Referensi

Dokumen terkait

Berdasarkan hal ini, kemungkinan bahwa penyebab naik turunnya nilai perusahaan yang tercermin dari harga saham adalah faktor dari investor melihat informasi lain

Dengan array, kita bisa membuat variabel dengan tipe yang dinamis, dimana kita bisa menyimpan banyak data dalam satu variabel array... PHP

Tingginya laju pertumbuhan juvenil udang vannamei yang dihasilkan pada perlakuan 20% limbah sayur hasil inkubasi cairan rumen dalam pakan disebabkan karena pada

Puji syukur saya ucapkan kepada Tuhan Yang Esa atas segala rahmat dan karuniaNya, sehingga dapat menyelesaikan Tugas Akhir dengan judul “Pengendalian Kualitas

Metode ini adalah sebuah kerangka untuk mengambil keputusan dengan efektif atas persoalan dengan menyederhanakan dan mempercepat proses pengambilan keputusan

Kosmetik menurut Peemenkes 01 no (*23men.Kes3Per3435 adalah bahan Kosmetik menurut Peemenkes 01 no (*23men.Kes3Per3435 adalah bahan atau campuran bahan untuk digosokkan,

(1) Pengolahan sebagaimana dimaksud dalam Pasal 5 huruf d dilakukan dengan mengubah karakteristik, komposisi, dan jumlah sampah yang dilaksanakan di TPS/TPST clan cli

Dan dimensi ke lima yang sangat menarik, adalah peran dan kontribusi Emil Salim sebagai tokoh dunia yang punya visi ke depan dan memerankan intellectual leadership bukan hanya bagi