Aplikasi Enkripsi dengan PGP Menggunakan PHP

dokumen-dokumen yang mirip
K i r p i t p o t g o ra r f a i

BAB I PENDAHULUAN. banyak pengguna jaringan komputer, terutama internet. Tidak herannya

+ Basic Cryptography

IMPLEMENTASI ALGORITMA ADVANCED ENCRYPTION STANDARD (AES) UNTUK ENKRIPSI DAN DEKRIPSI PADA DOKUMEN TEKS ABSTRAK

BAB I PENDAHULUAN. 1.1 Latar Belakang

BAB I PENDAHULUAN 1.1 Latar Belakang Masalah

Implementasi Sistem Keamanan File Menggunakan Algoritma Blowfish pada Jaringan LAN

PERANCANGAN PEMBANGKIT TANDA TANGAN DIGITAL MENGGUNAKAN DIGITAL SIGNATURE STANDARD (DSS) Sudimanto

Vol. 3, No. 2, Juli 2007 ISSN PERANAN KRIPTOGRAFI DALAM KEAMANAN DATA PADA JARINGAN KOMPUTER

P5 Cryptography SIF61

BAB I PENDAHULUAN. mengamankan informasi pada masalah ini dapat memanfaatkan kriptografi.

P N E E N R E A R P A A P N

BAB I PENDAHULUAN. melalui ringkasan pemahaman penyusun terhadap persoalan yang dibahas. Hal-hal

Bab 3. Metode dan Perancangan Sistem

Bab 1 PENDAHULUAN Latar Belakang

BAB I PENDAHULUAN. perusahaan besar sekali pun, namun dengan cepatnya perkembangan juga

KEAMANAN BASIS DATA DENGAN TEKNIK ENKRIPSI

Bab 3 Metode Perancangan

BAB I PENDAHULUAN 1.1 Latar Belakang

STUDI PERBANDINGAN ALGORITMA SIMETRI BLOWFISH DAN ADVANCED ENCRYPTION STANDARD

(pencurian, penyadapan) data. Pengamanan data dapat dilakukan dengan dua cara, yaitu steganography dan cryptography.

BAB 2 TINJAUAN PUSTAKA

PENERAPAN KEAMANAN BASIS DATA DENGAN TEKNIK ENKRIPSI. Hari Purwanto, Manajemen Informatika, Fakultas Teknologi Industri, Universitas Suryadarma

Rancangan Aplikasi Pemilihan Soal Ujian Acak Menggunakan Algoritma Mersenne Twister Pada Bahasa Pemrograman Java

BAB I PENDAHULUAN. memungkinkan pengguna untuk saling bertukar file maupun data, bahkan dalam

BAB III ANALISA MASALAH DAN PERANCANGAN PROGRAM

BAB 2 LANDASAN TEORI

BAB 1 PENDAHULUAN. khususnya internet sangatlah cepat dan telah menjadi salah satu kebutuhan dari

APLIKASI KRIPTOGRAFI ENKRIPSI DEKRIPSI FILE TEKS MENGGUNAKAN METODE MCRYPT BLOWFISH

BAB IV IMPLEMENTASI DAN PENGUJIAN

BAB III ANALISIS MASALAH DAN RANCANGAN PROGRAM

Gambar 4.1 Flowchart

BAB I PENDAHULUAN. 1.1 Latar Belakang Masalah

BAB 1 PENDAHULUAN Latar Belakang

PENGGUNAAN KRIPTOGRAFI DAN STEGANOGRAFI BERDASARKAN KEBUTUHAN DAN KARAKTERISTIK KEDUANYA

DESAIN DAN IMPLEMENTASI PRETTY GOOD PRIVACY (PGP) UNTUK KEAMANAN DOKUMEN PADA PT PUTRA JATRA MANDIRI PALEMBANG

STMIK GI MDP. Program Studi Teknik Informatika Skripsi Sarjana Komputer Semester Ganjil Tahun 2010/2011

Aplikasi Pengamanan Data dengan Teknik Algoritma Kriptografi AES dan Fungsi Hash SHA-1 Berbasis Desktop

IMPLEMENTASI KRIPTOGRAFI MENGGUNAKAN METODE ADVANCED ENCRYPTION STANDAR (AES) UNTUK PENGAMANAN DATA TEKS

SEMINAR TUGAS AKHIR PERIODE JANUARI 2012

Kriptografi. A. Kriptografi. B. Enkripsi

IMPLEMENTASI ALGORITMA BLOWFISH UNTUK ENKRPSI DAN DEKRIPSI BERBASIS WEB

