• Tidak ada hasil yang ditemukan

Implementasi Algoritma Mmb (Modular Multiplication Based Block Cipher) Pada Pembuatan Aplikasi Manajemen Kata Sandi (Password Management)

N/A
N/A
Protected

Academic year: 2016

Membagikan "Implementasi Algoritma Mmb (Modular Multiplication Based Block Cipher) Pada Pembuatan Aplikasi Manajemen Kata Sandi (Password Management)"

Copied!
78
0
0

Teks penuh

(1)

IMPLEMENTASI ALGORITMA MMB (MODULAR MULTIPLICATION

BASED BLOCK CIPHER) PADA PEMBUATAN APLIKASI

MANAJEMEN KATA SANDI (PASSWORD MANAGEMENT)

SKRIPSI

MUHAMMAD AHYAL HUSNA

061401034

PROGRAM STUDI ILMU KOMPUTER

FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI

UNIVERSITAS SUMATERA UTARA

(2)

IMPLEMENTASI ALGORITMA MMB (MODULAR MULTIPLICATION

BASED BLOCK CIPHER) PADA PEMBUATAN APLIKASI

MANAJEMEN KATA SANDI (PASSWORD MANAGEMENT)

SKRIPSI

Diajukan untuk melengkapi tugas dan memenuhi syarat memperoleh ijazah Sarjana Ilmu Komputer

MUHAMMAD AHYAL HUSNA

061401034

PROGRAM STUDI ILMU KOMPUTER

FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI

UNIVERSITAS SUMATERA UTARA

(3)

PERSETUJUAN

Judul : IMPLEMENTASI ALGORITMA MMB (MODULAR

MULTIPLICATION-BASED BLOCK CIPHER) PADA

PEMBUATAN APLIKASI MANAJEMEN KATA SANDI (PASSWORD MANAGEMENT)

Kategori : SKRIPSI

Nama : MUHAMMAD AHYAL HUSNA

Nomor Induk Mahasiswa : 061401034

Program Studi : SARJANA (S1) ILMU KOMPUTER

Departemen : ILMU KOMPUTER

Fakultas : FAKULTAS ILMU KOMPUTER DAN

TEKNOLOGI INFORMASI

Diluluskan di Medan,

Komisi Pembimbing :

Pembimbing 2 Pembimbing 1

Amer Sharif, S.Si, M.Kom Dr. Poltak Sihombing, M.Kom

NIP 196203171991021001

Diketahui/Disetujui oleh

Program Studi S1 Ilmu Komputer Ketua,

(4)

PERNYATAAN

IMPLEMENTASI ALGORITMA MMB (MODULAR MULTIPLICATION-BASED

BLOCK CIPHER) PADA PEMBUATAN APLIKASI MANAJEMEN

KATA SANDI (PASSWORD MANAGEMENT)

SKRIPSI

Saya menyatakan bahwa skripsi ini adalah hasil karya saya sendiri, kecuali beberapa kutipan dan ringkasan yang masing-masing disebutkan sumbernya.

Medan, 16 April 2013

(5)

PENGHARGAAN

Alhamdulillah, puji syukur saya ucapkan kehadirat Allah SWT yang telah

memberikan rahmat dan hidayah-Nya, sehingga saya dapat menyelesaikan

penyusunan skripsi ini, sebagai syarat untuk memperoleh gelar Sarjana Komputer

pada Program Studi S1 Ilmu Komputer Universitas Sumatera Utara. Shalawat beriring

salam saya persembahkan kepada Nabi Besar Muhammad SAW.

Skripsi ini dapat saya selesaikan berkat dorongan , saran, bantuan dan kerja

sama dari berbagai pihak, baik moril maupun materil. Oleh karena itu, saya ingin

menyampaikan rasa hormat dan terima kasih yang sebesar–besarnya kepada :

1. Rektor Universitas Sumatera Utara, Bapak Prof. Dr. dr. Syahril Pasaribu,

D.T.M.&H., M.Sc. (C.T.M.), Sp.A.(K.)

2. Dekan Fakultas Ilmu Komputer dan Teknologi Informasi USU, Bapak Prof.

Dr. Muhammad Zarlis, M.Kom

3. Ketua Program Studi S1 Ilmu Komputer, Bapak Dr. Poltak Sihombing,

M.Kom dan juga selaku Dosen Pembimbing I yang telah memberikan

bimbingan, saran, dan masukan kepada saya untuk menyelesaikan skripsi ini.

4. Sekretaris Program Studi S1 Ilmu Komputer, Ibu Maya Silvi Lydia,

B.Sc.,M.Sc.

5. Bapak Amer Sharif, S.Si, M.Kom sebagai Dosen Pembimbing II yang telah

memberikan bimbingan, saran, dan masukan kepada saya untuk

menyempurnakan skripsi ini.

6. Dosen Penguji Bapak Syahriol Sitorus, S.Si, MIT dan Bapak Drs. Dahlan

Sitompul, M.Eng atas saran dan kritikan yang sangat berguna bagi saya.

7. Dosen-dosen serta pegawai-pegawai di Program Studi S1 Ilmu Komputer

USU.

8. Kedua orang tua saya yang telah memberikan dukungan dan motivasi,

ayahanda (alm) Drs. KH. Usman Husni, M.A dan ibunda Hj. Aidatul Fauziah

Hsb, S.Pd yang selalu sabar dalam mendidik saya.

9. Abangda M. Najmil Husna, S.T.Hi, MA dan Kakanda Zulfa Yalid, S.H.I. Serta

Abangda M. Aidil Husna, S.S yang selalu memberikan dorongan kepada saya

(6)

10.Pocut Rizky Azhari atas semangat, pengertian, perhatian dan kesabaran yang

selalu diberikan kepada saya.

11.Sri Melvani Hardi, S.Kom , Muhammad Alvin, S.Kom, Bambang Budiarto

S.Kom, Andika Novaldy, S.Kom, Bagoes Harsono, S.Kom, Dameria Gloria,

S.Kom, Januar Rambe, S.Kom, Bobbie Medana, S.Kom yang telah memberi

saran, masukan dan dukungannya selama pengerjaan skripsi ini dan selalu

memberikan dukungan dan dorongan baik moril maupun materil.

12.Rekan-rekan di S-1 Ilmu Komputer USU terutama angkatan 2006, juga teman-

teman saya dari semua angkatan yang secara tidak langsung telah membantu

selama penyusunan tugas akhir ini.

13.Dan semua pihak yang telah banyak membantu yang tidak bisa disebutkan

satu-persatu.

Semoga kebaikan yang telah diberikan kepada saya mendapatkan pahala yang

melimpah dari Allah SWT.

Penyusun menyadari bahwasanya dalam penyusunan Tugas Akhir ini masih memiliki

banyak kekurangan baik dari segi materi maupun dari segi penyusunannya mengingat

terbatasnya pengetahuan dan kemampuan saya. Untuk itu, dengan kerendahan hati

saya mohon maaf dan saya menerima saran dan kritik yang bersifat membangun demi

kesempurnaan skripsi ini. Sehingga dapat bermanfaat bagi kita semuanya.

Medan, 16 April 2013

Penyusun

(7)

ABSTRAK

Manajemen password dengan menerapkan algoritma kriptografi merupakan salah satu cara untuk menyimpan dan mengamankan kerahasiaan identitas digital seseorang. Tujuan penelitian ini adalah mengimplementasikan algoritma Modular

Multiplication-Based Block Cipher (MMB) pada aplikasi manajemen password. Algoritma MMB

merupakan algoritma block cipher dengan panjang 128 bit yang nantinya dibagi menjadi 4 sub-blok masing-masing berukuran 32 bit subblock text (x0, x1,x2, x3) dan

32 bit subblock kunci (k0. k1,k2, k3), dan penerapan proses operasi perkalian modulo

232–1, perhitungan fungsi non linier f pada proses enkripsi dan dekripsi, serta operasi invers pada proses dekripsi. Hasil yang diperoleh adalah algoritma MMB yang diterapkan pada aplikasi manajemen password dapat menjaga keamanan dan kerahasiaan data identitas digital pengguna dengan menerapkan proses enkripsi dan dekripsi antara plainteks dan cipherteks dengan kunci. Kelemahan dari aplikasi yang dibangun terletak pada pola plainteks, karena blok plainteks yang sama selalu menghasilkan blok cipherteks yang sama. Sehingga jika cryptanalyst mengetahui hasil enkripsi dari salah satu blok plainteks maka dia dapat dengan mudah mendekripsi cipherteks dengan bentuk yang sama setiap kali cipherteks tersebut terlihat di dalam pesan.

(8)

ABSTRACT

Password management by implementing a cryptographic algorithm is one way to save and secure the confidentiality of a person's digital identity. The purpose of this study is to implement Modular Multiplication-Based Block Cipher (MMB) Algorithms on password management application. MMB algorithm is a block cipher algorithm with a 128 bit long block which will be divided into 4 sub-blocks each measuring 32 bit subblock texts (x0, x1, x2, x3) and a 32 bit subblock key (k0, k1, k2, k3). And

implementation process of multiplication operations modulo 232-1, the calculation of non linear function f in the process of encryption and decryption, as well as the inverse operation in the decryption process. The result is that MMB algorithm applied to password management application can maintain the security and confidentiality of the user's digital identity data by applying encryption and decryption process between plaintext and ciphertext with a key. The weakness of this application is the plaintext scheme. because the same plaintext blocks always produces the same ciphertext blocks. So, if the cryptanalyst knows the encryption result of one block of plaintext then he can easily decrypt the ciphertext with the same form whenever the ciphertext is seen in the message.

