除了将它用于Arduino(RFduino)之外,我是BLE技术的新手。我试图让每个看到设备的手机都无法与RFduino配对。我感到困惑的是我知道BLE有安全措施,但我该如何实施这些措施。
看看这个问题,看起来人们可以使用MAC地址来保证安全吗? https://stackoverflow.com/questions/22712632/pair-ble-device-with-android所以我想我应该做的是让用户为设备输入正确的MAC地址,如果它不匹配则无法连接?
我真正不理解的是如何在整个通信中添加配对私钥/公钥,我认为这是最佳实践方法吗?任何帮助将不胜感激。
答案 0 :(得分:4)
BLE为其通信提供完整性和机密性,但不提供身份验证。这意味着一旦建立连接,就很难入侵,但你必须确保自己没有与恶意用户连接!
公共私钥认证将是一个很好的起点。您可能希望RFDuino持有私钥。当您尝试连接到它时,它将以只有私钥所有者可以签名的方式签名,您可以使用您的公钥来验证这一点。现在你可以确定你已经与合适的人联系了。
安全性是一个非常难以正确实现的,所以你可能想看看是否有人已经实现了这样的蓝牙库。
答案 1 :(得分:2)
android使用的默认UUID是" 0000180F-0000-1000-8000-00805f9b34fb "。
请提供您自己的UUID ID。
有关更多有用的详细信息,请访问此链接: http://developer.android.com/reference/android/bluetooth/BluetoothGattService.html