APLIKASI JAVA KRIPTOGRAFI MENGGUNAKAN ALGORITMA VIGENERE. Abstract

BAB I PENDAHULUAN 1.1 Latar Belakang

PERANCANGAN APLIKASI ENKRIPSI DATA MENGGUNAKAN METODE ADVANCED ENCRYPTION STANDARD

BAB III ANALISIS DAN PERANCANGAN

BAB III ANALISA DAN DESAIN SISTEM

Manajemen Keamanan Informasi

BAB 2 LANDASAN TEORI

BAB I PENDAHULUAN 1.1 Latar Belakang

BAB I PENDAHULUAN. 1. aa

BAB 2 LANDASAN TEORI. 2.1 Kriptografi Berikut ini akan dijelaskan sejarah, pengertian, tujuan, dan jenis kriptografi.

APLIKASI KRIPTOGRAFI DOKUMEN MENGGUNAKAN ALGORITMA RIVEST CODE 4 (RC 4) BERBASIS WEB. Laporan Tugas Akhir

BAB III ANALISA DAN PERANCANGAN. penerimaan data sangat penting untuk menjamin bahwa data yang dikirim tidak

BAB III ANALISIS DAN DESAIN SISTEM

BAB I PENDAHULUAN. Keamanan sistem komputer menjadi semakin penting seiring dengan. berkembangnya proses bisnis yang terkomputerisasi.

TUGAS KRIPTOGRAFI Membuat Algortima Sendiri Algoritma Ter-Puter Oleh : Aris Pamungkas STMIK AMIKOM Yogyakarta emali:

ALGORITMA ELGAMAL DALAM PENGAMANAN PESAN RAHASIA

BAB I PENDAHULUAN. 1.1 Latar Belakang

BAB III ANALISIS MASALAH

BAB III ANALISA DAN DESAIN SISTEM

BAB I PENDAHULUAN 1.1. LATAR BELAKANG

BAB I PENDAHULUAN Latar Belakang

BAB III ANALISIS DAN PERANCANGAN. yang ada pada sistem dimana aplikasi dibangun, meliputi perangkat

Perancangan Aplikasi Kriptografi File Dengan Metode Algoritma Advanced Encryption Standard (AES)

BAB I PENDAHULUAN , 1.1. Latar Belakang

BAB I PENDAHULUAN. Kriptografi dapat pula diartikan sebagai ilmu atau seni untuk menjaga

7

BAB III ANALISIS DAN PERANCANGAN

Pembangkitan Nilai MAC dengan Menggunakan Algoritma Blowfish, Fortuna, dan SHA-256 (MAC-BF256)

PENGAMANAN SQLITE DATABASE MENGGUNAKAN KRIPTOGRAFI ELGAMAL

BAB 1 PENDAHULUAN. dalam bahasa sandi (ciphertext) disebut sebagai enkripsi (encryption). Sedangkan

BAB III ANALISA DAN PERANCANGAN SISTEM

BAB II. Dasar-Dasar Kemanan Sistem Informasi

Implementasi Keamanan SMS Dengan Algoritma RSA Pada Smartphone Android

SISTEM KEAMANAN DATA PADA WEB SERVICE MENGGUNAKAN XML ENCRYPTION

BAB III ANALISA DAN DESAIN SISTEM

BAB I PENDAHULUAN. dalam kehidupan manusia. Kemajuan teknologi dengan kehidupan manusia seakan-akan tidak

ENKRIPSI DENGAN MENGGUNAKAN METODE ELGAMAL PADA PERANGKAT MOBILE

BAB IV HASIL DAN UJI COBA

PENGAMANAN SQLITE DATABASE MENGGUNAKAN KRIPTOGRAFI ELGAMAL


BAB III ANALISA DAN DESAIN SISTEM. perancangan pembuatan kriptografi Impementasi AES ( Advanced Encyrption

BAB III ANALISIS DAN PERANCANGAN

PERANGKAT LUNAK UNTUK PROSES ENKRIPSI DESKRIPSI MESSAGE DENGAN ALGORITMA BLOWFISH. Ary Fathany Kristiawan 1) Rudy Setiawan 2)

ANALISIS PERBANDINGAN ALGORITMA SIMETRIS TINY ENCRYPTION ALGORITHM DAN LOKI DALAM ENKRIPSI DAN DEKRIPSI DATA

ABSTRAK. Kata kunci :SSL, RSA, MD5, Autentikasi, Kriptografi. Universitas Kristen Maranatha