(9)

DAFTAR ISI

Halaman

Persetujuan ii

Pernyataan iii

Penghargaan v

Abstrak vi

Daftar Isi viii

Daftar Gambar x

Bab 1 Pendahuluan

1.1 Latar Belakang 1

1.2 Rumusan Masalah 3

1.3 Batasan Masalah 3

1.4 Tujuan Penelitian 3

1.5 Manfaat Penelitian 4

1.6 Metode Penelitian 4

1.7 Sistematika Penulisan 5

Bab 2 Tinjauan Pustaka

2.1 Kriptografi 7

2.1.1 Sejarah Kriptografi 8

2.1.2 Proses Kriptografi 9

2.1.3 Jenis Sistem Kriptografi 12

2.1.2.1 Kriptografi Kunci Rahasia 12

2.1.2.2 Kriptografi Kunci Publik 13

2.1.3 Kategori Chiper Kunci Simetri 14

2.2 Algoritma MMB 15

2.2.1 Sejarah Singkat MMB 15

2.2.2 Spesifikasi Algoritma MMB 15

2.2.3 Proses Pembentukan Kunci 16

2.2.4 Proses Enkripsi Algoritma MMB 16

2.2.5 Proses Dekripsi Algoritma MMB 17

2.3 Password Management 19

2.3.1 Konsep Password Management 19

2.3.2 Penerapan Enkripsi pada Password Management 20

2.4 Flowchart 21

Bab 3 Analisis dan Perancangan

3.1 Analisis 23

3.1.1 Analisis Masalah 23

3.1.2 Penyelesaian Masalah 24

(10)

3.1.4 Analisis Kebutuhan Perangkat 27

3.1.4.1 Perangkat Keras 27

3.1.4.2 Perangkat Lunak 27

3.1.5 Penerapan Algoritma MMB 27

3.1.5.1 Proses Pembangkitan Kunci 29

3.1.5.2 Proses Enkripsi Algoritma MMB 30

3.1.5.3 Flowchart Enkripsi MMB 35

3.1.5.4 Proses Dekripsi Algoritma MMB 37

3.1.5.5 Flowchart Dekripsi MMB 41

3.2 Perancangan Aplikasi 43

3.2.1 Perancangan Diagram Pohon (Tree Chart) 43

3.2.2 Flowchart Aplikasi 44

3.2.3 Flowchart Lihat Log Aplikasi 46

3.2.4 Data Flow Diagram (DFD) 47

3.2.4.1 Diagram Konteks 47

3.2.4.2 DFD Level 1 48

3.2.4.3 DFD Level 2 (Proses Enkripsi) 49

3.2.4.3 DFD Level 2 (Proses Dekripsi) 50

Bab 4 Implementasi dan Penggunaan

4.1 Spesifikasi Perangkat Lunak 52

4.2 Spesifikasi Perangkat Keras 52

4.3 Implementasi 53

4.3.1 Proses Input Data 53

4.3.2 Proses Pembentukan Kunci 53

4.3.3 Proses Enkripsi 54

4.3.4 Proses Dekripsi 58

4.4 Pengujian Sistem 61

Bab 5 Kesimpulan dan Saran

5.1 Kesimpulan 64

5.2 Saran 65

(11)

DAFTAR GAMBAR

Halaman

Gambar 2.1 Mekanisme Kriptografi 10

Gambar 2.2 Kriptografi Berbasis Kunci 11

Gambar 2.3 Model Sederhana dari Secret Key Cryptography 13

Gambar 2.4 Model Sederhana dari Public Key Cryptography 14

Gambar 2.5 Proses Pembentukan Kunci 16

Gambar 3.1 Analisis Permasalahan 26

Gambar 3.2 Proses Pembentukan Kunci pada Algoritma MMB 29

Gambar 3.3 Flowchart Proses Enkripsi MMB 35

Gambar 3.4 Sub Proses XOR(x,k) 36

Gambar 3.5 Flowchart Fungsi f(x) pada Proses Enkripsi Algoritma MMB 36

Gambar 3.6 Flowchart Proses Dekripsi MMB 41

Gambar 3.7 Sub Proses XOR(x,k) 42

Gambar 3.8 Flowchart Fungsi f(x) pada Proses Dekripsi Algoritma MMB 42

Gambar 3.9 Diagram Pohon Aplikasi 43

Gambar 3.10 Flowchart Aplikasi Password Management 45

Gambar 3.11 Flowchart Log Aplikasi Password Management 46

Gambar 3.12 Diagram Konteks 47

Gambar 3.13 DFD Level 1 48

Gambar 3.14 DFD Level 2 (proses enkripsi) 49

Gambar 3.15 DFD Level 2 (proses dekripsi) 50

Gambar 4.1 Data yang Telah Disimpan 53

Gambar 4.2 Pembentukan key (kunci) 54

Gambar 4.3 Plainteks Dalam Bentuk Heksadesimal dan Biner 54

Gambar 4.4 Langkah 1 pada Blok Plain 0 55

Gambar 4.5 Langkah 2 pada Blok Plain 0 56

Gambar 4.6 Langkah 2 pada Blok Plain 0 (Lanjutan) 57

Gambar 4.7 Ciphertext hasil enkripsi 57

Gambar 4.8 Langkah 1 Blok Cipher 0 58

Gambar 4.9 Langkah 2 Blok Cipher 0 59

Gambar 4.10 Langkah 2 Blok Cipher 0 (Lanjutan) 60

(12)

ABSTRAK

Manajemen password dengan menerapkan algoritma kriptografi merupakan salah satu cara untuk menyimpan dan mengamankan kerahasiaan identitas digital seseorang. Tujuan penelitian ini adalah mengimplementasikan algoritma Modular

Multiplication-Based Block Cipher (MMB) pada aplikasi manajemen password. Algoritma MMB

merupakan algoritma block cipher dengan panjang 128 bit yang nantinya dibagi menjadi 4 sub-blok masing-masing berukuran 32 bit subblock text (x0, x1,x2, x3) dan

32 bit subblock kunci (k0. k1,k2, k3), dan penerapan proses operasi perkalian modulo

232–1, perhitungan fungsi non linier f pada proses enkripsi dan dekripsi, serta operasi invers pada proses dekripsi. Hasil yang diperoleh adalah algoritma MMB yang diterapkan pada aplikasi manajemen password dapat menjaga keamanan dan kerahasiaan data identitas digital pengguna dengan menerapkan proses enkripsi dan dekripsi antara plainteks dan cipherteks dengan kunci. Kelemahan dari aplikasi yang dibangun terletak pada pola plainteks, karena blok plainteks yang sama selalu menghasilkan blok cipherteks yang sama. Sehingga jika cryptanalyst mengetahui hasil enkripsi dari salah satu blok plainteks maka dia dapat dengan mudah mendekripsi cipherteks dengan bentuk yang sama setiap kali cipherteks tersebut terlihat di dalam pesan.

(13)

ABSTRACT

Password management by implementing a cryptographic algorithm is one way to save and secure the confidentiality of a person's digital identity. The purpose of this study is to implement Modular Multiplication-Based Block Cipher (MMB) Algorithms on password management application. MMB algorithm is a block cipher algorithm with a 128 bit long block which will be divided into 4 sub-blocks each measuring 32 bit subblock texts (x0, x1, x2, x3) and a 32 bit subblock key (k0, k1, k2, k3). And

implementation process of multiplication operations modulo 232-1, the calculation of non linear function f in the process of encryption and decryption, as well as the inverse operation in the decryption process. The result is that MMB algorithm applied to password management application can maintain the security and confidentiality of the user's digital identity data by applying encryption and decryption process between plaintext and ciphertext with a key. The weakness of this application is the plaintext scheme. because the same plaintext blocks always produces the same ciphertext blocks. So, if the cryptanalyst knows the encryption result of one block of plaintext then he can easily decrypt the ciphertext with the same form whenever the ciphertext is seen in the message.

(14)

BAB 1

PENDAHULUAN

1.1 Latar Belakang

Pada era teknologi informasi saat ini, pengiriman data dan informasi menjadi hal yang

sangat penting. Dibutuhkan suatu sistem keamanan yang dapat menjaga kerahasiaan

suatu data maupun informasi, sehingga data tersebut dapat dikirimkan dengan aman.

Salah satu cara untuk menjaga keamanan dan kerahasiaan suatu data maupun

informasi adalah dengan teknik enkripsi dan dekripsi guna membuat pesan, data,

maupun informasi agar tidak dapat dibaca atau dimengerti oleh sembarang orang,

kecuali untuk penerima yang berhak.

Teknik pengamanan data menggunakan enkripsi dan dekripsi dikenal dengan

nama kriptografi, sebagai sebuah ilmu atau seni untuk mengamankan pesan atau data

dengan cara menyamarkan pesan tersebut sehingga hanya dapat dibaca oleh pengirim

dan penerima pesan. Penerapan kriptografi pada komputer dapat menyamarkan pesan

yang berupa file teks, gambar, suara, gambar bergerak dan lain-lain.

Algoritma-algoritma dalam proses enkripsi dan dekripsi sebenarnya terbagi

menjadi dua macam, yaitu yang bersifat stream cipher dan block cipher. Stream

cipher mengenkripsi plaintext atau mendekripsi ciphertext secara bit per bit, yaitu

satu bit dienkripsi atau didekripsi per satuan waktu. Sedangkan algoritma tipe block

cipher mengenkripsi plaintext dan mendekripsi ciphertext secara blok per blok (blok

adalah kumpulan bit), yaitu satu blok dienkripsi atau didekripsi per satuan waktu.

