PENGAMANAN APLIKASI VOICE CHATTING DENGAN MENGGUNAKAN ALGORITMA AES (ADVANCED ENCRYPTION STANDARD).

(1)

PENGAMANAN APLIKASI VOICE CHATTING DENGAN

MENGGUNAKAN ALGORITMA

AES

(ADVANCED ENCRYPTION STANDARD)

SKRIPSI

I GUSTI AGUNG GEDE NIRARTHA

NIM. 0908605027

PROGRAM STUDI TEKNIK INFORMATIKA

JURUSAN ILMU KOMPUTER

FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM

UNIVERSITAS UDAYANA

BUKIT JIMBARAN

2015


(2)

ii

SURAT PERNYATAAN KEASLIAN KARYA ILMIAH

Yang bertanda tangan di bawah ini menyatakan bahwa naskah Skripsi dengan

judul:

Pengamanan Aplikasi Chatting Voice Dengan Menggunakan Algoritma AES (Advanced Encryption Standard)

Nama : I Gusti Agung Gede Nirartha

NIM : 0908605027

Program Studi : Ilmu Komputer

E-mail : gungnirartha@yahoo.com Nomor telp/HP : 081916264443

Alamat : Jalan Satelit No.24 Denpasar

Belum pernah dipublikasikan dalam dokumen skripsi, jurnal nasional maupun internasional atau dalam prosiding manapun, dan tidak sedang atau akan diajukan untuk publikasi di jurnal atau prosiding manapun. Apabila di kemudian hari terbukti terdapat pelanggaran kaidah-kaidah akademik pada karya ilmiah saya, maka saya bersedia menanggung sanksi-sanksi yang dijatuhkan karena kesalahan tersebut, sebagaimana diatur oleh Peraturan Menteri Pendidikan Nasional Nomor 17 Tahun 2010 tentang Pencegahan dan Penanggulangan Plagiat di Perguruan Tinggi.

Demikian Surat Pernyataan ini saya buat dengan sesungguhnya untuk dapat dipergunakan bilamana diperlukan.

Denpasar, 02 September 2015 Yang membuat pernyataan,

(I Gusti Agung Gede Nirartha) NIM. 0908605027


(3)

iii

LEMBAR PENGESAHAN TUGAS AKHIR

Judul : Pengamanan Aplikasi Chatting Voice Dengan Menggunakan Algoritma AES (Advanced Encryption Standard)

Kompetensi : Jaringan

Nama : I Gusti Agung Gede Nirartha

NIM : 0908605027

Tanggal Seminar : 04 Januari 2016 DisetujuiOleh: Pembimbing I

Drs. I Wayan Santiyasa, M.Si. NIP. 19670414199203 1 002

Pembimbing II

I Komang Ari Mogi, S.Kom., M.Cs. NIP. 19840924 200801 1 007

Penguji I

Agus Muliantara, S. Kom., M. Kom. NIP. 19800616 200501 1 001

Penguji II

I Made Widiartha, S. Si, M.Kom NIP. 19281220 200801 1 008

Penguji III

I Putu Gede Hendra Suputra, S.Kom., M.Kom. NIP. 1988122 201404 1 001

Mengetahui,

Ketua Jurusan Ilmu Komputer FMIPA UNUD,

Agus Muliantara, S.Kom., M.Kom. NIP. 19800616 200501 1 001


(4)

iv

Judul :..Pengamanan Aplikasi Chatting Voice Dengan Menggunakan Algoritma AES (Advanced Encryption Standard)

Nama : I Gusti Agung Gede Nirartha

NIM : 0908605027

Pembimbing : 1. Drs. I Wayan Santiyasa, M.Si. 2. I Komang Ari Mogi, S.Kom., M.Cs. .

ABSTRAK

Perkembangan teknologi dan gaya hidup manusia memungkinkan pengaksesan sistem informasi dengan cara baru, misalnya mengunakan percakapan online (chat) melalui koneksi internet, yang sering berupa komunikasi teks (text chat) atau suara (voice chat). Instant messaging baru mulai populer saat internet mulai luas dipergunakan pada pertengahan dekade 1990-an.

Seiring dengan kebutuhan manusia akan komunikasi yang mudah dan cepat, maka aplikasi yang dapat digunakan yaitu Voice Chat dimana memungkinkan penggunanya melakukan komunikasi suara. Tetapi pada aplikasi voice chatting kurang aman karena mudah disadap oleh pihak lain. Para penyadap dapat dengan mudah mengetahui isi pembicaraan dalam instant messaging dan kurangnya privasi pada pengguna chatting. Salah satu cara yang dapat digunakan yaitu membuat pengamanan pada aplikasi voice chatting dengan menggunakan algoritma AES (Advanced Encryption Standard). Algoritma AES adalah algoritma kriptografi yang dapat menenkripsi dan mendeskripsi data dengan panjang kunci yang bervariasi yaitu 128 bit, 192 bit, dan 256 bit.

Dari hasil penelitian pengamanan aplikasi voice chatting dengan menggunakan algoritma AES (Advanced Encryption Standard) menggunakan tool SHA didapatkan hasil 100% nilai message digest file suara asli sama dengan nilai message digest file suara setelah proses enkripsi-dekripsi.


(5)

v

Tilte :..Pengamanan Aplikasi Chatting Voice Dengan Menggunakan Algoritma AES (Advanced Encryption Standard)

Name : I Gusti Agung Gede Nirartha

Registration : 0908605027

Supervisors : 1. Drs. I Wayan Santiyasa, M.Si. 2. I Komang Ari Mogi, S.Kom., M.Cs. . ABSTRACT

Developments in technology and human life styles allow to access information system in a new fashion, for example, using the online conversations (chat) through an internet connection, often in the form of text communication (text chat) or voice (voice chat). Instant messaging has become popular when Internet began to be widely used in the mid 1990s.

In line with the human need for easy and fast communication, then the applications that can be used is Voice Chat that allows users to make voice communications. However, voice chat applications are less secure because they are easily tapped by others. Tappers can easily find out the contents of the conversation in instant messaging and the lack of privacy on the chat. One way that can be used is to make application security in voice chat using the AES (Advanced Encryption Standard) algorithm. AES algorithm is a cryptographic algorithm that can encrypt and decrypt the data with varying key length namely 128 bits, 192 bits, and 256 bits.

The findings of security research showed that voice chat application using the AES (Advanced Encryption Standard) algorithm using the SHA tool obtained the results 100% of the message digest original sound file value, which was the same as that of the message digest sound files after encryption-decryption processes.


(6)

vi

KATA PENGANTAR

Penelitian dengan judul Pengamanan Aplikasi Chatting Voice Dengan Menggunakan Algoritma AES (Advanced Encryption Standard) disusun dalam rangkaian kegiatan pelaksanaan Tugas Akhir di Jurusan Ilmu Komputer FMIPA UNUD. Penelitian ini dilaksanakan pada periode November 2014 hingga Juli2015 di Universitas Udayana.

