kriptografi-simetris

7
KRIPTOGRAFI SIMETRIS 1) IDEA Kriptografi IDEA (International Data Encryption Algorithm) diperkenalkan pertama kali tahun 1991 oleh Xuejia Lai dan James L Massey. IDEA merupakan algoritma simetris yang beroperasi pada sebuah blok pesan terbuka 64bit, menggunakan kunci yang sama 128bit untuk proses enkripsi dan dekripsi. Keluaran dari algoritma ini adalah blok pesan terenkripsi 64bit. Proses dekripsi menggunakan blok penyandi (algoritma) yang sama dengan proses enkripsi dimana kunci dekripsinya diturunkan dari kunci enkripsi. IDEA mendapatkan keamanannya dari operasi grup yang berbeda, penambahan dan penjumlahan modular serta exclusive atau bit yang secara aljabar tidak cocok dalam beberapa pengertian. 2) DES (Data EncryptionStandard) DES adalah tipikal blok cipher suatu algoritma yang membutuhkan tetap serangkaian panjang dan mengubah bit plaintext melalui serangkaian operasi rumit ke bitstring ciphertext lain yang sama panjang. Dalam kasus DES, ukuran blok adalah 64 bit. DES juga menggunakan kunci untuk menyesuaikan transformasi, dekripsi sehingga dapat dianggap hanya dapat dilakukan oleh orang-orang yang mengetahui kunci tertentu yang digunakan untuk mengenkripsi. Nampaknya kunci terdiri dari 64- bit, namun hanya 56 di antaranya yang benar-benar digunakan oleh algoritma. Delapan bit digunakan hanya untuk memeriksa paritas, dan kemudian dibuang. Maka panjang kunci yang efektif adalah 56 bit, dan biasanya dikutip seperti itu. 3) BLOWFISH Blowfish merupakan algoritma kunci simetrik cipher blok yang dirancang pada tahun 1993 oleh Bruce Schneier untuk menggantikan DES. Pada saat itu banyak sekali rancangan algoritma yang ditawarkan, namun hampir semua terhalang oleh paten atau kerahasiaan pemerintah Amerika.

Upload: felik-techida

Post on 17-Jan-2016

214 views

Category:

Documents


0 download

DESCRIPTION

kriptografi

TRANSCRIPT

Page 1: Kriptografi-Simetris

KRIPTOGRAFI SIMETRIS

1) IDEA

Kriptografi IDEA (International Data Encryption Algorithm) diperkenalkan pertama kali tahun 1991 oleh Xuejia Lai dan James L Massey.

IDEA merupakan algoritma simetris yang beroperasi pada sebuah blok pesan terbuka 64bit, menggunakan kunci yang sama 128bit untuk proses enkripsi dan dekripsi. Keluaran dari algoritma ini adalah blok pesan terenkripsi 64bit.

Proses dekripsi menggunakan blok penyandi (algoritma) yang sama dengan proses enkripsi dimana kunci dekripsinya diturunkan dari kunci enkripsi.

IDEA mendapatkan keamanannya dari operasi grup yang berbeda, penambahan dan penjumlahan modular serta exclusive atau bit yang secara aljabar tidak cocok dalam beberapa pengertian.

2) DES (Data EncryptionStandard)

DES adalah tipikal blok cipher suatu algoritma yang membutuhkan tetap serangkaian panjang dan mengubah bit plaintext melalui serangkaian operasi rumit ke bitstring ciphertext lain yang sama panjang.

Dalam kasus DES, ukuran blok adalah 64 bit. DES juga menggunakan kunci untuk menyesuaikan transformasi, dekripsi sehingga dapat dianggap hanya dapat dilakukan oleh orang-orang yang mengetahui kunci tertentu yang digunakan untuk mengenkripsi. Nampaknya kunci terdiri dari 64-bit, namun hanya 56 di antaranya yang benar-benar digunakan oleh algoritma. Delapan bit digunakan hanya untuk memeriksa paritas, dan kemudian dibuang. Maka panjang kunci yang efektif adalah 56 bit, dan biasanya dikutip seperti itu.

