Les challenges cryptopals sont une série de challenges permettant d’apprendre la cryptographie par la pratique.

Ils introduisent petit à petit différentes notions afin de pouvoir partir de presque zéro (il faut néanmoins avoir quelques notions basiques de mathématiques et bien sûr de programmation).
Ce peut être également un bon moyen d’en profiter pour apprendre un nouveau langage de programmation.

J’ai toujours été intéressé par la cryptographie mais les cours ou les différentes ressources que j’ai suivis jusqu’à maintenant ne m’ont pas permis de rentrer dans le sujet, l’approche me paraissant trop théorique.
Les challenges étant présentés comme centrés sur la cryptographie actuellement en production et ses attaques, je vais tenter de les réaliser. Au passage j’en profiterai également pour apprendre le langage Rust sur lequel je lorgne depuis quelques mois. Cela me fait une bonne occasion de m’y mettre :smiley:

Après chaque challenge que j’aurai réalisé je créerai un nouveau billet pour décrire mon impression et ce que je pense avoir appris. J’essaierai de ne donner aucun indice afin de vous permettre de réaliser également de votre côté les challenges. Je mettrai également un lien vers le code source de ma solution.

Les challenges sont découpés en huit ensembles, chacun regroupant à son tour huit challenges.
À l’heure actuelle seuls les sept premiers ensembles sont disponibles, mais le huitième devrait sans doute être disponible avant que je termine les sept précédents !

Le tout premier challenge propose de convertir une chaîne hexadécimale en base64, ce qui devrait être assez facile et permettre de s’échauffer doucement.

À suivre…