Sehubungan dengan telah terselesaikannya penelitian ini maka diucapkan terima kasih dan penghargaan kepada berbagai pihak yang telah membantu pengusul, antara lain:

1. Drs. I Wayan Santiyasa, M.Si, sebagai Pembimbing I yang telah banyak membantu dalam menyempurnakan penelitian ini;

2. I Komang Ari Mogi, S.Kom, M.Kom, sebagaiPembimbing II yang senantiasa yang telah bersediamengkritisi, memeriksa danmenyempurnakan penelitian ini;

3. Bapak dan Ibu dosen Ilmu Komputer yang telah memberikan masukan, dukungan serta arahan kepada penulis;

4. Seluruh teman-teman mahasiswa Jurusan Ilmu Komputer FMIPA Universitas Udayana yang telah memberikan bantuan dan dukungan moral dalam penyelesaian penelitian ini;

5. Semua orang yang telah memberikan kontribusi untuk membantu penulis dalam menyelesaikan penelitian ini, yang tidak dapat penulis sebutkan satu persatu.

Disadari pula bahwa sudah tentu penelitian ini masih mengandung kelemahan dan kekurangan.Memperhatikan hal ini, maka masukan dan saran-saran untuk penyempurnaan sangat diharapkan.

Bukit Jimbaran, Juli 2015


(7)

vii

DAFTAR ISI

LEMBAR JUDUL ... i

SURAT PERNYATAAN KEASLIAN TUGAS AKHIR ... iiv

LEMBAR PENGESAHAN TUGAS AKHIR... iii

ABSTRAK ... iv

KATA PENGANTAR ... vi

DAFTAR ISI ... vii

DARTAR TABEL ... ix

DAFTAR GAMBAR ... x

BAB I PENDAHULUAN ... 1

1.1. Latar Belakang ... 1

1.2. Rumusan Masalah ... 2

1.3. Tujuan Penelitian ... 2

1.4. Batasan Penelitian ... 2

1.5. Manfaat Penelitian ... 3

1.6. Metodelogi Penelitian ... 3

1.6.1. Variabel Penelitian ... 3

1.6.2. Skenario Pengujian ... 3

BAB II TINJAUAN PUSTAKA ... 5

2.1. Definisi Kriptografi ... 5

2.2. Terminologi dan Konsep Dasar Kriptografi ... 5

2.2.1. Pesan, Plainteks, dan Cipherteks ... 5

2.2.2. Peserta Komunikasi ... 6

2.3. Algoritma dan Kunci ... 7

2.4. Jenis Algoritma Kriptografi ... 8

2.4.1 Algoritma Simetris ... 8

2.4.2 Algoritma Asimetris ... 9

2.5. Keamanan Sistem Kriptografi ... 11

2.5.1. Jenis-Jenis Ancaman Keamanan ... 11

2.6. Serangan Pada Sistem Kriptografi... 13

2.6.1. Kualitas Keamanan Algoritma ... 13

2.7. Algortima AES ... 14

2.8. Deskripsi Algoritma AES ... 15

2.8.1. Key Schedule ... 17

2.8.2. Add Round Key ... 17

2.8.3. Shift Rows ... 18

2.8.4. MixColumns ... 19


(8)

viii

BAB III ANALISIS DAN PERANCANGAN SISTEM ... 21

3.1. Analisis Kebutuhan Sistem ... 21

3.2. Metode Implementasi ... 21

3.3. Perancang Sistem ... 21

3.3.1. Flowchart. ... 21

BAB IV HASIL DAN PEMBAHASAN ... 28

4.1. Gambaran Umum ... 28

4.2. Tampilan Antarmuka Pengguna ... 28

4.2.1. Tampilan Awal Form Login. ... 28

4.2.2. Tampilan Registrasi ... 30

4.2.3. Tampilan Input Username dan Password ... 30

4.2.4. Tampilan Registrasi Room Chatting ... 31

4.2.5. Proses Chatting Dari Pengguna Lainnya ... 31

4.2.6. Tampilan Room Chatting ... 33

4.3. Klasifikasi Program ... 32

4.4. Konfigurasi Sistem ... 33

4.5. Pengujian Sistem Enkripsi Dekripsi ... 41

BAB V PENUTUP ... 46

5.1. Kesimpulan ... 46

5.2. Saran ... 46


(9)

ix

DARTAR TABEL

Tabel Halaman

Tabel 2.1. Kunci Algoritma AES ... 16 Tabel 4.1. Tabel Pengujian Menggunakan Tools SHA ... 44


(10)

x

DAFTAR GAMBAR

Gambar Halaman

Gambar 2.1. Skema komunikasi dengan proses enkripsi ... 6

Gambar 2.2. (a) Skema enkripsi dan dekripsi, (b) contoh ilustrasi enkripsi dan dekripsi pesan. (Schneier, 1996). ... 8

Gambar 2.3. Skema kriptografi simetri ... 9

Gambar 2.4. Skema Kriptografi Asimetri ... 11

Gambar 2.5. Interruption ... 12

Gambar 2.6. Interception ... 12

Gambar 2.7. Modification ... 13

Gambar 2.8. Fabrication ... 13

Gambar 2.9. Proses Add Round Key ... 17

Gambar 2.10. S-Box ... 18

Gambar 2.11. Proses Sub Bytes ... 18

Gambar 2.12. Proses Shift Rows ... 19

Gambar 2.13. Proses Mix Columns ... 20

Gambar 3.1. Flowchart Enkripsi ... 22

Gambar 3.2. Flowchart Dekripsi ... 23

Gambar 3.3. Gambaran Sistem Enkripsi... 24

Gambar 3.4. Gambaran Sistem Dekripsi ... 25

Gambar 4.1. Tampilan Awal Form Login ... 29

Gambar 4.2. Tampilan Registrasi ... 30

Gambar 4.3. Tampilan Input Username dan Password ... 31

Gambar 4.4. Tampilan Registrasi Room Chatting ... 31

Gambar 4.5. Proses Chatting Dari Pengguna Lainnya ... 32

Gambar 4.6. Tampilan Room Chatting ... 33


(11)

1

BAB I

PENDAHULUAN

1.1. Latar Belakang

Sistem informasi dalam suatu organisasi dapat dikatakan sebagai suatu sistem yang menyediakan informasi bagi semua tingkatan dalam organisasi tersebut kapan saja diperlukan. Perkembangan teknologi dan gaya hidup manusia memungkinkan pengaksesan sistem informasi dengan cara baru, misalnya mengunakan percakapan online (chat) melalui koneksi internet, yang sering berupa komunikasi teks (text chat) atau suara (voice chat).

