• Tidak ada hasil yang ditemukan

IMPLEMENTASI ENKRIPSI DAN DEKRIPSI DOKUMEN MENGGUNAKAN ALGORITMA GOST

N/A
N/A
Protected

Academic year: 2019

Membagikan "IMPLEMENTASI ENKRIPSI DAN DEKRIPSI DOKUMEN MENGGUNAKAN ALGORITMA GOST"

Copied!
114
0
0

Teks penuh

(1)

SKRIPSI

Disusun Oleh :

Heni Pratiwi

NIM : 035314012

JURUSAN TEKNIK INFORMATIKA

FAKULTAS TEKNIK

UNIVERSITAS SANATA DHARMA

YOGYAKARTA

(2)

IMPLEMENTASI ENKRIPSI DAN DEKRIPSI DOKUMEN

MENGGUNAKAN ALGORITMA GOST

SKRIPSI

Diajukan Untuk Memenuhi Salah Satu Syarat

Memperoleh Gelar Sarjana Teknik

Jurusan Teknik Informatika

Disusun Oleh :

Heni Pratiwi

NIM : 035314012

JURUSAN TEKNIK INFORMATIKA

FAKULTAS TEKNIK

UNIVERSITAS SANATA DHARMA

YOGYAKARTA

(3)

IMPLEMENTATION OF DOCUMENTS ENCRYPTION AND

DECRYPTION USING GOST ALGORITHM

A THESIS

Presented as Partial Fulfillment of the Requirements to Obtain theSarjana Teknik Degree

in Department of Informatics Technology

Created by:

Heni Pratiwi

NIM : 035314012

DEPARTMENT OF INFORMATICS TECHNOLOGY

FACULTY OF ENGINEERING

SANATA DHARMA UNIVERSITY

YOGYAKARTA

(4)
(5)
(6)

PERNYATAAN KEASLIAN KARYA

Saya menyatakan dengan sesungguhnya bahwa skripsi yang saya tulis ini tidak

memuat karya atau bagian karya orang lain, kecuali yang telah disebutkan dalam

kutipan dan daftar pustaka, sebagaimana layaknya karya ilmiah.

Yogyakarta, 23 April 2007

Penulis

(7)

Halaman Persembahan

Skripsi ini kupersembahkan untuk :

Tuha n Yesus-ku

sumber kekuatan dan sumber segalanya

yang selalu member kati dan menyer taiku.

Ba pa k da n I buku,

ungkapan r asa hor mat, cinta

dan baktiku

K a ka k - ka ka kku

yang selalu mendukungku dan

mendoakanku

D osen dosenku

yang telah member ikan ilmu pengetahuan

pada saya

Tem a n-tem a nku

yang selalu membantu dan

menyemangatiku

(8)

Halaman M otto

Dekatkan dirimu kepada Tuhan dan serahkanlah segala

kekuatiran, kebencian, dan ketakutanmu. Ia pasti

memeliharamu. (1 Petrus 5:6-7).

Ke rja kanla h se sua tu se c a ra tulus dan waja r, da n

se g a lanya a ka n ba ik. Ke se mpurna a n te rle ta k pa da

motiva si ke rja , buka n pa da pe ke rja a n. (Guru Ching Ha i).

K esengsaraan menimbulkan ketekunan, dan ketekunan

menimbulkan tahan uji, dan tahan uji menimbulkan pengharapan.

(9)

IMPLEMENTASI ENKRIPSI DAN DEKRIPSI DOKUMEN MENGGUNAKAN ALGORITMA GOST

Heni Pratiwi 035314012

ABSTRAKSI

Jika ada data penting yang harus dilindungi kerahasiaannya, maka diperlukan suatu teknik untuk mengamankan data tersebut. Salah satu teknik yang digunakan yaitu dengan melakukan enkripsi. Enkripsi adalah teknik pengkodean data oleh algoritma tertentu yang membuat data tidak bisa dibaca oleh program apa saja tanpa kunci decryption. Enkripsi juga dapat digunakan untuk melakukan proteksi pada saat data ditransmisikan melalui jalur komunikasi. Salah satu teknik enkripsi yang digunakan adalah symmetric encryption, yaitu menggunakan kunci yang sama untuk proses enkripsi dan dekripsi. Kunci simetris (symmetric encryption) yang digunakan merupakan kesepakatan antara pengirim dan penerima pesan.

Dalam tugas akhir ini akan menggunakan Algoritma Gost. Algoritma ini termasuk dalam symmetric encryption. Algoritma ini dapat mengkodekan isi berkas dokumen asli dalam kode-kode tertentu agar tidak bisa dibaca orang lain yang tidak berhak. Algoritma ini merupakan blok cipher 64 bit dengan panjang kunci 256 bit. Pada tugas akhir ini akan menggunakan bahasa pemrograman Delphi. Dalam tugas akhir ini akan mencari kecepatan proses dan rerata rasio ketiga tipe berkas (.txt,.doc,.rtf). Berkas dokumen yang digunakan untuk uji coba berjumlah enam buah dengan berbagai ukuran.

(10)

IMPLEMENTATION OF DOCUMENTS ENCRYPTION AND DECRYPTION USING GOST ALGORITHM

Heni Pratiwi 035314012

ABSTRACT

If any important data that must be protect, then it will be need some technique to save the data. One of technique is encryption. Encryption is data coding of some algorithm which can make the data unreadable without decryption key. Encryption also can protect the data when its transferred in communication network. One of techniques of encryption is symmetric encryption, which using the same key for encryption and decryption processing. But first, sender and receiver have a deal for the key that used for this encryption.

On this final project will use Gost Algorithm. This algorithm include in

symmetric encryption.This algorithm can make some code in original documents which can not read for someone else who don’t have right. This algorithm have 64 cipher block with key length 256 bit. This final project will use Delphi programming language. On this final project will looking for the speed of time and rasio average between three type of documents (.txt,.doc,.rtf). There are six documents that used on this project with various size.

(11)

KATA PENGANTAR

Puji syukur penulis haturkan kepada Tuhan Yang Maha Esa atas segala

karunia dan berkat yang diberikan, sehingga penulis dapat menyelesaikan skripsi

yang berjudul IMPLEMENTASI ENKRIPSI DAN DEKRIPSI DOKUMEN

MENGGUNAKAN ALGORITMA GOST ini dengan baik. Penulisan skripsi ini

merupakan salah satu syarat untuk memperoleh gelar Sarjana Teknik pada

Program Studi Teknik Informatika di Universitas Sanata Dharma.

Selama penulisan skripsi ini penulis telah memperoleh bantuan dan

bimbingan dari berbagai pihak. Oleh karena itu penulis mengucapkan terima kasih

kepada:

1. Ibu A.M. Polina, selaku Ketua Jurusan Teknik Informatika Universitas Sanata

Dharma.

2. Bapak Eko Hari Parmadi selaku dosen pembimbing yang telah banyak

membantu dan membimbing selama penulis mengerjakan tugas akhir ini.

3. Ibu Rita Widiarti dan Bapak Joko Nugroho yang telah memberikan banyak

masukan dan bimbingannya.

4. Bapakku Hadrianus Muryono, Ibuku Margareta Sugiyati, serta kedua

kakakku, Antonius Dwi Murdiyanto dan Agustinus Rinto Sukarno, yang telah

memberikan dorongan baik moril maupun materiil, dan yang selalu

menyemangatiku serta mendoakanku.

5. Mas Fadhal yang telah memberikan banyak latihan dan masukan, juga

(12)

6. Teman-teman terbaikku : Ratih Maharani ”Pigem”, Marcellia Kusuma”,

Kristina Novita Dewi, Antonia Isti Wijayanti.Thanks to be my best friend.

7. Teman-teman TI : Teeka (TI’03), Onezzt (TI’03), Ako (TI’03), Ina (TI’03),

Yansen (TI’03), Monik (TI’03), Mas Radith (TI’02), Mas Meganz (TI’02),

Andhika (TI’02), dan teman-teman lainnya, thanks a lot guys .

8. Teman-teman Alumni SMUN 9: Winda, Narti, Puspa, Dita, Ganjur, Dimas,

Feri, dan teman-teman lainnya atas dukungan serta doanya.

9. My Soulmate : Paulinus Prihnugroho Dwi Yulianto (Alumni TI’00). Terima

kasih atas segala rasa cinta dan kasih sayang yang kamu berikan.I Love You.

10. Semua pihak yang tidak dapat penulis sebutkan satu persatu, yang telah

memberikan dukungan serta bantuannya guna penyusunan skripsi ini

Penulis menyadari sepenuhnya bahwa Tugas Akhir ini masih jauh dari

kesempurnaan dan masih banyak kekurangan. Oleh karena itu penulis sangat

mengharapkan kritik dan saran yang bersifat membangun demi perbaikan lebih

lanjut. Penulis berharap semoga Tugas Akhir ini dapat bermanfaat bagi pembaca.

Yogyakarta, 23 April 2007

(13)

DAFTAR ISI

HALAMAN JUDUL ... i

HALAMAN PERSETUJUAN ... iii

HALAMAN PENGESAHAN ... iv

HALAMAN PERNYATAAN KEASLIAN KARYA... v

HALAMAN PERSEMBAHAN ... vi

HALAMAN MOTTO... vii

ABSTRAKSI ... viii

ABSTRACT ... ix

KATA PENGANTAR ... x

DAFTAR ISI ... xii

DAFTAR GAMBAR ... xv

DAFTAR TABEL ... xvii

BAB I PENDAHULUAN 1.1. Latar Belakang Masalah ... 1

1.2. Rumusan Masalah ... 2

1.3. Batasan Masalah ... 2

1.4. Tujuan Penulisan... 3

1.5. Metodologi Penelitian ... 3

1.5.1. Studi Literatur ... 3

1.5.2. Analisis Sistem... 3

