• Tidak ada hasil yang ditemukan

BAB 3 PERANCANGAN PROGRAM APLIKASI

N/A
N/A
Protected

Academic year: 2021

Membagikan "BAB 3 PERANCANGAN PROGRAM APLIKASI"

Copied!
38
0
0

Teks penuh

(1)

PERANCANGAN PROGRAM APLIKASI

3.1 Gambaran Umum Perusahaan 3.1.1 Sejarah Perusahaan

Karena diberlakukannya Peraturan Deregulasi di sektor perbankan pada tahun 1986, menyebabkan banyak bermunculan bank-bank baru. Pencetakan formulir perbankan, khususnya cetakan surat-surat berharga pada waktu itu hanya dilaksanakan oleh Perusahaan Umum Percetakan Uang Republik Indonesia (PERUM PERURI). Banyaknya permintaan mengakibatkan dibutuhkannya peran sektor swasta dalam produksi cetakan dokumen berpengaman. Hal inilah yang telah membawa PT. Swadharma Eragrafindo Sarana hadir dalam industri percetakan di Indonesia hingga saat ini.

Pada awalnya, PT. Swadharma Eragrafindo Sarana didirikan sebagai usaha patungan PT. Tri Handayani Utama, PT. Sarana Bersama Pembiayaan Indonesia, dan PT. Dian Rakyat. Secara resmi, PT. Swadharma Eragrafindo Sarana berdiri dengan dibuatnya Akte Notaris Miryam Magdalena, S.H. Nomor 24 tanggal 9 Maret 1988. Hingga saat ini kantor pusat PT. Swadharma Eragrafindo Sarana berdomisili di kawasan industri Pulo Gadung, Jakarta, dan telah memiliki 3 kantor cabang, yaitu di kota Surabaya, Bandung, dan Denpasar.

PT. Swadharma Eragrafindo Sarana merupakan perusahaan percetakan swasta nasional pertama yang mendapat kepercayaan dari pemerintah Indonesia untuk mencetak surat-surat berharga. Hal ini didasarkan pada Sertifikat Ijin Operasi

(2)

Pencetakan Dokumen Sekuriti Nomor 09/1989 yang dikeluarkan oleh Badan Koordinasi Pemberantasan Pemalsuan Uang Dan Dokumen Sekuriti (BOTASUPAL). Dokumen sekuriti merupakan barang berharga yang memiliki nilai materiil dan nilai sosial yang dikandungnya. Oleh sebab itu, rancangan suatu dokumen sekuriti harus dijaga dengan sangat ketat, agar tidak disalahgunakan oleh pihak-pihak yang tidak bertanggung jawab.

Produk yang dicetak oleh perusahaan, dirancang dengan gaya sentuhan artistik seirama dengan perkembangan teknologi canggih yang sarat dengan sistem sekuriti. Dengan demikian, perusahaan dapat memberikan sistem sekuriti yang berkualitas tinggi pada produk-produk yang dihasilkan. Salah satu contoh dari teknologi tersebut adalah

Invisible Image. Invisible Image adalah gambar yang terdapat pada cetakan dokumen

sekuriti, yang hanya dapat dilihat dengan menggunakan alat khusus seperti sinar ultra

violet. Invisible Image dicetak dengan menggunakan tinta khusus yaitu Invisible Ink.

Di samping itu, perusahaan juga selalu berupaya untuk mengembangkan teknologi dalam rangka maksimalisasi kualitas, kuantitas, dan pengamanan produk. Secara periodik, perusahaan juga melakukan riset-riset dengan perusahaan sejenis, baik di dalam maupun di luar negeri.

Contoh produk dokumen sekuriti yang telah dihasilkan oleh perusahaan, di antaranya adalah Kartu Tanda Penduduk (KTP), surat suara Pemilihan Umum, voucher, tiket, cek, ijazah, sertifikat, Surat Keterangan Pajak Daerah (SKPD) dan lain sebagainya. Di samping itu, perusahaan juga memproduksi cetakan-cetakan non sekuriti, di antaranya adalah kalender, brosur, poster, kartu nama dan lain sebagainya.

(3)

3.1.2 Struktur Organisasi Perusahaan

Untuk mencapai tujuannya, perusahaan telah menciptakan suatu manajemen yang baik dan teratur. Hingga 31 Desember 2006, jumlah karyawan PT. Swadharma Eragrafindo Sarana telah mencapai 159 orang.

Adapun struktur organisasi PT. Swadharma Eragrafindo Sarana adalah sebagai berikut.

Gambar 3.1 Struktur Organisasi PT. Swadharma Eragrafindo Sarana Sumber : Company Profile PT. Swadharma Eragrafindo Sarana (2006)

3.1.3 Permasalahan Yang Dihadapi Perusahaan

PT. Swadharma Eragrafindo Sarana memiliki 3 kantor cabang di luar kota Jakarta, yaitu di kota Surabaya, Bandung, dan Denpasar. Namun, pada ketiga kantor cabang tersebut tidak terdapat mesin pencetak dokumen sekuriti. Ketiga kantor cabang tersebut, hanya memiliki mesin-mesin cetak dokumen non sekuriti. Mesin-mesin pencetak dokumen sekuriti hanya terdapat di kantor pusat yang berdomisili di kota Jakarta. Hal ini disebabkan karena dibutuhkan biaya yang cukup besar untuk membeli mesin-mesin pencetak dokumen sekuriti tersebut. Ketiga kantor cabang tersebut hanya

(4)

membuat rancangan dokumen sekuriti yang diminta oleh pelanggan dan kemudian dicetak di Jakarta.

Selama ini, proses pengiriman file hasil rancangan yang dibuat pada kantor cabang ke kantor pusat di kota Jakarta dilakukan secara manual. File hasil rancangan dokumen sekuriti tersebut disimpan dalam suatu media penyimpanan file, seperti CD atau flashdisk. Kemudian file tersebut, dibawa ke Jakarta oleh salah seorang karyawan kantor cabang dengan menggunakan sarana transportasi. Hal ini tidaklah efisien, karena membutuhkan waktu yang cukup lama dan biaya yang cukup besar untuk melakukan pengiriman file rancangan tersebut.