BAB II LANDASAN TEORI Konsep Dasar Membangun Aplikasi Berbasis Web

2.1 Keamanan Informasi

APLIKASI ENKRIPSI PENGIRIMAN FILE SUARA MENGGUNAKAN ALGORITMA BLOWFISH

Bab 3 Metode dan Perancangan Sistem

BAB III ANALISA DAN PERANCANGAN

IMPLEMENTASI ALGORITMA VERTICAL BIT ROTATION PADA KEAMANAN DATA NASABAH ( STUDI KASUS : PT. ASURANSI ALLIANZ LIFE INDONESIA )

BAB 3 ANALISIS DAN PERANCANGAN PROGRAM

BAB I PENDAHULUAN. dengan munculnya berbagai sistem operasi yang lengkap layaknya komputer,

BAB 1 PENDAHULUAN. 1.1 Latar Belakang

PENGGUNAAN KRIPTOGRAFI DAN STEGANOGRAFI BERDASARKAN KEBUTUHAN DAN KARAKTERISTIK KEDUANYA

APLIKASI BERBASIS WEB PEMETAAN INFORMASI PADA GAMBAR BITMAP

PENGEMBANGAN MODEL ANTAR MUKA BASIS DATA BERBASIS FUNGSI MESSAGE DIGEST 5 (MD5)

BAB I PENDAHULUAN 1.1. LATAR BELAKANG

Transkripsi:

Aplikasi Enkripsi E-Mail dengan PGP Menggunakan PHP Raka Yusuf 1, Andri Winata 2 Program Studi Teknik Informatika, Fakultas Ilmu Komputer, Universitas Mercu Buana Jl. Raya Meruya Selatan, Kembangan, Jakarta, 11650 E-mail: rakayusuf@yahoo.co.id 1, andri_winata@yahoo.co.id 2 Abstrak-- Dengan seiringnya kemajuan teknologi yang berkembang sangat cepat saat ini maka kemungkinan diperlukan suatu aplikasi tentang enkripsi yang mempermudah user agar menjaga kerahasiaan data yang dikirimkan dimana biasanya user langsung dapat men-download data lampirannya. Sehingga membutuhkan aplikasiaplikasi, seperti halnya yaitu dengan menggunakan aplikasi PGP (Pretty Good Privacy) untuk enkrip dan dekrip data lampiran maka pengguna dapat lebih aman. Setidaknya pengguna bisa menggunakannya saat mereka membutuhkan. Seperti kita ketahui, aplikasi ini juga akan sangat berguna dalam kehidupan kita sehari-hari, di mana aplikasi File Enkripsi Dengan Menggunakan PHP diperoleh aplikasi yang akan mempermudah seseorang untuk memperoleh kerahasiaan data pada email. Kata kunci: web-based cryptography, Enkripsi deksripsi email, PGP. I. PENDAHULUAN Electronic mail (email) sudah digunakan orang sejak awal terbentuknya Internet pada sekitar tahun 1969 dan merupakan salah satu fasilitas yang ada pada saat itu. Sesuai dengan perkembangan internet, penggunaan email ini juga semakin membesar walaupun pada saat ini persentasinya sudah turun karena adanya sebuah fasilitas baru di internet yang dikenal sebagai Web. Salah satu alasan kenapa email dipakai orang karena memberikan cara yang mudah dan cepat dalam mengirimkan sebuah informasi. Selain itu dengan email dapat juga informasi yang ukurannya kecil sampai ke file yang ukurannya besar. Namun sifat email yang memanfaatkan penghantar elektronik tak sepenuhnya dimaksudkan sebagai medium pribadi karena menyimpan potensi bahaya penyalahgunaan yang bukan saja menjengkelkan tetapi juga dapat bersifat fatal. Ketika kita mengirimkan suatu email, maka email tersebut disampaikan ke suatu sistem komputer yang mungkin kita tidak mengetahui administratornya. Dari komputer tersebut disampaikan ke sistem komputer lain, dan yang lainnya, dan lainnya, sampai kepada penerima yang dituju. Pada beberapa link di rantai ini, email kita dapat dibaca oleh siapa saja yang diinginkan system administrator, atau oleh suatu biro penyelidikan yang sedang mencurigai suatu aktivitas kejahatan, atau berbagai kemungkinan lainnya. Tetapi secara ringkasnya adalah ketika kita mengirimkan suatu email, kita tidak mengetahui siapa yang membaca pesan itu, penerima yang diharapkan ataupun barangkali orang lain. Kerahasiaan email terancam bukan oleh para hacker, melainkan para system administrator sendiri. Para system administrator terkadang bosan tidak tahu apa yang harus dikerjakan selain membaca-baca email orang. Mereka dapat melakukannya tanpa sedikit pun meninggalkan jejak. Cara mengatasi hal ini adalah dengan mengenkripsi email anda. GNU Privacy Guard (GnuPG, atau GPG) adalah sistem enkripsi key public. GnuPG adalah suatu re-implementasi GNU dari program PGP (Pretty Good Privacy) Phil Zimmerman s [10]. II. LANDASAN TEORI A. Rekayasa Perangkat Lunak (RPL) Pemodelan dalam perangkat lunak merupakan suatu yang harus dikerjakan di bagian awal dari rekayasa, dan pemodelan ini akan mempengaruhi perkerjaan-pekerjaan dalam rekayasa perangkat lunak tersebut. Model proses perangkat lunak merupakan deskripsi yang disederhanakan dari proses perangkat lunak yang dipresentasikan dengan sudut pandang tertentu. Namun model proses perangkat lunak masih menjadi objek penelitian, namun pada saat ini terdapat banyak model umum atau paradigma yang berbeda dari pengembangan perangkat lunak [6]. B. Metodologi Rekayasa Perangkat Lunak Pemodelan dalam perangkat lunak merupakan suatu yang harus dikerjakan di bagian awal dari rekayasa, dan pemodelan ini akan mempengaruhi perkerjaan-pekerjaan dalam rekayasa perangkat lunak tersebut. Model proses perangkat lunak masih menjadi objek penelitian, namun pada saat ini terdapat banyak model umum atau paradigma yang berbeda dari pengembangan perangkat lunak. Salah satu model yang digunakan dalam pengembangan rekayasa lunak adalah model Waterfall [2]. Gambar 1 memperlihatkan rangkaian aktivitas proses dalam model Waterfall: 1. Penentuan dan analisis kebutuhan 2. Sistem dan desain perangkat lunak 3. Implementasi dan uji coba unit 4. Integrasi dan uji sistem 5. Operasi dan pemeliharaan 385

