• Tidak ada hasil yang ditemukan

Perancangan Perangkat Lunak Pembelajaran Kriptografi Metoda Wake

N/A
N/A
Protected

Academic year: 2016

Membagikan "Perancangan Perangkat Lunak Pembelajaran Kriptografi Metoda Wake"

Copied!
81
0
0

Teks penuh

(1)

KRIPTOGRAFI METODA WAKE

SKRIPSI

LISTIA ANDHARTI

100823016

DEPARTEMEN MATEMATIKA

FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM

UNIVERSITAS SUMATERA UTARA

(2)

KRIPTOGRAFI METODA WAKE

SKRIPSI

Diajukan untuk melengkapi tugas dan memenuhi syarat mencapai gelar Sarjana Sains

LISTIA ANDHARTI

100823016

DEPARTEMEN MATEMATIKA

FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM

UNIVERSITAS SUMATERA UTARA

(3)

PERSETUJUAN

Judul : PERANCANGAN PERANGKAT LUNAK

PEMBELAJARAN KRIPTOGRAFI METODA WAKE

Kategori : SKRIPSI

Nama : LISTIA ANDHARTI

Nomor Induk Mahasiswa : 100823016

Program Studi : SARJANA (S1) MATEMATIKA Departemen : MATEMATIKA

Fakultas : MATEMATIKA DAN ILMU PENGETAHUAN ALAM (FMIPA) UNIVERSITAS SUMATERA UTARA

Diluluskan di

Medan, September 2013

Komisi Pembimbing :

Pembimbing II, Pembimbing I,

Drs. Marihat Situmorang, M.Kom Drs. Sawaluddin, M.IT NIP. 19631214 198903 1 001 NIP. 19591231 199802 1 001

Diketahui

Departemen Matematika FMIPA USU Ketua,

(4)

PERNYATAAN

PERANCANGAN PERANGKAT LUNAK PEMBELAJARAN KRIPTOGRAFI METODA WAKE

SKRIPSI

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

Medan, September 2013

(5)

PENGHARGAAN

Puji dan syukur saya ucapkan kepada Allah SWT, dengan limpah rahmat dan karunia-Nya, sehingga saya dapat menyelesaikan Skripsi ini. Tak lupa pula shalawat dan salam kepada Nabi Muhammad SAW sebagai suri teladan bagi umat manusia, yang telah membawa kita dari zaman jahiliyah ke zaman yang terang benderang dengan ilmu pengetahuan seperti sekarang ini.

Adapun judul Skripsi ini adalah “PERANCANGAN PERANGKAT LUNAK PEMBELAJARAN KRIPTOGRAFI METODA WAKE”. Skripsi ini merupakan syarat untuk dapat menyelesaikan pendidikan program S-1 Matematika Bidang Komputer Fakultas Matematika dan Ilmu Pengetahuan Alam di Universitas Sumatera Utara.

Pada kesempatan ini, saya juga menyampaikan terima kasih kepada semua pihak yang telah banyak membantu, antara lain :

1. Bapak Sutarman, selaku Dekan Fakultas Matematika dan Ilmu Pengetahuan Alam di Universitas Sumatera Utara;

2. Bapak Prof. Drs. Tulus, Vordipl.Math., M.Si., Ph.D, selaku Ketua Departemen Matematika di FMIPA USU;

3. Bapak Drs. Pengarapen Bangun, M.Si, selaku Koordinator Ektension FMIPA USU;

4. Bapak Drs. Sawaluddin, M.IT, selaku Dosen Pembimbing I yang telah banyak memberikan pengarahan, bimbingan dan kemudahan dalam penulisan Skripsi ini;

5. Bapak Drs. Marihat Situmorang, M.Kom, selaku Dosen Pembimbing II yang juga telah banyak memberikan pengarahan, bimbingan dan kemudahan dalam penulisan Skripsi ini;

6. Bapak Dr. Syahril Efendi, S.Si, M.IT dan Bapak Syahriol Sitorus, S.Si, M.IT, selaku Dosen penguji yang telah banyak memberikan saran dan masukan dalam penyempurnan Skripsi ini;

(6)

8. Kedua orangtua tercinta, Ayahanda Sutiyo dan Ibunda Susilawati yang telah memberikan semangat dan dukungan kepada Penulis;

9. Suami, Wahyudi Manurung yang telah memberikan semangat, dukungan dan bantuan baik moril maupun materi;

10.Teman-teman : Way Yantono Saing, Andi Hazri Hasibuan, Hasnan Aulia Haq dan Ali Makmur Simamora, yang telah banyak membantu dalam penyelesaian Skripsi ini;

11.Senior D-III Ilmu Komputer 2006, Ratih Nindya Kusuma Sidabutar dan suami yang telah banyak sekali membantu dalam perbaikan program dalam Skripsi ini;

12.Junior D-III Ilmu Komputer 2009, Prima Suhendra yang telah banyak sekali membantu dalam penyelesaian program dalam Skripsi ini.

Saya menyadari bahwa Skripsi ini masih memiliki kekurangan, untuk itu saya mengharapkan kritik dan saran yang konstruktif dari semua pihak untuk perbaikan dan kesempuraan Skripsi ini.

Akhirnya, saya berharap semoga Skripsi ini bermanfaat bagi para pembaca.

Medan, September 2013

(7)

ABSTRAK

Perangkat lunak ini bertujuan untuk membantu/mendukung pembelajaran Kriptografi

Metoda WAKE. Sistem ini dirancang menggunakan perangkat lunak Microsoft Visual Basic 6.0 sebagai compiler dan Adobe Photoshop CS4 untuk mendesain interface. Kriptografi Metoda WAKE terletak pada Tabel S-Box dan pembentukan kunci.

Interface didesain sedemikian rupa agar lebih mudah mempelajari proses demi proses

Kriptografi Metoda WAKE.

(8)

DESIGNING SOFTWARE CRYPTOGRAPHY WAKE LEARNING

METHODS

ABSTRACT

This software aims to help / support learning WAKE cryptography method. The

system was designed using the software Microsoft Visual Basic 6.0 as the compiler

and Adobe Photoshop CS4 for designing interfaces. Cryptography methods WAKE

located in Table S-Box and key establishment. Interface is designed in such a way as

to make it easier to learn the Cryptographic Methods WAKE process.

(9)

DAFTAR ISI

Halaman

PERSETUJUAN ii

PERNYATAAN iii

PENGHARGAAN iv

ABSTRAK vi

ABSTACT vii

DAFTAR ISI viii

DAFTAR TABEL xi

DAFTAR GAMBAR xii

BAB 1 PENDAHULUAN 1

1.1 Latar Belakang 1

1.2 Perumusan Masalah 2

1.3 Tujuan dan Manfaat Penulisan 2

1.4 Pembatasan Masalah 2

1.5 Metodologi Penyelesaian Masalah 3

BAB 2 LANDASAN TEORI 4

2.1 Kriptografi 4

2.2 Sistem Kriptografi 6

2.2.1 Sistem Kriptografi Simetris 6

2.2.2 Sistem Kriptografi Asimetris 7

2.2.3 Stream Chiper 8

2.3 Dasar-Dasar Matematika kriptografi 9

(10)

2.3.2 OR 10

2.3.3 XOR 10

2.3.4 Pergeseran Bit (Shift) 11

2.4 WAKE (Word Auto Key Encryption) 12

2.4.1 Proses Pembentukan Tabel S-Box 12

2.4.2 Proses Pembentukan Kunci 14

2.4.3 Proses Enkripsi dan Dekripsi 15

2.5 Perangkat Lunak Pembelajaran 15

2.5.1 Tujuan Perangkat Lunak Pembelajaran 16

2.5.2 Jenis-Jenis Perangkat Lunak Pembelajaran 16

BAB 3 PEMBAHASAN DAN PERANCANGAN 18

3.1 Pembahasan 18

3.1.1 Proses Pembentukan Tabel S-Box 18

3.1.2 Proses Pembentukan Kunci 22

3.2.5 Form Input Proses Pembentukan Kunci 37

3.2.6 Form Proses Pembentukan Kunci 38

3.2.7 Form Input Proses Enkripsi 39

3.2.8 Form Input Proses Dekripsi 40

3.2.9 Form Proses Enkripsi/Dekripsi 41

(11)

3.2.11 Form Hasil Pembentukan Kunci 44

3.2.12 Form About 45

BAB 4 ALGORITMA DAN IMPLEMENTASI 46

4.1 Algoritma 46

4.1.1 Algoritma Proses Pembentukan Tabel S-Box 46

4.1.2 Algoritma Proses Pembentukan Kunci 48

4.1.3 Algoritma Proses Enkripsi 50

4.1.4 Algoritma Proses Dekripsi 51

4.2 Implementasi Sistem 51

4.2.1 Spesifikasi Perangkat Keras dan Perangkat Lunak 52

4.2.2 Tampilan Output 52

4.3 Pengujian Perangkat Lunak 58

4.3.1 Black Box Testing 58

4.3.2 White Box Testing 61

BAB 5 KESIMPULAN DAN SARAN 62

5.1 Kesimpulan 62

5.2 Saran 62

DAFTAR PUSTAKA 64

(12)

DAFTAR TABEL

Halaman

Tabel 2.1 Aturan Operasi AND 9

Tabel 2.2 Aturan Operasi OR 10

Tabel 2.3 Aturan Operasi XOR 11

Tabel 3.1 Tabel ASCII 19

(American Standard Code for Information Interchange)

(13)

DAFTAR GAMBAR

Halaman