Tentu saja proses enkripsi dan dekripsi menggunakan metode block cipher memiliki

kecepatan yang lebih baik dibandingkan metode stream cipher.

Salah satu contoh algoritma kriptografi block cipher adalah algoritma MMB

(15)

dirancang oleh Daemen, Govaerts dan Vandewalle, pada tahun 1993, sebagai

alternatif terhadap block cipher IDEA. Kriptografi metode MMB menggunakan block

size 128 bit dan algoritma iteratif yang terdiri dari langkah-langkah linier (seperti

XOR dan aplikasi kunci) serta aplikasi paralel dari empat substitusi non linier besar

yang dapat dibalik.

Algoritma MMB menggunakan 32 bit subblock text (X0, X1, X2, X3) dan 32 bit

subblock kunci (K0, K1, K2, K3). Kerumitan algoritma ini, yang terletak pada proses

operasi perkalian modulo 232 – 1, perhitungan fungsi non linier f pada proses enkripsi

dan dekripsi, serta operasi invers pada proses dekripsi, menyebabkan algoritma ini

sulit diproses secara manual.

Terlepas dari beraneka-ragamnya keberadaan sistem dan model keamanan

informasi berbasis teknologi yang canggih yang ada di pasaran, pada tataran

penggunaannya terutama untuk pengguna awam. Kata kunci atau yang dikenal

sebagai “password” merupakan pendekatan keamanan yang paling sering dipakai.

Salah satu cara mengamankan password yang terbaik adalah menggunakan aplikasi

manajemen penyimpan password. Ada banyak cara yang dapat diterapkan dalam

menjaga keamanan penyimpanan password. Setiap cara memiliki kelebihan dan

kekurangannya masing-masing. Penerapan kriptografi pada penyimpanan password

dapat meningkatkan keamanan password yang disimpan.

Berdasarkan uraian di atas, penulis bermaksud untuk mengambil tugas akhir

(skripsi) yang membahas perancangan dan implementasi sistem keamanan manajemen

password menggunakan algoritma kriptografi MMB (Modular Multiplication-based

Block Cipher).

1.2 Rumusan Masalah

Masalah yang akan dibahas di dalam skripsi ini adalah bagaimana merancang suatu

aplikasi sistem keamanan data yang dapat mengamankan data username dan password

(16)

1.3 Batasan Masalah

Pembatasan permasalahan dalam membuat aplikasi password manager yang

menggunakan algoritma kriptografi MMB ini adalah sebagai berikut :

1. Analisis pada algoritma MMB dilakukan berfokus pada aspek kerahasiaan

(Confidentiality), sebagai salah satu layanan keamanan data.

2. Proses kerja dari aplikasi ditampilkan dalam bentuk biner.

3. Input data berupa karakter (string) dengan menggunakan panjang kunci adalah

16 karakter yang diubah kedalam bentuk biner dengan pengkodean ASCII

128-bit.

4. Menggunakan bahasa pemrograman Java dan berbasis aplikasi desktop.

5. Analisa dan perancangan yang dilakukan untuk pembuatan program

menggunakan Diagram Alir (Flowchart).

6. Pembahasan hanya pada pengimplementasian dan proses kerja enkripsi dan

dekripsi pada Password Management.

1.4 Tujuan Penelitian

Tujuan penyusunan tugas akhir (skripsi) ini adalah merancang suatu aplikasi untuk membantu menyimpan informasidata aku berupa username dan password agar lebih aman dengan menggunakan algoritma kriptografi MMB (Modular

Multiplication-based Block Cipher).

1.5 Manfaat Penelitian

Manfaat penelitian ini adalah sebagai berikut:

1. Memudahkan siapa saja untuk menjaga kerahasiaan dan keamanan data

username dan password menggunakan algoritma MMB (Modular

Multiplication-based Block Cipher).

2. Menambah aplikasi dalam bidang kriptografi dan juga dapat dijadikan alat

(17)

1.6 Metodologi Penelitian

Dalam menyusun skripsi ini penulis melakukan beberapa penerapan metode

penelitian untuk menyelesaikan permasalahan. Adapun metode penelitian yang

dilakukan adalah dengan cara:

1. Studi literatur

Mengumpulkan referensi dari buku, jurnal, internet dan sumber lainnya yang mendukung penulisan dan penyusunan skripsi ini.

2. Analisis

Melakukan analisis terhadap cara kerja algoritma MMB (Modular

Multiplication-based Block Cipher) dalam melakukan proses enkripsi dan

proses dekripsi.

3. Pengkodean

Menyusun kode program untuk melakukan proses enkripsi dan dekripsi. Program yang digunakan untuk skripsi ini adalah bahasa pemrograman Java.

4. Pengujian dan perbaikan

Melakukan proses pengujian terhadap program dan memperbaiki kelemahan yang didapat pada program yang dirancang.

5. Penyusunan laporan dan kesimpulan akhir

Menyusun laporan hasil perancangan dan perbaikan kelemahan program disertai penarikan kesimpulan.

1.7 Sistematika Penulisan

Sistematika penulisan dari skripsi ini terdiri dari beberapa bagian utama sebagai

berikut:

BAB 1 PENDAHULUAN

Bab ini menjelaskan mengenai latar belakang pemilihan judul, rumusan masalah,

batasan masalah, tujuan penelitian, manfaat penelitian, metode penelitian, dan

(18)

BAB 2 TINJAUAN PUSTAKA

Pada bab ini dibahas mengenai teori-teori yang mendukung pembahasan bab selanjutnya, implementasi terhadap cara kerja algoritma MMB (Modular

Multiplication-based Block Cipher) dalam melakukan proses enkripsi dan proses dekripsi.

BAB 3 ANALISIS DAN PERANCANGAN

Bab ini berisikan analisis sistem yang dilakukan dan perancangan sistem serta

pemodelan sistemnya.

BAB 4 IMPLEMENTASI DAN PENGGUNAAN

Bab ini membahas tentang cara kerja dari perangkat lunak yang mengulas analisis

hasil pengujian, gambaran rancangan desain antarmuka, perancangan basis

pengetahuan, serta memberikan gambaran rancang bangun yang lengkap kepada

pengguna dan pemakai komputer yang lain serta implementasinya yaitu menguji

untuk menemukan kesalahan.

BAB 5 KESIMPULAN DAN SARAN

Membuat kesimpulan-kesimpulan yang merupakan rangkuman dari hasil analisis kerja

pada bagian sebelumnya dan saran yang perlu diperhatikan berdasarkan keterbatasan

(19)

BAB 2

TINJAUAN PUSTAKA

2.1 Kriptografi

Kriptografi (cryptography) berasal dari kata kryptos yang artinya tersembunyi dan

grafia yang artinya sesuatu yang tertulis (bahasa Yunani) sehingga kriptografi dapat

juga disebut sebagai sesuatu yang tertulis secara rahasia (tersembunyi).

Kriptografi adalah ilmu yang mempelajari teknik – teknik matematika yang

berhubungan dengan aspek-aspek pada keamanan informasi misalnya kerahasiaan,

integritas data, otentikasi pengirim / penerima data, dan otentikasi data (Menezes. et

al,1996). Sedangkan lawan dari kriptografi adalah kriptanalisis (cryptanalysis),

merupakan ilmu yang memecahkan ciphertext menjadi plaintext kembali tanpa

mengatahui kunci, dan pelakunya ialah kriptanalis (criptanalys) [4].

Menurut Stalling [9], ada beberapa tuntutan yang terkait dengan isu keamanan data yaitu :

1. Confidentiality yaitu menjamin bahwa data-data tersebut hanya bisa diakses oleh

pihak-pihak tertentu saja.

2. Authentication, baik pada saat mengirim atau menerima informasi, kedua belah

pihak perlu mengetahui bahwa pengirim dari pesan tersebut adalah orang yang

sebenarnya seperti yang diklaim.

3. Integrity, tuntutan ini berhubungan dengan jaminan setiap pesan yang dikirim

pasti sampai pada penerimanya tanpa ada bagian dari pesan tersebut yang diganti,

diduplikasi, dirusak, diubah urutannya, dan ditambahkan.

4. Nonrepudiation mencegah pengirim maupun penerima mengingkari bahwa

mereka telah mengirimkan atau menerima suatu pesan/informasi. Jika sebuah

(20)

dikirim oleh pengirim yang tertera. Sebaliknya, jika sebuah pesan diterima,

pengirim dapat membuktikan bahwa pesannya telah diterima oleh pihak yang

ditujunya.

5. Access Control membatasi sumber-sumber data hanya kepada orang-orang

tertentu.

6. Availability, jika diperlukan setiap saat semua informasi pada sistem komputer

harus tersedia bagi semua pihak yang berhak atas informasi tersebut.

Dari keenam aspek keamanan data tersebut, empat diantaranya dapat diatasi

dengan menggunakan kriptografi yaitu confidentiality, integrity, authentication, dan

nonrepudiation.

2.1.1 Sejarah Kriptografi

Sejarah kriptografi dimulai pertama sekali dengan menggunakan metode pertukaran

posisi untuk mengenkripsi suatu pesan. Dalam sejarah perkembangannya, Julius

Caesar dalam mengirimkan pesan yang dibawa oleh hulubalangnya, sengaja

mengacak pesan tersebut sebelum diberikan kepada kurir. Hal ini dilakukan untuk

menjaga kerahasiaan pesan baik bagi kurir maupun bagi musuh jika kurir tertangkap

di tengah jalan oleh musuh. Ada orang yang mengatakan bahwa apa yang dilakukan