Penentuan dan analisis kebutuhan Sistem dan desain perangkat lunak Implement asi dan uji coba unit Integrasi dan uji sistem Gambar 1 Model Waterfall. Operasi dan pemelihar aan C. Teori UML (Unified Modeling Language) [1]UML (Unified Modeling Language) adalah sebuah bahasa yang berdasarkan grafik/gambar untuk memvisualisasi, menspesifikasikan, membangun, dan pendokumentasian dari sebuah sistem pengembangan software berbasis OO (Object-Oriented) [3]. UML sendiri juga memberikan standar penulisan sebuah sistem blue print, yang meliputi konsep bisnis proses, penulisan kelas-kelas dalam bahasa program yang spesifik, skema database, dan komponen-komponen yang diperlukan dalam sistem software [11]. D. Kriptografi [5]Kriptografi, secara umum adalah ilmu dan seni untuk menjaga kerahasiaan berita (bruce Schneier - Applied Cryptography). Selain pengertian tersebut terdapat pula pengertian ilmu yang mempelajari teknik-teknik matematika yang berhubungan dengan aspek keamanan informasi seperti kerahasiaan data, keabsahan data, integritas data, serta autentikasi data [7]. Tidak semua aspek keamanan informasi ditangani oleh kriptografi. Ada empat tujuan mendasar dari ilmu kriptografi ini yang juga merupakan aspek keamanan informasi yaitu: 1. Kerahasiaan 2. Integritas data 3. Autentikasi 4. Non-repudiasi E. Algoritma Sandi Algoritma sandi adalah algoritma yang berfungsi untuk melakukan tujuan kriptografis. Algoritma tersebut harus memiliki kekuatan untuk melakukan (dikemukakan oleh Shannon) [8]: Dasar matematis yang mendasari proses enkripsi dan dekripsi adalah relasi antara dua himpunan yaitu yang berisi elemen teks terang /plaintext dan yang berisi elemen teks sandi/ciphertext. Enkripsi dan dekripsi merupakan fungsi transformasi antara himpunan-himpunan tersebut. Apabila elemen-elemen teks terang dinotasikan dengan P, elemen-elemen teks sandi dinotasikan dengan C, sedang untuk proses enkripsi dinotasikan dengan E, dekripsi dengan notasi D. Enkripsi: E(P) = C Dekripsi: D(C) = P atau D(E(P)) = P Secara umum berdasarkan kesamaan kuncinya, algoritma sandi dibedakan menjadi: Kunci-simetris/symetric-key, sering disebut juga algoritma sandi konvensional karena umumnya diterapkan pada algoritma sandi klasik kunciasimetris/asymetric-key. Berdasarkan arah implementasi dan pembabakan jamannya dibedakan menjadi: 1. Algoritma sandi klasik classic cryptography 2. Algoritma sandi modern modern cryptography Berdasarkan kerahasiaan kuncinya dibedakan menjadi: 1. Algoritma sandi kunci rahasia secret-key 2. Algoritma sandi kunci publik publik-key F. Algoritma sandi kunci-simetris Beberapa contoh algoritma yang menggunakan kunci-simetris: DES - Data Encryption Standard blowfish twofish MARS IDEA 3DES - DES diaplikasikan 3 kali AES - Advanced Encryption Standard, yang bernama asli rijndael Block-Cipher Block-cipher adalah skema algoritma sandi yang akan membagi-bagi teks terang yang akan dikirimkan dengan ukuran tertentu (disebut blok) dengan panjang t, dan setiap blok dienkripsi dengan menggunakan kunci yang sama. Stream-Cipher Stream-cipher adalah algoritma sandi yang mengenkripsi data persatuan data, seperti bit, byte, nible atau per lima bit (saat data yang di enkripsi berupa data Boudout). Setiap mengenkripsi satu satuan data di gunakan kunci yang merupakan hasil pembangkitan dari kunci sebelum. 386

