BAB II TINJAUAN PUSTAKA. Kriptografi (cryptography) berasal dari Bahasa Yunani: cryptós artinya

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

BAB 2 TINJAUAN PUSTAKA

BAB I PENDAHULUAN. Pengiriman informasi yang dilakukan dengan mengirimkan data tanpa melakukan

BAB 2 LANDASAN TEORI. 2.1 Kriptografi Definisi Kriptografi

ALGORITMA ELGAMAL DALAM PENGAMANAN PESAN RAHASIA

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

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

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

BAB 2 LANDASAN TEORI

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

BAB II LANDASAN TEORI

BAB II. Dasar-Dasar Kemanan Sistem Informasi

BAB II TINJAUAN PUSTAKA

SISTEM KRIPTOGRAFI. Mata kuliah Jaringan Komputer Iskandar Ikbal, S.T., M.Kom

TUGAS KRIPTOGRAFI Membuat Algortima Sendiri Algoritma Ter-Puter Oleh : Aris Pamungkas STMIK AMIKOM Yogyakarta emali:

BAB 1 PENDAHULUAN. 1.1 Latar Belakang Masalah

BAB 1 PENDAHULUAN. 1.1 Latar Belakang

Bab 2 Tinjauan Pustaka 2.1 Penelitian Terdahulu

BAB 2 LANDASAN TEORI

BAB 2 TINJAUAN PUSTAKA

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

BAB III ANALISIS KOMPLEKSITAS ALGORITMA

BAB II LANDASAN TEORI. yang mendasari pembahasan pada bab-bab berikutnya. Beberapa definisi yang

IMPLEMENTASI ALGORITMA HILL CIPHER DALAM PENYANDIAN DATA

BAB II LANDASAN TEORI

BAB II TINJAUAN PUSTAKA

BAB II LANDASAN TEORI

BAB 1 PENDAHULUAN. 1.1 Latar Belakang

Sedangkan berdasarkan besar data yang diolah dalam satu kali proses, maka algoritma kriptografi dapat dibedakan menjadi dua jenis yaitu :

PENGGUNAAN ALGORITMA KRIPTOGRAFI POHLIG HELLMAN DALAM MENGAMANKAN DATA

BAB 2 LANDASAN TEORI

Sistem Kriptografi Kunci-Publik

BAB 2 LANDASAN TEORI

BAB 2 TINJAUAN PUSTAKA

Perhitungan dan Implementasi Algoritma RSA pada PHP

BAB 1 PENDAHULUAN. Universitas Sumatera Utara

SISTEM PENGAMBILAN KEPUTUSAN PERMOHONAN KREDIT SEPEDA MOTOR DENGAN MENGGUNAKAN METODE DECISION TREE

Keamanan Sistem Informasi. Girindro Pringgo Digdo

RANCANGAN KRIPTOGRAFI HYBRID KOMBINASI METODE VIGENERE CIPHER DAN ELGAMAL PADA PENGAMANAN PESAN RAHASIA

BAB 1 PENDAHULUAN. 1.1 Latar Belakang Masalah

Bab 2 Tinjauan Pustaka

Pengantar Kriptografi

BAB 2 LANDASAN TEORI

Bab 2: Kriptografi. Landasan Matematika. Fungsi

BAB 2 LANDASAN TEORI

METODE ENKRIPSI DAN DEKRIPSI DENGAN MENGGUNAKAN ALGORITMA ELGAMAL

Perancangan Aplikasi Pembelajaran Kriptografi Kunci Publik ElGamal Untuk Mahasiswa

Public Key Cryptography

+ Basic Cryptography

BAB II LANDASAN TEORI

2.1 Keamanan Informasi

BAB 2 LANDASAN TEORI. Universitas Sumatera Utara

ALGORITMA ELGAMAL UNTUK KEAMANAN APLIKASI

RUANG LINGKUP KRIPTOGRAFI UNTUK MENGAMANKAN DATA Oleh: Budi Hartono

Proses enkripsi disetiap putarannya menggunakan fungsi linear yang memiliki bentuk umum seperti berikut : ( ) ( ) (3) ( ) ( ) ( )

