Twofish: Perbedaan antara revisi

Konten dihapus Konten ditambahkan
Darkicebot (bicara | kontrib)
k bot Menambah: cs, de, en, es, fi, fr, it, ja, nl, pl, pt, ru, simple, sv, tg
Jazle (bicara | kontrib)
melengkapi + merapikan
Baris 1:
'''Twofish''' merupakan algoritma [[kriptografi]] yang beroperasi dalam mode blockblok 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 [[AES|Advanced Encryption Standard]] (AES)., Tujuannamun darialgoritma perancanganini Twofishtidak yangterpilih selaras dengansebagai kriteriabasis NIST untuk AES adalah sebagai berikut:standarisasi.
{{rapikan|topik=teknologi informasi}}
Twofish merupakan algoritma yang beroperasi dalam mode block. 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). Tujuan dari perancangan Twofish yang selaras dengan kriteria NIST untuk AES adalah sebagai berikut:
 
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.
# Merupakan cipher blok dengan kunci simetri dan blok sepanjang 128 bit.
# Panjang kunci yang digunakan adalah 128 bit, 192 bit. Dan 256 bit.
# Tidak mempunyai kunci lemah.
# Efisiensi alogoritma, baik pada Intel Pentium Pro dan perangkat lunak lainnya dan platform perangkat keras.
# Rancangan yang fleksibel. Rancangan yang fleksibel ini dapat diartikan misalnya dapat menerima panjang kunci tambahan, dapat diterapkan pada platform dan aplikasi yang sangat variatif, serta cocok untuk cipher aliran, fungsi hash, dan MAC.
# Rancangan yang sederhana agar memudahkan proses analisis dan implementasi algoritma.
 
== Rujukan ==
* {{ cite paper
| author=Bruce Schneier, John Kelsey, Doug Whiting, David Wagner, Chris Hall, Niels Ferguson
| title=The Twofish Encryption Algorithm
| date=1998-06-15
| url=http://www.schneier.com/paper-twofish-paper.html
| format=[[PDF]]/[[PostScript]]
| accessdate=2007-03-04 }}
* {{ cite book
| author = Bruce Schneier, John Kelsey, Doug Whiting, David Wagner, Chris Hall, Niels Ferguson
| title = The Twofish Encryption Algorithm: A 128-Bit Block Cipher
| publisher = [[John Wiley & Sons]]
| date = 1999-03-22
| location = [[New York City]]
| isbn = 0-471-35381-7 }}
 
== Lihat pula ==
Selain kriteria-kriteria yang telah disebutkan di atas, pada Twofish ditambahkan kriteria performansi sebagai berikut:
* [[Blowfish]]
* [[AES|Advanced Encryption Standard]]
* [[DES|Data Encryption Standard]]
 
[[Kategori:Algoritma kriptografi]]
 
# Menerima kunci dengan panjang berapapun hingga 256 bit
# Mengenkripsikan data dalam waktu kurang dari 500 clock cycles per blok pada Intel Pentium, Pentium # Pro, dan Pentium II, untuk versi algoritma yang teroptimasi sepenuhnya.
# Mampu untuk membentuk sebuah kunci 128 bit (untuk kecepatan enkripsi yang optimal) dalam waktu yang kurang dari waktu yang dibutuhkan untuk mengenkripsikan 32 blok pada Pentium, Pentium Pro, dan Pentium II.
# Tidak menggunakan operasi-operasi yang membuat Twofish tidak efisien pada mikroprosesor selain 32 bit, mikroprosesor 8 bit, dan mikroprosesor 16 bit. Twofish juga tidak menggunakan operasi-operasi yang dapat mengurangi efisiensinya pada mikroprosesor 64 bit.
 
[http://belajarsandi.blogspot.com/2008/11/algoritma-twofish.html]
 
[[cs:Twofish]]