• Tidak ada hasil yang ditemukan

Implementasi Algoritma RC4A dan MD5 untu

N/A
N/A
Protected

Academic year: 2018

Membagikan "Implementasi Algoritma RC4A dan MD5 untu"

Copied!
7
0
0

Teks penuh

(1)

ϱϭ

Implementasi Algoritma RC4A dan MD5 untuk Menjamin

Confidentiality

dan

Integrity

pada

File

Teks

Nur Hayati

Program Studi S1 Ilmu Komputer Fak. Ilmu Komputer dan Teknologi Informasi

Universitas Sumatera Utara n3rhayati@students.usu.ac.id

Mohammad Andri Budiman

Program Studi S1 Ilmu Komputer Fak. Ilmu Komputer dan Teknologi Informasi

Universitas Sumatera Utara mandrib@usu.ac.id

Amer Sharif

Program Studi S1 Ilmu Komputer Fak. Ilmu Komputer dan Teknologi Informasi

Universitas Sumatera Utara

amersharifdjamin@gmail.com

Abstrak— Perkembangan teknologi informasi yang semakin melesat dewasa ini memberikan kemudahan bagi siapa saja dalam melakukan pertukaran data atau informasi. Di sisi lain, timbul permasalahan akan keamanan data yang dapat terganggu oleh pihak-pihak yang tidak bertanggung jawab seperti adanya penyadapan, perusakan, pencurian data, ataupun tindakan penyalahgunaan lainnya. Penerapan teknik kriptografi merupakan salah satu solusi yang dapat dilakukan untuk mengatasi gangguan keamanan tersebut. Kriptografi merupakan ilmu atau seni untuk menjaga keamanan data dengan cara mengacak data atau pesan. Di dalam kriptografi dikenal istilah fungsi hash satu arah yang banyak digunakan untuk menguji integritas sebuah file. Pada penelitian ini, algoritma kriptografi dan fungsi hash yang digunakan adalah RC4A dan MD5. Pesan atau file teks yang akan dikirimkan terlebih dahulu dienkripsi dengan menggunakan algoritma RC4A. Kemudian algoritma MD5 digunakan untuk mendapatkan nilai hash dari pesan hasil enkripsi. Selanjutnya untuk mendapatkan kembali pesan asli dengan cara dekripsi RC4A maka terlebih dahulu dilakukan proses verifikasi file untuk menjamin bahwa file yang diterima belum mengalami perubahan atau masih asli. Verifikasi file ini dilakukan dengan cara mencocokkan nilai hash MD5 yang diperoleh dari si pengirim dengan nilai hash MD5 yang akan dihasilkan dari sistem. Hasil penelitian menunjukkan bahwa algoritma RC4A dan MD5 dapat diimplementasikan dengan baik sehingga keamanan data dapat bertambah karena sebelum melakukan dekripsi pesan maka terlebih dahulu dilakukan verifikasi pesan.

Kata Kunci : Kriptografi, RC4A, Fungsi Hash, MD5, File Teks

I.PENDAHULUAN

A. Latar Belakang

Masalah keamanan merupakan salah satu aspek penting dalam proses pengiriman informasi. Informasi yang dikirimkan harus dapat dijaga kerahasiaan dan keutuhannya agar tidak dapat disalahgunakan oleh pihak-pihak yang tidak berwenang yang menginginkan informasi tersebut.

Kriptografi banyak digunakan untuk menjaga aspek keamanan informasi. Ada empat tujuan mendasar dari ilmu kriptografi yaitu confidentiality (kerahasiaan), integrity (keutuhan), authentication (keaslian pesan), dan non-repudiation (tak terbantahkan).

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 mendapatkan kembali data asli [1].

Algoritma RC4 adalah algoritma kriptografi simetrik karena menggunakan kunci yang sama untuk mengenkripsi ataupun mendekripsi suatu pesan, data, atau informasi. Algoritma RC4 merupakan salah satu algoritma kunci simetris berbentuk stream cipher yang memproses unit atau input data, pesan atau informasi meningkatkan keamanan dari RC4 dengan memperkenalkan sebuah permutasi tambahan di dalam desainnya.

(2)

ϱϮ sangat sulit untuk mengembalikannya ke pesan semula

(plaintext). MD5 merupakan salah satu fungsi hash satu arah yang banyak digunakan untuk menguji integritas sebuah file.

B. Rumusan Masalah

Berdasarkan latar belakang di atas, maka yang menjadi rumusan masalah pada penelitian ini adalah sulit untuk menjaga kerahasiaan dan keutuhan dari suatu file teks.

C. Batasan Penelitian

Dalam penelitian ini penulis membuat batasan masalah sebagai berikut:

