• Tidak ada hasil yang ditemukan

PROS Indrastanti RW Teguh IB Pembangunan SPAM e mail Full text

N/A
N/A
Protected

Academic year: 2017

Membagikan "PROS Indrastanti RW Teguh IB Pembangunan SPAM e mail Full text"

Copied!
7
0
0

Teks penuh

(1)

PEMBANGUNAN

SPAM E-MAIL FILTERING SYSTEM

DENGAN METODE

NAIVE BAYESIAN

Indrastanti R. Widiasari.1, Teguh Indra Bayu2

1, 2

Fakultas Teknologi Informasi, Universitas Kristen Satya Wacana

1

indrastanti@staff.uksw.edu, 2t.indra.bayu@gmail.com

1. Pendahuluan populer yaitu Naive Bayesian filtering. Metode ini

memanfaatkan teorema probabilitas yaitu teorema Bayes dan fungsionalitas data mining yaitu klasifikasi Naive Bayesian. Kelebihan Naive Bayesian filtering adalah tingkat akurasi yang tinggi dan error rate yang minimum.

Electronic mail (e-mail) merupakan media komunikasi dalam jaringan intranet maupun internet untuk berdiskusi (maillist), transfer informasi berupa file (mail attachment) bahkan dapat digunakan untuk media iklan suatu perusahaan atau produk tertentu [1]. Mengingat fasilitas e-mail yang murah dan kemudahan untuk mengirimkan ke berapapun jumlah penerimanya, maka beberapa pihak tertentu memanfaatkannya dengan mengirimkan e-mail berisi promosi produk atau jasa, pornografi, virus, dan hal-hal yang tidak penting ke ribuan pengguna e-mail. E-mail inilah yang biasanya disebut dengan spam mail. Dampak buruk yang paling utama dari adanya spam mail adalah terbuangnya waktu dengan percuma untuk menghapus spam mail dari inbox satu persatu. Meskipun berbagai perangkat lunak e-mail filtering banyak tersedia, namun masalah spam mail juga semakin berkemba

2. Spam

Spam muncul pertama kali pada bulan Mei tahun 1978. Spam tersebut bersifat iklan yang dikirimkan oleh Digital Equipment Corporation (DEC) tentang product DecSystem-20, kemudian pada April 1994, spam menyebar melalui USENET news merupakan forum diskusi yang paling populer pada masa itu dengan jumlah group mencapai ribuan dan semua group menerima iklan dari forum diskusi tersebut. Spam merupakan unsolicited e-mail (e-mail yang tidak diminta) yang dikirim ke banyak orang [2]. Spam juga dapat diartikan sebagai e-mail yang berisi promosi produk atau jasa, pornografi, virus, dan hal-hal yang tidak penting yang dikirim ke ribuan pengguna e-mail.

ng.

Berdasarkan permasalahan yang ada, maka hal yang harus dilakukan untuk mem-filter spam sehingga penggunaan spam dapat dicegah secara optimal oleh e-mail filtering. Metode yang digunakan merupakan

(2)

285

berdasarkan kata-kata (token) yang terkandung pada sebuah e-mail [3]. Metode filter pada saat pertama kali dijalankan harus dilakukan proses training

menggunakan dua koleksi e-mail, satu koleksi merupakan spam mail dan koleksi yang lain merupakan good mail. Proses training ini digunakan sebagai data pembanding terhadap e-mail yang masuk. Dengan cara seperti ini, pada setiap e-mail

baru yang diterima, Bayesian filter dapat memperkirakan probabilitas (prediksi) spam

berdasarkan kata-kata yang sering muncul di koleksi

spam mail atau di koleksi good mail.

3. Email

E-mail (Electronic Mail) atau surat elektronik sudah mulai dipakai pada tahun 1960-an. Pada saat itu internet belum terbentuk, yang ada hanyalah kumpulan mainframe yang terbentuk sebagai jaringan. Mulai tahun 1980-an, surat elektronik sudah bisa dinikmati oleh banyak orang. E-mail

