Peisme.com

Semaine 17 - Advent of Code 2016, Day 5

Vous êtes devant une porte qui semble avoir été conçue par des ingénieurs ayant acquis leur savoir en écoutant des films des hackers.

Le mot de passe de 8 caractères est généré un caractère à la fois à partir du hash MD5 d'un code de porte suivi d'un index numérique incrémental. Un hash désigne le prochain caractère du mot de passe lorsque sa représentation hexadécimale débute par 5 zéros consécutifs. Dans ce cas, le 6e caractère du hash est le prochain caractère du mot de passe.

Par exemple, pour le code "abc" :

À partir d'un code de porte donné, quel est le mot de passe ?

Lorsque la porte s'ouvre, une seconde porte se présente à vous. Celle-ci utilise un meilleur mécanisme de sécurité. Quel système sérieux encrypterait un mot de passe dans le bon ordre ?

Plutôt que de générer le mot de passe de gauche à droite, le hash indique aussi la position où le caractère se positionnera dans le mot de passe. Il faut encore chercher les hash commençant par cinq zéros mais le 6e caractère représente la position où insérer le caractère se trouvant à la septième position. Si un caractère avait déjà été découvert pour cette position, il ne faut pas le remplacer.

En utilisant cette méthode améliorée, quel est le nouveau mot de passe ?