BAB 2 LANDASAN TEORI

dokumen-dokumen yang mirip
Percobaan Perancangan Fungsi Pembangkit Bilangan Acak Semu serta Analisisnya

KOMBINASI ALGORITMA ONE TIME PAD CIPHER DAN ALGORITMA BLUM BLUM SHUB DALAM PENGAMANAN FILE

Aplikasi Teori Bilangan Bulat dalam Pembangkitan Bilangan Acak Semu

Universitas Sumatera Utara BAB 2 LANDASAN TEORI

BAB I PENDAHULUAN. Universitas Sumatera Utara

BAB Kriptografi

PEMODELAN BILANGAN ACAK DAN PEMBANGKITANNYA. Pemodelan & Simulasi

STUDI DAN PERBANDINGAN CSPRNG BLUM BLUM SHUB DAN YARROW

Kombinasi Algoritma OTP Cipher dan Algoritma BBS dalam Pengamanan File

Perancangan Perangkat Lunak untuk Penyembunyian Data Digital Menggunakan 4-Least Significant Bit Encoding dan Visual Cryptography

BAB 3 METODOLOGI PENELITIAN

Pengembangan Teknik Pembangkitan Bilangan Acak Berbasiskan Hardware

PERANCANGAN DAN ANALISIS MODIFIKASI KUNCI KRIPTOGRAFI ALGORITMA TWOFISH PADA DATA TEKS

BILANGAN ACAK (RANDOM NUMBER)

Message Authentication Code (MAC) Pembangkit Bilangan Acak Semu

Pembangkitan Bilangan Acak Dengan Metode Lantai Dan Modulus Bertingkat

APLIKASI JAVA KRIPTOGRAFI MENGGUNAKAN ALGORITMA VIGENERE. Abstract

BAB II LANDASAN TEORI

Aplikasi Kriptografi dengan Menggunakan Algoritma Vigenere Cipher dan Implementasi Steganografi Least Significant Bit (LSB) pada Matlab R2013a

IMPLEMENTASI KRIPTOGRAFI DAN STEGANOGRAFI DENGAN MENGGUNAKAN ALGORITMA RSA DAN MEMAKAI METODE LSB

BAB II LANDASAN TEORI

BAB II LANDASAN TEORI

Bab 2 Tinjauan Pustaka 2.1 Penelitian Terdahulu

Pertukaran kunci Diffie-Hellman dengan Pembangkit Bilangan Acak Linear Congruential Generator (LCG)

PEMBANGKIT BILANGAN ACAK

PENGGUNAAN POLINOMIAL UNTUK STREAM KEY GENERATOR PADA ALGORITMA STREAM CIPHERS BERBASIS FEEDBACK SHIFT REGISTER

BAB 2 TINJAUAN PUSTAKA

I. PENDAHULUAN. Key Words Tanda Tangan Digital, , Steganografi, SHA1, RSA

Analisis Pengembangan Algoritma Yarrow Menjadi Algoritma Fortuna

BAB III METODE PENELITIAN

Kata Kunci : Steganografi, Fragile watermarkin, watermarking, Linear Congruential Generator, Blum Blum Shub

RC4 Stream Cipher. Endang, Vantonny, dan Reza. Departemen Teknik Informatika Institut Teknologi Bandung Jalan Ganesha 10 Bandung 40132

ALGORITMA ELGAMAL DALAM PENGAMANAN PESAN RAHASIA

PEMBANGKIT BILANGAN RANDOM RANDON NUMBER GENERATOR (RNG)

BAB I PENDAHULUAN. mempunyai makna. Dalam kriptografi dikenal dua penyandian, yakni enkripsi

BAB 2 LANDASAN TEORI. Berikut ini akan dijelaskan pengertian, tujuan dan jenis kriptografi.

BAB 1 PENDAHULUAN Latar belakang

Studi Perbandingan ORYX Cipher dengan Stream Cipher Standard

Blok Cipher JUMT I. PENDAHULUAN

BAB 1 PENDAHULUAN. 1.1 Latar Belakang. Seiring perkembangan teknologi, berbagai macam dokumen kini tidak lagi dalam

KEAMANAN DATA DENGAN MENGGUNAKAN ALGORITMA RIVEST CODE 4 (RC4) DAN STEGANOGRAFI PADA CITRA DIGITAL

BAB 1 PENDAHULUAN. Universitas Sumatera Utara

PEMBANGKIT BILANGAN ACAK (Random Number Generator)

Perhitungan dan Implementasi Algoritma RSA pada PHP

Rancangan Aplikasi Pemilihan Soal Ujian Acak Menggunakan Algoritma Mersenne Twister Pada Bahasa Pemrograman Java

Manusia itu seperti pensil Pensil setiap hari diraut sehingga yang tersisa tinggal catatan yang dituliskannya. Manusia setiap hari diraut oleh rautan