merupakan media komunikasi dalam jaringan intranetmaupun internetuntuk berdiskusi (maillist), transfer informasi berupa file (mail attachment) bahkan dapat digunakan untuk media iklan suatu perusahaan atau produk tertentu [1]. E-mail terdiri dari 3 komponen [4] yaitu :

Envelope

Proses ini digunakan oleh Mail Transport Agent

(MTA)untuk melihat rute atau jalur pesan. Biasanya

user tidak melihat bagian ini karena prosesnya terjadi pada bagian MTAuntuk pengiriman.

• Header

E-mail mengandung header yang digunakan sebagai informasi mengenai e-mail tersebut, mulai dari alamat pengirim, penerima, subjek dan lain-lain.

Header originating date field dan original address fields sifatnya mandatory (diperintah), artinya user

tidak dapat menggganti secara manual mengenai informasi tanggal pengiriman maupun alamat pengirim.

• Body

Merupakan isi pesan dari pengirim ke penerima. Dalam mail body juga terdapat file attachment yang digunakan untuk mengirimkan e-mail berupa file

(mail attachment).

4. Metode Naive Bayesian

Metode Naïve Bayesian merupakan metode yang digunakan untuk memprediksi suatu kejadian pada masa yang akan datang, dengan cara membandingkannya dengan data atau evidence

(bukti) yang ada pada masa lampau. Penggunaan probabilitas kata atau token dijadikan sebagai inputan probabilitas dari kejadian. Klasifikasi Naive Bayesian akan melihat data lama (previous data)

dalam menentukan nilai kemiripan data yang baru. Jadi harus terdapat data lama yang digunakan sebagai data pembanding dalam proses Bayes.

5. Perhitungan Probabilitas Berdasarkan

Algoritma Bayesian.

Bayesian filter pada saat pertama kali dijalankan harus melakukan proses training terlebih dahulu. Proses training menggunakan sejumlah spam mail

dan sejumlah goodmail yang ditambahkan ke dalam suatu tabel atau data pembanding. Bayesian filter

akan menghitung probabilitas lokal dari suatu kata, misalnya kata sex, untuk muncul di kelompok spam mail. Probabilitas lokal ini dapat dilihat seperti pada Persamaan 1 [3].

dimana

PLocal-spam : probabilitas suatu kata

sex terdapat pada spam mail.

Nspam : jumlah spam mail dengan kata sex di dalamnya.

Nnonspam : jumlah nonspam mail dengan kata sex di dalamnya.

Persamaan 2 digunakan untuk menghitung probabilitas lokal dari suatu kata, terutama jika nilai

Nspam dan Nnonspam kecil adalah bahwa probabilitas akan terletak di sekitar probabilitas ketidakpastian (P = 0.5). Berbeda dengan Persamaan 1, pada Persamaan 2 tidak akan memberikan nilai mutlak, jika terdapat frekuensi suatu kata dalam

spam mail dan tidak terdapat dalam frekuensi good mail.

(1)

(3)

286

dimana :

C1 dan C2 : konstanta yang dipilih melalui

eksperimen.

Nilai dari C1 = dua dan C2 = satu, dan jika suatu kata

“x” hanya ditemukan pada dua spam mail dan tidak ditemukan sama sekali pada good mail, maka probabilitas lokal suatu pesan baru yang mengandung kata tersebut dikategorikan sebagai

spam adalah 0.83. Probabilitas ini tidak terlalu tinggi untuk dikategorikan sebagai spam. Sementara jika kata tersebut ditemukan pada sepuluh spam mail dan tidak ditemukan sama sekali pada good mail, maka probabilitas lokalnya akan sama dengan 0.95, yang cukup tinggi untuk dikategorikan sebagai spam. Perhitungan probabilitas ini jika dilakukan dengan Persamaan 1, akan memberikan hasil yang terlalu kasar, yaitu probabilitas mutlak sama dengan satu.

Probabilitas lokal dari masing-masing kata tersebut kemudian menggunakan aturan rantai (chain rule) Bayesian untuk menentukan probabilitas total dari suatu pesan adalah spam.

Chain ruleBayesian dapat dilihat pada Persamaan 1. Untuk menentukan probabilitas total, perhitungan tersebut dilakukan terus menerus secara iterative