BAB II TINJAUAN PUSTAKA

BAB II DASAR TEORI. membahas tentang penerapan skema tanda tangan Schnorr pada pembuatan tanda

Otentikasi dan Tandatangan Digital (Authentication and Digital Signature)

BAB 1 PENDAHULUAN. 1.1 Latar Belakang

BAB I PENDAHULUAN. 1.1 Latar Belakang Masalah

BAB II TINJAUAN PUSTAKA

BAB 1 PENDAHULUAN. dalam bahasa sandi (ciphertext) disebut sebagai enkripsi (encryption). Sedangkan

K i r p i t p o t g o ra r f a i

Bab 2 Tinjauan Pustaka 2.1 Penelitian Terdahulu

Penggabungan Algoritma Kriptografi Simetris dan Kriptografi Asimetris untuk Pengamanan Pesan

BAB 2 LANDASAN TEORI

PERANAN ARITMETIKA MODULO DAN BILANGAN PRIMA PADA ALGORITMA KRIPTOGRAFI RSA (Rivest-Shamir-Adleman)

Elliptic Curve Cryptography (Ecc) Pada Proses Pertukaran Kunci Publik Diffie-Hellman. Metrilitna Br Sembiring 1

BAB 1 PENDAHULUAN. 1.1.Latar Belakang

BAB 2 LANDASAN TEORI

BAB III METODE PENELITIAN. Tahapan yang dilakukan dalam penelitian ini disajikan pada Gambar 3. Pengujian

Implementasi dan Perbandingan Algoritma Kriptografi Kunci Publik

BAB 2 LANDASAN TEORI Keamanan Informasi

Kriptografi, Enkripsi dan Dekripsi. Ana Kurniawati Kemal Ade Sekarwati

APLIKASI JAVA KRIPTOGRAFI MENGGUNAKAN ALGORITMA VIGENERE. Abstract

Oleh: Benfano Soewito Faculty member Graduate Program Universitas Bina Nusantara

BAB Kriptografi

BAB I PENDAHULUAN. 1.1 Latar Belakang

Aplikasi Perkalian dan Invers Matriks dalam Kriptografi Hill Cipher

BAB 1 PENDAHULUAN. 1.1 Latar Belakang

Perbandingan Sistem Kriptografi Kunci Publik RSA dan ECC

KEAMANAN DATA DENGAN METODE KRIPTOGRAFI KUNCI PUBLIK

APLIKASI ENKRIPSI DAN DEKRIPSI MENGGUNAKAN ALGORITMA RSA BERBASIS WEB

IMPLEMENTASI ALGORITMA BLOWFISH UNTUK ENKRPSI DAN DEKRIPSI BERBASIS WEB

BAB 1 PENDAHULUAN. 1.1 Latar Belakang

BAB 2 LANDASAN TEORI

BAB 1 PENDAHULUAN Latar belakang

KRIPTOGRAFI SISTEM KEAMANAN KOMPUTER

BAB 2 LANDASAN TEORI

Kriptografi Kunci Publik Berdasarkan Kurva Eliptis

BAB 2 LANDASAN TEORI

BAB II TINJAUAN PUSTAKA

BAB 1 PENDAHULUAN. Universitas Sumatera Utara

PENERAPAN KEAMANAN BASIS DATA DENGAN TEKNIK ENKRIPSI. Hari Purwanto, Manajemen Informatika, Fakultas Teknologi Industri, Universitas Suryadarma

Sistem Kriptografi Kunci Publik Multivariat

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

BAB 2 LANDASAN TEORI

Perbandingan Penggunaan Bilangan Prima Aman Dan Tidak Aman Pada Proses Pembentukan Kunci Algoritma Elgamal

BAB II TINJAUAN PUSTAKA

KRIPTOGRAFI HILL CIPHER DENGAN MENGGUNAKAN OPERASI MATRIKS

Transkripsi:

