Récupérer/déchiffrer la clé de produit Windows 7 depuis Linux

J’ai accidentellement déconnecté mon disque dur alors qu’il était encore en fonctionnement et corrompu mon installation Windows 7 ; je suis maintenant complètement incapable de démarrer sous Windows. J’ai essayé tout pour essayer de réparer l’installation : Windows Startup Repair, chkdsk /r, SFC /scannow, bootrec /rebuildbcd, etc. et rien n’a fonctionné. Je veux juste effectuer une nouvelle installation, mais mon problème est que je n’ai ma clé de produit Windows notée nulle part, et je suis incapable d’utiliser des scripts ou utilitaires pour la récupérer depuis le registre car je ne peux pas démarrer sous Windows.

Les clés de produit Windows 7 sont stockées, chiffrées, dans la valeur « DigitalProductId » de la clé de registre HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion. J’ai pu monter la partition Windows corrompue en lecture seule depuis un live CD Ubuntu et copier la ruche de registre Windows\System32\config\SOFTWARE, qui contient la clé et la valeur en question, sur une clé USB, mais charger cette ruche dans regedit sur une installation Windows fonctionnelle puis essayer d’utiliser des scripts ou utilitaires pour déchiffrer la valeur « DigitalProductId » chargée ne retourne que la clé de produit de l’installation Windows hôte, peu importe combien j’essaie. J’ai essayé de contacter le support Microsoft et ils n’ont pas été très utiles. Quelqu’un pourrait-il me guider davantage ? Peut-être s’il y a une manière différente de récupérer la clé de produit depuis Linux ?

Si quelqu’un plus familier avec le scripting/cryptographie était disposé à essayer de suivre le script de déchiffrement pour déchiffrer la clé de produit à la main, je pourrais vous envoyer par e-mail la valeur « DigitalProductId » exportée, la ruche de registre SOFTWARE et le script de déchiffrement.

Il y a un excellent outil disponible pour Linux appelé chntpw. Vous pouvez l’obtenir facilement sur Debian/Ubuntu via :

sudo apt install chntpw

Pour consulter le fichier de registre pertinent, montez le disque Windows et ouvrez-le comme ceci :

chntpw -e /path/to/windisk/Windows/System32/config/software

Maintenant, pour obtenir le DigitalProductId décodé, entrez cette commande :

dpi \Microsoft\Windows NT\CurrentVersion\DigitalProductId