Bab 2 Tinjauan Pustaka

BAB 2 LANDASAN TEORI

STUDI MENGENAI JARINGAN FEISTEL TAK SEIMBANG DAN CONTOH IMPLEMENTASINYA PADA SKIPJACK CIPHER

BAB III ANALISIS MASALAH DAN RANCANGAN PROGRAM

SKRIPSI BILQIS

IMPLEMENTASI BLUM-BLUM-SHUB DAN CHAOTIC FUNCTION UNTUK MODIFIKASI KEY GENERATING PADA AES

Penerapan Metode Adaptif Dalam Penyembunyian Pesan Pada Citra

BAB II TINJAUAN PUSTAKA

APLIKASI ENKRIPSI DAN DEKRIPSI MENGGUNAKAN ALGORITMA RSA BERBASIS WEB

ANALISIS TEORITIS DAN PENERAPAN UJI AUTOKORELASI DARI FIVE BASIC TEST UNTUK MENGUJI KEACAKAN BARISAN BIT

BAB I PENDAHULUAN. Informasi merupakan suatu hal yang sangat penting dalam. kehidupan kita. Seperti dengan adanya teknologi internet semua

BAB III ANALISIS DAN PERANCANGAN

Bab 2: Kriptografi. Landasan Matematika. Fungsi

BAB II LANDASAN TEORI

Perbandingan Sistem Kriptografi Kunci Publik RSA dan ECC

BAB II LANDASAN TEORI

Modifikasi Affine Cipher Dan Vigènere Cipher Dengan Menggunakan N Bit

ALGORITMA ELGAMAL UNTUK KEAMANAN APLIKASI

APLIKASI CONCOCTION GENERATOR PADA GAME DROP7

ANALISIS KEMUNGKINAN PENGGUNAAN PERSAMAAN LINEAR MATEMATIKA SEBAGAI KUNCI PADA MONOALPHABETIC CIPHER

Transformasi Linier dalam Metode Enkripsi Hill- Cipher

Studi dan Implementasi Sistem Kriptografi Rabin

IMPLEMENTASI KRIPTOGRAFI DAN STEGANOGRAFI MENGGUNAKAN ALGORITMA RSA DAN METODE LSB

APLIKASI TEORI BILANGAN UNTUK AUTENTIKASI DOKUMEN

BAB 2 LANDASAN TEORI. 2.1 Kriptografi

BAB I APLIKASI STEGANOGRAFI LSB (LEAST SIGNIFICANT BIT) MODIFICATION UNSUR WARNA MERAH PADA DATA CITRA DIGITAL

KRIPTOGRAFI VERNAM CIPHER UNTUK MENCEGAH PENCURIAN DATA PADA SEMUA EKSTENSI FILE

Disusun oleh: Ir. Rinaldi Munir, M.T.


BAB 1 PENDAHULUAN. 1.1 Latar Belakang

BAB III ANALISIS DAN DESAIN SISTEM

PERBANDINGAN METODE VIGENERE DAN AFFINE UNTUK PESAN RAHASIA

ALGORITMA LOGICAL CIPHER

PENGGUNAAN KRIPTOGRAFI DAN STEGANOGRAFI BERDASARKAN KEBUTUHAN DAN KARAKTERISTIK KEDUANYA

Perbandingan dan Analisis True Random Number Generation terhadap Pseudorandom Number Generation dalam Berbagai Bidang

Kriptografi Simetris Dengan Kombinasi Hill cipher Dan Affine Cipher Di Dalam Matriks Cipher Transposisi Dengan Menerapkan Pola Alur Bajak Sawah

BAB I PENDAHULUAN. diperhatikan, yaitu : kerahasiaan, integritas data, autentikasi dan non repudiasi.

GAME PUZZLE MAKANAN TRADISIONAL DENGAN MENGGUNAKAN ALGORITMA BLUM BLUM SHUB(BBS) SEBAGAI PENGACAKAN GAMBAR BERBASIS ANDROID

BAB 2 TINJAUAN PUSTAKA

Simulasi Pengamanan File Teks Menggunakan Algoritma Massey-Omura 1 Muhammad Reza, 1 Muhammad Andri Budiman, 1 Dedy Arisandi

METODE SOLOVAY-STRASSEN UNTUK PENGUJIAN BILANGAN PRIMA

BAB 2 LANDASAN TEORI

STUDI PERBANDINGAN ENKRIPSI MENGGUNAKAN ALGORITMA IDEA DAN MMB

BAB 1 PENDAHULUAN. 1.1 Latar Belakang

BAB III ANALISIS DAN PERANCANGAN

PENGGUNAAN KRIPTOGRAFI DAN STEGANOGRAFI BERDASARKAN KEBUTUHAN DAN KARAKTERISTIK KEDUANYA