1.5.3. Perancangan Sistem... 4

1.5.4. Pembuatan Program ... 4

1.5.5. Uji Coba Program ... 4

(14)

BAB II LANDASAN TEORI

2.1. Kriptografi ... 6

2.1.1. Algoritma Kriptografi... 7

2.1.2. Blok Cipher... 9

2.1.3. S-Boxes... 10

2.2. Algoritma Gost ... 10

2.2.1 Enkripsi... 16

2.2.2 Dekripsi ... 22

BAB III ANALISIS DAN PERANCANGAN 3.1. Analisis Sistem ... 24

3.1.1. Desain Alur Data... 24

3.1.2. Diagram Alir ... 26

3.2. Analisis Kebutuhan Sistem... 30

3.3. Perancangan (Desain) User Interface ... 30

3.3.1. Desain Splash Screen ... 31

3.3.2. Desain Main Form... 31

3.3.3. Desain Form Enkripsi File... 32

3.3.4. Desain Form Dekripsi File ... 33

3.3.5. Desain Form Bantuan... 34

3.3.6. Desain Form Tentang Aku ... 35

BAB IV IMPLEMENTASI DAN ANALISIS HASIL 4.1. Implementasi User Interface... 36

4.1.1. Form Splash Screen... 36

4.1.2. Main Form ... 37

4.2. Uji Coba Program ... 55

4.3. Hasil Uji Coba ... 57

4.4. Kelebihan dan Kekurangan Program ... 59

4.4.1. Kelebihan... 59

(15)

BAB V PENUTUP

5.1. Kesimpulan ... 61

5.2. Saran... 62

(16)

DAFTAR GAMBAR

Gambar 2.1. Enkripsi dan Dekripsi Sederhana...7

Gambar 2.2. Enkripsi dan Dekripsi dengan Kunci Publik ...9

Gambar 2.3. AlgoritmaGostuntuk Enkripsi ... 12

Gambar 2.3.1. Lanjutan AlgoritmaGostuntuk Enkripsi... 13

Gambar 2.4. AlgoritmaGostuntuk Dekripsi ... 14

Gambar 2.4.1 Lanjutan AlgoritmaGostuntuk Dekripsi...15

Gambar 2.5 Blok Diagram Gost ... 16

Gambar 3.1. Context Diagram... 24

Gambar 3.2. Diagram Zero (Level 0) ... 24

Gambar 3.3. Diagram Zero (Level 1) ... 25

Gambar 3.4. Diagram Zero (Level 2) ... 25

Gambar 3.5. Diagram Alir Inisialisasi Kunci Enkripsi ... 26

Gambar 3.6. Diagram Alir Inisialisasi Kunci Dekripsi... 27

Gambar 3.7. Diagram Alir Baca Data Asli ... 28

Gambar 3.8. Diagram Alir Baca Data telah Dienkripsi ...28

Gambar 3.9. Diagram Alir Tulis Data Asli ... 29

Gambar 3.10. Diagram Alir Tulis Data telah Dienkripsi ... 29

Gambar 3.11. Desain Splash Screen ... 31

Gambar 3.12. Desain Main Form ... 32

Gambar 3.13. Desain Form Enkripsi File ... 33

Gambar 3.14. Desain Form Dekripsi File ... 34

Gambar 3.15. Desain Form Bantuan ... 34

Gambar 3.16. Desain Form Tentang Aku ... 35

Gambar 4.1 Splash Screen... 36

Gambar 4.2 Main Form Gost Encryption... 37

Gambar 4.3 Form Enkripsi File ... 38

Gambar 4.4 Pesan Peringatan Masukkan File dan atau Kunci...38

Gambar 4.5 Pesan Peringatan Kunci Maksimal 32 Karakter ...39

(17)

Gambar 4.7 Pesan Peringatan Spesifikasi File yang Dienkripsi ... 39

Gambar 4.8 Buka File ... 40

Gambar 4.9 Pesan Konfirmasi Hapus File Asli... 40

Gambar 4.10 Pesan Informasi File telah Dihapus ...40

Gambar 4.11 Pesan Informasi Simpan File Hasil Enkripsi... 41

Gambar 4.12 Proses pada Tombol Enkrip ... 41

Gambar 4.13 Dekripsi File ... 46

Gambar 4.14 Pesan Peringatan Masukkan File dan atau Kunci...46

Gambar 4.15 Pesan Peringatan Kunci Maksimal 32 Karakter ...46

Gambar 4.16 Pesan Kesalahan File yang Didekripsi Tidak Ada ... 47

Gambar 4.17 Pesan Peringatan Spesifikasi File yang Didekripsi ... 47

Gambar 4.18 Buka File ... 47

Gambar 4.19 Pesan Informasi Proses Dekripsi Selesai ... 48

Gambar 4.20 Simpan File... 48

Gambar 4.21 Pesan Konfirmasi Melihat Hasil Dekripsi... 48

Gambar 4.22 Proses pada Tombol Dekrip ... 49

Gambar 4.23 Form Bantuan ...54

Gambar 4.24 Form Tentang Aku... 54

Gambar 4.25 Pesan Konfirmasi Keluar Program ... 54

Gambar 4.26 Uji Coba Berkas Tes.txt ... 55

Gambar 4.27 Proses Enkripsi File ... 55

Gambar 4.28 Pesan Konfirmasi Enkripsi Selesai ... 56

Gambar 4.29 Hasil Enkripsi Berkas Tes.gost... 56

Gambar 4.30 Proses Dekripsi File ... 56

Gambar 4.31 Pesan Konfirmasi Dekripsi selesai ... 57

Gambar 4.32 Pesan Konfirmasi Melihat Hasil Dekripsi... 57

(18)

DAFTAR TABEL

Tabel 2.1. Tabel Kebenaran XOR... 10

Tabel 2.2. Round dan Subkey dalam Proses Enkripsi... 22

Tabel 2.3. Round dan Subkey dalam Proses Dekripsi ... 22

Tabel 4.1. Hasil Enkripsi Berkas Dokumen ... 58

(19)

BAB I

PENDAHULUAN

1.1 Latar Belakang Masalah

Perkembangan teknologi sekarang ini memberikan kemudahan agar orang

dapat saling berkomunikasi dan mengirimkan informasi secara cepat. Tetapi

terkadang informasi yang dikirimkan bersifat sangat penting dan harus

dirahasiakan agar informasi tersebut tidak disalahgunakan oleh orang yang tidak

berhak. Seperti pada data-data penting milik negara yang penting dan rahasia, bila

sampai diketahui negara lain, maka dapat membahayakan negara tersebut. Selain

itu, juga pada informasi kartu kredit, bila informasi ini jatuh ke tangan orang

jahat, maka kartu kredit tersebut bisa disalahgunakan dan pemilik kartu kredit

harus bersiap menghadapi naiknya tagihan kartu kreditnya.

Dalam pengiriman informasi bersifat rahasia diperlukan suatu metode yang

disebut kriptografi, yaitu ilmu dan seni penyimpanan pesan secara aman sehingga

informasi tersebut tidak dapat diketahui oleh pihak yang tidak sah. Kriptografi

akan mengonversi data asli (plaintext) ke dalam bentuk data sandi (ciphertext)

yang tidak dapat dikenali untuk menjaga kerahasiaan data. Proses ini disebut

enkripsi. Hasil enkripsi disebutciphertext (teks terenkripsi). Kemudian ciphertext

akan didekripsi dengan kunci yang sama menjadi plaintext kembali. Proses ini

disebut dekripsi.

Metode kriptografi yang digunakan dalam tugas akhir ini yaitu Algoritma

(20)

kunci yang cukup panjang untuk pengamanan data. Algoritma Gost merupakan

algoritmablok cipher dengan menggunakan kunci tunggal (symmetric key).

1.2 Rumusan Masalah

Permasalahan pada penelitian ini adalah bagaimana cara membuat program

enkripsi dan dekripsi dengan menggunakan AlgoritmaGost. Selain itu, bagaimana

mencari rerata waktu dan rerata rasio ketiga tipe berkas (.txt,.doc,.rtf).

1.3 Batasan Masalah

• Program diimplementasikan dengan menggunakan Delphi 7.0.

• Program ini dibuat untuk pemakaiansingle user.

• Kunci yang dipakai tidak disimpan dalam berkas tertentu atau berkas

yang terenkripsi. Jadi jika user salah memasukkan kunci sewaktu

mendekripsi berkas tersebut, maka berkas tidak akan kembali seperti

aslinya.

• Program diimplementasikan untuk mengenkripsi dan mendekripsi

berkas dokumen (.txt, .doc, .rtf).

• Program dibuat di sistem operasi Windows.

• Program akan menyimpan nama berkas hasil enkripsi sama dengan

nama berkas aslinya tetapi berbeda tipe (.gost). Hal ini bertujuan agar

user dapat mengetahui berkas mana yang sudah dienkripsi.

• Program dapat menghapus berkas asli yang telah dienkripsi. Jika user

(21)

menentukan apakah ingin menyimpan nama berkas hasil dekripsi sama

atau berbeda dengan nama berkas asli. Jadi untuk mengetahui berkas

terenkripsi yang telah didekripsi tergantung dari nama berkas yang

dimasukkan user pada proses simpan setelah proses dekripsi.

1.4 Tujuan Penulisan

Tujuan penelitian ini adalah untuk mengimplementasikan Algoritma Gost

untuk mengenkripsi dan mendekripsi berkas dokumen (.txt, .doc, .rtf). Penelitian

ini juga bertujuan untuk mencari rerata waktu dan rerata rasio ketiga tipe berkas.

Perangkat lunak yang dihasilkan diharapkan dapat dipergunakan untuk

melindungi berkas-berkas maupun dokumen rahasia dan penting sehingga tidak

dapat dibaca oleh orang yang tidak berkepentingan.