Perusahaan tidak pernah melakukan proses pengiriman file rancangan dokumen sekuriti melalui jaringan komputer. Hal ini disebabkan karena perusahaan takut file rancangan dokumen sekuritinya bocor dan disalahgunakan oleh pihak-pihak yang tidak bertanggung jawab. Padahal dengan menggunakan jaringan komputer, proses pengiriman file rancangan dokumen sekuriti dapat dilakukan dengan jauh lebih cepat dan murah.

3.1.4 Usulan Pemecahan Masalah

Dengan memperhatikan permasalahan yang ada yaitu kebutuhan akan sistem pengamanan file rancangan dokumen sekuriti dan berdasarkan pengamatan di atas, maka pemecahan masalahnya adalah dengan merancang suatu program aplikasi kriptografi untuk PT. Swadharma Eragrafindo Sarana. Aplikasi tersebut, akan mengenkripsi file rancangan dokumen perusahaan. Dengan demikian, perusahaan dapat merasa aman untuk melakukan pengiriman file rancangan dokumen melalui jaringan komputer. Di samping itu, tingkat keamanan file rancangan dokumen menjadi berlipat ganda.

(5)

3.2 Perancangan Program 3.2.1 Struktur Menu

Program aplikasi kriptografi yang dirancang memiliki struktur hirarki di mana terdapat 4 sub menu dari menu utamanya. Bentuk struktur menu program aplikasi kriptografi yang dirancang dapat digambarkan sebagai berikut.

Gambar 3.2 Rancangan Struktur Menu Utama

3.2.2 State Transition Diagram (STD)

Perpindahan state setelah dilakukan sebuah event atau action pada rancangan program aplikasi kriptografi ini, dijelaskan lebih lanjut menggunakan State Transition

Diagram (STD). Di bawah ini adalah STD rancangan dari setiap modul yang terdapat

dalam program aplikasi kriptografi yang dibuat. Menu Utama

Kriptografi

Bitmap

Kriptografi

Text

Update File Kunci

Kriptografi

(6)

A STD Menu Utama

Menu Utama Kriptografi Bitmap

Kriptografi Text

Update File Kunci

Kriptografi

Help

Klik Sembarang Tempat Di Luar Menu Utama Tampilkan Pilihan Menu Utama

Klik Menu "Kriptografi Text" Tampilkan Pilihan Kriptografi Text

Klik Menu "Kriptografi Bitmap" Tampilkan Pilihan Kriptografi Bitmap

Klik Menu "Help" Tampilkan Pilihan Menu Help Klik Menu "Update File Kunci Kriptografi" Tampilkan Pilihan Update File Kunci Kriptografi

Klik Sembarang Tempat Di Luar Menu Utama Tampilkan Pilihan Menu Utama

(7)

B STD Menu Kriptografi Bitmap

Kriptografi Bitmap

Exit

Enkripsi Dekripsi

Klik Pilihan "Enkripsi" Tampilkan Mode Enkripsi

Klik Sembarang Tempat Di Dalam Menu "Kriptografi Bitmap" Tampilkan Pilihan Menu Kriptografi Bitmap

Klik Pilihan "Dekripsi" Tampilkan Mode Dekripsi

Klik Sembarang Tempat Di Dalam Menu "Kriptografi Bitmap" Tampilkan Pilihan Menu Kriptografi Bitmap Klik Pilihan "Exit"

Ke Luar Dari Program

Browse Save As Run

Clear All

Klik Pilihan "Browse" Tampilkan Dialog Box Open File Input

Klik Pilihan "Browse" Tampilkan Dialog Box Open File Input Klik Pilihan "Clear All"

Reset Semua Komponen Pada Layar Menu Kriptografi Bitmap

Klik Pilihan "Save As" Tampilkan Dialog Box Save File Output

Klik Pilihan"Run" Jalankan Proses Enkripsi Atau Dekripsi

(8)

C STD Menu Kriptografi Text

Kriptografi Text

Exit

Enkripsi Dekripsi

Klik Pilihan "Enkripsi" Tampilkan Mode Enkripsi

Klik Sembarang Tempat Di Dalam Menu "Kriptografi Text" Tampilkan Pilihan Menu Kriptografi Text

Klik Pilihan "Dekripsi" Tampilkan Mode Dekripsi

Klik Sembarang Tempat Di Dalam Menu "Kriptografi Text" Tampilkan Pilihan Menu Kriptografi Text Klik Pilihan "Exit"

Ke Luar Dari Program

Browse Save As Run

Clear All

Klik Pilihan "Browse" Tampilkan Dialog Box Open File Input

Klik Pilihan "Browse" Tampilkan Dialog Box Open File Input Klik Pilihan "Clear All"

Reset Semua Komponen Pada Layar Menu Kriptografi Text

Klik Pilihan "Save As" Tampilkan Dialog Box Save File Output

Klik Pilihan "Run" Jalankan Proses Enkripsi Atau Dekripsi

(9)

D STD Menu Update File Kunci Kriptografi

Update File Kunci

Kriptografi

Update File Exit

Klik Pilihan "Update File" Jalankan Modul Update File

Klik Sembarang Tempat Di Dalam Menu "Update File Kunci Kriptografi" Tampilkan Pilihan Menu Update File Kunci Kriptografi

Klik Pilihan "Exit" Ke Luar Dari Program

Clear All

Klik Pilihan "Clear All"

Reset Semua Komponen Pada Layar

Klik Pilihan "Exit" Ke Luar Dari Program

Gambar 3.6 STD Menu Update File Kunci Kriptografi

E STD Menu Help

Help

Exit

Klik Pilihan "Exit" Ke Luar Dari Program Klik Sembarang Tempat Di Dalam Menu "Help"

Tampilkan Menu Help

(10)

3.2.3 Rancangan Layar

Rancangan layar yang terdapat pada program aplikasi kriptografi ini terdiri dari 4 bagian besar sebagai berikut.

Layar Menu Kriptografi Bitmap.

Layar Menu Kriptografi Text.

Layar Menu Update File Kunci Kriptografi.

Layar Menu Help.