(tindakan mengulangi proses biasanya dengan tujuan mendekati tujuan yang diinginkan atau hasil) dari probabilitas lokal masing-masing kata pada pesan tersebut.

6. Metode Tokenizing, Scoring dan Combining

Metode tokenizing akan membaca mail dan memecahnya menjadi beberapa kata (token). Proses

tokenizing dapat dilakukan pada body message,

header message, kode-kode HTML, dan gambar.

Tokenizing pada body message dilakukan dengan mendeteksi spasi kata dan kemunculan suatu kata yang sering digunakan dan terdapat dalam mail. Proses tokenizing adalah proses membuat daftar karakteristik kata-kata spam dan non-spam mail.

Tokenizing pada header message dapat dilakukan dengan menghitung jumlah penerima message pada

recipient (to/Cc) header. Sedangkan tokenizing pada kode HTML dapat dilakukan pada kode font, tabel, atau background.

Setelah mail yang diterima dipisahkan menjadi beberapa token, maka setiap token akan diberi nilai atau disebut juga dengan metode scoring. Metode ini memberikan nilai (score) pada setiap token yang telah diproses dengan metode tokenizing dengan menggunakan Persamaan 2. Kemudian dilakukan proses training secara manual oleh user yang akan menentukan mail tersebut adalah spam mail atau

good mail. Score yang diberikan yaitu 0.99 untuk

spammail murni dan 0.01 untuk goodmail murni.

Setelah proses tokenizing dan scoring dilakukan, kemudian dengan menggunakan algoritma Naive Bayesian dilakukan metode combining. Metode

combining adalah suatu rumus probabilitas yang digunakan untuk menghitung probabilitas token

yang terdapat di dalam suatu mail. Setiap score yang terdapat pada token akan dihitung (combine) dan dirumuskan untuk menghasilkan suatu nilai antara 0% sampai dengan 100%. Nilai hasil tersebut dikenal dengan istilah threshold value. Nilai yang dihasilkan adalah nilai yang menentukan e-mail

tersebut dinyatakan sebagai good mail atau spam mail. Setelah proses combining, dapat ditentukan e-mail tersebut adalah spam mail atau good mail

berdasarkan hasil perhitungan yang diperoleh.

7. Aplikasi Spam E-mailFilteringSystem

Perancangan perangkat lunak program terdiri dari empat bagian yang utama, yaitu proses training, proses tokenizing, proses scoring, dan proses

combining. Proses ini harus berurutan untuk mendapatkan hasil yang optimal dalam pengklasifikasian mail. Sebelum user dapat menggunakan program untuk pengklasifikasian mail

secara otomatis dan memiliki false positive maupun

false negative yang optimal, user harus terlebih dahulu melakukan proses training. Apabila user

sudah mempunyai referensi dari e-mail yang dikategorikan sebagai spam maupun good mail. Proses training ini terjadi saat pertama kali program dibuat dan belum adanya data yang terdapat dalam tabel token. Proses tokenizing merupakan proses memilah kata atau token dalam mail body

berdasarkan spasi kata dan kata yang sering muncul.

Proses scoring merupakan proses pemberian score

terhadap kemunculan kata dalam good mail maupun

spam mail. Data dalam tabel token berisi kumpulan

token, frekuensi kemunculan token dalam Inbox

maupun Junk E-mail, dan score yang diperoleh dari frekuensi kemunculan token. Sedangkan combining

ini digunakan untuk mendapatkan 15 token yang mempunyai nilai terjauh dari 0.5, kemudian dilakukan perhitungan dengan menggunakan metode

(4)

287

Gambar 4 Use Case Diagram User

Gambar 4 menjelaskan bagian yang dapat dilakukan oleh seorang user. Add to Spam digunakan untuk memindahkan e-mail ke dalam folder spam. Add to Good digunakan untuk memindahkan e-mail

ke dalam folder good. Analysis digunakan untuk melihat dasar suatu e-mail dapat dikategorikan sebagai spam atau good mail. Rebuild digunakan untuk menghapus data dalam tabel token, kemudian menggantinya dengan data yang baru. Update

