Institutional Repository | Satya Wacana Christian University: Implementasi Hashing menggunakan Metode MD5 pada Aplikasi Email Client

  Implementasi Hashing menggunakan Metode MD5 pada Aplikasi Email Client Artikel Ilmiah Peneliti : Krisaldi Pampei (672010170) Dian W. Chandra, S.Kom., M.Cs. Alz Danny Wowor, S.Si., M.Cs. Program Studi Teknik Informatika Fakultas Teknologi Informasi Universitas Kristen Satya Wacana Salatiga Agustus 2015

  Implementasi Hashing menggunakan Metode MD5 pada Aplikasi Email Client Artikel Ilmiah Diajukan kepada Fakultas Teknologi Informasi untuk memperoleh Gelar Sarjana Komputer Peneliti : Krisaldi Pampei (672010170) Dian W. Chandra, S.Kom., M.Cs. Alz Danny Wowor, S.Si., M.Cs. Program Studi Teknik Informatika Fakultas Teknologi Informasi Universitas Kristen Satya Wacana Salatiga Agustus 2015

  Lembar Persetujuan

  

Implementasi Hashing menggunakan Metode MD5 pada Aplikasi

Email Client

1) 2 ) 3 )

  

Krisaldi Pampei Dian W. Chandra Alz Danny Wowor

, ,

  

Fakultas Teknologi Informasi

Universitas Kristen Satya Wacana

1) 2)

Jl. Diponegoro 52-60, Salatiga 50711, Indonesia

Email: fuad.pampei@gmail.com, dian.chandra@staff.uksw.edu,

3)

alzdanny.wowor@staff.uksw.edu

Abstract

  Email as one form of information which is passed to the Internet network that have

a security risk, for instance manipulating the message content. At the mail server, every

email stored in the form of files that can be changed deliberately or inadvertently, by

others who have access to the server, or by an application. To ensure that the contents of

the message to the email does not change, needed a mechanism to detect the integrity

of the content of such messages, one of which the MD5 hash algorithm. Value of

representation (hash) is used to compare the initial data and final data. In this study

developed a detection mechanism changes the contents of the email message, which is

implemented in the form of software. Before the email is sent, the calculated hash value of

the message, and then attached to the email. Test results show that changes to the content

of messages can be detected. Additional advertising or information scanned by the

antivirus to the email structure can not detected as a change, because it does not change

the contents a message written by the sender.

  Keywords: Data Integrity, Hash, Email, MD5

Abstrak

  Email sebagai salah satu bentuk informasi yang dilewatkan pada jaringan internet

yang memiliki resiko keamanan, misalnya adalah memanipulasi isi pesan. Pada mail

server , tiap email tersimpan dalam bentuk file yang dapat diubah sengaja maupun tidak

sengaja, oleh orang lain yang memiliki akses ke server, atau oleh suatu aplikasi. Untuk

memastikan bahwa isi pesan pada email tidak mengalami perubahan, diperlukan

mekanisme untuk mendeteksi keutuhan isi pesan tersebut, salah satunya algoritma hash

MD5. Nilai representasi (hash) digunakan untuk membandingkan data awal dan data

akhir. Pada penelitian ini dikembangkan suatu mekanisme deteksi perubahan isi pesan

email, yang diimplementasikan dalam bentuk perangkat lunak. Sebelum email dikirim,

dihitung nilai hash pesan, kemudian dilampirkan pada email. Hasil pengujian

menunjukkan bahwa perubahan pada isi pesan dapat terdeteksi. Penambahan iklan atau

informasi hasil scan oleh antivirus pada struktur email tidak dapat terdeteksi sebagai

perubahan, karena tidak mengubah isi pesan yang ditulis oleh pengirim. 1) Kata Kunci: Integritas Data, Hash, Email, MD5

  

Mahasiswa Program Studi Teknik Informatika, Fakultas Teknologi Informasi, Universitas Kristen Satya

