Comment puis-je déterrer la clé de liaison Bluetooth pour un appareil couplé dans Windows 7? Est-ce quelque chose qui dépend de la pile Bluetooth que j'utilise (Toshiba), ou existe-t-il un emplacement générique pour les stocker dans Windows 7?
Remarque: je ne parle pas du code à six chiffres habituellement tapé par l'utilisateur lors du couplage - cela ne vaut rien car il est rejeté après le processus de couplage. Ce que je veux dire, c'est la clé de liaison 128 bits que les appareils échangent pendant le couplage et utilisent ensuite pour crypter tout leur trafic Bluetooth.
Contexte:
Je doubleboot Windows 7 / Ubuntu sur mon ordinateur portable, et je voudrais que mon téléphone soit couplé aux deux systèmes d'exploitation. Étant donné que l'ordinateur à double démarrage n'a qu'un seul adaptateur Bluetooth et donc une seule adresse Bluetooth, je ne peux pas effectuer deux couplages avec le téléphone, car sur le deuxième couplage (Windows), le téléphone remplace simplement le couplage précédent (Linux) par la même adresse Bluetooth.
Un fil sur les forums Ubuntu m'a indiqué ce que je dois faire - coupler d'abord sous Linux, puis sous Windows, puis remplacer la clé de lien côté Linux par celle négociée par Windows.
Je peux trouver la clé d'appariement côté Linux à partir de /var/lib/Bluetooth/[BD_ADDR]/linkkeys
- aucun problème là-bas.
Cependant, côté Windows, je ne trouve pas la clé. Selon le poste de forum, sur le côté Windows , la clé doit être , SYSTEM\ControlSet002\services\BTHPORT\Parameters\Keys\[BD_ADDR]
mais alors que la clé de Registre ne existe, il n'a pas les sous - clés. (Et un chemin de registre similaire dans ControlSet001 n'avait pas non plus de sous-clés.)
Une chose qui m'a été demandée est de capturer tous les événements lors du couplage avec Sysinternals Process Monitor . Je l'ai fait, mais je n'ai pas pu trouver d'informations utiles sur les événements capturés, pas même en exportant les données vers un énorme XML et en le saluant avec les BD_ADDR (avec ou sans deux-points).
Alors, comment pourrais-je trouver la clé de lien pour un appareil couplé dans Windows 7?
Quelques informations de référence: Wikipedia: Bluetooth , Security Now: sécurité Bluetooth
la source
Les clés ne sont pas visibles par l'administrateur, vous devez ouvrir le registre en tant que compte système:
C'est pour Windows 7 sur un ThinkPad avec un adaptateur thinkpad bluetooth 4.0 mais peut fonctionner avec d'autres systèmes Windows
Téléchargez PsExec: http://technet.microsoft.com/en-us/sysinternals/bb897553.aspx
Déballez-le dans c: \ portable \ pstools \ open cmd cliquez sur démarrer, tapez cmd, appuyez sur entrée, à l'intérieur du type de fenêtre noir et blanc:
regedit s'ouvre, accédez à:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\BTHPORT\Parameters\Keys\
vous y trouverez l'adresse MAC de tous vos adaptateurs Bluetooth, et sous chaque adaptateur, se trouvent toutes les adresses MAC des appareils couplés avec leurs clés de liaison.
pour comprendre l'adresse MAC de votre adaptateur:
pour comprendre l'adresse mac de votre appareil (clavier / souris):
la source
J'ai eu exactement le même problème, j'ai donc trouvé ce message et je veux maintenant partager mon expérience. Si vous avez un smartphone Android, cette tâche pourrait être beaucoup plus facile, car l'association de la clé de liaison devrait être présente sur vos deux appareils.
L'outil le plus utile est l'ADB d'Android SDK.
Supposons que le téléphone ait une adresse XX ^ 6 et un PC - YY ^ 6
Ainsi, vous pouvez simplement choisir la clé de ce fichier et la placer dans un fichier similaire sur votre PC:
Cette méthode semble être plus simple car Linux et Android utilisent généralement la même pile Bluetooth Bluez.
Pourtant, si vous méprisez personnellement une telle technique, il existe un autre moyen d'obtenir la clé du registre Windows à condition que des pilotes Windows standard soient utilisés. J'ai reçu cette boîte de dialogue de message de sécurité, j'ai donc utilisé l'utilitaire linux natif "chntpw" qui permet de réinitialiser le mot de passe ou de modifier le fichier de registre Windows. Le fichier requis était "windows \ system32 \ config \ SYSTEM".
Ça y est:
Comme vous pouvez le voir, il s'agit exactement des mêmes chiffres que dans les fichiers ci-dessus. J'espère que cela aidera les générations futures.
la source
Pour référence, sur la pile Microsoft Bluetooth, les clés de liaison se trouvent à l'
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\BTHPORT\Parameters\Keys\aabbccddeeff
endroit où aabbccddeeff est votre adaptateur Bluetooth. Étant donné que l'adaptateur est déjà installé, cette clé doit exister.Dans cette clé, vous pouvez avoir plusieurs valeurs REG_BINARY, où le nom de la valeur est l'adresse MAC du périphérique couplé (sous la même forme - hexadécimal, minuscule, aucun séparateur) et la valeur est la clé de liaison (16 octets).
Pour récupérer les clés de liaison sous OS X, effectuez (dans OSX Terminal)
defaults read /private/var/root/Library/Preferences/blued.plist
. Dans LinkKeys, vous devez avoir une clé de liaison par adresse MAC d'un appareil couplé. Les clés sont codées en base64, faites-le donc:echo -n 'aabbcc...==' | base64 -d | hexdump -C
et saisissez cette clé dans votre registre Windows.la source
PsExec.exe -s -i regedit / E% cd% \ btkeys_export.txt "HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Services \ BTHPORT \ Parameters \ Keys"
la source