G. Algoritma Sandi Kunci-Asimetris Skema ini adalah algoritma yang menggunakan kunci yang berbeda untuk proses enkripsi dan dekripsinya. Skema ini disebut juga sebagai sistem kriptografi kunci publik karena kunci untuk enkripsi dibuat untuk diketahui oleh umum (public-key) atau dapat diketahui siapa saja, tapi untuk proses dekripsinya hanya dapat dilakukan oleh yang berwenang yang memiliki kunci rahasia untuk mendekripsinya, disebut private-key. H. Fungsi Hash Kriptografi Fungsi hash Kriptografis adalah fungsi hash yang memiliki beberapa sifat keamanan tambahan sehingga dapat dipakai untuk tujuan keamanan data. Umumnya digunakan untuk keperluan autentikasi dan integritas data. Fungsi hash adalah fungsi yang secara efisien mengubah string input dengan panjang berhingga menjadi string output dengan panjang tetap yang disebut nilai hash. I. Sifat-Sifat Fungsi Hash Kriptografi Tahan preimej (Preimage resistant): bila diketahui nilai hash h maka sulit (secara komputasi tidak layak) untuk mendapatkan m dimana h = hash(m). Tahan preimej kedua (Second preimage resistant): bila diketahui input m1 maka sulit mencari input m2 (tidak sama dengan m1) yang menyebabkan hash(m1) = hash(m2). Tahan tumbukan (Collision-resistant): sulit mencari dua input berbeda m1 dan m2 yang menyebabkan hash(m1) = hash(m2). J. Algoritma-Algoritma Fungsi Hash Kriptografi Beberapa contoh algoritma fungsi hash Kriptografi: 1. MD4 2. MD5 3. SHA-0 4. SHA-1 5. SHA-256 6. SHA-512 7. K. Enkripsi Salah satu hal yang penting dalam komunikasi menggunakan computer untuk menjamin kerahasian data adalah enkripsi. Enkripsi dalah sebuah proses yang melakukan perubahan sebuah kode dari yang bisa dimengerti menjadi sebuah kode yang tidak bisa dimengerti (tidak terbaca). Enkripsi dapat diartikan sebagai kode atau chiper. Sebuah sistem pengkodean menggunakan suatu table atau kamus yang telah didefinisikan untuk mengganti kata dari informasi atau yang merupakan bagian dari informasi yang dikirim. L. Hypertext Preprocessor (PHP) [9]PHP adalah pemrograman web atau scripting language yang didesain untuk web. PHP dibuat pertama kali oleh satu orang yaitu Rasmus Lerdorf, yang pada awalnya dibuat untuk menghitung jumlah pengunjung pada situsnya. Diawal januari 2001, PHP telah dipakai lebih dari 5 juta domain di seluruh dunia dan terus bertambah karena kemudahan aplikasi PHP ini dibandingkan dengan bahasa server side yang lain. PHP adalah salah satu bahasa Server side yang didesain khusus untuk aplikasi web. PHP dapat disisipkan diantara bahasa HTML, dan bahasa server side, maka bahasa PHP akan dieksekusi di server sehingga yang dikirimkan ke browser adalah hasil jadi dalam bentuk HTML dan kode PHP anda tidak akan terlihat. M. PGP (Pretty Good Privacy) [4]PGP adalah suatu metode penyandian informasi yang bersifat rahasia sehingga jangan sampai diketahui oleh orang yang tidak berhak. Informasi ini bisa berupa e-mail yang sifatnya rahasia, nomor kode kartu kredit, atau pengiriman dokumen rahasia perusahaan melalui internet. PGP menggunakan metode kriptografi yang disebut public-key encryption ; yaitu suatu metode kriptografi yang sangat sophisticate. Beberapa istilah yang sering digunakan: 1. Cryptography/encryption 2. Conventional cryptography 3. Encrypt/encipher 4. Decrypt/decipher 5. Ciphertext/cipher 6. Plaintext 7. Key/kunci 8. Public-key crypto 9. Algorithm/algoritma 10. Passphrase 11. Public-key 12. Secret key 13. ASCII armor/radix-64 Prinsip Kerja PGP Prinsip kerja PGP adalah sebagai berikut: 1. PGP, seperti yang telah dijelaskan sebelumnya, menggunakan teknik yang disebut public-key encryption dengan dua kode. Kode-kode ini berhubungan secara intrinsik, namun tidak mungkin untuk memecahkan satu dan yang lainnya. 2. Bila suatu ketika kita membuat suatu kunci, maka secara otomatis akan dihasilkan sepasang kunci yaitu public-key and secret key. Kita dapat memberikan public-key ke manapun tujuan yang kita inginkan, melalui telephone, internet, keyserver, dsb. Secret key yang disimpan pada mesin kita dan menggunakan messager decipher akan dikirimkan ke kita. Jadi orang yang akan menggunakan public-key kita (yang hanya dapat didekripsi oleh oleh secret key kita), mengirimkan messages kepada kita, dan kita akan menggunakan secret key untuk membacanya. 3. Kenapa menggunakan dua kunci?. Karena dengan conventional crypto, di saat terjadi transfer informasi kunci, suatu secure channel diperlukan. Dan jika kita memiliki suatu secure channel, mengapa kita menggunakan crypto? Namun 387