oleh Julius Caesar dianggap sebagai awal dari kriptografi.

Dalam sebuah buku yang berjudul The Codebreaker yang dikarang oleh David

Kahn pada tahun 1963, disebutkan bahwa kriptografi digunakan pertama sekali oleh

bangsa Mesir 4000 tahun yang lalu sampai saat sekarang ini. Sejak munculnya buku

tersebut maka kriptografi pun mulai diperbincangkan secara luas. Peminat dari buku

tersebut ialah peminat yang berhubungan dengan kemiliteran, layanan diplomatik dan

pemerintahan. Kriptografi digunakan sebagai suatu alat untuk melindungi rahasia dan

strategi – strategi negara.

Perkembangan komputer dan sistem komunikasi pada tahun 1960-an

mengakibatkan munculnya kebutuhan pihak swasta akan alat untuk melindungi

informasi dalam bentuk digital dan untuk menyediakan layanan keamanan informasi.

(21)

memuncak pada tahun 1977 dengan diadopsinya sistem kriptografi DES (Data

Encryption Standard) oleh U.S. Federal Information Processing Standard untuk

mengenkripsi informasi rahasia. DES merupakan mekanisme kriptografi yang paling

terkenal dalam sejarah dan tetap menjadi standar pengamanan data elektronik

komersial pada kebanyakan institusi keuangan di seluruh dunia.

Pada tahun 1978, Rivest, Shamir, dan Adleman menemukan enkripsi kunci

publik yang pertama dan sekarang ini dikenal dengan nama RSA (Rivest, Shamir, and

Adleman). Skema RSA didasarkan pada permasalahan matematika sulit yang terdiri

dari pemfaktoran terhadap bilangan yang besar nilainya. Karena adanya permasalahan

matematika tersebut maka muncul usaha – usaha untuk mencari cara yang paling

efisien dalam pemfaktoran bilangan. Skema kunci publik lainnya yang kuat dan

praktis ditemukan oleh ElGamal. Skema ini juga berdasarkan masalah logaritma

diskrit.

2.1.2 Proses Kriptografi

Algoritma kriptografi adalah urutan langkah-langkah logis bagaimana

menyembunyikan pesan dari orang-orang yang tidak berhak atas pesan tersebut.

Algoritma kriptografi terdiri dari tiga fungsi dasar, yaitu [1] :

1. Enkripsi: merupakan hal yang sangat penting dalam kriptografi, merupakan

pengamanan data yang dikirimkan agar terjagakerahasiaanya. Pesan asli

disebut plaintext, yang diubah menjadi kode-kode yag tidak dimengerti.

Enkripsi dapat diartikan dengan cipher atau kode. Sama halnya dengan kita

tidak mengerti akan sebuah kata maka kita akan melihatnya didalam kamus

atau daftar istilah. Beda halnya dengan enkripsi, untuk mengubah text asli

kebentuk text kode kita menggunakan algoritma yang dapat mengkodekan data

yang kita inginkan.

2. Dekripsi: merupakan kebalikan dari enkripsi. Pesan yang telah dienkripsi

dikembalikan kebentuk asalnya (text asli), disebut dengan dekripsi pesan.

Algoritma yang digunakan untuk dekripsi tentu berbeda dengan algoritma

(22)

3. Kunci: yang dimaksud disini adalah kunci yang dipakai untuk melakukan

enkripsi dan dekripsi. Kunci terbagi menjadi dua bagian, kunci rahasia (private

key) dan kunci umum (public key).

Urutan proses kriptografi secara umum dapat dilihat pada gambar 2.1 sebagai berikut.

Plaintext Ciphertext Plaintext

Gambar 2.1 Mekanisme Kriptografi

Sebuah plaintext (p) akan dilewatkan pada proses enkripsi (E) sehingga

menghasilkan suatu ciphertext (c). kemudian untuk memperoleh kembali plaintext,

maka ciphertext (c) melalui proses dekripsi (D) akan menghasilkan kembali plaintext

(m), secara matematis pernyataan tersebut dapat dinyatakan sebagai berikut,

E(m) = c

D(c) = m

D(E(m)) = m

Kriptografi sederhana seperti ini menghasilkan output yang disebut ciphertext.

Keamanannya bergantung pada kerahasiaan algoritma penyandian tersebut, oleh

karenanya algoritma yang digunakan harus dirahasiakan. Pada kelompok dengan

jumlah besar dan anggota yang senantiasa berubah, penggunaannya akan

menimbulkan masalah. Setiap ada anggota yang meninggalkan kelompok, algoritma

ini harus diganti karena anggota yang keluar mempunyai kesempatan untuk

membocorkan rahasia.

Dalam kriptografi modern, selain memanfaatkan algoritma juga menggunakan

kunci (key) untuk memecahkan masalah tersebut. Proses enkripsi dan dekripsi

dilakukan dengan menggunakan kunci.

Kunci adalah nilai yang terlepas dari pesan asli (plaintext) dan mengontrol

algoritma yang dipakai. Penerapan algoritma akan menghasilkan output yang berbeda

sesuai dengan kunci yang digunakan. Merubah kunci bearti juga merubah output yang

dari algoritma yang dipakai. Setelah ciphertext dihasilkan, ciphertext tersebut dapat

(23)

diubah kembali menjadi pesan asli dengan algoritma dekripsi dan dengan kunci yang

sama seperti yang digunakan.

Pada saat enkripsi setiap anggota memiliki kuncinya masing-masing yang

digunakan untuk proses enkripsi dan dekripsi yang akan dilakukannya. Dengan

demikian ada sedikit perubahan yang dilakukan pada mekanisme yang digambarkan

pada gambar 2.1 akan menjadi seperti gambar 2.2 berikut ini

kunci kunci

plaintext ciphertext plaintext

Gambar 2.2 Kriptografi Berbasis Kunci

Mekanisme kriptografi seperti ini dinamakan kriptografi berbasis kunci. dengan

demikian cryptosystem nya akan terdiri atas kunci dan algoritma, serta plaintext dan

ciphertext.

Persamaan matematisnya menjadi seperti berikut,

Ee(m) = c

Dd(c) = m

Dd(Ee(m)) = m

2.1.3 Jenis Sistem Kriptografi

Berdasarkan pemakaian kunci maka sistem kriptografi (cryptosystems) dapat

digolongkan atas 2 jenis sistem [5] yakni:

a. Sistem kriptografi kunci publik (public key cryptography). Dalam sistem

kriptografi kunci publik atau dikenal dengan assymmetric cryptosystem, pihak

pengirim maupun pihak penerima mendapatkan sepasang kunci yakni kunci

publik (public key) dan kunci rahasia (private key) dimana kunci publik

dipublikasikan dan kunci rahasia tetap dirahasiakan

(24)

b. Sistem kriptografi kunci rahasia (secret key cryptography), dalam sistem

kriptografi kunci rahasia yang dikenal juga dengan symmetric cryptosystems,

pihak pengirim dan penerima bersama-sama menyepakati sebuah kunci rahasia

yang akan digunakan dalam proses enkripsi dan dekripsi tanpa diketahui oleh

pihak lain

2.1.3.1 Kriptografi Kunci Rahasia (Secret Key Cryptography)

Kriptografi kunci rahasia merupakan bentuk kriptografi yang lebih tradisional, dimana

kunci tunggal dapat digunakan untuk enkripsi dan dekripsi suatu pesan. Kriptografi

kunci rahasia tidak hanya digunakan untuk enkripsi, tetapi juga untuk otentikasi. Salah

satu teknik untuk pekerjaan ini disebut message authentication codes (MAC).

Masalah utama dengan kriptografi kunci rahasia membuat pengirim dan

penerima pesan setuju atas kunci rahasia yang digunakan tanpa orang lain mampu

mendapatkan dan mengetahuinya. Atau dengan kata lain bagaimana memilih kunci

rahasia yang benar-benar aman. Hal ini membutuhkan suatu metode dimana kedua

pihak dapat berkomunikasi tanpa kekhawatiran akan tercecernya kunci tersebut. Akan

tetapi, keuntungan dari kriptografi kunci rahasia adalah biasanya lebih cepat

dibandingkan dengan kriptografi kunci publik. Metode yang paling umum untuk

kriptografi kunci rahasia adalah block ciphers, stream ciphers, dan message

authentication codes (MAC).

Kunci

enkripsi dekripsi

Gambar 2.3. Model sederhana dari Secret Key Cryptosystem

2.1.3.2 Kriptografi Kunci Publik (Public Key Cryptography)

Kriptografi kunci publik diperkenalkan oleh Whitfield Diffie dan Martin Hellman

pada tahun 1976. Kriptografi kunci publik memiliki dua penggunaan utama, yakni

enkripsi dan tanda tangan digital (encryption and digital signatures). Dalam sistem

(25)

kriptografi kunci publik, masing-masing pihak mendapat sepasang kunci, satu disebut

kunci publik (public key) dan satu lagi disebut kunci rahasia (private key). Kunci

publik dipublikasikan, sementara kunci rahasia tetap dirahasiakan. Keharusan

penggunaan kunci secara bersama antara pengirim dan penerima pesan rahasia

dihilangkan, semua komunikasi hanya melibatkan kunci publik, dan tidak ada kunci

rahasia yang ditransmisikan atau digunakan bersama. Dalam sistem ini, tidak ada lagi

kecurigaan terhadap keamanan dari sistem komunikasi. Satu-satunya kebutuhan

bahwa kunci publik dikaitkan dengan penggunanya dalam lingkup yang saling

mempercayai (contoh dalam suatu trusted directory). Seseorang dapat mengirimkan

