BAB III ANALISA MASALAH DAN PERANCANGAN PROGRAM

dokumen-dokumen yang mirip
BAB III ANALISIS DAN PERANCANGAN

ANALISIS PERBANDINGAN KINERJA ALGORITMA TWOFISH DAN TEA (TINY ENCRYPTION ALGORITHM) PADA DATA SUARA

IMPLEMENTASI ALGORITMA TEA DAN FUNGSI HASH MD4 UNTUK ENKRIPSI DAN DEKRIPSI DATA

BAB II TINJAUAN PUSTAKA. Kriptografi adalah ilmu sekaligus seni untuk menjaga keamanan pesan (message).

BAB III ANALISA DAN PERANCANGAN

BAB IV HASIL DAN UJI COBA

BAB III ANALISA DAN PERANCANGAN

BAB III ANALISIS MASALAH DAN RANCANGAN PROGRAM

BAB III ANALISIS MASALAH DAN RANCANGAN PROGRAM

BAB III ANALISA DAN DESAIN SISTEM

BAB III ANALISIS MASALAH DAN RANCANGAN PROGRAM. telah dijelaskan pada bab sebelumnya. Analisis yang dilakukan bertujuan untuk

BAB III ANALISIS DAN DESAIN SISTEM

BAB IV PERANCANGAN SISTEM

BAB III ANALISA DAN PERANCANGAN

BAB III ANALISIS KEBUTUHAN DAN PERANCANGAN SISTEM. KriptoSMS akan mengenkripsi pesan yang akan dikirim menjadi ciphertext dan

BAB III ANALISA DAN DESAIN SISTEM

BAB 3 ANALISIS DAN PERANCANGAN. Perancangan program aplikasi pada penelitian ini menggunakan metode Linear


BAB III ANALISIS MASALAH DAN RANCANGAN PROGRAM

BAB III ANALISA DAN DESAIN SISTEM

BAB III ANALISIS DAN DESAIN SISTEM

Bab 3. Metode dan Perancangan Sistem

BAB IV HASIL DAN PEMBAHASAN

BAB III ANALISIS DAN PERANCANGAN SISTEM. permasalahan-permasalahan dan kebutuhan-kebutuhan yang diharapkan sehingga dapat

BAB III ANALISA DAN PERANCANGAN

BAB III ANALISA DAN DESAIN SISTEM

BAB III ANALISIS MASALAH DAN RANCANGAN PROGRAM

BAB III ANALISIS DAN PERANCANGAN

BAB III ANALISA DAN PERANCANGAN

BAB III ANALISIS MASALAH DAN RANCANGAN PROGRAM

BAB III ANALISA MASALAH DAN PERANCANGAN

BAB III ANALISIS DAN PERANCANGAN

BAB I PENDAHULUAN. Perangkat lunak aplikasi (software application) adalah suatu subkelas perangkat lunak

BAB III ANALISIS MASALAH DAN RANCANGAN PROGRAM


BAB III ANALISA DAN DESAIN SISTEM

BAB III ANALISA DAN PERANCANGAN

BAB III ANALISIS DAN DESAIN SISTEM

BAB III PERANCANGAN SISTEM

BAB III ANALISIS DAN PERANCANGAN

BAB III ANALISA MASALAH DAN RANCANGAN PROGRAM. Analisa yang dilakukan bertujuan untuk menentukan solusi dari

BAB III ANALISIS DAN PERANCANGAN

BAB III ANALISIS DAN DESAIN SISTEM

BAB III ANALISA DAN PERANCANGAN

BAB III ANALISIS DAN PERANCANGAN

BAB III ANALISIS MASALAH DAN RANCANGAN PROGRAM

BAB III ANALISIS DAN PERANCANGAN SISTEM

BAB III ANALISIS MASALAH DAN RANCANGAN PROGRAM

APLIKASI JAVA KRIPTOGRAFI MENGGUNAKAN ALGORITMA VIGENERE. Abstract

BAB III ANALISIS DAN PERANCANGAN

BAB III PERANCANGAN SISTEM. Shipping Direktorat Jenderal Imigrasi menunjukkan bahwasanya dalam akses

