これは非常に特殊なケースかもしれませんが、誰かが私を助けてくれることを願っています。iOSのBluetooth経由でのTLSのような暗号化ですか?
私はBluetooth経由で周辺機器と話をする必要があります。ファームウェアを制御するデバイス。問題は次のとおりです。送信される情報が機密扱いになるため、誰も盗聴することがないようにする必要があります。つまり、暗号化された通信が必要です。
Bluetooth LE 4.2では暗号化がサポートされていますが、6sより古いiPhoneをサポートする必要があります。つまり、BLE 4.2はなく、暗号化は組み込まれていません。
つまり、暗号化を自分で構築する必要があります。周辺の開発者と私は、TLSハンドシェイクを使用して鍵交換を通信することで合意しました。
私は最後の数日間、解決策を探し、これに対処するために過ごしました。しかし、これは多くの人々が取り組んできたわけではない非常に特殊なケースであるようです。私が見つけることができるライブラリはすべてソケットに依存しています。 iOS用のソケットについては、Bluetooth以外のIPネットワーキングしか見つけられませんでした。
このようなBluetooth通信の経験がある人はいますか?それとも他の提案ですか?たぶん私は見落としているいくつかの明白な解決策?
感謝:)
が
暗号化されたGATT属性は、iphone4以上、およびiPad mini以降(つまり、BLEを搭載したデバイス)でサポートされています。 BLE 4.2では、接続全体を暗号化するための暗号化とサポートが強化されていますが、主な目的はペアリング中のMITM攻撃に対する保護です。これはあなたにとって大きなリスクですか? – Paulw11
周辺機器にどれくらいのRAM /コードスペースがあり、どのくらいの速さであなたのCPUがありますか? – Emil
Pre-v4.2 BLEはAES-CCM暗号化をサポートしていますが、盗聴に対する保護は限られています。すなわち、盗聴者がiPhoneと周辺機器との間のペアリングプロセス中に存在していた場合、共有鍵を取得し、将来の暗号化通信中に聴取することができる。ペアリングプロセス中に盗聴者が存在しなかった場合、暗号化されたデータを解読することはできません。 – Preeti