Windows 7でペアリングされたデバイスのBluetooth リンクキーを掘り下げるにはどうすればよいですか?これは、私が使用しているBluetoothスタック(東芝)に依存するものですか、それともこれらをWindows 7に保存する一般的な場所はありますか?
注:通常、ペアリング中にユーザーが入力する6桁のコードについては話していません-ペアリングプロセス後に破棄されるため、価値がありません。つまり、デバイスはペアリング中にデバイスが交換し、その後すべてのBluetoothトラフィックを暗号化するために使用する128ビットのリンクキーです。
バックグラウンド:
ラップトップでWindows 7 / Ubuntuをデュアルブートします。両方のOSに電話をペアリングしたいと思います。デュアルブートコンピューターにはBluetoothアダプターが1つしかなく、したがってBluetoothアドレスが1つしかないため、2番目のペアリング(Windows)では、電話が以前のペアリング(Linux)を同じBluetoothアドレスに置き換えるだけなので、電話に2つのペアリングを行うことはできません。
Ubuntuフォーラムのスレッドは、私がしなければならないことを示しています。まずLinuxでペアリングし、次にWindowsでペアリングしてから、Linux側のリンクキーをネゴシエートされたWindowsに置き換えます。
Linux側のペアリングキーは/var/lib/Bluetooth/[BD_ADDR]/linkkeys
そこから見つけることができます-問題ありません。
ただし、Windows側ではキーが見つかりません。フォーラムの投稿によると、Windows側ではSYSTEM\ControlSet002\services\BTHPORT\Parameters\Keys\[BD_ADDR]
キーが存在するはずですが、そのレジストリキーは存在しますが、サブキーはありません。(ControlSet001の同様のレジストリパスにもサブキーがありませんでした。)
私に指示されたことの1つは、Sysinternals Process Monitorとのペアリング中にすべてのイベントをキャプチャすることです。これを行いましたが、データを巨大なXMLにエクスポートし、BD_ADDR(コロンの有無にかかわらず)でそれをgrepしても、キャプチャしたイベントから有用な情報を見つけることができませんでした。
Windows 7でペアリングされたデバイスのリンクキーを見つけるにはどうすればよいですか?