pembangunan add-on pada mozila

10
PEMBANGUNAN ADD-ON PADA MOZILLA THUNDERBIRD UNTUK ENKRIPSI SURAT ELEKTRONIK DENGAN CORRECTED BLOCK TINY ENCRYPTION ALGORITHM LAPORAN TUGAS AKHIR oleh : Ricky Gilbert Fernando / 13505077 PROGRAM STUDI TEKNIK INFORMATIKA SEKOLAH TEKNIK ELEKTRO DAN INFORMATIKA INSTITUT TEKNOLOGI BANDUNG 2009

Upload: ls-ari

Post on 02-Jan-2016

17 views

Category:

Documents


1 download

DESCRIPTION

komputer

TRANSCRIPT

Page 1: pembangunan add-on pada mozila

PEMBANGUNAN ADD-ON PADA MOZILLA

THUNDERBIRD UNTUK ENKRIPSI SURAT ELEKTRONIK DENGAN CORRECTED BLOCK TINY

ENCRYPTION ALGORITHM

LAPORAN TUGAS AKHIR

oleh :

Ricky Gilbert Fernando / 13505077

PROGRAM STUDI TEKNIK INFORMATIKA

SEKOLAH TEKNIK ELEKTRO DAN INFORMATIKA

INSTITUT TEKNOLOGI BANDUNG

2009

Page 2: pembangunan add-on pada mozila

i

LEMBAR PENGESAHAN

Program Studi Sarjana Teknik Informatika 

Pembangunan Add-on pada Mozilla Thunderbird untuk Enkripsi Surat

Elektronik dengan Corrected Block Tiny Encryption Algorithm

Tugas Akhir

Program Studi Sarjana Teknik Informatika ITB

Oleh:

Ricky Gilbert Fernando / 13505077

Telah disetujui dan disahkan sebagai laporan tugas akhir

di Bandung, pada 25 Agustus 2009

Pembimbing

Ir. Rinaldi Munir, M.T.

NIP. 132084796

Page 3: pembangunan add-on pada mozila

ii

ABSTRAK

Saat ini, komunikasi digital semakin dibutuhkan. Komunikasi tersebut dapat berupa

email, instant messaging, forum, website, audio, atau video. Fokus tugas akhir ini

adalah pengamanan email dengan menggunakan algoritma enkripsi. Dengan

berbasiskan corrected block tiny encryption algorithm yang merupakan algoritma

kriptografi kunci simetris, pengguna, baik pengirim maupun penerima, harus memiliki

kunci enkripsi yang sama. Tentu saja, orang lebih tertarik untuk memilih kunci yang

mudah diingat, tetapi mudah ditebak dibandingkan kunci yang panjang dan sulit

diingat. Tugas akhir ini menyediakan sebuah mekanisme untuk membangkitkan kata

kunci yang relatif kuat dengan menggunakan masukan dari pengguna.

Tugas akhir ini berisi gambaran singkat mengenai ide awal dan dasar teori pengerjaan

tugas akhir, laporan pembangunan perangkat lunak, dan pengujian perangkat lunak.

Perangkat lunak ini, atau lebih tepat disebut sebagai add-on Mozilla Thunderbird,

mampu menangani proses enkripsi dan dekripsi surat elektronik, penghitungan

kekuatan kata kunci masukan pengguna, dan pembangkitan kata kunci. Fitur-fitur

tersebut dapat membantu pengguna untuk membangkitkan kata kunci hingga

mengirimkan surat elektronik yang aman ke penerima. Dalam proses

implementasinya, lingkungan implementasi yang digunakan adalah Windows XP SP3,

Mozilla Thunderbird 2.0.0.21 dengan add-on DOM Inspector, dan Notepad++. Add-

on dibangun dengan XUL (XML User Interface Language) sebagai pembentuk

tampilan dan Javascript sebagai bahasa pemrograman. Setelah dilakukan pengujian,

semua kebutuhan perangkat lunak berjalan dengan baik, surat elektronik dikirim

dalam bentuk terenkripsi, kata kunci bangkitan tergolong relatif kuat, dan enkripsi dan

dekripsi berjalan dengan cepat.

Kata kunci: Corrected block tiny encryption algorithm, email, Mozilla Thunderbird,

add-on.

Page 4: pembangunan add-on pada mozila

iii

KATA PENGANTAR

