Soit A, B, C tel que A XOR B = C. La fonction inversive de XOR est également un XOR => A XOR C = B. Autrement dit, si on a
c (le message chiffré) et A (la clef), appliquer XOR permet de retrouver B (le message en clair). Problème nous n'avons pas la clef.
En revanche, nous savons qu'elle consiste en une répétition d'une chaine de 4 bytes
key = os.urandom(4) * 20et nous connaissons les 4 premiers caractères du message en clair: FCSC. La solution consiste alors à chercher une
combinaison de bytes tels que <combinaison_de_bytes> XOR <debut_du message_chiffre> = FCSC. La répétition 20 de
cette combinaison est notre key. L'utiliser pour déchiffrer le message.