Gambar 2.1 Model Sederhana Sistem Kriptografi Simetris 6 Gambar 2.2 Model Sederhana Sistem Kriptografi Asimetris 8 Gambar 2.8 Bagan Proses Pembentukan Kunci 14 Gambar 3.8 Rancangan Form Input Proses Pembentukan Kunci 37 Gambar 3.9 Rancangan Form Proses Pembentukan Kunci 38 Gambar 3.10 Rancangan Form Input Proses Enkripsi 39 Gambar 3.11 Rancangan Form Input Proses Dekripsi 40 Gambar 3.12 Rancangan Form Proses Enkripsi/Dekripsi 41 Gambar 3.13 Rancangan Form Tabel S-Box 43 Gambar 3.14 Rancangan Form Hasil Pembentukan Kunci 44

(14)

ABSTRAK

Perangkat lunak ini bertujuan untuk membantu/mendukung pembelajaran Kriptografi

Metoda WAKE. Sistem ini dirancang menggunakan perangkat lunak Microsoft Visual Basic 6.0 sebagai compiler dan Adobe Photoshop CS4 untuk mendesain interface. Kriptografi Metoda WAKE terletak pada Tabel S-Box dan pembentukan kunci.

Interface didesain sedemikian rupa agar lebih mudah mempelajari proses demi proses

Kriptografi Metoda WAKE.

(15)

DESIGNING SOFTWARE CRYPTOGRAPHY WAKE LEARNING

METHODS

ABSTRACT

This software aims to help / support learning WAKE cryptography method. The

system was designed using the software Microsoft Visual Basic 6.0 as the compiler

and Adobe Photoshop CS4 for designing interfaces. Cryptography methods WAKE

located in Table S-Box and key establishment. Interface is designed in such a way as

to make it easier to learn the Cryptographic Methods WAKE process.

(16)

BAB 1

PENDAHULUAN

1.1 Latar Belakang

Kriptografi, secara umum adalah ilmu dan seni untuk menjaga kerahasiaan pesan. Selain pengertian tersebut terdapat pula diartikan sebagai ilmu yang mempelajari

teknik-teknik matematika yang berhubungan dengan aspek keamanan informasi

seperti kerahasiaan data, keabsahan data, integritas data, serta autentikasi data. Metoda

WAKE merupakan salah satu metoda yang telah digunakan secara komersial. WAKE

merupakan singkatan dari Word Auto Key Encryption. Metoda ini ditemukan oleh David J. Wheeler pada tahun 1993. Tujuannya adalah untuk mendesain sebuah sistem

enkripsi dengan keamanan tinggi. Inti dari algoritma WAKE adalah proses

pembentukan S-box dan pembentukan kunci. Metoda WAKE ini telah digunakan pada

program Dr. Solomon Anti Virus versi terbaru. Proses penyelesaian metoda ini cukup rumit dan sulit untuk dikerjakan secara manual berhubung karena algoritmanya yang

cukup panjang dan kompleks.

Dalam ilmu kriptografi, selain metoda WAKE, masih banyak metoda yang

dapat digunakan untuk mengamankan data. Setiap metoda memiliki kelebihan dan

kekurangannya masing-masing. Namun, untuk mengetahui dan memahami cara kerja

dari metoda kriptografi tersebut diperlukan suatu perangkat lunak untuk mempelajari

metoda kriptografi tersebut. Penulis memilih metoda WAKE karena metoda ini cukup

(17)

Berdasarkan uraian di atas maka Penulis ingin membuat tugas akhir dengan judul “Perancangan Perangkat Lunak Pembelajaran Metoda Kriptografi WAKE (Word Auto Key Encryption)”.

1.2 Perumusan Masalah

Adapun permasalahan dalam pembuatan perangkat lunak ini adalah bagaimana

membuat aplikasi yang dapat menjadi alternatif pembelajaran teori kriptografi metoda

WAKE yang mudah dipahami dengan menampilkan langkah-langkah enkripsi dan

dekripsi.

1.3 Tujuan dan Manfaat Penulisan

Tujuan penyusunan tugas akhir ini adalah untuk merancang suatu perangkat lunak

pembelajaran metoda kriptografi WAKE.

Manfaat dari penyusunan tugas akhir ini yaitu :

1. Untuk membantu mempelajari kriptografi metoda WAKE;

2. Perangkat lunak dapat digunakan sebagai fasilitas pendukung ataupun metoda

alternatif dalam proses belajar mengajar.

1.4 Pembatasan Masalah

Pembatasan permasalahan dalam merancang perangkat lunak ini adalah :

1. Perangkat lunak akan menampilkan tahap-tahap perhitungan dalam bentuk biner

dan heksadesimal;

2. Input data berupa karakter (string) dengan perincian : a. Kunci 16 karakter;

(18)

3. Perangkat lunak menyediakan teori-teori pembentukan tabel, kunci, enkripsi dan

dekripsi dari metoda WAKE;

4. Perangkat lunak akan menampilkan tahapan-tahapan pembentukan tabel, kunci,

enkripsi dan dekripsi.

1.5 Metodologi Penyelesaian Masalah

Langkah-langkah pembuatan perangkat lunak ini antara lain :

1. Menganalisa segala sesuatu yang dibutuhkan dalam pembuatan perangkat lunak;

2. Studi Pustaka, yaitu membaca dan mempelajari buku-buku kriptografi yang

berhubungan dengan kriptografi metoda WAKE, MicrosoftVisual Basic 6.0 dan Adobe Photoshop CS4 untuk mengumpulkan informasi yang dibutuhkan dalam proses perancangan perangkat lunak;

3. Perancangan, yaitu dengan menggunakan Adobe Photoshop CS4 yang meliputi perancangan tampilan interface sistem, fitur apa saja yang akan ditampilkan

dalam sistem dan bagaimana proses jalannya sistem;

4. Pembuatan Program, yaitu pembuatan aplikasi dengan menggunakan bahasa

pemrograman MicrosoftVisual Basic 6.0;

5. Melakukan proses pengujian dan pengecekan kesalahan (error) terhadap perangkat lunak yang telah dirancang;

6. Apabila dalam proses uji coba terdapat error ataupun masih terdapat fitur

yang kurang di dalam perangkat lunak yang dibuat, maka dilakukan revisi program

untuk menyempurnakan kembali perangkat lunak tersebut;

7. Pembuatan Laporan yang membahas mengenai keseluruhan proses pembuatan

(19)

BAB 2

LANDASAN TEORI

2.1 Kriptografi

Menurut Stalling, ada beberapa hal yang terkait dengan keamanan data yaitu :

1. Confidentiality

Menjamin bahwa data tersebut hanya bisa diakses oleh pihak-pihak tertentu saja

(pihak yang telah ditentukan).

2. Authentication

Kedua belah pihak (pengirim dan penerima), perlu mengetahui bahwa pengirim

dan penerima pesan tersebut adalah orang yang sebenarnya seperti yang diklaim.

3. Integrity

Menjamin setiap pesan yang dikirim pasti sampai pada penerimanya tanpa ada

bagian dari pesan tersebut yang diganti, diduplikasi, dirusak, diubah urutannya,

dan ditambahkan.

4. Nonrepudiation

Pengirim maupun penerima tidak dapat mengingkari bahwa mereka telah

mengirimkan atau menerima suatu pesan/informasi. Jika sebuah pesan dikirim,

penerima dapat membuktikan bahwa pesan tersebut memang dikirim oleh

(20)

5. Access Control

Membatasi sumber data hanya kepada orang-orang tertentu.

6. Availability

Jika diperlukan setiap saat semua informasi pada sistem komputer harus tersedia

bagi semua pihak yang berhak atas informasi tersebut.

Kriptografi (cryptography) berasal dari Bahasa Yunani: “cryptós” artinya “secret” (rahasia), dan “gráphein” artinya “writing” (tulisan). Jadi, keseluruhan arti

kriptografi berarti “secret writing” (tulisan rahasia) [1]. Tetapi kriptografi dalam defenisi yang dipakai sebelum tahun 1980-an menyatakan bahwa kriptografi adalah

ilmu dan seni untuk menjaga kerahasian pesan menggunakan penyandian ke dalam

bentuk yang tidak dapat dimengerti lagi maknanya (Schneier, 1996).

Berikut adalah istilah-istilah yang digunakan dalam Bidang Kriptografi : [7]

a. Pesan, Plainteks, dan Chipherteks

Pesan (message) adalah data atau informasi yang dapat dibaca dan dimengerti

maknanya. Nama lain dari pesan adalah plainteks (plaintext). Agar pesan tidak

bisa dimengerti maknanya oleh pihak lain, maka pesan perlu disandikan ke

bentuk lain yang tidak dapat dipahami. Bentuk pesan yang tersandi disebut

cipherteks (chiphertext).

b. Pengirim dan Penerima

Pengirim adalah entitas yang mengirim pesan kepada entitas lainnya. Penerima

adalah entitas yang menerima pesan. Entitas di sini dapat berupa orang, mesin

(komputer), kartu kredit dan sebagainya.

c. Enkripsi dan Dekripsi

Proses menyandikan plainteks menjadi cipherteks disebut enkripsi. Sedangkan

(21)

d. Kunci

Algoritma kriptografi disebut juga ciphernya itu aturan untuk enchipering

dan dechipering, atau fungsi matematika yang digunakan untuk enkripsi dan

dekripsi. Beberapa ciphermemerlukan algoritma yang berbeda untuk

enciphering dan deciphering.

e. Penyadap

Penyadap (eavesdropper) adalah orang yang mencoba menangkap pesan

selama ditransmisikan. Nama lain penyadap: enemy, adversary, intruder,

interceptor, atau bad guy.

2.2 Sistem Kriptografi