Menu-menu tersebut ditampilkan dalam bentuk tab sheet. Untuk masuk ke dalam tiap-tiap menu, user dapat mengklik tab sheet menu yang tersedia pada layar.

(11)

A Layar Menu Kriptografi Bitmap

Program Kriptografi PT. Swadharma Eragrafindo Sarana Gambar

Logo Perusahaan

Nama Perusahaan

Kriptografi Bitmap Kriptografi Text Update File Kunci Kriptografi Help

Mode Tombol "Browse" Radio Button "Enkripsi" Radio Button "Dekripsi" Tombol "Run" Tombol "Clear All" Tombol "Save As" Kunci Input p : Input a : Input nA : Input b :

Edit box "input p" Edit box "input a" Edit box "input b" Edit box "input nA" Progress Bar

File

Plain Image : Ciphertext :

Edit box "Plain Image" Edit box "Chipertext"

Kotak Gambar Tombol "Full View" Tombol "Exit" Check Box "Stretch Image"

(12)

Layar Menu “Kriptografi Bitmap” adalah layar yang pertama kali muncul begitu program aplikasi dijalankan. Pada bagian atas layar, terdapat nama dan gambar logo perusahaan. Selain itu terdapat beberapa tab sheet untuk masuk ke menu-menu lain.

Pada menu “Kriptografi Bitmap”, user dapat melakukan proses enkripsi dan dekripsi file gambar bitmap. Suatu file gambar bitmap akan dienkripsi menjadi suatu file teks (ciphertext). Dan kemudian file ciphertext tersebut dapat didekripsi kembali menjadi file gambar bitmap seperti semula. Fungsi setiap komponen pada layar tersebut adalah sebagai berikut.

Radio Button “Enkripsi“ berfungsi untuk memilih mode enkripsi.

Radio Button “Dekripsi“ berfungsi untuk memilih mode dekripsi.

Tombol “Browse” berfungsi untuk memasukkan nama file gambar yang akan

dienkripsi ataupun nama file ciphertext yang akan didekripsi.

Tombol “Save As” berfungsi untuk memasukkan nama file ciphertext hasil dari

enkripsi suatu file gambar. Tombol ini juga berfungsi untuk memasukkan nama

file gambar hasil dari dekripsi file ciphertext.

Tombol “Clear All” berfungsi untuk me-reset ulang semua komponen yang ada

pada layar.

Tombol “Run” berfungsi untuk menjalankan proses enkripsi atau dekripsi.

Tombol “Full View” berfungsi untuk menampilkan gambar yang terdapat pada

layar secara utuh.

Progress Bar berfungsi untuk memberitahu kepada user seberapa jauh proses

(13)

Edit box “input p” berfungsi untuk meng-input kunci p ketika user akan

melakukan proses dekripsi.

Edit box “input a” berfungsi untuk meng-input kunci a ketika user akan

melakukan proses dekripsi.

Edit box “input b” berfungsi untuk meng-input kunci b ketika user akan

melakukan proses dekripsi.

Edit box “input nA” berfungsi untuk meng-input kunci nA ketika user akan

melakukan proses dekripsi.

Edit box “Plain Image” berfungsi untuk menampilkan nama file gambar.

Edit box “Ciphertext” berfungsi untuk menampilkan nama file ciphertext.

• Kotak gambar berfungsi untuk menampilkan gambar yang akan dienkripsi

ataupun gambar hasil proses dekripsi.

Check Box “Stretch Image” untuk memperbesar atau memperkecil gambar

sedemikian sehingga gambar dapat terlihat secara utuh sebesar ukuran kotak gambar.

Tombol “Exit” berfungsi untuk ke luar dari program.

Jika terjadi kesalahan peng-input-an, maka akan muncul sebuah dialog box yang akan memberitahu user kesalahan apa yang terjadi. Di samping itu, setelah proses enkripsi selesai dilakukan, akan muncul sebuah dialog box yang menampilkan lamanya

waktu proses enkripsi serta nilai kunci p, a, b, dan nA. Kunci-kunci ini berfungsi untuk

mendekripsikan file yang telah dienkripsi tersebut.

Apabila user selesai melakukan proses dekripsi, akan muncul dialog box yang menampilkan lamanya waktu proses dekripsi yang dilakukan.

(14)

B Layar Menu Kriptografi Text

Program Kriptografi PT. Swadharma Eragrafindo Sarana Gambar

Logo Perusahaan

Nama Perusahaan

Kriptografi Bitmap Kriptografi Text Update File Kunci Kriptografi Help

Mode Tombol "Browse" Radio Button "Enkripsi" Radio Button "Dekripsi" Tombol "Run" Tombol "Clear All" Tombol "Save As" Kunci Input p : Input a : Input nA : Input b :

Edit box "input p" Edit box "input a" Edit box "input b" Edit box "input nA" Progress Bar

File

Plaintext : Ciphertext :

Edit box "Plaintext" Edit box "Chipertext"

Tombol

"Exit"

Gambar 3.9 Rancangan Layar Menu Kriptografi Text

Untuk masuk ke dalam menu “Kriptografi Text”, user tinggal mengklik tab sheet “Kriptografi Text”. Pada menu “Kriptografi Text”, user dapat melakukan proses enkripsi

(15)

dan dekripsi file teks. Fungsi setiap komponen pada layar tersebut adalah sebagai berikut.

Radio Button “Enkripsi“ berfungsi untuk memilih mode enkripsi.

Radio Button “Dekripsi“ berfungsi untuk memilih mode dekripsi.

Tombol “Browse” berfungsi untuk memasukkan nama file plaintext yang akan

dienkripsi ataupun nama file ciphertext yang akan didekripsi.

Tombol “Save As” berfungsi untuk memasukkan nama file ciphertext hasil dari

enkripsi suatu file plaintext. Tombol ini juga berfungsi untuk memasukkan nama

file plaintext hasil dari dekripsi suatu file ciphertext.

Tombol “Clear All” berfungsi untuk me-reset ulang semua komponen yang ada

pada layar.

Tombol “Run” berfungsi untuk menjalankan proses enkripsi atau dekripsi.

