Per recuperare la chiave privata per un algoritmo di crittografia è un attacco all'algoritmo, dal momento che conoscere la chiave privata consente di decodificare tutto ciò che è stato crittografato con la chiave, che sconfigge la proprietà di riservatezza della crittografia.
Si presume sempre che l'algoritmo sia noto in quanto spesso è di dominio pubblico. Per gli algoritmi a chiave pubblica, anche la chiave pubblica è considerata di dominio pubblico, come indica il nome. Per recuperare la chiave privata conoscendo un testo in chiaro e il relativo testo cifrato, o anche molte coppie (testo in chiaro, testo cifrato), si chiama noto- attacco al testo normale . La sottocartella in cui l'autore dell'attacco può inviare molti testi in chiaro per la crittografia e ottenere i corrispondenti valori cifrati è denominata attacco selected-plaintext .
Se un algoritmo di crittografia è vulnerabile a un simile attacco, viene considerato profondamente danneggiato. Qualsiasi algoritmo di crittografia considerato sicuro per l'uso non deve avere alcun attacco che sia significativamente migliore della forza bruta. La forza bruta è ovviamente possibile in teoria, ma non nella pratica: per qualsiasi algoritmo ragionevole, ci vorrebbe più tempo rispetto all'età presente dell'universo usando tutta la potenza di calcolo ora disponibile all'umanità per trovare la chiave con la forza bruta.
Pertanto, supponendo che l'algoritmo non sia completamente infranto, non può esistere uno strumento pratico per trovare la chiave privata data l'algoritmo, la chiave pubblica e qualsiasi numero di coppie (testo in chiaro, testo cifrato).