Berdasarkan jumlah kunci yang digunakan, ada dua jenis sistem kriptografi yaitu

sistem kriptografi simetris dan sistem kriptografi asimetris.

2.2.1 Sistem Kriptografi Simetris

Algoritma kriprografi simetris adalah algoritma yang menggunakan kunci enkripsi

yang sama dengan kunci dekripsinya. Algoritma kriprografi simetris sering disebut

algoritma kunci rahasia, algoritma kunci tunggal, atau algoritma satu kunci, dan

mengharuskan pengirim dan penerima menyetujui suatu kunci tertentu. Kelebihan dari

algoritma kriprografi simetris adalah waktu proses untuk enkripsi dan dekripsi relatif

cepat. Hal ini disebabkan efesiensi yang terjadi pada pembangkit kunci.

Kunci

enkripsi dekripsi

(a)

(22)

(b)

Gambar 2.1. Model Sederhana Sistem Kriptografi Simetris

Kelebihan algoritma simetris:

1. Kecepatan operasi lebih tinggi bila dibandingkan dengan algoritma asimetris;

2. Karena kecepatan operasinya yang cukup tinggi, maka dapat digunakan pada

sistem real-time.

Kelemahan algoritma simetris:

1. Untuk tiap pengiriman pesan dengan user yang berbeda dibutuhkan kunci yang berbeda juga, sehingga akan terjadi kesulitan dalam manajemen kunci tersebut;

2. Permasalahan dalam pengiriman kunci itu sendiri yang disebut "key

distribution problem".

Contoh dari algoritma kriptografi simetris adalah Cipher Permutasi, Cipher Substitusi,

Cipher Hill, OTP, RC6, Twofish, Magenta, FEAL, SAFER, LOKI, CAST, Rijndael

(AES), Blowfish, GOST, A5, Kasumi, DES, IDEA dan WAKE.

2.2.2 Sistem Kriptografi Asimetris

Sistem kriptografi asimetris biasanya lebih dikenal dengan kriptografi kunci-publik

(public-key cryptography), menggunakan dua jenis kunci, yaitu kunci publik (public key) dan kunci rahasia (secret key).

Kunci publik merupakan kunci yang digunakan untuk mengenkripsi pesan.

(23)

umum, artinya kunci ini tidak dirahasiakan sehingga dapat dilihat oleh siapa saja.

Sedangkan kunci rahasia adalah kunci yang dirahasiakan dan hanya orang-orang

tertentu saja yang boleh mengetahuinya. Algoritma asimetris pertama kali

dipublikasikan oleh Diffie dan Hellman pada tahun 1976 dalam papernya yang

berjudul “New Directions in Cryptography”.

Kelebihan algoritma asimetris:

1. Masalah keamanan pada distribusi kunci dapat lebih baik;

2. Masalah manajemen kunci yang lebih baik karena jumlah kunci yang lebih

sedikit.

Kelemahan algoritma asimetris:

1. Kecepatan yang lebih rendah bila dibandingkan dengan algoritma simetris;

2. Untuk tingkat keamanan sama, kunci yang digunakan lebih panjang

dibandingkan dengan algoritma simetris.

kunci publik kunci pribadi

penerima penerima

enkripsi dekripsi

Gambar 2.2 Model Sederhana Sistem Kriptografi Asimetris

Contoh dari algoritma asimetris adalah RSA, ElGamal, McEliece, LUC dan

DSA (Digital Signature Algorithm).

2.2.3 Stream Cipher

Stream cipher adalah jenis algoritma enkripsi simetri. Stream cipheradalah algoritma sandi yang mengenkripsi data persatuan data, seperti bit, byte, nible atau per lima bit.

Setiap mengenkripsi satu satuan data di gunakan kunci yang merupakan hasil

pembangkitan dari kunci sebelum. Stream cipher dapat dibuat sangat cepat sekali,

(24)

jauh lebih cepat dibandingkan dengan algoritma block cipher yang manapun. Algoritma block cipher secara umum digunakan untuk unit plaintext yang besar sedangkan stream cipher digunakan untuk blok data yang lebih kecil, biasanya ukuran bit.

Contoh stream cipher diantaranya : OTP, RC4, A5/1 yang digunakan pada handphone. Metoda stream cipher yang umum digunakan adalah RC4. Satu hal yang menarik bahwa mode operasi tertentu dari suatu block cipher dapat men-transformasikan secara efektif hasil operasi tersebut ke dalam satu keystream generator dan dalam hal ini, block cipher apa saja dapat digunakan sebagai suatu stream cipher; seperti dalam DES, CFB atau OFB. Akan tetapi, stream ciphers dengan desain khusus biasanya jauh lebih cepat. [1]

2.3 Dasar-Dasar Matematika Kriptografi

Beberapa operasi dasar matematika yang digunakan dalam kriptografi metoda WAKE

adalah operasi AND, OR, XOR dan Shift Right.

2.3.1 AND

Operasi AND dilambangkan dengan tanda “”.

Aturan operasi AND dapat dinyatakan seperti tabel berikut :

Tabel 2.1 Aturan operasi AND

A B A B

0 0 0

0 1 0

1 0 0

(25)

Contoh :

11000110

10110011

--- 

10000010

2.3.2 OR

Operasi OR dilambangkan dengan tanda “”.

Aturan operasi OR dapat dinyatakan seperti tabel berikut :

Tabel 2.2 Aturan operasi OR

A B A B

0 0 0

0 1 1

1 0 1

1 1 1

Contoh :

11000110

10110011

--- 

11110111

2.3.3 XOR

(26)

Tabel 2.3 Aturan Operasi XOR

2.3.4 Pergeseran Bit (Shift)

Pergeseran bit (Shift) adalah operasi pergeseran terhadap suatu barisan bit sebanyak yang diinginkan. Bit kosong yang telah tergeser akan diberikan nilai bit “0” (nol).

Operasi pergeseran terbagi menjadi dua macam yaitu :

1. Operasi Geser Kiri (Shift Left) yaitu operasi yang menggeser sejumlah bit ke kiri (left) dan mengisi tempat kosong dengan nilai bit “0” (nol). Operasi shift left

dilambangkan dengan “<<”. Contoh operasi shift left :

11000110 << 1 : 10001100

11000110 << 2 : 00011000

2. Operasi Geser Kanan (Shift Right) yaitu operasi yang menggeser sejumlah bit ke kanan (right) dan mengisi tempat kosong dengan nilai bit “0” (nol). Operasi shift rightdilambangkan dengan “>>”.

Contoh operasi shift right : [3]

11000110 >> 1 : 01100011

(27)

2.4 WAKE (Word Auto Key Encryption)

Metoda WAKE merupakan salah satu metoda kriptografi simetris dengan

menggunakan algoritma stream cipher WAKE merupakan singkatan dari Word Auto Key Encryption. Metoda ini ditemukan oleh David J. Wheeler pada tahun 1993.

Metoda WAKE menggunakan kunci 128 bit dan sebuah tabel 256 x 32 bit.

Dalam algoritmanya, metoda ini menggunakan operasi XOR, AND, OR dan Shift Right.

Proses utama WAKE terdiri dari :

1. Proses pembentukan tabel S-Box (Substitution Box). 2. Proses pembentukan kunci.

3. Proses enkripsi dan dekripsi.

Inti dari metoda WAKE terletak pada proses pembentukan tabel S-Box dan proses pembentukan kunci. Tabel S-Box dari metoda WAKE bersifat fleksibel dan berbeda-beda untuk setiap putaran. [4]

2.4.1 Proses Pembentukan Tabel S-Box

Pada kriptografi, tabel S-Box adalah komponen dasar dari algoritma kunci simetris. S-Box mengubah bit-bit input menjadi bit-bit output. Pada S-Box yang ideal,

perubahan 1 bit input dapat berakibat perubahan untuk setengah bit-bit output, dan masing-masing bit output tergantung pada setiap bit input. Pada umumnya, S-Box menggunakan beberapa inputm, kemudian mengubahnya menjadi beberapa bit outputn (S-Boxm x n). S-Box tersebut diimplementasikan sebagai suatu table.

Proses pembentukan tabel S-Box adalah sebagai berikut : [5] 1. Inisialisasi nilai TT[0] … TT[7] :

(28)

TT[2] : d3c71fe5 (dalam heksadesimal) TT[3] : ab3c73d2 (dalam heksadesimal) TT[4] : 4d3a8eb3 (dalam heksadesimal) TT[5] : 0396d6e8 (dalam heksadesimal) TT[6] : 3d4c2f7a (dalam heksadesimal) TT[7] : 9ee27cf3 (dalam heksadesimal)

2. Inisialisasi nilai awal untuk T[0] … T[3] : T[0] = K[0]

T[1] = K[1]

K[0], K[1], K[2], K[3] dihasilkan dari kunci yang dipecah menjadi 4 bagian

yang sama panjang.

3. Untuk T[4] sampai T[255], lakukan proses berikut :

X = T[n-4] + T[n-1]

T[n] = X >> 3 XOR TT(X AND 7)

4. Untuk T[0] sampai T[22], lakukan proses berikut :

T[n] = T[n] + T[n+89]

5. Set nilai untuk beberapa variabel di bawah ini :

X = T[33]

7. Inisialisasi nilai untuk beberapa variabel berikut ini :

(29)

2.4.2 Proses Pembentukan Kunci

Proses pembentukan kunci dari metoda WAKE dapat ditentukan sendiri yaitu

sebanyak n putaran. Semakin banyak putaran dari proses pembentukan kunci, maka

keamanan datanya akan semakin terjamin. Fungsi yang digunakan dalam proses