dengan public-key system, tidak akan menjadi masalah siapa yang melihat kunci milik kita, karena kunci yang dilihat orang lain adalah yang digunakan hanya untuk enkripsi dan hanya kita sebagai pemilik yang mengetahui secret key; yaitu key yang berhubungan secara fisik dengan komputer kita yang dapat melakukan proses dekripsi dengan public-key yang ada dan kemudian kita masukan lagi passphrase. Jadi seseorang mungkin dapat mencuri passphrase yang kita ketikkan, namun ia dapat membaca hanya jika ia dapat mengakses komputer kita. III. ANALISIS DAN PERANCANGAN A. Analisis Dalam analisis enkripsi PGP ialah menggunakan kriptografi simetri dan kriptografi kunci-publik. Oleh karena itu penulis memilih membuat aplikasi perancangan file enkripsi pada e-mail yang dapat merahasiakan isi file yang dikirim yaitu PGP. Dalam pembuatan aplikasi enkripsi PGP penulis mengalami kesulitan. Karena, penulis harus mencari materi dan software dari PGP. Perancangan aplikasi enkripsi PGP dengan menggunakan PHP ini ditujukan bagi pengguna Internet yang khususnya untuk mengirim e-mail agar terjaga kerahasiaannya. Serta memudahkan pengguna untuk mendapat hasil yang diinginkan. Dalam merancang aplikasi ini penulis merasakan kekurangannya, diantaranya: 1. Data recovery dari swap file bisa kehilangan private key dan pass-phase. 2. PGP merupakan program freeware dan open source, maka siapa saja bisa mengambil source code dan menyisipkan semacam program kecil yang kemudian disebarkan kembali secara umum. 3. B. Perancangan Pada bagian ini akan dijelaskan secara rinci perancangan aplikasi file enkripsi PGP dengan menggunakan PHP. Lihat Gambar 2. Tahapan Interface Email Client 1. Inisialisasi Objektif dari tahap ini adalah mendefinisikan kebutuhan yang relevan dan dapat diaplikasikan dalam evolusi arsitektur internet. Dalam tahap ini perlu adanya edukasi dan penyebaran informasi yang memadai untuk mempersiapkan seluruh data yang diperlukan dalam perancangan. 2. Mendefinisikan Sistem PGP Objektif dari tahap ini adalah mendefinisikan status sistem PGP, mendokumentasi, melakukan analisa resiko, dan mencanangkan perubahan yang relevan dari hasil analisa resiko. Pendefinisian PGP didenifisikan oleh flowchart dan dapat dilihat pada Gambar 2. Untuk lebih lanjut lihat keterangan dibawah ini: 1. Start Tahapan pertama harus melakukan start untuk rangkaian persiapan pembuatan tahapan proses eksekusi. 2. Password Password disini digunakan agar user dapat melakukan pengiriman pesan seperti sama pada e- mail lainnya. 3. Buat password Jika user belum mempunyai id dan password user, maka user harus mengisi form yang sudah tersedia di dalam aplikasi ini. 4. Login Pada tahapan ini user memasukan id dan password untuk dapat mengggunakan fasilitas yang ada di dalamnya. 5. Isi alamat e-mail User harus mengisi alamat e-mail yang dituju. 6. Masukan lampiran Gambar 2 Flowchart Pengiriman Pesan Melakukan pengambilan file berupa *.txt yang akan dikirim. 7. Enkripsi isi lampiran dengan PGP Melakukan enkripsi file. Ada dua cara mengenkripsi arsip (file) yang akan dikirim: a. Melalui windows explorer b. Melalui program PGPmail 388