3) BLOWFISH

Blowfish merupakan algoritma kunci simetrik cipher blok yang dirancang pada tahun 1993 oleh Bruce Schneier untuk menggantikan DES. Pada saat itu banyak sekali rancangan algoritma yang ditawarkan, namun hampir semua terhalang oleh paten atau kerahasiaan pemerintah Amerika. Schneier menyatakan bahwa blowfish bebas paten dan akan berada pada domain publik. Dengan pernyataan Schneier tersebut blowfish telah mendapatkan tempat di dunia kriptografi, khususnya bagi masyarakat yang membutuhkan algoritma kriptografi yang cepat, kuat, dan tidak terhalang oleh lisensi.

Keberhasilan blowfish dalam menembus pasar telah terbukti dengan diadopsinya blowfish sebagai Open Cryptography Interface (OCI) pada kernel linux versi 2.5 keatas. Dengan diadopsinya blowfish, maka telah menyatakan bahwa dunia open source menganggap blowfish adalah salah satu algoritma yang terbaik. Kesuksesan blowfish mulai memudar setelah kehadiran algoritma-algoritma dengan ukuran blok yang lebih besar, seperti AES. AES sendiri memang dirancang untuk menggantikan DES. Sehingga secara keseluruhan AES lebih unggul dari DES dan juga blowfish.

4) TWOFISH

Page 2: Kriptografi-Simetris

Twofish merupakan algoritma kriptografi yang beroperasi dalam mode blok cipher berukuran 128 bit dengan ukuran kunci sebesar 256 bit, ukuran kunci yang besar ditujukan untuk meniadakan kemungkinan kunci lemah (weak-key). Algoritma Twofish sendiri merupakan pengembangan dari algoritma Blowfish. Perancangan Twofish dilakukan dengan memperhatikan kriteria-kriteria yang diajukan National Institute of Standards and Technology (NIST) untuk kompetisi Advanced Encryption Standard (AES), namun algoritma ini tidak terpilih sebagai basis standardisasi.

Tujuan dari perancangan Twofish yang selaras dengan kriteria NIST untuk AES adalah untuk membuat suatu algoritma kriptografi yang efisien dan portabel, rancangan yang fleksibel yang dapat menerima panjang kunci tambahan sehingga dapat diterapkan pada platform dan aplikasi yang sangat bervariatif serta cocok untuk cipher aliran, fungsi hash, dan MAC, serta rancangan yang sederhana agar memudahkan proses analisis dan implementasi algoritma.

Algoritma Twofish menggunakan struktur sejenis Feistel dalam 16 putaran dengan tambahan teknik whitening terhadap input dan output. Teknik whitening sendiri adalah teknik melakukan operasi XOR terhadap materi kunci sebelum putaran pertama dan sesudah putaran akhir. Elemen di luar jaringan feistel normal yang terdapat dalam algoritma twofish adalah rotasi 1 bit. Proses rotasi ini dapat dipindahkan ke dalam fungsi F untuk membentuk struktur jaringan Feistel yang murni, tetapi hal ini membutuhkan tambahan rotasi kata sebelum langkah output whitening.

5) AES Advanced Encryption Standard

Dalam kriptografi, Advanced Encryption Standard (AES) merupakan standar enkripsi dengan kunci-simetris yang diadopsi oleh pemerintah Amerika Serikat. Standar ini terdiri atas 3 blok cipher, yaitu AES-128, AES-192 and AES-256, yang diadopsi dari koleksi yang lebih besar yang awalnya diterbitkan sebagai Rijndael. Masing-masing cipher memiliki ukuran 128-bit, dengan ukuran kunci masing-masing 128, 192, dan 256 bit. AES telah dianalisis secara luas dan sekarang digunakan di seluruh dunia, seperti halnya dengan pendahulunya, Data Encryption Standard (DES).