pembentukan kunci adalah M(X, Y) = (X + Y) >> 8 XOR T[(X + Y) AND 255].

Kunci yang di-input akan dipecah menjadi 4 bagian dan di-set sebagai nilai awal dari variabel A0, B0, C0, dan D0. Nilai dari variabel ini akan diproses dengan

melalui langkah berikut : [5]

Ai+1 = M(Ai, Di)

Bi+1 = M(Bi, Ai+1)

Ci+1 = M(Ci, Bi+1)

Di+1 = M(Di, Ci+1)

Nilai dari Di merupakan nilai dari kunci Ki.

Agar lebih jelas, lihatlah bagan proses pembentukan kunci berikut : [3]

Gambar 2.3 Bagan Proses Pembentukan Kunci

(30)

Keterangan :

2.4.3 Proses Enkripsi dan Dekripsi

Inti dari metoda WAKE tidak terletak pada proses enkripsi dan dekripsinya, karena

proses enkripsi dan dekripsinya hanya berupa operasi XOR dari plaintext dan kunci untuk menghasilkan ciphertext atau operasi XOR ciphertext dan kunci untuk menghasilkan plaintext. [4]

P = C  K

2.5 Perangkat Lunak Pembelajaran

Seiring dengan perkembangan peradaban manusia dan kemajuan pesat di bidang

teknologi, tanpa disadari komputer telah ikut berperan dalam dunia pendidikan

terutama penggunaannya sebagai alat bantu pengajaran. Perangkat lunak pembelajaran

adalah suatu program computer yang dirancang khusus untuk membantu proses

pemahaman ilmu dan pengetahuan tertentu.

Banyak istilah yang dipakai untuk menyatakan perangkat lunak pembelajaran

dengan komputer, seperti Computer Assisted Instruction (CAI), Computer Based Ai = Bagian pertama dari pecahan kunci

Bi = Bagian kedua dari pecahan kunci

Ci = Bagian ketiga dari pecahan kunci

(31)

Instruction (CBI), Computer Based Education (CBE), Computer Assisted Learning (CAL), atau Computer Based Training (CBT). [4]

2.5.1 Tujuan Perangkat Lunak Pembelajaran

Tujuan dari perangkat lunak pembelajaran antara lain : [3]

1. Peningkatan pengawasan;

2. Penggunaan sumber daya;

3. Individualisasi;

4. Ketepatan waktu dan tingkat ketersediaan;

5. Pengurangan waktu latihan;

6. Perbaikan hasil kerja;

7. Alat yang nyaman dipakai;

8. Pengganti cara belajar;

9. Peningkatan kepuasan belajar;

10. Pengurangan waktu pengembangan.

2.5.2 Jenis-Jenis Perangkat Lunak Pembelajaran

Jenis pemakaian komputer untuk perangkat lunak pembelajaran digolongkan menjadi

tiga bagian, yaitu :

1. Pengujian

Dalam jenis CBT, komputer digunakan untuk memberikan penilaian dan analisis

tes, membuat soal tes, membuat nilai acak, tes interaksi, dan tes adaptasi. Jenis ini

sering disebut dengan Computer Assisted Testing (CAT).

2. Manajemen

(32)

alat-alat yang dipakai. CMI biasanya digunakan untuk meningkatkan pengawasan dan

efisiensi dalam sistem pelatihan.

3. Instruksi

Ada dua bentuk yang hampir sama mengenai pengguna komputer untuk instruksi.

Computer Assisted Instruction (CAI), menganggap komputer sebagai media penyimpanan instruksi sama seperti slide, tape, video atau buku-buku. Menurut sudut pandang CAI, masalah utamanya adalah bagaimana menyusun bahan-bahan

instruksi yang akan ditampilkan oleh komputer dengan cara yang paling efektif.

Ada tiga jenis CAI yakni :

a. Drill and Practice

Merupakan cara yang paling mudah, terdiri dari tahap-tahap penampilan

permasalahan, penerimaan respon pengguna, pemberian hasil analisis, umpan

balik, dan pemberian pertanyaan lain. Secara umum jenis ini tidak

menampilkan informasi baru tapi memberikan latihan dari konsep yang sudah

ada.

b. Tutorial

Jenis ini berisi konsep atau prosedur yang disertai dengan pertanyaan atau

latihan pada akhir dari pelatihan. Selama pelatihan, komputer mengajarkan

informasi-informasi yang baru kepada siswa seperti layaknya seorang guru

pembimbing. Setelah itu, pemahaman siswa diukur melalui serangkaian tes

dan komputer melanjutkan pengajaran berdasarkan hasil pengukuran tadi.

c. Socratic

Berisi komunikasi antara pengguna dan komputer dalam natural language. Jenis ini sebenarnya berasal dari penelitian dalam bidang intelijensia semu

(33)

BAB 3

PEMBAHASAN DAN PERANCANGAN

3.1 Pembahasan

Proses kriptografi metoda WAKE terdiri atas 4 (empat) proses, yaitu :

1. Proses Pembentukan Tabel S-Box; 2. Proses Pembentukan Kunci;

3. Proses Enkripsi;

4. Proses Dekripsi.

Inti dari metoda WAKE terletak pada proses pembentukan tabel S-Box dan proses pembentukan kunci. Proses enkripsi dan dekripsi hanya berupa operasi XOR

dari plaintext dan kunci untuk menghasilkan ciphertext dan operasi XOR dari ciphertext dan kunci untuk menghasilkan plaintext.

3.1.1 Proses Pembentukan Tabel S-Box

Proses pembentukan tabel S-Box terdiri atas 8 (delapan) proses utama. Dalam prosesnya, pembentukan tabel S-Box memerlukan input kunci dengan panjang 128 bit biner atau 16 karakter ASCII. Untuk lebih jelas, proses ini dapat dilihat pada contoh berikut :

(34)

1. Inisialisasi nilai TT[0] ... TT[7].

TT[0] = 726A8F3B (dalam heksadesimal)

TT[1] = E69A3B5C

2. Pecah kunci menjadi 4 kelompok dan masukkan pada T[0] ... T[3].

Kunci : 'SELAMAT PAGI, BU'

Tabel 3.1 Tabel ASCII (American Standard Code for Information Interchange)

CHARACTER DESIMAL HEXADESIMAL

S 83 53

Kunci (dalam heksa) = 53454C414D415420504147492C204255

(35)

T[1] = K[1] = 4D415420

T[2] = K[2] = 50414749

T[3] = K[3] = 2C204255

3. Untuk n = 4 sampai 255, lakukan prosedur berikut :

n = 4

(dan seterusnya hingga n = 255)

4. Untuk n = 0 sampai 22, lakukan prosedur berikut :

(36)

n = 2

T[2] = T[2] + T[91] = 50414749 + AEC5D102 = FF07184B

n = 3

T[3] = T[3] + T[92] = 2C204255 + F518F1B0 = 21393405

(dan seterusnya hingga n = 22)

5. Set nilai untuk beberapa variabel di bawah ini :

X = BC57E9F7

Z = T[59] OR 01000001 = 72BDA7C5 OR 01000001 = 73BDA7C5

Z = Z AND FF7FFFFF = 73BDA7C5 AND FF7FFFFF = 733DA7C5

X = X AND FF7FFFFF = BC57E9F7 AND FF7FFFFF = 2F9591BC

6. Untuk n = 0 sampai 255, lakukan prosedur berikut :

n = 0

X = (2F9591BC AND FF7FFFFF) + 733DA7C5 = A2533981

T[0] = 7160B1FC] AND 00FFFFFF XOR A2533981 = A233887D

n = 1

X = (A2533981 AND FF7FFFFF) + 733DA7C5 = 1590E146

T[1] = E572D942] AND 00FFFFFF XOR 1590E146 = 15E23804

n = 2

X = (1590E146 AND FF7FFFFF) + 733DA7C5 = 884E890B

T[2] = FF07184B] AND 00FFFFFF XOR 884E890B = 88499140

(dan seterusnya hingga n = 255)

7. Set nilai untuk beberapa variabel berikut.

T[256] = T[0] = A233887D

X = X AND 255(10) = 2FBD56BC AND 255(10) = 000000BC

8. Untuk n = 0 sampai 255, lakukan prosedur berikut. X = (X AND FF7FFFFF) + Z

T[n] = T[n] AND 00FFFFFF XOR X

Temp = (T[n XOR X] XOR X) AND 255

T[n] = T[Temp]

(37)

n = 0

(dan seterusnya hingga n = 255).

3.1.2 Proses Pembentukan Kunci

Proses pembentukan kunci memerlukan inputkunci dengan panjang 128 bit biner atau 16 karakter ASCII. Pertama , input kunci dipecah menjadi 4 kelompok dan di-set sebagai nilai awal dari variabel A0, B0, C0, D0. Kemudian isi variabel A, B, C dan D

dan ulangi sebanyak n-putaran yang di-input.

Ai+1 = M(Ai, Di) Ci+1 = M(Ci, Bi+1)

(38)

Fungsi M(X, Y) = (X + Y)>>8 XOR T[(X + Y) AND 255]. Nilai dari Di

merupakan nilai dari kunci Ki. Proses ini dapat dilihat pada contoh berikut :

Misalkan input key : ‘SELAMAT PAGI, BU’ dan putaran kunci sebanyak 5 kali, maka proses pembentukan kunci dalam heksadesimal adalah sebagai berikut :

Kunci 'SELAMAT PAGI, BU' diubah dalam bentuk heksa =

53454C414D415420504147492C204255

Pecah kunci menjadi 4 kelompok dan masukkan ke A(0), B(0), C(0) dan D(0).

A(0) = 53454C41