Penulis panjatkan puji syukur kepada Tuhan Yesus Kristus atas semua berkat dan

perlindungan-Nya sehingga penulis dapat menyelesaikan tugas akhir ini.

Laporan dengan judul “Pembangunan Add-on pada Mozilla Thunderbird untuk

Enkripsi Surat Elektronik dengan Corrected Block Tiny Encryption Algorithm”

disusun sebagai syarat kelulusan tingkat sarjana.

Pada kesempatan ini, penulis ingin mengucapkan terima kasih kepada semua pihak

yang telah membantu penulis selama pelaksanaan tugas akhir ini. Ucapan terima kasih

disampaikan kepada:

1. Ir. Rinaldi Munir, M.T. selaku dosen pembimbing yang telah membantu dan

membimbing, dan memberikan nasehat selama pengerjaan tugas akhir ini.

2. Dra. Harlili, M.Sc. selaku dosen penguji presentasi proposal, seminar,

prasidang, dan sidang atas kritik dan saran yang telah diberikan.

3. Achmad Imam Kistijantoro, S.T., M.T., Ph.D. selaku dosen penguji siding atas

kritik dan saran yang telah diberikan.

4. Keluarga penulis, Papa, Mama, Kak Nancy, Kak Roose, Samantha, dan

Raymond yang selalu mendukung dan mendorong penulis untuk semangat

mengerjakan tugas akhir ini.

5. Yani Widyani, S.T., M.T. selaku dosen wali yang selalu memberi semangat

untuk cepat membereskan tugas akhir.

6. Ir. Windy Gambetta, Ph.D. selaku dosen mata kuliah Tugas Akhir.

7. Ibnul Qoyyim S.T., IF04, yang telah memberikan bantuan teknis, jawaban atas

pertanyaan penulis, dan saran-sarannya selama pengerjaan tugas akhir.

8. Nanto S.T., Ferry S.T., dan Anggi yang selalu bisa membantu ketika penulis

kesulitan.

9. Gilang S.T. dan Herdyanto yang selalu menjadi teman diskusi tugas akhir.

10. Vandy atas bantuannya ketika penulis kesulitan mendapatkan akses internet.

Page 5: pembangunan add-on pada mozila

iv

11. Teman-teman yang telah mengikuti presentasi proposal dan seminar tugas

akhir penulis.

12. Teman-teman IF05 atas 4 tahun yang menyenangkan di ITB.

13. Donny S.T. TI05 yang telah meminjamkan modem HSDPA-nya kepada

penulis dan memberikan semangat kepada penulis untuk terus mengerjakan

tugas akhir.

14. Teman-teman kos atas kebersamaannya selama di sana.

15. Seluruh staf Program Studi Teknik Informatika yang telah mendukung

kelancaran pengerjaan tugas akhir.

16. Pihak-pihak lainnya yang telah membantu pengerjaan tugas akhir ini yang

tidak dapat disebutkan satu per satu.

Penulis menyadari bahwa tugas akhir ini tidak luput dari kesalahan. Oleh karena itu,

penulis bersedia menerima kritik dan saran dari pembaca. Terima kasih.

Bandung, Agustus 2009

Penulis

Page 6: pembangunan add-on pada mozila

v

DAFTAR ISI

LEMBAR PENGESAHAN ............................................................................................ i 

ABSTRAK ..................................................................................................................... ii 

KATA PENGANTAR ................................................................................................. iii 

DAFTAR ISI .................................................................................................................. v 

DAFTAR GAMBAR ................................................................................................. viii 

DAFTAR TABEL ......................................................................................................... ix 

BAB I.  PENDAHULUAN .................................................................................... I-1 

I.1  Latar Belakang ............................................................................................. I-1 

I.2  Rumusan Masalah ........................................................................................ I-3 

I.3  Tujuan ........................................................................................................... I-3 

I.4  Batasan Masalah ........................................................................................... I-4 

I.5  Metodologi ................................................................................................... I-4 

BAB II.  STUDI LITERATUR .............................................................................. II-1 

II.1  Kriptografi ................................................................................................... II-1 

II.2  Block Cipher ................................................................................................ II-4 

II.3  Jaringan Feistel ............................................................................................ II-5 

II.4  Fungsi Hash SHA........................................................................................ II-6 

II.5  Corrected Block Tiny Encryption Algorithm .............................................. II-7 