AES diumumkan oleh Institut Nasional Standar dan Teknologi (NIST) sebagai Standar Pemrosesan Informasi Federal (FIPS) publikasi 197 (FIPS 197) pada tanggal 26 November 2001 setelah proses standardisasi selama 5 tahun, di mana ada 15 desain enkripsi yang disajikan dan dievaluasi, sebelum Rijndael terpilih sebagai yang paling cocok. AES efektif menjadi standar pemerintah Federal pada tanggal 26 Mei 2002 setelah persetujuan dari Menteri Perdagangan. AES tersedia dalam berbagai paket enkripsi yang berbeda. AES merupakan standar yang pertama yang dapat diakses publik dan sandi-terbuka yang disetujui oleh NSA untuk informasi rahasia.

Rijndael dikembangkan oleh dua kriptografer Belgia, Joan Daemen dan Vincent Rijmen, dan diajukan oleh mereka untuk proses seleksi AES. Rijndael (diucapkan [rɛinda ː l]) adalah permainan kata dari kedua nama penemu.

Page 3: Kriptografi-Simetris

Proses shift dalam AES

Ada 10, 12, atau 14 putaran (round) dalam AES. Jumlah kitaran ini sesuai dengan ukuran kunci yang digunakan.

Setiap kitaran mengandungi:

Penggantian Byte yang sama seperti DES

Peralihan = Pertukaran baris

Campur Jalur = Peralihan Kiri & XOR Bit-bit.

Penambahan Subkunci = XOR Bagian Kunci dengan Keputusan Kitaran

KRIPTOGRAFI ASIMETRIS

1) RSA

RSA adalah sebuah algoritma berdasarkan skema public-key cryptography. Diberi nama RSA sebagai inisial para penemunya: Ron Rivest, Adi Shamir, dan Leonard Adleman. RSA dibuat di MIT pada tahun 1977 dan dipatenkan oleh MIT pada tahun 1983. Setelah bulan September tahun 2000, paten tersebut berakhir, sehingga saat ini semua orang dapat menggunakannya dengan bebas.

Lebih jauh, RSA adalah algoritma yang mudah untuk diimplementasikan dan dimengerti. Algoritma RSA adalah sebuah aplikasi dari sekian banyak teori seperti extended euclid algorithm, euler’s function sampai fermat theorem.

Keamanan algoritma RSA terletak pada sulitnya memfaktorkan bilangan yang besar menjadi faktor-faktor prima. Pemfaktoran dilakukan untuk memperoleh kunci pribadi. Selama pemfaktoran bilangan besar menjadi faktor-faktor prima belum ditemukan algoritma yang mangkus, maka selama itu pula keamanan algoritma RSA tetap terjamin.

Page 4: Kriptografi-Simetris

2) ECC (ELLIPTIC CURVE CRYPTOGRAPHY)

Elliptic Curve Cryptography adalah kriptografi kunci publik. Pada kriptografi kunci publik, masing-masing user atau device mengambil bagian dalam komunikasi yang memiliki pasangan kunci yaitu kunci publik dan kunci privat. Hanya pengguna yang cocok yang dapat menggunakan privat key yang sesuai, tetapi kunci public yang digunakan disebarkan kepada pihak yang akan mengirimkan data kepada pemilik privat key. Beberapa algoritma kunci publik menyediakan pendefinisian konstanta yang akan disebarkan ke semua bagian yang ikut berpartisipasi dalam komunikasi.

Domain parameter di ECC adalah salah satu contoh dari konstatanta tersebut. Kriptografi kunci publik tidak seperti algoritma kunci privat yang tidak menyediakan privat key ke seluruh pengguna tetapi lebih lambat dibanding algoritma kunci privat.

ECC adalah salah satu pendekatan algoritma kriptografi kunci publik berdasarkan pada struktur aljabar dari kurva ellips pada daerah finite. Penggunaan elliptic curve pertama kali dicetuskan oleh Neal Koblitz dan Viktor S Miller pada tahun 1985. Elliptic Curve juga digunakan pada beberapa algoritma pemfaktoran integer yang juga diaplikasikan dalam kriptografi seperti Lenstra Elliptic Curve Factorization.

