Todas las implementaciones de ransomware son diferentes, pero en su mayor parte, las variantes particularmente estúpidas que hicieron cosas como usar una clave codificada, o usar métodos de generación de claves fácilmente adivinables o reproducibles han sido eliminadas y reemplazadas por variantes mucho más fuertes.
Para Wannacry específicamente, cada infección crea un nuevo par de llaves RSA en la máquina que se está infectando. La clave privada de este par se encripta con una clave pública incluida en el malware, que forma parte de un par de llaves propiedad del autor de wannacry.
La nueva clave pública específica de infección se usa para cifrar las claves AES, que se generan utilizando un CSPRNG, y se genera una nueva clave AES para cada archivo cifrado.
Presumiblemente, una vez que pague el rescate, los autores del malware utilizarán su clave privada (la otra mitad del par de llaves con la clave pública codificada en el malware) para descifrar su clave privada, que la herramienta de descifrado puede usar Para descifrar las claves AES, ya su vez los archivos.