FungsiM(A[0],D[0]) = FungsiM(53454C41,2C204255) = (53454C41 +

2C204255)>>8 XOR T[(53454C41 + 2C204255) AND 255(10)] = 7F658E96>>8

XOR T[150] = 007F658E XOR 981DC169 = 9862A4E7

A[1] = 9862A4E7

FungsiM(B[0],A[1]) = FungsiM(4D415420,9862A4E7) = (4D415420 +

9862A4E7)>>8 XOR T[(4D415420 + 9862A4E7) AND 255(10)] = E5A3F907>>8

XOR T[7] = 00E5A3F9 XOR F977E99D = F9924A64

B[1] = F9924A64

FungsiM(C[0],B[1]) = FungsiM(50414749,F9924A64) = (50414749 +

F9924A64)>>8 XOR T[(50414749 + F9924A64) AND 255(10)] = 49D391AD>>8

XOR T[173] = 0049D391 XOR 6415A084 = 645C7315

C[1] = 645C7315

FungsiM(D[0],C[1]) = FungsiM(2C204255,645C7315) = (2C204255 +

645C7315)>>8 XOR T[(2C204255 + 645C7315) AND 255(10)] = 907CB56A>>8

XOR T[106] = 00907CB5 XOR D7260767 = D7B67BD2

(39)

---

KUNCI PUTARAN 2

---

FungsiM(A[1],D[1]) = FungsiM(9862A4E7,D7B67BD2) = (9862A4E7 +

D7B67BD2)>>8 XOR T[(9862A4E7 + D7B67BD2) AND 255(10)] =701920B9>>8

XOR T[185] = 00701920 XOR 9FBC452B = 9FCC5C0B

A[2] = 9FCC5C0B

FungsiM(B[1],A[2]) = FungsiM(F9924A64,9FCC5C0B) = (F9924A64 +

9FCC5C0B)>>8 XOR T[(F9924A64 + 9FCC5C0B) AND 255(10)] = 995EA66F>>8

XOR T[111] = 00995EA6 XOR F23A3EB2 = F2A36014

B[2] = F2A36014

FungsiM(C[1],B[2]) = FungsiM(645C7315,F2A36014) = (645C7315 +

F2A36014)>>8 XOR T[(645C7315 + F2A36014) AND 255(10)] = 56FFD329>>8

XOR T[41] = 0056FFD3 XOR 0138DEF7 = 016E2124

C[2] = 016E2124

FungsiM(D[1],C[2]) = FungsiM(D7B67BD2,016E2124) = (D7B67BD2 +

016E2124)>>8 XOR T[(D7B67BD2 + 016E2124) AND 255(10)] = D9249CF6>>8

XOR T[246] = 00D9249C XOR 49C24168 = 491B65F4

D[2] = 491B65F4

---

KUNCI PUTARAN 3

---

FungsiM(A[2],D[2]) = FungsiM(9FCC5C0B,491B65F4) = (9FCC5C0B +

491B65F4)>>8 XOR T[(9FCC5C0B + 491B65F4) AND 255(10)] = E8E7C1FF>>8

XOR T[255] = 00E8E7C1 XOR DEAB2185 = DE43C644

A[3] = DE43C644

FungsiM(B[2],A[3]) = FungsiM(F2A36014,DE43C644) = (F2A36014 +

DE43C644)>>8 XOR T[(F2A36014 + DE43C644) AND 255(10)] = D0E72658>>8

XOR T[88] = 00D0E726 XOR 89BBFFAF = 896B1889

(40)

FungsiM(C[2],B[3]) = FungsiM(016E2124,896B1889) = (016E2124 +

896B1889)>>8 XOR T[(016E2124 + 896B1889) AND 255(10)] = 8AD939AD>>8

XOR T[173] = 008AD939 XOR 6415A084 = 649F79BD

C[3] = 649F79BD

FungsiM(D[2],C[3]) = FungsiM(491B65F4,649F79BD) = (491B65F4 +

649F79BD)>>8 XOR T[(491B65F4 + 649F79BD) AND 255(10)] = ADBADFB1>>8

XOR T[177] = 00ADBADF XOR 51C0F15F = 516D4B80

D[3] = 516D4B80

---

KUNCI PUTARAN 4

---

FungsiM(A[3],D[3]) = FungsiM(DE43C644,516D4B80) = (DE43C644 +

516D4B80)>>8 XOR T[(DE43C644 + 516D4B80) AND 255(10)] = 2FB111C4>>8

XOR T[196] = 002FB111 XOR 3BA22D9F = 3B8D9C8E

A[4] = 3B8D9C8E

FungsiM(B[3],A[4]) = FungsiM(896B1889,3B8D9C8E) = (896B1889 +

3B8D9C8E)>>8 XOR T[(896B1889 + 3B8D9C8E) AND 255(10)] = C4F8B517>>8

XOR T[23] = 00C4F8B5 XOR 5C647784 = 5CA08F31

B[4] = 5CA08F31

FungsiM(C[3],B[4]) = FungsiM(649F79BD,5CA08F31) = (649F79BD +

5CA08F31)>>8 XOR T[(649F79BD + 5CA08F31) AND 255(10)] = C14008EE>>8

XOR T[238] = 00C14008 XOR 7724A9A9 = 77E5E9A1

C[4] = 77E5E9A1

FungsiM(D[3],C[4]) = FungsiM(516D4B80,77E5E9A1) = (516D4B80 +

77E5E9A1)>>8 XOR T[(516D4B80 + 77E5E9A1) AND 255(10)] = C9533521>>8

XOR T[33] = 00C95335 XOR 9FBC452B = 9F75161E

(41)

---

KUNCI PUTARAN 5

---

FungsiM(A[4],D[4]) = FungsiM(3B8D9C8E,9F75161E) = (3B8D9C8E +

9F75161E)>>8 XOR T[(3B8D9C8E + 9F75161E) AND 255(10)] = DB02B2AC>>8

XOR T[172] = 00DB02B2 XOR 2B877278 = 2B5C70CA

A[5] = 2B5C70CA

FungsiM(B[4],A[5]) = FungsiM(5CA08F31,2B5C70CA) = (5CA08F31 +

2B5C70CA)>>8 XOR T[(5CA08F31 + 2B5C70CA) AND 255(10)] = 87FCFFFB>>8

XOR T[251] = 0087FCFF XOR 1E2E7E26 = 1EA982D9

B[5] = 1EA982D9

FungsiM(C[4],B[5]) = FungsiM(77E5E9A1,1EA982D9) = (77E5E9A1 +

1EA982D9)>>8 XOR T[(77E5E9A1 + 1EA982D9) AND 255(10)] = 968F6C7A>>8

XOR T[122] = 00968F6C XOR 95F71933 = 9561965F

C[5] = 9561965F

FungsiM(D[4],C[5]) = FungsiM(9F75161E,9561965F) = (9F75161E +

9561965F)>>8 XOR T[(9F75161E + 9561965F) AND 255(10)] = 34D6AC7D>>8

XOR T[125] = 0034D6AC XOR 4E03B7B2 = 4E37611E

D[5] = 4E37611E

KUNCI = D[5] = 4E37611E

3.1.3 Proses Enkripsi

Proses enkripsi dari metoda WAKE untuk menghasilkan ciphertext adalah berupa hasil operasi XOR dari plaintext dan 32 bit kunci yang dihasilkan dari proses pembentukan kunci.

(42)

3.1.4 Proses Dekripsi

Proses dekripsi dari metoda WAKE untuk menghasilkan plaintext adalah berupa hasil operasi XOR dari ciphertext dan 32 bit kunci yang dihasilkan dari proses pembentukan kunci.

3.2 Perancangan

Dalam perancangan aplikasi kritptografi WAKE ini, dibutuhkan suatu metoda yang

sistematis dan terurut, yaitu Metoda Waterfall Model. Pada metoda ini terdapat 5

(lima) tahapan, yaitu :

Gambar 3.1 Waterfall Model

Plaintext (P) = Ciphertext (C) XOR Key (K)

Analisa Kebutuhan

Desain Sistem dan Aplikasi

Implementasi

Pengujian Perangkat Lunak

(43)

1. Analisa Kebutuhan

Pada tahap ini dilakukan proses pengumpulan data yang kemudian akan

dianalisa agar diketahui apa saja yang diperlukan untuk pembuatan aplikasi.

Beberapa poin yang harus ada di dalamnya, yaitu :

a. Aplikasi dapat melakukan proses enkripsi dan dekripsi dengan

menggunakan inputan data numerik dan karakter;

b. Spesifikasi perangkat lunak yang digunakan dalam aplikasi adalah

Microsoft Visual Basic 6.0, Microsoft Visio dan Adobe Photoshop CS4.

c. Spesifikasi Perangkat Keras yang digunakan adalah sebagai berikut :

1. Prosesor Intel Pentium IV 2.26 GHz.

2. Memory 256 MB.

3. Harddisk 40 GB.

4. VGA card 32 MB.

5. Monitor dengan resolusi 1024 X 768 pixel. 6. Keyboard dan Mouse.

2. Desain Sistem dan Aplikasi

Berdasarkan semua data yang dikumpulkan maka pada tahap ini aplikasi dan

semua sistem terkait didesain sedemikian rupa agar memenuhi kebutuhan

(44)

Gambar 3.2 Flowchart Proses Enkripsi

NO

YES START

Input Kunci = 16

VALID

Proses S-Box T[0] …… T[256]

Proses Pembentukan Kunci D[n] = …..?

Input Plaintext

ENKRIPSI Plaintext XOR D[n]

KELUAR

(45)

Gambar 3.3 Flowchart Proses Dekripsi

