ค้นหาคีย์การเชื่อมโยง Bluetooth ใน Windows 7 เพื่อจับคู่อุปกรณ์ในคอมพิวเตอร์ดูอัล


12

ฉันจะขุดคีย์บลูทู ธเชื่อมโยงสำหรับอุปกรณ์ที่จับคู่ใน Windows 7 ได้อย่างไร? นี่เป็นบางสิ่งที่ขึ้นอยู่กับสแต็กลูทู ธ ที่ฉันใช้ (โตชิบา) หรือมีที่เก็บของทั่วไปใน Windows 7 หรือไม่

หมายเหตุ: ฉันไม่ได้พูดถึงรหัสหกหลักที่ผู้ใช้พิมพ์ระหว่างการจับคู่ซึ่งไม่มีค่าเพราะมันถูกทิ้งหลังจากกระบวนการจับคู่ สิ่งที่ฉันหมายถึงคือคีย์ลิงค์ 128 บิตที่อุปกรณ์แลกเปลี่ยนระหว่างการจับคู่และใช้หลังจากนั้นเพื่อเข้ารหัสปริมาณการใช้งานบลูทู ธ ทั้งหมด

พื้นหลัง:

ฉันใช้ dualboot Windows 7 / Ubuntu บนแล็ปท็อปของฉันและฉันต้องการให้โทรศัพท์ของฉันจับคู่กับระบบปฏิบัติการทั้งสอง เนื่องจากคอมพิวเตอร์ dualbooting มีอะแดปเตอร์บลูทู ธ เพียงอันเดียวและมีที่อยู่บลูทู ธ เพียงอันเดียวฉันจึงไม่สามารถทำการจับคู่สองครั้งกับโทรศัพท์ได้เนื่องจากในการจับคู่ครั้งที่สอง (Windows) โทรศัพท์เพิ่งแทนที่การจับคู่ก่อนหน้า (Linux) ไปยังที่อยู่ Bluetooth เดียวกัน

เธรดบนฟอรัม Ubuntuชี้ให้ฉันเห็นสิ่งที่ฉันต้องทำ - จับคู่อันดับแรกบน Linux จากนั้นบน Windows จากนั้นแทนที่คีย์ลิงก์บนฝั่ง Linux ด้วย Windows ที่เจรจาต่อรอง

ฉันสามารถหาคีย์การจับคู่ด้าน Linux จาก/var/lib/Bluetooth/[BD_ADDR]/linkkeys- ไม่มีปัญหา

อย่างไรก็ตามในด้าน Windows ฉันไม่สามารถหากุญแจได้ ตามโพสต์ในฟอรัมฟอรัม Windows ควรจะมีคีย์SYSTEM\ControlSet002\services\BTHPORT\Parameters\Keys\[BD_ADDR]แต่ในขณะที่คีย์รีจิสทรีนั้นมีอยู่จะไม่มีคีย์ย่อย (และเส้นทางรีจิสทรีที่คล้ายกันใน ControlSet001 ไม่มีคีย์ย่อยใด ๆ ด้วย)

สิ่งหนึ่งที่ผมได้รับการสั่งให้ทำคือการจับภาพเหตุการณ์ที่เกิดขึ้นทั้งหมดในช่วงจับคู่กับSysinternals กระบวนการตรวจสอบ ฉันทำสิ่งนี้ แต่ฉันไม่สามารถหาข้อมูลที่เป็นประโยชน์ใด ๆ จากเหตุการณ์ที่จับได้แม้แต่การส่งออกข้อมูลไปยัง XML ขนาดใหญ่และ grepping ด้วย BD_ADDR (มีหรือไม่มีโคลอน)

ดังนั้นฉันจะหาคีย์ลิงค์สำหรับอุปกรณ์ที่จับคู่ใน Windows 7 ได้อย่างไร

ข้อมูลอ้างอิงบางส่วน: Wikipedia: Bluetooth , ความปลอดภัย Now: ความปลอดภัยของ Bluetooth

คำตอบ:


7

รีจิสตรีคีย์ที่คุณควรใช้คือ:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\BTHPORT\Parameters\Keys.

ในคอมพิวเตอร์ของฉันมันปฏิเสธที่จะให้ฉันเข้าถึงรหัสนี้ ฉันต้องเปลี่ยนเจ้าของเป็นผู้ดูแลระบบก่อนจึงจะเห็นคีย์ย่อย

หากคุณใช้สแตก Bluetooth ของโตชิบา Bluetooth จะมีการเก็บกุญแจไว้ที่อื่น หนึ่งสามารถค้นหาที่หรือเพียงกลับไปที่สแต็คของ Microsoft ในกรณีต่อมาคีย์ Bluetooth จะถูกเก็บไว้ในรีจิสทรีดังกล่าว