BAB 1 PENDAHULUAN. 1.1 Latar Belakang

Kriptografi Modern Part -1

Transkripsi:

BAB 2 LANDASAN TEORI 2.1. Kriptografi Kriptografi berasal dari gabungan dua suku kata yang berasal dari bahasa Yunani, yaitu Kryptos dan Graphein. Kryptos memiliki makna tersembunyi, misterius, atau rahasia. Graphein sendiri berarti tulisan. Kriptografi adalah seni dan ilmu dalam menyimpan pesan pesan yang berisi rahasia dan itu dilakukan oleh Cryptographer. Cryptanalysts adalah orang yang mempraktekkan cryptanalysis, seni dan ilmu dalam memecahkan ciphertext. Cabang matematika yang meliputi baik kriptografi maupun kriptoanalisis adalah Cryptology dan orang yang mempraktekkannya disebut Cryptologists (Schneier, 1996). Jadi secara sederhana, kriptografi dapat didefinisikan sebagai ilmu atau pelajaran yang menggunakan tulisan dan memiliki makna yang tersembunyi atau rahasia didalamnya. Terdapat pengertian lain di dalam buku lama (sebelum tahun 1980-an) yang menyatakan bahwa kriptografi merupakan ilmu dan seni untuk menjaga kerahasiaan pesan dengan cara menyandikannya ke dalam bentuk yang tidak dapat dimengerti lagi maknanya (Munir, 2006). 2.2. Pembangkit Bilangan Acak Pembangkit Bilangan Acak atau Random Number Generator (RNG) adalah sebuah sumber dari nomor - nomor yang tidak dapat diprediksi, yang berarti bahwa tidak mungkin memprediksi hasil yang keluar. Dalam banyak hal seperti kriptografi, simulasi model, pemgambilan sampel, permainan yang menggunakan kesempatan, dan lainnya dibutuhkan pembangkitan serangkaian nomor acak (Bhaskar, 2013). RNG juga seringkali digunakan untuk membangkitkan seed yang akan digunakan dalam algoritma block cipher atau membangkitkan bilangan prima untuk algoritma RSA (Lietara, 2009). 2.3. Pembangkit Bilangan Acak Semu Pembangkit Bilangan Acak Semu atau yang biasa disebut dengan Pseudo Random Number Generator (PRNG) adalah sebuah algoritma yang umum digunakan pada kriptografi. Dengan memberikan angka angka acak yang pendek, PRNG mengkalkulasi dan mengembalikan urutan angka yang lebih panjang. Angka ini nantinya akan muncul secara acak pada semua

tes yang membandingkan mereka (angka) ke urutan true random numbers. Jika sebuah PRNG dapat memproduksi urutan yang mana tidak ada tes statistik yang dapat membedakannya dari urutan angka acak yang benar, maka PRNG itu dapat disebut sebagai Cryptographically Secure Pseudo Random Generator (CSPRNG). Yang ingin diperoleh dari PRNG adalah untuk menciptakan nilai dengan cepat, dari seed yang pendek, ke urutan yang panjang yang muncul dalam setiap cara untuk dihasilkan oleh putaran-putaran koin yang adil (Blum, 1986). 2.4. Algoritma Blum-Blum-Shub Blum-Blum-Shub adalah algoritma pembangkit bilangan acak yang dibuat pada tahun 1986. Algoritma yang termasuk dalam kategori Cryptographically Secure Pseudo-Random Number Generator (CSPRNG) ini dapat dikatakan sangat sederhana dan mangkus. BBS sendiri merupakan singkatan dari ketiga nama penemunya, yaitu Lenore Blum, Manuel Blum, dan Michael Shub. Berikut rumus pada algoritma Blum-Blum Shub : : 2.4.1. Cara kerja algoritma Blum-Blum-Shub Langkah langkah pembangkitan bilangan acak BBS adalah sebagai berikut : (munir, 2006) 1. Pilih dua buah bilangan prima rahasia p dan q, masing masing kongruen Terhadap 3 modulo 4. dan (dalam praktek bilangan prima yang digunakan cukup besar). 2. Temukan hasil bilangan bulat blum n dengan menghitung 3. Pilih bilangan bulat acak s sebagai umpan. Adapun bilangan yang dipilih harus memenuhi kriteria sebagai berikut : a. b. s dan n adalah bilangan prima. 4. Hitung nilai 5. Temukan hasil bilangan bit acak dengan melakukan literasi berikut : a. Hitung ; b. Temukan hasil bit LSB (Least Significant Bit) yang diambil dari 6. Barisan bit acak yang dihasilkan adalah