2)3) Wacana Staf Pengajar Fakultas Teknologi Informasi, Universitas Kristen Satya Wacana.

  1. Pendahuluan

  Maraknya kasus penyadapan serta manipulasi data yang terjadi melalui media internet, seperti yang terjadi pada surat elektronik atau yang biasa disebut dengan email. Hal tersebut terjadi dikarenakan tingkat keamanan dari suatu data pada email belum terjamin sepenuhnya, sehingga beberapa orang melakukan pengaman tersendiri dalam mengamankan pengiriman file seperti dengan menambahkan fungsi enkripsi pada data pengiriman.

  Email merupakan media komunikasi yang masih sering digunakan untuk keperluan pertukaran informasi, sejak pertama kali ditemukan. Penggunaannya bervariasi dari sekedar untuk bertukar informasi, sampai kepada alat komunikasi bisnis yang paling dipercaya.

  Email digunakan dengan cara mendaftarkan akun pada mail server. Layanan mail server dapat diperoleh dengan cara membangun sendiri mail server dengan berbagai macam software open source maupun bukan. Layanan mail

  server juga dapat diperoleh pada layanan-layanan web hosting.

  Pada mail server, email tersimpan dalam bentuk file yang memiliki resiko untuk berubah atau rusak, dikarenakan berbagai penyebab, salah satu contohnya karena tindakan manipulasi atau penyadapan yangdilakukan oleh pihak lain (ketiga). Informasi yang terdapat dalam email bisa saja diganti tanpa disadari oleh pihak penerima. Untuk mengatasi hal tersebut, diperlukan mekanisme untuk memastikan bahwa isi dari suatu email masih utuh dan tidak mengalami perubahan saat pengiriman (valid).

  Berkaitan dengan masalah yang ada maka dilakukan penelitian untuk memastikan keutuhan suatu email. Solusi yang diajukan adalah dengan menambahkan checksum pada email. Checksum diperoleh dengan menggunakan algoritma MD5.

  2. Tinjauan Pustaka

  Pada penelitian Buana[1] dibahas mengenai ancaman keamanan integritas data pada Internet. Ancaman yang ditekankan adalah ancaman modification dan

  

fabrication . Modification berarti data diakses dan diubah oleh pihak yang tidak

  berhak.Fabrication berarti data ditiru dan dipalsukan untuk dimasukkan ke dalam sistem. Solusi yang diajukan pada penelitian tersebut adalah dengan menggunakan mekanisme pengujian integritas data, dengan menggunakan salah satu algoritma

  

hash , yaitu MD5. Penelitian tersebut menghasilkan aplikasi yang menunjukkan

keuntungan penggunakan pengujian integritas ini.

  Penelitian Buana menjadi acuan bagi penelitian ini karena pada penelitian Buana, dibahas tentang masalah yang sama yaitu masalah integritas file yang dilewatkan pada Internet. File memiliki resiko diubah dan dipalsukan oleh pihak tidak berwenang. Ketika file tidak utuh, akan memberikan akibat yang tidak semestinya bagi sistem yang menggunakan file tersebut. Buana menggunakan fungsi hash karena memiliki kelebihan yaitu, fungsi hash sangat peka terhadap perubahan sekecil apapun. Hal ini akan tercermin pada berubahnya nilai hash yang dihasilkan oleh fungsi hash. MD5 sebagai salah satu algoritma hash telah diimplementasikan ke dalam berbagai bahasa pemrograman, dan telah terintegrasi ke berbagai pustaka, misalnya JDK, .Net Framework, dan PHP. Sehingga tidak diperlukan untuk menulis sendiri kode program MD5 untuk dapat menggunakannya.

  Penelitian Hafiz[2] membahas tentang pemanfaatan MD5 dalam tanda digital pada SMS. Ponsel adalah salah satu alat komunikasi yang paling populer. Sayangnya, popularitas ini juga meningkatkan jumlah kejahatan menggunakan telepon seluler. Penipuan SMS adalah salah satu jenis kejahatan menggunakan ponsel. Metode verifikasi pengirim diperlukan untuk menghindari kejahatan semacam ini. Tanda tangan digital dapat digunakan untuk memverifikasi pengirim. Pengirim mengirimkan SMS dengan tanda tangan digital dan penerima akan melakukan verifikasi tanda tangan. Pada penelitian tersebut dikembangkan aplikasi ini dengan menggunakan J2ME dan algoritma MD5-RSA sebagai metode tanda tangan. Parameter kunci pasangan dapat dihasilkan dalam 15 detik sampai 4 menit tergantung pada teknologi telepon seluler. Tanda tangan digital dapat dibentuk dengan waktu rata-rata 1,35 detik sampai 1,97 detik. Verifikasi tanda tangan digital dapat dilakukan dengan waktu rata-rata 3,73 detik sampai 12,09 detik. Tanda tangan digital yang dihasilkan, menggunakan parameter kunci pribadi dan diverifikasi menggunakan parameter kunci publik. Hanya sepasang kunci yang benar akan memberikan hasil yang valid. Waktu untuk mengirim menandatangani-SMS tergantung pada kemampuan jaringan. Tidak ada perbedaan dibandingkan dengan mengirim SMS biasa.

  Penelitian Hafiz merupakan acuan dalam hal pemanfaatan MD5 untuk menjamin keutuhan pesan dimana yang menjadi obyek penelitian adalah pesan SMS. Pemanfaatan MD5 tersebut dapat diperluas untuk menjamin keutuhan pesan email, seperti yang dilakukan pada penelitian ini. Hafiz pada pengujian, mengambil kesimpulan bahwa fungsi hash tidak memberikan perbedaan waktu pada proses yang menggunakannya

  Berdasarkan penelitian-penelitian yang telah dilakukan tentang ancaman integritas data, dan pemanfaatan MD5 untuk menjamin keutuhan data, maka dilakukan penelitian yang bertujuan untuk merancang dan mengimplementasikan MD5 sebagai checksum[3] pada email untuk memastikan keutuhan suatu email.

  Batasan masalah dalam penelitian ini adalah sebagai berikut: (1)

  

