BAB I PENDAHULUAN 1.1 Latar Belakang Sewaktu seseorang menerima atau mengirim pesan, terdapat tiga buah persoalan yang sangat penting, yaitu kerahasian, autentifikasi, dan keutuhan. Kerahasian memberi garansi data tidak dapat dibaca oleh orang yang tidak berkepentingan. Autentifikasi memberi garansi tentang keaslian data dan dengan siapa berhubungan. Keutuhan memberi garansi bahwa data tidak mengalami perubahan sewaktu perjalanan, dengan kata lain data yang dikirim adalah data yang diterima. Dalam pegiriman informasi dengan beberapa teknik kriptografi, kita membutuhkan suatu cara agar informasi yang ingin kita sampaikan dapat diterima dengan aman oleh orang yang memang berwenang mendapatkannya. Cara atau protokol ini dapat digunakan baik untuk pengiriman pesan ataupun pemberian autentifikasi, termasuk juga tanda tangan pada sebuah dokumen. Autentifikasi entitas atau identifikasi dirancang agar suatu pihak (verifier) mendapat jaminan bahwa identitas dari pihak lain (claimant) yang ingin berkomunikasi dengannya sesuai dengan apa yang dinyatakan, sehingga mencegah terjadinya peniruan identitas atau penyamaran. Pada tahun 1949, Shannon mengemukakan dua prinsip penyandian data untuk perancangan cipher blok yang kuat yaitu Confusion dan difusion. Prinsip confusion menyembunyikan hubungan apapun yang ada antara plainteks, cipherteks, dan kunci. Prinsip diffusion menyebarkan pengaruh satu bit plainteks atau kunci ke sebanyak mungkin cipherteks. Prinsip ini juga menyembunyikan hubungan statistik antara plainteks, cipherteks, dan kunci dan membuat kriptanalisis menjadi sulit. Kedua prinsip tersebut, selalu dipakai dalam perancagan cipher blok dan diulang berkali-kali pada satu blok dengan kombinsi yang berbeda-beda untuk mendapatkan keamanan yang bagus. Salah satu identifkasi kuat yang dapat digunakan adalah Zero-knowledge Proofs, dimana
pada protokol ini pesan yang akan dipertukarkan saat protokol berlangsung bukan informasi rahasia, melainkan pengetahuan tentang informasi rahasia tersebut dan dilakukan tanpa menyatakan apapun tentang informasi rahasia tersebut. Hal yang harus diperhatikan dalam protokol di atas adalah pemilihan dari masalah matematika dan transformasi random yang digunakan sehingga orang lain benarbenar tidak dapat memperoleh informasi apapun tentang masalah yang asli atau solusinya, bahkan setelah dilakukan iterasi protokol secara berulang-ulang, dan protokol yang dapat digunkan untuk zero knowledge proof ini yaitu feige fiat shamir. Beberapa Penelitian yang telah dilakukan sebelumnya yang berkaitan dengan penelitian ini adalah penelitian yang dilakukan oleh Hanson Prihantoro Putro dengan judul Percobaan Pemanfaatan Graf pada Protokol Kriptografi, disimpulkan bahwa Pemanfaatan graf pada protokol kriptografi dapat menjadi alternatif bagi penggunaan protokol kriptografi yang telah digunakan saat ini, dengan dasar yang dimiliki Zero Knowledge Proof, bisa diaplikasikan pada protokol kriptografi yang sudah ada dengan beberapa kelebihan maupun kekurangannya. Penelitian lainnya yaitu penelitian yang dilakukan oleh Ronen Gradwohl dengan judul Cryptographic and Physical Zero-Knowledge Proof Systems for Solutions of Sudoku Puzzles, peneliti menganggap bahwa kriptografi dan skema Zero Knowledge Proof adalah kombinasi yang baik digunakanan dalam pemecahan permainan Sudoku. Oleh karena itu, berdasarkan pertimbangan yang ada maka dalam penyusunan tugas akhir ini, penulis tertarik memilih judul Implementasi Zero Knowledge proof dengan Protokol Feige Fiat Shamir dan Quadratic Linear Congruential Generator. 1.2 Rumusan Masalah Perumusan masalah dalam penulisan tugas akhir ini adalah bagaimana proses pengamanan data dalam persoalan autentikasi dengan Zero Knowledge Proof dengan protokol Feige Fiat Shamir (FFS) dan Quadratic Linear Congruential generator.
1.3 Batasan Masalah Agar tulisan ini tidak menyimpang dari ruang lingkup pembahasan, diperlukan batasan masalah sebagai berikut : a. Algoritma untuk autentikasi Zero Knowledge Proof adalah protokol Feige Fiat Shamir. b. Algoritma untuk pembangkit bilangan acak yang digunakan adalah Quadratic Linear Congruential Generator. c. Algoritma Pembangkit bilangan prima yang digunakan yaitu Lehman Theorem d. Jenis data yang diamankan yaitu data teks (.txt) dan dokumen (.doc) e. Bahasa pemograman yang digunakan adalah C#. 1.4 Tujuan Penelitian Adapun tujuan dari penulisan tugas akhir ini adalah : a. Mengetahui proses kerja Zero Knowledge Proof dalam pengamanan sebuah data. b. Mengetahui cara pengimplementasian Zero Konwledge Proof dengan metode Feige Fiat Shamir dan Quadratic Congruential Generator. c. Mengetahui running time dari Quadratic Linear Congruential Generator (QLCG) dan Feige-Fiat-Shamir (FFS) secara terpisah dan ketika dikombinasikan. 1.5 Manfaat Penelitian Manfaat yang diambil dari penulisan tugas akhir ini adalah : a. Membantu pengamanan data tanpa menunjukkan siapa yang melakukan autentifikasi atas keaslian dokumen tersebut, sehingga penyalahgunaannya tidak akan bisa melibatkan pihak yang memverifikasi. b. Sebagai referensi bagi pengguna yang ingin mengetahui mengenai cara kriptografi Zero Knowledge Proof dengan protokol Feige Fiat Shamir dan quadratic Linear Congruential. 1.6 Metodologi Penelitian
Tahapan yang dilakukan dalam penelitian ini adalah: 1. Studi Literatur. Melakukan studi kepustakaan, dengan mengumpulkan dan mempelajari bahan- bahan referensi yang berhubungan dengan kriptografi, Zero Knowledge Proof, Protokol Feige-Fiat-Shamir dan Quadratic Linear Congruential. 2. Analisis Masalah dan Perancangan Sistem. Analisis masalah yang dimulai dengan tahap mengindentifikasikan masalah, memahami kerja sistem yang akan dibuat, manganalisis dan membuat laporan tentang hasil analisis, dan perancangan yang dimaksud adalah dengan membuat rancangan dan interface sistem dengan protokol Feige-Fiat-Shamir. 3. Implementasi Sistem. Perancangan sistem diimplementasikan dalam bentuk kode program (coding) dengan menggunakan bahasa pemrograman C#. 4. Pengujian Sistem. Pengujian dilakukan terhadap program yang telah dibuat. 5. Dokumentasi Sistem. Penyusunan laporan Tugas Akhir lengkap dengan analisis yang didapatkan. 1.7 Sistematika Penulisan Sistematika penulisan skripsi ini terdiri atas bagian-bagian berikut: BAB I PENDAHULUAN Bab ini menjelaskan latar belakang, rumusan masalah, batasan masalah, tujuan penelitian, manfaat penelitian, metodologi penelitian dan sistematikan penulisan dari skripsi ini. BAB II LANDASAN TEORI Bab ini menjelasakan landasan teori dari penelitian yang dilakukan. Teori yang diangkat yaitu kriptografi dan keamanannya, protokol Zero Knowledge Proof, Algoritma Feige-Fiat Shamir, dan Quadratic Linear Congruantial generator BAB III ANALISIS DAN PERANCANGAN SISTEM Pada bab ini akan dijelaskan analisis terhadap implementasi Zero Knowledge Proof dengan Feige-Fiat Shamir. Analisis masalah yang dimulai dengan tahap mengindentifikasikan masalah, memahami kerja sistem yang akan dibuat,
manganalisis dan membuat laporan tentang hasil analisis, dan perancangan yang dimaksud adalah dengan membuat rancangan dan interface sistem dengan protokol Feige-Fiat-Shamir. BAB IV IMPLEMENTASI DAN PENGUJIAN SISTEM Pada bab ini akan menguraikan hasil pengujian sistem tentang autentikasi sebuah pesan dengan Feige Fiat Shamir dan Quadratic Linear Congruantial generator, dan kompleksitas waktu yang dihasilkan dengan penggabungan dua algoritma tersebut. BAB V KESIMPULAN DAN SARAN Bab ini berisi kesimpulan yang didapat dari hasil pengujian yang dilakukan serta saran-saran yang diberikan untuk penelitian selanjutnya..