Progress Bar berfungsi untuk memberitahu kepada user seberapa jauh proses

yang sudah dijalankan oleh program aplikasi.

Edit box “input p” berfungsi untuk meng-input kunci p ketika user akan

melakukan proses dekripsi.

Edit box “input a” berfungsi untuk meng-input kunci a ketika user akan

melakukan proses dekripsi.

Edit box “input b” berfungsi untuk meng-input kunci b ketika user akan

melakukan proses dekripsi.

Edit box “input nA” berfungsi untuk meng-input kunci nA ketika user akan

melakukan proses dekripsi.

(16)

Edit box “Ciphertext” berfungsi untuk menampilkan nama file ciphertext.

Tombol “Exit” berfungsi untuk ke luar dari program.

Jika terjadi kesalahan peng-input-an, maka akan muncul sebuah dialog box yang akan memberitahu user kesalahan apa yang terjadi. Di samping itu, setelah proses enkripsi selesai dilakukan, akan muncul sebuah dialog box yang menampilkan lamanya

waktu proses enkripsi serta nilai kunci p, a, b, dan nA. Kunci-kunci ini berfungsi untuk

mendekripsikan file yang telah dienkripsi tersebut.

Sedangkan apabila user selesai melakukan proses dekripsi, akan muncul suatu

(17)

C Layar Menu Update File Kunci Kriptografi

Program Kriptografi PT. Swadharma Eragrafindo Sarana Gambar

Logo Perusahaan

Nama Perusahaan

Kriptografi Bitmap Kriptografi Text Update File Kunci Kriptografi Help

Batas p Tombol "Update File" Tombol "Clear All" Keterangan p : Edit box "p"

Edit box "a" Edit box "b"

Progress Bar Group Box "Hasil"

Jumlah kombinasi p, a, dan b yang didapat : Jumlah titik terbanyak pada p = 283 :

Tombol

"Exit"

Input p awal : Input p awal :

Edit box "p awal"

a : b :

Edit box "p akhir"

Jumlah titik tersedikit pada p = 283 :

Gambar 3.10 Rancangan Layar Menu Update File Kunci Kriptografi

Untuk masuk ke dalam menu “Update File Kunci Kriptografi”, user tinggal mengklik tab sheet “Update File Kunci Kriptografi”. Pada menu “Update File Kunci Kriptografi”, user dapat mengupdate file teks yang bernama “kombinasi_kunci_pab.txt”.

(18)

File tersebut berisi kombinasi kunci p, a, dan b yang dapat membentuk 256 titik pada

persamaan kurva elliptic. Ke 256 titik ini akan merepresentasikan 256 jenis karakter pada ASCII. Kombinasi kunci p, a, dan b yang terdapat dalam file “kombinasi_kunci_pab.txt” ini nantinya akan digunakan dalam proses enkripsi suatu

file.

Sedangkan fungsi setiap komponen pada layar menu ini adalah sebagai berikut. • Edit box “p awal” berfungsi untuk memasukkan batas p awal. Batas p awal ini

telah ditentukan, yaitu sebesar 227. Hal ini disebabkan karena pada p yang kurang 227, tidak ditemukan kombinasi kunci p, a, dan b yang dapat membentuk 256 titik pada persamaan kurva elliptic.

Edit box “p akhir” berfungsi untuk memasukkan batas p akhir. Nilai p akhir yang

boleh diinput adalah mulai dari 227 sampai dengan 283. Hal ini disebabkan karena pada p yang kurang dari 227 dan lebih besar dari 283, tidak ditemukan kombinasi kunci p, a, dan b yang dapat membentuk 256 titik pada persamaan kurva elliptic. Semakin besar nilai p akhir yang diinput, maka jumlah kombinasi yang didapatkan akan semakin banyak.

Tombol “Clear All” berfungsi untuk me-reset ulang semua komponen yang ada

pada layar.

Tombol “Update File” berfungsi untuk menjalankan proses update file

“kombinasi_kunci_pab.txt”.

Progress Bar berfungsi untuk memberitahu kepada user seberapa jauh proses update file yang sudah dijalankan oleh program aplikasi.

(19)

Edit box “p” berfungsi untuk menampilkan kunci p yang sedang dihitung ketika

proses update file sedang berjalan.

Edit box “a” berfungsi untuk menampilkan kunci a yang sedang dihitung ketika

proses update file sedang berjalan.

Edit box “b” berfungsi untuk menampilkan kunci b yang sedang dihitung ketika

proses update file sedang berjalan.

Group box “Hasil” berfungsi untuk menampilkan keterangan mengenai jumlah

kombinasi kunci yang didapatkan, jumlah titik tersedikit dan terbanyak pada bilangan p prima yang terakhir didapat.

Tombol “Exit” berfungsi untuk ke luar dari program.

Jika terjadi kesalahan peng-input-an, maka akan muncul sebuah dialog box yang akan memberitahu user kesalahan apa yang terjadi. Di samping itu, setelah proses

update file kunci kriptografi selesai dilakukan, akan muncul sebuah dialog box yang

(20)

D Layar Menu Help

Program Kriptografi PT. Swadharma Eragrafindo Sarana Gambar

Logo Perusahaan

Nama Perusahaan

Kriptografi Bitmap Kriptografi Text Update File Kunci Kriptografi Help

Memo

Tombol

"Exit"

Gambar 3.11 Rancangan Layar Menu Help

Untuk masuk ke dalam menu “Help”, user tinggal mengklik tab sheet “Help”. Pada menu “Help”, hanya terdapat dua buah komponen. Komponen-komponen tersebut

(21)

adalah memo dan tombol “Exit”. Pada memo terdapat teks yang berisi penjelasan singkat mengenai penggunaan program. Sedangkan tombol “Exit” berfungsi untuk ke luar dari program.

3.2.4 Spesifikasi Modul Modul reset_semua

Fungsi: men-setting nilai awal semua variabel global.

BEGIN

Setting nilai awal semua variabel global END

Modul hapus_gambar

Fungsi: menghapus gambar yang terdapat pada kotak gambar.

BEGIN

Batas atas kanvas = 0

