Description
Imaginez c’est la rentrée 1996 et une équipe de Bellcore a annoncé une
attaque permettant de casser les clefs RSA. Pour casser une clef RSA (n, e, d),
ils ont besoin d’un couple (s, s') où s = m^d mod n est la signature d’un
message m et s’ est une signature du même message dont le calcul a été
perturbé. À partir de cette annonce, Lenstra a imaginé une attaque similaire
nécessitant uniquement la connaissance de (m, s').
Toutefois ces attaques ne fonctionnent que si l’évaluation de la signature est accélérée en utilisant le théorème des restes chinois.
Est-ce qu’en se passant du théorème des restes chinois on se prémunit de toute attaque nécessitant seulement la connaissance d’un message et d’une signature erronée ?
La documentation de la machine virtuelle est disponible sur cette page.
Fichiers
- docker-compose.yml
-
ceci-n-est-pas-une-bellcore.py
2.24 KiB – 26d59c8a80f50daca0238387cd943de41840f2b0fb4b2d294567369ff87bd725 -
RSA_sign.asm
1.39 KiB – a40a13f20b3b9b810037ea47c0cf3de33d2d095ec2374bc1c2e0a646a490c89a -
assembly.py
20.84 KiB – db186ab7dfb5f5e7f4790f1afc951deda349a8a9565a57b6328da2ba89965525 -
crypto_accelerator.py
5.25 KiB – 1ebb35bacb5781a66565509022235f9a1e47f37273b1d35515af58523b632458 -
machine.py
20.20 KiB – 0d0792ae42774cc0252136201d247d93a8ccc77f66bc11a33269ed5ba530db42 -
machine_faulted.py
499 B – 69a8ec68c3b8c02fd84c56de685ef407c63e5d0c7759d6e2bfb729930f793b30
Auteur
Instructions
- Pour commencer, téléchargez le fichier docker-compose.yml :
curl https://hackropole.fr/challenges/fcsc2026-hardware-ceci-n-est-pas-une-bellcore/docker-compose.public.yml -o docker-compose.yml - Lancez l'épreuve en exécutant dans le même dossier :
docker compose up - Dans un second terminal, accédez à l'épreuve via Netcat avec :
nc localhost 4000
Si vous rencontrez des problèmes, veuillez consulter la FAQ.
Flag
Soumettez votre solution
Vous pouvez envoyer votre solution rédigée pour cette épreuve. La FAQ contient la marche à suivre.
Vous avez besoin d'être identifié(e) pour soumettre une solution.
Solutions
Il n'y a pas encore de solutions pour cette épreuve, mais vous pouvez soumettre la vôtre après avoir trouvé le flag.