3. Implementasi

Dari desain yang telah dibuat maka pada tahap ini penulisan kode program

dilakukan untuk menjadikan aplikasi secara utuh.

4. Pengujian Perangkat Lunak

Pada tahap ini, aplikasi akan diuji apakah sudah sesuai dengan yang

diharapkan berdasarkan analisis kebutuhan. START

Input Kunci = 16

VALID

Proses S-Box T[0] …… T[256]

Proses Pembentukan Kunci D[n] = …..?

Input Plaintext

DEKRIPSI Ciphertext XOR D[n]

KELUAR

SIMPAN NO

YES

(46)

5. Maintenance

Pada tahap ini, kesalahan-kesalahan atau bugs yang diketahui saat melakukan

pengujian akan diperbaiki agar aplikasi dapat berjalan sesuai dengan

kebutuhan.

Perangkat lunak pembelajaran ini memiliki beberapa form, seperti : 1. FormMain.

2. Form Teori.

3. FormInput Proses S-Box. 4. Form Proses S-Box.

5. FormInput Proses Pembentukan Kunci. 6. Form Proses Pembentukan Kunci. 7. FormInput Proses Enkripsi. 8. FormInput Proses Dekripsi. 9. Form Proses Enkripsi / Dekripsi. 10.Form Tabel S-Box.

11.Form Hasil Pembentukan Kunci. 12.Form About.

13.Form Teori Kriptografi.

3.2.1 Form Main

(47)

Gambar 3.4 Rancangan Form Main

Keterangan :

1 : title bar, berisikan tulisan ‘Perangkat lunak pembelajaran kriptografi – metoda WAKE’.

2 : tombol ‘Minimize’, berfungsi untuk mengecilkan tampilan form. 3 : tombol ‘Maximize’, berfungsi untuk memperbesar tampilan form. 4 : tombol ‘Close’, berfungsi untuk menutup form dan keluar dari program.

5 : menu baryang berisikan menu ‘File’, ‘Teori Kriptografi WAKE’, ‘Pembelajaran WAKE’, dan ‘Tentang’.

6 : nama perangkat lunak.

7 : data penyusun skripsi atau pembuat perangkat lunak.

8 : data kampus.

Menu-menu yang terdapat pada FormMain dapat dirincikan sebagai berikut :

1. Menu ‘File’, memiliki beberapa sub menu, antara lain :

(48)

b. Sub menu ‘Simpan Data’, berfungsi untuk menyimpan data (kunci, plaintext dan ciphertext).

c. Sub menu ‘Keluar’, berfungsi untuk keluar dari perangkat lunak.

2. Menu ‘Teori Kriptografi WAKE’, memiliki beberapa sub menu, antara lain : a. Sub menu ‘Kriptografi - Metoda WAKE’, berfungsi untuk menampilkan

teori mengenai metoda WAKE.

b. Sub menu ‘Pembentukan Tabel S-Box’, berfungsi untuk menampilkan teori mengenai proses pembentukan tabel S-Box pada metoda WAKE. c. Sub menu ‘Pembentukan Kunci’, berfungsi untuk menampilkan teori

mengenai proses pembentukan kunci pada metoda WAKE.

d. Sub menu ‘Proses Enkripsi’, berfungsi untuk menampilkan teori mengenai proses enkripsi pada metoda WAKE.

e. Sub menu ‘Proses Dekripsi’, berfungsi untuk menampilkan teori mengenai proses dekripsi pada metoda WAKE.

3. Menu ‘Pembelajaran WAKE’ memiliki beberapa sub menu, antara lain : a. Sub menu ‘Proses S-Box’, berfungsi untuk menampilkan formInput

Proses S-Box’.

b. Sub menu ‘Proses Pembentukan Kunci’, berfungsi untuk menampilkan formInputProses Pembentukan Kunci’.

c. Sub menu ‘Proses Enkripsi’, berfungsi untuk menampilkan formInput

Proses Enkripsi’.

d. Sub menu ‘Proses Dekripsi’, berfungsi untuk menampilkan formInput

Proses Dekripsi’.

(49)

3.2.2 Form Teori

Gambar 3.5 Rancangan Form Teori

Keterangan :

1 : judul teori.

2 : daerah tampilan teori.

3 : tombol ‘Sebelumnya’, berfungsi melihat halaman teori sebelumnya. 4 : tombol ‘Berikutnya’, berfungsi melihat ke halaman teori selanjutnya.

(50)

3.2.3 Form Input Proses S-Box

Gambar 3.6 Rancangan Form Input Proses S-Box

Keterangan :

1 : title bar, berisikan tulisan ‘Proses S-Box’.

2 : tombol ‘Close’, berfungsi untuk menutup form‘Proses S-Box’. 3 : textbox sebagai tempat pengisian input kunci.

4 : option button‘Biner’, berfungsi untuk memilih proses ditampilkan dalam biner. 5 : option button‘Heksadesimal’, berfungsi untuk memilih proses ditampilkan dalam bentuk Heksadesimal.

6 : label‘Lihat Hasil / Tabel S-Box’, berfungsi untuk menampilkan form‘Tabel S- Box’.

(51)

3.2.4 Form Proses S-Box

Gambar 3.7 Rancangan Form Proses S-Box

Keterangan :

1 : title bar, berisikan tulisan ‘Proses S-Box’.

2 : tombol ‘Close’, berfungsi untuk menutup form‘Proses S-Box’. 3 : daerah tampilanalgoritma untuk pembentukan tabel S-Box.

4 : daerah tampilan bagan.

5 : combo box ‘Kecepatan, berfungsi untuk memilih kecepatan proses. 6 : daerah tampilan hasil eksekusi proses.

7 : tombol ‘Jalankan’, berfungsi untuk memulai proses pembentukan tabel S-Box. 8 : tombol ‘Skip’, berfungsi untuk menghasilkan tabel S-Box tanpa melalui animasi tahapan– tahapan proses yang ada.

9 : tombol ‘Ulang’, berfungsi untuk mengulangi proses pembentukan tabel S-Box. 10 : tombol ‘Simpan’, berfungsi untuk menyimpan hasil eksekusi.

11 : tombol ‘Cetak’, berfungsi untuk mencetak hasil eksekusi.

(52)

3.2.5 Form Input Proses Pembentukan Kunci

Gambar 3.8 Rancangan Form Input Proses Pembentukan Kunci

Keterangan :

1 : title bar, berisikan tulisan ‘Proses Pembentukan Kunci’.

2 : tombol ‘Close’, berfungsi untuk menutupform‘Input Proses Pembentukan Kunci’.

3 : option button‘Biner’, berfungsi untuk memilih proses ditampilkan dalam biner. 4 : option button‘Heksadesimal’, berfungsi untuk memilih proses ditampilkan dalam bentuk Heksadesimal.

5 : textbox sebagai tempat pengisian banyaknya putaran untuk menghasilkan kunci. 6 : textbox sebagai tempat pengisian input kunci.

7 : label‘Lihat Tabel S-Box’, berfungsi untuk menampilkan form‘Tabel S-Box’. 8 : label‘Kunci yang terbentuk’, berfungsi untuk menampilkan form‘Hasil Pembentukan Kunci’.

9 : tombol ‘Proses’, berfungsi untuk menampilkan form‘Proses Pembentukan Kunci’.

(53)

3.2.6 Form Proses Pembentukan Kunci

Gambar 3.9 Rancangan Form Proses Pembentukan Kunci

Keterangan :

1 : title bar, berisikan tulisan ‘Proses Pembentukan Kunci’.

2 : tombol ‘Close’, berfungsi untuk menutup form‘Proses Pembentukan Kunci’. 3 : daerah tampilandiagram pembentukan kunci.

4 : combo box ‘Kecepatan, berfungsi untuk memilih kecepatan proses. 5 : daerah tampilan hasil eksekusi proses.

6 : tombol ‘Jalankan’, berfungsi untuk memulai proses pembentukan kunci. 7 : tombol ‘Skip’, berfungsi untuk menghasilkan kuncitanpa melalui animasi tahapan– tahapan proses yang ada.

8 : tombol ‘Ulang’, berfungsi untuk mengulangi proses pembentukan kunci. 9 : tombol ‘Simpan’, berfungsi untuk menyimpan hasil eksekusi.

10 : tombol ‘Cetak’, berfungsi untuk mencetak hasil eksekusi.

(54)

3.2.7 Form Input Proses Enkripsi

Gambar 3.10 Rancangan Form Input Proses Enkripsi

Keterangan :

1 : title bar, berisikan tulisan ‘Proses Enkripsi’.

2 : tombol ‘Close’, berfungsi untuk menutup form‘Input Proses Enkripsi’. 3 : textbox sebagai tempat pengisian inputplaintext.

4 : textbox sebagai tempat pengisian inputkunci.

5 : textbox dan updown sebagai tempat pengisian banyaknya putaran untuk menghasilkan kunci.

6 : option button ‘Heksadesimal dan Biner’, berfungsi untuk memilih proses ditampilkan dalam bentuk heksa decimal atau biner.

7 : tombol ‘Keluar’, berfungsi untuk keluar dari form ‘Input Proses Enkripsi’ dan kembali ke formMain’.

(55)

9 : label ‘Kunci yang terbentuk’, berfungsi untuk menampilkan form ‘Hasil

Pembentukan Kunci’.

10 : label‘Lihat Tabel S-Box’, berfungsi untuk menampilkan form‘Tabel S-Box’.

3.2.8 Form Input Proses Dekripsi

Gambar 3.11 Rancangan Form Input Proses Dekripsi

Keterangan :