Instant messaging baru mulai populer saat internet mulai luas dipergunakan pada pertengahan dekade 1990-an. Pada tahun tersebut Mirabilis memperkenalkan ICQ, sebuah aplikasi instant messaging yang sifatnya gratis dan dapat dipergunakan siapa saja. Instant messaging sudah banyak dipakai oleh banyak orang, tidak luput dari semua kalangan, baik tua maupun muda, karena instant messaging merupakan sarana komunikasi yang cepat, murah dan mudah digunakan. Tujuan penggunaannya juga bermacam-macam. Ada yang hanya sekadar untuk bercakap-cakap dengan teman dan kolega serta ada juga yang dipergunkan untuk kepentingan yang lebih serius seperti konferensi online sesama rekan kerja dalam sebuah perusahaan. Seiring dengan kebutuhan manusia akan komunikasi yang mudah dan cepat, maka aplikasi yang dapat digunakan yaitu Voice Chat dimana memungkinkan penggunanya melakukan komunikasi suara.

Tetapi pada aplikasi voice chatting kurang aman karena mudah disadap oleh pihak lain. Para penyadap dapat dengan mudah mengetahui isi pembicaraan dalam instant messaging dan kurangnya privasi pada pengguna chatting. Apalagi jika pengguna chatting voice kurang hati-hati sehingga dapat membocorkan Informasi penting dan merugikan pengguna itu sendiri. (Kurniawan, yusuf. 2004.)

Oleh karena itu saya membuat pengamanan pada aplikasi voice chatting dengan menggunakan algoritma AES (Advanced Encryption Standard). Algoritma AES merupakan algoritma chiper yang cukup aman untuk melindungi


(12)

2

data atau informasi yang bersifat rahasia. Pada tahun 2001, AES digunakan sebagai standard algortima kriptografi terbaru yang dipublikasikan oleh NIST (National Institute Of Standard And Technlogy). Sebagai pengganti algoritma DES (Data Encryption Standard) yang sudah berakhir masa penggunaannya. Algoritma AES adalah algoritma kriptografi yang dapat menenkripsi dan mendeskripsi data dengan panjang kunci yang bervariasi yaitu 128 bit, 192 bit, dan 256 bit. (Voni Yuniati, 2009)

Dari aplikasi voice chatting menggunakan algoritma AES tersebut diharapkan dapat mengurangi penyadapan dan kebocoran informasi pada pengguna chatting, karena algoritma AES tersebut cukup handal hingga saat ini. Pada tahun 2006 National Security Agency (NSA) pernah menyatakan AES cukup aman digunakan untuk mengamankan data-data pemerintah amerika serikat yang bukan tergolong sangat rahasia (Didi suryan, 2006.).

1.2. Rumusan Masalah

Ada beberapa masalah yang dijumpai berhubungan dengan penelitian tugas akhir ini, diantaranya adalah bagaimana mengamankan aplikasi chatting voice dengan menggunakan algortima AES (Advanced Encryption Standard)

1.3. Tujuan Penelitian

Tujuan dari penelitian ini adalah untuk menganalisis aliran data pada algoritma AES (Advanced Encryption Standard).

1.4. Batasan Penelitian

Batasan-batasan dalam melakukan penelitian antara lain:

a. Aplikasi yang dibuat dapat dijalankan pada Sistem Operasi Windows. b. Pengujian dilakukan hanya dengan menggunakan 10 user.

c. Proses pengiriman pesan pada aplikasi voice chatting menggunakan server.


(13)

3

1.5. Manfaat Penelitian

Hasil penelitian ini diharapkan dapat menghasilkan keamanan enkripsi dan dekripsi tanpa mengurangi maksud dan isi pesan pada voice chatting tersebut. Selain itu juga diharapkan dapat membuat sistem voice chatting yang aman dengan menggunakan algortima AES (Advanced Encryption Standard)

1.6. Metodelogi Penelitian 1.6.1. Variabel Penelitian

Pada penelitian ini penulis menggunakan dua variable yaitu sebagai berikut :

a. Variabel bebas

Pada penelitian ini yang dimaksud sebagai variable bebas adalah jumlah pengujian pengiriman file suara.

b. Variabel terikat

Pada penelitian ini yang dimaksud sebagai variable terikat adalah suara , karena pada sistem ini proses yang akan diamankan berupa suara yang telah terenkripsi yang akan dikirim oleh user ke user penerima tanpa mengurangi isi dan maksud tujuan pesan tersebut.

1.6.2. Skenario Pengujian

Pengujian sistem yang dilakukan pada tahap ini bertujuan untuk menguji apakah sistem dapat melakukan enkripsi dan dekripsi file suara dengan baik. Pengukuran terhadap kinerja dari sistem dilakukan untuk memastikan tiap bagian pesan tidak mengalami perubahan atau sesuai dengan data asli. Dalam hal ini, file suara asli harus sama dengan file suara setelah dilakukan proses enkripsi dan dekripsi. Untuk menguji integritas file suara tersebut digunakan SHA-1 untuk menghasilkan message digest dari setiap file suara. SHA-1 menggunakan tool

yang telah ada, disini tool SHA-1 didapat di


(14)

4

1.6.3. Tempat Penelitian

Penelitian ini akan dilaksanakan pada jaringan internal Universitas Udayana.


(15)

5

BAB II

TINJAUAN PUSTAKA

2.1. Definisi Kriptografi

Kata kriptografi berasal dari bahasa Yunani, “kryptós” yang berarti tersembunyi dan “gráphein” yang berarti tulisan.Sehingga kata kriptografi dapat diartikan berupa frase “tulisan tersembunyi”. Menurut Request for Comments (RFC), kriptografi merupakan ilmu matematika yang berhubungan dengan transformasi data untuk membuat artinya tidak dapat dipahami (untuk menyembunyikan maknanya), mencegahnya dari perubahan tanpa izin, atau mencegahnya dari penggunaan yang tidak sah. Jika transformasinya dapat dikembalikan, kriptografi juga bisa diartikan sebagai proses mengubah kembali data yang terenkripsi menjadi bentuk yang dapat dipahami. Artinya, kriptografi dapat diartikan sebagai proses untuk melindungi data dalam arti yang luas (Oppliger, 2005).

Menezes, Oorschot dan Vanstone (1996) menyatakan bahwa kriptografi adalah suatu studi teknik matematika yang berhubungan dengan aspek keamanan informasi seperi kerahasiaan, integritas data, otentikasi entitas dan otentikasi keaslian data.Kriptografi tidak hanya berarti penyediaan keamanan informasi, melainkan sebuah himpunan taknik-teknik.

2.2. Terminologi dan Konsep Dasar Kriptografi

Di dalam kriptografi kita akan sering menemukan berbagai istilah atau terminologi. Beberapa istilah yang penting untuk diketahui diberikan di bawah ini:

2.2.1. Pesan, Plainteks, dan Cipherteks

Pesan (message) adalah data atau informasi yang dapat dibaca dan dimengerti maknanya. Nama lain untuk pesan adalah plainteks atau teks jelas (cleartext) (Schneier, 1996). Pesan dapat berupa data atau informasi yang dikirim (melalui kurir, saluran telekomunikasi, dsb) atau yang disimpan di dalam media perekaman (kertas, storage, dan sebagainya). Pesan yang tersimpan tidak hanya


(16)

6

