Un outil stégano de retro-gamer

Avec un peu d'entraînement peut-être ?

Ce défi est tiré de c0d1ngUP 2022

Votre équipe de retro-gamers et vous (oui, vous avez été pris dans l'équipe...) avez mis au point un mode de communication astucieux, qui vous remémore vos jeux favoris.

Pour envoyer un message, on commence par associer certains caractères à un nombre entre 1 et 27 :

A B C ... H I ... X Y Z
1 2 3 ... 8 9 ... 24 25 26 27

Puis, pour un message donné, par exemple HI, on calcule la liste de nombres associés avec le tableau précédent : 8, 9. Ces nombres sont ensuite écrits en binaire sur 5 bits : 01000, 01001.

On dispose par ailleurs d'un tableau qui associe chaque position binaire à une musique de jeu :

  • 00001 : Tetris
  • 00010 : Bubble Bobble
  • 00100 : Super Mario Kart
  • 01000 : Pacmania
  • 10000 : Super Mario Bros

Ainsi, à 01000, on fait correspondre Pacmania. Et à 01001, on fait correspondre Pacmania + Tetris.

On dispose ainsi d'un moyen d'encoder une chaîne de caractères par une séquence de combinaisons de musiques. Ces combinaisons sont enchaînées toutes les 1/2 secondes.

Pour envoyer le message HI, on passe donc une 1/2 seconde de Pacmania suivie d'une 1/2 seconde de Pacmania + Tetris.

Pendant que le message est émis, les 5 musiques défilent de manière synchrone. Mais pour une 1/2 seconde donnée, on n'entend que certaines d'entre elles. Pour le message HI, la première 1/2 seconde du message correspondra donc à la première 1/2 seconde de Pacmania, et la deuxième 1/2 seconde du message correspondra au mélange de la deuxième 1/2 seconde de Pacmania avec la deuxième 1/2 seconde de Tetris.

Comme précédemment, le mélange des musiques se fait en calculant la moyenne arithmétique des échantillons qui le composent.

Les musiques utilisées durent 15 secondes. On peut donc envoyer un message de 30 caractères. Vous pouvez télécharger une archive contenant les 5 échantillons sonores : archive des 5 musiques

À terme, votre équipe et vous comptez bien pouvoir décoder les messages, juste en écoutant le son. Mais pour le moment, c'est un peu difficile.

D'ailleurs, vous avez beau vous concentrer, impossible de comprendre le contenu du message que vous venez juste de recevoir : Télécharger le message reçu.

Vous vous entraînerez plus tard ; en attendant, il faut absolument que vous décodiez le message reçu, qui vous permettra de valider le défi.

Type de retour
une chaîne de caractère
Entrées du problème
Pas de données d'entrée
Vous devez être connecté.e pour proposer une réponse au défi
Vous devez être connecté.e pour accéder aux forums.