...

Aes 256 Tugas Keamanan Jaringan - Rijndael Aes Block Encryption Demo

by muhammad-jundi-assadulloh

on

Report

Category:

Documents

Download: 0

Comment: 0

247

views

Comments

Description

Download Aes 256 Tugas Keamanan Jaringan - Rijndael Aes Block Encryption Demo

Transcript

Advanced Encryption Standard (AES) 256 Abstrak Kegiatan menyimpan data dan mengirim data menggunakan layanan internet menuntut penggguna membangun dan merancang arsitektur jaringan keamanan yang baik. Data merupakan kegiatan yang penting dalam pemanfaatan teknologi dalam organisasi apapun. Keamanan data yang disimpan merupakan faktor penting bagi organisasi dalam menghadapi persaingan yang semakin lama semakin beresiko, dimana data proses kerja dan administrasi organisasi disimpan dan akan diolah menjadi informasi yang penting dan bersifat rahasia bagi perkembangan organisasi. Kebutuhan untuk bertahan dan terus berkembang sebuah organisasi yang memanfaatkan teknologi informasi harus menggunakan metode kriptografi penyandian data yaitu enkripsi terhadap informasi yang di kirimkan maupun data yang tersimpan. Perkembangan algoritma pun semakin ramai setelah HAS dianggap tidak layak, maka dikembangkan lah Algoritma AES dalam dunia pengkodean. Aes bekerja pada platform SLL. Algoritma AES mengamankan data yang tersimpan dalam perangkat penyimpanan data, sehingga tidak mudah hilang maupun di manfaatkan oleh orang-orang yng tidak bertanggung jawab. algoritma AES (Advanced Encryption Standard) atau Rijndael sebagai salah satu metode kriptografi. Algoritma ini diketahui sangat unggul dalam pengenkripsian dan pendekripsian data. AES digunakan dalam berbagai penyandian. Salah satunya adalah untuk penyandian sandi-lewat yang digunakan pada aplikasi pengompresian data. Pendahuluan Enkripsi ialah proses mengamankan suatu informasi dengan membuat informasi tersebut tidak dapat dibaca tanpa bantuan pengetahuan khusus. Dikarenakan enkripsi telah digunakan untuk mengamankan komunikasi di berbagai negara, hanya organisasi-organisasi tertentu dan individu yang memiliki kepentingan yang sangat mendesak akan kerahasiaan yang menggunakan enkripsi. Di pertengahan tahun 1970-an, enkripsi kuat dimanfaatkan untuk pengamanan oleh sekretariat agen pemerintah Amerika Serikat pada domain publik, dan saat ini enkripsi telah digunakan pada sistem secara luas, seperti Internet e-commerce, jaringan Telepon bergerak dan ATM pada bank. Enkripsi dapat digunakan untuk tujuan keamanan, tetapi teknik lain masih diperlukan untuk membuat komunikasi yang aman, terutama untuk memastikan integritas dan autentikasi dari sebuah pesan. Contohnya, Message Authentication Code (MAC) atau digital signature. Penggunaan yang lain yaitu untuk melindungi dari analisis jaringan komputer. Pembahasan DES dianggap sudah tidak aman lagi karena dengan perangkat keras khusus kuncinya bisa ditemukan dalam beberapa hari. Maka National Institute of Standards and Technology (NIST), sebagai agensi Departemen Perdagangan AS mengusulkan kepada Pemerintah Federal AS untuk sebuah standard kriptografi yang baru. NIST mengadakan sayembara terbuka untuk membuat standard algoritma kriptografi yang baru sebagai pengganti DES, dengan beberapa persyaratan tentang algoritma yang baru tersebut. Standard yang tepilih nantinya akan diberi nama Advanced Encryption Standard (AES) Ada 15 proposal algoritma yang telah diajukan, konfrensi umum pun dilakukan untuk menilai kelayakan algoritma tersebut. Setelah proses yang cukup lama pada bulan Agustus 1998, NIST memilih 5 finalis yang didasarkan pada aspek keamanan algoritma, kemangkusan (efficiency), fleksibilitas, dan kebutuhan memori (penting untuk embedded system). Finalis tersebut adalah: 1. Rijndael (dari Vincent Rijmen dan Joan Daemen – Belgia, 86 suara) 2. Serpent (dari Ross Anderson, Eli Biham, dan Lars Knudsen – Inggris, Israel, dan Norwegia, 59 suara). 3. Twofish (dari tim yang diketuai oleh Bruce Schneier – USA, 31 suara) 4. RC6 (dari Laboratorium RSA – USA, 23 suara) 5. MARS (dari IBM, 13 suara) Pada bulan Oktober 2000, NIST mengumumkan untuk memilih Rijndael (dibaca: Rhine-doll), dan pada bulan November 2001, Rijndael ditetapkan sebagai AES, dan diharapkan Rijndael menjadi standard kriptografi yang dominan paling sedikit selama 10 tahun. Panjang kunci yang dikenal adalah AES-128, AES-192, dan AES-256 Garis besar Algoritma Rijndael yang beroperasi pada blok 128-bit dengan kunci 128-bit adalah sebagai berikut (di luar proses pembangkitan round key): 1. AddRoundKey: melakukan XOR antara state awal (plainteks) dengan cipher key. Tahap ini disebut juga initial round. 2. Putaran sebanyak Nr – 1 kali. Proses yang dilakukan pada setiap putaran adalah : a. SubBytes: substitusi byte dengan menggunakan tabel substitusi (S-box). b. ShiftRows: pergeseran baris-baris array state secara wrapping. c. MixColumns: mengacak data di masing-masing kolom array state. d. AddRoundKey: melakukan XOR antara state sekarang round key. 3. Final round: proses untuk putaran terakhir: a. SubBytes b. ShiftRows c. AddRoundKey Transformasi Subtitusi Byte Dalam operasi ini, setiap byte yang akan dienkripsi disubtitusikan dengan nilai byte lain dengan menggunakan S-box. S-box dibuat dari multiplicative inverse dari angka yang diberikan dalam Rijndael’s finite field yang kemudian ditransformasikan dengan affine transformation : Hasilnya kemudian di-xor dengan 9910 atau 0x6316 atau 11000112. Operasi matriks dengan xor ini ekuivalen dengan persamaan: b’i = bi b(i+4)mod8 b(i+5)mod8 b(i+6)mod8 b(i+7)mod8 ci dengan b’, b, dan c adalah array 8 bit dan nilai c adalah 01100011. Proses tersebut menghasilkan masing-masing nilai dari elemen tabel S-box yang hasilnya sebagai berikut : Seperti yang telah diketahui sebelumnya, AES merupakan algoritma simetri, yang berarti tabel subtitusi yang dibutuhkan untuk mengenkripsi berbeda dengan untuk mendekripsi. Untuk acuan tersebut, digunakanlah tabel S-box inversi sebagai berikut Sebagai contoh, input yang akan dienkripsikan adalah 95 95 08 19 4f 6b 5c 6e c8 89 80 26 fc 75 4e 6c Dengan menggunakan S-box, hasil dari operasi ini adalah : 2a 2a 30 d4 84 7f 4a 9f e8 a7 cd f7 b0 9d 2f 50 Jika hasil tersebut ingin dikembalikan ke nilai semula sebelum operasi, nilai-nilainya dapat disubtitusikan dengan menggunakan tabel S-box inversi. Operasi transformasi subtitusi byte pada proses enkripsi dan dekripsi tidak dilakukan pada putaran pertama. Operasi ini hanya dilakukan pada putaran kedua hingga terakhir. Transformasi Pergeseran Baris Pada operasi ini, byte-byte pada setiap baris digeser secara memutar dengan pergeseran yang berbeda dari tiap-tiap baris. Setiap baris digeser dengan aturan tertentu untuk jenis panjang blok yang berbeda. Baris pertama blok untuk semua jenis panjang blok (128, 196, dan 256 bit) tidak digeser. Baris kedua untuk semua jenis panjang blok digeser 1 ke kiri. Pergeseran baris ketiga dan keempat untuk panjang blok 128 dan 196 bit berbeda dengan 256 bit. Pada panjang blok 128 dan 196 bit, baris ketiga digeser ke kiri sebanyak dua kali dan baris keempat digeser ke kiri sebanyak tiga kali. Pada panjang blok 256 bit, baris ketiga digeser ke kiri sebanyak tiga kali dan baris keempat digeser ke kiri sebanyak empat kali. Untuk lebih jelasnya, proses tersebut dapat dilihat sebagai berikut : Sebagai contoh, hasil operasi ini terhadap input yang nilainya adalah output dari hasil operasi subtitusi byte sebelumnya adalah sebagai berikut : 2a 2a 30 d4 7f 4a 9f 84 cd f7 e8 a7 50 b0 9d 2f Transformasi Percampuran Kolom Transformasi ini mengoperasikan blok pada masing masing kolomnya. Setiap kolom diperlakukan sebagai four-term polynomial dengan cara Galois Field (GF) (28) dan dimodulokan dengan x tetap a(x) [3], yaitu a(x) = {03}x3 + {01}x2 + {01}x + {02} Hal ini dapat dituliskan sebagai perkalian matriks sebagai berikut.: s'(x) = a(x) s(x)   dengan c adalah letak kolom, sehingga hasilnya : s’0,c = ({02}•s0,c) ({03}•s1,c) s’0,c = s0,c ({02}•s1,c) ({03}• s’0,c = s0,c s1,c ({02}•s2,c) ({03} s’0,c = ({03}•s0,c) s1,c s2,c Jika hasil perkalian memiliki lebih dari 8 bit, bit yang lebih tidak begitu saja dibuang. Hasil tersebut di dengan 1000110112 [5]. Sebagai contoh, perkalian 11001010 dengan 11 dengan GF(2 sebagai berikut : 11001010 11 -------------- * 11001010 11001010 ---------------- xor 101011110 100011011 ---------------- xor 1000101 Nilai 1000101 merupakan hasil dari perkalian tersebut. Misalnya, jika dalam transfomasi ini input yang dipakai adalah hasil dari operasi pergeseran baris sebelumnya, hasil yang diperoleh adalah sebagai berikut : 48 cd af ac c8 0c ab 1a 24 5e d8 74 6c b8 06 fa Transformasi ini dapat diilustrasikan sebagai berikut : Operasi transformasi ini tidak digunakan dalam putaran terakhir, baik untuk enkripsi maupun dekripsi. Transformasi Penambahan Kunci Dalam operasi transformasi ini, digunakanlah upakunci untuk masing-masing putaran yang berasal dari kunci utama dengan menggunakan jadwal kunci Rijndael (Rijndael’s key schedule upakunci tersebut sama dengan ukura diproses. Upakunci tersebut kemudian di blok input sehingga diperoleh hasilnya Sebagai contoh, jika inputnya adalah : a3 c5 08 08 78 a4 ff d3 00 ff 36 36 28 5f 01 02 dan diperoleh upa kunci 36 8a c0 f4 ed cf 76 a6 08 a3 b6 78 31 31 27 6e Maka, hasilnya adalah a6 34 1a 00 24 dd f1 0e 62 a8 73 cf 48 b9 5d 61 Putaran Jumlah putaran pengoperasian blok input untuk setiap macam panjang blok berbeda jumlah putaran  untuk proses enkripsi dan dekripsi tetap sama. Proses enkripsi dan dekripsi dapat digambarkan sebagai  berikut : Algoritma Rijndael mempunyai 3 parameter : 1. plaintext : array yang berukuran 16-byte, yang berisi data masukan. 2. ciphertext : array yang berukuran 16-byte, yang berisi hasil enkripsi. 3. key : array yang berukuran 16-byte, yang berisi kunci ciphering (disebut juga cipher key) AES 256 Aes 256 merupakan algoritma rijndael yang memiliki 14 putaran dengan tingkat kompeksitas 2 119. Untuk aes 128, dengan panjang kunci 128-bit, maka terdapat sebanyak 2 128 = 3,4 x 10 38 kemungkinan kunci. Jika komputer tercepat dapat mencoba 1 juta kunci setiap detik, maka akan dibutuhkan waktu 5,4 x 10 24 tahun untuk mencoba seluruh kunci. Jika tercepat yang dapat mencoba 1 juta kunci setiap milidetik, maka dibutuhkan waktu 5,4 x 10 18 tahun untuk mencoba seluruh kunci. Bagaimana Keamanan AES 256-bit  AES adalah FIPS (Federal Information Processing Standard) bersertifikat dan ada saat ini tidak  diketahui   non­brute   force   serangan   langsung   terhadap   AES   (kecuali   beberapa  saluran   sisi   waktu  serangan pada pengolahan AES yang tidak layak lingkungan melalui jaringan dan ini tidak berlaku bagi  SSL pada umumnya). Pada kenyataannya, AES keamanan cukup kuat untuk mendapatkan sertifikasi  untuk digunakan oleh pemerintah AS untuk informasi rahasia.  Desain dan kekuatan dari semua panjang kunci algoritma AES (yaitu, 128, 192 dan 256) yang  cukup   untuk   melindungi   informasi   rahasia   ke   tingkat   RAHASIA.  TOP   SECRET  informasi   akan  memerlukan   penggunaan   baik   192  atau   256  panjang   kunci.   Pelaksanaan   AES   dalam   produk   yang  ditujukan   untuk   melindungi   sistem   keamanan   nasional   dan   atau   informasi   harus   ditinjau   dan  disertifikasi  oleh NSA sebelum akuisisi dan menggunakan mereka. "(Lynn Hathaway, Juni 2003  ­  referensi.) Jika Anda memiliki pilihan metode enkripsi, 256­bit AES adalah metode untuk memilih.   Alternatif untuk AES    Ada banyak alternatif cipher yang dapat digunakan dalam SSL dan TLS. The "berikutnya yang  paling aman" sandi yang umum digunakan adalah "128­bit RC4". Ini adalah sandi yang sangat cepat,  tetapi tunduk pada berbagai jenis serangan. Sebagai contoh, pada akal WEP enkripsi nirkabel sangat  miskin   adalah   cara   yang   menggunakan   enkripsi   RC4.   Bahkan   WPA   keamanan   nirkabel   yang  menggunakan RC4 yang  menunjukkan tanda­tanda ketidak tepatan. Enkripsi   RC4   dirasakan   sangat   lemah   oleh   sebagian   besar   peneliti   keamanan   dan   tidak  direkomendasikan untuk digunakan. Namun demikian, masih "terbaik kedua" untuk AES dalam daftar  umum digunakan cipher dan banyak digunakan.  Bagaimana penyandian dipilih dalam sesi SSL atau TLS  Secara   umum,   ketika   sebuah   klien   SSL,   seperti   program   email   atau   web   browser,  menghubungkan ke server dan ingin menggunakan SSL atau TLS, client server mengirimkan daftar  enkripsi cipher yang mendukung. Server kemudian berjalan melalui daftar , dalam rangka, dan memilih  pertandingan pertama itu juga mendukung. Biasanya, klien daftar perintah dengan metode yang paling  aman pertama, sehingga metode yang paling aman yang didukung oleh para klien dan server yang  dipilih. Kadang­kadang, memerintahkan klien daftar berdasar kriteria lain untuk membuat kompromi  antara keamanan dan kecepatan; hal ini dapat mengakibatkan sub­optimal sandi yang dipilih.  Paling modern dan email web server yang mendukung enkripsi SSL, seperti LuxSci.com 's  server, dukungan berbagai macam teknik enkripsi yang kuat sepanjang jalan sampai dengan 128­bit  RC4 dan  256­bit AES. Mereka menyediakan berbagai, bukan hanya satu benar­benar baik  metode,  sehingga pengguna yang telah tua atau rusak perangkat lunak masih dapat mengambil keuntungan dari  enkripsi,   meskipun   itu   lebih   lemah   dari   seharusnya.   Selain   itu,   sebagian   besar   perusahaan   yang  menyediakan   jasa   keamanan   tidak   mengijinkan   penggunaan   teknik   yang   dianggap   adalah   "terlalu  lemah"  dan   yang dapat dengan sangat mudah rusak (seperti yang lama   "nilai ekspor sandi"  yang  digunakan untuk berada di lazim digunakan). Jadi, jika Anda tersambung ke layanan yang memiliki  reputasi baik memberikan lebih dari SSL atau TLS, jenis enkripsi yang akan digunakan adalah hampir  pasti ditentukan oleh program (misalnya program email atau web browser).   Serangan pada AES • Serangan itu merupakan kunci yang terkait-serangan (yang berarti bahwa dua kunci memiliki hubungan tertentu, seperti bahwa mereka hanya berbeda oleh beberapa bit) pada putaran dengan pengurangan versi AES-256. Hal ini di 11 dari total 14 ronde di AES-256. • Serangan baru ini adalah kelemahan dalam jadwal kunci AES, tetapi sebagai Bruce telah mengatakan, kami telah mencurigai kelemahan dalam AES sejak tahun 2000. • Serangan tidak mempengaruhi AES-128 sama sekali. Ini bukan pertama kalinya kami melihat serangan terhadap cipher standar. Sebagai contoh, pemerintah AS telah sandi Cakalang 31 dari 32 putaran rusak pada tahun 1999 dan putaran terakhir itu masih terputus. . Sementara para kriptografer terkenal yang menyerang untuk hal yang lebih baik, bukan lebih buruk, ini tidak berarti bahwa AES-256 akan pernah mendapatkan sepenuhnya rusak. Penutup AES terbukti kebal menghadapi serangan konvensional (linear dan diferensial attack) yang menggunakan statistik untuk memecahkan sandi. Kesederhanaan AES memberikan keuntungan berupa kepercayaan bahwa AES tidak ditanami trapdoor. Namun, kesederhanaan struktur AES juga membuka kesempatan untuk mendapatkan persamaan aljabar AES yang selanjutnya akan diteliti apakah persamaan tersebut dapat dipecahkan. Bila persamaan AES dapat dipecahkan dengan sedikit pasangan plaintext / ciphertext, maka riwayat AES akan berakhir. AES didesain dengan sangat hati-hati dan baik sehingga setiap komponennya memiliki tugas yang jelas. AES memiliki sifat cipher yang diharapkan yaitu : tahan menghadapi analisis sandi yang diketahui, fleksibel digunakan dalam berbagai perangkat keras dan lunak, baik digunakan untuk fungsi hash karena tidak memiliki weak(semi weak) key, cocok untuk perangkat yang membutuhkan key agility yang cepat, dan cocok untuk stream cipher. Algoritma AES (Advanced Encryption Standard) atau Rijndael merupakan algoritma simetri yang sangat cocok dipakai untuk berbagai keperluan yang berkaitan dengan kriptografi saat ini. Algoritma ini banyak dipakai untuk keperluan penyandian. Salah satunya adalah untuk penyandian sandi-lewat untuk file kompresi. Algoritma ini tentu saja sangat sesuai dengan berbagai aplikasi kompresi, yang pada pembahasan di atas menggunakan kompresi zip, sehingga dapat digunakan di berbagai merk aplikasi kompresi. Daftar Pustaka http://webmail.informatika.org/~rinaldi/Matdis/2008-2009/Makalah2008/Makalah0809-090.pdf http://puslit2.petra.ac.id/ejournal/index.php/jte/article/viewFile/17452/17369 (jurnal elektro) http://csrc.nist.gov/publications/fips/fips197/fips-197.pdf http://www.ittelkom.ac.id/library/index.php http://en.wikipedia.org/wiki/Advanced_Encryption_Standard_process http://www.aescrypt.com/aes_file_format.html http://www.informatika.org/~rinaldi/Kriptografi/2006-2007/Makalah1/Makalah1-055.pdf (kriptanalisis)
Fly UP