berupa teks, tetapi juga dapat berbentuk citra (image), suara/bunyi (audio), dan video, atau berkas biner lainnya.

Agar pesan tidak dapat dimengerti maknanya oleh pihak lain, maka pesan perlu disandikan ke bentuk lain yang tidak dapat dipahami (enkripsi). Bentuk pesan yang tersandi disebut ciphertext atau kriptogram. Proses pembalikan dimana ciphertext diubah kembali menjadi plainteks di sebut dekripsi (Stamp, 2007).

2.2.2. Peserta Komunikasi

Gambar 2.1. Skema komunikasi dengan proses enkripsi

a. Entitas atau peserta adalah orang atau sesuatu yang mengirim, menerima, atau memanipulasi informasi. Entitas bisa berupa orang, terminal komputer, kartu kredit, dan sebagainya. Jadi, orang bisa bertukar pesan dengan orang lainnya (contoh: Alice berkomunikasi dengan Bob) sedangkan di dalam jaringan komputer, mesin (komputer) berkomunikasi dengan mesin (contoh: mesin ATM berkomunikasi dengan komputer server di bank).

b. Pengirim adalah entitas dalam komunikasi yang mengirimkan informasi kepada entitas lainnya lainnya.

c. Penerima adalah entitas dalam komunikasi yang diharapkan menerima informasi.


(17)

7

d. Penyusup (adversary) adalah entitas diluar pengirim dan penerima yang mencoba untuk membobol keamanan informasi. Penyusup biasanya bertindak seolah-olah sebagai pengirim yang sah ataupun penerima yang sah.

2.3. Algoritma dan Kunci

Algoritma menggambarkan sebuah prosedur komputasi yang terdiri dari variabel input dan menghasilkan output yang berhubungan (Oppliger, 2005). Algoritma kriptografi atau sering disebut dengan cipher adalah suatu fungsi matematis yang digunakan untuk melakukan enkripsi dan dekripsi (Schneier, 1996). Algoritma kriptografi ini bekerja dalam kombinasi dengan menggunakan kunci (key) seperti kata, nomor atau frase tertentu.

Bila keamanan algoritma bergantung pada kerahasian algoritma yang bekerja, maka algoritma tersebut dikatakan sebagai algoritma terbatas (terbatas kemampuannya). Algoritma terbatas mempunyai sejarah yang menarik. Algoritma terbatas biasanya digunakan oleh sekelompok orang untuk bertukar pesan satu sama lain. Mereka membuat suatu algoritma enkripsi dan algoritma enkripsi tersebut hanya diketahui oleh anggota kelompok itu saja. Tetapi, algoritma terbatas tidak cocok lagi saat ini, sebab setiap kali ada anggota kelompok keluar, maka algoritma kriptografi harus diganti lagi. Kerahasian algoritmanya menjadi titik kelemahan karena tidak mengijinkan adanya kontrol kualitas atau standarisasi.

Kriptografi modern mengatasi masalah di atas dengan penggunaan kunci, dimana algoritma yang diguakan tidak lagi dirahasiakan, tetapi kunci harus dijaga kerahasiaannya. Kunci adalah parameter yang digunakan untuk transformasi enciphering dan dechipering. Kunci biasanya berupa string atau deretan bilangan. Dengan menggunakan kunci K, maka fungsi enkripsi dan dekripsi dapat ditulis sebagai

= =

dan kedua fungsi ini memenuhi


(18)

8

Gambar 2.2. (a) Skema enkripsi dan dekripsi, (b) contoh ilustrasi enkripsi dan dekripsi pesan.(Schneier, 1996).

2.4. Jenis Algoritma Kriptografi

Berdasarkan jenis kunci yang digunakannya, algoritma kriptografi dikelompokan menjadi dua bagian, yaitu algoritma simetris (algoritma konvensional) dan algoritma asimetris (algoritma kunci publik) (Schneier, 1996) (Kurniawan, 2004) (Munir, 2006) (Menezes et al, 1996).

2.4.1 Algoritma Simetris

Algoritma simetris adalah algoritma kriptografi yang menggunakan kunci enkripsi yang sama dengan kunci dekripsinya. Istilah lain untuk kriptografi kunci-simetri adalah kriptografi kunci privat (private-key cryptography), kriptografi kunci rahasia (secret-key cryptography), atau kriptografi konvensional (conventional cryptography). Sistem kriptografi kunci-simetri (atau disingkat menjadi “kriptografi simetri” saja), mengasumsikan pengirim dan penerima pesan sudah berbagi kunci yang sama sebelum bertukar pesan. Keamanan sistem kriptografi simetri terletak pada kerahasiaan kuncinya.

Kriptografi simetri merupakan satu-satunya jenis kriptografi yang dikenal dalam catatan sejarah hingga tahun 1976.Semua algoritma kriptografi klasik termasuk ke dalam sistem kriptografi simetri.


(19)

9

Kelebihan algoritma simetris ini adalah proses enkripsi dan deskripsinya yang jauh lebih cepat dibandingkan dengan algoritma asimetris. Sedangkan kelemahan algoritma ini adalah permasalahan distribusi kunci (key distribution). Seperti yang telah dibahas, proses enkripsi dan deskripsi menggunakan kunci yang sama. Sehingga muncul persoalan menjaga kerahasian kunci, yaitu pada saat pengiriman kunci pada media yang tidak aman seperti internet. Tentunya jika kunci ini sampai hilang atau sudah dapat ditebak oleh orang lain (orang yang tidak berhak), maka kriptosistem ini sudah tidak aman lagi.

Kelemahan lain adalah masalah efisiensi jumlah kunci. Jika terdapat n user, maka diperlukan n(n-1)/2 kunci, sehingga untuk jumlah user yang sangat banyak, sistem ini tidak efisien lagi (Menezes et al, 1996).

Gambar 2.3. Skema kriptografi simetri 2.4.2 Algoritma Asimetris

Algoritma asimetris atau kunci publik didesain sehingga kunci yang digunakan untuk enkripsi berbeda dengankunci untuk dekripsi dimana kunci untuk enkripsi tidak rahasia dan dapat diketahui oleh siapapun (diumumkan ke publik), sementara kunci untuk dekripsi hanya diketahui oleh penerima pesan (rahasia). Pada kriptografi jenis ini, setiap orang yang berkomunikasi mempunyai sepasang kunci, yaitu kunci privat dan kunci publik. Pengirim mengenkripsi pesan dengan menggunakan kunci publik si penerima pesan.

Hanya penerima pesan yang dapat mendekripsi pesan karena hanya ia yang mengetahui kunci privatnya sendiri. Kriptografi kunci-publik dapat dianalogikan seperti kotak surat yang terkunci dan memiliki lubang untuk memasukkan surat. Setiap orang dapat memasukkan surat ke dalam kotak surat tersebut, tetapi hanya pemilik kotak yang dapat membuka kotak dan membaca


(20)

10

