APLIKASI KRIPTOGRAFI BERBASIS DESKTOP DENGAN METODE
TRIPLE DES (3-DES)
Mochammad Fiqri J, Entik Insanudin S.T., M.T. Program Studi Teknik InfomartikaFakultas
Fakultas Sains dan Teknologi
Universitas Islam Negeri Sunan Gunung Djati Bandung Jl. A. H. Nasution 105Bandung
Email: [email protected], [email protected] Abstract
Classical cryptography algorithms existed long before the modern world into what it is today. Classical cryptography algorithms have only one common key. In contrast to modern cryptographic algorithms that have two keys, namely a public key and a private key. Triple DES algorithm is a symmetric cryptography algorithm used to secure the data, which consists of encryption and decryption, Triple DES is a development of DES cryptographic algorithm.
In this paper will explain cryptography-based desktop application that can perform encryption and decryption process to a file using Triple DES.
Keywords: Cryptography, Triple DES
Abstrak
Algoritma kriptografi klasik sudah ada jauh sebelum dunia menjadi modern seperti sekarang ini. Algoritma kriptografi klasik hanya memiliki satu kunci yang sama. Berbeda dengan algoritma kriptografi modern yang memiliki 2 kunci yaitu kunci publik dan kunci private. Algoritma Triple DES adalah salah satu algoritma simetris pada kriptografi yang digunakan untuk mengamankan data, yang terdiri dari proses enkripsi dan dekripsi, Triple DES ini merupakan pengembangan dari algoritma kriptografi DES.
Dalam paper ini akandijelaskan aplikasi kriptografi berbasis dekstop yang mampu melakukan proses enkripsi dan dekripsi terhadap suatu file dengan menggunakan metode Triple DES.
Kata Kunci : Kriptografi, Triple DES
Latar Belakang Masalah
Pada era sekarang, kebutuhan akan informasi sangatlah penting bagi kehidupan manusia. Setiap hari manusia mengakses informasi baik secara fisik maupun secara virtual. Dengan adanya keberagaman metode dan semakin mudahnya mengakses informasi, ini juga memudahkan bagi siapa saja yang ingin berbagi informasi maupun “mencuri” informasi dari siapapun.
Berbagi informasi dapat dilakukan dengan mudah baik dari dua arah maupun satu arah dewasa ini. Bukan hanya berbagi informasi, untuk mencuri informasi dapat dibilang mudah juga dewasa ini. Sistem keamanan pengiriman data (komunikasi data yang aman) dipasang untuk mencegah pencurian, kerusakan, dan penyalahgunaan data yang terkirim. Dalam prakteknya, pencurian data berwujud pembacaan oleh pihak yang tidak berwenang biasanya dengan menyadap saluran publik.
Kriptografi sangatlah diperlukan sebagai metode mengamankan informasi, mengubah informasi yang sebenarnya
yang biasa disebut plainteks, menjadi informasi yang tersandi yang biasa disebut cipherteks. Proses penyandian disebut enkripsi dan pembukaan pesan yang tersandi disebut dekripsi. Dalam proses enkripsi, plainteks diubah menjadi ciperhteks. Selama pengiriman, yang dikirim merupakan cipherteks dimana selain pengirim dan penerima, tidak akan ada yang mengerti.
Yang tersandi yang biasa disebut cipherteks. Proses penyandian disebut enkripsi dan pembukaan pesan yang tersandi disebut dekripsi. Dalam proses enkripsi, plainteks diubah menjadi ciperhteks. Selama pengiriman, yang dikirim merupakan cipherteks dimana selain pengirim dan penerima, tidak akan ada yang mengerti.
Landasan Teori
Prinsip Dasar Kriptografi
Ilmu kriptografi
adalah
ilmu dan seni untuk menjaga pesan supaya aman dan utuh. Kriptografi terdiri dari kriptografi klasi dan kriptografi modern. Kriptografi klasik memiliki kunci simetri dimana proses enkripsi dan dekripsi dilakukan dengan 1 kunci yang sama. Berbeda dengan kriptografi modern yang memiliki kunci asimetri dimana memiliki lebih dari 1 kunci. Kriptografi sendiri terdiri dari 2 proses utama yaitu enkripsi dan dekripsi. Enkripsi ialah proses mengubah plainteks menjadi cipherteks dengan menggunakan kunci yang sudah ditentukan. Dekripsi ialah proses pengembalian cipherteks menjadi plainteks.Tujuan Kriptogtrafi
1. Kerahasiaan
Informasi di dalam sistem komputer dan informasi yang ditransmisikan hanya dapat diakses oleh sekelompok pengguna yang berhak, untuk itu maka kerahasiaan data harus dijaga.
.
2.
Autentikasi
Penerima pesan dapat meyakinkan dirinya bahwa pesan yang diterima tidak terjadi perubahan dan berasal dari orang yang diinginkan.
3. Integritas
Pesan yang dikirim melalui media komunikasi dapat disadap oleh penyerang (attacker) dan pesan tersebut dimodifikasi, pesan yang diterima oleh penerima tidak lagi seperti yang pertama kali dikirimoleh pengirim
.
4. Nir-penolakan
Jika seseorang sudah mengirimkan pesan, maka dia tidak dapat membantah pesan yang dia kirimkan, karena pengiriman pesan tanpa ada pertemuan dapat menimbulkan penolakan atas pesan yang pernah dikirim bila tidak ada identitas pengirim dalam pesan tersebut.
5. Ketersediaan (availablity)
Ketersediaan berarti suatu sumber daya dari sistem komputer tersedia untuk diakses bagi pihak yang berhak pada saat dibutuhkan.
Metode 3 DES
Algoritma 3DES adalah suatu algoritma pengembangan dari algoritma DES (Data Encryption Standard). Perbedaan DES dengan 3DES terletak pada panjangnya kunci yang digunakan. Pada DES menggunakan satu kunci yang panjangnya 56-bit, sedangkan pada 3DES menggunakan 3 kunci yang panjangnya 168- bit (masing-masing panjangnya 56-bit). Pada 3DES, 3 kunci yang digunakan bisa bersifat saling bebas (K1 ≠ K2 ≠ K3) atau hanya
dua buah kunci yang saling bebas dan satu kunci lainnya sama dengan kunci pertama (K1 ≠ K2 dan K3 = K1). Karena tingkat
kerahasiaan algoritma 3DES terletak pada panjangnya kunci yang digunakan, maka penggunaan algoritma 3DES dianggap lebih aman dibandingkan dengan algoritma DES.
Gambar 1
Gambar 3: Enkripsi 3 DES
Gambar 4: Dekripsi 3 DES
Pembahasan
Proses Enkripsi Data
Enkripsi merupakan proses mengamankan data mengubah data asli menjadi data yang tersandi dengan menggunakan metode yang telah ditentukan. Disini akan memberikan contoh proses enkripsi 3 DES menggunakan aplikasi desktop yang telah dibuat.
Gambar 6: Tampilan enkripsi data
Ini merupakan tampilan awal aplikasi yang dibuat. Sebelumnya di dalam aplikasi terdapat menu ‘lokasi file’ untuk memilih file yang akan dienkripsi. Kemudian ‘ukuran file’ merupakan informasi besarnya file yang akan dieksekusi. Langsung saja kita akan melakukan proses enkripsi:
1. Pilih file yang akan dienkripsi
2. Masukkan key di dalam kolom password 3. Pilih aksi ‘enkripsi’
Gambar 7: Proses enkripsi berhasil
Disini saya mengenkripsi file .docx dengan menggunakan password ‘kripto’. File yang berhasil dienkripsi akan tersimpan di folder yang sama dengan file asli.
Gambar 8, file yang terenkripsi menjadi ekstensi .usb
Kode program enkrispi:
Private Sub ProteksiFile(ByVal pwd As String, ByVal fin As String, ByVal feout As String)
Dim fileStream As FileStream fileStream = File.OpenWrite(feout)
Dim writeStream As BinaryWriter
writeStream = New BinaryWriter(fileStream)
Dim myByte As Byte Dim salt() As Byte salt = SetEncKey(pwd)
'Write data to file Try
'Write salt to file Dim i As Integer For i = 0 To salt.Length - 1 writeStream.Write(salt(i)) Next writeStream.Flush() Catch End Try
'Create the encrypter
Dim encryptor As ICryptoTransform
encryptor = clientDESCryptoServiceProvider.CreateEncryptor()
Dim encStream As CryptoStream
encStream = New CryptoStream(fileStream, encryptor, CryptoStreamMode.Write)
'Read the input file
Dim readStream As BinaryReader
readStream = New BinaryReader(File.OpenRead(fin))
Try Do myByte = readStream.ReadByte() encStream.WriteByte(myByte) Loop Catch encStream.FlushFinalBlock() encStream.Flush() End Try encStream.Close() fileStream.Close() readStream.Close()
MsgBox("File " & TextBox1.Text & " berhasil di enkripsi", MsgBoxStyle.Information, "Message")
End Sub
Proses Dekripsi Data
Dekripsi merupaka proses pengembalian data yang telah tersandi menjadi data asli sehingga bisa dipahami isinya. Langsung saja kita buka aplikasi untuk melakukan proses dekripsi menggunakan metode 3 DES.
Gambar 9: Proses dekripsi
Kembali lagi di tampilan awal aplikasi, bedanya kita akan melakukan aksi dekripsi. Langsung saja dipilih file yang telah terenkripsi untuk didekripsi menggunakan key yang sama seperti saat proses pengenkripsian yaitu key ‘kripto’.
Gambar 10: Proses dekripsi berhasil
Gambar 11: File kembali menjadi ekstensi .docx
Kode program dekripsi:
Private Sub DeProteksiFile(ByVal pwd As String, ByVal fin As String, ByVal fdout As String)
Dim fileStream As FileStream fileStream = File.OpenRead(fin)
'Load Salt
Dim salt(7) As Byte Try Dim i As Integer For i = 0 To 7 salt(i) = fileStream.ReadByte() Next SetDecKey(pwd, salt) Catch fileStream.Close() Return End Try
'Create the decryptor
Dim encryptor As ICryptoTransform encryptor =
clientDESCryptoServiceProvider.CreateDecryptor()
'Create the decryptor stream Dim decStream As CryptoStream
decStream = New CryptoStream(fileStream, encryptor, CryptoStreamMode.Read)
'Stream to read the from decryptor stream Dim readStream As BinaryReader
readStream = New BinaryReader(decStream)
'The output file
Dim writeStream As BinaryWriter writeStream = New
BinaryWriter(File.OpenWrite(fdout))
Dim myByte As Byte Try 'Copy data Do myByte = readStream.ReadByte() writeStream.Write(myByte) Loop Catch 'Flush stream writeStream.Flush() End Try writeStream.Close() fileStream.Close() readStream.Close()
MsgBox("File " & TextBox1.Text & " berhasil di dekripsi", MsgBoxStyle.Information, "Message") End Sub
Kesimpulan
1. Aplikasi ini dibangun sepenuhnya menggunakan metode Triple DES berbasis desktop
2. Pembuatan aplikasi ini menggunakan Micrososft Visual Studio dengan bahasa pemrograman VB.NET
3. Proses enkripsi dan dekripsi berhasil jika menggunakan 1 kunci yang sama
4. Semua ekstensi file yang dienkripsi berubah menjadi .usb
Daftar Pustaka
http://elib.unikom.ac.id/files/disk1/391/jbptunikompp-gdl-muhammadar-19537-10-pertemua-s.doc