2016-12-03 31 views
-1

私はBluez 5.28でスマートフォンのアプリとbleサービスを作った。 それらの間の通信は非常にうまく機能します。 しかし、私はコミュニケーションを傷つけたいと思っています。私はUbertooth oneとクラックルとやり取りしました。 まず、私はウルベルトを始めてから、スマートフォンでbleサービスに接続します。キャプチャした後、私はクラックルが、クラックルと(復号化)クラックしようとしたと述べた:原因彼はエラーを以下に割れ 」できません:MrandとSRANDBLE通信が暗号化されるようにするにはどうすればよいですか?

の両方がありません は新しいPCAPを書いていない、すべてのパケットを復号化しませんでした。.. 」

結論として、スマートフォンとbleサービスの接続は暗号化されていませんでした。私は、暗号化についての虚偽のサービスフラグが真であることを知ったが、私はスマートフォンについては知らない。私はアンドロイドを考え、自動的に暗号化をサポートしています。 2つのデバイス間の接続を暗号化するにはどうすればよいですか? アンドロイドアプリやブリーフサービスで何かを設定する必要がありますか?

答えて

0

デバイスをペアにする必要があります。 AndroidのBluetoothシステム設定を使用してデバイスをペア設定するか、https://developer.android.com/reference/android/bluetooth/BluetoothDevice.html#createBond()を使用してプログラムで設定します。または、周辺機器からセキュリティリクエストパケットを送信することもできます。ペアリングが完了すると、以降のすべての接続が暗号化されます。

最新のAndroidを使用し、周辺機器が新しいセキュア接続のペアリング方式をサポートしていない限り、ペアリングプロセス自体がスニッフィングされた場合、以降のすべてのトラフィックを盗聴できます。最初のペアリングを嗅覚しなかった場合は、残りの部分を解読することはできません。

関連する問題