2016-09-13 17 views
0

私はこのプロジェクトについて多大な研究をしており、おそらくすべてのSO投稿(ブルージャック、RFCOMM、ビーコンなど)を読み、頭が回転しています。ペアリング中のBluetoothプロキシミティスキャン

ブルートゥースをスキャンし、私の電話や家族の電話が近くにいるときにArduino(ブルートゥース機能付き)を使用して自宅でシステムを作成したいと考えています。これがMACスキャナであるか、単にフレンドリーな名前を取得するかどうか。私もRSSIを取得したいと思います。私は正確な距離測定をする必要はありませんが、どれくらい近いかを知りたいと思います。誰もがこのアプローチの提案をしていますか?私は電話でアプリを作成してビーコンにすることができ、これはオプションかもしれないが、私はAndroidに懸念している、それは最低でもマシュマロ5.0でなければならないだろう。私はJBやKKのように、それより少し低いサポートをしたいと思います。だから、MACや名前を探すだけの簡単なスキャンが必要なようです。それは私が本当に必要なすべてです。

あなたがすでに何かにペアリングされている場合は、私が持っている主な質問は、範囲内のBluetoothデバイスをスキャンして見ることができますか? Bluetoothヘッドセットのように?私はブルートゥースがポイントツーポイントであることを理解していますが、それは複数の接続を許可するか、ペアになったときに少なくともMacまたは名前をブロードキャストしますか?

この質問は、一般的な提案と一緒に私を大いに助けてくれます!

ありがとうございます!

答えて

1

BluetoothリスナーからのBluetoothディスカバリには、Bluetooth照会パケット(RX)と照会応答(TX)のリッスンが含まれます。これを続行すると、バッテリが枯渇します。したがって、ほとんどのデバイス(携帯電話やヘッドセットを含む)は、いつ発見可能で接続可能なのかというポリシーを持っています。特にヘッドセットは、1つのデバイスが接続されるまで指示されて接続可能な場合にのみ検出可能です(ヘッドセットに複数の電話機に同時に接続する機能がある場合は例外です)。ほとんどの携帯電話は、設定画面(Android、IOS、およびWindows Phone)にある場合にのみ検出可能ですが、ヘッドセットの場合とは異なり、接続可能です。

MobilePhoneの1つのオプションは、一度ペアリングした後に接続できるかどうかを確認することです(たとえば、リモートデバイスでサービス検索を試み、サービス属性を返すかどうかを確認するなど)デバイスの存在を間接的に保証します)。

既にペアになっている携帯電話に固有の場合は、認証と暗号化を使用して上位層接続(SPPなど)を確立する必要があります。これにより、デバイスが既にペアになっているかどうかを確認するための双方向チェックが強制されます。他の安全性の低いオプションは、電話に依存することです(AndroidとIOSの電話機は、一般に、暗号化/ペアリングなしで上位層の接続を許可しません)。電話機へのSPP接続を確立しようとします。

また、Bluetooth-LowEnergyを使用することもできます。しかし、BTのセキュリティはBLEよりもBTv4.1よりも優れており、BTv4.2でも同じであることに注意してください。

+0

詳細な対応をありがとうございます!これは私がそれをより多く理解するのに役立ちます。ペアリングとセキュリティが心配されていないとどうなりますか?また、私はBLEについてもうまくいきます(BLEが現在AndroidおよびiOSデバイスにあるかどうかを調べる必要があります)。基本的には、BLEを搭載し、バッテリで動作していないarduinoを持っている場合、私はまだどのように行うか把握する必要があります。範囲内であれば、Wi-FiのSSIDが表示されるような感じです。私は彼らが通常発見できないというあなたのコメントを理解しています。これはBLEで変わるのですか? –

+0

私はAndroidとIOSで理解しているとおり、電話機はBluetooth設定画面に入っている必要があります。または、電話機で実行されているアプリケーションが電話機でLEスキャンを要求している場合は、電話機はスキャナからの広告を検出できません。 –

+0

リンクキーと暗号化キーの強度は非常に優れています。 BT4.2 SHA-256(SHA-256が壊れていることは知られていないことに注意してください)は鍵の作成に使用され、AES 128は暗号化に使用されます。 Diffie-Hellmanキー交換は、安全でないリンクでキーを安全に作成するために使用されます。セキュリティの観点からBT4.1を使用する場合は、BT classicがより良い選択肢です。 BT4.2を使用する場合、古典と低エネルギーの両方が同等に安全です。 –

関連する問題