BAB III ANALISA MASALAH DAN PERANCANGAN

BAB III ANALISA DAN DESAIN SISTEM. perancangan pembuatan kriptografi Impementasi AES ( Advanced Encyrption

PERANCANGAN APLIKASI KRIPTOGRAFI BERLAPIS MENGGUNAKAN ALGORITMA CAESAR, TRANSPOSISI, VIGENERE, DAN BLOK CHIPER BERBASIS MOBILE

BAB II TINJAUAN PUSTAKA

ANALISA DAN IMPLEMENTASI PROSES KRIPTOGRAFI ENCRYPTION-DECRYPTION DENGAN ALGORITMA TEA (TINY ENCRYPTION ALGORITHM) ABSTRAK

BAB III ANALISA DAN PERANCANGAN

BAB III ANALISIS DAN DESAIN SISTEM

BAB III ANALISA DAN PERANCANGAN. 3.1 Analisa Berikut tahap-tahap awal dalam pembuatan:

APLIKASI PENGAMANAN DATA MENGGUNAKAN ALGORITMA DATA ENCRYPTION STANDARD (DES) DENGAN NETBEANS IDE BERBASIS DESKTOP

BAB III ANALISIS DAN PERANCANGAN

BAB III ANALISIS DAN DESAIN SISTEM

BAB 1 PENDAHULUAN. Universitas Sumatera Utara

BAB IV HASIL DAN UJI COBA


BAB III ANALISIS DAN PERANCANGAN

LANDASAN TEORI. 2.1 Kriptografi Definisi Kriptografi

BAB III ANALISIS DAN DESAIN SISTEM

BAB IV HASIL DAN PEMBAHASAN

BAB III ANALISIS DAN PERANCANGAN


BAB III KONSEP DAN PERANCANGAN

BAB III ANALISIS DAN PERANCANGAN

PERANCANGAN APLIKASI ENKRIPSI DATA MENGGUNAKAN METODE ADVANCED ENCRYPTION STANDARD

BAB III ANALISIS DAN DESAIN SISTEM

BAB III ANALISIS DAN PERANCANGAN

BAB III ANALISIS DAN PERANCANGAN SISTEM

Perancangan Aplikasi Kriptografi File Dengan Metode Algoritma Advanced Encryption Standard (AES)

BAB III ANALISIS MASALAH DAN RANCANGAN PROGRAM

Gambar 4.1 Flowchart

BAB III ANALISIS MASALAH DAN RANCANGAN PROGRAM

BAB III ANALISIS DAN RANCANGAN

BAB III ANALISA DAN PERANCANGAN

BAB 3 ANALISIS DAN PERANCANGAN PROGRAM

BAB III ANALISIS DAN PERANCANGAN SISTEM

Unified Modelling Language UML

BAB IV PERANCANGAN Perancangan Proses Kriptanalisis

IMPLEMENTASI ALGORITMA VERTICAL BIT ROTATION PADA KEAMANAN DATA NASABAH ( STUDI KASUS : PT. ASURANSI ALLIANZ LIFE INDONESIA )

BAB III ANALISIS DAN PERANCANGAN

APLIKASI PENGAMANAN DOKUMEN OFFICE DENGAN ALGORITMA KRIPTOGRAFI BLOWFISH


BAB III ANALISA MASALAH DAN PERANCANGAN

BAB III ANALISA DAN PERANCANGAN 3.1 ANALISA PERANGKAT LUNAK BASIS DATA MULTIMEDIA

BAB III ANALISA DAN PERANCANGAN

BAB III ANALISA DAN PERANCANGAN

BAB III ANALISIS DAN PERANCANGAN

Gambar 3.1 Flowchart proses enkripsi AES

BAB 1 PENDAHULUAN Latar Belakang

BAB IV PERANCANGAN SISTEM

ANALISIS PERBANDINGAN ALGORITMA SIMETRIS TINY ENCRYPTION ALGORITHM DAN LOKI DALAM ENKRIPSI DAN DEKRIPSI DATA

Transkripsi:

BAB III ANALISA MASALAH DAN PERANCANGAN PROGRAM III.1 Analisis Permasalahan Tahapan analisis terhadap suatu sistem dilakukan sebelum tahapan perancangan dilakukan. Adapun tujuan yang dilakukannmya analisis terhadap suatu sistem adalah untuk mengetahui alasan mengapa sistem tersebut diperlukan, yaitu dengan merumuskan kebutuhan-kebutuhan dari sistem tersebut untuk meminimalisir sumber daya yang berlebihan serta membantu merencanakan penjadwalan pembentuk sistem, meminimalkan distorsi-distorsi yang mungkin terdapat didalam suatu sistem tersebut sehingga dapat bekerja secara optimal. Salah satu unsur yang harus dipertimbangkan dalam tahapan analisa sistem ini yaitu masalah perangkat lunak, karena nantinya perangkat lunak yang digunakan harus sesuai dengan masalah yang akan diselesaikan. Untuk itu, analisa yang dilakukan terhadap perangkat lunak algoritma TEA ini akan dibagi menjadi beberapa aspek, yaitu analisis kebutuhan perangkat lunak algoritma TEA, analisis proses enkripsi dan deskripsi algoritma TEA, serta analisis fungsi perangkat lunak algoritma TEA. 24

25 III.1.1 Analisis Agoritma Simetri TEA Tiny Encription Algorithm (TEA) merupakan suatu algoritma sandi yang diciptakan oleh David Wheeler dan Roger Needham dari Computer Laboratory, Cambridge University, England pada bulan November 1994. Algoritma ini merupakan algoritma penyandian block cipher yang dirancang untuk penggunaan memory yang seminimal mungkin dengan kecepatan proses yang maksimal.(siapa) Sistem penyandian TEA menggunakan proses feistel network dengan menambahkan fungsi matematik berupa penambahan dan pengurangan sebagai operator pembalik selain XOR. Hal ini dimaksudkan untuk menciptakan sifat non-linearitas. Pergeseran dua arah (ke kiri dan ke kanan) menyebabkan semua bit kunci dan data bercampur secara berulang ulang. TEA memproses 64-bit input sekali waktu dan menghasilkan 64-bit output. TEA menyimpan 64-bit input kedalam L 0 dan R 0 masing masing 32-bit, sedangkan 128-bit kunci disimpan kedalam k[0], k[1], k[2], dan k[3] yang masing masing berisi 32-bit. Diharapkan teknik ini cukup dapat mencegah penggunaan teknik exshautive search secara efektif. Hasil outputnya akan disimpan dalam L 16 dan R 16. Bilangan delta berasal dari golden number, digunakan delta=( 5-1)2 31. Suatu bilangan delta ganda yang berbeda digunakan dalam setiap roundnya sehingga tidak ada bit dari perkalian yang tidak berubah secara teratur. Berbeda dengan struktur feistel yang semula hanya mengoperasikan satu sisi yaitu sisi sebelah kanan dengan

26 sebuah fungsi F, pada algoritma TEA kedua sisi dioperasikan dengan sebuah fungsi yang sama. Struktur penyandian TEA terlihat pada gambar III.1 sebagai berikut: Gambar III.1 Algoritma TEA

27 Proses diawali dengan input-bit teks sebanyak 64-bit, kemudian 64-bit teks tersebut dibagi menjadi dua bagian, yaitu sisi kiri (L 0 ) sebanyak 32-bit dan sisi kanan (R 0 ) sebanyak 32-bit. Setiap bagian teks akan dioperasikan sendiri-sendiri. R 0 (Z) akan digeser kekiri sebanyak empat (4) kali da n ditambahkan dengan kunci k[0], sementara itu Z ditambah dengan sum (delta) yang merupakan konstanta. Hasil penambahan ini di-xor-kan dengan penambahan sebelumnya. Langkah selanjutnya di-xor-kan dengan hasil penambahan antara Z yang digeser kekanan sebanyak lima (5) kali dengan kunci k[1]. Hasil tersebut kemudian ditambahkan dengan L 0 (Y) yang akan menjadi R 1. Sisi sebelah kiri akan mengalami proses yang sama dengan sisi sebelah kanan. L 0 (Y) akan digeser kekiri sebanyak empat (4) kali lalu ditambahkan dengan kunci k[2], sementara itu, Y ditambah dengan sum (delta). Hasil penambahan ini di -XOR-kan dengan penambahan sebelumnya. Langkah selanjutnya di-xor-kan dengan hasil penambahan antara Y yang digeser ke kanan sebanyak lima (5) kali dengan unci k[3]. Hasil tersebut kemudian ditambahkan dengan R 0 (Z) yang akan menjadi L 1. Struktur dari penyandian dengan algoritma untuk satu cycle (dua round) dapat dilihat pada gambar III.2 berikut:

Gambar III.2 Satu Cycle TEA (dua round) 28

29 Langkah-langkah penyandian dengan algoritma TEA dalam satu cycle (dua round) : 1. Pergeseran (shift) Blok teks terang pada kedua sisi yang masing masing sebanyak 32-bit akan digeser kekiri sebanyak empat (4) kali dan digeser ke kanan sebanyak lima (5) kali. 2. Penambahan Langkah selanjutnya setelah digeser kekiri dan kekanan, maka Y dan Z yang telah digeser akan ditambahkan dengan kunci k[0]-k[3]. Sedangkan Y dan Z awal akan ditambahkan dengan sum (delta). 3. Peng-XOR-an Proses selanjutnya setelah dioperasikan dengan penambahan pada masing-masing register maka akan dilakukan peng-xor-an dengan rumus untuk satu round adalah sebagai berikut: y = y + (((z<<4)+k[0])^z+sum^((z>>5)+k[1])) z = z + (((y<<4)+k[2]^y+sum^((y>>5)+k[3])) dalam hal ini sum=sum+delta. Hasil penyandian dalam satu cycle satu blok teks terang 64-bit menjadi 64-bit teks sandi adalah dengan menggabungkan Y dan Z. Untuk penyandian pada cycle berikutnya Y dan Z ditukar posisinya, sehingga Y 1 menjadi Z 1 dan Z 1 menjadi Y 1 lalu dilanjutkan proses seperti langkah-langkah diatas sampai dengan 16 cycle (32 round).

30 4. Key Schedule Algoritma TEA menggunakan key schedule-nya sangat sederhana. Yaitu kunci k[0] dan k[1] konstan digunakan untuk round ganjil sedangkan kunci k[2] dan k[3] konstan digunakan untuk round genap. 5. Dekripsi Proses dekripsi sama halnya seperti pada proses penyandian yang berbasis feistel cipher lainnya. Yaitu pada prinsipnya adalah sama pada saat proses enkripsi. Hal yang berbeda adalah penggunaan teks sandi sebagai input dan kunci yang digunakan urutannya dibalik. Proses dekripsi semua round ganjil menggunakan k[1] terlebih dahulu kemudian k[0], demikian juga dengan semua round genap digunakan k[3] terlebih dahulu kemudian k[2]. Rumus enkripsi diketahui : L 0 = L 0 + f ( R 0, k[0], k[1], sum ) R 0 = R 0 + f ( L 0, k[2], k[3], sum ) Proses dekripsi digunakan rumus : L 0 = L 0 + f ( R 0, k[1], k[0], sum ) R 0 = R 0 + f ( L 0, k[3], k[2], sum )

31 III.2. Strategi Pemecahan Masalah Adapun langkah-langkah yang penulis lakukan dalam menyelesaikan perancangan aplikasi ini adalah : 1. Mengumpulkan Teori Dalam tahapan ini, penulis mengumpulkan teori teori yang berhubungan dengan masalah perancangan aplikasi ini. Teori-teori ini penulis lakukan adalah dari buku-buku, artikel yang didapat dari internet. 2. Merancang program Langkah pertama dalam merancang program ini adalah merancang proses kerja data flow diagram (DFD) yang menjelaskan secara rinci proses-proses yang akan dilakukan program. Langkah berikutnya merancang tampilan program. 3. Mengimplementasikan Rancangan Program Bahasa pemrograman yang penulis pilih dalam implementasi rancangan program adalah bahasa Microsoft Visual Basic.Net. Bahasa pemograman ini penulis pilih karena lebih mudah dimengerti oleh penulis untuk merancang sebuah aplikasi keamanan data. III.3. Unified Modeling Language (UML) UML (Unified Modeling Language) adalah bahasa spesifikasi standar untuk mendokumentasikan, menspesifikasikan, dan membangun sistem perangkat lunak. UML menggunakan notasi grafis untuk menyatakan suatu desain. Pemodelan dengan UML berarti menggambarkan yang ada dalam dunia nyata ke dalam bentuk yang

32 dapat dipahami dengan menggunakan notasi standart UML. UML merupakan suatu kumpulan teknik terbaik yang telah terbukti sukses dalam memodelkan sistem yang besar dan kompleks. UML tidak hanya digunakan dalam proses pemodelan perangkat lunak, namun hampir dalam semua bidang yang membutuhkan pemodelan. Alasan mengapa UML digunakan adalah, pertama, scalability dimana objek lebih mudah dipakai untuk menggambarkan sistem yang besar dan komplek. Kedua, dynamic modeling, dapat dipakai untuk pemodelan sistem dinamis dan real time. Pemodelan dengan UML terdiri dari 8 tipe diagram yang berbeda untuk memodelkan sistem perangkat lunak. Masing-masing diagram UML didesain untuk menunjukkan satu sisi dari bermacam-macam sudut pandang (perspektif) dan terdiri dari tingkat abstraksi yang berbeda. Namun yang akan digunakan penulis hanya tiga tipe diagram yaitu Use Case Diagram, Sequence Diagram dan Activity Diagram. III.3.1. Use Case Diagram Use case diagram menggambarkan suatu urutan interaksi antara satu atau lebih actor dan sistem. Yang ditekankan adalah apa yang dilakukan oleh sistem/apa yang terjadi pada sistem bukan bagaimana sistem melakukan. Use case mempresentasikan sebuah interaksi antar user sebagai actor dengan sistem. Seseorang atau sebuah actor adalah sebuah entitas manusia atau mesin yang berinteraksi dengan sistem untuk melakukan pekerjaan-pekerjaan tertentu. Sebuah use case dapat meng-include fungsionalitas use case lain sebagai bagian dari proses dalam dirinya. Secara umum diasumsikan bahwa use case yang di-include akan

33 dipanggil setiap kali use case yang meng-include dieksekusi secara normal. Sebuah use case dapat di-include oleh lebih dari satu use case lain, sehingga duplikasi fungsionalitas dapat dihindari dengan cara menarik keluar fungsionalitas yang common. Berikut adalah use case diagram untuk proses enkripsi pada Gambar III.3 sebagai berikut : Gambar III.3. Use Case Diagram Enkripsi Berikut adalah use case diagram untuk proses dekripsi pada Gambar III.4 sebagai berikut :

34 Gambar III.4. Use Case Diagram Dekripsi III.3.2. Sequence Diagram Sequence diagram menggambarkan interaksi antar objek didalam dan disekitar sistem (termasuk pengguna, display, dan sebagainya) berupa message yang digambarkan terhadap waktu. Sequence diagram terdiri atas dimensi vertical (waktu) dan dimensi horizontal (objek-objek yang terkait). Sequence diagram biasa digunakan untuk menggambarkan scenario atau rangkaian langkah-langkah yang dilakukan sebagai respons dari sebuah event untuk menghasilkan output tertentu. Diawali dari apa yang men-trigger aktivitas tersebut, proses dan perubahan apa saja yang terjadi secara internal dan output apa yang

35 dihasilkan. Masing-masing objek, termasuk actor, memiliki lifeline vertikal. Message digambarkan sebagai garis berpanah dari satu objek ke objek lainnya. Berikut adalah gambar untuk sequence diagram enkripsi pada Gambar III.5 sebagai berikut : Gambar III.5. Sequence Diagram Enkripsi Berikut adalah gambar untuk sequence diagram dekripsi pada Gambar III.6 sebagai berikut :

36 Gambar III.6. Sequence Diagram Dekripsi III.3.3. Activity Diagram Activity diagram menggambar aliran fungsionalitas dalam suatu sistem. Dapat digunakan dalam analisa kebutuhan untuk menggambarkan aliran kejadian melalui suatu use case atau menggambarkan berbagai alir aktivitas dalam sistem yang dirancang, bagaimana masing-masing alir berawal, keputusan yang mungkin terjadi dan bagaimana seluruh alir berakhir. Berikut adalah activity diagram enkripsi pada Gambar III.7 sebagai berikut :

37 Gambar III.7. Activity Diagram Enkripsi Berikut adalah gambar untuk activity diagram dekripsi pada Gambar III.8 sebagai berikut :

38 Gambar III.8. Activity Diagram Dekripsi Berikut adalah gambar untuk activity diagram about pada Gambar III.9 sebagai berikut :

39 Gambar III.9. Activity Diagram About III.3. Perancangan Perancangan merupakan tahap kedua dari siklus hidup pengembangan sistem perangkat lunak. Perancangan memiliki tujuan untuk menentukan kondisi akhir yang diharapkan dari perangkat lunak yang akan dibangun dan merumuskan cara yang harus dilakukan untuk memperoleh hasil tersebut. Pada perangkat lunak dengan algoritma TEA, tahap perancangan yang dilakukan mencakup perancangan struktur program, perancangan layar, perancangan algoritma dan flowchart.

40 III.3.1. Perancangan Struktur Program Struktur program disebut juga dengan hirarki kontrol, merepresentasikan organisasi komponen program (modul) serta mengimplikasikan suatu hirarki kontrol. Suatu hirarki kontrol tidak mengimplikasikan aspek prosedural dari perangkat lunak, seperti urutan proses, kejadian / urutan keputusan, atau pengulangan operasi. Banyak notasi berbeda yang digunakan untuk merepresentasikan hirarki kontrol, yang paling umum adalah diagram pohon. Adapun struktur program dari perangkat lunak KripTEA dapat dilihat pada Gambar III.10 berikut :

41 Main Menu Enkripsi Dekripsi Baca Plaintext Baca Kunci Enkripsi Baca Ciphertext Baca Kunci Dekripsi Potong Plaintext Potong Kunci Enkripsi Potong Ciphertext Potong Kunci Dekripsi Konversi Pesan Ke Kode ASCII Konversi Kunci Ke Kode ASCII Konversi Dari Biner Ke Kode ASCII Konversi Kunci Ke Kode ASCII Konversi Kode ASCII Ke Biner Konversi Dari Kode ASCII Gabung Ciphertext Gabung Plaintext Gambar III.10. Struktur Program III.3.2. Perancangan Layar III.3.2.1 Tampilan Form Utama Tampilan ini merupakan tampilan utama dari perangkat lunak KripTEA yang dibuat sesederhana mungkin untuk memudahkan para pengguna perangkat lunak.

42 Pada tampilan utama terdapat judul program dan fasilitas yang ada pada KripTEA yaitu Encryption, Decryption, About, serta tombol Exit. Jika dipilih menu Encryption maka selanjutnya akan tampil form enkripsi pesan dan jika dipilih menu Decryption maka akan tampil form deskripsi pesan. Sedangkan jika yang dipilih menu About maka akan tampil penjelasan tentang sistem. Untuk keluar dari menu utama maka dipilih tambol Exit yang merupakan pelihan untuk keluar secara keseluruhan dari software. Adapun tampilan utama dari program KripTEA adalah pada Gambar III.11 sebagai berikut : SISTEM KEAMANAN DATA MENGGUNAKAN ALGOTIMA TEA Menu Utama Proses Encrypt / Decrypt About Me Exit Gambar III.11. Form Utama III.3.2.2. Tampilan Form Encryption Pada Encrypt/Decrypt, plaintext yang akan di enkripsi di browse dari komputer melalui File Browser, kemudian pilih format file yang akan digunakan pada proses enkripsi melalui Filter data, selanjutnya pilih file yang akan dienkripsi

43 yang terdapat pada file list. Untuk melakukan proses enkripsi klik tombol Encryption. Setelah melakukan pemilihan file, input password untuk melakukan proses enkripsi. Untuk membatalkan proses atau kembali ke menu utama klik tombol back. Tampilan layar menu encryption adalah pada Gambar III.12 sebagai berikut : Gambar III.12. Tampilan Layar Enkripsi III.3.2.3. Tampilan Form Decryption Tampilan ini akan ditampilkan ketika pengguna sistem hendak melakukan proses dekripsi terhadap suatu file yang telah terenkrip. Proses dekripsi hanya dapat

44 dilakukan dengan benar jika kunci rahasia yang diinput user bernilai benar. Tampilan form Decryption dapat dilihat pada Gambar III.13 berikut : Gambar III.13. Tampilan Layar Dekripsi File yang akan didekripsi di-browse di komputer, dimana file haruslah format *.tea. Jika user ingin mengganti file yang ingin didekripsi atau membatalkan proses maka user dapat mengklik tombol back. Untuk melakukan proses deskripsi haruslah menginputkan password yang sama seperti pada proses enkripsi.

45 III.3.2.4. Tampilan Form About Tampilan ini digunakan untuk memberikan penjelasan tentang perangkat lunak. Tampilan form about digambarkan pada Gambar III.14 sebagai berikut : Berisikian tentang penjelasan perangkat lunak OK Gambar III.14. Tampilan Form About III.3.3. Algoritma dan Flowchart Algoritma yang digunakan penulis dalam perancangan sistem ini adalah flowchart. Flowchart atau diagram alir adalah sekumpulan simbol-simbol atau skema yang menunjukkan atau menggambarkan rangkaian kegiatan-kegiatan program dari mulai awal hingga akhir. Inti pembuatan dari flowchart atau diagram alir ini adalah penggambaran urutan langkah-langkah pekerjaan dari algoritma. Terdapat dua algoritma dan flowchart dari perancangan sistem ini yaitu Algoritma dan Flowchart Enkripsi serta Algoritma dan Flowchart dekripsi.

46 III.3.3.1. Algoritma Dan Flowchart Untuk Proses Enkripsi Gambaran aliran proses dari algoritma enkripsi dapat dilihat sebagai berikut dalam bentuk flowchart pada Gambar III.15. Gambar III.15. Flowchart Proses Enkripsi

47 Algoritma ini digunakan untuk melakukan proses enkripsi. Rincian prosesnya dapat dilihat sebagai berikut : 1. Start. 2. Input blok plainteks 64-bit. 3. Partisi blok plainteks menjadi 2 sub blok 32-bit. 4. Input blok kunci enkripsi 128-bit. 5. Partisi blok kunci enkripsi menjadi 4 sub blok kunci. 6. i = 1. 7. Proses Enkripsi tahap I. 8. Proses Enkripsi tahap II. 9. i = i 1. 10. Periksa apakah i <=32. 11. Jika tidak kembali ke langkah (7). 12. Jika ya, gabung cipherteks. 13. Stop. III.3.3.2. Algoritma Dan Flowchart Untuk Proses Dekripsi Gambaran aliran proses dari algoritma dekripsi diatas dilihat sebagai berikut dalam bentuk flowchart pada Gambar III.16.

Gambar III.16. Flowchart Proses Dekripsi 48

49 Algoritma ini digunakan untuk melakukan proses dekripsi. Rincian prosesnya dapat dilihat sebagai berikut : 1. Start. 2. Input blok cipherteks 64-bit. 3. Partisi blok cipherteks menjadi 2 sub blok 32-bit. 4. Input blok kunci deskripsi 128-bit. 5. Partisi blok kunci dekripsi menjadi 4 sub blok kunci. 6. i = 1. 7. Proses dekripsi tahap I. 8. Proses dekripsi tahap II. 9. i = i 1. 10. Periksa apakah i <=32. 11. Jika tidak kembali ke langkah ( 7). 12. Jika ya, diperoleh pesan asli (Cipherteks). 13. Stop.