Batas bawah kanvas = tinggi gambar Batas kiri kanvas = 0

Batas kanan kanvas = lebar gambar Lukis semua kanvas dengan warna putih

END

Modul hapus_semua1

Fungsi: membersihkan dan menonaktifkan semua komponen yang ada pada menu “Kriptografi Bitmap”, kecuali radio button “Enkripsi”, radio button “Dekripsi”, dan tombol “Clear All”.

BEGIN

Aktifkan radio buton “Enkripsi” Aktifkan radio buton “Dekripsi” Nonaktifkan tombol “Run” Nonaktifkan tombol “Browse” Nonaktifkan tombol “Save As” Nonaktifkan tombol “Full View”

(22)

Nonaktifkan edit box “input p” Bersihkan edit box “input p” Nonaktifkan edit box “input a” Bersihkan edit box “input a” Nonaktifkan edit box “input b” Bersihkan edit box “input b” Nonaktifkan edit box “input nA” Bersihkan edit box “input nA” Hilangkan edit box “ciphertext” Bersihkan edit box “ciphertext” Hilangkan edit box “plain image” Bersihkan edit box “plain image” Panggil modul hapus_gambar Panggil modul reset_semua

END

Modul hapus_semua2

Fungsi: membersihkan dan menonaktifkan semua komponen yang ada pada menu “Kriptografi Text”, kecuali radio button “Enkripsi”, radio button “Dekripsi”, dan tombol “Clear All”.

BEGIN

Aktifkan radio buton “Enkripsi” Aktifkan radio buton “Dekripsi” Nonaktifkan tombol “Run” Nonaktifkan tombol “Browse” Nonaktifkan tombol “Save As” Nonaktifkan edit box “input p” Bersihkan edit box “input p” Nonaktifkan edit box “input a” Bersihkan edit box “input a” Nonaktifkan edit box “input b” Bersihkan edit box “input b” Nonaktifkan edit box “input nA” Bersihkan edit box “input nA” Hilangkan edit box “ciphertext” Bersihkan edit box “ciphertext” Hilangkan edit box “plain image” Bersihkan edit box “plain image”

Reset Posisi Progress Bar

Panggil modul reset_semua

(23)

Modul hapus_semua3

Fungsi: membersihkan dan menonaktifkan semua komponen yang ada pada menu “Update File Kunci Kriptografi”, kecuali edit box “p awal” dan edit box “p akhir”.

BEGIN

Aktifkan tombol “Clear All” Aktifkan tombol “Update File” Nonaktifkan edit box “p” Bersihkan edit box “p” Nonaktifkan edit box “a” Bersihkan edit box “a” Nonaktifkan edit box “b” Bersihkan edit box “b” Hilangkan group box “Hasil”

Reset posisi Progress Bar

Panggil modul reset_semua

END

Modul Form Create

Fungsi: meen-setting tampilan awal layar dan nilai awal variabel global pada saat pertama kali program aplikasi dijalankan.

BEGIN

Tampilkan dialog box “Peringatan untuk tidak mengcopy file”

IF menekan tombol “Cancel” THEN

ke luar dari program

ELSE

Mencatat nama file kunci kriptografi Buat kanvas

Panggil modul hapus_semua1 Panggil modul hapus_semua2 Panggil modul hapus_semua3 Panggil modul reset_semua

Tulis keterangan menggunakan program pada menu “Help”

ENDIF END

(24)

Modul RBEnkripsi1Click

Fungsi: mensetting tampilan awal mode enkripsi pada menu “Kriptorafi Bitmap”, ketika user mengklik radio button “Enkripsi”.

BEGIN

Aktifkan tombol “Browse” Nonaktifkan edit box “input p” Bersihkan edit box “input p” Nonaktifkan edit box “input a” Bersihkan edit box “input a” Nonaktifkan edit box “input b” Bersihkan edit box “input b” Nonaktifkan edit box “input nA” Bersihkan edit box “input nA” Nonaktifkan tombol “Clear All”

END

Modul Dekripsi1Click

Fungsi: mensetting tampilan awal mode enkripsi pada menu “Kriptografi

Bitmap”, ketika user mengklik radio button “Dekripsi”. BEGIN

Aktifkan tombol “Browse”

Aktifkan edit box “input p”

Aktifkan edit box “input a”

Aktifkan edit box “input b”

Aktifkan edit box “input nA”

Aktifkan tombol “Clear All”

END

Modul BBrowse1Click

Fungsi: memasukkan nama file yang akan dienkripsi atau didekripsi pada menu “Kriptografi Bitmap”, ketika user mengklik tombol “Browse”.

BEGIN

IF radio button “Dekripsi” diklik THEN

Tampilkan dialog box “Open File”

Filter file yang dapat dibuka adalah file text (*.TXT)

(25)

Nonaktifkan radio button “Enkripsi”

Nonaktifkan radio button “Dekripsi”

Nonaktifkan tombol “Browse”

Tampilkan label “input”

Tampilkan nama file yang akan dienkripsi pada edit box “input”

Aktifkan tombol “Save As”

ELSE

Tampilkan dialog box “Open File”

Filter file yang dapat dibuka adalah file bitmap (*.BMP)

Tampilkan Group Box “File”

Nonaktifkan radio button “Enkripsi”

Nonaktifkan radio button “Dekripsi”

Nonaktifkan tombol “Browse”

Tampilkan label “input”

Tampilkan nama file yang akan dienkripsi pada edit box “input”

Aktifkan tombol “Save As” Buat kanvas pada kotak gambar

Tampilkan gambar bitmap pada kanvas

Aktifkan check box “Stretch Image”

Aktifkan tombol “Full View”

Simpan lebar gambar pada variabel global “lebar” Simpan tinggi gambar pada variabel global “tinggi”

Simpan ukuran bit depth gambar pada variabel global “bitdepth”

Simpan ukuran resolusi horisontal gambar pada variabel global “resolusix” Simpan ukuran resolusi vertikal gambar pada variabel global “resolusiy”

ENDIF END

Modul BSave1Click

Fungsi: memasukkan nama file hasil enkripsi atau dekripsi suatu file pada menu “Kriptografi Bitmap”, ketika user mengklik tombol “Save As”.