digunakan untuk meng-update frekuensi kemunculan suatu token. Lihat Token digunakan untuk melihat isi dari tabel token (data pembanding). Pilih Letak Folder Good digunakan untuk merubah letak inbox. Pilih Letak Folder Junk digunakan untuk merubah letak junk. Ubah letak spam level

digunakan untuk merubah level dari spam yang biasa diset pada nilai 50%. Lihat Pembuat digunakan untuk melihat identitas pembuat program.

.

Gambar 5 Flowchart ProgramUtama

Flowchart sistem secara keseluruhan setelah adanya data dalam tabel token atau setelah terjadi

proses training dapat dilihat pada Gambar 5. Mail

diterima oleh Microsoft Office Outlook 2007, kemudian jika terdapat e-mail yang masuk akan secara otomatis dilakukan sweep spam

(membersihkan spam mail yang ada pada Inbox

secara otomatis), lalu terjadi proses tokenizing atau

mail yang masuk dilakukan pemisahan berdasarkan spasi kata dan kata yang sering muncul dalam mail body dan terdapat dalam tabel token. Apabila kata dalam mail body tidak terdapat pada tabel token, maka e-mail langsung dikategorikan sebagai good mail, akan tetapi jika mail yang masuk dan kata dalam token terdapat dalam tabel token, maka dilakukan proses scoring terhadap kata dalam token

tersebut, kemudian menuju ke proses combining

yaitu setiap kata dalam token yang terdeteksi tersebut diambil 15 kata yang mempunyai score

tertinggi dari 0.5, kemudian dilakukan perhitungan

Naive Bayesian. Apabila hasil perhitungan Naive Bayesian menghasilkan nilai kurang dari spam threshold, maka mail dikategorikan sebagai good mail. Apabila hasil perhitungan Naive Bayesian

menghasilkan nilai lebih dari spam threshold, maka

mail akan dikategorikan sebagai spam mail. Kemudian muncul pesan bahwa mail akan dipindah ke folder spam atau dibiarkan berada di folder inbox, jika user menekan button Yes” maka mail akan berpindah ke folder spam, jika tidak maka mail akan tetap berada di folder Inbox

Gambar 6 Flowchart Sistem Training

Add to Spam Add to Good Analysis

(5)

288

Perancangan pada sistem training dilakukan pada saat program diinstalasi. Proses training

dilakukan karena belum adanya token yang tersimpan pada program yang dibuat. Proses training

dilakukan saat program tersebut baru pertama kali digunakan oleh user adalah untuk penyimpanan

token baru yang digunakan untuk pengkategorian

mail. Proses ini dilakukan pada saat user menekan

button “Add to Spam” atau saat user menekan

button “Add to Good”. Sistem training dapat dilihat pada Gambar 6.

Cara memasukkan data ke dalam tabel token

dilakukan dengan cara menekan button “Add to Spam” atau “Add to Good”. Pada saat user menekan

button “Add to Spam” dilakukan proses tokenizing

dan scoring, bahwa mail yang ditambahkan ke folder spam tersebut dikategorikan sebagai e-mail spam,

terjadi penambahan token dan score di dalam tabel

token. Sedangkan pada saat user menekan button “Add to Good” dilakukan proses tokenizing dan

scoring, bahwa mail yang ditambahkan ke folder good tersebut dikategorikan sebagai good mail, terjadi penambahan token dan score di dalam tabel

token.

9.1 Perancangan Sistem Tokenizing

Perancangan pada sistem tokenizing

dilakukan pada mail body. Tokenizing pada mail body dilakukan dengan mendeteksi spasi kata dan karakter suatu kata yang sering muncul dalam mail body. Untuk mengawali dan mengakhiri suatu karakter dengan menggunakan operasi “^ dan $”. Sebagai operasi penambahan suatu huruf atau kata dengan menggunakan “+, *, ?”. Operasi penggabungan menggunakan “|”. Mengelompokkan huruf, kata, atau angka, dengan menggunakan “{},(),[]”..

9.2 Perancangan Sistem Scoring