II.5.1  Definisi ................................................................................................. II-7 

II.5.2  Algoritma Penyandian ......................................................................... II-9 

II.5.3  Detail Sandi ........................................................................................ II-10 

II.6  Kata Kunci ................................................................................................. II-11 

II.6.1  Definisi ............................................................................................... II-11 

II.6.2  Pengukuran Kekuatan Kata Kunci ..................................................... II-12 

II.7  Surat Elektronik......................................................................................... II-12 

II.8  MIME ........................................................................................................ II-14 

II.9  Mekanisme Add-on pada Mozilla Thunderbird ........................................ II-15 

BAB III.  ANALISIS MASALAH ........................................................................ III-1 

III.1  Analisis Permasalahan ........................................................................... III-1 

Page 7: pembangunan add-on pada mozila

vi

III.2  Penanganan Masalah ............................................................................. III-2 

III.2.1  Penanganan Masalah Kekuatan Kata Kunci ...................................... III-2 

III.2.2  Penanganan Masalah Implementasi XXTEA .................................... III-4 

III.2.3  Penanganan Masalah Encoding Ciphertext ....................................... III-5 

III.2.4  Penanganan Masalah Kenyamanan Add-on ....................................... III-6 

BAB IV.  ANALISIS DAN PERANCANGAN .................................................... IV-1 

IV.1  Deskripsi Umum Perangkat Lunak ........................................................ IV-1 

IV.2  Fitur Utama Perangkat Lunak................................................................ IV-2 

IV.2.1  Kebutuhan Fungsional ....................................................................... IV-3 

IV.2.2  Kebutuhan Non-fungsional ................................................................ IV-3 

IV.3  Model Use Case..................................................................................... IV-3 

IV.3.1  Diagram Use Case ............................................................................. IV-3 

IV.3.2  Definisi Aktor .................................................................................... IV-4 

IV.3.3  Definisi Use Case .............................................................................. IV-4 

IV.3.4  Skenario Use Case ............................................................................. IV-5 

IV.4  Analisis Perangkat Lunak ...................................................................... IV-6 

IV.4.1  Realisasi Use Case Tahap Analisis .................................................... IV-7 

IV.4.2  Diagram Kelas Analisis Keseluruhan ................................................ IV-9 

IV.5  Perancangan Perangkat Lunak............................................................. IV-11 

IV.5.1  Realisasi Use Case Tahap Perancangan ........................................... IV-11 

IV.5.2  Diagram Kelas Keseluruhan ............................................................ IV-13 

IV.5.3  Perancangan Antarmuka .................................................................. IV-14 

IV.5.4  Perancangan Modul ......................................................................... IV-17 

BAB V.  IMPLEMENTASI DAN PENGUJIAN ................................................... V-1 

V.1  Lingkungan Implementasi ........................................................................... V-1 

V.1.1  Lingkungan Perangkat Keras ............................................................... V-1 

V.1.2  Lingkungan Perangkat Lunak .............................................................. V-1 

V.2  Batasan Implementasi ................................................................................. V-2 

V.3  Hasil Implementasi ...................................................................................... V-2 

V.3.1  Hasil Implementasi Modul Program .................................................... V-2 

V.3.2  Hasil Implementasi Antarmuka Program............................................. V-3 

V.4  Lingkungan Pengujian ................................................................................. V-3 

Page 8: pembangunan add-on pada mozila

vii

V.4.1  Lingkungan Pengujian Perangkat Keras .............................................. V-3 

V.4.2  Lingkungan Pengujian Perangkat Lunak ............................................. V-3 

V.5  Tujuan Pengujian ......................................................................................... V-4 

V.6  Perancangan Kasus Uji ................................................................................ V-4 

V.7  Skenario Pengujian ...................................................................................... V-4 

V.7.1  Skenario Pengecekan Kata Kunci ........................................................ V-4 

V.7.2  Skenario Pembangkitan Kata Kunci .................................................... V-5 

V.7.3  Skenario Pengiriman Surat Elektronik dengan Enkripsi ..................... V-5 

V.7.4  Skenario Penerimaan dan Dekripsi Surat Elektronik........................... V-5 

V.8  Pelaksanaan Pengujian ................................................................................ V-6 

V.8.1  Pengujian Skenario Pengecekan Kata Kunci ....................................... V-6 