1.5 Metodologi Penelitian

1.5.1 Studi Literatur

• Mengenal prinsip enkripsi dan dekripsi sebagai pengetahuan dasar

untuk memecahkan permasalahan.

• Mengenal dan memahami AlgoritmaGost dan proses kerjanya.

• Pendalaman pengetahuan tentang program-program Delphi untuk

mendukung pemecahan permasalahan.

1.5.2 Analisis Sistem

Membuat gambaran mengenai data dan proses serta kebutuhan sistem

(22)

1.5.3 Perancangan Sistem

Perancangan meliputi desain form-form yang digunakan beserta

tombol-tombol yang digunakan pada setiap form.

1.5.4 Pembuatan Program

Tahap ini adalah penerapan desain ke dalam bentuk program dengan

memanfaatkan bahasa pemrograman yang ada, yaitu Borland Delphi 7.0.

1.5.5 Uji Coba Program

• Menganalisis apakah program sesuai dengan algoritma yang digunakan

dan dapat berjalan dengan baik untuk mengekripsi dan mendekripsi

berkas dokumen (.txt,.rtf.,doc).

• Menganalisis pengaruh ukuran suatu berkas terhadap waktu proses.

1.6 Sistematika Penulisan

BAB I PENDAHULUAN

Berisi latar belakang masalah, rumusan masalah, batasan masalah,

tujuan penulisan, metodologi penelitian, dan sistematika penulisan.

BAB II LANDASAN TEORI

Berisi tentang pengertian kriptografi, algoritma kriptografi, Algoritma

Gost, dan contoh cara melakukan enkripsi dan dekripsi dengan

menggunakan AlgoritmaGost.

BAB III ANALISIS DAN PERANCANGAN

Berisi tentang perancangan sistem berupa diagram alir enkripsi dan

(23)

rancangan desain user interface, serta dukungan hardware dan software

terhadap program yang telah dibuat.

BAB IV IMPLEMENTASI DAN ANALISIS HASIL

Berisi tentang implementasi perancangan (desain) ke dalam bentuk

program nyata yang dapat dipergunakan secara langsung. Selanjutnya

program akan diuji coba untuk melihat kelebihan dan kekurangannya.

BAB V PENUTUP

Berisi kesimpulan dan saran dari program enkripsi dekripsi

(24)

BAB II

LANDASAN TEORI

2.1 Kriptografi

Kriptografi berasal dari bahasa Yunani yaitu Crypto dan Graphia yang

berarti penulisan rahasia (www.criptography.com). Kriptografi (cryptography)

berarti ilmu dan seni penyimpanan pesan, data, atau informasi secara aman

sehingga informasi tersebut tidak dapat diketahui oleh pihak yang tidak sah.

Kriptografi mentransformasikan data asli (plaintext) ke dalam bentuk data

sandi (ciphertext) yang tidak dapat dikenali untuk menjaga kerahasiaan data.

Ciphertext inilah yang kemudian dikirimkan oleh pengirim (sender) kepada

penerima (receiver). Setelah sampai di penerima, ciphertext tersebut

ditranformasikan kembali ke dalam bentukplaintext agar dapat dikenali.

Proses tranformasi dari plaintext menjadi ciphertext disebut enkripsi

(encryption), sedangkan proses mentransformasikan kembali ciphertext menjadi

plaintext disebut proses dekripsi (decryption) (Iswanti, 2003).

Kriptografi menggunakan suatu algoritma (cipher) dan kunci (key) untuk

mengenkripsi dan mendekripsi data. Cipher adalah fungsi matematika yang

digunakan untuk mengenkripsi dan mendekripsi, sedangkan kunci merupakan

sederetan bit yang diperlukan untuk mengenkripsi dan mendekripsi data. Secara

(25)

Kunci

Gambar 2.1 Enkripsi dan Dekripsi Sederhana

Secara umum, enkripsi dan dekripsi dapat diterangkan sebagai berikut :

EK (M) = C (Proses Enkripsi)

DK (C) = M (Proses Dekripsi)

Pada proses enkripsi, pesan M akan disandikan dengan kunci K sehingga

menghasilkan pesan C. Untuk proses dekripsi, pesan C akan diuraikan dengan

menggunakan kunci K sehingga akan menghasilkan pesan M yang sama seperti

sebelumnya (Iswanti, 2003).

Pesan yang diamankan bergantung pada kunci yang digunakan, dan bukan

pada algoritma yang digunakan. Oleh karena itu, walaupun algoritma-algoritma

yang digunakan tersebut dapat dipublikasikan, namun selama kunci yang dipakai

tidak diketahui, maka pesan tetap tidak bisa dibaca (Kurniawan, 2004).

2.1.1 Algoritma Kriptografi

Berdasarkan kunci yang dipakai, algoritma kriptografi dapat dibedakan

menjadi 2, yaitu :

a. Kunci Tunggal (Symmetric Algorithm)

Algoritma simetris (konvensional) adalah algoritma yang menggunakan

satu kunci yang sama untuk proses enkripsi dan dekripsi. Jika misalkan A ingin

mengirim pesan kepada B, maka pesan tersebut akan dienkrip dengan

Plaintext

Enkripsi Ciphertext Dekripsi

(26)

menggunakan suatu kunci. Jika B menerima pesan tersebut, maka B harus

mendekrip pesan dengan menggunakan kunci yang sama dengan kunci yang

digunakan oleh A. Keuntungan algoritma simetris yaitu memiliki kecepatan

proses enkripsi dan dekripsi jauh lebih cepat daripada menggunakan kunci publik.

Kelemahan kunci simetris yaitu kunci yang digunakan hanya satu, sehingga jika

kunci disergap ditengah jalan atau sudah ditebak orang lain, maka sistem ini sudah

tidak aman lagi (Raharjo, 2002). ContohnyaDES,Gost, IDEA.

Algoritma simetris dibagi menajdi 2 yaitu algoritma aliran (Stream

Ciphers) dan algoritma blok (Block Ciphers). Pada algoritma aliran, proses

penyandiannya berorientasi pada satu bit atau satu byte data. Sedangkan pada

algoritma blok, proses penyandiannya berorientasi pada sekumpulan bit atau byte

data (per blok).

b. Kunci Publik (Public Key Algorithms)

Algoritma kunci umum adalah algoritma yang menggunakan kunci yang

berbeda untuk proses enkripsi dan dekripsinya. Jika A ingin mengirim pesan

kepada B, maka A akan mengenkripsi pesan tersebut dengan menggunakan kunci

publik dari B. Jika B menerima pesan dari A, maka B akan mendekrip pesan

tersebut dengan menggunakan kunci pribadi dari B sendiri. Keuntungan kunci

publik yaitu memberikan jaminan keamanan dalam melakukan pertukaran

informasi karena kunci yang dipublikasikan adalah kunci publik, sedangkan kunci

rahasia tidak pernah disebarkan secara umum. Kunci umum (public key) dapat

(27)

(private key) hanya diketahui oleh pihak yang sah (Raharjo, 2002). Contohnya

RSA, Elgamal, Diffie-Hellman.

Kunci Publik Kunci Private

Gambar 2.2 Enkripsi dan Dekripsi dengan Kunci Publik

2.1.2 BlokCipher

Algoritma blok cipher adalah algoritma yang mempunyai masukan dan

keluaran berupa satu blok dan setiap bloknya terdiri dari banyak bit (misalnya 1

blok terdiri dari 64 atau 128 bit). (Kurniawan, 2004). Sebagian besar algoritma

kunci simetris yang ada menggunakan blok cipher. Iterasi yang digunakan dalam

blokciphersebagian merupakan jaringan Feistel.

Jaringan Feistel merupakan suatu blok cipher dengan struktur tertentu.

Jaringan Feistel dirancang oleh Feistel dan Don Coppersmith. Operasi dasar dari

Jaringan Feistel yaitu :

• Bagi blokplaintext menjadi 2 bagian yang sama (L0,R0).

• Untuk tiap putaran i=1,2,3....n hitung

Li = Ri-1

Ri = Li-1 xor f(Ri-1,Ki)

• f adalah fungsi perputaran dan Ki adalah sub kuncinya.

• Kemudianciphertext(Ln,Rn)

Plaintext

Enkripsi Ciphertext Dekripsi

(28)

• Tanpa memperhatikan fungsi f, dekripsi dapat diselesaikan dengan

Ri-1=Li

Li-1 = Ri xor f(Li, Ki)

• Tabel Kebenaran XOR (Schneier, 1996)

Tabel 2.1 Tabel Kebenaran XOR

A B XOR

0 0 0

0 1 1

1 0 1

1 1 0

2.1.3S-Boxes

Substitution Box (S-box) merupakan komponen dasar dari algoritma kunci

simetris yang digunakan untuk mengaburkan hubungan antara plaintext dengan

ciphertext. Pada umumnya, suatu S-box akan mengambil sejumlah besar inputan

yang berukuran m dan mengubahnya menjadi sejumlah besar bit keluaran n.

dimana m×n tersebut akan dipetakan ke dalam sebuah tabel.

(en.wikipedia.org/wiki/Substitution_box).

2.2 AlgoritmaGost

Gost berasal dari kata Gosudarstvennyi Standard (Standar Pemerintah).

(en.wikipedia.org/wiki/GOST). Gost merupakan blok cipher dari bekas Uni

Sovyet. Gost didesain untuk memodifikasi DES dan mencoba untuk mencapai

(29)

yang lebih mudah dibandingkan dengan DES. Gost tidak menggunakan ekspansi

permutasi seperti yang digunakan DES, melainkan menggunakan rotasi (cyclic

shift rotation) sebanyak 11 bit. Gost mempunyai 4 input dan 4 output S-box,

sehingga jika terjadi perubahan satu inputan akan berpengaruh terhadap satu