surat di dalamnya karena ia yang memiliki kunci. Keuntungan sistem ini ada dua. Pertama, tidak ada kebutuhan untuk mendistribusikan kunci privat sebagaimana pada sistem kriptografi simetri. Kunci publik dapat dikirim ke penerima melalui saluran yang sama dengan saluran yang digunakan untuk mengirim pesan. Saluran untuk mengirim pesan umumnya tidak aman.

Kedua, jumlah kunci dapat ditekan. Untuk berkomunikasi secara rahasia dengan banyak orang tidak perlu kunci rahasia sebanyak jumlah orang tersebut, cukup membuat dua buah kunci, yaitu kunci publik bagi para koresponden untuk mengenkripsi pesan, dan kunci privat untuk mendekripsi pesan. Berbeda dengan kriptografi kunci-simetris yang dibuat adalah sebanyak jumlah pihak yang diajak berkorespondensi.

Contoh penggunaan, misalkan jaringan komputer menghubungkan komputer karyawan di kantor cabang dengan komputer manejer di kantor pusat. Seluruh kepala cabang diberitahu bahwa kalau mereka mengirim laporan ke manejer di kantor pusat, mereka harus mengenkripsi laporan tersebut dengan kunci publik manejer (kunci publik menejer diumumkan kepada seluruh kepala cabang). Untuk mengembalikan laporan tersandi ke laporan semula, hanya manejer yang dapat melakukan dekripsi, karena hanya dialah yang memegang kunci privat. Selama proses transmisi ciphertext dari kantor cabang ke kantor pusat melalui saluran komunikasi mungkin saja data yang dikirim disadap oleh pihak ketiga, namun pihak ketiga ini tidak dapat mengembalikan ciphertext ke plainteksnya karena ia tidak mengetahui kunci untuk dekripsi.

Meski berusia relatif muda (sejak 1976), kriptografi kunci-publik mempunyai kontribusi yang luar biasa dibandingkan dengan sistem kriptografi simetri. Kontribusi yang paling penting adalah tanda-tangan digital pada pesan untuk memberikan aspek keamanan otentikasi, integritas data, dan nirpenyangkalan. Tanda-tangan digital adalah nilai kriptografis yang bergantung pada isi pesan dan kunci yang digunakan. Pengirim pesan mengenkripsi pesan (yang sudah diringkas) dengan kunci privatnya, hasil enkripsi inilah yang dinamakan tanda-tangan digital. Tanda-tangan digital dilekatkan (embed) pada


(21)

11

pesan asli. Penerima pesan memverifikasi tanda-tangan digital dengan menggunaklan kunci publik

Gambar 2.4. Skema Kriptografi Asimetri

2.5. Keamanan Sistem Kriptografi

Suatu sistem kriptografi merupakan sebuah himpunan algoritma, seluruh kemungkinan plaintext, ciphertext, kunci, dan proses manajemen kunci yang digunakan (Oppliger, 2005).

2.5.1. Jenis-Jenis Ancaman Keamanan

Terdapat banyak faktor yang mengancam keamanan data. Ancaman-ancaman tersebut menjadi masalah terutama dengan semakin meningkatnya komunikasi data yang bersifat rahasia seperti pemindahan dana secara elektronik pada dunia perbankan atau pengiriman dokumen rahasia pada instansi pemerintah. Untuk mengantisipasi ancaman-ancaman tersebut perlu dilakukan usaha untuk melindungi data yag dikirim melalui saluran komunikasi. Salah satunya adalah dengan teknik enkripsi. Dari sekian banyak faktor-faktor yang dapat mengancam keamanan dari suatu data, maka berdasarkan tekniknya, faktor-faktor tersebut dapat dikelompokkan ke dalam empat jenis ancaman, yaitu:

a. Interruption

Interruption terjadi bila data yang dikirimkan dari A tidak sampai pada orang yang berhak (B). Interruption merupakan pola penyerangan terhadap sifat availability (ketersediaan data), yaitu data dan informasi yang berada dalam sistem komputer dirusak atau dibuang, sehinggga menjadi tidak ada dan


(22)

12

tidak berguna.Contohnya, hard disk yang dirusak atau memotong jalur komunikasi.

Gambar 2.5. Interruption b. Interception

Serangan ini terjadi jika pihak ketiga berhasil mendapatkan akses informasi dari dalam sistem komputer. Contohnya, dengan menyadap data yang melalui jaringan public (wiretapping) atau menyalin secara tidak sah file atau program Interception merupakan pola penyerangan terhadap sifat confidentially/secrecy (kerahasiaan data).

Gambar 2.6. Interception

c. Modification

Pada serangan ini pihak ketiga yang tidak hanya berhasil mendapatkan akses informasi dari dalam sistem komputer, tetapi juga dapat melakukan perubahan terhadap informasi. Contohnya, merubah program berhasil merubah pesan yang dikirimkan. Modification merupakan pola penyerangan terhadap sifat integrity (keaslian data).


(23)

13

Gambar 2.7. Modification

d. Fabrication

Fabrication merupakan ancaman terhadap integritas, yaitu orang yang tidak berhak yang meniru atau memalsukan suatu objek ke dalam sistem. Contohnya, dengan menambahkan suatu record ke dalam file.

Gambar 2.8. Fabrication

2.6. Serangan Pada Sistem Kriptografi

Pada dasarnya serangan terhadap sistem kriptografi dapat dibedakan menjadi dua jenis yaitu:

a) Serangan pasif adalah serangan dimana penyerang hanya memonitor saluran komunikasi. Penyerang pasif hanya mengancam kerahasiaan data. b) Serangan aktif adalah serangan dimana penyerang mencoba untuk

menghapus, menambahkan, atau dengan cara yang lain mengubah transmisi pada saluran. Penyerang aktif mengancam integritas data dan otentikasi, juga kerahasiaan.

2.6.1. Kualitas Keamanan Algoritma

Suatu algoritma dikatakan aman, bila tidak ada cara menemukan plaintextnya, berapapun banyaknya ciphertext yang dimiliki cryptanalyst. Sampai saat ini hanya OTP (one-time-pad) yang dinyatakan tidak dapat dipecahkan meskipun diberikan sumber daya yang tidak terbatas. Seluruh algoritma lainnya selalu dapat dipecahkan dengan Ciphertext only attack, dan dengan teknik


(24)

brute-14

force attack (memeriksa satu - persatu seluruh kemungkinan kunci dan memeriksa apakah plaintext yang dihasilkan memiliki arti yang sesuai). Komputer DNA yang sedang diteliti sekarang memiliki kemampuan yang mampu melakukan perhitungan milyaran kali lebih cepat daripada komputer yang ada sekarang ini. Dengan peningkatan kecepatan komputasi, maka keamanan algoritma kriptografi akan semakin terancam tentunya

2.7. Algoritma AES