Proses scoring merupakan kelanjutan dari proses

tokenizing. Setelah mail yang diterima dipisahkan menjadi beberapa token, maka setiap token akan diberi nilai atau disebut juga dengan metode scoring. Proses ini memberikan nilai (score) pada setiap

token yang telah diproses dengan proses tokenizing. Selanjutnya dilakukan proses training secara manual oleh user yang akan menentukan mail tersebut

PGood didapat dari proses perhitungan berapa banyak token tersebut yang terdapat di dalam good mail. Kemudian ditambahkan dan dibagi dengan berapa banyak good mail yang ada.

Gambar 7 Flowchart Sistem Scoring

Sistem scoring dapat dilihat pada Gambar 7. Proses

scoring yang didapatkan dari jumlah token yang ada di frekuensi spam maupun jumlah token yang ada di frekuensi good. Kemudian dengan menggunakan Persamaan (2), dilakukan perhitungan untuk menentukan score pada setiap token yang terdapat dalam tabel token yang nantinya akan digunakan dalam proses combining.

9.3 Perancangan Sistem Combining

Setelah melakukan proses tokenizing dan

scoring, kemudian dengan menggunakan metode

Naive Bayesian, dilakukan proses combining. Proses ini mengambil 15 token yang memiliki nilai terjauh dari nilai netral (0.5) di dalam satu mail. Setelah mendapatkan 15 token tersebut, maka dijalankan proses perhitungan dengan algoritma Naive Bayesian dan akan mendapatkan suatu nilai (threshold value). Hasil threshold value kemudian dibandingkan dengan nilai dari spam threshold, yang nilainya dapat disesuaikan antara 0% sampai 100%. Spam threshold biasanya diset pada nilai minimal 50% agar keakuratan dalam filtrasi mail

mendapatkan hasil yang optimal. Nilai dari 50% diperoleh dari data pada penelitian sebelumnya, karena 50% merupakan nilai netral [6]. Jika suatu

(6)

289

S t a r t

P r o s e s S c o r i n g

M e n g a m b i l 1 5 t o k e n y a n g m e m p u n y a i n i l a i

t e r j a u h d a r i 0 . 5

> S p a m l e v e l

G o o d m a i l S p a m m a i l

E n d

Y a T i d a k

M e l i h a t D a t a

T h r e s h o l d v a l u e ( % ) = P s p a m / ( P s p a m + P g o o d )

T h r e s h o l d v a l u e

dibandingkan dengan nilai dari spam threshold yang terdapat di dalam program. Nilai dari spam threshold

ini dapat ditentukan sendiri oleh user.

Gambar 8 Flowchart Sistem Combining

Proses combining didapatkan dari proses tokenizing

dan scoring seperti terlihat pada Gambar 8. Jadi setiap token terdeteksi dalam mail body danterdapat dalam tabel token diurutkan score-nya, kemudian diambil 15 token yang mempunyai nilai terjauh dari 0.5 yang dipakai dalam proses persentase untuk menghasilkan threshold value, kemudian nilai dari

threshold value dibandingkan dengan level spam

atau spam threshold yang digunakan untuk mengkategorikan mail sebagai good mail maupun

spam mail.

9.4 Perancangan Tabel Token

Perancangan pembuatan tabel token berupa suatu

textfile dengan ekstensi *.bsw. Dalam file tersebut akan berisi data-data dari beberapa jumlah mail yang dikategorikan ke dalam good mail dan juga dari beberapa jumlah kata yang dikategorikan sebagai

spam mail. Dalam tabel yang disimpan tersebut terdapat kata-kata token. dan setiap token memiliki tiga field yaitu field dari good frekuensi, field dari

spam frekuensi, dan score setiap kata token.

Gambar 9 Tabel Token

Proses penyimpanan ke dalam tabel dilakukan dengan pencarian token terlebih dahulu, kemudian jika belum terdapat token, maka token baru ditambahkan. Jika sudah terdapat token, maka ditambahkan sesuai kemunculan token, di folder inbox atau folder spam. Proses yang dilakukan kemudian dengan mengurutkan token terlebih dahulu, baru disimpan ke dalam tabel.