BEGIN

IF radio button “Enkripsi” diklik THEN

Tampilkan dialog box “Save File”

Filter nama file yang dapat disimpan adalah file text (*.TXT)

Tampilkan label “output”

Tampilkan nama file yang akan dienkripsi pada edit box “output”

Aktifkan tombol “Run”

Nonaktifkan tombol “Save As”

ELSE

Tampilkan dialog box “Save File”

Filter nama file yang dapat disimpan adalah file bitmap (*.BMP)

(26)

Tampilkan nama file yang akan dienkripsi pada edit box “output” Aktifkan tombol “Run”

Nonaktifkan tombol “Save As”

ENDIF END

Modul jumlah_sama

Fungsi: menjumlahkan dua titik yang sama pada kurva elliptic.

BEGIN

Hitung pembilang gradien singgung Hitung penyebut gradien singgung

IF penyebut gradien garis singgung = 0 THEN

Hasil penggandaan titik tersebut adalah titik infinitas dan ASCII nya 256

ELSE

Gradien garis singgung = (pembilang / penyebut) modulo p Hitung kooordinat titik hasil penggandaan titik tersebut Cari ASCII titik tersebut

ENDIF END

Modul jumlah_lawan

Fungsi: menjumlahkan dua buah titik pada kurva elliptic yang saling berlawanan.

BEGIN

Hasil penjumlahan dua titik yang berlawanan adalah titik infinitas

END

Modul jumlah_beda

Fungsi: menjumlahkan dua buah titik yang berbeda pada kurva elliptic.

BEGIN

Hitung pembilang gradien garis potong dua titik yang berbeda Hitung penyebut gradien garis potong dua titik yang berbeda Hitung gradien garis potong

Hitung titik koordinat hasil penjumlahan dua titik yang berbeda Cari ASCII titik tersebut

(27)

Modul jumlah

Fungsi: menjumlahkan dua buah titik pada kurva elliptic.

BEGIN

IF titik P adalah titik infinitas and titik Q bukan titik infinitas THEN

Hasil penjumlahannya adalah titik P

ELSE IF titik P bukan titik infinitas and titik Q adalah titik infinitas THEN

Hasil penjumlahannya adalah titik Q

ELSE IF titik P adalah titik infinitas and titik Q adalah titik infinitas THEN

Hasil penjumlahannya adalah titik infinitas

ELSE

IF xP = xQ THEN IF yP = yQ THEN

Panggil modul jumlah_sama

ELSE IF yP ≠ yQ THEN

Panggil modul jumlah_lawan

ENDIF ELSE

Panggil modul jumlah_beda

ENDIF ENDIF END

Modul perkalian

Fungsi: mengalikan titik P pada kurva elliptic dengan sebuah bilangan asli n.

BEGIN

Jumlahkan titik P sebanyak n kali.

END

Modul cari_G

Fungsi: mencari titik G secara acak.

BEGIN

Acak titik G, di mana ASCII huruf G adalah mulai dari 0 sampai dengan 254

END

Modul cari_n

(28)

BEGIN

WHILE hasil perkalian bukan titik infinitas DO

Kalikan titik G sebanyak n kali

ENDWHILE

Simpan besar n

END

Modul cari_nA

Fungsi: mencari nilai nA secara acak.

BEGIN

Acak bilangan asli mulai dari 1 sampai dengan n-1

Simpan bilangan asli tersebut sebagai nA

END

Modul cari_PA

Fungsi: menghitung titik PA, di mana PA = nA . G

BEGIN

Kalikan nA dengan titik G

Simpan titik PA

END

Modul acak_k

Fungsi: mencari nilai k secara acak.

BEGIN

Acak bilangan asli antara 0 sampai dengan p Simpan bilangan tersebut sebagai k

END

Modul cari_kG

Fungsi: mengalikan k dengan titik G

BEGIN

Kalikan k dengan titik G

(29)

Modul cari_kPA

Fungsi: mengalikan k dengan titik PA

BEGIN

Kalikan k dengan titik PA

Simpan hasil perkalian sebagai titik kPA

END

Modul jumlah_PmkPA

Fungsi: menjumlahkan titik Pm (titik sebuah karakter plaintext) dengan titik kPA

BEGIN

Jumlahkan titik Pm dengan titik kPA

END

Modul enkripsi

Fungsi: mengenkripsi sebuah karakter.

BEGIN

Panggil modul acak_k Panggil modul cari_kG Panggil modul cari_kPA

Panggil modul jumlah_Pm_kPA

END

Modul cari_nAcm1

Fungsi: mengalikan titik Cm yang pertama dengan nA.

BEGIN

Kalikan titik Cm yang pertama dengan nA

Simpan hasilnya sebagai titik nACm1

END

Modul minus_nAcm1

Fungsi: mencari titik yang berlawanan dengan titik nACm1.

BEGIN

(30)

Simpan hasilnya sebagai titik -nACm1

END

Modul jumlah_cm2_minus

Fungsi: menjumlahkan titik Cm2 dengan titik -nACm1.

BEGIN

Jumlahkan titik Cm2dengan titik -nACm1

END

Modul dekripsi

Fungsi: mendekripsikan sebuah karakter pada ciphertext.

BEGIN

Panggil modul cari_nAcm1 Panggil modul minus_nAcm1 Panggil modul jumlah_cm2_minus

END

Modul baca_baris

Fungsi: menghitung jumlah baris sebuah file text.

BEGIN

Baca file text

Hitung jumlah baris file text tersebut

END

Modul baca_file_kombinasi

Fungsi: membaca file kunci kriptografi “kombinasi_pab.txt” dan mendapatkan kombinasi kunci p, a, dan b.

BEGIN

Panggil modul baca_baris

IF file “kombinasi_kunci_pab.txt” ada THEN

IF header file = ‘KOMBINASI_KUNCI_PAB_SES’ THEN

Hitung banyak baris

Hitung banyak kombinasi kunci p, a, dan b

(31)

Panggil modul bentuk_titik

ENDIF ENDIF END

Modul periksa_angka