Jika lampiran sudah dipilih maka lampiran tersebut langsung di enkrip lalu dapat menerima key lampiran yang gunanya agar dapat membuka lampiran tersebut. 8. Kirim pesan Jika key lampiran dan pesan sudah siap, maka e- mail sudah bisa dapat langsung dikirim ke alamat yang dituju. Jika batal mengirim maka halaman tulis pesan akan kembali kosong. 9. Pesan dan key lampiran terkirim Jika pesan berhasil terkirim, maka isi pesan berikut key lampiran akan sampai ke alamat e- mail yang dituju. 10. End Tahapan ini adalah akhir dari penyelesaian rangkaian proses pengiriman pesan. 3. Mendefinisikan Sistem Dekripsi Lampiran Objektif dari tahap ini adalah mendefinisikan system dekripsi lampiran berdasarkan hasil analisa resiko dan prediksi terhadap kemungkinan terburuk. Pendefinisian yang diharapkan didenifisikan oleh flowchart dan dapat dilihat pada Gambar 3. Melihat isi e-mail dengan cara harus mempunyai id dan password sama seperti ketika mengirim pesan. 3. Masukan key lampiran Key lampiran yaitu berupa kode ASCII. Kode tersebut dimasukan ke dalam menu dekrip untuk dapat melakukan dekompres file, jika tidak terdapat key maka user tidak dapat membuka lampiran tersebut. Setelah memasukan key lampiran, user dapat langsung mengetahui nama file yang dikirim dan dapat langsung di-download oleh penerima. 4. Hasil dekompres lampiran Setelah memasukan key lampiran, user dapat langsung mengetahui nama file yang dikirim dan dapat langsung di-download oleh penerima. 5. End Tahapan ini adalah akhir dari penelesaian rangkaian proses deskripsi lampiran. Pemodelan Diagram Alir Data Masukan (Input) dan keluaran (output) data yang terjadi dalam sistem informasi, penulis gambarkan aliran datanya dalam Diagram Aliran Data (DAD) yang meliputi Diagram Konteks, DAD level 0, dan DAD level 1. 1. Diagram Konteks Diagram Konteks, digunakan merepresentasikan suatu sistem secara garis besar atau (global) dimana dapat terlihat dengan jelas data yang masuk dan keluar, berikut ini adalah penggambaran dengan diagram konteks untuk perancangan data pada Gambar 4 Diagram Konteks dibawah ini: Gambar 3 Flowchart Dekripsi Lampiran Dari Gambar 3.2 flowchart ini terlihat bahwa ada kesamaan dari flowchart pengiriman pesan. Tetapi yang membedakannya adalah pada saat pengeksekusian lampiran. Dari pengeksekusian lampiran, yaitu memasukan key lampiran untuk dapat membuka isi dari lampiran tersebut. Untuk lebih lanjut lihat keterangan dibawah ini: 1. Start Tahapan pertama harus melakukan start untuk rangkaian persiapan pembuatan tahapan proses eksekusi. 2. Menerima isi e-mail Gambar 4 Diagram Konteks Aplikasi. 2. Diagram Alir Data Level 0 Digram Alir Data (DAD) Level Nol, digunakan untuk perancangan data secara detail (rinci) di mana pada diagram tersebut menunjukkan proses-proses data yang akan berlangsung, dapat dilihat pada Gambar 4. Dari Gambar 4, dapat dijelaskan bahwa aliran data dimulai dari administrator yang mengelola data (input, delete, dan cari), kemudian data tersebut disimpan. 389