2.4.2. Flowchart algoritma Blum-Blum-Shub Gambar 2.1 dibawah adalah flowchart untuk algoritma Blum-Blum-Shub. Start Input Bil Prima p dan q P&q equivalent to 3mod 4 (P Ξ 3mod 4 & q Ξ 3mod 4)? n= p.q Input bilangan prima s dimana 2 s n X 0 = s 2 mod n i=1 to 40 X i = x i-1 2 mod n Zi= LSB(X i ) Setiap 4 bit pada z1...z40 ubah ke dalam bentuk decimal, dan ambil 10 digit pertama Output 10 digit bilangan acak Stop Gambar 2.1. Flowchart algoritma Blum-Blum-Shub 2.4.3. Contoh perhitungan algoritma Blum-Blum-Shub

Misal p=29, q=47, n=1363, s=5, x0=25, maka perhitungan algoritma Blum-Blum-Shub bisa dilihat pada tabel 2.1. Literasi 25 1 625 1 807 1 1098 0 712 0 1271 1 286 0 16 0 256 0 112 0 277 1 401 1 13 1330 0 14 1089 1 15 111 1 16 54 0 Tabel 2.1. Contoh perhitungan algoritma Blum-Blum-Shub Keamanan pada algoritma Blum-Blum-Shub ini terletak pada landasan teori bilangan yang kuat, yaitu sulitnya memfaktorkan bilangan bulat yang besar menjadi faktor-faktor prima dan juga sulitnya memecahkan Quadratic Residuosity Problem (Yuliawan, 2006). Blum-Blum-Shub juga tidak dapat ditebak dari arah kiri dan kanan, yang berarti jika diberikan

barisan bit yang dihasilkan oleh CSPRNG ini, kriptanalisi tidak dapat menganalisa barisan bit sebelumnya dan barisan bit sesudahnya dalam urutan bilangan acak yang dihasilkan (Bilqis, 2012). BBS aman selama masalah memfaktorkannya tetap sulit (Sinai, 2011). BBS juga tidak dapat diprediksi keacakannya (Wibowo, 2015). 2.5. Algoritma Quadratic Linear Congruential Generator Quadratic Linear Congruential Generator (QLCG) merupakan salah satu algoritma pembangkit bilangan acak dengan rumus sebagai berikut : ( ; ; ) Dimana dan (Gille-Ginest, 2009). Dijelaskan lebih rinci, dimana m adalah bilangan bulat positif dan, a, b, c adalah bilangan bulat non-negative yang lebih kecil daripada m. Knuth (1981) memberikan kondisi yang diperlukan untuk dapat mencapai panjang periode maksimal m yang dapat dihasilkan. Kondisi ini berlaku jika m bukanlah bilangan prima (Eichenauer, 1986). 2.5.1. Cara kerja algoritma Quadratic Linear Congruential Generator Langkah-langkah pembangkitan bilangan acak pada algoritma Quadratic Linear Congruential Generator adalah sebagai berikut : 1. Pilih bilangan untuk, a, b, c, serta m dimana : a. m adalah bilangan bulat positif. b., a, b, c adalah bilangan bulat non-negative yang lebih kecil dari m. 2. Temukan hasil bilangan bit acak dengan melakukan literasi berikut : a. Hitung nilai X i = (ax 2 i-1 + bx i-1 + c ) mod n b. Temukan hasil bit LSB (Least Significant Bit) yang diambil dari 3. Barisan bit acak yang dihasilkan adalah 2.5.2. Flowchart algoritma Quadratic Linear Congruential Generator Gambar 2.2 dibawah adalah flowchart untuk algoritma Quadratic Linear Congruential Generator.

Start Input Bil Bulat m Input bil bulat X 0,a,b,c. Dimana X 0,a,b,c < m. i=1 to 40 X i = (ax i-1 2 + bx i-1 + c ) mod m Zi= LSB(X i ) Setiap 4 bit pada z1...z40 ubah ke dalam bentuk decimal, dan ambil 10 digit pertama Output 10 digit bilangan acak selesai Gambar 2.2. Flowchart algoritma Quadratical Linear Congruential Generator 2.5.3. Contoh perhitungan algoritma Quadratic Linear Congruential Generator Misal a=69, b=59, c=23, m=121, dan =13, maka perhitungan algoritma Quadratic Linear Congruential Generator bisa dilihat pada tabel 2.2. Literasi 1 109 1

2 55 1 3 1 1 4 30 0 5 5 1 6 107 1 7 16 0 8 118 0 9 104 0 10 85 1 11 82 0 12 63 1 13 27 1 14 8 0 15 71 1 16 52 0 Tabel 2.2. Contoh perhitungan algoritma Quadratical Linear Congruential Generator Keunggulan yang terdapat pada algoritma Quadratic Linear Congruential Generator adalah kecepatannya dan hanya membutuhkan sedikit operasi bit (Situngkir, 2013).