pesan rahasia dengan hanya menggunakan informasi yang umum (kunci publik),

tetapi pesan tersebut hanya mungkin didekrip dengan menggunakan kunci rahasia,

dimana satu-satunya yang memiliki kunci rahasia tersebut hanyalah orang yang

diharapkan menerima pesan tersebut. Kriptografi kunci publik tidak hanya digunakan

untuk merahasiakan pesan, tetapi juga untuk otentikasi (tanda tangan digital) dan

teknik lainnya.

Dalam kriptografi kunci publik, kunci rahasia selalu berhubungan secara

matematis terhadap kunci publik. Oleh karena itu, selalu dimungkinkan untuk

menembus (menyerang) sistem kunci publik dengan menurunkan kunci rahasia dari

kunci publik. Biasanya, cara untuk menangkal kemungkinan tersebut adalah membuat

sesulit mungkin untuk menghasilkan kunci privat dari kunci publik. Sebagai contoh,

beberapa kripto sistem kunci publik dibuat sedemikian hingga penurunan kunci

rahasia (privat) dari kunci publik mengharuskan penyerang melakukan faktorisasi

terhadap bilangan yang sangat besar, dalam hal ini sangat sulit untuk melakukan

penurunan. Inilah ide di belakang RSA public-key cryptosystem.

kunci publik kunci pribadi

penerima penerima

enkripsi dekripsi

Gambar 2.4 Model Sederhana dari Public Key Cryptography

(26)

2.1.4 Kategori Cipher Kunci Simetri

Algoritma kunci-simetri mengacu pada metode enkripsi yang dalam hal ini baik

pengirim maupun penerima memiliki kunci yang sama. Algoritma kunci-simetri

modern beroperasi dalam mode bit dan dapat dikelompokkan menjadi dua kategori:

1. Cipher Aliran (Stream Cipher)

Algoritma kriptografi beroperasi pada plaintext dan ciphertext dalam bentuk

bit tunggal, yang dalam hal ini rangkaian bit dienkripsi/didekripsikan bit per bit.

Cipher aliran mengenkripsi satu bit pada setiap kali proses enkripsi.

2. Cipher Blok (Block Cipher)

Algoritma kriptografi beroperasi pada plaintext dan ciphertext dalam bentuk

blok bit, yang dalam hal ini rangkaian bit dibagi menjadi blok-blok bit yang

panjangnya sudah ditentukan sebelumnya. Misalnya panjang blok adalah 64- bit,

maka itu berarti algoritma enkripsi memerlukan 8 karakter setiap kali enkripsi (1

karakter = 8 bit dalam pengkodean ASCII). Cipher blok mengenkripsi satu blok bit

pada setiap kali proses enkripsi.

2.2 Algoritma MMB

2.2.1 Sejarah Singkat MMB

Algoritma MMB (Modular Multiplication-based Block Cipher) pertama kali

diperkenalkan pada tahun 1993 oleh Joan Daemen, Rene Govaerts dan Joos

Vandewalle [10]. Algoritma ini merupakan revisi dari algoritma sebelumnya yakni

algoritma IDEA yang diperkenalkan pada tahun 1991.

Algoritma MMB termasuk ke dalam kriptografi simetri (symmetric

cryptography) yang dikenal juga dengan kriptografi kunci rahasia (secret key

cryptography). Beroperasi dalam mode blok (block cipher), yaitu setiap kali enkripsi

(27)

2.2.2 Spesifikasi Algoritma MMB

Kriptografi algoritma MMB menggunakan plaintext 128 bit dan algoritma

iteratif yang terdiri dari langkah-langkah linier (seperti XOR dan aplikasi kunci) serta

aplikasi paralel dari empat substitusi non linier besar yang dapat dibalik. Substitusi ini

ditentukan oleh sebuah operasi perkalian modulo 232 – 1 dengan faktor konstan.

MMB menggunakan 32 bit subblock text (x0, x1, x2, x3) dan 32 bit subblock kunci (k0,

k1, k2, k3). Hal ini membuat algoritma MMB sangat cocok diimplementasikan pada

prosesor 32 bit. Sebuah fungsi non linier, f, diterapkan enam kali bersama dengan

fungsi XOR.

Algoritma utama dari sistem kr iptografi MMB adalah sebagai berikut :

1. Proses enkripsi : ek(M) = C

2. Proses dekripsi : dk(C) = M

keterangan :

e = adalah fungsi enkripsi

d = adalah fungsi dekripsi

M = adalah pesan terbuka (plaintext)

C = adalah pesan rahasia (ciphertext)

k = adalah kunci enkripsi atau dekripsi

2.2.3 Proses Pembentukan Kunci

Metode MMB menggunakan kunci sepanjang 128 bit. Proses pembentukan

kunci pada metode MMB ini sangat sederhana. Kunci yang di-input hanya dibagi

menjadi 4 buah subblock kunci dengan panjang masing-masing 32 bit.

k0 k1 k2 … k127

k0 k1 … k31 k32 k33 … k63 k64 k65 … k95 k96 k97 … k127

(28)

2.2.4 Proses Enkripsi Algoritma MMB

Enkripsi dilakukan dengan menerapkan transformasi iteratif pada blok-blok plaintext

dengan blok-blok kunci sebagai parameter. Fungsi putaran non-linear f(x) diterapkan

enam kali diantara pekalian modulo. Plaintext dibagi menjadi 4 subblock yang sama

besar (x0, x1, x2, x3).

Lalu, lakukan langkah berikut ini. 1. xi = xi XOR ki

δ : Konstanta tetapan yang digunakan pada proses enkrip dekrip dengan nilai, 2AAAAAAA

(29)

Operasi perkalian yang digunakan merupakan operasi perkalian modulo 232 – 1.

Dengan indeks terkecil adalah modulo 4. Nilai γ1, γ2, γ3 diperoleh dengan cara sebagai

berikut : γ1= 2 * γ

γ2 = 23* γ

γ3 = 27* γ

2.2.5 Proses Dekripsi Algoritma MMB

Proses dekripsi tidak jauh berbeda dengan proses enkripsi. Proses dekripsi dilakukan

dengan membalik urutan proses enkripsi dan melakukan penyesuaian di beberapa

proses. Ciphertext dibagi menjadi 4 subblock yang sama besar (x0, x1, x2, x3).

Lalu, diterapkan langkah-langkah berikut ini. 1. xi = xi XOR ki+2

2. f(x0, x1, x2, x3)

3. xi = xi XOR ki+1

4. f(x0, x1, x2, x3)

5. xi = xi XOR ki

6. f(x0, x1, x2, x3)

7. xi = xi XOR ki+3

8. f(x0, x1, x2, x3)

9. xi = xi XOR ki+2

10. f(x0, x1, x2, x3)

11. xi = xi XOR ki+1

12. f(x0, x1, x2, x3)

13. xi = xi XOR ki

Fungsi f(x1, x2, x3, x4) sebagai berikut:

a. xi = xi-1 XOR xi XOR xi+1

b. Jika LSB (x0) = 1, maka x0 = x0 XOR δ

Jika LSB (x3) = 0, maka x3 = x3 XOR δ

(30)

keterangan :

xi : sub blok Plainteks

ki : sub blok Kunci (key)

δ : Konstanta tetapan yang digunakan pada proses enkrip dekrip dengan nilai, 2AAAAAAA

γ-1

: Konstanta tetapan yang digunakan pada proses enkrip dekrip dengan nilai ,

0DAD4694

2.3 Password Management

Password atau yang biasa sering disebut sebagai kata sandi merupakan salah satu

otentikasi yang diketahui pemakai, dimana pemakai memilih suatu kata kode,

mengingatnya, dan mengetikkannya saat akan mengakses sistem.

Dalam sebuah perusahaan atau bisnis yang bersifat komersial, masalah

pengelolaan password bagi karyawan menjadi cukup signifikan. Perusahaan harus

mengeluarkan biaya tambahan dengan membuat semacam help desk atau support

center untuk menangani kasus pengguna yang lupa passwordnya

Dengan password management pengguna dapat mengatur dan mengatasi

sendiri masalah tersebut. Aplikasi ini membantu seseorang mengelola data username

dan password. Dengan master password yang dapat ditentukan, seseorang cukup

mengingat master password ini. Selanjutnya, semua datanya bisa disimpan ke dalam

database file password manager.

Untuk menjamin keamanan dalam password management, sebaiknya turut

dipertimbangkan juga proses enkripsi password sebelum disimpan, pengamanan akses

menuju tempat disimpannya password tersebut, dan menjamin keamanan proses

validasi sebuah password. Salah satu penerapan yang tepat terhadap sistem password

management adalah dengan menerapkan algoritma kriptografi. Penggunaan

kriptografi simetris, dalam hal ini algoritma Modular Multiplication-based Block

(31)

2.3.1 Konsep Password Management.

Pengelolaan password pada dasarnya mengkombinasikan proses dan teknologi untuk

mengelola dan mengamankan akses menuju informasi/resource sekaligus melindungi

profil identitas pengguna. Setiap pengguna diidentifikasi lalu akses masing-masing

pengguna dikontrol sesuai dengan hak dan batasan yang diberikan. Password

management memiliki kemampuan untuk mengelola hal tersebut tersebut secara

efektif baik untuk pengguna di dalam maupun di luar perusahaan/organisasi

(karyawan, pelanggan, partner bisnis, atau bahkan sebuah aplikasi, pada dasarnya

semua orang atau alat yang hendak berhubungan dengan perusahaan/organisasi).

Banyak definisi yang diberikan oleh para pakar dalam menjelaskan konsep