Hingga tahun 1990-an, algoritma kriptografi yang banyak dipakai adalah Data Encryption Standard (DES). Algoritma ini dipakai oleh National Institute of Standards and Technology (NIST) sebagai standar enkripsi data Federal Amerika Serikat. DES termasuk dalam algoritma enkripsi yang sifatnya cipher block, yang berarti DES mengubah data masukan menjadi blok-blok64-bit dan kemudian menggunakan kunci enkripsi sebesar 56-bit. Setelah mengalami proses enkripsi maka akan menghasilkan output blok 64-bit. Seiring dengan perkembangan teknologi, kunci DES yang sebesar 56-bit dianggap sudah tidak memadai lagi. Pada tahun 1998, 70 ribu komputer di Internet berhasil membobol satu kunci DES dalam waktu 96 hari. Tahun 1999 kejadian yang sama terjadi lagi dalam waktu lebih cepat yaitu hanya dalam waktu 22 hari.

Pada tanggal 16 Juni 1998, sebuah mesin seharga 250 ribu dolar dapat dengan mudah memecahkan 25% kunci DES dalam waktu kira-kira 2,3 hari atau diperkirakan dapat memecahkan kunci DES dalam waktu 4,5 hari. Adanya kenyataan bahwa algoritma kriptografi DES tidak lagi aman, maka NIST mulai memikirkan sebuah algoritma kriptografi lain sebagai pengganti DES. Untuk itu diadakan kontes Internasional dimana pesertanya adalah ahli kriptografi dari seluruh dunia. Adapun diadakan secara terbuka dimaksudkan agar algoritma yang baru bukan dari produk badan pemerintah yang dapat dengan sengaja menanamkan backdoor pada algoritmanya. Backdoor ini dicurigai membuat plaintext dapat langsung di baca tanpa harus menggunakan kunci. Pada tahun 1997 kontes pemilihan suatu standar algoritma kriptografi baru pengganti DES dimulai dan diikuti oleh 21 peserta dari seluruh dunia. Algoritma yang akan


(25)

15

dipilih selain harus memenuhi beberapa kriteria, yaitu faktor keamanan, yang berarti algoritma tersebut harus tidak mudah dipecahkan oleh cracker, bersifat acak atau tidak mudah diterka outputnya, dan tidak berdasar algoritma matematika tertentu.

1. Faktor biaya, dimana diperhitungkan kecepatan prosesing pada baik pada hardware dan software, dan besarnya memory yang dipakai.

2. Faktor karakteristik implementasi, yakni meliputi kesederhanaan

Algoritma yang digunakan, kemudahan dan keamanan dalam implementasi di hardware dansoftware. Algoritma ini akan dinamakan Advanced Encryption Standard (AES). Setelah melewati tahap seleksi yang ketat, pada tahun 1999 hanya tinggal 5 calon yaitu algoritma Serpent (Ross Anderson Universityof Cambridge, Eli Biham Technion, Lars Knudsen-University of California San Diego), MARS (IBM Amerika), Twofish (Bruce Schneier, John Kelsey, dan Niels Ferguson-Counterpane Internet Security Inc, Doug Whiting-Hi/fnInc, David Wagner-University of California Berkeley, Chris Hall-Princeton University), Rijndael (Dr. Vincent Rijmen-Katholieke Universiteit Leuven dan Dr. Joan Daemen Proton World International), dan RC6 (RSA Amerika). Setahun kemudian pada tahun 2000, algoritma Rijndael terpilih sebagai algoritma kriptografi yang selain aman juga efisien dalam implementasinya dan dinobatkan sebagai AES. Nama Rijndael sendiri berasal dari gabungan nama penemunya. 2.8. Deskripsi Algoritma AES

AES termasuk dalam jenis algoritma kriptografi yang sifatnya simetri dan cipherblock. Dengan demikian algoritma ini mempergunakan kunci yang sama saa tenkripsi dan dekripsi serta masukan dan keluarannya berupa blok dengan jumlah bit tertentu. Rijndael mendukung berbagai variasi ukuran blok dan kunci yang akan digunakan. Namun Rijndael mempunyai ukuran blok dankunci yang tetap sebesar 128, 192, 256 bit. Pemilihan ukuran blok data dan kunci akanmenentukan jumlah proses yang harus dilalui untuk proses enkripsi dan dekripsi. Berikut adalah perbandingan jumlah proses yang harus dilalui untuk


(26)

16

masing-masing masukan. Tabel 2.1. Jumlah proses berdasarkan bit blok dan kunci.

Tabel 2.1. Kunci Algoritma AES Panjang

Kunci (Nk) Dalam words

Ukuran Blok Data (Nb) Dalam words

Jumlah Proses (Nr)

4 4 10

6 4 12

8 4 14

Blok-blok data masukan dan kunci dioperasikan dalam bentuk array.Setiap anggota array sebelum menghasilkan keluaran ciphertext dinamakan dengan state. Setiap state akan mengalami proses yang secara garis besar terdiri dari empat tahap yaitu, AddRoundKey, SubBytes, ShiftRows, dan MixColumns. Kecuali tahap MixColumns, ketiga tahap lainnya akan diulang pada setiap proses sedangkan tahap MixColumns tidak akan dilakukan pada tahap terakhir. Proses dekripsi adalah kebalikkan dari dekripsi.

Karena terjadi beberapa tahap dalam proses enkripsi, maka diperlukan subkey subkey yang akan dipakai pada tiap tahap. Pengembangan jumlah kunci yang akan dipakai diperlukan karena kebutuhan subkey subkey yang akan dipakai dapat mencapai ribuan bit, sedangkan kunci yang disediakan secara default hanya 128-256 bit. Jumlah total kunci yang diperlukan sebagai subkey adalahsebanyak Nb(Nr+1), dimana Nb adalahbesarnya blok data dalam satuan word. Sedangkan Nr adalah jumlah tahapan yang harus dilalui dalam satuan word. Sebagai contoh, bilamana digunakan 128 bit (4 word) blok data dan 128 bit (4 word) kunci makaakan dilakukan 10 kali proses (lihat Tabel 1). Dengan demikian dari rumus didapatkan4(10+1)=44 word=1408 bit kunci. Untuk melakukan pengembangan jumlah kunci yang akan dipakai dari kunci utama maka dilakukan key schedule.


(27)

17

2.8.1. Key Schedule

Proses key schedule diperlukan untuk mendapatkan subkey-subkey dari kunci utama agar cukup untuk melakukan enkripsi dan dekripsi. Proses ini terdiri dari beberapa operasi, yaitu:

a. Operasi Rotate, yaitu operasi perputaran 8 bit pada 32 bit dari kunci. b. Operasi SubBytes, pada operasi ini 8 bit dari subkey disubstitusikan

dengan nilai dari S-Box.

c. Operasi Rcon, operasi ini dapat diterjemahkan sebagai operasi pangkat 2 nilai tertentu dari user. Operasi ini menggunakan nilai-nilai dalam Galois field. Nilai-nilai dari Rcon kemudian akan di-XOR dengan hasil operasi SubBytes.

d. Operasi XOR dengan w[i-Nk] yaitu word yang berada pada Nk sebelumnya.

2.8.2. Add Round Key

