Enkripsi RC5: Perbedaan antara revisi

Konten dihapus Konten ditambahkan
InternetArchiveBot (bicara | kontrib)
Rescuing 0 sources and tagging 1 as dead.) #IABot (v2.0.8
Wagino Bot (bicara | kontrib)
k Referensi: Bot: Merapikan artikel, added uncategorised tag
 
(4 revisi perantara oleh 3 pengguna tidak ditampilkan)
Baris 1:
{{Dead end|date=Februari 2023}}
{{Orphan|date=Februari 2023}}
 
Dalam kriptografi, RC5 adalah algoritma cipher blok yang terkenal karena sederhana. Dirancang oleh Ronald Rivest pada tahun 1994,<ref>Rivest, R. L. (1994). <a href='http://people.csail.mit.edu/rivest/Rivest-rc5rev.pdf'>The{{Pranala mati|date=Maret 2021 |bot=InternetArchiveBot |fix-attempted=yes }} RC5 Encryption Algorithm</a> Proceedings of the Second International Workshop on Fast Software Encryption (FSE) 1994e. pp. 86–96.</ref> RC adalah singkatan dari "Rivest Cipher", atau sebagai alternatif, "Ron's Code".Sejak dipublikasikan, RC5 menarik perhatian banyak para ahli di dalam komunitas kriptographi dalam upaya memberikan akses keamanan secara akurat.
 
Baris 24 ⟶ 27:
== Algoritme ==
 
Enkripsi dan dekripsi RC5 memperluas kunci secara acak menjadi 2 (r + 1), kata yang akan digunakan secara berurutan (dan hanya masing-masing satu kali) selama proses enkripsi dan dekripsi. <ref name="Ronald L Rivest 1997">Ronald L Rivest(1997), The RC5 Encryption Algorithm,MIT Laboratory for Computer Science </ref>
 
----
Baris 36 ⟶ 39:
== Ekspansi kunci ==
Algoritme ekspansi kunci diilustrasikan seperti di bawah ini
Mengikuti skema dalam The RC5 Encryption Algorithm.<ref> name="Ronald L Rivest( 1997), The RC5 Encryption Algorithm,MIT Laboratory for Computer Science<"/ref>
 
* w - Panjang kata dalam bit, biasanya 16, 32 atau 64. Enkripsi dilakukan dalam blok 2 kata.
Baris 50 ⟶ 53:
* Qw - Konstanta sulap kedua, didefinisikan sebagai {\ displaystyle Odd ((\ phi -1) * 2 ^ {w})} Odd ((\ phi - 1) * 2 ^ w), di mana Odd adalah bilangan bulat ganjil terdekat dari input yang diberikan, di mana {\ displaystyle \ phi} \ phi adalah rasio emas, dan w didefinisikan di atas. Untuk nilai umum w, nilai terkait Qw diberikan di sini dalam heksadesimal: w = 16: 0x9E37, w = 32: 0x9E3779B9, w = 64: 0x9E3779B97F4A7C15
 
<sourcesyntaxhighlight lang="Python">
# Break K into words
# u = w / 8
Baris 74 ⟶ 77:
 
# return S
</syntaxhighlight>
</source>
 
----
Baris 83 ⟶ 86:
A, B - Dua kata yang menyusun blok plaintext untuk dienkripsi.
Contoh enkripsi dengan bahasa pemrograman python:
<sourcesyntaxhighlight lang="Python">
A = A + S[0]
B = B + S[1]
Baris 91 ⟶ 94:
 
return A, B
</syntaxhighlight>
</source>
----
 
Baris 98 ⟶ 101:
Dekripsi adalah kebalikan dari proses enkripsi yaitu proses konversi data yang sudah dienkripsi ( ciphertext ) kembali menjadi data aslinya ( Original Plaintext ) sehingga dapat dibaca/ dimengerti kembali.
 
<sourcesyntaxhighlight lang="Python">
for i = r down to 1 do:
B = ((B - S[2 * i + 1]) >>> A) ^ A
Baris 106 ⟶ 109:
 
return A, B
</syntaxhighlight>
</source>
----
 
Baris 112 ⟶ 115:
 
<references />
 
{{Uncategorized|date=Desember 2023}}