1. Jenis data yang digunakan adalah file teks (*.txt dan *.doc).

2. Algoritma RC4A digunakan untuk proses enkripsi dan dekripsi.

3. Algoritma MD5 digunakan untuk memperoleh

message digest dari pesan hasil enkripsi

(ciphertext).

4. Bahasa pemrograman yang digunakan adalah C#.

D. Tujuan Penelitian

Tujuan penelitian ini adalah sebagai berikut:

1. Mengamankan file teks dengan menggunakan algoritma RC4A.

2. Memverifikasi keutuhan dari suatu file dengan menggunakan algoritma MD5.

E. Manfaat Penelitian

Manfaat yang diharapkan dari penelitian ini adalah dapat membantu dalam mengatasi masalah kemanan data berupa file teks sehingga file tetap dapat terjaga kerahasiaan dan keutuhannya.

F. Penelitian yang Relevan

a. Rosyanti Harahap (2010) dalam penelitian yang berjudul Sistem Pengamanan Data Teks

Menggunakan Algoritma Message Digest-5.

Menyimpulkan bahwa MD5 dapat melakukan pengujian terhadap data teks untuk mengetahui apakah data sudah diubah atau belum.

b. M Taofik Chulkamdi, Sholeh Hadi Pramono, dan Erni Yudaningtyas (2015) dalam jurnal yang berjudul Kompresi Teks Menggunakan Algoritma Huffman dan MD5 pada Instant Messaging

Smartphone Android. Menyimpulkan bahwa

algoritma MD5 sesuai untuk aplikasi instant message berbasis android untuk menjaga integritas password.

c. Rendi Gayu Buana (2012) dalam jurnal yang berjudul Pengujian Integritas Data Menggunakan

Algoritma MD5. Menyimpulkan bahwa algoritma MD5 dapat mendeteksi perubahan yang terjadi pada suatu file walaupun perubahan tersebut sangat kecil.

G. Metodologi Penelitian

Penelitian ini menerapkan beberapa metode penelitian sebagai berikut:

1. Studi Literatur

Pada tahap ini dilakukan pengumpulan referensi yang diperlukan dalam penelitian. Hal ini dilakukan untuk memperoleh informasi dan data terkait dengan penelitian ini. Referensi yang digunakan dapat berupa buku, jurnal, artikel, situs internet yang berkaitan dengan algoritma RC4A dan MD5.

2. Analisis dan Perancangan Sistem

Menganalisis dan merancang sistem yang akan dibuat sesuai dengan kebutuhan sistem dengan menggunakan pemodelan UML (Unified Modeling Language). 3. Implementasi Sistem

Pada tahap ini algoritma RC4A dan MD5 telah diimplementasikan ke dalam sebuah aplikasi program. 4. Pengujian Sistem

Pada tahap ini akan dilakukan pengujian terhadap sistem yang telah dikembangkan.

5. Dokumentasi Sistem

Melakukan dokumentasi sistem mulai dari tahap awal hingga akhir, untuk selanjutnya dibuat dalam bentuk laporan penelitian.

II. TINJAUAN PUSTAKA

A. Kriptografi

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 [1]. Kriptografi secara etimologi terdiri dari kata kryptos berasal dari bahasa Yunani yang berarti tersembunyi dan graphein yang berarti tulisan. Pesan asli disebut plaintext dan pesan yang disamarkan disebut ciphertext [3].

B. Algoritma Kriptografi Kunci Simetris

(3)

ϱϯ

C. Algoritma Kriptografi Kunci Asimetris

Penyandian dengan kunci asimetris atau sering juga disebut dengan penyandian kunci publik adalah penyandian dengan kunci enkripsi dan dekripsi yang berbeda nilai. Kunci yang digunakan untuk enkripsi disebut dengan kunci publik (public key) dan kunci yang digunakan untuk dekripsi disebut kunci rahasia (private key) [4].

D. Algoritma RC4

RC4 merupakan salah satu jenis stream cipher, yaitu memproses unit atau input data pada satu saat. Unit atau data pada umumnya merupakan sebuah byte. Dengan cara ini enkripsi atau dekripsi dapat dilaksanakan pada panjang yang variabel. Algoritma ini tidak harus menunggu sejumlah input data tertentu sebelum diproses, atau menambahkan byte tambahan untuk mengenkrip [6].

Algoritma RC4 terdiri atas 2 bagian yaitu Key

Scheduling Algorithm (KSA) dan Pseudo-Random

Generation Algorithm (PRGA).

1. Key Scheduling Algorithm (KSA)

Berikut adalah algoritma KSA, dimana simbol l menyatakan panjang kunci dalam byte.

for i from 0 to 255