Checksum dihitung dengan menggunakan algoritma MD5; (2) Checksum

  ditambahkan pada email dalam bentuk attachment; (3) Aplikasi dikembangkan dengan menggunakan .Net Framework 4.5, dan berjalan pada sistem operasi Microsoft Windows 7; (4) Tidak membahas sistem keamanan dari aplikasi yang dirancang.

  Kriptografi (cryptography) merupakan ilmu dan seni penyimpanan pesan, data, atau informasi secara aman. Kriptografi (cryptography) berasal dari bahasa Yunani yaitu dari kata Crypto dan Graphia yang berarti penulisan rahasia[4]. Kriptografi merupakan bagian dari suatu cabang ilmu matematika yang disebut

  

Cryptology . Dalam mengenkripsi dan mendekripsi data, kriptografi membutuhkan

  suatu algoritma (cipher) dan kunci (key). Cipher adalah fungsi matematika yang digunakan untuk mengenkripsi dan mendekripsi. Sedangkan kunci merupakan sederetan bit yang diperlukan untuk mengenkripsi dan mendekripsi data[7]. Secara umum proses kriptografi dibagi menjadi dua bagian yaitu enkripsi dan dekripsi. Data yang telah dienkripsi disebut ciphertext karena data asli telah mengalami proses di dalam sebuah algoritma kriptografi atau lebih dikenal dengan nama cipher. Kebalikannya, proses mengubah pesan yang telah dienkripsi (ciphertext) menjadi pesan asli (plaintext) disebut sebagai proses dekripsi. Proses enkripsi dan dekripsi dapat dilihat pada Gambar 1.

  

Gambar 1 Proses Enkripsi dan Dekripsi

  MD5 yang merupakan singkatan dari Message-Digest algortihm 5, adalah fungsi hash (prosedur terdefinisi atau fungsi matematika yang mengubah variabel dari suatu data yang berukuran besar menjadi lebih sederhana) kriptografik yang digunakan secara luas dengan hash value 128-bit. MD5 dimanfaatkan dalam berbagai aplikasi keamanan, dan umumnya digunakan untuk meguji integritas sebuah file. Hash MD5 sepanjang 128-bit (16-byte), yang dikenal juga sebagai ringkasan pesan, secara tipikal ditampilkan dalam bilangan heksadesimal 32-digit. Berikut ini merupakan contoh pesan ASCII sepanjang 43-byte sebagai masukan dan hash MD5 terkait:

  

MD5(“The quick brown fox jumps over the lazy dog”) =

9e107d9d372bb6826bd81d3542a419d6

  Bahkan perubahan yang kecil pada pesan akan (dengan probabilitas lebih) menghasilkan hash yang benar- benar berbeda, misalnya pada kata “dog”, huruf d diganti menjadi c:

  

MD5(“The quick brown fox jumps over the lazy cog”) =

1055d3e698d289f2af8663725127bd4b Hash dari panjang-nol ialah:

  MD5(“”) = d41d8cd98f00b204e9800998ecf8427e

  Ringkasan MD5 digunakan secara luas dalam dunia perangkat lunak untuk menyediakan semacam jaminan bahwa berkas yang diambil (download) belum terdapat perubahan. Seorang pengguna dapat membandingkan MD5 sum yang dipublikasikan dengan checksum dari berkas yang diambil. Dengan asumsi bahwa

  

checksum yang dipublikasikan dapat dipercaya akan keasliannya, seorang

  pengguna dapat secara yakin bahwa berkas tersebut adalah berkas yang sama dengan berkas yang dirilis oleh para developer. Bagaimanapun juga, seringkali kasus yang terjadi bahwa checksum yang dipublikasikan tidak dapat dipercaya (sebagai contoh, checksum didapat dari channel atau lokasi yang sama dengan tempat mengambil berkas), dalam hal ini MD5 hanya mampu melakukan error-

  

