Šifra Salsa20

  • Používá
    • Bitové sčítání (XOR)
    • 32b sčítání
    • Rotace s konstantní vzdáleností
  • Výstupem je 64B keystreamu

Quarter-Round (QR)

  • Na sloupce a řádky se poté provádějí sudé a liché rundy (quarter-round), celkově 20x
    ../Attachments/Pasted image 20230610171609.png

../Attachments/Pasted image 20230307154611.png

  • Liché rundy - aplikují se na sloupce

    • QR ( 0, 4, 8, 12 ) - sloupec 1
    • QR ( 5, 9, 13, 1 ) - sloupec 2
    • QR ( 10, 14, 2, 6 ) - sloupec 3
    • QR ( 15, 3, 7, 11 ) - sloupec 4
  • Sudé rundy - aplikují se na řádky

    • QR ( 0, 1, 2, 3 ) - řádek 1
    • QR ( 5, 6, 7, 4 ) - řádek 2
    • QR ( 10, 11, 8, 9 ) - řádek 3
    • QR ( 15, 12, 13, 14 ) - řádek 4
  • Zopakuje se 10x, dohromady tedy 20 rund

  • 2 po sobě jdoucí rundy tvoří dvourundy

  • ! Ke zkoušce

    • 32b políčka 4x4
    • Tabulka
    • ARX (Add-Rotate-Xor) = Sčítání modulo + Shift + Operace XOR
    • Lichá/sudá sloupce/řádky

Vytvořeno: 7. 8. 2024, 13:25
Poslední aktualizace: 7. 8. 2024, 13:25