S-box dalam satu putaran, dimana hal ini juga akan berpengaruh terhadap putaran

berikutnya. Gost membutuhkan delapan putaran sebelum satu perubahan dari

inputan mempengaruhi setiap output bit. Gost mempunyai panjang kunci lebih

panjang dan dua kali putaran lebih banyak daripada DES. (Schneier, 1996).

Algoritma Gost merupakan blok cipher 64 bit dengan panjang kunci 256 bit.

Algoritma ini mengiterasi algoritma enkripsi sederhana sebanyak 32 putaran

(round) Semakin banyak putaran, semakin sulit di-attack. Algoritma Gost

menggunakan subkunci dan substitution box (S-box). Subkunci dihasilkan dari

256 bit kunci dibagi menjadi delapan bagian yang masing-masing mempunyai 32

bit :

(k32,……...k1) =K1

(k64,…….k33) =K2

…...

(k256,….k225) =K8

Gost mempunyai 8 S-box yang didalamnya terdapat 16 kolom. Setiap putaran

menggunakan subkunci yang berbeda. Berikut Algoritma Gost untuk enkripsi

(30)
(31)
(32)
(33)
(34)

Untuk blok diagramGost dapat dilihat pada gambar 2.5.

32 bit 64 bit 32 bit

K1

+

K2

+

29 putaran lagi

K32

+

32 bit 32 bit

64 bit

Gambar 2.5 Blok DiagramGost

2.2.1 Enkripsi

Proses enkripsi dalam AlgoritmaGostmempunyai beberapa proses yaitu:

1. Inisialisasi kunci enkripsi

Algoritma Gost menggunakan kunci 256 bit. Kemudian kunci akan

dimasukkan ke 8 sub blok kunci yang masing-masing berisi 32 bit. Kunci yang

dimasukkan berupa karakter. Pertama, kunci akan diubah ke dalam kode ASCII

Plaintext

S-Box <<<11

S-Box <<<11

S-Box <<<11

(35)

(American Standard Code for International Interchange). Satu karakter yang

diubah berisi 8 bit (Sukmawan, 2006). Jika kunci yang dimasukkan kurang dari

256 bit (32 karakter), maka sisanya akan diset 0. Setelah semua kunci diubah ke

bentuk biner, kunci akan dimasukkan ke dalam 8 sub blok kunci yang

masing-masing berisi 32 bit. Contoh prosesnya seperti di bawah ini :

Kunci : ab

Konversi kunci ke kode ASCII :

a 97 0 0 0 0 0 0

b 98 0 0 0 0 0 0 0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0

Kunci yang dimasukkan hanya terdapat 2 karakter kunci sedangkan sisanya

diset 0. Kemudian dari ASCII, kunci diubah ke bentuk biner. Setelah semua kunci

diubah ke bentuk biner, kunci akan dimasukkan ke dalam 8 sub blok kunci yang

masing-masing berisi 32 bit.

1 0 1 1 0 0 0 0 1 0 1 1 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

...

...

(36)

2. Baca Data Asli

AlgoritmaGost memerlukan 64 bit data masukan yang akan masuk dalam

proses. Data asli ( plaintext) 64 bit diubah ke kode ASCII. Setelah itu, diubah ke

dalam bentuk biner. Proses penggambarannya seperti contoh berikut :

Data asli : keretaku

Konversi data asli ke biner :

k 107 0 1 1 0 1 0 1 1 t 116 0 1 1 1 0 1 0 0 e 101 0 1 1 0 0 1 0 1 a 97 0 1 1 0 0 0 0 1

r 114 0 1 1 1 0 0 1 0 k 107 0 1 1 0 1 0 1 1

e 101 0 1 1 0 0 1 0 1 u 117 0 1 1 1 0 1 0 1

3. Proses enkripsi data

Proses enkripsi dapat dilakukan bila terdapat data asli dan kunci yang

dimasukkan. Total putaran dalam Algoritma Gost ini berjumlah 32 putaran. Sub

blok kunci (subkey) untuk putaran i adalah Ki. Pada satu putaran ke-i operasinya

adalah sebagai berikut :

pkirii = pkanani-1 , untuk i=1,2,3....32rounds

pkanani = pkirii-1 xor f(pkanani-1,Ki)

Pada bagian penambahan pkanani-1 dengan subkey Ki, terdapat aturan :

if pkanan i-1+Ki < 232 then pkanan i-1+Ki

if pkanan i-1+Ki > 232 then pkanan i-1+Ki -232 (modulus 232)

Fungsi modulus yaitu agar setiap bilangan tidak melebihi 255 (hitungan perbyte)

(37)

Setelah diubah ke bentuk biner, data asli (plaintext) dibagi menjadi 2 yaitu 32

bit bagian kiri, pkiri dan 32 bit bagian kanan, pkanan. Proses enkripsi yang terjadi

pada pkanan mulai dari putaran pertama sampai putaran 32 (terakhir) yaitu tahap

penambahan dengan kunci, substitusi dengan S-box, rotasi bit dan proses XOR.

Hasilnya akan menjadi pkanan yang baru dan pkanan semula menjadi pkiri

(swap). Namun pada proses penggabungan, maka akan dibalik kembali, yaitu

pkanan akan menjadi pkiri dan kiri menjadi pkanan.

Jika data lebih dari 8 byte maka akan diambil 8 byte data berikutnya. Hal ini

dapat dilakukan setelah 8 byte sebelumnya sudah dienkripsi. Proses ini akan

dilakukan hingga semua data sudah dienkripsi semua. Sebagai gambaran dapat

dilihat proses berikut :

Pkiri0: Pkanan0 :

k 107 0 1 1 0 1 0 1 1 t 116 0 1 1 1 0 1 0 0 e 101 0 1 1 0 0 1 0 1 a 97 0 1 1 0 0 0 0 1 r 114 0 1 1 1 0 0 1 0 k 107 0 1 1 0 1 0 1 1

e 101 0 1 1 0 0 1 0 1 u 117 0 1 1 1 0 1 0 1

1) Hsl 1 =pkanan 0+K1

Pkiri1 =pkanan 0

Berikut contoh proses untuk putaran pertama :

pka0 0 1 1 1 0 1 0 0 0 1 1 0 0 0 0 1 0 1 1 0 1 0 1 1 0 1 1 1 0 1 0 1

K 1 1 0 1 1 0 0 0 0 1 0 1 1 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

+

Hsl1 1 1 1 1 0 1 0 1 1 1 0 0 0 0 1 1 0 1 1 0 1 0 1 1 0 1 1 1 0 1 0 1

Setelah dijumlah, maka hasilnya diubah ke bentuk hexadesimal seperti di

(38)

Urutan (Xn) X1 X2 X3 X4 X5 X6 X7 X8

Hsl1 1111 0101 1100 0011 0110 1011 0111 0101

Hexa 15 5 12 3 6 11 7 5

Setelah diubah menjadi hexadesimal, lalu dibagi menjadi delapan bagian

yang masing-masing berisi 4 bit dan setiap bagian menjadi inputS-box

yang berbeda. AlgoritmaGost mempunyai 8 buahS-box, urutan 4 bit

pertama (X1) menjadiS-box pertama, 4 bit kedua (X2) menjadiS-box

kedua, dan seterusnya. Sebagai contoh proses dapat dilihat di bawah ini :

Xn 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15

s-box 1 4 9 10 2 13 8 0 14 6 11 1 12 7 15 5 3

Hasilnya = [X1,s-box1] = [15,3]

2) Output dari 8 S-box kemudian diubah ke bentuk biner kembali dan

dikombinasikan menjadi bilangan 32 bit. Sebagai contoh proses dapat

dilihat di bawah ini :

Hsl1 3 13 6 1 13 5 9 7

Biner 0011 1101 0110 0001 1101 0101 1001 0111

Rotasi 11 bit ke kiri :

3) Hsl=Hsl XOR pkiri 0 dengan hasil di bawah ini :

Biner 0 0 1 1 1 1 0 1 0 1 1 0 0 0 0 1 1 1 0 1 0 1 0 1 1 0 0 1 0 1 1 1 Hsl1 0 0 0 0 1 1 1 0 1 0 1 0 1 1 0 0 1 0 1 1 1 0 0 1 1 1 1 0 1 0 1 1

(39)

4) Hasilnya yaitu Hsl1 menjadi pkanan dan pka0 menjadi pkiri (swap) untuk

proses berikutnya.

pkanan1= Hsl1

pkiri 1=pka 0

Hasil pkanan didapat dari hasil akhir perhitungan dan pkiri didapat dari

pkanan putaran sebelumnya. Bila sudah sampai putaran ke-32 (terakhir),

jika akan ditulis maka hasilnya dibalik, pkanan di bagian kiri dan pkiri di

bagian kanan. Jika masukan kunci(subkey) dan data asli sama seperti yang

dicontohkan sebelumnya, maka hasil akhirnya sebagai berikut:

pkanan32

0 1 0 0 1 0 0 1 1 0 1 1 0 1 0 1 1 0 1 1 1 0 1 1 0 0 1 0 0 0 0 0

pkiri32 :

0 0 0 0 1 0 0 0 0 1 0 0 1 1 0 0 0 0 0 0 1 1 1 1 1 0 0 0 0 0 1 1

4. Tulis data telah dienkripsi

Penulisan data yang telah dienkripsi hampir sama dengan proses

pembacaan. Penulisan data yang telah dienkripsi akan ditulis per byte. Cara

penulisannya karakter pertama yang sudah dienkripsi akan digabung dengan

karakter kedua dan seterusnya. Karakter yang masih berbentuk biner akan

diubah ke bilangan desimal, yang kemudian akan diterjemahkan ke dalam

kode ASCII untuk mendapatkan karakter hasil enkripsinya. Kemudian pkanan