pengelolaan password. Namun demikian konsep pengelolaan password secara umum

dapat dipandang sebagai suatu cara untuk:

1. Mendefinisikan identitas dari sebuah entitas/obyek (orang,tempat, alat)

2. Menyimpan informasi-informasi yang berkaitan dengan entitas tersebut, seperti

nama/pengenal, dalam sebuah tempat penyimpanan (biasanya direktori aktif)

yang aman, fleksibel, dan dapat disesuaikan.

3. Menjadikan informasi-informasi tersebut dapat diakses melalui beberapa

ketentuan.

4. Menyediakan infrastruktur yang baik, terdistribusi dan memiliki performansi

yang tinggi.

5. Mengatur hubungan antara resource dan entitas/obyek sesuai dengan konteks dan

dalam waktu tertentu.

Untuk mengetahui sejauh mana pentingnya hal ini, seseorang perlu memahami

struktur dari suatu sistem keamanan yang terintegrasi serta teknologi-teknologi yang

terlibat di dalamnya. Ada tiga komponen penting dalam sebuah sistem keamanan

(32)

2.3.2 Penerapan Proses Enkripsi Pada Password

Password dapat disimpan pada workstation yang digunakan pengguna atau server.

Password perlu ditransmisi dalam bentuk tertentu dari workstation yang digunakan

pengguna ke server ketika pengguna pertama kali login dan mungkin akan ditransfer

lagi berikutnya. Tidak banyak yang dapat dilakukan untuk memaksa enkripsi

password atau hashing pada produk server yang ada. Namun, jika kita bertanggung

jawab untuk mengembangkan server atau aplikasi baru yang mengatur passwordnya

sendiri, maka sangat baik bila menyimpan password tersebut menggunakan algoritma

hashing yang dipercaya, seperti MD5 atau SHA. Password ditransmisi dari

workstation ke server mirip halnya dengan subyek ke protokol yang dikembangkan

oleh vendor server. Pada umunya, mainframe, mini-komputer, dan server UNIX

cenderung tidak menggunakan enkripsi secara default, meskipun enkripsi tersedia dari

banyak vendor.

Jika sekuritas password penting dalam suatu perusahaan dan sekuritas fisik

media komunikasi antara pengguna dan sistem tidak dapat dipercaya, maka perlu

untuk mempertimbangkan mekanisme tambahan untuk melindungi sesi login.

Beberapa workstation dapat menyimpan password dan secara otomatis menyediakan

password tersebut ke server ketika pengguna memerlukan akses. Password cache ini

juga memerlukan proteksi kriptografi. Pada beberap kasus, protokol yang disediakan

oleh suatu vendor dapat mengenkripsikan passsword ketika password digunakan

untuk login ke sistem, tetapi tidak ketika perubahan password ditransmisi. Pada kasus

ini, jika manajemen password diterapkan, akan sangat berguna membuat perangkat

lunak untuk mengimplementasikan enkripsinya sendiri daripada menggunakan

enkripsi yang disediakan sistem vendor.

2.4 Flowchart

Flowchart adalah diagram yang menunjukan alur data melalui program atau sistem

penanganan informasi dan operasi-operasi yang dikenakan pada data pada titik-titik

(33)

misalnya segi empat, belah ketupat dan oval untuk menyatakan berbagai operasi.

Garis dan ujung panah menghubungkan lambang-lambang tersebut untuk

menunjukkan arah arus data dari satu titik ke titik lain. Sebagai diagram grafis yang

menunjukkan program atau sistem lainnya, flowchart berguna sebagai sarana

pembantu untuk menunjukkan bagaimana bekerjanya program yang diusulkan dan

sebagai sarana untuk memahami operasi-operasi sebuah program.

Tabel 3.1 Simbol-simbol Flowchart

Simbol Nama Fungsi

TERMINATOR Permulaan/akhir program

GARIS ALIR (FLOW LINE)

Arah aliran program

PREPARATION

Proses inisialisasi/pemberian

Hargaawal

PROCESS Proses perhitungan/proses pengolahan

data

INPUT/OUTPU T DATA

Proses input/output data, parameter,

informasi

PREDEFINED PROCESS

(SUB PROGRAM)

Permulaan sub program/proses

menjalankan sub program

DECISION

Perbandingan pernyataan,

penyeleksian data yang memberikan

(34)

ON PAGE CONNECTOR

Penghubung bagian-bagian Flowchart

yang berada pada satu halaman

OFF PAGE CONNECTOR

Penghubung bagian-bagian Flowchart

(35)

BAB 3

ANALISIS DAN PERANCANGAN

3.1 Analisis

Analisis adalah penguraian dari suatu pembahasan, dalam hal ini pembahasan

mengenai aplikasi keamanan manajemen password menggunakan algoritma

kriptografi MMB (Modular Multiplication-based Block Cipher), yang berguna untuk

mengetahui apa saja yang dapat dijadikan isi dari sebuah aplikasi dan perangkat yang

dapat digunakan dalam perancangan aplikasi yang akan dibuat.

3.1.1 Analisis Masalah

Aplikasi multiuser baik aplikasi berbasis web maupun aplikasi berbasis

desktop saat ini sudah bukan hal baru lagi. Bersifat multiuser berarti memungkinkan

setiap pengguna memiliki hak penggunaan yang berbeda juga memungkinkan setiap

pengguna memiliki barang atau item yang dimiliki secara privat. Di dalam sistem

tersebut, pengguna saling berinteraksi melalui sebuah pengenal untuk

merepresentasikan dirinya. Pengenalan ini lazim disebut identitas pengguna.

Pengertian identitas dalam hal ini lebih ditekankan pada identitas secara digital

atau sering disebut digital identity. Identitas digital merupakan representasi identitas

seseorang yang digunakan untuk berinteraksi dengan orang lain atau mesin dalam

sebuah jaringan terdistribusi. Secara sederhana, identitas digital berupa pasangan ID

(username) dan sebuah authentifikasi rahasia (password).

Password digunakan sebagai salah satu otentikasi yang hanya diketahui oleh

pemakai. Untuk itu, biasanya sebelum kita masuk atau ingin membuka sesuatu yang

(36)

menggunakan password adalah email, messenger, operating system, database, social

network, dokumen, USB, dan hal-hal lain yang memiliki informasi bernilai tinggi.

3.1.2 Penyelesaian Masalah

Setiap pengguna aplikasi tentunya paham akan kerahasiaan identitas digital

tersebut dan menyimpannya seaman mungkin. Bahkan tak jarang pengguna aplikasi

memiliki banya password dan username yang berbeda. Namun, sering terjadi kasus

pengguna lupa username dan password yang dimilikinya. Oleh karena itu, diperlukan

suatu solusi untuk mengatasi kasus seperti ini.

Salah satu solusi yang ingin penulis terapkan adalah pembuatan aplikasi

password manager yang membantu pengguna dalam menyimpan data identitas digital

yang dimilikinya. Aplikasi ini membantu seseorang mengelola data username dan

password. Dengan master password yang dapat ditentukan, seseorang cukup

mengingat master password ini. Selanjutnya, semua datanya bisa disimpan ke dalam

database file password manager.

Untuk menjamin keamanan dalam password management, sebaiknya turut

dipertimbangkan juga proses enkripsi password sebelum disimpan, pengamanan akses

menuju tempat disimpannya password dan username tersebut, menjamin keamanan

proses validasi sebuah password. Salah satu penerapan yang tepat terhadap sistem

password management adalah dengan menerapkan algoritma kriptografi. Penggunaan

kriptografi simetris, dalam hal ini algoritma MMB (Modular Multiplication-based

Block Cipher) diharapkan mampu meningkatkan kemanan data identitas digital

pengguna yang berupa username dan password.

3.1.3 Gambaran Umum Aplikasi

Aplikasi password management yang akan dibangun akan disesuaikan dengan kebutuhan

pengguna dalam menyimpan dan mengamankan password. Implementasi aplikasi

(37)

proses enkripsi dan dekripsi data dengan menggunakan master password sebagai key

(kunci). Gambaran umum aplikasi ini dapat dilihat sebagai berikut.

Aplikasi ini memilik 3 menu utama, yaitu :

1. Menu Database, untuk membuat file baru, membuka file yang telah disimpan

serta menyimpan file data username, password dan url yang akan dienkripsi

2. Menu Data, untuk menambah data, mengubah data dan menghapus data. Pada

menu Data terdapat submenu untuk menyalin (copy) data dan mengganti master

password.

3. Menu Aplikasi, untuk melihat catatan proses enkripsi dan dekripsi data. Pada

menu Aplikasi terdapat submenu Log Aplikasi yang berfungsi untuk melihat

proses enkripsi dan dekripsi aplikasi. Tentang aplikasi fungsinya seperti menu

about pada aplikasi umumnya. Pada menu aplikasi ini juga ada submenu untuk

keluar dari aplikasi.

Dalam pembahasan kriptografi yang sedang dibahas yaitu mengenai penerapan

password manager pada pengamanan data username dan password menggunakan

algoritma kriptografi MMB. Implementasi aplikasi password manager menggunakan

algoritma kriptografi MMB untuk melakukan proses enkripsi dan dekripsi data. Dan

menggunakan master password sebagai kunci (key) proses enkripsi dan dekripsi.

Berikut dibawah ini analisis rancangan dari permasalahan yang sedang dibahas,

(38)

Gambar 3.1 Analisis permasalahan

Dari gambar 3.1 diatas dapat dijelaskan sebagai berikut :

1. Input dan output berupa data-data username, password, dan url.