checking . MD5 akan mengenali berkas yang diunduh tidak sempurna, cacat atau

  tidak lengkap. Untuk aplikasi pengujian integritas sebuah file atau lebih dikenal dengan istilah MD5 checksum, dapat menggunakan aplikasi desktop atau aplikasi berbasis web MD5 checksum seperti “MD5 Checksum Verifier” dan sebagainya.

  

Software semacam ini akan menghasilkan kode MD5 dari file yang diuji

  integritasnya. Selanjutnya kode MD5 ini akan digunakan untuk menguji apakah

  

file tersebut memiliki integritas atau tidak. Artinya jika file akan diberikan atau

  dikirimkan atau diunduh, penerima dapat mencocokkan dengan yang diterima apakah ukuran, struktur, dan jenis file sesuai dengan yang diberikan oleh pembuat

  

file . Contohnya jika suatu file diunduh, kemudian diberikan juga kode MD5

checksum -nya, jika diperiksa (validasi) dengan aplikasi seperti MD5 Checksum

Verifier , dinyatakan valid atau sama dengan file yang diuji, maka dikatakan file

tersebut tidak mengalami perubahan dari pengirim hingga ke tangan penerima[7].

  Metode perancangan sistem dilakukan dengan menggunakan metodologi pengembangan perangkat lunak prototype model[5]. Pada proses implementasi dihasilkan beberapa prototype yang dapat dijelaskan sebagai berikut. Tahap

  

pertama : mendengarkan atau wawancara customer atau user; Tahap kedua;

  merancang program kemudian membuat perbaikan terhadap hasil yang diperoleh;

  

Tahap ketiga: melakukan evaluasi ke customer atau user dimana pada tahap ini

  proses akan kembali lagi ketahap pertama. Diagram prototype model ditunjukkan pada Gambar 2.

  

Gambar 2 Prototype Model

  Sesuai dengan tahapan penelitian, tahap kedua yaitu melakukan perancangan sistem. Rancangan yang dilakukan adalah rancangan proses pemberian checksum, proses validasi checksum, tampilan antarmuka aplikasi.

  

Mulai

Pengguna

memasukka

n isi pesan

  

Aplik asi menghitung nilai checksum

Meletakkan nilai checksum sebagai

attachment

Mengirim Email

  

Selesai

Gambar 3 Proses Pembuatan Checksum dan Pengiriman Email

  Gambar 3 menjelaskan proses penghitungan checksum, kemudian disisipkan ke dalam email dalam bentuk attachment. Proses tersebut terjadi sebelum proses pengiriman email. Sehingga emailakan terkirim ke penerima, dilengkapi dengan file attachment yang berisi nilai checksum.

  Mulai Program membaca pesan dalam inbox Aplikasi menghitung nilai checksum Jika ada Checksum attachment YA YA Status Valid sama checksum TIDAK TIDAK Status unknown Status not valid Selesai

Gambar 4 Proses Validasi Checksum Gambar 4 menunjukkan proses validasi checksum. Program membaca isi email kemudian dihitung nilai checksum dengan algoritma MD5. Nilai checksum yang diperoleh, kemudian dibandingkan dengan nilai checksum yang tersimpan di dalam attachment files. File dinyatakan valid hanya ketika nilai kedua checksum tersebut sama.

  Pembahasan terbagi pada pembahasan hasil penelitian dan pembahasan aspek keamanan.

  Sistem yang dihasilkan pada penelitian ini merupakan aplikasi berbasis

  

windows . Gambar 5 menunjukkan halaman yang digunakan untuk membaca

  email, sekaligus menunjukkan status uji integritas valid. Nilai checksum yang dibandingkan adalah nilai checksum isi email.

  

Gambar 5 Tampilan Email Valid

  Pada Gambar 5, sebagai contoh isi email adalah Universitas Kristen

  Satya Wacana

  , dan nilai checksum yang dihasilkan dengan menggunakan algoritma MD5 adalah 783C7DDA37773B69D673CC6E098EE0CE atau dalam format base64 eDx92jd3O2nWc8xuCY7gzg==.

  

Gambar 6 Tampilan Email Tidak Valid Gambar 6 menunjukkan status email yang tidak valid. Email tersebut telah mengalami perubahan tidak sah, sehingga nilai MD5 yang dihasilkan dari isi email, berbeda dengan nilai MD5 yang terdapat pada file attachment. Nilai

  

checksum yang dihasilkan dari hasil validasi adalah

4597081C0EDFC9C79ACB8A00644BE7B9

  yang berbeda dengan nilai checksum 783C7DDA37773B69D673CC6E098EE0CE. awal, yaitu

  

