Chiffre de César — Décalage alphabétique

Classique CTF

Principe

Chaque lettre est décalée d'un nombre fixe de positions dans l'alphabet (clé de 1 à 25). ROT13 est un César de 13. Trivial à casser : seulement 25 clés possibles.

Chiffrement/déchiffrement

# Décalage de 3 : A->D, B->E, ...
'HELLO' (clé 3) -> 'KHOOR'

# Brute force des 25 décalages
for i in $(seq 1 25); do echo "KHOOR" | tr \
  "A-Z" "$(echo {A..Z} | tr -d ' ' | cut ...)"; done

python3: ''.join(chr((ord(c)-65-3)%26+65) for c in 'KHOOR')

Cryptanalyse

Brute force des 25 clés, ou analyse de fréquence (la lettre la plus fréquente correspond souvent à E en français/anglais). CyberChef "ROT13 Brute Force" déroule tout instantanément.