2. Pseudo-Random Generation Algorithm (PRGA)

Berikut adalah algoritma PRGA : i := 0 telah mengusulkan sebuah varian baru dari RC4 yang diberi nama RC4A. RC4A merupakan sebuah upaya untuk meningkatkan keamanan dari RC4 tanpa mengurangi efisiensi.

RC4A adalah stream cipher yang berorientasi byte. Tahap pembentukan dari RC4A lebih efisien dibanding RC4, tetapi tahap inisialisasinya memerlukan setidaknya dua kali proses inisialisasi dari RC4.

Berikut adalah algoritma KSA dari RC4A [7]: RC4_KSA(K,S1)

for i = 0 ... l-1

WK[i] = RC4_PRGA(S1)

RC4_KSA(WK,S2)

Berikut adalah algoritma PRGA dari RC4A [7]: Initialization:

KSA yang sama dengan RC4 kecuali satu hal dimana KSA digunakan dua kali, masing-masing sekali untuk S1 dan S2. Semua operasi aritmetika dihitung dengan

modulo 256.

Proses KSA dari RC4A terdiri atas 2 bagian yaitu : 1. KSA dengan masukan K dan S1.

2. KSA dengan masukan WK dan S2.

WK dihasilkan dari PRGA milik RC4. l di sini merupakan panjang kunci dalam byte.

Setelah S1 dan S2 diperoleh dari proses KSA,

selanjutnya digunakan kembali dalam PRGA. Tiap putaran dalam PRGA menghasilkan 2 byte output.

F. Fungsi Hash

(4)

ϱϰ

G. Algoritma MD5

MD5 adalah salah satu fungsi hash yang paling banyak digunakan. MD5 merupakan versi perbaikan dari MD4 yang dirancang oleh Ron Rivest pada tahun 1991. MD5 umumnya digunakan sebagai checksum untuk verifikasi integritas file yang didownload dari internet.

MD5 memproses teks masukan ke dalam blok-blok 512 bit, kemudian dibagi menjadi 16 buah sub blok sebesar 32 bit. Keluaran dari algoritma MD5 adalah sebuah set dari 4 buah blok masing-masing 32 bit, yang kemudian menghasilkan nilai hash 128 bit [5].

III. ANALISIS DAN PERANCANGAN SISTEM

A. Analisis Masalah

Permasalahan yang dibahas dalam penelitian ini adalah bagaimana cara menjaga kerahasiaan suatu pesan atau informasi dari pihak-pihak yang tidak berwenang yang menginginkan informasi tersebut serta dapat menjamin bahwa informasi yang diperoleh masih utuh atau tidak mengalami perubahan. Untuk mengidentifikasi masalah tersebut digunakan diagram Ishikawa (fishbone diagram). Diagram Ishikawa dari sistem dapat dilihat pada Gambar 1.

Gambar 1. Diagram Ishikawa Analisis Masalah

B. Pemodelan

Pemodelan sistem dilakukan untuk menunjukkan gambaran dari sistem yang akan dibangun, bagaimana interaksi antar objek yang ada pada sistem, serta hubungan yang terjadi di dalamnya. Pada penelitian ini digunakan pemodelan UML (Unified Modeling Language) untuk mendesain serta merancang sistem. Use case diagram, activity diagram, dan flowchart

dari sistem yang dibangun masing-masing ditunjukkan pada Gambar 2, Gambar 3, dan Gambar 4.

a. Use Case Diagram

Gambar 2. Use Case Diagram Pada Sistem

b.

Activity Diagram

(5)

ϱϱ

c. Flowchart

Gambar 4. Flowchart Sistem

Algoritma RC4A menggunakan proses KSA dan PRGA yang sama dengan algoritma RC4. Flowchart dari algoritma RC4A untuk proses enkripsi dan dekripsinya masing-masing dapat dilihat pada Gambar 5 dan Gambar 6.

Gambar 5. Flowchart Enkripsi Algoritma RC4A

Gambar 6. Flowchart Dekripsi Algoritma RC4A

IV. IMPLEMENTASI DAN PENGUJIAN

A. Antarmuka Sistem

Sistem ini dibangun dengan menggunakan bahasa pemrograman C#. Perangkat lunak yang digunakan sebagai Integrated Development Environment (IDE) adalah SharpDevelop versi 4, 3.

Pada sistem ini terdapat satu form utama dengan beberapa menu tab yaitu menu enkripsi, dekripsi, bantuan, dan tentang seperti diberikan pada Gambar 7, Gambar 8, Gambar 9, dan Gambar 10.

a. Menu Enkripsi

(6)

ϱϲ

b. Menu Dekripsi

Gambar 8. Menu Dekripsi