Gambar 7 Tampilan Email Tanpa Checksum

  Pada Gambar 7, menunjukkan kondisi ketika suatu email tidak memiliki

  

checksum didalamnya. Hal ini menyebabkan tidak dapat dilakukan proses

pembandingan atau validasi integritas pesan.

  Isi (content) dari sebuah email dideskripsikan dalam kata kunci Content-

  

Type . Jika email memiliki beberapa content dan berbeda jenis, maka pada bagian

  awal, disebutkan Content-Type: multipart/mixed. Isi pesan yang ditulis oleh pengirim diletakkan setelah kata kunci Content-Type: text/plain. Attachment diletakkan setelah Content-Type: application/octec-stream, dengan nilai Content-

Disposition adalah attachment. Aturan ini disebutkan pada RFC2183 [6].

  

Attachment ditulis dalam format encoding base64. Suatu content, diawali dan

  diakhiri dengan kata kunci boundary. Kata kunci boundary diikuti dengan suatu nilai (setelah tanda „=‟), yaitu dua karakter „-„, kemudian nilai Content-Type [8].

  header field

  Pada Gambar 8 terdapat beberapa tambahan akibat dari proses scan antivirus. Perubahan tersebut tidak mengubah isi pesan yang ditulis oleh pengirim. Perubahan terdapat pada penambahan header X-Antivirus dan X-AVG-ID. Dua header ini ditambahkan oleh AVG antivirus, untuk menandai bahwa email tersebut telah diperiksa oleh AVG. X-Antivirus berisi versi AVG, dan X-AVG-ID berisi kode unik antivirus yang terinstal pada komputer pengguna.

  

Gambar 8 Strukur Email yang Tersimpan di Server

Pada Gambar 8 ditunjukkan struktur email yang tersimpan pada server.

  Email disimpan dalam bentuk file. Adapun struktur email yaitu terdiri dari

  

Header, Body, dan Attachment . Berdasarkan Gambar 8, dapat dilihat bahwa pada

  kolom merah menunjukkan bagian header dari struktur email yang berisi alamat email baik pengirim maupun penerima, judul email, tanggal pengiriman, dan lain- lain. Pada kolom biru menunjukkan bagian body dari struktur email yang berisi isi pesan dari email, dan pada kolom hijau menunjukkan bagian attachment dari struktur email yang berisi script attachment dari email. Pada email disimpan dalam format Base64 Encoding[9].

  Kode Program1 Perintah untuk Menambahkan Checksum 1. var message = new MailMessage(

  2. Program.Alamat, this.toTextBox.Text); 3. message.Subject = this.subjectTextBox.Text; 4. message.Body = this.bodyTextBox.Text; 5.

  6. varhash = HashCheck.GetHash(

  7. Encoding.Default.GetBytes(message.Body)); 8.

  9. MemoryStream stream = new MemoryStream(hash); 10. message.Attachments.Add(new Attachment(stream, "MD5"));

  Kode Program 1 merupakan perintah yang digunakan untuk menghitung nilai checksum dengan algoritma MD5. MD5 yang digunakan adalah class yang tersedia di pustaka .Net Framework. Nilai checksum yang dihasilkan kemudian disisipkan ke dalam pesan dalam bentuk attachment. Nilai checksum yang diperoleh adalah hasil pengolahan dari isi pesan, yang ditulis oleh pengirim pada

  

control this.bodyTextBox.Text;. Tujuan dari penggunaan checksum

  adalah untuk melindungi isi pesan dari modifikasi yang tidak diharapkan, oleh karena itu, hanya isi pesan saja, dan bukan keseluruhan tubuh email yang dihitung nilai checksum-nya. Cara ini memberikan keuntungan yaitu tidak perlu dilakukan proses perhitungan checksum untuk keseluruhan tubuh email. Kelemahan dari cara tersebut adalah jika modifikasi dilakukan bukan pada isi email, semisal time

  stamp (tanggal dan jam) email, maka modifikasi ini tidak dapat dideteksi.

  Kode Program2 Perintah untuk Validasi Checksum 1. varhash = HashCheck.GetHash(

  2. Encoding.Default.GetBytes(this.bodyTextBox.Text)); 3. var attachHash = GetAttachment(items.OriginalObject); 4. if (attachHash == null) 5. { 6. this.pictureBox1.Image = Resources.unknown; 7. this.label3.Text = "Checksum Result: Unknown"; 8. this.label3.ForeColor = Color.DarkOrange; 9.

  } 10. else 11. { 12. var valid = HashCheck.CompareHash(hash, attachHash);

  13. if (valid) 14. { 15. this.pictureBox1.Image = Resources.valid; 16. this.label3.Text = "Checksum Result: Valid"; 17. this.label3.ForeColor = Color.DarkGreen; 18. } 19. else 20. { 21. this.pictureBox1.Image = Resources.invalid; 22. this.label3.Text = "Checksum Result: Not Valid"; 23. this.label3.ForeColor = Color.Red; 24. } 25. }

  Kode Program 2 merupakan perintah yang digunakan untuk menghitung nilai checksum pada email yang diterima. Nilai ini kemudian dibandingkan dengan nilai yang terdapat pada file attachment. Pesan akan dikategorikan ke dalam 3 kondisi, yaitu (1) valid, ketika nilai hash hasil perhitungan sama dengan nilai hash pada attachment; (2) not valid, ketika nilai berbeda; (3) unknown, ketika email tidak memiliki attachment.

  Pada aplikasi yang telah dibangun, dilakukan pengujian untuk mengetahui apakah aplikasi telah berhasil mengetahui perubahan pesan. Hasil pengujian ditunjukkan pada Tabel 1.

  Tabel 1 Pengujian Deteksi Perubahan Isi Email