BAB II TINJAUAN PUSTAKA 2.1 Kriptografi Kriptografi (cryptography) berasal dari Bahasa Yunani: cryptós artinya secret (rahasia), sedangkan gráphein artinya writing (tulisan), jadi kriptografi berarti secret writing (tulisan rahasia). Definisi kriptografi ada beberapa yang telah dikemukakan di dalam berbagai literatur. Definisi yang dipakai di dalam buku-buku yang lama (sebelum tahun 1980-an) menyatakan bahwa kriptografi adalah ilmu dan seni untuk menjaga kerahasian pesan dengan cara menyandikannya ke dalam bentuk yang tidak dapat dimengerti lagi maknanya. Definisi ini mungkin cocok pada masa lalu di mana kriptografi digunakan untuk keamanan komunikasi penting seperti komunikasi di kalangan militer, diplomat, dan mata-mata. Namun saat ini kriptografi lebih dari sekadar privacy, tetapi juga untuk tujuan data integrity, authentication, dan non-repudiation (Mollin,2006). Kriptografi merupakan ilmu sekaligus seni untuk menjaga keamanan pesan, selain itu ada pengertian tentang kriptografi yaitu kriptografi merupakan ilmu yang mempelajari teknik-teknik matematika yang

7 berhubungan dengan aspek keamanan informasi seperti kerahasiaan, integritas data, serta otentikasi. Kata seni di dalam definisi di atas maksudnya adalah mempunyai cara yang unik untuk merahasiakan pesan. Kata graphy di dalam cryptography itu sendiri sudah menyiratkan suatu seni (Munir, 2006). Adapun istilah-istilah yang digunakan dalam kriptografi dalam melakukan proses kerjanya adalah sebagai berikut: a. Plaintext Plaintext merupakan pesan asli yang belum disandikan atau informasi yang ingin dikirimkan atau dijaga keamanannya. b. Ciphertext Ciphertext merupakan pesan yang telah disandikan (dikodekan) sehingga siap untuk dikirimkan. c. Enkripsi Enkripsi merupakan proses yang dilakukan untuk menyandikan plaintext menjadi ciphertext dengan tujuan pesan tersebut tidak dapat dibaca oleh pihak yang tidak berwenang. d. Dekripsi Dekripsi merupakan proses yang dilakukan untuk memperoleh kembali plaintext dari ciphertext. e. Kunci Kunci yang dimaksud disini adalah kunci yang dipakai untuk melakukan dekripsi dan enkripsi. Kunci terbagi menjadi dua bagian, kunci pribadi (private key) dan kunci umum (public key).

8 f. Kriptosistem Kriptosistem merupakan sistem yang dirancang untuk mengamankan suatu sistem informasi dengan memanfaatkan kriptografi. g. Kriptanalasis Kriptanalasis merupakan suatu ilmu untuk mendapatkan plainteks tanpa harus mengetahui kunci secara wajar (Munir, 2006). 2.2 Tujuan Kriptografi Empat tujuan mendasar dari ilmu kriptografi yang juga merupakan aspek keamanan informasi, yaitu : a. Kerahasiaan (confidentiality) Kerahasiaan berarti data tersebut hanya bisa diakses oleh pihak-pihak tertentu saja. b. Otentikasi (authentication) Pada saat mengirim atau menerima informasi, kedua belah pihak perlu mengetahui bahwa pengirim dari pesan tersebut adalah orang yang sebenarnya. c. Integritas data (integrity) Tuntutan integritas data ini berhubungan dengan jaminan setiap pesan yang dikirim pasti sampai pada penerimanya tanpa ada bagian dari pesan tersebut yang diganti, diduplikasi, dirusak, diubah urutannya dan ditambahkan.