dan pkiri akan digabung menjadi data terenkripsi (Ciphertext) 64 bit. Berikut

(40)

Pkanan32 0 1 0 0 1 0 0 1 1 0 1 1 0 1 0 1 1 0 1 1 1 0 1 1 0 0 1 0 0 0 0 0

ASCII 73 181 187 32

Cipher I µ »

Pkiri32 0 0 0 0 1 0 0 0 0 1 0 0 1 1 0 0 0 0 0 0 1 1 1 1 1 0 0 0 0 0 1 1

ASCII 8 76 15 131

Cipher L

Ciphertext = pkanan32+pkiri32

= Iµ» L

2.2.2 Dekripsi

Proses dekripsi juga mempunyai beberapa proses di bawah ini :

1. Inisialisasi kunci dekripsi

Inisialisasi kunci dekripsi sama dengan kunci enkripsi karena kunci yang

dimasukkan sama(simetris). Kunci yang dimasukkan akan diubah ke dalam kode

ASCII. Kemudian kunci akan dimasukkan ke 8 sub blok kunci yang

masing-masing berisi 32 bit. Setelah dimasukkan ke 8 sub blok kunci 32 bit, maka urutan

kunci yang digunakan (key schedule) dalam proses dekripsi akan dibalik.

Perbandingan urutan sub blok kunci tiap putaran dalam proses enkripsi dan

dekripsi (Schneier, 1996) dapat dilihat pada tabel 2.2 dan tabel 2.3 di bawah ini.

Round 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16

Subkey 1 2 3 4 5 6 7 8 1 2 3 4 5 6 7 8

Round 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32

Subkey 1 2 3 4 5 6 7 8 8 7 6 5 4 3 2 1

(41)

Round 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16

Subkey 1 2 3 4 5 6 7 8 8 7 6 5 4 3 2 1

Round 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32

Subkey 8 7 6 5 4 3 2 1 8 7 6 5 4 3 2 1

Tabel 2.3Round dansubkey dalam Proses Dekripsi

2. Baca data telah dienkripsi

Pembacaan data yang telah dienkripsi sama dengan pembacaan data asli.

Proses penggambarannya seperti contoh berikut :

Data terenkripsi : Iµ » L

Konversi data terenkripsi ke biner :

I 73 0 1 0 0 1 0 0 1 8 0 0 0 0 1 0 0 0

µ 181 1 0 1 1 0 1 0 1 L 76 0 1 0 0 1 1 0 0

» 187 1 0 1 1 1 0 1 1 15 0 0 0 0 1 1 1 1

32 0 0 1 0 0 0 0 0 131 1 0 0 0 0 0 1 1

3. Proses dekripsi data

Proses dekripsi sama dengan enkripsi. Jika kunci yang dimasukkan

sama, urutan sub blok kunci digunakan terbalik, dan masukan data sesuai yang

dicontohkan pada proses enkripsi, maka hasil data asli(plaintext)yang dihasilkan:

Pka32 0 1 1 0 1 0 1 1 0 1 1 0 0 1 0 1 0 1 1 1 0 0 1 0 0 1 1 0 0 1 0 1

Pkiri32 0 1 1 1 0 1 0 0 0 1 1 0 0 0 0 1 0 1 1 0 1 0 1 1 0 1 1 1 0 1 0 1

(42)

Penulisan data asli (data hasil dekripsi) sama dengan data telah dienkripsi.

Berikut hasilnya :

Pka32 0 1 1 0 1 0 1 1 0 1 1 0 0 1 0 1 0 1 1 1 0 0 1 0 0 1 1 0 0 1 0 1

ASCII 107 101 114 101

plain k e r e

Pkiri32 0 1 1 1 0 1 0 0 0 1 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

ASCII 116 97 107 117

plain t a k u

Ciphertext = pkanan32+pkiri32

(43)

BAB III

ANALISIS DAN PERANCANGAN

3.1 ANALISIS SISTEM

3.1.1 Desain Alur Data

Sistem enkripsi dan dekripsi ini dapat dimodelkan dengan

menggunakan DFD (Data Flow Diagram) sebagai berikut :

1. Context Diagram

Gambar 3.1Context Diagram

2. Diagram Zero (Level 0)

(44)

3. Diagram Zero (Level 1)

Gambar 3.3Diagram Zero (Level 1)

4. Diagram Zero (Level 2)

(45)

3.1.2 Diagram Alir

Diagram alir menjelaskan proses yang terjadi dalam sistem kecuali

proses perhitungan algoritma yang digunakan. Diagram alir menjelaskan

proses dalam DFD (Data Flow Diagram) seperti beberapa diagram berikut:

1. Inisialisasi Kunci Enkripsi

(46)

2. Inisialisasi Kunci Dekripsi

(47)

3. Baca Data Asli

Gambar 3.7 Diagram Alir Baca Data Asli

4. Baca Data telah Dienkripsi

(48)

5. Tulis Data Asli

Gambar 3.9 Diagram Alir Tulis Data Asli

6. Tulis Data telah Dienkripsi

(49)

3.2 ANALISIS KEBUTUHAN SISTEM

Kebutuhan hardware dan software untuk membuat dan menguji program :

§ Kebutuhan Hardware :

Pentium III/IV CPU 1,7Ghz

RAM 256 MB

Harddisk 20Gb

Mouse, Keyboard

§ Kebutuhan Software :

Windows 98/XP

Borland Delphi 7.0

3.3 PERANCANGAN (DESAIN) USER INTERFACE

3.3.1 DesainSplash Screen

Form Splash Screen berfungsi sebagai tampilan awal yang muncul hanya

beberapa detik sebelum masuk ke Form Utama. Gambar 3.11 menunjukkan desain

(50)

Gambar 3.11 DesainSplash Screen

3.3.2 Desain Main Form

Main Form berguna untuk memanggil form-form lainnya. Pada Main Form

terdapat beberapa menu, sebagai berikut :

• Enkripsi : Menu Enkripsi untuk memanggil Form Enkripsi.

• Dekripsi : Menu Dekripsi untuk memanggil Form Dekripsi.

• Bantuan : Menu Bantuan yang dapat membantu user dalam

penggunaan program ini.

• Tentang Aku : Menu Tentang Aku berisi keterangan pembuat program.

• Keluar : Menu Keluar untuk keluar dari program. IMAGE DAN TEXT TITLE

TEXT

(51)

IMAGE

Gambar 3.12 Desain Main Form

3.3.3 Desain Form Enkripsi File

Form Enkripsi berfungsi untuk melakukan proses enkripsi. File yang

dienkripsi akan diperoleh dengan menekan tombol Buka disampingnya. Tombol

tersebut yang akan digunakan untuk mencari lokasi dan nama file yang akan

dienkripsi. Kemudian tombol Enkrip jikausertelah memasukkan kunci dan setuju

untuk melakukan enkripsi. Tombol Keluar digunakan untuk menolak atau selesai

melakukan enkripsi. Terdapat kolom waktu dan progres bar untuk menunjukkan

lama proses enkripsi. Terdapat ukuran file untuk menampilkan ukuran file setelah

file dienkripsi. Gambar 3.13 berikut ini adalah gambar desain Form Enkripsi File.

Main Form – GOST Encryption

ENKRIPSI DEKRIPSI BANTUAN TENTANG AKU KELUAR

Nama Jam

Hari, Tgl Copyright 2007

(52)

File yang dienkripsi :

Kunci Enkripsi:

Ukuran file

Gambar 3.13 Desain Form Enkripsi File

3.3.4 Desain Form Dekripsi File

Form Dekripsi berfungsi untuk melakukan proses dekripsi. File yang

didekripsi akan diperoleh dengan menekan tombol Buka disampingnya. Tombol

tersebut digunakan untuk mencari lokasi dan nama file yang akan didekripsi.

Kemudian tombol Dekrip jika user telah memasukkan kunci dan setuju untuk

melakukan dekripsi. Untuk menyimpan file yang telah didekripsi, dapat dilakukan

dengan menekan tombol Simpan dibawahnya. Tombol Keluar digunakan untuk

menolak atau selesai melakukan dekripsi. Terdapat kolom waktu dan progres bar

untuk menunjukkan lama proses dekripsi. Terdapat ukuran file untuk

menampilkan ukuran file setelah file didekripsi. Gambar 3.14 berikut ini adalah

gambar desain Form Dekripsi File.

Waktu

Enkripsi File

Buka

Proses

(53)

Ukuran File

HELP ME PLEASE…!

TEXT File yang didekripsi :

Kunci Dekripsi :

Gambar 3.14 Desain Form Dekripsi File

3.3.5 Desain Form Bantuan

Desain Form Bantuan dapat dilihat pada gambar 3.15 dibawah ini:

Gambar 3.15 Desain Form Bantuan Waktu

Dekripsi File

Buka

Proses

Keluar Dekrip

Simpan

Bantuan

OK

(54)

IMAGE DAN TEXT 3.3.6 Desain Form Tentang Aku

Desain Form Tentang Aku dapat dilihat pada gambar 3.16 dibawah ini:

Gambar 3.16 Desain Form Tentang Aku

Tentang Aku

(55)

BAB IV

IMPLEMENTASI DAN ANALISIS HASIL

4.1 Implementasi User Interface

Implementasi program enkripsi dekripsi menggunakan Algoritma Gost ini

terdiri dari beberapa form yaitu Form Splash Screen, Form Gost Encryption, Form

Enkripsi File, Form Dekripsi File, Form About, dan Form Programmer.

4.1.1 Form Splash Screen

Form ini berada pada awal tampilan program ketika program diklik. Form

ini hanya tampil selama beberapa detik dengan menggunakan timer. Program

yang terdapat pada form ini yaitu:

Tampilan Form ini dapat dilihat pada gambar 4.1

Gambar 4.1 Splash Screen during:=during+1;

if during=7 then