2. Proses enkripsi dengan algoritma MMB :

a. Username, password, dan url merupakan file yang akan dienkripsi.

b. Enkripsi data, menggunakan enkripsi algoritma MMB dan memasukkan

master password sebagai kunci yang digunakan.

c. Hasil enkripsi disimpan pada file berekstensi *.apm

3. Proses dekripsi dengan MMB

a. Dekripsi data menggunakan algoritma MMB dan master password sebagai

kunci.

b. Hasi dari dekripsi akan ditampilkan seperti data sebelum dienkripsi yaitu data

(39)

3.1.4 Analisis Kebutuhan Perangkat

Berikut dibawah ini perangkat yang dapat mendukung dalam perancangan

aplikasi yang akan dibuat.

3.1.4.1 Perangkat Keras

Perangkat keras yang digunakan dalam pembuatan aplikasi ini adalah sebagai

berikut :

1. Pentium Intel Core 2 duo

2. RAM 512 MB

3. Harddisk 10 GB

4. 1024x768 resolusi monitor dengan 16-bit video card.

3.1.4.2 Perangkat Lunak

Perangkat lunak atau software yang digunakan dalam program aplikasi ini

adalah sebagai berikut :

1. Java (perancangan aplikasi)

2. Windows 7 (sistem operasi)

3.1.5 Penerapan Algoritma MMB

Username Password URL

username1 password1 www.URL-example.com

Tabel 3.1 Contoh Data yang Pada Aplikasi

Sebelum melakukan proses enkripsi dan dekripsi menggunakan data diatas. Aplikasi

akan mengubah format penulisan data tersebut ke bentuk JSON (JavaScript Object

Notation). JSON adalah suatu format ringkas pertukaran data komputer. Formatnya

berbasis teks dan terbaca-manusia serta digunakan untuk merepresentasikan struktur

(40)

Format data yang telah dirubah menjadi seperti berikut ini.

[

{

"username": "username1",

"password": "password1",

"URL": "www.URL-example.com"

}

]

Kemudian jumlah karakter dihitung. Ketika menghitung, abaikan karakter yang

tidak penting. Karakter tersebut hanya berguna untuk mempercantik tampilan. Tanpa

karakter tersebut format JSON tetap valid. Namun penulisannya menjadi satu baris

panjang dan padat, sehingga lebih sulit dibaca. Beberapa karakter tidak penting yaitu

enter, spasi di awal baris sebelum buka kurung kurawal, spasi setelah buka kurung

kurawal, simbol titik dua, simbol koma, spasi sebelum tutup kurung kurawal.

Selanjutnya data akan disusun menjadi format seperti berikut.

<PANJANG>|<JSON setelah membuang karakter tidak penting>

Format data inilah yang akan menjadi plaintext dalam proses enkripsi.

77|[{"username":"username1","password":"password1","URL":

"www.URL-example.com"}]

Algoritma MMB merupakan algoritma enkripsi yang bekerja pada blok

berukuran 128 bit. Dalam setiap prosesnya, blok yang 128 bit ini nantinya dibagi

menjadi 4 sub-blok yang masing-masing berukuran 32 bit.

Karakter yang diproses pada aplikasi adalah karakter ASCII (di mana 1

karakter berukuran 1 byte). Artinya blok yang berukuran 128 bit berisi 16 karakter,

yang nanti dalam prosesnya akan dibagi menjadi 4 sub blok yang berisi 4 karakter

(41)

k0 k1 k2 … k127

k0 k1 … k31 k32 k33 … k63 k64 k65 … k95 k96 k97 … k127

Berdasarkan keterangan diatas, plaintext akan disusun seperti berikut.