Tabel 3 Tabel Lampiran Gambar 4 Diagram Alir Data Level 0 IV. IMPLEMENTASI DAN PENGUJIAN A. Implementasi Sistem Implementasi Prototype dari Aplikasi Enkripsi PGP Dengan Menggunakan PHP ini dirancang menggunakan PGP 9.10 dan PHP, dalam PGP 9.10 tabel-tabel basis data tersebut disimpan dalam format (*.txt). 1. Implementasi Email Implementasi email menggunakan PHP dan PGP diimplementasikan pada halaman user. Karena aplikasi ini, yang menggunakannya hanya user. Proses Login Halaman login berisi form input username dan password yang digunakan untuk proses verifikasi. Jika pada saat melakukan login tidak bernilai error maka diperbolehkan untuk masuk halaman, jika tidak maka sistem akan menolak. Index Pada halaman terdapat beberapa menu yang dapat dipilih oleh admin. Diantaranya pesan masuk, print, kirim pesan, pesan terkirim, dan logout. Enkripsi Lampiran Dengan PGP Pada halaman ini yang dapat dipilih oleh mengenkripsi data lampiran Dekripsi Lampiran Dengan PGP Pada halaman ini yang dapat dipilih oleh mendekripsi data lampiran. Logout Pada menu ini user gunanya untuk keluar dari aplikasi yang sudah digunakan. Implementasi Basisdata Atribut Pada model data vector, setiap data memiliki data atribut terkait yang banyak jumlahnya (paling tidak lebih dari satu ). Data-data atribut ini, baik secara fisik maupun logik, sebenarnya ditampung dalam tabeltabel relasional yang terpisah dari data spasialnya tabel-tabel yang ada basisdatanya yaitu, tabel user dan tabel lampiran. Tabel 2 Tabel User V. PENUTUP Kesimpulan yang dapat diambil dalam perancangan aplikasi enkripsi PGP dengan menggunakan PHP ini adalah sebagai berikut: 1. Terdapat empat tujuan mendasar dari ilmu kriptografi ini yang juga merupakan aspek keamanan informasi yaitu kerahasian, integritas data, autentikasi, dan non repudiasi. 2. PGP menggunakan metode kriptografi yang disebut public-key encryption ; yaitu suatu metode kriptografi yang sangat sophisticate (berpengalaman). 3. Pada enkrip dan dekrip data hanya dapat berjalan sempurna pada format data *.txt, sedangkan pada format data lain belum bisa tereksekusi. 4. Menu yang tersedia, disesuaikan dengan fungsi atau tugasnya. Sehingga tampilan menu untuk masing-masing bagian akan berbeda antara satu dengan lainnya. 5. Keterkaitan antar PHP dan PGP direpresentasikan dalam sistem basis data. Dalam hal ini integrasi antar sistem diwujudkan berupa penggunaan basis data. VI. DAFTAR PUSTAKA [1] Badriyah, Tessy, Skom. MT. UML Class Diagram. Jakarta: PT. Elex Media Komputindo, 2007. [2] Fariza, Arna. Unified Modeling Language. Jakarta: 2008. [3] Fowler, Martin. 2005. UML Distilled Edisi 3, Panduan Singkat Bahasa Pemodelan Objek Standar. Yogyakarta: Penerbit Andi. [4] Hermawan, Benny. 1994. PGP (Pretty Good Privacy). Jakarta [5] Munir, Rinaldi. 2001. Kriptografi. Jakarta [6] Pressman, Roger S. 2002. Rekayasa Perangkat Lunak Buku 1. Yogyakarta: Penerbit Andi. [7] Sobari, Rahmat. 2005. Kriptografi. Jakarta. Penerbit Universitas Indonesia. [8] Sukmawan, Budi. 2000. Keamanan Data Dan Metode Enkripsi. Penerbit Puguh [9] Syukur, Ade Mark. 1999. Aplikasi Dengan Bahasa Pemrograman PHP. Jakarta Penerbit Gunadarma. [10] http://www.pgp.com/ [11] http://www.omg.org 390