SISTEM KESELAMATAN PENGHANTARAN FAIL
MENGGUNAKAN TEKNIK
KRIPTOGRAFI DAN STEGANOGRAFI
SATHIAPRIYA A/P RAMIAH
FAKULTI SAINS KOMPUTER DAN SISTEM MAKLUMAT
UNIVERSITI TEKNOLOGI MALAYSIA
MAC 2005
iv
PENGHARGAAN
Saya ingin mengambil kesempatan ini untuk merakamkan penghargaan ikhlas
kepada penyelia projek saya iaitu Prof. Madya Dr. Mohd Aizaini Maarof atas
pandangan, dorongan dan bimbingan yang diberi sepanjang perlaksanaan projek ini.
Penghargaan juga ditujukan kepada ibu bapa saya yang memberi sokongan yang
tiada penamatnya. Selain itu, ucapan terima kasih kepada semua yang terlibat dalam
memberi nasihat dan tunjuk ajar kepada saya sepanjang tempoh penyediaan projek ini.
v
ABSTRAK
Sejak terlaksananya sistem rangkaian dan Internet, penghantaran fail telah
menjadi satu perkara yang biasa dan kerap dilakukan. Namun begitu, penghantaran
melalui medium terbuka terdedah kepada ancaman penceroboh atau pihak ketiga yang
tidak diingini. Mesej atau fail yang dihantar mungkin dilihat, diubah kandungan atau
dihapuskan oleh penceroboh. Identiti penghantar juga mungkin disamar oleh pihak
ketiga. Adalah sukar bagi penerima untuk memastikan identiti penghantar yang sebenar.
Bagi menangani masalah ini, sistem keselamatan penghantaran fail menggunakan teknik
kriptografi dan steganografi dibangunkan. Matlamat utama perlaksanaan projek ini ialah
untuk memastikan keselamatan penghantaran fail dalam rangkaian supaya tidak
dicerobohi oleh pihak ketiga yang tidak diingini dengan menggunakan teknik kriptografi
dan steganografi. Algoritma “Blowfish” digunakan sebagai algoritma untuk penyulitan
dan penyahsulitan. Manakala teknik “Least Significant Bit” (LSB) digunakan dalam
pengaplikasian steganografi. Metodologi “waterfall” digunakan sebagai metodologi
pembangunan sistem. Dengan gabungan algoritma dan teknik yang dinyatakan, sistem
keselamatan penghantaran fail melalui rangkaian dibangunkan.
vi
ABSTRACT
Since the implementation of network and Internet, file transmission has become
a normal task that is frequently performed. However, transmission via an open medium
is subjected to malicious attacks. Files that being transmitted might be viewed, tampered
or deleted by an unauthorized party. Furthermore, the sender’s identity might be pretend
by 3rd party. Thus, it is difficult for the receiver to assure the correct identity of the
sender. To overcome this problem, a project to built up a secured file transmission
system using cryptography and steganography is done. Main goal of this project is to
ensure secrecy of file transmission via network using cryptography and steganography
technique. Literature studies has been done to choose the best algorithm and technique
to apply in this system. “Blowfish” algorithm is used for encryption and decryption.
Meanwhile, “Least Significant Bit” (LSB) technique is used to apply steganography.
Waterfall methodology is used as system development methodology. Combination of
algorithm and techniques that has been discussed, a secured file transmission system is
built up.
vii
KANDUNGAN BAB PERKARA MUKA SURAT PENGAKUAN ii
DEDIKASI iii
PENGHARGAAN iv
ABSTRAK v
ABSTRACT vi
KANDUNGAN vii
SENARAI JADUAL xi
SENARAI RAJAH xii
SENARAI SINGKATAN xiv
SENARAI LAMPIRAN xv
BAB 1 PENGENALAN
1.1 Pengenalan 1
1.2 Pernyataan Masalah 2
1.3 Matlamat 3
1.4 Objektif 3
1.5 Skop 4
1.6 Justifikasi / Kepentingan 4
viii
BAB 2 KAJIAN LITERATUR
2.1 Pengenalan 5
2.2 Kajian terhadap sistem semasa 5
2.3 Analisis Masalah Mengenai Sistem Sedia 8
2.4 Kajian keatas teknik-teknik, peralatan- 9
peralatan dan teknologi berkaitan yang
boleh digunakan untuk menyelesaikan
masalah
2.4.1 Kriptografi 10
2.4.1.1 Sistem Penyulitan 11
2.4.1.2 Algoritma Blowfish 14
2.4.1.3 Algoritma 3DES 15
2.4.1.4 Kelebihan Algoritma Blowfish 15
2.4.2 Tandatangan Digital 16
2.4.3 Steganografi 17
2.4.3.1 Jenis-jenis Steganografi 18
2.4.3.2 Least Significant Bit (LSB) 23
2.4.4 Protokol Rangkaian 24
2.4.4.1 Transmission Control Protocol (TCP) 25
2.5 Justifikasi Pemilihan Teknik 26
2.6 Kesimpulan 26
BAB 3 METODOLOGI PEMBANGUNAN
3.1 Pengenalan 27
3.2 Metodologi Yang Digunakan 27
3.3 Metodologi Pembangunan Sistem 29
3.4 Analisis Keperluan Sistem 33
3.4.1 Justifikasi Perkakasan 33
3.4.2 Justifikasi Perisian 33
ix
3.4.3 Spesifikasi Input 34
3.4.4 Spesifikasi Output 34
3.5 Andaian dan Kekangan 35
BAB 4 REKABENTUK
4.1 Pengenalan 36
4.2 Rekabentuk Sistem 37
4.2.1 Fasa Satu 37
4.2.2 Fasa Dua 38
4.3 Pengaliran Sistem 40
4.4 Rajah Use Case 42
4.5 Rajah Jujukan 45
4.6 Rajah Kelas 46
4.7 Rajah Kerjasama 46
4.8 Rekabentuk Antaramuka 47
4.8.1 Fungsi-fungsi Butang 48
BAB 5 IMPLEMENTASI DAN PENGUJIAN
5.1 Pengenalan 50
5.2 Implementasi 51
5.2.1 Kelas-kelas Yang Terlibat 51
5.2.2 Pengaturcaraan Rangkaian Java 52
5.2.3 Penghasilan Kekunci 55
5.2.4 Penyulitan dan Penyahsulitan 55
5.2.5 Penyembunyian dan Penyahsembunyian 57
5.3 Data dan hasil input / output 59
5.4 Analisa dan kesimpulan 63
x
BAB 6 PERBINCANGAN DAN KESIMPULAN
6.1 Hasil dan Pencapaian 64
6.2 Kelebihan Sistem 65
6.3 Masalah Dan Kelemahan Sistem 66
6.4 Cadangan Pembaikan / Peningkatan 66
6.5 Perbincangan 67
6.6 Kesimpulan 67
RUJUKAN 69
LAMPIRAN A Rajah Jujukan 71
LAMPIRAN B Rajah Kerjasama 74
LAMPIRAN C Rajah Kelas 77
LAMPIRAN D Carta Gantt Perlaksanaan Projek 1 79
LAMPIRAN E Carta Gantt Perlaksanaan Projek 2 81
LAMPIRAN F Manual Pengguna 84
BAB 1
PENGENALAN
1.1 Pendahuluan atau Pengenalan
Kemajuan teknologi komputer pada zaman ini membawa perubahan besar
kepada kehidupan masyarakat. Dengan adanya komputer, kebanyakan kerja dapat
diselesaikan dengan pantas. Satu aspek penting dalam kehidupan manusia ialah
perhubungan. Penghantaran maklumat dalam fail dari satu destinasi ke destinasi yang
lain dapat dilakukan dalam beberapa saat tanpa mengira lokasi oleh komputer. Jelas di
sini bahawa, manusia sangat bergantung kepada komputer untuk penghantaran
maklumat.
Maklumat atau fail yang dihantar melalui rangkaian terdedah kepada unsur-unsur
negatif seperti pencerobohan. Oleh yang demikian, kaedah perlindungan maklumat
yang dihantar perlu dititikberatkan supaya maklumat tersebut tidak
2
dicerobohi oleh pihak yang tidak diingini. Maka, lahirlah idea untuk meghasilkan satu
sistem keselamatan penghantaran fail. Teknik kriptografi dan teknik steganografi
digunakan dalam sistem ini.
Teknik penyulitan dan penyahsulitan dalam kriptografi digunakan untuk
merahsiakan fail dengan cara menukar format maklumat fail asal kepada maklumat yang
tidak dapat dibaca atau difahami. Kemudiannya, teknik steganografi diaplikasikan
sebagai teknik penyembunyian maklumat fail yang disulit itu. Penggunaan kedua-dua
teknik kriptografi dan teknik steganografi menghasilkan keselamatan dua lapis terhadap
fail yang dihantar.
1.2 Pernyataan Masalah
Secara amnya, fail yang dihantar melalui rangkaian terdedah kepada serangan
penceroboh seperti sampukan, pemintasan, pengubahsuaian dan pemalsuan. Serangan-
serangan ini boleh membawa kesan yang amat serius kepada individu atau organisasi
yang terlibat dalam penghantaran maklumat.
Oleh sebab perlindungan penghantaran fail amat penting, projek sarjana muda ini
dibangunkan dengan meghasilkan satu sistem yang menggabungkan kedua-dua teknik
kriptografi dan teknik steganografi untuk memastikan kerahsiaan dan keselamatan
penghantaran fail dalam rangkaian.
Dalam sistem ini, keselamatan dua lapis diberi kepada fail yang dihantar. Ini
kerana, fail disulit dan kemudiannya disembunyikan di sebalik satu imej sebelum
dihantar kepada penerima. Ia adalah berikutan, jika fail tersebut hanya dilakukan proses
penyulitan, kemungkinan penceroboh atau penggodam akan mengetahui bahawa fail
yang dihantar itu adalah penting. Ini secara tidak langsung akan menambahkan
3
keinginan penggodam tersebut untuk memecahkan kod dan mengetahui maklumat asal.
Dengan mengaplikasikan teknik steganografi, keinginan penggodam untuk mencerobohi
maklumat dapat dikurangkan kerana fail yang disulit tadi disembunyikan. Penggodam
hanya dapat melihat imej sedang dihantar dalam rangkaian sedangkan terdapat
maklumat penting yang disulit di sebalik imej tersebut.
1.3 Matlamat
Matlamat utama projek ini ialah untuk memastikan keselamatan penghantaran
fail dalam rangkaian yang sama supaya tidak dicerobohi oleh pihak ketiga yang tidak
diingini.
1.4 Objektif
Objektif penghasilan projek ini ialah :
i. Memahami dan mempelajari teknik kriptografi dan teknik steganografi.
ii. Memastikan keselamatan penghantaran fail dengan mengaplikasikan
teknik kriptografi dan steganografi.
iii. Memastikan pengesahan penghantar fail.
4
1.5 Skop
Antara beberapa skop yang telah dikenalpasti dalam pembangunan sistem ini ialah :
i. Fail boleh dihantar kepada satu komputer sahaja pada satu masa.
ii. Algoritma “Blowfish” digunakan untuk teknik kriptografi.
iii. Teknik Least Significant Bit (LSB) digunakan untuk teknik steganografi.
iv. Sistem yang dibangunkan ini adalah berasaskan sistem pengoperasian
Windows.
v. Pembangunan sistem ini untuk rangkaian Local Area Network (LAN).
vi. Format imej yang digunakan ialah .bmp 24 bit.
1.6 Justifikasi / Kepentingan
Projek ini dibangunkan untuk meningkatkan keselamatan penghantaran
maklumat dalam rangkaian supaya bebas daripada pencerobohan penggodam. Dengan
penghasilan sistem keselamatan ini, penghantaran fail dapat dilakukan dengan
selamatnya dengan kerahsiaannya dicapai. Maklumat yang sampai pada penerima tidak
akan menghadapi sebarang serangan penceroboh. Organisasi-organisasi atau individu
dapat menghantar maklumat yang penting dan sulit tanpa sebarang keraguan. Sistem ini
memberi jaminan kepada mereka untuk penghantaran maklumat secara selamat.