9 d. Ketiadaan penyangkalan (nonrepudiation) Nonrepudiation mencegah pengirim maupun penerima mengingkari bahwa mereka telah mengirimkan atau menerima suatu pesan/informasi (Munir, 2006). 2.3 Algoritma Kriptografi Algoritma kriptografi atau sering disebut dengan cipher adalah suatu fungsi matematis yang digunakan untuk melakukan enkripsi dan dekripsi (Schneier, 1996). Algoritma kriptografi ada dua macam, yaitu algoritma simetris (symmetric algorithms) dan algoritma asimetris (asymmetric algorithms). 2.3.1 Algoritma Simetris Algoritma simetris atau disebut juga algoritma konvensional adalah algoritma yang menggunakan kunci yang sama pada proses enkripsi dan dekripsi. Algoritma ini mengharuskan pengirim dan penerima menyetujui satu kunci tertentu sebelum dapat berkomunikasi secara aman. Keamanan algoritma simetri tergantung pada rahasia kunci. Pemecahan kunci berarti memungkinkan setiap orang dapat mengenkripsi dan mendekripsi pesan dengan mudah.

10 Gambar 1. Skema Algoritma Simetris 2.3.2 Algoritma Asimetris Algoritma Asimetris adalah pasangan kunci kriptografi yang salah satunya digunakan untuk proses enkripsi dan satu lagi deskripsi. Semua orang yang mendapatkan kunci publik dapat menggunakannya untuk mengenkripsi suatu pesan, sedangkan hanya satu orang saja yang memiliki rahasia itu, yang dalam hal ini kunci rahasia, untuk melakukan pembongkaran terhadap kode yang dikirim untuknya. Gambar 2. Skema Algoritma Asimetris 2.4 Sistem Kriptografi Menurut Stinson (1995), sistem kriptografi (cryptosystem) adalah suatu 5- tuple ( P, C, K, E, D ) yang memenuhi kondisi sebagai berikut : 1. P adalah himpunan plaintext,

11 2. C adalah himpunan ciphertext, 3. K atau ruang kunci (keyspace), adalah himpunan kunci, 4. E adalah himpunan fungsi enkripsi ek : P C, 5. D adalah himpunan fungsi dekripsi dk : C P, 6. Untuk setiap k K terdapat ek E dan dk D. Setiap ek : P C dan dk : C P merupakan fungsi sedemikian hingga dk(ek(x) ) = x, untuk setiap plaintext x P. Sistem kriptografi terdiri dari sebuah algoritma, seluruh kemungkinan plaintext, ciphertext dan kunci-kuncinya. Sistem kriptografi merupakan suatu fasilitas untuk mengkonversikan plaintext menjadi ciphertext, dan sebaliknya. 2.5 Algoritma ElGamal Algoritma ElGamal merupakan algoritma kriptografi asimetris yang pertama kali dipublikasikan oleh Taher ElGamal pada tahun 1985. Algoritma ini didasarkan atas masalah logaritma diskrit pada grup bilangan prima. Kekuatan algoritma ElGamal terletak pada kesulitan penghitungan logaritma diskret pada bilangan modulo prima yang besar sehingga upaya untuk menyelesaikan masalah logaritma ini menjadi sangat sukar. Algoritma ElGamal tidak dipatenkan, tetapi algoritma ini didasarkan pada algoritma Diffie Hellman, sehingga hak paten algoritma Diffie Hellman juga mencakup algoritma ElGamal. Karena hak paten algoritma Diffie Hellman berakhir pada bulan April 1997, maka algoritma

12 ElGamal dapat diimplementasikan untuk aplikasi komersil. Algoritma ElGamal terdiri dari tiga proses, yaitu proses pembentukan kunci, proses enkripsi dan proses dekripsi. Algoritma ini merupakan cipher blok, yaitu melakukan proses enkripsi pada blok-blok plainteks dan menghasilkan blok-blok cipherteks yang kemudian dilakukan proses dekripsi, dan hasilnya digabungkan kembali menjadi pesan yang utuh dan dapat dimengerti. Bilangan prima p dibutuhkan untuk membentuk sistem kriptografi ElGamal (Mulya, 2013). 2.6 Algoritma Massey-Omura Massey-Omura Cryptosystem adalah salah satu cryptosystem kunci publik yang berdasarkan pada logaritma diskrit. Diusulkan oleh James Massey dan Jim K. Omura pada tahun 1982 sebagai pengembangan atas Three Pass Protocol oleh Shamir pada tahun 1980, dimana pengirim dan penerima tidak bertukar kunci namun protocol ini memerlukan pengirim dan penerima yang memiliki dua kunci untuk mengenkripsi dan mendekripsi pesan (Yan, 2013). 2.7 Running Time Running time merupakan waktu yang dibutuhkan untuk mengeksekusi setiap instruksi di dalam program sampai selesai. Didalam program terdapat beberapa operasi yaitu penambahan (+), pengurangan (-), perkalian (*), pembagian (/), return (pengembalian nilai dari fungsi), inisialisasi, dan perbandingan dimana setiap operasi ini running time masing-masing 1 unit (Weiss, 2007).

