Luați în considerare următorul scenariu: Alice are o cheie secretă și o pereche de chei publice pentru RSA manual (notat $\text{sk}$ și $\text{pk}$ respectiv). Bob are o copie autentică a $\text{pk}$. Adversarul are o copie autentică a $\text{pk}$.
Acum, Bob vrea să-i trimită pe a lui $\text{PIN}$ lui Alice, care este un număr de patru cifre. El criptează după cum urmează: Mai întâi alege un nonce $N_0$ (un număr ales aleatoriu dintr-un domeniu foarte mare). Apoi trimite criptarea:
$c = N_0 \mathbin\| \operatorname{RSA}(\text{pk}, [\text{PIN}\mathbin\| N_0]) = N_0 \mathbin\| [\text{PIN} \mathbin\| N_0]^e \bmod N$ Unde $(e,N)$ este cheia publică RSA.
Altfel spus, el construiește noul mesaj $â\text{PIN} \mathbin\| N_0â$ (puteți presupune că el este capabil să se încorporeze $[\text{PIN}\mathbin\|N_0]$ ca număr în $\{1, 2, ⦠, N-1\}$) și criptează asta folosind RSA de carte de text. El trimite și numărul $N_0$ lui Alice âîn clarâ.
Arată un atac care permite adversarului să învețe $\text{PIN}$ folosind doar un atac cu urechea.
Doar că nu sunt sigur cum să încep cu această problemă. Înțeleg că manualul rsa creează textul cifrat cu $\operatorname{Enc}(e, m) = m^e\bmod N$, dar nu știu cum aș obține $\text{PIN}$ dacă nu pot modifica mesajele. Orice ajutor ar fi apreciat.
Am încercat să rezolv niște lucruri și am ajuns la o altă problemă. Deoarece PIN-ul are un număr relativ mic de posibilități, aș putea folosi doar un atac cu forță brută? Deoarece adversarul cunoaște textul cifrat, e, N0 și are acces la cheia publică, aș putea continua să încerc diferite PIN-uri corect?