ECC adalah teknologi yang sangat efisien untuk PKI (Public Key Infrastructur). Keamanan dari sistem kunci publik yang menggunakan elliptic curve berdasarkan kesulitan dalam komputasi algoritma diskrit pada group dengan poin pada elliptic curve yang didefinisokan atas finite field.

3) KNAPSACK

Algoritma Knapsack adalah algoritma kriptografi kunci-publik yang keamanannya terletak pada sulitnya memecahkan persoalan knapsack(Knapsack Problem). Knapsack di sini artinya adalah kantung. Di algorima ini dikenal permasalahan yang disebut Knapsack Problem.

Algoritma ini didasarkan pada persoalan 1/0 Knapsack Problem yang berbunyi: Diberikan bobot knapsack adalah M. Diketahui n buah objek yang masing-masing bobotnya adalah w1, w2, …, wn. Tentukan nilai bi sedemikian sehingga

M = b1w1 + b2w2 + … + bnwn (1)

yang dalam hal ini, bi bernilai 0 atau 1. Jika bi = 1, berarti objek i dimasukkan ke dalam knapsack, sebaliknya jika bi = 0, objek i tidak dimasukkan.

Dalam teori algoritma, persoalan knapsack termasuk ke dalam kelompok NP-complete. Persoalan yang termasuk NP-complete tidak dapat dipecahkan dalam orde waktu polinomial. Ide dasar dari algoritma knapsack adalah mengkodekan pesan sebagai rangkaian solusi dari dari persoalan knapsack. Setiap bobot wi di dalam persoalan knapsack merupakan kunci rahasia, sedangkan bit-bit plainteks menyatakan bi.

Dalam implementasinya, Ukuran cipherteks yang dihasilkan (algoritma knapsack) lebih besar daripada plainteksnya, karena enkripsi dapat menghasilkan kriptogram yang nilai desimalnya lebih besar daripada nilai desimal blok plainteks yang dienkripsikan.

Untuk menambah kekuatan algoritma knapsack, kunci publik maupun kunci rahasia seharusnya paling sedikit 250 elemen, nilai setiap elemen antara 200 sampai 400 bit panjangnya, nilai modulus antara

Page 5: Kriptografi-Simetris

100 sampai 200 bit. Dengan nilai-nilai knapsack sepanjang itu, dibutuhkan 1046 tahun untuk menemukan kunci secara brute force, dengan asumsi satu juta percobaan setiap detik.

Sayangnya, algoritma knapsack dinyatakan sudah tidak aman, karena knapsack dapat dipecahkan oleh pasangan kriptografer Shamir dan Zippel. Mereka merumuskan transformasi yang memungkinkan mereka merekonstruksi superincreasing knapsack dari normal knapsack.

4) DIFFIE-HELLMAN

Algoritma Diffie-Hellman adalah algoritma yang menggunakan public-key dalam proses pembentukan kunci rahasia. Untuk mendapatkan kunci rahasia harus melalui beberapa tahap yang di dalamnya menjadi kesepakatan kunci yang dikenal dengan kunci Diffie-Hellman. Nama algoritma ini diambil dari nama Martin E. Hellman dan Bailey W. Diffie yang merupakan penemu dari algoritma ini pada tahun 1976. Tujuan dari algoritma ini adalah supaya kedua belah pihak dapat melakukan kesepakatan kunci yang hasilny nanti dapat digunakan dalam proses enskripsi/deskripsi pesan yang dikirim maupun yang diterima.

Proses pembentukkan kunci rahasia dimulai dengan mendefinisikan sebuah akar primitif dari sebuah bilangan prima . Karena prima, maka bilangan yang relatif prima dengan adalah dimana order dari bilangan-bilangan ini membagi ɸ(p). Pilih bilangan g dengan order ɸ(p) yang menurut definisi 2.1.6 disebut sebagai akar primitif dari sebuah bilangan prima , maka diperoleh barisan

g mod p, g^2 mod p, ... , g^p-1 mod pyang merupakan barisan bilangan bulat yang berbeda dan terdiri dari 1 sampai p-1.

5)