begin

form1.show;

form8.Hide;

end;

(56)

4.1.2 Main Form

Program yang terdapat pada form ini yaitu :

• Program untuk memanggil Form Enkripsi :

Form3.ShowModal;

• Program untuk memanggil Form Dekripsi :

Form4.ShowModal;

• Program untuk memanggil Form Bantuan :

Form5.ShowModal;

• Program untuk memanggil Form Tentang Aku :

Form6.ShowModal;

• Program untuk keluar :

Tampilan Form ini dapat dilihat pada gambar 4.2.

Gambar 4.2 Main Form Gost Encryption

if(messagebox(0,'Anda ingin keluar dari program ?' ,

'Confirmation',MB_YESNO+MB_ICONQUESTION))=IDYES then

postquitmessage(0);

(57)

Form ini mempunyai beberapa menu yaitu :

• Enkripsi : Jika akan melakukan proses enkripsi,userdapat memilih Menu

Enkripsi atau Ctrl-E. Selanjutnya akan muncul Form Enkripsi File.

Sebelum melakukan enkripsi, user terlebih dulu membuka file yang akan

dienkripsi dan memasukkan kunci. Setelah itu,user dapat menekan tombol

Enkrip untuk melakukan enkripsi. Tampilan Form Enkripsi File dapat

dilihat pada gambar 4.3.

Gambar 4.3 Form Enkripsi File

Jika file dan atau kunci belum dimasukkan, maka akan muncul pesan

kesalahan ”Silakan masukkan File dan atau Kunci terlebih dahulu.”

Tampilan pesan kesalahan dapat dilihat pada gambar 4.4.

Gambar 4.4 Pesan Peringatan Masukkan File dan atau Kunci

Jika file sudah dimasukkan namun kunci lebih dari 32 karakter, maka akan

(58)

Gambar 4.5 Pesan Peringatan Kunci Maksimal 32 Karakter

Jika kunci sudah dimasukkan, tetapi file diketik manual dalamtextbox atau

file tidak ada dalam disk, maka akan tampil pesan seperti pada gambar 4.6.

Gambar 4.6 Pesan Kesalahan File yang Dienkripsi Tidak Ada

Jika file yang dimasukkan bukan berekstensi .txt,.doc, dan .rtf, maka akan

tampil pesan pada gambar 4.7 berikut:

Gambar 4.7 Pesan Peringatan Spesifikasi File yang Dienkripsi

Untuk membuka file yang akan dienkripsi, user dapat menekan tombol

Buka. Tombol ini berguna untuk mencari path dari file yang dicari.

(59)

Gambar 4.8 Buka File

Jika proses enkripsi telah selesai, makauser dapat menentukan apakah file

/berkas asli akan dihapus atau tidak. Berikut tampilan Pesan Konfirmasi

pada gambar 4.9.

Gambar 4.9 Pesan Konfirmasi Hapus File Asli

Jika user menentukan bahwa file/berkas asli dihapus, setelah menekan

tombol Yes, maka file akan dibuang ke Recycle Bin. Tampilan pesan

seperti gambar 4.10 di bawah ini.

(60)

Program akan menyimpan file yang telah dienkripsi secara otomatis di

direktori yang sama dengan direktori file asli. Tampilan pesan seperti pada

gambar 4.11 di bawah ini.

Gambar 4.11 Pesan Informasi Simpan File Hasil Enkripsi

Beberapa proses yang terjadi ketika tombol Enkrip diklik :

(61)

Berikut isi program beberapa proses pada tombol Enkrip seperti yang telah

dijelaskan pada bab analisis dan perancangan :

1. Inisialisasi kunci enkripsi

Berikut baris-baris perintah untuk inisialisasi kunci :

2. Baca data asli

Berikut baris-baris perintah untuk baca data asli : isi:=edit2.text;

for i:=1 to 8 do

kunci[i]:='';

j:=1;

for i:=1 to length(edit2.text) do

begin

kodeascii:=ord(isi[i]);

biner:=caribiner(kodeascii);

kunci[j]:=kunci[j]+biner;

if length(kunci[j])=32 then inc(j);

end;

if j<=8 then

begin

for i:=length(kunci[j])+1 to 32 do

kunci[j]:=kunci[j]+'0';

for k:=j+1 to 8 do

kunci[k]:='00000000000000000000000000000000';

(62)

3. Proses enkripsi

Berikut baris-baris perintah untuk mengenkripsi berkas dokumen :

for ulang1:=1 to 3 do

for ulang2:=1 to 8 do

begin

tampung:=pkanan;

biner:=jumlahbinerdankunci(pkanan,kunci[ulang2]);

hexanya:=carihexanya(biner);

for i:=1 to 8 do

hexanya[i]:=sbox[i,hexanya[i]];

pkanan:='';

for i:=1 to 8 do

pkanan:=pkanan+hexatobiner(hexanya[i]);

a:=copy(pkanan,1,11);

b:=copy(pkanan,12,21); long:=now;

for ulang5:=1 to 128 do

begin

gauge1.Progress:=gauge1.Progress+1;

biner:=caribiner(buffer[ulang5]);

plaintext:=plaintext+biner;

if ulang5 mod 8=0 then

begin

(63)

pkanan:=b+a;

hsl:='';

for i:=1 to length(pkanan) do

begin

if pkanan[i]=pkiri[i] then

hsl:=hsl+'0'

else

hsl:=hsl+'1';

end;

pkanan:=hsl;

pkiri:=tampung;

end;

end;

for ulang3:=8 downto 1 do

begin

tampung:=pkanan;

biner:=jumlahbinerdankunci(pkanan,kunci[ulang3]);

hexanya:=carihexanya(biner);

for i:=1 to 8 do

hexanya[i]:=sbox[i,hexanya[i]];

pkanan:='';

for i:=1 to 8 do

pkanan:=pkanan+hexatobiner(hexanya[i]);

a:=copy(pkanan,1,11);//dari bit 1 sebanyak 11 bit

b:=copy(pkanan,12,21); //dari 12 sebanyak 21 bit

pkanan:=b+a;

pkanan:=hsl;

pkiri:=tampung;

(64)

4. Tulis data terenkripsi

Berikut baris-baris perintah untuk menulis data telah dienkripsi ke berkas :

• Dekripsi : Jika akan melakukan proses dekripsi,user dapat memilih Menu

Dekripsi atau Ctrl-D. Selanjutnya akan muncul Form Dekripsi File.

Seperti pada Form Enkripsi File, sebelum melakukan dekripsi, user

terlebih dulu membuka file yang akan didekripsi dan memasukkan kunci

yang sama dengan kunci yang dimasukkan pada saat enkripsi. Setelah itu,

user dapat menekan tombol Dekrip untuk melakukan dekripsi file.

Selanjutnyauser dapat menyimpan hasilnya. Tampilan Form Dekripsi File

dapat dilihat pada gambar 4.13. str1:=pkanan+pkiri;

if (i mod 8=0)or(i=length(str1))then

begin

until (recdata =0)or(recdata<>recdata2);

closefile(buka);

(65)

Gambar 4.13 Dekripsi File

Sama seperti pada Form Enkripsi, jika file dan atau kunci belum

dimasukkan, maka akan muncul pesan kesalahan ”Silakan masukkan File

dan atau Kunci terlebih dahulu.” Tampilan pesan kesalahan dapat dilihat

pada gambar 4.14.

Gambar 4.14 Pesan Peringatan Masukkan File dan atau Kunci

Jika file sudah dimasukkan namun kunci lebih dari 32 karakter, maka akan

muncul tampilan seperti gambar 4.15 di bawah ini :

(66)

Jika kunci sudah dimasukkan, tetapi file diketik dalamtextbox atau file

tidak ada dalam disk, maka akan tampil pesan seperti pada gambar 4.16.

Gambar 4.16 Pesan Kesalahan File yang Didekripsi Tidak Ada

Jika file yang dimasukkan bukan berekstensi .gost, maka akan tampil

pesan pada gambar 4.17 berikut.

Gambar 4.17 Pesan Peringatan Spesifikasi File yang Didekripsi

Untuk membuka file yang akan dienkripsi, user dapat menekan tombol

Buka File. Buka File berguna untuk mencari path dari file yang dicari.

Tampilan Buka File dapat dilihat pada gambar 4.18.

(67)

Jika proses dekripsi telah selesai, maka akan tampil pesan seperti gambar

4.19 di bawah ini :

Gambar 4.19 Pesan Informasi Proses Dekripsi Selesai

Setelah proses dekripsi sudah selesai, maka user dapat menyimpan dengan

menekan tombol Simpan. Tampilan Simpan File seperti pada gambar 4.20.

Gambar 4.20 Simpan File

Jika file sudah tersimpan, maka akan tampil pesan dimana user dapat

memilih apakah ingin melihat file hasil dekripsi saat itu juga atau tidak.

Tampilan Pesan Konfirmasi dapat dilihat pada gambar 4.21 di bawah ini:

(68)

Jika ditekan yes, maka akan ditampilkan isi berkas yang telah didekripsi.

Beberapa proses yang terjadi ketika tombol Dekrip diklik :

(69)

Berikut isi program beberapa proses pada tombol Enkrip seperti yang telah

dijelaskan pada bab analisis dan perancangan :

1. Inisialisasi kunci dekripsi

Berikut baris-baris perintah untuk inisialisasi kunci :

2. Baca data terenkripsi

Berikut baris-baris perintah untuk baca data terenkripsi : isi:=edit2.text;

for i:=1 to 8 do

kunci[i]:='';

j:=1;

for i:=1 to length(edit2.text) do

begin

kodeascii:=ord(isi[i]);

biner:=caribiner(kodeascii);

kunci[j]:=kunci[j]+biner;

if length(kunci[j])=32 then

inc(j);

end;

if j<=8 then

begin