หัวข้อนี้อธิบายกระบวนการ:

  1. ถอนการติดตั้ง Toshiba Bluetooth (เพิ่ม / ลบโปรแกรม)
  2. รีบูต
  3. Windows ควรตรวจสอบอุปกรณ์บลูทู ธ "ใหม่" และติดตั้งไดรเวอร์ของตัวเอง

ข้อควรระวัง: สร้างจุดคืนค่าระบบก่อนและให้แน่ใจว่าคุณมีสื่อการติดตั้งสำหรับไดรเวอร์ Toshiba สำหรับการย้อนกลับ (ในกรณี) ทดสอบการทำงานของโทรศัพท์ที่จับคู่กันก่อนที่จะร้องไห้


ฉันเปลี่ยนเจ้าของเป็นผู้ดูแลระบบซึ่งทำให้ฉันสามารถเข้าถึงคีย์นั้นได้ แต่น่าเสียดายที่ไม่มีคีย์ย่อย
Ilari Kajaste

คุณทำอย่างนั้นในขณะที่จับคู่?
harrymc

ใช่ฉันมีและมีการจับคู่โทรศัพท์ (รวมทั้งสองอุปกรณ์) กับหน้าต่าง ฉันไม่ได้เชื่อมต่อกับพวกเขาในเวลานั้น - ฉันคิดว่าไม่เป็นไรเพราะจะต้องเก็บกุญแจไว้ในทุกกรณี
Ilari Kajaste

1
ฉันมั่นใจว่า Toshiba จะไม่ใช้รายการรีจิสตรีของ Microsoft คุณสามารถกลับไปที่ Microsoft stack ได้หรือไม่?
harrymc

1
เธรดนี้บอกว่า: 1. ถอนการติดตั้ง Toshiba Bluetooth (เพิ่ม / ลบโปรแกรม), 2. รีบูต, 3. Windows ควรตรวจสอบอุปกรณ์บลูทู ธ "ใหม่" และติดตั้งไดรเวอร์ของตัวเอง สร้างจุดคืนค่าระบบก่อนและให้แน่ใจว่าคุณมีสื่อการติดตั้งสำหรับไดรเวอร์ Toshiba (ในกรณี) หากวิธีนี้ใช้งานได้ให้ทดสอบการทำงานของโทรศัพท์ที่จับคู่ที่คุณใช้จริงๆ
harrymc

5

ผู้ดูแลระบบมองไม่เห็นกุญแจคุณควรเปิดรีจิสทรีเป็นบัญชีระบบ:

ใช้สำหรับ Windows 7 บน ThinkPad ที่มีอแด็ปเตอร์ thinkpad bluetooth 4.0 แต่อาจใช้งานได้กับระบบ windows อื่น ๆ

ดาวน์โหลด PsExec: http://technet.microsoft.com/en-us/sysinternals/bb897553.aspx

แตกไฟล์ลงใน c: \ portable \ pstools \ open cmd คลิกเริ่ม, พิมพ์ cmd, กด enter, ภายในหน้าต่างขาวดำประเภท:

c:\portable\pstools\psexec -s -i regedit

regedit เปิดขึ้นนำทางไปที่: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\BTHPORT\Parameters\Keys\

ที่นั่นคุณจะพบที่อยู่ MAC ของอะแดปเตอร์บลูทู ธ ทั้งหมดของคุณและภายใต้อะแดปเตอร์แต่ละตัวจะเป็นที่อยู่ MAC ของอุปกรณ์ที่จับคู่ทั้งหมดด้วยปุ่มลิงค์

เพื่อคำนวณที่อยู่ MAC ของอะแดปเตอร์ของคุณ:

bluetooth settings> Hardware > ThinkPad Bluetooth 4.0 > Properties > Advanced > Address

เพื่อกำหนดที่อยู่ mac ของอุปกรณ์ (แป้นพิมพ์ / เมาส์):

Control Panel > Hardware and Sound > Devices and Printers > right click your device > Properties > Bluetooth > Unique Identifier 

จาก @Cristian: ฉันใช้ methode ที่อธิบายโดย thezeroth บนเครื่องดูอัล Xubuntu 15.10 / Windows 8 ของฉันและมันใช้งานได้อย่างมีเสน่ห์ สิ่งเดียวคือใน Xubuntu คีย์การจับคู่ไม่ได้อยู่ในไฟล์ที่กล่าวถึง แต่ในไฟล์ชื่อ Info ภายในโฟลเดอร์ย่อยที่ตั้งชื่อตามตัวระบุที่ไม่ซ้ำกันคือเม้าส์ (logitech M535) นอกจากนั้นโซลูชั่นที่สมบูรณ์แบบ
fixer1234

3

ฉันมีปัญหาเดียวกันทั้งหมดดังนั้นฉันจึงพบโพสต์นี้และตอนนี้ต้องการแบ่งปันประสบการณ์ของฉัน หากคุณมีสมาร์ทโฟน Android ที่งานนั้นอาจจะง่ายกว่านี้มากเนื่องจากการจับคู่ linkkey ควรปรากฏบนอุปกรณ์ทั้งสองของคุณ