No Pengujian Hasil yang Output Kesimpulan

Diharapkan Aplikasi

  1 Email dikirim dengan Ada attachment Email valid Berhasil. menggunakan aplikasi. MD5. Terdeteksi

  Massage sebagai email checksum valid. dan attached checksum sama.

  2 Email dikirim dengan Tidak ada Email unknown Berhasil.

menggunakan webmail attachment . Tidak

Terdeteksi terdetiksi sebagai email adanya asing. attachment .

  Kemudian dengan menggunakan webmail, isi pesan diubah, dan diteruskan (forward).

  Terdeteksi

sebagai email

tidak valid Terdeteksi

sebagai email

valid Terdeteksi

sebagai email

valid Email not valid

  Terdeteksi sebagai email Not valid Email valid Tidak berhasil mendeteksi tambahan iklan. Kesimpulan valid diperoleh karena isi pesan tidak diubah oleh aplikasi lain tersebut. Sehingga dianggap utuh.

  7 Isi email ditambahkan iklan oleh aplikasi lain, contohnya adalah antivirus. Dalam pengujian ini adalah AVG.

  Tidak Berhasil. Manipulasi terdeteksi.

  Berhasil. Manipulasi tidak terdeteksi seakan tidak mengalami perubahan.

  Manipulasi terdeteksi.

  Email valid Email not valid Berhasil.

  Isi email tidak diubah, tetapi mengubah attachment .

  

Tidak ada

attachment . Terdeteksi

sebagai email

asing.

  Isi email diubah, attachment diubah sesuai dengan isi email yang baru.

  6 Email dikirim dengan aplikasi. Kemudian file email di server diubah isi pesannya tetapi tidak mengubah attachment.

  5

  4

  Tidak terdetiksi adanya attachment .

  Email unknown Berhasil.

  Berdasarkan hasil pengujian deteksi perubahan isi email, yaitu ketika pesan pada attachment dan body dari struktur email diubah atau ditambahkan karakter baru maka output dari aplikasi email not valid. Hal ini dikarenakan perubahan pada email, dimana terdapat perbedaan antara nilai hash hasil perhitungan isi email, dengan nilai hash yang terdapat pada attachment. Pada pengujian nomor 7, yaitu penambahan iklan, diperoleh hasil valid karena proses validasi integritas pesan (proses mengecek keutuhan email), dilakukan pada

  

message body saja (isi pesan). Iklan, bukan mengubah isi pesan, tapi

  menambahkan konten baru pada akhir email dalam boundary baru, sehingga tidak mengubah isi pesan. Perlu diketahui yang dimaksud dengan "isi pesan" adalah tulisan atau konten yang ditulis oleh pengirim. Perubahan ini ditunjukkan pada Gambar 9.

  Gambar 9 Penambahan Iklan pada Email

  Kelemahan muncul ketika manipulasi dilakukan dengan mengganti nilai

  

hash pada attachment, kemudian menyesuaikan nilai hash pada message

checksum sehingga menghasilkan email not valid, dengan catatan algoritma yang

  digunakan untuk menghitung hash adalah sama-sama MD5.

  Analisis dilakukan pada hasil implementasi dan hasil pengujian. Email memiliki susunan format yang didekripsikan pada RFC 822 (Gambar 9). Proses MD5 dilakukan pada bagian isi email, yaitu isi pesan yang diketikkan oleh user. Sehingga perubahan pada bagian selain dari isi pesan, tidak akan mengakibatkan perubahan hash. Pada Gambar 9, terdapat content tambahan baru, yang diakibatkan dari proses scanning antivirus AVG. Content ini tidak dikategorikan sebagai attachment, dilihat dari nilai pada kata kunci Content-Disposition. Pada

  