for i:=length(kunci[j])+1 to 32 do //untuk kolom=32

kunci[j]:=kunci[j]+'0';

for k:=j+1 to 8 do //untuk baris=8

kunci[k]:='00000000000000000000000000000000';

(70)

3. Proses dekripsi

Berikut baris-baris perintah untuk mendekripsi berkas dokumen :

for ulang2:=1 to 8 do

begin

a:=copy(pkanan,1,11);//dari bit 1 sebanyak 11 bit

b:=copy(pkanan,12,21); //dari 12 sebanyak 21 bit

pkanan:=b+a;

hsl:='';

for i:=1 to length(pkanan) do

begin

if pkanan[i]=pkiri[i] then repeat

begin

BlockRead(buka,buffer,128,recdata);

plaintext:='';

hit128:=0;

for ulang5:=1 to 128 do

begin

gauge1.Progress:=gauge1.Progress+1;

biner:=caribiner(buffer[ulang5]);

plaintext:=plaintext+biner;

if ulang5 mod 8=0 then

begin

pkiri:=copy(plaintext,1,32);

(71)

hsl:=hsl+'0'

else

hsl:=hsl+'1';

end;

pkanan:=hsl;

pkiri:=tampung;

end;

for ulang1:=1 to 3 do

for ulang3:=8 downto 1 do

begin

a:=copy(pkanan,1,11);//dari bit 1 sebanyak 11 bit

b:=copy(pkanan,12,21); //dari 12 sebanyak 21 bit

pkanan:=b+a;

hsl:='';

for i:=1 to length(pkanan) do

begin

if pkanan[i]=pkiri[i] then

hsl:=hsl+'0'

else

hsl:=hsl+'1';

end;

pkanan:=hsl;

pkiri:=tampung;

(72)

4. Tulis data asli

Berikut baris-baris perintah untuk menulis data telah asli ke berkas :

• Bantuan : Form ini merupakan keterangan yang akan membantu user

dalam menggunakan program ini. Selain itu juga berisi penjelasan singkat

mengenai Algoritma Gostdan bagaimana cara menggunakan program ini.

Tampilan dapat dilihat pada gambar 4.23. str1:=pkanan+pkiri;

if (i mod 8=0)or(i=length(str1))then

begin

until (recdata =0)or(recdata<>recdata2);

closefile(buka);

(73)

Gambar 4.23 Form Bantuan

• Tentang Aku berisi tentang profil dan alamat email pembuat program,

dapat dilihat pada gambar 4.24.

Gambar 4.24 Form Tentang Aku

• Untuk keluar dari program, user dapat memilih Menu Keluar atau

menekan Ctrl-K. Kemudian tampil pesan pada gambar 4.25 di bawah ini.

(74)

4.2 Uji Coba Program

Uji coba program dimaksudkan untuk mengetahui apakah program dapat

bekerja sesuai dengan Algoritma Gost. Hal ini dapat dilakukan dengan cara

membandingkan hasil program dengan hasil di teori. Berikut beberapa langkah

untuk melakukan enkripsi :

a) Membuat berkas .txt seperti gambar 4.26 berikut :

Gambar 4.26 Uji Coba Berkas Tes.txt

b) Membuka program dan menjalankan menu Enkripsi.

c) Tombol Buka ditekan untuk mencari file Tes.txt, lalu masukkan kunci ab.

d) Untuk melakukan enkripsi, tinggal menekan tombol Enkrip. Tampilan

seperti gambar 4.27 di bawah ini :

Gambar 4.27 Proses Enkripsi File

e) Setelah selesai, user dapat memilih apakah berkas asli akan dihapus atau

(75)

Gambar 4.28 Pesan Konfirmasi Enkripsi selesai

f) Membuka berkas hasil enkripsi Tes.gost seperti gambar 4.29 berikut :

Gambar 4.29 Hasil Enkripsi Berkas Tes.gost

g) Gambar di atas menunjukkan bahwa hasil program sama dengan teori.

Berikut beberapa langkah untuk dekripsinya :

a) Membuka program dan menjalankan menu Dekripsi. Tombol Buka

ditekan untuk mencari file Tes.gost, lalu masukkan kunci ab. Untuk

melakukan Dekripsi, tinggal menekan tombol Dekrip. Tampilan seperti

gambar 4.30 di bawah ini.

(76)

Gambar 4.31 Pesan Konfirmasi Dekripsi selesai

b) Menyimpan berkas hasil dekripsi dan diberi nama Tes_1.txt. Membuka

hasil dekripsi secara langsung setelah ada pesan seperti pada gambar 4.32 :

Gambar 4.32 Pesan Konfirmasi Melihat Hasil Dekripsi

c) Hasil dekripsi setelah ditekan Yes:

Gambar 4.33 Hasil Dekripsi Berkas Tes.txt

4.3 Hasil Uji Coba

(77)

Tabel 4.1 Hasil Enkripsi Berkas Dokumen

No Nama Tipe Ukuran asli

1 Testxt1 txt 12232 12232 5.016 2424.098 2 Testxt2 txt 19968 19968 8.177 2441.971

3 Testxt3 txt 162528 162528 64.489 2520.243

4 Testxt4 txt 405872 405872 160.625 2526.829 5 Testxt5 txt 604608 604608 237.823 2542.260 6 Testxt6 txt 887584 887584 348.427 2544.970

137.426 2500.061

7 Tesdoc1 doc 19968 19968 8.088 2468.842

8 Tesdoc2 doc 73728 73728 29.224 2522.857 9 Tesdoc3 doc 162304 162304 64.072 2533.150 10 Tesdoc4 doc 406528 406528 159.911 2542.214 11 Tesdoc5 doc 604672 604672 237.552 2545.430 12 Tesdoc6 doc 887296 887296 348.469 2546.269

141.219 2526.460

13 Tesrtf1 rtf 11488 11488 4.781 2402.844 14 Tesrtf2 rtf 19968 19968 8.083 2467.012

15 Tesrtf3 rtf 162760 162760 64.479 2524.232

16 Tesrtf4 rtf 406488 406488 160.510 2532.477 17 Tesrtf5 rtf 604565 604565 237.879 2541.481 18 Tesrtf6 rtf 886920 886920 348.932 2541.813

137.444 2501.643

Tabel 4.2 Hasil Dekripsi Berkas Dokumen

No Nama Tipe Ukuran

1 Testxt1 gost 12232 12232 4.999 2446.889 2 Testxt2 gost 19968 19968 7.973 2504.452 3 Testxt3 gost 162528 162528 64.485 2520.400 4 Testxt4 gost 405872 405872 160.568 2527.726 5 Testxt5 gost 604608 604608 238.719 2532.718 6 Testxt6 gost 887584 887584 350.088 2535.316

137.276 2510.692

7 Tesdoc1 gost 19968 19968 8.031 2486.365 8 Tesdoc2 gost 73728 73728 29.390 2508.608 9 Tesdoc3 gost 162304 162304 64.438 2518.762 10 Tesdoc4 gost 406528 406528 161.083 2523.717 11 Tesdoc5 gost 604672 604672 237.963 2541.033 12 Tesdoc6 gost 887296 887296 347.687 2551.996

140.432 2520.127

13 Tesrtf1 gost 11488 11488 4.729 2429.266 14 Tesrtf2 gost 19968 19968 7.989 2499.436 15 Tesrtf3 gost 162760 162760 64.968 2505.233 16 Tesrtf4 gost 406488 406488 161.005 2524.691 17 Tesrtf5 gost 604565 604565 238.218 2537.864 18 Tesrtf6 gost 886920 886920 346.75 2557.808

(78)

Dari hasil uji coba dapat dianalisis beberapa hal yaitu :

1. Program Enkripsi Dekripsi Berkas Dokumen dengan Algoritma Gost ini

ternyata telah berjalan sesuai dengan algoritma yang ada dan dapat

berfungsi dengan baik untuk enkripsi dekripsi berkas dokumen bertipe txt,

doc, rtf.

2. Tidak ada perubahan ukuran berkas pada berkas asli baik setelah dikenai

proses enkripsi maupun proses dekripsi.

3. Semakin besar ukuran berkas makin lama pula waktu yang dibutuhkan

untuk proses enkripsi. Demikian pula yang terjadi pada proses dekripsi.

4.4 Kelebihan dan Kekurangan Program

Setelah melakukan uji coba beberapa berkas dokumen ke dalam program,

penulis memperoleh beberapa kelebihan dan kekurangan dari program yang

dibuat.

4.4.1. Kelebihan

Kelebihan program untuk enkripsi dekripsi berkas dokumen menggunakan

AlgoritmaGostini mempunyai beberapa kelebihan, antara lain:

1. Program dapat menampilkan secara langsung hasil proses dekripsi.

2. Program sederhana dan mudah digunakan (user friendly).

3. Program dapat menghapus berkas asli.

4. Program dapat menyimpan secara otomatis berkas hasil proses enkripsi.

(79)

6. Program dapat mengenkripsi dan mendekripsi gambar yang berada dalam

berkas dokumen bertipe doc.

4.4.2. Kekurangan

Program yang telah dibuat mempunyai kelemahan, antara lain:

1. Program hanya dapat mengenkripsi dan mendekripsi berkas dokumen

(.txt,.doc,.rtf) yang berukuran 8bytesdan kelipatannya.

2. Program belum dapat melakukan penyimpanan kunci yang dipakai user

untuk proses enkripsi dan dekripsi.

3. Program belum dapat secara otomatis melakukan pembatalan proses

enkripsi maupun dekripsi bila berkas yang dimasukkan sudah terenkripsi

(80)

BAB V

PENUTUP

5.1 Kesimpulan

Kesimpulan dari pembuatan program enkripsi dekripsi berkas dokumen ini

adalah :

1) Algoritma Gost dapat mengenkripsi dan mendekripsi berkas dokumen