Fungsi: memeriksa apakah sebuah string terdiri dari angka-angka.

BEGIN

Hitung panjang string

Cek apakah karakter pertama sampai karakter terakhir string adalah angka

END

Modul bentuk_titik

Fungsi: membuat representasi karakter ASCII pada titik-titik yang dibentuk oleh persamaan kurva elliptic.

BEGIN

Cari titik-titik yang terdapat pada persamaan kurva elliptic Simpan koordinat titik tersebut ke dalam nomor desimal ASCII Hitung banyak titik

END

Modul BRun1Click

Fungsi: menjalankan proses enkripsi atau dekripsi file bitmap, ketika tombol “Run” pada menu “Kriptografi Bitmap” diklik.

BEGIN

Nonaktifkan tombol “Browse” Nonaktifkan tombol “Save As”

Cek validasi nama file input dan output

IF radio button “Enkripsi” diklik THEN

Buka file input Bentuk file output

Panggil modul baca_file_kombinasi

IF file “kombinasi_kunci_pab.txt” ditemukan THEN

Simpan waktu proses dimulai Tulis header file

(32)

Panggil modul cari_n Panggil modul cari_nA Panggil modul cari_PA

Simpan ukuran resolusi horisontal gambar

Panggil modul enkripsi untuk mengenkripsi ukuran resolusi horisontal Simpan ukuran resolusi vertikal gambar

Panggil modul enkripsi untuk mengenkripsi ukuran resolusi vertikal Simpan ukuran bit depth gambar

Panggil modul enkripsi untuk mengenkripsi ukuran bit depth Simpan tinggi gambar

Panggil modul enkripsi untuk mengenkripsi tinggi Tulis hasil enkripsi

Simpan lebar gambar

Panggil modul enkripsi untuk mengenkripsi lebar Tulis hasil enkripsi

FOR pikselx = 0 to (lebar-1) DO FOR piksely = 0 to (tinggi-1) DO

Atur posisi progress bar

Simpan informasi warna pada piksel[x,y]

Panggil modul enkripsi untuk mengenkripsi informasi warna

ENDFOR ENDFOR

Simpan waktu proses selesai

Tampilkan dialog box yang memberitahu bahwa proses telah selesai

ENDIF

Tutup file input dan output

ELSE

Periksa semua kunci yang diinput

IF kunci yang diinput benar THEN

Buka file input Bentuk file output

Panggil modul baca_baris Baca header file

IF header file benar THEN

Simpan waktu proses dimulai Panggil modul cari_G

Panggil modul cari_n Panggil modul cari_nA Panggil modul cari_PA

FOR ulang = 1 to ((jumlah baris-1)/2) DO

Panggil modul dekripsi

Simpan ukuran resolusi horisontal gambar Panggil modul dekripsi

Simpan ukuran resolusi vertikal gambar Panggil modul dekripsi

Simpan tinggi gambar Panggil modul dekripsi

(33)

Simpan tinggi gambar Panggil modul dekripsi Simpan lebar gambar Panggil modul dekripsi

Simpan informasi warna gambar pada tiap piksel Bentuk gambar pada kanvas

Atur posisi progress bar

ENDFOR

Simpan gambar yang terbentuk pada kanvas ke dalam file bitmap

Setting ukuran resolusi horisontal gambar Setting ukuran resolusi vertikal gambar

Tampilkan dialog box yang memberitahu bahwa proses telah selesai Nonaktifkan tombol “Run”

Nonaktifkan edit box “input p” Nonaktifkan edit box “input a” Nonaktifkan edit box “input b” Nonaktifkan edit box “input nA” Aktifkan tombol “Clear All” Aktifkan tombol “Full View”

ENDIF

Tutup file input dan output

ENDIF ENDIF

Panggil modul reset_semua

END

Modul BCancel1Click

Fungsi: mereset semua komponen yang terdapat pada layar menu “Kriptografi

Bitmap” dan semua variabel global, ketika tombol “Clear All” diklik. BEGIN

Panggil modul hapus_semua1 Panggil modul reset_semua Panggil modul hapus_gambar

Reset posisi progress bar END

Modul BFullClick

Fungsi: memperlihatkan gambar secara utuh, ketika tombol “Full View” diklik.

BEGIN

(34)

Panjang scroll bar vertikal Form full screen = tinggi gambar Tampilkan Form full screen

END

Modul StretchCheckClick

Fungsi: menyesuaikan ukuran kanvas dengan ukuran kotak gambar, ketika check

box “Stretch Image” diklik. BEGIN

IF check box “Stretch Image” diklik THEN Stretch gambar sebesar kotak gambar END

Modul RBEnkripsi2Click

Fungsi: mensetting tampilan awal mode enkripsi pada menu “Kriptorafi Text”, ketika user mengklik radio button “Enkripsi”.

BEGIN

Aktifkan tombol “Browse” Nonaktifkan edit box “input p” Bersihkan edit box “input p” Nonaktifkan edit box “input a” Bersihkan edit box “input a” Nonaktifkan edit box “input b” Bersihkan edit box “input b” Nonaktifkan edit box “input nA” Bersihkan edit box “input nA” Nonaktifkan tombol “Clear All”

END

Modul Dekripsi2Click

Fungsi: mensetting tampilan awal mode enkripsi pada menu “Kriptografi Text”, ketika user mengklik radio button “Dekripsi”.

BEGIN

Aktifkan tombol “Browse”

Aktifkan edit box “input p”

Aktifkan edit box “input a”

(35)

Aktifkan edit box “input nA”

Aktifkan tombol “Clear All”

END

Modul BBrowse2Click

Fungsi: memasukkan nama file yang akan dienkripsi atau didekripsi pada menu “Kriptografi Text”, ketika user mengklik tombol “Browse”.

BEGIN

Tampilkan dialog box “Open File”

Filter file yang dapat dibuka adalah file text (*.TXT)

Tampilkan Group Box “File”

Nonaktifkan radio button “Enkripsi”

Nonaktifkan radio button “Dekripsi”

Nonaktifkan tombol “Browse”

Tampilkan label “input”

Tampilkan nama file yang akan dienkripsi pada edit box “input”