c. Menu Bantuan

Gambar 9. Menu Bantuan

d. Menu Tentang

Gambar 10. Menu Tentang

B. Pengujian

Pengujian sistem dilakukan untuk memastikan bahwa sistem yang telah dibangun dapat berjalan dengan baik sesuai dengan fungsi-fungsi yang sebelumnya ditentukan pada tahap analisis dan perancangan sistem. Hasil pengujian dari sistem dapat dilihat pada Gambar 11, Gambar 12, dan Gambar 13.

a. Pengujian Hasil Enkripsi Sistem

(7)

ϱϳ

b. Pengujian Hasil Perhitungan MD5

Gambar 12. Hasil Proses Perhitungan MD5 File

c. Pengujian Hasil Dekripsi Sistem

Gambar 13. Hasil Proses Dekripsi

V. KESIMPULAN DAN SARAN

A. Kesimpulan

Kesimpulan yang dapat diambil dari penelitian ini adalah:

1) Aplikasi yang dirancang dalam penelitian ini telah mampu melakukan proses pengamanan file teks dengan menggunakan algoritma RC4A.

2) Aplikasi yang dirancang mampu mengembalikan file teks hasil enkripsi menjadi file teks semula sebelum dienkripsi.

3) Aplikasi yang dirancang dalam penelitian ini telah mampu melakukan proses verifikasi keutuhan file dengan menggunakan algoritma MD5.

4) Algoritma MD5 dapat digunakan untuk memverifikasi keutuhan dari suatu file dengan cara menghitung nilai MD5 dari file tersebut dan membandingkannya dengan nilai MD5 yang diperoleh dari si pengirim.

B. Saran

Adapun saran yang dapat diberikan untuk pengembangan penelitian ini adalah sebagai berikut: 1. Untuk pengembangan sistem selanjutnya dapat

menggunakan algoritma hash lain seperti SHA-1, SHA-256, dan lain sebagainya.

2. Sistem ini bekerja pada data teks, sehingga diharapkan penelitian selanjutnya dapat diimplementasikan pada data gambar, suara, atau video.

REFERENSI

[1] Kromodimoeljo, S. 2010. Teori dan Aplikasi Kriptografi. SPK IT Consulting

[2] Menezes, A., Oorschot, P.V. & Vanstone, S. 1996. Handbook of Applied Cryptography. CRC Press

[3] Mollin, R.A. 2007. An Introduction to Cryptography. Second Edition. Taylor & Francis Group

[4] Sadikin, R. 2012. Kriptografi untuk Keamanan Jaringan. Yogyakarta : Andi

[5] Schneier, B. 1996. Applied Cryptography Protocols, Algorithms, and Source Code in C. Second Edition

[6] Sukmawan, B. 1998. RC4 stream cipher. (Online) http://www.bimacipta.com/rc4-stream-cipher.html (19 Februari 2016)

Gambar

Gambar 2. Use Case Diagram Pada Sistem
Gambar 7. Menu Enkripsi
Gambar 11. Hasil Proses Enkripsi
Gambar 12. Hasil Proses Perhitungan MD5 File

Referensi

Dokumen terkait

Pendekatan Kontekstual merupakan konsep belajar yang membantu guru mengaitkan antara materi yang diajarkan dengan situasi dunia nyata siswa dan mendorong siswa

Athena dikenal sebagai Negara demokrasi pertama di dunia yang mampu menjalankan demokrasi langsung, artinya hak rakyat untuk membuat keputusan politik dijalankan

Faktor-Faktor Yang Berhubungan Dengan Pemberian Imunisasi Campak Pada Batita di Wilayah Kerja Puskesmas Lareh Sago Halaban Kabupaten 50 Kota Tahun 2012. Diambil Pada Tanggal 21

“ Perancangan Mesin Press Dengan Sistem Pneumatik Untuk Produksi Paving Blok Dengan Gaya Tekan

Sebagai salah satu upaya untuk terus meningkatkan akses dan mutu pendidikan di Provinsi Papua, khususnya untuk mendukung kelancaran dan keberhasilan proses pembelajaran di

Narasumber yang dipilih penulis adalah dua orang perawat yang telah bekerja lebih dari lima tahun di Panti Lansia Santa Anna dan dua orang lansia yang tinggal di Panti Lansia Santa

Pada saat perolehan, perusahaan hrs mengklasifikasi investasi dalam obligasi dan saham ke dalam salah satu dari ketiga kelompok berikut ini :.. Diperdagangkan, yaitu sekuritas

Berdasarkan hasil analisis data dan pembahasan, diketahui terdapat perbedaan yang signifikan hasil belajar IPA antara peserta didik yang diajarkan dengan menggunakan model