Description
You are asked whether it is possible to protect against a fault attack on an RSA-CRT by correcting any errors.
To test your method of error correction, you are given a sample of erroneous keys to correct, generated by faulty hardware.
You are asked to make these corrections without knowing the associated public keys.
Please note that the public exponent is always less than 100 bits, that p
and q
are of similar size and that the usual notations are used: p
, q
, dp
, dq
, iq
.
Among the files supplied, output.txt
contains 15 erroneous RSA keys that you need to correct.
To check that a key has been correctly corrected, we also supply the Python script broken-rsa-keys.py
, which compares the sha256 of the key after correction with a value present in output.txt
.
When all checks have been passed, the flag is derived and displayed.
Files
-
broken-rsa-keys.py
513 B – ef565842649fe46db2c885f4e2530a5074373baaf7fb4f1f9c520e59aae487b2 -
output.txt
25.16 KiB – 3c7394dd321be3341212bfffaeab344faf8fd1fb913125003d042c997b9ed1ec
Author
Flag
Submit your solution
You can submit your writeup for this challenge. Read the FAQ to learn how to proceed.
You need to be logged in to submit a writeup.