Content-Type , ditambahkan nilai x-avg=cert untuk menandai bahwa content

  tersebut ditambahkan dan digunakan oleh AVG antivirus. Untuk attachment,

  Content-Disposition bernilai “attachment”, pada hasil scan AVG, Content-

  bernilai

  

Disposition “inline”, yang berarti bahwa informasi ini ditampilkan

  bersamaan dengan isi pesan, bukan sebagai file yang bisa diunduh seperti halnya

  

attachment . Sekalipun ditampilkan dibawah isi pesan, namun content ini tidak

  dianggap sebagai isi pesan, dilihat dari Content-Description yang ada[10]. Proses validasi hash dilakukan pada isi pesan saja, tidak termasuk pada content tambahan seperti contohnya hasil scan AVG. Pada proses validasi tetap akan menghasilkan nilai “valid”, karena pada isi pesan, tidak ada perubahan yang terjadi.

  Beta testing dilakukan dengan cara pembagian daftar pertanyaan kepada

  30 responden dan daftar pertanyaan diisi bersamaan dengan pengujian aplikasi secara langsung. Hal yang diuji dan hasil pengujian dapat dilihat pada Tabel 2.

  

Tabel 2 Hasil Data Daftar Pertanyaan

Jawaban

  

No. Pertanyaan Tidak Sangat

Setuju Setuju Setuju

  1 Aplikasi dapat berjalan pada system operasi windows

  19

  11

  2 Aplikasi dapat terkoneksi dengan baik

  7

  18

  5

  3 Aplikasi dapat menerima pesan dari webmail

  20

  10

  4 Aplikasi dapat meneruskan pesan menggunakan

  22

  8 webmail

  5 Aplikasi mudah digunakan dan memiliki tampilan

  6

  14

  10 yang menarik

  6 Aplikasi membantu dalam melakukan validasi pesan

  10

  20

  7 Aplikasi sangat peka terhadap perubahan isi pesan

  7

  23 maupun terhadap nilai checksum

  Berdasarkan hasil dari daftar pertanyaan untuk pengujian kepada pelanggan pada Tabel 2, dapat disimpulkan bahwa: aplikasi sudah berjalan pada sistem operasi windowsdibuktikan dengan 63% responden setuju dan 37% lainnya sangat setuju, aplikasi terkoneksi dengan baik karena 60% responden setuju, aplikasi dapat menerima pesan dari webmail berjalan baik karena 66% responden setuju, dan 33% sangat setuju, aplikasi dapat meneruskan pesan menggunakan webmail karena 60% responden setuju dan 23% sangat setuju, aplikasi user

  

friendly dan memiliki tampilan yang menarik karena 46% responden setuju dan

  33% sangat setuju, aplikasi membantu dalam melakukan validasi pesan karena 33% responden setuju dan 66% sangat setuju, aplikasi sangat peka terhadap isi pesan maupun terhadap nilai checksum karena 23% setuju dan 76% sangat setuju.

  Seperti ditunjukkan pada Gambar 3, bahwa sistem dikembangkan dengan metode prototyping, maka berdasarkan hasil evaluasi kuesioner, dilakukan perbaikan dan pengembangan. Tabel 3 menunjukkan tahap-tahap revisi dan prototype yang dihasilkan.

  

Tabel 3 Pengembangan dan Evaluasi Prototype

Prototype Revisi Evaluasi/Masalah

  

1 Aplikasi dapat terkoneksi dengan baik Email-email pada Inbox tidak di-

download semua, namun hanya email yang dibaca saja yang di- download . Sehingga tidak membebani koneksi internet.

  

2 Prototype 2 merupakan hasil perbaikan Ditambahkan icon-icon pada tombol.

