Kleptographic (algorithmic) backdoors in~the~RSA~key~generator
Prikladnaâ diskretnaâ matematika, no. 1 (2022), pp. 14-34

Voir la notice de l'article provenant de la source Math-Net.Ru

A cryptographic (algorithmic) backdoor is the ability of the backdoor key owner to gain an unauthorized access to user's secret information embedded in the cryptoalgorithm. There are two independent classifications of backdoors: by the level of cryptographic strength (weak, symmetric, asymmetric backdoor) and by the method of implementing undeclared capabilities (based on covert channel or on implicit weakening of the cryptoalgorithm). We present examples of each type of backdoor and discuss a method for constructing an asymmetric backdoor based on an implicit weakening of the algorithm in the RSA key generator. Let it be required to generate a public module of the RSA key $n=pq$, $|n|=L$. We will generate such prime numbers that $|p|=|q|={L}/{2}$. Let $D$ be the backdoor parameter, $|D|=K$; $ID$ is the identifier of the generator instance; $i$ is the key generation counter; $\psi_s(a, ID, i)$ is a one-way (trapdoor) function with the trapdoor $s$ on the first argument. Let $(a, D)=1$ and $$r'(a, D, r_0)= \begin{cases} \min\{r:r\geq r_0; (rD+a) \text{ is prime}\}, \text{if } r{} 2^{{L}/{2}-K}\text{ and }rD+a{}2^{{L}/{2}};\\ 0, \text{otherwise.} \end{cases}$$ Let's choose the function $R(x, y, z, i)$ and define $r_{ID}^{(i)}(a, D)=r'(a, D, R(a, D, ID, i))$. For any random $a_p\in\mathbb{Z}_D^*$ and $r'_0\in\mathbb{Z}$, $({2^{{L}/{2}-1}})/{D}$, the following values are uniquely determined: \begin{gather*} p = r_{ID}^{(i)}(a_p, D)D + a_p,\\ q = r'(\psi_s(a_p, ID, i) a_p^{-1}\bmod D,D,r'_0) D + \psi_s(a_p, ID, i) a_p^{-1}\bmod D. \end{gather*} At the same time, if $r_{ID}^{(i)}(\cdot)\neq 0$ and $r'(\cdot)\neq 0$, then the numbers $p$ and $q$ are prime, $|p|=|q|={L}/{2}$, $|n|=|pq|\in\{L-1, L\}$. If the numbers $p$ and $q$ are generated in this way, then, provided that the secret $s$ is known, the public module $n=pq$ can be factorized in polynomial time of the key length. Really, $p = r_{ID}^{(i)}(\psi_s^{-1}(n\bmod D, ID, i), D) D + \psi_s^{-1}(n\bmod D, ID, i)$. This approach allows to develop a cryptographically strong key generator, even if the adversary knows the methods used and has access to the source code of the key generator. This allows us to use a backdoor generator even in open source systems. Cryptographic strength depends on the choice of algorithm parameters: in particular, on the level of cryptographic strength of the function $\psi_s(a, ID, i)$.
Mots-clés : RSA
Keywords: kleptography, algorithmic backdoor, trapdoor, kleptographic backdoor, backdoor.
@article{PDM_2022_1_a1,
     author = {A. V. Markelova},
     title = {Kleptographic (algorithmic) backdoors {in~the~RSA~key~generator}},
     journal = {Prikladna\^a diskretna\^a matematika},
     pages = {14--34},
     publisher = {mathdoc},
     number = {1},
     year = {2022},
     language = {ru},
     url = {http://geodesic.mathdoc.fr/item/PDM_2022_1_a1/}
}
TY  - JOUR
AU  - A. V. Markelova
TI  - Kleptographic (algorithmic) backdoors in~the~RSA~key~generator
JO  - Prikladnaâ diskretnaâ matematika
PY  - 2022
SP  - 14
EP  - 34
IS  - 1
PB  - mathdoc
UR  - http://geodesic.mathdoc.fr/item/PDM_2022_1_a1/
LA  - ru
ID  - PDM_2022_1_a1
ER  - 
%0 Journal Article
%A A. V. Markelova
%T Kleptographic (algorithmic) backdoors in~the~RSA~key~generator
%J Prikladnaâ diskretnaâ matematika
%D 2022
%P 14-34
%N 1
%I mathdoc
%U http://geodesic.mathdoc.fr/item/PDM_2022_1_a1/
%G ru
%F PDM_2022_1_a1
A. V. Markelova. Kleptographic (algorithmic) backdoors in~the~RSA~key~generator. Prikladnaâ diskretnaâ matematika, no. 1 (2022), pp. 14-34. http://geodesic.mathdoc.fr/item/PDM_2022_1_a1/