(.txt,.doc,.rtf) dengan benar. Hal ini ditunjukkan dari hasil uji coba yang

sesuai dengan perhitungan manualnya.

2) Program Enkripsi Dekripsi Berkas Dokumen menggunakan Algoritma

Gost dapat berjalan dengan baik untuk mengenkripsi dan mendekripsi

berkas dokumen (.txt,.doc,.rtf). Hal ini menunjukkan bahwa Algoritma

Gostdapat bekerja untuk enkripsi dekripsi berkas dokumen (.txt,.doc,.rtf).

3) Semakin besar ukuran berkas maka semakin lama waktu proses yang

dibutuhkan untuk proses enkripsi maupun dekripsi.

4) Tidak ada perubahan ukuran berkas pada berkas asli baik setelah dikenai

proses enkripsi maupun proses dekripsi.

5.2 Saran

Pembuatan program ini tentunya dapat dikembangkan lebih lanjut untuk

mengatasi beberapa kelemahan dari program ini dan dapat dipergunakan juga

untuk program aplikasi yang besar. Beberapa pengembangan yang dapat

(81)

1) Program dapat melakukan enkripsi dan dekripsi semua tipe dan ukuran

file.

2) Program dapat melakukan enkripsi dekripsi beberapa berkas dokumen

sekaligus yang kemudian disimpan dalam suatu berkas.

3) Program dapat mengetahui kunci yang dimasukkan ketika enkripsi,

sehingga jika pada saat didekripsi, user salah memasukkan kunci, maka

program akan membatalkan proses dekripsi.

4) Program dapat membatalkan proses enkripsi bila berkas yang dimasukkan

sudah terenkripsi. Jadi berkas hanya dapat dienkripsi sebanyak satu kali.

Begitu pula dengan proses dekripsi.

5) Program dapat melindungi berkas yang telah dienkripsi agar tidak dapat

(82)

DAFTAR PUSTAKA

Anonim. Handout Mata Kuliah Rekayasa Perangkat Lunak. FT USD.

Yogyakarta.

Anonim. 2006.http://www.cryptography.com. 2 September 2006.

Anonim. 2006.http://en.wikipedia.org/wiki/Substitution_box. 2 September 2006.

Anonim. 2006.http://en.wikipedia.org/wiki/GOST. 21 September 2006.

Iswanti. 2003. Sistem Keamanan Data dengan Metode Public Key Cryptography.

Penerbit ITB. Bandung.

Kurniawan, Yusuf. 2004. Kriptografi: Keamanan Internet dan Jaringan

Komunikasi. Penerbit Informatika. Bandung.

Madcoms. 2002.Pemrograman Borland Delphi 7. Penerbit Andi. Yogyakarta.

Polina, Agnes Maria, dan Siang, Jong Jek. 2005. Kiat Jitu Menyusun Skripsi

Jurusan Informatika / Komputer. Penerbit Andi. Yogyakarta.

Pranata, Antony. 1997. Pemrograman Borland Delphi 6. Edisi 4. Penerbit Andi.

Yogyakarta.

Raharjo, Budi. 2002. Keamanan Sistem Informasi Berbasis Internet. PT. Insan

(83)

Schneier, Bruce. 1996.Applied Cryptography: Protocols, Algorithms, and Source

Code in C. Second Edition. John Wiley & Sons Inc. United States of

America.

Setiawan, Yudha. 2004.Trik & Tip Delphi. Penerbit Andi. Yogyakarta.

(84)

LAMPIRAN I

HASIL UJI COBA

A. Uji Coba Enkripsi Berkas Dokumen

1) Hasil uji coba enkripsi berkas berekstensi txt

Berkas txt yang dienkripsi antara lain :

o Testxt1.txt (12232bytes)

o Testxt2.txt (19968bytes)

o Testxt3.txt (162728bytes)

o Testxt4.txt (405872bytes)

o Testxt5.txt (604608bytes)

o Testxt6.txt (887584bytes)

(85)
(86)

2) Hasil uji coba enkripsi berkas berekstensi doc

Berkas doc yang dienkripsi antara lain :

o Tesdoc1.doc (19968bytes)

o Tesdoc2.doc (73728bytes)

o Tesdoc3.doc (162304bytes)

o Tesdoc4.doc (406528bytes)

o Tesdoc5.doc (604672bytes)

o Tesdoc6.doc (887296bytes)

(87)
(88)
(89)

3) Hasil uji coba enkripsi berkas berekstensi rtf

Berkas rtf yang dienkripsi antara lain :

o Tesrtf1.rtf (11488bytes)

o Tesrtf2.rtf (19968bytes)

o Tesrtf3.rtf (162760bytes)

o Tesrtf4.rtf (406488bytes)

o Tesrtf5.rtf (604565bytes)

o Tesrtf6.rtf (886920bytes)

(90)
(91)

B. Hasil Uji Coba Dekripsi Berkas Dokumen

1) Hasil uji coba dekripsi berkas berekstensi txt

Berkas txt yang didekripsi antara lain :

o Testxt1.gost (12232bytes)

o Testxt2.gost (19968bytes)

o Testxt3.gost (162728bytes)

o Testxt4.gost (405872bytes)

o Testxt5.gost (604608bytes)

o Testxt6.gost (887584bytes)

(92)
(93)
(94)

2) Hasil uji coba dekripsi berkas berekstensi doc

Berkas doc yang didekripsi antara lain :

o Tesdoc1.gost (19968bytes)

o Tesdoc2.gost (73728bytes)

o Tesdoc3.gost (162304bytes)

o Tesdoc4.gost (406528bytes)

o Tesdoc5.gost (604672bytes)

o Tesdoc6.gost (887296bytes)

(95)
(96)

3) Hasil uji coba dekripsi berkas berekstensi rtf

Berkas rtf yang didekripsi antara lain :

o Tesrtf1.gost (11488bytes)

o Tesrtf2.gost (19968bytes)

o Tesrtf3.gost (162760bytes)

o Tesrtf4.gost (406488bytes)

o Tesrtf5.gost (604565bytes)

o Tesrtf6.gost (886920bytes)

(97)
(98)
(99)

LAMPIRAN II

(100)

LAMPIRAN III

LISTING PROGRAM

Program Splash Screen

unit splash; interface uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

Dialogs, StdCtrls, ExtCtrls, jpeg, ComCtrls, Gauges; type

TForm1 = class(TForm) Label1: TLabel;

procedure Timer1Timer(Sender: TObject);

procedure FormClose(Sender: TObject; var Action: TCloseAction); procedure Timer2Timer(Sender: TObject);

private during:integer; implementation uses menu_utama; {$R *.dfm}

procedure TForm1.Timer1Timer(Sender: TObject); begin

during:=during+1; if during=2 then begin

form2.show; form1.Hide; end; end;

procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction); begin

form1.close; end;

(101)

Program Main Form

unit menu_utama; interface

uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls,

Forms,

Dialogs, Menus, ExtCtrls, ComCtrls, jpeg, StdCtrls; type

TForm2 = class(TForm) MainMenu1: TMainMenu; StatusBar1: TStatusBar; Timer1: TTimer;

Timer2: TTimer; Label1: TLabel; Label2: TLabel; Enkripsi1: TMenuItem; Dekripsi1: TMenuItem; bantu1: TMenuItem;

procedure Timer1Timer(Sender: TObject); procedure Timer2Timer(Sender: TObject); procedure Keluar1Click(Sender: TObject); procedure Enkripsi1Click(Sender: TObject); procedure Dekripsi1Click(Sender: TObject); procedure aku1Click(Sender: TObject); procedure bantu1Click(Sender: TObject); Boolean);

procedure TForm2.Timer1Timer(Sender: TObject); begin

Waktu := TimeToStr(Date);

StatusBar1.Panels[1].Text := FormatDateTime(' dddd, dd mmmm yyyy',

Date) end;

procedure TForm2.Enkripsi1Click(Sender: TObject); begin

Form3.ShowModal; end;

Gambar

Gambar 2.3  Algoritma Gost untuk Enkripsi
Gambar 2.3.1  Lanjutan Algoritma Gost untuk Enkripsi
Gambar 2.4  Algoritma Gost untuk Dekripsi
Gambar 2.4.1  Lanjutan Algoritma Gost untuk Dekripsi
+7

Referensi

Dokumen terkait

Untuk menemukan hubungan pola asuh orang tua, pergaulan teman sebaya dan media televisi terhadap karakter siswa di SMP Negeri 25 Purworejo, dengan unsur pokok kajian seperti

Dengan demikian semakin banyak tekanan gas dinaikkan, maka atom gas yang dialirkan dalam tabung sputtering semakin meningkat dan energi ion-ion Ar yang menumbuki target juga

Sekretariat : Dinas Pekerjaan Umum Kabupaten Klaten Jalan Sulawesi No. Unit Layanan Pengadaan

1. Peserta didik belum terlibat dalam proses pembelajaran, sehingga materi yang diberikan menjadi sulit dipahami oleh siswa dan mengakibatkan hasil belajar

Hal ini dapat disimpulkan bahwa pemberian usaha kesehatan jiwa sekolah yang meliputi 4 jenis kegiatan dapat berpengaruh dalam meningkatkan motivasi belajar siswa SMP

menggunakan zip upload maka otomatis file zip akan diekstraksi, Ini sangat berguna jika kita ingin menguload file yang banyak, yaitu dengan cara memampatkan file-file tersebut ke

Bagi para peserta yang keberatan atas pengumuman pemenang hasil seleksi sederhana tersebut, diberi kesempatan untuk mengajukan sanggahan secara tertulis kepada

Dengan analisa SWOT dan IE-Matrix, disarankan beberapa hal, yaitu: strategi market intensive dilakukan melalui penetrasi pasar dan pengembangan pasar; mengembangkan