berdasarkan evaluasi tahap 1. Aplikasi mudah digunakan dan memiliki tampilan yang menarik

  3 Prototype 3 merupakan hasil perbaikan (tidak ada) berdasarkan evaluasi tahap 2.

  5. Kesimpulan

  Berdasarkan penelitian, pengujian dan analisis terhadap sistem, maka dapat diambil kesimpulan sebagai berikut: (1) MD5 dapat digunakan untuk mendeteksi perubahan pada isi email; (2) Hasil perhitungan MD5 (hash), ditambahkan pada email sebagai attachment, sehingga berfungsi sebagai nilai pembanding ketika email divalidasi oleh penerima; (3) Aplikasi yang dikembangkan dapat mendeteksi perubahan isi email akibat dari perubahan ketika merubah nilai hash pada attachment, atau email sengaja diubah atau tidak sengaja pada server. Saran pengembangan yang dapat diberikan untuk penelitian lebih lanjut adalah sebagai berikut: (1) Nilai hash tersimpan pada attachment, perlu diamankan lagi dengan algoritma kriptografi yang menggunakan kunci, sebagai contoh AES. Hal ini bertujuan untuk menghindari manipulasi nilai hash pada attachment .

  6. Daftar Pustaka

  [1] Buana, R. G. 2012. Pengujian Integritas Data Menggunakan Algoritma MD5 . DINAMIKA DOTCOM 3. [2] Hafiz, Y. 2012. Pengembangan Aplikasi Penandaan Digital pada SMS Menggunakan Algoritme MD5-RSA . [3] Koopman, P., Driscoll, K. & Hall, B. 2015. Selection of Cyclic Redundancy .

  Code and Checksum Algorithms to Ensure Critical Data Integrity

  [4] Forouzan, B. A. 2007. Cryptography & Network Security. McGraw-Hill, Inc. [5] Pressman, R. S. & Jawadekar, W. S. 1987. Software engineering. New

  York 1992 [6] Troost, R. & others 1997. The Content-Disposition Header Field. [7] Munir, R. 2006. Kriptografi. Informatika, Bandung [8] W3 1992. The Multipart Content-Type. http://www.w3.org/Protocols/rfc1341/7_2_Multipart.html. Diakses pada Agustus 2015. [9] Josefsson, S. 2006. The base16, base32, and base64 Data Encodings. https://tools.ietf.org/html/rfc4648. Diakses pada 14 Mei 2015. [10] Levinson, E. 1998. The mime multipart/related content-type. https://tools.ietf.org/html/rfc2387. Diakses Agustus 2015.

Dokumen yang terkait

BAB 2 MAKALAH Makalah Pertama - Institutional Repository | Satya Wacana Christian University: Penentuan Luas Lahan Datar Menggunakan Metode Pendekatan Lingkaran dan Metode Pendekatan Segitiga Sferik (Teorema Girard) dengan Memanfaatkan Google Maps Dan Goo

0 0 22

Institutional Repository | Satya Wacana Christian University: Penentuan Luas Lahan Datar Menggunakan Metode Pendekatan Lingkaran dan Metode Pendekatan Segitiga Sferik (Teorema Girard) dengan Memanfaatkan Google Maps Dan Google Earth = Determination of the

0 0 29

Institutional Repository | Satya Wacana Christian University: Ekstraksi dan Identifikasi Komponen Kimia Minyak Bekatul Beras Merah dengan Metode Kromatografi Gas – Spektroskopi Massa (GC-MS) = Extraction And Chemical Compounds Identification of Red Rice B

0 0 19

BAB II MAKALAH - Institutional Repository | Satya Wacana Christian University: Penentuan Luas Lahan Berkontur dengan Bantuan Google Earth = Determination of the Contoured Land Area on the Earth by Using Google Earth

0 0 42

i OPTIMASI PRODUKSI PEMANIS ALAMI CAIR DARI TANAMAN Stevia rebaudiana Bertoni OPTIMIZATION OF LIQUID NATURAL SWEETENER PRODUCTION FROM Stevia rebaudiana Bertoni Oleh: Tiara Kasih Mirasanti 652013040 TUGAS AKHIR - Institutional Repository | Satya Wacana Ch

1 1 24

Institutional Repository | Satya Wacana Christian University: Penentuan Distribusi Total Kerugian Aggregat (Total Aggregate Loss) Manfaat Rawat Jalan Berdasarkan Simulasi

0 0 22

TUGAS AKHIR - Institutional Repository | Satya Wacana Christian University: Pengaruh Lama Pemeraman Tempe terhadap Produksi Isoflavon Genistein dan Kandungan Senyawa Fenolik Total = The Effect of Tempe Incubation Time on the Yield of Isoflavone Genistein

0 1 37

Institutional Repository | Satya Wacana Christian University: Perancangan Algoritma Kriptografi Cipher Block Berbasis Bentuk Kincir Angin untuk Pengamanan Citra Digital pada Android

0 0 31

BAB 2 MAKALAH Judul :Penerapan Model APARCH Untuk Volatilitas Returns Kurs Beli EUR dan JPY Terhadap IDR Periode 2009-2014 Dipresentasikan pada :Seminar Nasional Pendidikan Matematika UAD 2016 yang diselenggarakan oleh Fakultas Keguruan dan Ilmu Pendidika

0 1 11

Institutional Repository | Satya Wacana Christian University: Penerapan Model Aparch untuk Volatilitas Returns Kurs Beli EUR dan JPY terhadap IDR Periode 2009-2014

0 0 28