Aktifkan tombol “Save As”

END

Modul BSave2Click

Fungsi: memasukkan nama file hasil enkripsi atau dekripsi suatu file pada menu “Kriptografi Text”, ketika user mengklik tombol “Save As”.

BEGIN

Tampilkan dialog box “Save File”

Filter nama file yang dapat disimpan adalah file text (*.TXT)

Tampilkan label “output”

Tampilkan nama file yang akan dienkripsi pada edit box “output”

Aktifkan tombol “Run”

Nonaktifkan tombol “Save As”

END

Modul BCancel2Click

Fungsi: mereset semua komponen yang terdapat pada layar menu “Kriptografi

Text” dan semua variabel global, ketika tombol “Clear All” diklik. BEGIN

(36)

Panggil modul hapus_semua2 Panggil modul reset_semua

Reset posisi progress bar END

Modul BRun2Click

Fungsi: menjalankan proses enkripsi atau dekripsi file teks, ketika tombol “Run” pada menu “Kriptografi Text” diklik.

BEGIN

Nonaktifkan tombol “Browse” Nonaktifkan tombol “Save As”

Cek validasi nama file input dan output

IF radio button “Enkripsi” diklik THEN

Buka file input Bentuk file output

Panggil modul baca_file_kombinasi

IF file “kombinasi_kunci_pab.txt” ditemukan THEN

Simpan waktu proses dimulai Tulis header file

Panggil modul cari_G Panggil modul cari_n Panggil modul cari_nA Panggil modul cari_PA Panggil modul baca_baris

FOR ulang = 1 to jumlah baris DO

Baca karakter pada file plaintext

Panggil modul enkripsi untuk mengenkripsi karakter tersebut Tulis hasil enkripsi pada file ciphertext

Atur posisi progress bar

ENDFOR

Simpan waktu proses selesai

Tampilkan dialog box yang memberitahu bahwa proses telah selesai

ENDIF

Tutup file input dan output

ELSE

Periksa semua kunci yang diinput

IF kunci yang diinput benar THEN

Buka file input Bentuk file output

Panggil modul baca_baris Baca header file

IF header file benar THEN

(37)

Panggil modul cari_G Panggil modul cari_n Panggil modul cari_nA Panggil modul cari_PA

FOR ulang = 1 to ((jumlah baris-1)/2) DO

Baca ASCII pada setiap baris file ciphertext Panggil modul dekripsi

Tulis karakter hasil proses dekripsi pada file plaintext Atur posisi progress bar

ENDFOR

Tampilkan dialog box yang memberitahu bahwa proses telah selesai Nonaktifkan tombol “Run”

Nonaktifkan edit box “input p” Nonaktifkan edit box “input a” Nonaktifkan edit box “input b” Nonaktifkan edit box “input nA” Aktifkan tombol “Clear All”

ENDIF

Tutup file input dan output

ENDIF ENDIF

Panggil modul reset_semua

END

Modul BClearClick

Fungsi: mereset semua komponen pada layar menu “Update File Kunci Kriptografi”, ketika tombol ”Clear All” diklik.

BEGIN

Panggil modul hapus_semua3 Panggil modul reset_semua

Reset posisi progress bar

Nonaktifkan tombol “Clear All”

END

Modul BUpdateClick

Fungsi: mengupdate file “kombinasi_kunci_pab.txt”, yang berisi kombinasi kunci p, a, dan b yang dapat membentuk 256 titik pada kurva elliptic.

BEGIN

(38)

IF nilai p akhir 227 atau p akhir 283 THEN FOR p = p awal to p akhir DO

IF p adalah bilangan prima THEN FOR a = 0 to p-1 DO

FOR b = 0 to p-1 DO

Panggil modul bentuk_titik

IF jumlah titik = 256 THEN

Tulis p, a, dan b ke dalam file “kombinasi_kunci_pab.txt” Hitung jumlah kombinasi kunci p, a, dan b yang ditemukan

ENDIF ENDFOR ENDFOR ENDIF ENDFOR ENDIF

Tampilkan jumlah kombinasi kunci p, a, dan b yang ditemukan Tampilkan jumlah titik tersedikit pada bilangan p prima yang terakhir Tampilkan jumlah titik terbanyak pada bilangan p prima yang terakhir

END

Modul BExitClick

Fungsi: ke luar dari program, ketika tombol “Exit” diklik.

BEGIN

Akhiri aplikasi

Gambar

Gambar 3.1 Struktur Organisasi PT. Swadharma Eragrafindo Sarana  Sumber : Company Profile PT
Gambar 3.2 Rancangan Struktur Menu Utama
Gambar 3.3 STD Menu Utama
Gambar 3.4 STD Menu Kriptografi Bitmap
+7

Referensi

Dokumen terkait

dengan perhitungan dan jenis plat, serta tombol bersihkan layar untuk membersihkan output apabila user ingin mengubah input data yang berbeda dari input data sebelumnya.

Bila user belum mengerti cara penggunaan program, maka user dapat memilih tombol ini. Sama seperti pada menu sebaran normal. Pada sebaran eksponensial ini, sebelum memilih

− Klik aktifkan bentuk dasar gambar, yaitu gambar huruf “G” dengan menggunakan Pick Tool, pilih Shape Tool atau pilih tombol F10 klik titik koordinat pada sudut bagian dalam

Program aplikasi ini hanya memiliki satu buah form, yang di dalamnya sudah terdapat bagian input persamaan Sistem Sturm-Liouville yakni fungsi p(x), q(x) dan r(x) dalam

a) Administrator melihat data user. b) Memilih tombol tambah untuk menambah data user. c) Sistem menampilkan form data user. d) Meng input data user baru dan memilih

dengan perhitungan dan jenis plat, serta tombol bersihkan layar untuk membersihkan output apabila user ingin mengubah input data yang berbeda dari input data sebelumnya.

-Tombol Edit dan refresh merupakan tombol untuk mengakses ke pengolahan data berikutnya - Tombol keluar digunakan untuk keluar dari halaman data nota

Menjelaskan cara membuat prosedur program master untuk tombol input, edit, hapus, simpan, batal dan exit dalam. program