V.8.2  Pengujian Skenario Pembangkitan Kata Kunci ................................... V-6 

V.8.3  Pengujian Skenario Pengiriman Surat Elektronik................................ V-6 

V.8.4  Pengujian Skenario Penerimaan dan Dekripsi Surat Elektronik .......... V-7 

V.8.5  Pengujian Skenario Dekripsi Surat dengan Kunci yang Salah ............ V-7 

V.8.6  Pengujian Skenario Dekripsi Surat Elektronik yang Invalid ............... V-7 

V.8.7  Pengujian Skenario Dekripsi Ciphertext yang Berubah ...................... V-7 

V.8.8  Pengujian Ketepatan Isi Surat yang Terkirim ...................................... V-8 

V.8.9  Pengujian Kekuatan Kata Kunci Bangkitan Program .......................... V-8 

V.8.10  Pengujian Kecepatan Enkripsi XXTEA ........................................... V-8 

V.9  Evaluasi Hasil Pengujian ............................................................................. V-8 

BAB VI.  PENUTUP ............................................................................................. VI-1 

VI.1  Kesimpulan ............................................................................................ VI-1 

VI.2  Saran ...................................................................................................... VI-1 

DAFTAR PUSTAKA .................................................................................................... x 

LAMPIRAN A. DOKUMEN PENGUJIAN .............................................................. xii 

Page 9: pembangunan add-on pada mozila

viii

DAFTAR GAMBAR

Gambar I-1 Skema Solusi ........................................................................................... I-3 

Gambar II-1 Ilustrasi Saluran Komunikasi ................................................................ II-3 

Gambar II-2 Skema Enkripsi dan Dekripsi Block Cipher [ MUN06] ....................... II-4 

Gambar II-3 Skema Penyandian dari Feistel Cipher ................................................. II-5 

Gambar II-4 Satu Iterasi dalam XXTEA ................................................................... II-9 

Gambar II-5 Proses Pengiriman Surat Elektronik ................................................... II-13 

Gambar III-1 Skema Pemilihan Kata Kunci ............................................................ III-4 

Gambar IV-1 Skema Umum Perangkat Lunak ........................................................ IV-2 

Gambar IV-2 Diagram Use Case ............................................................................. IV-4 

Gambar IV-3 Class Diagram Analisis Mengenkripsi Surat Elektronik .................. IV-7 

Gambar IV-4 Sequence Diagram Analisis Mengenkripsi Surat Elektronik ............ IV-8 

Gambar IV-5 Class Diagram Analisis Mendekripsi Surat Elektronik .................... IV-8 

Gambar IV-6 Sequence Diagram Analisis Mendekripsi Surat Elektronik .............. IV-9 

Gambar IV-7 Diagram Kelas Analisis Keseluruhan .............................................. IV-10 

Gambar IV-8 Diagram Kelas Perancangan Mengenkripsi Surat Elektronik ......... IV-11 

Gambar IV-9 Sequence Diagram Perancangan Mengenkripsi Surat Elektronik ... IV-12 

Gambar IV-10 Diagram Kelas Perancangan Mendekripsi Surat Elektronik ......... IV-12 

Gambar IV-11 Sequence Diagram Perancangan Mendekripsi Surat Elektronik ... IV-13 

Gambar IV-12 Diagram Kelas Perancangan Keseluruhan .................................... IV-14 

Gambar IV-13 Screenshot Main Window Mozilla Thunderbird ............................ IV-15 

Gambar IV-14 Screenshot Compose Window Mozilla Thunderbird ..................... IV-15 

Gambar IV-15 Sketsa Main Window Mozilla Thunderbird ................................... IV-16 

Gambar IV-16 Sketsa Compose Window Mozilla Thunderbird ............................ IV-16 

Page 10: pembangunan add-on pada mozila

ix

DAFTAR TABEL

Tabel II-1 Detail Sandi ............................................................................................. II-11 

Tabel IV-1 Definisi Use Case .................................................................................. IV-5 

Tabel IV-2 Skenario Use Case Mengenkripsi Surat Elektronik .............................. IV-5 

Tabel IV-3 Skenario Use Case Mendekripsi Surat Elektronik ................................ IV-6 

Tabel V-1 Daftar Modul Program.............................................................................. V-2 

Tabel V-2 Daftar Antarmuka Program ...................................................................... V-3