77|[{"username":

"username1","pas

sword":"password

1","URL":"www.UR

L-example.com"}]

Plaintext diatas akan diubah ke dalam bentuk biner. Jumlahnya ada 8 blok, di

mana 7 blok pertama berukuran 128 bit dan blok terakhir (blok ke-8) berukuran

kurang dari 128 bit. Agar pas berukuran 128 bit, maka ditambahkan karakter null (0)

sejumlah yang dibutuhkan pada saat data telah dikonversi ke bentuk biner.

3.1.5.1 Proses Pembangkitan Kunci

Proses pembentukan kunci pada metode MMB ini dapat dilihat pada bagan

berikut ini :

Gambar 3.2 Proses Pembentukan Kunci pada Metode MMB

Untuk lebih memahami proses pembentukan kunci pada metode MMB,

diberikan sebuah contoh berikut ini :

Misalkan diketahui input kunci = S1 ILMU KOMPUTER, maka proses

pembentukan kuncinya adalah sebagai berikut :

Kunci = S1 ILMU KOMPUTER

Ubah ke bentuk hexadesimal = 53 31 20 49 4c 4d 55 20 4b 4f 4d 50 55 54 45 52

Ubah ke bentuk biner =

01010011001100010010000001001001 01001100010011010101010100100000

(42)

Dipecah menjadi 4 sub kunci =

k0 = 01010011001100010010000001001001 k1 = 01001100010011010101010100100000 k2 = 01001011010011110100110101010000 k3 = 01010101010101000100010101010010

Kunci diperoleh dari master password dan memiliki panjang 128 bit. Lalu

apabila master password tidak 16 karakter, maka akan diterapkan fungsi hashing pada

master password untuk memperoleh kunci (key) tepat 128 bit atau 16 karakter. Cara

kerja fungsi hashing ini sebagai berikut:

1. Kalau panjang master password adalah 16 karakter, maka tidak ada

perubahan.

2. Kalau panjang master password kurang dari 16 karakter, maka

ditambahkan karakter ASCII = 0  dalam heksa = 00  dalam binary = 0000 0000 sebanyak yang diperlukan agar panjangnya menjadi 16

karakter.

3. Kalau panjang master password lebih dari 16 karakter, maka dibagi

menjadi beberapa bagian berukuran 16 karakter. Selanjutnya

bagian-bagian tersebut di XOR kan (tentunya setiap karakter dikonversi terlebih

dulu ke nilai ASCII-nya sebelum di-XOR).

3.1.5.2 Proses Enkripsi Algoritma MMB

Enkripsi dilakukan dengan menerapkan transformasi iteratif pada blok-blok plaintext

dengan blok-blok kunci sebagai parameter. Fungsi putaran non-linear f(x) diterapkan

enam kali diantara pekalian modulo.

Proses enkripsi pada MMB terdiri dari 13 langkah, yaitu sebagai berikut:

14. xi = xi XOR ki

15. f(x0, x1, x2, x3)

16. xi = xi XOR ki+1

17. f(x0, x1, x2, x3)

18. xi = xi XOR ki+2

(43)

20. xi = xi XOR ki+3

δ : Konstanta tetapan yang digunakan pada proses enkrip dekrip dengan nilai, 2AAAAAAA

γ : Konstanta tetapan yang digunakan pada proses enkripsi dengan nilai, 025F1CDB

Operasi perkalian yang digunakan merupakan operasi perkalian modulo 232 – 1. Nilai

γ

1,

γ

2,

γ

3 diperoleh dengan cara sebagai berikut :

Contoh proses enkripsi algoritma MMB dengan menggunakan data pada table 3.1

ditunjukkan seperti berikut ini :

(44)

Plain ( blok 128- bit) :

Blok plain 0 :

00110111001101110111110001011011 01111011001000100111010101110011 01100101011100100110111001100001 01101101011001010010001000111010

Blok plain 1 :

00100010011101010111001101100101 01110010011011100110000101101101 01100101001100010010001000101100 00100010011100000110000101110011

Blok Plain 2 :

01110011011101110110111101110010 01100100001000100011101000100010 01110000011000010111001101110011 01110111011011110111001001100100

Blok Plain 3 :

00110001001000100010110000100010 01010101010100100100110000100010 00111010001000100111011101110111 01110111001011100101010101010010

Blok Plain 4 :

01001100001011010110010101111000 01100001011011010111000001101100 01100101001011100110001101101111 01101101001000100111110101011101

BLOK PLAI N 0

Langkah 1:x[ i] = x[ i] XOR k[ i]

x0 = x0 XOR k0

= 00110111001101110111110001011011 XOR 01010011001100010010000001001001 = 01100100000001100101110000010010

x1 = x1 XOR k1

= 01111011001000100111010101110011 XOR 01001100010011010101010100100000 = 00110111011011110010000001010011

x2 = x2 XOR k2

= 01100101011100100110111001100001 XOR 01001011010011110100110101010000 = 00101110001111010010001100110001

x3 = x3 XOR k3

= 01101101011001010010001000111010 XOR 01010101010101000100010101010010 = 00111000001100010110011101101000

Langkah 2: x[ i] = f( x[ i] ) x[ i] = gamma[ i] * x[ i]

x[0] = gamma[0] * x[0]

= 00000010010111110001110011011011 * 01100100000001100101110000010010 = 10010011000111011111000111000000

x[1] = gamma[1] * x[1]

= 00000100101111100011100110110110 * 00110111011011110010000001010011 = 01110001110101000110001101111100

x[2] = gamma[2] * x[2]

= 00010010111110001110011011011000 * 00101110001111010010001100110001 = 01111110000110001111100010111101

x[3] = gamma[3] * x[3]

= 100101111100011100110110110000000 * 00111000001100010110011101101000 = 11011000000011001011100011010100

(45)

x[ i] = x[ i- 1] XOR x[ i] XOR x[ i+ 1]

x[0] = x[3] XOR x[0] XOR x[1]

= 11110010101001100001001001111110 XOR 10010011000111011111000111000000 XOR 01110001110101000110001101111100

= 00010000011011111000000011000010 x[1] = x[0] XOR x[1] XOR x[2]

= 00010000011011111000000011000010 XOR 01110001110101000110001101111100 XOR 01111110000110001111100010111101

= 00011111101000110001101100000011 x[2] = x[1] XOR x[2] XOR x[3]

= 00011111101000110001101100000011 XOR 01111110000110001111100010111101 XOR 11110010101001100001001001111110

= 10010011000111011111000111000000 x[3] = x[2] XOR x[3] XOR x[0]

= 10010011000111011111000111000000 XOR 11110010101001100001001001111110 XOR 00010000011011111000000011000010

= 01110001110101000110001101111100

Proses tersebut hanya ditunjukkan untuk 2 langkah awal pada 1 sub blok. Untuk blok

(46)

3.1.5.3 Flowchart Enkripsi MMB

Gambar 3.3 merupakan proses enkripsi MMB :

Plaintext

Dipecah menjadi blok-blok 128 bit

For i= 1 to jumlah blok

Xor (x,0)

F(x)

Xor (x,1)

F(x)

Xor (x,2)

F(x)

Xor (x,3)

F(x)

Xor (x,0)

F(x)

Xor (x,1)

F(x)

Xor (x,2)

X0 , X1, X2, X3 digabung kembali

ciphertext

Selesai Mulai

(47)

Bagan sub proses XOR(x,k) seperti gambar 3.4

For i= 0 to 3

x = xi xor ki

Mulai

Selesai

Gambar 3.4 Sub proses XOR(x,k)

Sedangkan fungsi f(x) diatas dapat digambarkan dalam bentuk bagan seperti gambar

3.5

For i= 0 to 3

Xi = γi * Xi

Mulai

LSB (X0) = 1

LSB (X3) = 0

X0 = X0 xor δ

X3 = X3 Xor δ

ya

tidak

ya

tidak

For i= 0 to 3

Xi = Xi-1 xor Xi xor Xi+1

Selesai

(48)

3.1.5.4 Proses Dekripsi Algoritma MMB

Proses dekripsi tidak jauh berbeda dengan proses enkripsi. Proses dekripsi dilakukan

dengan membalik urutan proses enkripsi dan melakukan penyesuaian di beberapa

proses.

14. xi = xi XOR ki+2

15. f(x0, x1, x2, x3)

16. xi = xi XOR ki+1

17. f(x0, x1, x2, x3)

18. xi = xi XOR ki

19. f(x0, x1, x2, x3)

20. xi = xi XOR ki+3

21. f(x0, x1, x2, x3)

22. xi = xi XOR ki+2

23. f(x0, x1, x2, x3)

24. xi = xi XOR ki+1

25. f(x0, x1, x2, x3)

26. xi = xi XOR ki

Fungsi f(x1, x2, x3, x4) sebagai berikut:

d. xi = xi-1 XOR xi XOR xi+1

e. Jika LSB (x0) = 1, maka x0 = x0 XOR δ

Jika LSB (x3) = 0, maka x3 = x3 XOR δ

f. xi= γi-1 * xi

keterangan :

xi : sub blok Plainteks

ki : sub blok Kunci (key)

δ : Konstanta tetapan yang digunakan pada proses enkrip dekrip dengan nilai, 2AAAAAAA

γ-1: Invers dari konstanta γ dari proses enkripsi yang digunakan untuk proses

(49)

Sebagai contoh, akan ditunjukkan sebagian proses dekripsi metode MMB dengan

menggunakan kunci dan data sebelumnya seperti berikut :

Cipher ( hex) = 2e 45 b6 c4 be 2e 8d 2d c8 dd e5 76 ab 63 07 ec

= 00101110010001011011011011000100 XOR 01001011010011110100110101010000 = 01100101000010101111101110010100

x[1] = x[1] XOR k[3]

= 10111110001011101000110100101101 XOR 01010101010101000100010101010010 = 11101011011110101100100001111111

x[2] = x[2] XOR k[0]

= 11001000110111011110010101110110 XOR 01010011001100010010000001001001 = 10011011111011001100010100111111

x[3] = x[3] XOR k[1]

= 10101011011000110000011111101100 XOR 01001100010011010101010100100000 = 11100111001011100101001011001100

Langkah 2: x[ i] = fI nverse( x[ i] ) x[ i] = x[ i- 1] XOR x[ i] XOR x[ i+ 1]

x[3] = x[2] XOR x[3] XOR x[0]

= 10011011111011001100010100111111 XOR 11100111001011100101001011001100 XOR 01100101000010101111101110010100

= 00011001110010000110110001100111 x[2] = x[1] XOR x[2] XOR x[3]

= 11101011011110101100100001111111 XOR 10011011111011001100010100111111 XOR 00011001110010000110110001100111

(50)

= 01100101000010101111101110010100 XOR 11101011011110101100100001111111 XOR 01101001010111100110000100100111

= 11100111001011100101001011001100 x[0] = x[3] XOR x[0] XOR x[1]

= 00011001110010000110110001100111 XOR 01100101000010101111101110010100 XOR 11100111001011100101001011001100

= 10011011111011001100010100111111

if lsb( x[ 0] ) = = 1, then x[ 0] = x[ 0] XOR delta

lsb(x[0]) = 1, x[0] = x[0] XOR delta

= 10011011111011001100010100111111 XOR 00101010101010101010101010101010 = 10110001010001100110111110010101

if lsb( x[ 3] ) = = 0, then x[ 3] = x[ 3] XOR delta

lsb(x[3]) = 1

x[ i] = gammaI nverse[ i] * x[ i]

x[0] = gammaInverse[0] * x[0]

= 00001101101011010100011010010100 * 10110001010001100110111110010101 = 11000001011001001101000101000111

x[1] = gammaInverse[1] * x[1]

= 11011010110101000110100101000000 *11100111001011100101001011001100

= 01010110110100001011110100010111 x[2] = gammaInverse[2] * x[2]

= 11011010110101000110100101000000 * 01101001010111100110000100100111 = 11101100001000111001111000101001

x[3] = gammaInverse[3] * x[3]

(51)

3.1.5.5 Flowchart Dekripsi MMB

Proses dekripsi algoritma MMB ditunjukkan pada gambar 3.6

Ciphertext

Dipecah menjadi blok-blok 128 bit

For i= 1 to jumlah blok

Xor (x,2)

F(x)-1

Xor (x,1)

F(x)-1

Xor (x,0)

F(x)-1

Xor (x,3)

F(x)-1

Xor (x,2)

F(x)-1

Xor (x,2)

F(x)-1

Xor (x,1)

X0 , X1, X2, X3 digabung kembali

plaintext Mulai

Selesai

(52)

Bagan sub proses XOR (x,k) proses dekripsi algoritma MMB seperti gambar 3.7

For i= 0 to 3

x = xi xor ki Mulai

Selesai

Gambar 3.6 Sub Proses XOR(x,k)

For i= 0 to 3

Xi = Xi-1 xor Xi xor Xi+1 Mulai

LSB (X0) = 1

LSB (X3) = 0

X0 = X0 xor δ

X3 = X3 xor δ

ya

tidak

ya

tidak

For i= 0 to 3

Xi = γi * Xi

Selesai

(53)

3.2 Perancangan Aplikasi

Perancangan aplikasi merupakan bagian dari metodologi pengembangan suatu

perangkat lunak yang dilakukan setelah melalui tahapan analisis. Perancangan

bertujuan untuk memberikan gambaran secara terperinci. Perancangan aplikasi

merupakan tahap lanjutan dari analisis sistem, dimana pada perancangan sistem

digambarkan rancangan sistem yang akan dibangun sebelum dilakukan pengkodean

kedalam suatu bahasa pemrograman.

Pada perancangan aplikasi sistem keamanan manajemen password

menggunakan algoritma kriptografi MMB (Modular Multiplication-based Block

Cipher)., penulis menggunakan empat tahapan perancangan yaitu perancangan

dengan Diagram Pohon (Tree Chart), perancangan dengan FlowChart, dan

perancangan dengan DFD (Data Flow Diagram).

3.2.1 Perancangan Diagram Pohon (Tree Chart)

Adapun diagram pohon untuk Perancangan Aplikasi sistem keamanan manajemen

password menggunakan algoritma kriptografi MMB (Modular Multiplication-based

Block Cipher) ini dapat dilihat pada Gambar 3.9

Menu Utama

Aplikasi

Database

Log Aplikasi Tentang Aplikasi Keluar Baru Buka Simpan Data

Gambar

Tabel 3.1 Simbol-simbol  Flowchart
Gambar 3.1 Analisis permasalahan
Tabel 3.1 Contoh Data yang Pada Aplikasi
Gambar 3.2 Proses Pembentukan Kunci pada Metode MMB
+7

Referensi

Dokumen terkait

Berdasarkan cara memproses teks (plaintext), MMB (Modular Multiplication based Blok cipher) bekerja dengan menggunakan plaintext 128 bit dan algoritma iteratif yang terdiri

Hasil dari pembangunan perangkat lunak ini telah dapat mengimplementasikan algoritma kriptografi Rijndael untuk menjaga keamanan dan kerahasiaan citra digital dengan

Aplikasi pengamanan file audio dengan menerapkan algoritma beaufort cipher dan root 13 telah selesai dirancang dan dapat menjadi solusi bagi pengguna yang

berjudul “Implementasi RC4 Stream Cipher untuk keamanan basis data” dengan tujuannya yaitu “menerapkan algoritma RC4 pada basis data untuk menjaga kerahasiaan dan keamanan pada basisi