share: true
aliases:
- ChaCha
- Šifra ChaCha
Šifra ChaCha
- Proudová šifra
- Cíl zvýšení rozptylu v jedné rundě při zachování nebo vylepšení výkonu (oproti Salsa20)
- Inicializace
- 128b konstanta
- 256b klíč
- 64b čítač
- 64b náhodná nonce
- uloženy do 4x4 matice 32b slov
- Počet operací u Salsa20 i ChaCha je stejný, ale ChaCha jinými operacemi zajistí větší rozptyl
- 2 z rotací jsou násobky 8 ( a ) - optimalizace na některých architekturách, včetně x86
- Liché rundy - aplikují se na sloupce
- QR ( 0, 4, 8, 12 ) - sloupec 1
- QR ( 1, 5, 9, 13 ) - sloupec 2
- QR ( 2, 6, 10, 14 ) - sloupec 3
- QR ( 3, 7, 11, 15 ) - sloupec 4
- Sudé rundy - aplikují se na diagonály
- QR ( 0, 5, 10, 15 ) - diagonála 1 (hlavní)
- QR ( 1, 6, 11, 12 ) - diagonála 2
- QR ( 2, 7, 8, 13 ) - diagonála 3
- QR ( 3, 4, 9, 14 ) - diagonála 4
Zajímavosti
- Je základem hashovací funkce BLAKE
- Google vybral ChaCha20 pro ověřování zpráv a šifrování používané v protokolu QUIC (HTTP/3) a v OpenSSH
- Nahrazuje AES v systémech, kde CPU nemá akceleraci AES (mobilní zařízení, ARM procesory)
Další materiály
Vytvořeno: 7. 8. 2024, 13:25
Poslední aktualizace: 7. 8. 2024, 13:25