13 2.8 Kompleksitas Algoritma Kompleksitas dari suatu algoritma merupakan ukuran seberapa banyak komputasi yang dibutuhkan algoritma tersebut untuk menyelesaikan masalah. Secara informal, algoritma yang dapat menyelesaikan suatu permasalahan dalam waktu yang singkat memiliki kompleksitas yang rendah, sementara algoritma yang membutuhkan waktu lama untuk menyelesaikan masalahnya mempunyai kompleksitas yang tinggi. Untuk n cukup besar, bahkan tidak terbatas, dilakukan analisis efisiensi dari suatu algoritma untuk menentukan kompleksitas waktu yang sesuai atau disebut juga kompleksitas waktu asimptotik dengan melihat waktu tempuh (running time). Kompleksitas waktu asimptotik terdiri dari tiga macam. Pertama, keadaan terbaik (best case) dinotasikan dengan Ω (g(n)) (Big- Omega), keadaan rata-rata (average case) dinotasikan dengan Θ (g(n)) (Big-Theta) dan keadaan terburuk (worst case) dinotasikan dengan O(g(n)) (Big-O). Kompleksitas waktu algoritma dihitung dengan menggunakan notasi O(f(n)), dibaca Big-O dari f(n) (Weiss, 2007). Notasi O menyatakan running time dari suatu algoritma untuk memungkinkan kasus terburuk. Notasi O memiliki beberapa bentuk : 1. O(1), merupakan algoritma konstan yang artinya running time algoritma tersebut tetap, tidak bergantung pada n. 2. O(n), disebut algoritma linier yang artinya bila n menjadi 2n maka running time algoritma tersebut akan menjadi dua kali semula.

14 3. O(n 2 ), disebut algoritma kuadratik yang biasanya hanya digunakan untuk kasus dengan n yang berukuran kecil. Sebab, bila n dinaikkan menjadi dua kali semula, maka running time algoritma akan menjadi empat kali semula. 4. O(n 3 ), disebut algoritma kubik dimana bila n dinaikkan menjadi dua kali semula, maka running time algoritma akan menjadi delapan kali semula. 5. O(2 n ), disebut algoritma eksponensial dimana bila n dinaikkan menjadi dua kali semula, maka running time algoritma akan menjadi kuadrat kali semula. 6. O(log n), disebut algoritma logaritmik dimana laju pertumbuhan waktu lebih lambat dari pada pertumbuhan n. Algoritma yang termasuk algoritma logaritmik adalah algoritma yang memecahkan persoalan besar dengan mentransformasikannya menjadi beberapa persoalan yang lebih kecil dengan ukuran sama. Basis algoritma tidak terlalu penting, sebab bila misalkan n dinaikkan menjadi dua kali semula, log n meningkat sebesar jumlah tetapan. 7. O(n log n), terdapat pada algoritma yang membagi persoalan menjadi beberapa persoalan yang lebih kecil, menyelesaikan setiap persoalan secara independen, kemudian menggabungkan solusi masing-masing persoalan. 8. O(n!), disebut algoritma faktorial dimana algoritma jenis ini akan memproses setiap masukan dan menghubungkannya dengan n-1

15 masukan lainnya. Bila n menjadi dua kali semula, maka running time algoritma akan menjadi faktorial dari 2n. Jadi, analisis kompleksitas waktu algoritma dihitung dengan menggunakan notasi O(f(n)) dimana Notasi O menyatakan running time (T(n)) dari suatu algoritma untuk memungkinkan kasus terburuk (worst case) (Weiss, 2007).