1 : title bar, berisikan tulisan ‘Proses Dekripsi’.

2 : tombol ‘Close’, berfungsi untuk menutup form‘Input Proses Dekripsi’. 3 : textbox sebagai tempat pengisian inputciphertext.

4 : textbox sebagai tempat pengisian inputkunci.

5 : option button ‘Heksadesimal dan Biner’, berfungsi untuk memilih proses ditampilkan dalam bentuk heksa decimal atau Biner.

(56)

7 : tombol ‘Keluar’, berfungsi untuk keluar dari form‘Input Proses Dekripsi’ dan kembali ke formMain’.

8 : tombol ‘Proses’, berfungsi untuk menampilkan form‘Proses Enkripsi / Dekripsi’.

9 : label‘Kunci yang terbentuk’, berfungsi untuk menampilkan form‘Hasil Pembentukan Kunci’.

10 : label‘Lihat Tabel S-Box’, berfungsi untuk menampilkan form‘Tabel S-Box’.

3.2.9 Form Proses Enkripsi / Dekripsi

(57)

(b)

Gambar 3.12 Rancangan Form Proses Enkripsi / Dekripsi

Keterangan :

1 : title bar, berisikan tulisan ‘Proses Enkripsi’atau ‘Proses Dekripsi’. 2 : tombol ‘Close’, berfungsi untuk menutup form.

3 : label, untuk menampilkan nama proses (proses enkripsi atau dekripsi). 4 : combo box ‘Kecepatan, berfungsi untuk memilih kecepatan proses. 5 : daerah tampilandiagram enkripsi atau dekripsi.

6 : daerah tampilan hasil eksekusi proses.

7 : tombol ‘Jalankan’, berfungsi untuk memulai proses enkripsi atau dekripsi. 8 : tombol ‘Skip’, berfungsi untuk menghasilkan plaintext atau ciphertext tanpa melalui animasi tahapan– tahapan proses yang ada.

8 : tombol ‘Ulang’, berfungsi untuk mengulangi proses enkripsi atau dekripsi. 9 : tombol ‘Simpan’, berfungsi untuk menyimpan hasil eksekusi.

(58)

3.2.10 Form Tabel S-Box

Gambar 3.13 Rancangan Form Tabel S-Box

Keterangan :

1 : title bar, berisikan tulisan ‘Tabel S-Box’.

2 : tombol ‘Close’, berfungsi untuk menutup form‘Tabel S-Box’. 3 : tabel S-Box.

(59)

3.2.11 Form Hasil Pembentukan Kunci

Gambar 3.14 Rancangan Form Hasil Pembentukan Kunci

Keterangan :

1 : title bar, berisikan tulisan ‘Hasil Pembentukan Kunci’.

2 : tombol ‘Close’, berfungsi untuk menutup form. 3 : label, untuk menampilkan input key.

4 : label, untuk menampilkan input putaran kunci.

(60)

3.2.12 Form About

Gambar 3.15 Rancangan Form About

Keterangan :

1 : title bar, berisikan tulisan ‘Tentang Kriptografi – Metoda WAKE’. 2 : tombol ‘Close’, berfungsi untuk menutup form.

3 : gambar icon dari perangkat lunak. 4 : judul skripsi.

5 : data penyusun skripsi dan kampus. 6 : tombol ‘OK’ untuk keluar dari form.

(61)

597

BAB 4

ALGORITMA DAN IMPLEMENTASI

4.1 Algoritma

Algoritma perancangan perangkat lunak pembelajaran kriptografi metode WAKE

dibagi menjadi 4 bagian yaitu :

1. Algoritma Proses Pembentukan Tabel S-Box. 2. Algoritma Proses Pembentukan Kunci.

3. Algoritma Proses Enkripsi.

4. Algoritma Proses Dekripsi.

4.1.1 Algoritma Proses Pembentukan Tabel S-Box

Proses pembentukan tabel S-Box memerlukan input kunci 16 karakter ascii atau 128 bit biner, sehingga tabel S-Box pada metode WAKE adalah berbeda untuk input kunci yang berbeda.

Algoritma proses pembentukan tabel S-Box adalah sebagai berikut : {1. Inisialisasi nilai TT[0] - T[7]}

TT(0) = FHexToBiner("726a8f3b")

TT(1) = FHexToBiner("e69a3b5c")

TT(2) = FHexToBiner("d3c71fe5")

TT(3) = FHexToBiner("ab3c73d2")

TT(4) = FHexToBiner("4d3a8eb3")

(62)

TT(6) = FHexToBiner("3d4c2f7a")

TT(7) = FHexToBiner("9ee27cf3")

{2. Pecah kunci (128 bit) menjadi 4 kelompok dan masukkan nilainya ke T[0], T[1],

T[2], T[3]}

X = ""

For N = 1 To Len(pcKunci)

X = X & FormatS(FDecToBiner(Asc(Mid(pcKunci,N, 1))),"0",8)

Next N

T(0) = Mid(X, 1, 32)

T(1) = Mid(X, 33, 32)

T(2) = Mid(X, 65, 32)

T(3) = Mid(X, 97, 32)

{3. Untuk N = 4 sampai 255, lakukan proses berikut} For N = 4 To 255

TT(FBinerToDec(FOpBiner("AND", X, "111"))), 32)

Next N

{4. Untuk N = 0 sampai 22, lakukan proses berikut} For N = 0 To 22

{T[n] = T[n] + T[n+89]}

T(N) = FAddBiner(T(N), T(N + 89), 32)

Next N

{5. Set nilai untuk variabel di bawah ini} X = T(33)

Z = FOpBiner("OR", T(59), FHexToBiner("01000001"), 32)

Z = FOpBiner("AND", Z, FHexToBiner("FF7FFFFF"), 32)

X = FAddBiner(FOpBiner("AND", X, FHexToBiner("FF7FFFFF"),32),

(63)

{6. Untuk N = 0 sampai 255, lakukan proses berikut} For N = 0 To 255

{X = (X And FF7FFFFF) + Z}

X = FAddBiner(FOpBiner("AND",X,_

FHexToBiner("FF7FFFFF"),32),Z,32)

{T[n] = T[n] AND 00FFFFFF XOR X}

T(N) = FOpBiner("XOR", FOpBiner("AND", T(N), _

FHexToBiner("00FFFFFF"), 32), X, 32)

Next N

{7. Inisialisasi nilai untuk beberapa variabel berikut} T(256) = T(0)

X = FOpBiner("AND", X, FDecToBiner(255), 32)

{8. Untuk N = 0 sampai T[255], lakukan proses berikut} For N = 0 To 255

{Temp = (T[n XOR X] XOR X) AND 255}

Temp = T(FBinerToDec(FOpBiner("XOR", FDecToBiner(N), X,

32)))

Temp = FOpBiner("XOR", Temp, X, 32)

Temp = FOpBiner("AND", Temp, FDecToBiner(255), 32)

4.1.2 Algoritma Proses Pembentukan Kunci

Proses pembentukan kunci pada metode WAKE adalah sebanyak n putaran. Banyak

(64)

Algoritma proses pembentukan kunci adalah sebagai berikut :

{1. Ubah kunci 128 bit ke biner, pecah menjadi 4 kelompok dan masukkan nilainya ke A[0], B[0], C[0], D[0] masing – masing 32 bit}

X = ""

For N = 1 To Len(pcKunci)

X = X & FormatS(FDecToBiner(Asc(Mid(pcKunci,N, 1))),"0",8)

Next N

Perancangan algoritma untuk fungsi M(X,Y) yang dipakai di dalam proses ini

dalam bentuk sebuah fungsi. Algoritma fungsi M(X,Y) adalah sebagai berikut :

{FUNGSI M(X,Y)}

Public Function FungsiM(pX As String, pY As String) As String

(65)

{Temp1 = (X + Y) And 255}

Temp1 = FBinerToDec(FOpBiner("AND", Temp1, "11111111"))

{Temp1 = T[(X + Y) And 255)]}

4.1.3 Algoritma Proses Enkripsi

Proses enkripsi pada metode WAKE adalah melakukan operasi XOR dari plaintext (32 bit) dan kunci (32 bit) untuk menghasilkan ciphertext (32 bit).

Algoritma proses enkripsi adalah sebagai berikut :

{Text untuk di-enkripsi (plaintext)} strPlain = pcEnkripsi

{Ubah plaintext dari karakter ascii ke bentuk biner} X = ""

For N = 1 To Len(strPlain)

X = X & FormatS(FDecToBiner(Asc(Mid(strPlain,N, 1))),"0",8)

Next N

{XOR-kan plaintext dengan kunci}

X = FOpBiner("XOR", X, strKunciBiner, 32)

{Hasil XOR - ubah menjadi karakter ascii} cHasil = ""

For N = 8 To 32 Step 8

cHasil = cHasil & Chr(FBinerToDec(Mid(X, N - 7, 8)))

(66)

{Ciphertext– hasil enkripsi} strCipher = cHasil

4.1.4 Algoritma Proses Dekripsi

Proses dekripsi pada metode WAKE adalah melakukan operasi XOR dari ciphertext (32 bit) dan kunci (32 bit) untuk menghasilkan plaintext (32 bit).

Algoritma proses dekripsi adalah sebagai berikut :

{Text untuk di-dekripsi (ciphertext)} strCipher = pcDekripsi

{Ubah ciphertext dari karakter ASCII ke bentuk biner} X = ""

For N = 1 To Len(strCipher)

X = X & FormatS(FDecToBiner(Asc(Mid(strCipher,N,1))),"0",8)

Next N

{XOR-kan ciphertext dengan kunci}

X = FOpBiner("XOR", X, strKunciBiner, 32)