Pada proses ini subkey digabungkan dengan state. Proses penggabungan ini menggunakan operasi XOR untuk setiap bytedari subkey dengan byte yang bersangkutan dari state. Untuk setiap tahap, subkey dibangkitkan dari kunci utama dengan menggunakan proses key schedule. Setiap subkey berukuran sama dengan state yang bersangkutan. Proses AddRoundKey diperlihatkan pada Gambar 1.

Gambar 2.9. Proses Add Round Key

SubBytes Proses SubBytes adalah operasi yang akan melakukan substitusi tidak linear dengan cara mengganti setiap byte state dengan bytepada sebuah tabel


(28)

18

yang dinamakan tabel SBox. Sebuah tabel S-Box terdiri dari 16x16baris dan kolom dengan masing-masing berukuran 1 byte. Tabel S-Box diperlihatkan pada Gambar 2 sedangkan proses SubBytes diperlihatkan pada gambar dibawah ini

Gambar 2.10. S-Box

Gambar 2.11. Proses Sub Bytes

2.8.3. Shift Rows

Proses Shift Rows akan beroperasi pada tiap baris dari tabel state. Proses ini akan bekerja dengan cara memutar byte-byte pada 3baris terakhir (baris 1, 2, dan 3) dengan jumlah perputaran yang berbeda-beda. Baris 1 akan diputar sebanyak 1 kali, baris 2 akan diputar sebanyak 2 kali, dan baris 3 akan diputar


(29)

19

sebanyak 3 kali. Sedangkan baris 0 tidak akan diputar. Proses ShiftRows diperlihatkan pada Gambar 4.

Gambar 2.12. Proses Shift Rows

2.8.4. MixColumns

Proses MixColumns akan beroperasi pada tiap kolom dari tabel state. Operasi ini menggabungkan 4 bytes dari setiap kolomtabel state dan menggunakan transformasi linier Operasi Mix Columns memperlakukan setiap kolom sebagai polinomial 4 suku dalam Galois field dan kemudian dikalikan denganc(x) modulo (x4+1), dimanac(x)=3x3+x2+x+2. Kebalikkan dari polynomial ini adalah c(x)=11x3+13x2+9x+14. Operasi Mix Columns juga dapat dipandang sebagai perkalian matrix. Langkah Mix Columns dapat ditunjukkan dengan mengalikan 4 bilangan didalam Galois field oleh matrix berikut ini.

Atau bila dijabarkan: r0=2a0+a3+a2+3a1 r1=2a1+a0+a3+3a2 r2=2a2+a1+a0+3a3 a3=2a3+a2+a1+3a0

Operasi penjumlahan di atas dilakukandengan operasi XOR, sedangkan operasiperkalian dilakukan dalam Galois field.


(30)

20

Gambar 2.13. Proses Mix Columns

2.9. Keamanan AES

Algoritma kriptografi AES Rijndael adalah algoritma kriptografi yang cukup handal hingga saat ini. Pada tahun 2006, National Security Agency (NSA) pernah menyatakan bahwa AES cukup aman digunakan untuk mengamankan data-data pemerintah Amerika Serikat yang bukan tergolong sangat rahasia. Hingga tahun 2006 serangan terbaik terhadap algoritma Rijndael hanya berhasil menembus putaran ke-7 untuk kunci 128 bit, putaran ke-8 untuk kunci 192 bit, dan putaran ke-9 untuk kunci 256 bit. Dengan melihat jumlah putaran yang berhasil ditembus, tidaklah tidak mungkin suatu hari algoritma ini dapat dengan mudah ditembus.Namun demikian algoritma Rijndael masih dipandang algoritma yang cukup handal (Didi Suryan, 2006).

VUI (Voice User Interface) merupakan pengembangan dari teknologi ASR tersebut. VUI ini perlahan-lahan menjadi metode alternatif komunikasi antara manusia dan komputer selain GUI(Graphical User Interface) yang sudah bertahun-tahun digunakan. Secara garisbesar, VUI adalah metode komunikasi antara manusia dan komputer dengan menggunakan media suara. Dengan metode VUI ini diharapkan komunikasi antara manusia dan komputer dapat berlangsung secara lebih efisien.Berbagai aplikasi dapat dikembangkan berdasarkan metode VUI ini. Sebagai tahap awal, disusun rancangan aplikasi VUI yang menggabungkan antara metode GUI dan VUI. Dengan disusunnya rancangan ini, nantinya dapat dikembangkan untuk aplikasi VUI lainnya.


(1)

dipilih selain harus memenuhi beberapa kriteria, yaitu faktor keamanan, yang berarti algoritma tersebut harus tidak mudah dipecahkan oleh cracker, bersifat acak atau tidak mudah diterka outputnya, dan tidak berdasar algoritma matematika tertentu.

1. Faktor biaya, dimana diperhitungkan kecepatan prosesing pada baik pada hardware dan software, dan besarnya memory yang dipakai.

2. Faktor karakteristik implementasi, yakni meliputi kesederhanaan

Algoritma yang digunakan, kemudahan dan keamanan dalam implementasi di hardware dansoftware. Algoritma ini akan dinamakan Advanced Encryption Standard (AES). Setelah melewati tahap seleksi yang ketat, pada tahun 1999 hanya tinggal 5 calon yaitu algoritma Serpent (Ross Anderson Universityof Cambridge, Eli Biham Technion, Lars Knudsen-University of California San Diego), MARS (IBM Amerika), Twofish (Bruce Schneier, John Kelsey, dan Niels Ferguson-Counterpane Internet Security Inc, Doug Whiting-Hi/fnInc, David Wagner-University of California Berkeley, Chris Hall-Princeton University), Rijndael (Dr. Vincent Rijmen-Katholieke Universiteit Leuven dan Dr. Joan Daemen Proton World International), dan RC6 (RSA Amerika). Setahun kemudian pada tahun 2000, algoritma Rijndael terpilih sebagai algoritma kriptografi yang selain aman juga efisien dalam implementasinya dan dinobatkan sebagai AES. Nama Rijndael sendiri berasal dari gabungan nama penemunya. 2.8. Deskripsi Algoritma AES

AES termasuk dalam jenis algoritma kriptografi yang sifatnya simetri dan cipherblock. Dengan demikian algoritma ini mempergunakan kunci yang sama saa tenkripsi dan dekripsi serta masukan dan keluarannya berupa blok dengan jumlah bit tertentu. Rijndael mendukung berbagai variasi ukuran blok dan kunci yang akan digunakan. Namun Rijndael mempunyai ukuran blok dankunci yang tetap sebesar 128, 192, 256 bit. Pemilihan ukuran blok data dan kunci akanmenentukan jumlah proses yang harus dilalui untuk proses enkripsi dan dekripsi. Berikut adalah perbandingan jumlah proses yang harus dilalui untuk


(2)

masing-masing masukan. Tabel 2.1. Jumlah proses berdasarkan bit blok dan kunci.

Tabel 2.1. Kunci Algoritma AES Panjang

Kunci (Nk) Dalam words

Ukuran Blok Data (Nb) Dalam words