9.5 Perancangan Spam Threshold

Pada aplikasi ini user dapat menentukan seberapa besar nilai spam threshold dari e-mail yang akan diterima. Gambar 11 merupakan tampilan dari spam threshold, spam threshold dibuat menggunakan

trackbar, yang digunakan sebagai pembanding dengan nilai yang diperoleh dari persamaan Naive Bayesian, nilainya dapat diubah-ubah dari angka satu sampai 100%, akan tetapi spam threshold ini

di-set pada nilai 50%. Agar program berjalan dengan baik dalam pengkategorian mail.

Gambar 10 Spam Threshold

10. Kesimpulan

Berdasarkan hasil pembuatan programanti

(7)

290

sebagai spam adalah dengan melihat threshold value

setiap e-mail yang masuk, kemudian dibandingkan dengan spam level yang biasa di-set pada nilai 50%. Jika threshold value nilainya lebih besar dari spam level, maka e-mail dikategorikan sebagai e-mail spam. Sebaliknya, jika threshold value nilainya kurang dari spam level, maka e-mail dikategorikan sebagai e-mail good. Berdasarkan pengujian yang dilakukan dari 150 e-mail yang masuk. Anti spam

mempunyai persentase keberhasilan sebesar 96.67%.

Daftar Pustaka:

[1]. Rachli, 2009, TARacli,

http://www.cert.or.id/~budi/courses/security/20 06-2007/Report-Muhamad-Rachli.doc, Diakses pada tanggal 28 Juli 2010.

[2]. Raharjo, 2006, Spam,

http://www.cert.or.id/~budi/presentation/SPAM -present.ppt, Diakses pada tanggal 26 Juli 2010.

[3]. Pratiwi, 2009, Laporan Proyek Akhir, http://www.cert.or.id/~budi/courses/ec5010/pr ojects/yani-report.doc, Diakses pada tanggal 28 Juli 2010.

[4]. Purbo, Onno W, 2001, TCP/IP Standar, Desain, dan Implementasi, Jakarta: Elex Media Komputindo.

[5]. Jsmith, 2003, The Real E-mail System,

http://forum.persiannetworks.com/f100/t30928. html, Diakses pada tanggal 27 Juli 2010. [6]. Graham, Paul, 2003, Stopping Spam,

Gambar

Gambar 6 Flowchart Sistem Training
Gambar 7 Flowchart Sistem Scoring
Gambar 9 Tabel Token

Referensi

Dokumen terkait

Jual Vimax Di Bireuen Agen Vimax Asli Di Bireuen Toko Obat Vimax Asli Di Bireuen adalah formula alami yang digunakan untuk meningkatkan ukurun penis anda menjadi lebih besar dan

Sistem informasi pada Toko Oscar digunakan untuk memudahkan transaksi penjualan baik penjualan barang jadi, bahan baku dan barang custom, menyimpan data

Tujuan dari kegiatan ini adalah memastikan setiap pelaksanaan fumigasi terhadap kapal / alat angkut yang memiliki faktor resiko telah dilakukan sesuai standar operasional

Pagal šį reglamentą, kvalifikacinių reikalavimų mokytojams aprašą ir jo pakeitimus [2] infor- macinių technologijų mokytojais gali dirbti tie, kurie baigę 60 kreditų

Segala puji dan syukur penulis panjatan kehadirat Tuhan Yang Maha Esa karena atas berkat dan rahmat dan karunia-Nya sehingga penulis dapat menyelesaikan

Dengan memahami hal-hal tersebut maka sebuah permasalahan desain yang kompleks dapat disederhanakan ke dalam klasifikasi yang jelas dan sistematis, sehingga proses penyusunan

Tanpa hukum yang ditegaskan oleh penguasa yang kuat, maka individu -individu akan saling membinasakan (homo homonilupus ). Maka hukum merupakan pilihan sadar manusia

Kefir mempunyai kandungan asam organik (asam laktat dan asam asetat), selain kefir yang baik untuk perawatan kulit wajah dengan kandungan asam laktat, terdapat