{Hasil XOR - ubah menjadi karakter ascii} cHasil = ""

For N = 8 To 32 Step 8

cHasil = cHasil & Chr(FBinerToDec(Mid(X, N - 7, 8)))

Next N

{Plaintext – hasil dekripsi} strPlain = cHasil

4.2 Implementasi Sistem

Implementasi sistem dalam perangkat lunak pembelajaran ini mencakup spesifikasi

(67)

4.2.1 Spesifikasi Perangkat Keras dan Perangkat Lunak

Program ini dijalankan dengan menggunakan perangkat keras (hardware) yang direkomendasikan sebagai berikut :

1. Prosesor Intel Pentium IV 2.26 GHz.

2. Memory 256 MB.

3. Harddisk 40 GB.

4. VGA card 32 MB.

5. Monitor dengan resolusi 1024 X 768 pixel. 6. Keyboard dan Mouse.

Adapun sistem operasi yang direkomendasikan untuk menjalankan aplikasi ini

adalah lingkungan sistem operasi MS-Windows NT/2000/XP.

Sedangkan perangkat lunak aplikasi yang digunakan dalam proses perancangan

perangkat lunak ini adalah aplikasi Adobe Photoshop CS4 dan Microsoft Visual Basic 6.0.

4.2.2 Tampilan Output

(68)

Gambar 4.1 Tampilan Form Main

Apabila menu [Teori Kriptografi WAKE] di-klik dan salah satu sub menu teori

dipilih, maka akan muncul form teori yang berisi teori singkat mengenai kriptografi metode WAKE.

(69)

Untuk melihat proses pembentukan tabel S-Box, pilih menu ‘Pembelajaran

WAKE’ dan klik sub menu ‘Proses S-Box’. Muncul forminput berikut :

Gambar 4.3 Tampilan Form Input Proses S-Box

Untuk melihat hasil pembentukan tabel S-Box tanpa mengikuti proses secara bertahap, klik pada tulisan biru ‘Lihat Hasil / Tabel S-Box’ di sebelah kiri bawah form, maka akan muncul form berikut :

(70)

Apabila user ingin melihat dan mengikuti prosedur kerja proses pembentukan tabel S-Box secara bertahap, maka klik pada tombol ‘Proses kerja S-Box’. Selanjutnya, muncul form‘Proses S-Box’, sebagai berikut :

Gambar 4.5 Tampilan Form Proses S-Box

Untuk melihat proses pembentukan kunci, pilih menu ‘Pembelajaran WAKE’ dan klik sub menu ‘Proses Pembentukan Kunci’. Muncul forminput berikut :

Gambar 4.6 Tampilan Form Input Proses Pembentukan Kunci

(71)

Gambar 4.7 Tampilan Form Hasil Pembentukan Kunci

Apabila user ingin melihat dan mengikuti prosedur kerja proses pembentukan kunci secara bertahap, maka klik pada tombol ‘Proses’. Selanjutnya, muncul form

‘Proses Pembentukan Kunci’.

Gambar 4.8 Tampilan Form Proses Pembentukan Kunci

Untuk melihat proses enkripsi, pilih menu ‘Pembelajaran WAKE’ dan klik sub menu ‘Proses Enkripsi’. Muncul forminput berikut :

(72)

Klik pada tulisan biru ‘Lihat Tabel S-Box’ di sebelah kiri bawah form akan memunculkan form ‘Tabel S-Box’ pada gambar 4.4, sedangkan klik pada tulisan biru ‘Kunci yang terbentuk’ akan memunculkan form ‘Hasil Pembentukan Kunci’ pada gambar 4.7.

Untuk melihat dan mengikuti prosedur kerja proses enkripsi secara bertahap, maka klik pada tombol ‘Proses’. Selanjutnya, muncul form‘Proses Enkripsi’.

Gambar 4.10 Tampilan Form Proses Enkripsi

Untuk melihat proses dekripsi, pilih menu ‘Pembelajaran WAKE’ dan klik sub menu ‘Proses Dekripsi’. Muncul forminput berikut :

(73)

Klik pada tulisan biru ‘Lihat Tabel S-Box’ di sebelah kiri bawah form akan memunculkan form ‘Tabel S-Box’ pada gambar 4.4, sedangkan klik pada tulisan biru ‘Kunci yang terbentuk’ akan memunculkan form ‘Hasil Pembentukan Kunci’ pada gambar 4.7.

Untuk melihat dan mengikuti prosedur kerja proses dekripsi secara bertahap, maka klik pada tombol ‘Proses’. Selanjutnya, muncul form‘Proses Dekripsi’.

Gambar 4.12 Tampilan Form Proses Dekripsi

4.3 Pengujian Perangkat Lunak

Pengujian perangkat lunak adalah elemen kritis dari jaminan kualitas perangkat lunak

dan merepresentasikan spesifikasi, desain dan pengkodean. Dua macam pendekatan

test yaitu :

4.3.1 Black Box Testing

Test case ini bertujuan untuk menunjukkan fungsi perangkat lunak tentang cara

(74)

diharapkan dan apakah informasi yang disimpan secara eksternal selalu dijaga

kemutakhirannya.

Tehnik pengujian black-box berfungsi menemukan :

a. Fungsi-fungsi yang tidak benar/hilang;

b. Kesalahan interface;

c. Kesalahan kinerja.

Uji coba Black Box, antara lain :

1. Graph Based Testing;

2. Equivalence Partitioning;

3. Boundary Value Analysist;

4. Comparison Testing.

Tabel 4.1 Tabel Pengujian Black Box

NO. PENGUJIAN TEST CASE HASIL YANG dan akan menampilkan pesan, "Panjang Kunci Harus 16 Karakter"

Jika dipilih Hexadesimal, maka Proses Kerja S-Box akan ditampilkan dalam bentuk Hexadesimal menampilkan Tabel S-Box dari kunci dalam Biner dan Hexadesimal

Sesuai Harapan

(75)

1 2 3 4 5 6 Pembentukan Kunci dan akan menampilkan pesan, "Panjang Kunci Harus 16 Karakter" Kunci akan ditampilkan dalam bentuk Biner dan dikerjakan sesuai jumlah putaran yang diinginkan

Sesuai Harapan

VALID

(76)

1 2 3 4 5 6

4 Proses Dekripsi Input Ciphertext ≤ karakter

4.3.1 White Box Testing

Pengujian white-box menguji semua statement program.

Uji coba White Box, antara lain :

1. Basis Path Testing (Tom Mc Cabe), terdiri atas :

d. Notasi Diagram Alir;

e. Cyclomatic Complexity;

f. Graph Metrik.

2. Control Structure Testing, terdiri atas :

a. Condition Testing;

b. Data Flow Testing;

(77)

BAB 5

KESIMPULAN DAN SARAN

5.1 Kesimpulan

Setelah menyelesaikan Perancangan Perangkat Lunak Pembelajaran Kriptografi

Metode WAKE ini, Penulis mengambil beberapa kesimpulan, yaitu :

1. Perangkat lunak ini menunjukkan setiap langkah dan tahapan proses pembentukan

tabel S-Box, proses pembentukan kunci, proses enkripsi dan proses dekripsi yang terdapat di dalam kriptografi metode WAKE, sehingga dapat membantu

pemahaman atau pembelajaran prosedur kerja atau algoritma dari metode

kriptografi tersebut;

2. Semakin banyak putaran dari proses pembentukan kunci, maka keamanan data

akan semakin terjamin.

5.2 Saran

Penulis ingin memberikan beberapa saran yang mungkin dapat membantu dalam

pengembangan perangkat lunak pembelajaran metoda kriptografi WAKE, yaitu :

(78)

2. Metoda WAKE dapat dimodifikasi untuk mempertangguh keamanan dari metoda

tersebut seperti mengganti operasi logika dalam metoda WAKE dengan metoda

Gambar

Gambar 2.2 Model Sederhana Sistem Kriptografi Asimetris
Tabel 2.1 Aturan operasi AND
Tabel 2.3 Aturan Operasi XOR
Gambar 2.3 Bagan Proses Pembentukan Kunci
+7

Referensi

Dokumen terkait

Hasil pengukuran volume telapak kaki tikus putih yang diberi suspensi asam 3-klorobenzoil salisilat dosis 30mg/kgBB secara i.p.. Hasil pengukuran volume telapak kaki

Dari beberapa makna yang termasuk dalam kajian semantik salah satu makna yang sesuai dengan permasalahan yang akan dibahas adalah Teori Kontekstual.Teori makna Kontekstual

Skripsi Representasi Politik Identitas Tentara Amerika Serikat ..... ADLN - Perpustakaan

Penelitian ini bertujuan untuk menjelaskan keterampilan mengajar guru dalam pembelajaran Ilmu Pengetahuan Sosial siswa kelas V SD 2 Mlatinorowito dan peningkatan hasil

Besarnya kendalan sistem dapat dilihat dari nilai LOLP ( Loss of Load Probability ) dari sistem yang bersangkutan, nilai LOLP dinyatakan dalam besaran hari per

Fakultas Ilmu Sosial dan Ilmu Politik (FISIP) UB harus mengidentifikasi sarana prasarana, lingkungan dan peralatan yang diperlukan untuk mendukung proses belajar

Setidaknya 33,92% dari peserta sosialisasi telah memiliki usaha sampingan yang terbagi menjadi 24,42% usaha budidaya jangkrik dan sisanya tertarik mengembangkan usaha

Dari kaca mata pengelolaan sumber daya manusia yang dilakukan oleh organisasi, motivasi menjadi penting artinya karena dengan motivasi diharapkan setiap individu karyawan mau