เครื่องมือที่มีประโยชน์ที่สุดคือ ADB จาก Android SDK

สมมติว่าโทรศัพท์มีที่อยู่ XX ^ 6 และพีซี - YY ^ 6

$ adb shell
~ # find|grep linkkeys
~ # ./data/misc/bluetoothd/XX:XX:XX:XX:XX:XX/linkkeys
~ # cat ./data/misc/bluetoothd/XX:XX:XX:XX:XX:XX/linkkeys
YY:YY:YY:YY:YY:YY 393FCA48F0DB57AA4D59F423E4EA60D5 5 -1
~ #

ดังนั้นคุณสามารถเลือกคีย์จากไฟล์นั้นและวางลงในไฟล์ที่คล้ายกันบนพีซีของคุณ:

pc $ sudo -s
pc # cat /var/lib/bluetooth/YY:YY:YY:YY:YY:YY/linkkeys
XX:XX:XX:XX:XX:XX 393FCA48F0DB57AA4D59F423E4EA60D5 5 0

วิธีนี้ดูเหมือนจะง่ายที่สุดเนื่องจาก linux และ android มักจะใช้บลูทู ธ บลูทู ธ เดียวกัน

ยังคงถ้าคุณเองดูถูกเทคนิคดังกล่าวมีวิธีอื่นในการรับกุญแจจากรีจิสทรีหน้าต่างให้ไดรเวอร์ windows มาตรฐานจะใช้ ฉันได้รับกล่องโต้ตอบข้อความความปลอดภัยดังนั้นฉันจึงใช้ "chntpw" native linux ซึ่งทำให้สามารถรีเซ็ตรหัสผ่านหรือแก้ไขไฟล์รีจิสตรีของ windows ได้ ไฟล์ที่ร้องขอคือ "windows \ system32 \ config \ SYSTEM"

นี่มันไป:

$ chntpw -e SYSTEM
blah-blah-blah
> cd ControlSet001\services\BTHPORT\Parameters\Keys\yyyyyyyyyyyy
(...)\BTHPORT\Parameters\Keys\5cac4c10c4f1> ls
Node has 0 subkeys and 1 values
  size     type            value name             [value if type DWORD]
     16  REG_BINARY        <xxxxxxxxxxxx>

(...)\BTHPORT\Parameters\Keys\5cac4c10c4f1> hex xxxxxxxxxxxx
Value <xxxxxxxxxxxx> of type REG_BINARY, data length 16 [0x10]
:00000  39 3F CA 48 F0 DB 57 AA 4D 59 F4 23 E4 EA 60 D5 9?.H..W.MY.#..`.

อย่างที่คุณเห็นว่าเป็นตัวเลขเดียวกันกับในไฟล์ด้านบน หวังว่ามันจะช่วยคนรุ่นต่อไปในอนาคต


อุปกรณ์ของคุณรูท / ติดตั้ง BusyBox หรือไม่ คำสั่ง "find" ล้มเหลว

0

สำหรับการอ้างอิงใน Microsoft Bluetooth stack คีย์ลิงค์จะอยู่HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\BTHPORT\Parameters\Keys\aabbccddeeffที่ aabbccddeeff เป็นอะแดปเตอร์บลูทู ธ ของคุณ เนื่องจากติดตั้งอะแดปเตอร์เรียบร้อยแล้วคีย์นี้จึงควรมีอยู่

ภายในคีย์นั้นคุณสามารถมีค่า REG_BINARY หลายค่าโดยที่ชื่อค่าคือที่อยู่ MAC ของอุปกรณ์ที่จับคู่ (ในรูปแบบเดียวกัน - ฐานสิบหกตัวพิมพ์เล็กไม่มีตัวแยก) และค่าคือคีย์ลิงก์ (16 ไบต์)

เพื่อรับกุญแจเชื่อมโยงจาก OS X ดำเนินการ (เทอร์มิใน defaults read /private/var/root/Library/Preferences/blued.plistOSX) ภายใน LinkKeys คุณควรมีลิงค์หลักสำหรับแต่ละที่อยู่ MAC ของอุปกรณ์ที่จับคู่ คีย์ถูกเข้ารหัสแบบ base64 ให้ทำ: echo -n 'aabbcc...==' | base64 -d | hexdump -Cและพิมพ์คีย์นี้ลงในรีจิสทรี Windows ของคุณ


-1

PsExec.exe -s -i regedit / E% cd% \ btkeys_export.txt "HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Services \ BTHPORT \ Parameters \ Keys"


ยินดีต้อนรับสู่ Super User! คุณช่วยอธิบายเรื่องนี้ได้ไหม? อาจแก้ไขคำตอบของคุณเพื่ออธิบายสิ่งที่คุณอธิบายและสาเหตุที่ทำให้ข้อเสนอแนะนั้น ขอบคุณ!
bertieb
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.