penerapan kriptografi
DESCRIPTION
DIsajikan oleh Team Matrices sebagai Final Project Mata Kuliah Matematika Diskrit - Sistem Informasi ITS 2012TRANSCRIPT
MATEMATIKA DISKRIT – KS091201
Penerapan Kriptografi untuk Keamanan
Dokumen Teks pada PC
ABOERYZAL AHMED KOESYAIRY
NRP 5212100071
IKA ANINGDITYAS ANDRIANY
NRP 5212100004
MARTHONY MANDRA
NRP 5212105703
Dosen Pengajar
EKO WAHYU TYAS DARMANINGRAT, S.Kom, MBA
JURUSAN SISTEM INFORMASI
Fakultas Teknologi Informasi
INSTITUT TEKNOLOGI SEPULUH NOPEMBER
Surabaya 2012
2
KS091201
Matematika Diskrit Kelas B
Judul Kegiatan :
PENERAPAN KRIPTOGRAFI UNTUK KEAMANAN DOKUMEN
TEKS PADA PC
ANGGOTA PELAKSANA KEGIATAN : TIM MATRICES
1. ABOERYZAL AHMED KOESYAIRY 5212100071 2. IKA ANINGDITYAS ANDRIANY 5212100004 3. MARTHONY MANDRA 5212105703
Dosen Pengajar : EKO WAHYU TYAS DARMANINGRAT, S.Kom, MBA Final Project ini dipresentasikan dan diujikan pada tanggal ________________
Dosen Penguji,
_________________________________________
3
DAFTAR ISI
LEMBAR PENGESAHAN ....................................................................................................... 2
DAFTAR ISI ........................................................................................................................... 3
DAFTAR GAMBAR ................................................................................................................ 3
ABSTRAKSI ........................................................................................................................... 4
BAB I .................................................................................................................................... 5
PENDAHULUAN ................................................................................................................... 5
1.1 Latar Belakang ..................................................................................................... 5
1.2 Pernyataan Masalah ........................................................................................... 6
1.3 Tujuan ................................................................................................................. 6
1.4 Keunggulan ......................................................................................................... 6
2.1 Kriptografi ........................................................................................................... 7
2.2 Enkripsi & Dekripsi .............................................................................................. 9
2.3 ASCII .................................................................................................................. 10
2.4 ANALISIS ............................................................................................................ 10
2.5 RANCANGAN BIAYA .......................................................................................... 14
BAB III ................................................................................................................................ 15
KESIMPULAN ..................................................................................................................... 15
DAFTAR PUSTAKA ............................................................................................................. 16
BIODATA PENULIS ............................................................................................................. 17
DAFTAR GAMBAR
Gambar 1 Caesar Cipher ......................................................................................... 9
Gambar 2 Proses Enkripsi dan Deskripsi .......................................................... ..... 9
Gambar3 USASCII Code Chart ............................................................................... 10
Gambar 4 Hasil Compile Script Java sederhana pada Command Prompt ............ 12
Gambar 5 Contoh implementasi kriptografi dalam program HTML .................... 13
4
ABSTRAKSI
Hampir dari kebanyakan orang menyimpan dokumen penting dan rahasia
di dalam komputer dengan format *.doc, *.txt, *.rtf dan sebagainya. Dari semua
dokumen tersebut, tentu saja ada beberapa dokumen yang bersifat pribadi
(personal) dan tidak ingin dibaca oleh orang lain, dikarenakan kerahasiaan dan
pentingnya dokumen tersebut.
Karya tulis ini bertujuan untuk memberikan solusi alternatif agar
dokumen tersebut menjadi lebih aman (secure) meskipun telah dibuka dan
dibaca oleh orang lain. Karena dengan kriptografi, dokumen yang pada awalnya
dalam bentuk plainteks dienkripsi menjadi cipherteks yang kemudian akan
didekripsikembali menjadi plainteks ketika dibuka oleh si penyimpan data.
Sehingga dokumen tersebut tidak bisa dipahami oleh orang awam.
Oleh karena itu, karya tulis ini diharapkan dapat memberikan manfaat
lebih di dalam keamanan data atau dokumen berupa teks pada Personal
Computer (PC). Sehingga dengan menerapkan konsep dari pemahaman
mengenai kriptografi ini, akan diperoleh dokumen yang lebih aman dan terjaga
kerahasiaannya (confidential).
5
BAB I
PENDAHULUAN
1.1 Latar Belakang
Di era globalisasi saat ini kita pasti memiliki kecenderungan untuk
menyimpan dokumen-dokumen penting (dalam bentuk doc, txt, rtf dan
sebagainya) di personal computer yang kita miliki. Penyimpanan dokumen di
dalam personal computer tersebut pasti tidak semuanya bersifat public. Jika
dokumen tersebut bersifat public maka dokumen tersebut boleh dibuka oleh
siapapun. Tetapi ada juga dokumen yang bersifat private yang berarti hanya
orang yang menyimpan data yang boleh membukanya.
Pada PC atau personal computer biasanya tidak hanya si pemilik yang
menggunakannya, terkadang ada orang lain yang juga menggunakan personal
computer itu baik itu orang tua si pemilik, saudara maupun teman. Jika ada
orang lain yang menggunakan personal computer selain pemilik, akan muncul
kemungkinan dokumen yang bersifat private tersebut dapat terbuka dan terlihat
oleh orang lain.
Oleh karena itu, kami mencoba memberikan solusi dengan cara
menerapkan konsep dari penerapan kriptografi untuk menangani masalah
tersebut. Isi dari dokumen pribadi yang akan diamankan yang awalnya berupa
plainteks yang selanjutnya akan dienkripsi menjadi cipherteks. Plainteks
merupakan teks yang dapat dibaca dan dimengerti maknanya. Sedangkan
cipherteks merupakan teks yang telah dienkripsi sehingga tidak dapat dimengerti
maknanya atau dapat dikatakan telah berubah dari teks awalnya. Setelah
dienkripsi menjadi cipherteks, dokumen tersebut dapat didekripsi kembali
menjadi plainteks sehingga dapat kembali berubah menjadi teks awalnya agar
dapat dimengerti maknanya.
6
1.2 Pernyataan Masalah
Solusi yang kami tawarkan yaitu dengan menerapkan konsep
pemahaman kriptografi untuk mengubah isi dari dokumen pribadi yang awalnya
berupa plainteks yang selanjutnya akan dienkripsi menjadi cipherteks. Plainteks
merupakan teks yang dapat dibaca dan dimengerti maknanya.Sedangkan
cipherteks merupakan teks yang telah dienkripsi sehingga tidak dapat dimengerti
maknanya atau dapat dikatakan telah berubah dari teks awalnya. Setelah
dienkripsi menjadi cipherteks, dokumen tersebut dapat didekripsi kembali
menjadi plainteks sehingga dapat kembali berubah menjadi teks awalnya agar
dapat dimengerti maknanya.
Untuk melakukan proses enkripsi dan dekripsi tersebut, kita
menggunakan kriptografi dengan metode Caesar Cipher. Dengan menerapkan
konsep Kriptografi dengan metode Caesar Cipher ini, maka dokumen tersebut
akan dapat lebih terjaga kerahasiaannya.
1.3 Tujuan
Tujuan dari karya tulis ini untuk menjaga kerahasiaan dokumen, dalam
hal ini dokumen dengan format*.doc, *.txt, *.rtf dan sebagainya. Agar data yang
bersifat private tidak disalahgunakan oleh orang lain yang tidak bertanggung
jawab.
1.4 Keunggulan
Jika penerapan konsep kriptografi ini dijalankan maka dapat membantu
mengamankan data-data penting yang bersifat pribadi bagi pemiliknya dan
penerapan konsep karya tulis ini dapat dikembangkan lagi menjadi program yang
lebih kompleks dan komprehensif yang dapat bermanfaat bagi orang-orang yang
berkepentingan untuk menjaga keamanan suatu dokumen bagi para dosen,
instansi pemerintahan serta profesi lainnya.
7
BAB II
ISI
2.1 Kriptografi
Apakah sebenarnya kriptografi itu? Kriptografi adalah ilmu mengenai
teknik enkripsi dimana data diacak menggunakan suatu kunci enkripsi menjadi
sesuatu yang sulit dibaca oleh seseorang yang tidak memiliki kunci dekripsi.
Dekripsi menggunakan kunci dekripsi untuk mendapatkan kembali data yang asli.
Proses enkripsi dilakukan menggunakan suatu algoritma dengan beberapa
parameter. Biasanya algoritma tidak dirahasiakan, bahkan enkripsi yang
mengandalkan kerahasiaan algoritma dianggap sesuatu yang tidak baik. Rahasia
terletak di beberapa parameter yang digunakan, jadi kunci ditentukan oleh
parameter. Parameter yang menentukan kunci dekripsi itulah yang harus
dirahasiakan (parameter menjadi ekuivalen dengan kunci).
Kriptografi, secara umum, adalah ilmu dan seni untuk menjaga
kerahasiaan berita.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.Tidak semua aspek keamanan informasi ditangani oleh
kriptografi.
Ada empat tujuan mendasar dari ilmu kriptografi ini yang juga merupakan
aspek keamanan informasi yaitu :
Kerahasiaan, adalah layanan yang digunakan untuk menjaga isi dari informasi
dari siapapun kecuali yang memiliki otoritas atau kunci rahasia untuk
membuka/mengupas informasi yang telah disandi.
Integritas data, adalah berhubungan dengan penjagaan dari perubahan data
secara tidak sah. Untuk menjaga integritas data, sistem harus memiliki
kemampuan untuk mendeteksi manipulasi data oleh pihak-pihak yang tidak
8
berhak, antara lain penyisipan, penghapusan, dan pensubsitusian data lain
kedalam data yang sebenarnya.
Autentikasi, adalah berhubungan dengan identifikasi/pengenalan, baik
secara kesatuan sistem maupun informasi itu sendiri. Dua pihak yang saling
berkomunikasi harus saling memperkenalkan diri. Informasi yang dikirimkan
melalui kanal harus diautentikasi keaslian, isi datanya, waktu pengiriman,
dan lain-lain.
Non-repudiasi, atau nirpenyangkalan adalah usaha untuk mencegah
terjadinya penyangkalan terhadap pengiriman/terciptanya suatu informasi
oleh yang mengirimkan/membuat.
Kriptografi sederhana pernah digunakan pada masa Kaisar Romawi Julius
Caesar. Metode yang digunakan disebut Caesar Cipher. Pada metode ini enkripsi
dilakukan dengan cara menggeser karakter alfabet pada plainteks menuju 3
karakter sesudahnya.
Dalam kriptografi, sandi Caesar, atau Geseran Caesar (Caesar
Cipher)adalah salah satu teknik enkripsi paling sederhana dan paling
terkenal. Sandi ini termasuk sandi substitusi dimana setiap huruf pada teks
terang (plaintext) digantikan oleh huruf lain yang memiliki selisih posisi tertentu
dalam alfabet. Misalnya, jika menggunakan 3 geseran, W akan menjadi Z, I akan
menjadi L, K menjadi N sehingga teks terang “WIKI” akan menjadi “ZLNL” pada
teks tersandi.
Nama Caesar diambildari JuliusCaesar , seorang Jenderal, konsul dan juga
seorang diktator Romawi yang mneggunakan sandi ini untuk berkomunikasi
dengan panglimanya.
9
Gambar 1Caesar Cipher
Contohnya:
Plain: ABCDEFGHIJKLMNOPQRSTUVWXYZ
Cipher: DEFGHIJKLMNOPQRSTUVWXYZABC
2.2 Enkripsi & Dekripsi
Dalam kriptografi, enkripsi adalah proses transformasi informasi, disebut
sebagai plainteks, menggunakanalgoritma agar tidak dapat dibaca oleh
sembarang orang.
Hasil dari proses ini adalah informasi terenkripsi yang disebut cipherteks.
Cipherteks adalah adalah informasi yang telah disandikan dan tidak memiliki
makna lagi. Kebalikan dari enkripsi adalah dekripsi. Dekripsi mentransformasi
cipherteks menjadi plainteks kembali sehingga informasi dapat dibaca dan dapat
dimengerti maknanya.
Gambar 2 Proses Enkripsi dan Deskripsi
10
2.3 ASCII
ASCII (American Standard Code for Information Interchange) merupakan
suatu standard internasional dalam kode huruf dan simbol, seperti Hex dan
Unicode, tetapi lebih bersifat universal. Kode ASCII memiliki komposisi bilangan
biner sebanyak 8 bit dimulai dari 0000 0000 hingga 1111 1111. Total kombinasi
yang dihasilkan sebanyak 256, dimulai dari kode 0 hingga 255 dalam sistem
bilangan desimal.
Gambar3 USASCII Code Chart
2.4 ANALISIS
Untuk menerapkan kriptografi ini, kita menggunakan algoritma yang
didasari oleh metode Caesar Cipher.Pada metode Caesar Cipher, enkripsi
dilakukan dengan menggeser 3 karakter alfabet sehingga:
1. A menjadi D
2. B menjadi E
3. C menjadi F
4. D menjadi G
5. E menjadi H
6. F menjadi I
11
7. G menjadi J
8. H menjadi K
9. I menjadi L
10. J menjadi M
11. K menjadi N
12. L menjadi O
13. M menjadi P
14. N menjadi Q
15. O menjadi R
16. P menjadi S
17. Q menjadi T
18. R menjadi U
19. S menjadi V
20. T menjadi W
21. U menjadi X
22. V menjadi Y
23. W menjadi Z
24. X menjadi A
25. Y menjadi B
26. Z menjadi C
Berikut javascript sederhana untuk penerapan kriptografi dengan metode Caesar
Cipher dengan Java.
public class CaesarCipherJava {
public static void main(String[] args) {
String str = "matematika diskrit"; // -------Input teks
int key = 3; // -------jumlah pergeseran
String encrypted = encrypt(str, key);
System.out.println(encrypted);
String decrypted = decrypt(encrypted, key);
System.out.println(decrypted);
}
12
public static String encrypt(String str, int key) {
String encrypted = "";
for(int i = 0; i < str.length(); i++) {
int c = str.charAt(i);
if (Character.isUpperCase(c)) {
c = c + (key % 26);
if (c > 'Z')
c = c - 26;
} else if (Character.isLowerCase(c)) {
c = c + (key % 26);
if (c > 'z')
c = c - 26;
}
encrypted += (char) c;
}
return encrypted;
}
public static String decrypt(String str, int key)
{
String decrypted = "";
for(int i = 0; i < str.length(); i++) {
int c = str.charAt(i);
if (Character.isUpperCase(c)) {
c = c - (key % 26);
if (c < 'A')
c = c + 26;
} else if (Character.isLowerCase(c)) {
c = c - (key % 26);
if (c < 'a')
c = c + 26;
}
decrypted += (char) c;
}
return decrypted;
}
}
Setelah dijalankan, script sederhana ini akan menunjukkan hasil :
Gambar 4 Hasil Compile Script Java sederhana pada Command Prompt
13
Hasil compile dari script Java sederhana dengan metode Caesar Cipher
“matematika diskrit” merupakan data teks awal sebelum dienkripsi, sedangkan
“pdwhpdwlnd glvnulw” adalah hasil enkripsinya dengan pergeseran sejumlah 3
pergeseran.
Dengan demikian diperoleh hasil teks yang lebih aman dan tidak mudah
terbaca oleh orang lain. Hal ini dapat dikembangkan menjadi lebih kompleks dan
akan sangat bermanfaat bagi orang-orang yang menyimpan dokumen bersifat
rahasia (private) pada PC, misalnya dosen yang menyimpan soal-soal ujian,
dokumen rahasia Intelijen, dan dokumen penting-penting lainnya.
Gambar 5 Contoh implementasi kriptografi dalam program HTML
14
2.5 RANCANGAN BIAYA
Uraian Volume Satuan Harga Satuan
(Rp)
Jumlah (Rp)
Biaya Percetakan
Laporan Final Project 1 18 lembar 500,00 9.000,00
Biaya Photocopy 3 51 lembar 75,00 4.050,00
Penjilidan Laporan Final
Project 4 4 set 2.500,00 10.000,00
Total Pengeluaran 23.050,00
Estimasi biaya untuk implementasi aplikasi :
Uraian Volume Satuan Harga Satuan
(Rp)
Jumlah (Rp)
Aplikasi Netbeans 1 1 CD 300.000,00 300.000,00
Aplikasi Adobe
Dreamweaver CS6 1 1 CD 1.150.000,00 1.150.000,00
Notebook / Laptop 1 1 unit 5.250.000,00 5.250.000,00
Total Pengeluaran 6.700.000,00
15
BAB III
KESIMPULAN
Melalui penerapan konsep kriptografi yang ini diharapkan
dapatmemberikan proteksiserta keamanan pada dokumen pribadi miliknya agar
tidak mudah untuk dipahami dan dimengerti oleh orang lainsetelah melalui
proses enkripsi dan dekripsi dari plainteks ke cipherteks tersebut. Dan hanya
dapat dimengerti dan dibuka oleh pemilik dokumen dengan kode atau putaran
(pergeseran) yang ditentukan dari metode Caesar Cipher. Dan dengan penerapan
konsep kriptografi ini juga diharapkan untuk dapat dikembangkan menjadi
aplikasi yang lebih kompleks dan komprehensif sehingga akan sangat bermanfaat
bagi instansi pemerintahan, para dosen, ataupun siapa saja yang membutuhkan
agar dokumen yang dimiliki menjadi lebih aman dan terjaga kerahasiaannya.
16
DAFTAR PUSTAKA
1. Munir, Rinaldi, “Matematika Diskrit”, Informatika, 2003
2. http://en.wikipedia.org/wiki/Caesar_cipher tanggal akses 27 Desember 2012
3. http://id.wikipedia.org/wiki/Kriptografi tanggal akses 27 Desember 2012
4. http://codeindesign.com/dasar-kriptografi-enkripsi-dan-dekripsi
tanggal akses 27 Desember 2012
5. http://en.wikipedia.org/wiki/ASCII, tanggal akses 27 Desember 2012
6. http://www.java2s.com/Code/JavaScript/Security/CaesarCipherinJavaScript.
htm tanggal akses 27 Desember 2012
17
BIODATA PENULIS
Berikut ini adalah biodata dari anggota kelompok Matrices :
1. Aboeryzal Ahmed Koesyairy / 5212100071
2. Ika Aningdityas Andriany / 5212100004
Nama : Aboeryzal Ahmed Koesyary NRP : 5212100071 Tempat tanggal lahir : Situbondo, 18 Mei 1994 Agama : Islam
Alamat asal : Jalan Raya Banyuwangi, Kampung Krajan RT 1 RW 2 Desa Landangan Kecamatan Kapongan, Situbondo
Alamat di Surabaya : Jalan Gebang Kidul No 25 Surabaya Nomor Handphone : 0896793747 Email : [email protected] Pendidikan Terakhir : SMAN 2 Situbondo
Nama : Ika Aningdityas Andriany NRP : 5212100004 Tempat tanggal lahir : Sidoarjo, 25 September 1994 Agama : Islam
Alamat asal : Perum. DSB, Delta Asri 56, Waru, Sidoarjo
Alamat di Surabaya : - Nomor Handphone : 081938125939 Email : [email protected] Pendidikan Terakhir : SMAN 1 Sidoarjo
18
3. Marthony Mandra / 5212105703
Nama : Marthony Mandra NRP : 5212105703 Tempat tanggal lahir : Bukittinggi, 10 April 1983 Agama : Islam
Alamat asal : Tiban Indah Permai T/55 Batam Kepulauan Riau
Alamat di Surabaya : Tenggilis Lama IV/C Nomor20 Surabaya
Nomor Handphone : 082155380840 Email : [email protected] Pendidikan Terakhir : Diploma III Akuntansi STAN Jakarta