抓蓝牙空中包的时候最蛋疼的就是遇到SSP(安全简单配对),因为这时候的LinkKey不是通过pincode生成的,连接加密之后就无法解析数据包了。有两种方法来直接获得LinkKey,一是抓HCI log另一种方法就是到手机里查找LinkKey。
方法是用adb cat以下文件:
/data/misc/bluedroid/bt_config.xml
通过name或者bdaddr找到相关设备,要注意的是LinkKey的大小端
<N4 Tag="00:0d:fd:36:ab:00">
<N1 Tag="Timestamp" Type="int">1395734997</N1>
<N2 Tag="DevClass" Type="int">2360324</N2>
<N3 Tag="DevType" Type="int">1</N3>
<N4 Tag="AddrType" Type="int">0</N4>
<N5 Tag="Name" Type="string">Motorola S305</N5>
<N6 Tag="LinkKeyType" Type="int">0</N6>
<N7 Tag="PinLength" Type="int">0</N7>
<N8 Tag="LinkKey" Type="binary">b16285e94d9afd4db882f101bb7494fd</N8>
<N9 Tag="Manufacturer" Type="int">10</N9>
<N10 Tag="LmpVer" Type="int">4</N10>
<N11 Tag="LmpSubVer" Type="int">5363</N11>
<N12 Tag="Service" Type="string">0000111e-0000-1000-8000-00805f9b34fb 0000110b-0000-1000-8000-00805f9b34fb 0000110e-0000-1000-8000-00805f9b34fb </N12>