Jumlah Proses (Nr)

4 4 10

6 4 12

8 4 14

Blok-blok data masukan dan kunci dioperasikan dalam bentuk array.Setiap anggota array sebelum menghasilkan keluaran ciphertext dinamakan dengan state. Setiap state akan mengalami proses yang secara garis besar terdiri dari empat tahap yaitu, AddRoundKey, SubBytes, ShiftRows, dan MixColumns. Kecuali tahap MixColumns, ketiga tahap lainnya akan diulang pada setiap proses sedangkan tahap MixColumns tidak akan dilakukan pada tahap terakhir. Proses dekripsi adalah kebalikkan dari dekripsi.

Karena terjadi beberapa tahap dalam proses enkripsi, maka diperlukan subkey subkey yang akan dipakai pada tiap tahap. Pengembangan jumlah kunci yang akan dipakai diperlukan karena kebutuhan subkey subkey yang akan dipakai dapat mencapai ribuan bit, sedangkan kunci yang disediakan secara default hanya 128-256 bit. Jumlah total kunci yang diperlukan sebagai subkey adalahsebanyak Nb(Nr+1), dimana Nb adalahbesarnya blok data dalam satuan word. Sedangkan Nr adalah jumlah tahapan yang harus dilalui dalam satuan word. Sebagai contoh, bilamana digunakan 128 bit (4 word) blok data dan 128 bit (4 word) kunci makaakan dilakukan 10 kali proses (lihat Tabel 1). Dengan demikian dari rumus didapatkan4(10+1)=44 word=1408 bit kunci. Untuk melakukan pengembangan jumlah kunci yang akan dipakai dari kunci utama maka dilakukan key schedule.


(3)

2.8.1. Key Schedule

Proses key schedule diperlukan untuk mendapatkan subkey-subkey dari kunci utama agar cukup untuk melakukan enkripsi dan dekripsi. Proses ini terdiri dari beberapa operasi, yaitu:

a. Operasi Rotate, yaitu operasi perputaran 8 bit pada 32 bit dari kunci. b. Operasi SubBytes, pada operasi ini 8 bit dari subkey disubstitusikan

dengan nilai dari S-Box.

c. Operasi Rcon, operasi ini dapat diterjemahkan sebagai operasi pangkat 2 nilai tertentu dari user. Operasi ini menggunakan nilai-nilai dalam Galois field. Nilai-nilai dari Rcon kemudian akan di-XOR dengan hasil operasi SubBytes.

d. Operasi XOR dengan w[i-Nk] yaitu word yang berada pada Nk sebelumnya.

2.8.2. Add Round Key

Pada proses ini subkey digabungkan dengan state. Proses penggabungan ini menggunakan operasi XOR untuk setiap bytedari subkey dengan byte yang bersangkutan dari state. Untuk setiap tahap, subkey dibangkitkan dari kunci utama dengan menggunakan proses key schedule. Setiap subkey berukuran sama dengan state yang bersangkutan. Proses AddRoundKey diperlihatkan pada Gambar 1.

Gambar 2.9. Proses Add Round Key

SubBytes Proses SubBytes adalah operasi yang akan melakukan substitusi tidak linear dengan cara mengganti setiap byte state dengan bytepada sebuah tabel


(4)

yang dinamakan tabel SBox. Sebuah tabel S-Box terdiri dari 16x16baris dan kolom dengan masing-masing berukuran 1 byte. Tabel S-Box diperlihatkan pada Gambar 2 sedangkan proses SubBytes diperlihatkan pada gambar dibawah ini

Gambar 2.10. S-Box

Gambar 2.11. Proses Sub Bytes 2.8.3. Shift Rows

Proses Shift Rows akan beroperasi pada tiap baris dari tabel state. Proses ini akan bekerja dengan cara memutar byte-byte pada 3baris terakhir (baris 1, 2, dan 3) dengan jumlah perputaran yang berbeda-beda. Baris 1 akan diputar sebanyak 1 kali, baris 2 akan diputar sebanyak 2 kali, dan baris 3 akan diputar


(5)

sebanyak 3 kali. Sedangkan baris 0 tidak akan diputar. Proses ShiftRows diperlihatkan pada Gambar 4.

Gambar 2.12. Proses Shift Rows 2.8.4. MixColumns

Proses MixColumns akan beroperasi pada tiap kolom dari tabel state. Operasi ini menggabungkan 4 bytes dari setiap kolomtabel state dan menggunakan transformasi linier Operasi Mix Columns memperlakukan setiap kolom sebagai polinomial 4 suku dalam Galois field dan kemudian dikalikan denganc(x) modulo (x4+1), dimanac(x)=3x3+x2+x+2. Kebalikkan dari polynomial ini adalah c(x)=11x3+13x2+9x+14. Operasi Mix Columns juga dapat dipandang sebagai perkalian matrix. Langkah Mix Columns dapat ditunjukkan dengan mengalikan 4 bilangan didalam Galois field oleh matrix berikut ini.

Atau bila dijabarkan: r0=2a0+a3+a2+3a1 r1=2a1+a0+a3+3a2 r2=2a2+a1+a0+3a3 a3=2a3+a2+a1+3a0

Operasi penjumlahan di atas dilakukandengan operasi XOR, sedangkan operasiperkalian dilakukan dalam Galois field.


(6)

Gambar 2.13. Proses Mix Columns 2.9. Keamanan AES

Algoritma kriptografi AES Rijndael adalah algoritma kriptografi yang cukup handal hingga saat ini. Pada tahun 2006, National Security Agency (NSA) pernah menyatakan bahwa AES cukup aman digunakan untuk mengamankan data-data pemerintah Amerika Serikat yang bukan tergolong sangat rahasia. Hingga tahun 2006 serangan terbaik terhadap algoritma Rijndael hanya berhasil menembus putaran ke-7 untuk kunci 128 bit, putaran ke-8 untuk kunci 192 bit, dan putaran ke-9 untuk kunci 256 bit. Dengan melihat jumlah putaran yang berhasil ditembus, tidaklah tidak mungkin suatu hari algoritma ini dapat dengan mudah ditembus.Namun demikian algoritma Rijndael masih dipandang algoritma yang cukup handal (Didi Suryan, 2006).

VUI (Voice User Interface) merupakan pengembangan dari teknologi ASR tersebut. VUI ini perlahan-lahan menjadi metode alternatif komunikasi antara manusia dan komputer selain GUI(Graphical User Interface) yang sudah bertahun-tahun digunakan. Secara garisbesar, VUI adalah metode komunikasi antara manusia dan komputer dengan menggunakan media suara. Dengan metode VUI ini diharapkan komunikasi antara manusia dan komputer dapat berlangsung secara lebih efisien.Berbagai aplikasi dapat dikembangkan berdasarkan metode VUI ini. Sebagai tahap awal, disusun rancangan aplikasi VUI yang menggabungkan antara metode GUI dan VUI. Dengan disusunnya rancangan ini, nantinya dapat dikembangkan untuk aplikasi VUI lainnya.