XMPPとその拡張機能について読んでいます。それらの1つは(XEP-xxxx:Sensor-Over-XMPP)と呼ばれ、非常に興味深いものです。
エンドツーエンド暗号化用のOMEMOプロトコルである別のXMPP拡張機能についても読みました。
両方を組み合わせることは可能ですか?エンドツーエンドで暗号化されたセンサーデータを取得するには また、考慮すべき考慮事項は何ですか?
XMPPとその拡張機能について読んでいます。それらの1つは(XEP-xxxx:Sensor-Over-XMPP)と呼ばれ、非常に興味深いものです。
エンドツーエンド暗号化用のOMEMOプロトコルである別のXMPP拡張機能についても読みました。
両方を組み合わせることは可能ですか?エンドツーエンドで暗号化されたセンサーデータを取得するには また、考慮すべき考慮事項は何ですか?
回答:
はい、センサーメッセージを暗号化する必要があります。
いいえ、既存の再利用されたプロトコルに暗号化を追加するために独自の方法を使用することを考えるべきではありません。
セキュリティはメッセージだけではなく、サーバーを信頼したり、ファームウェアの更新を信頼したりするのが理想的です。
これを回避する簡単な方法は、特にIoTアプリケーションを対象とした、セキュリティに関するいくつかの保証をすでに提供している完全なデバイスファームウェアスタックを使用することです。センサーデータを暗号化するのではなく、安全なチャネルを使用することをお勧めします(すべてに対して)。TLSはこれに対するデフォルトの回答のようです。
関連する質問。
ZeroMQを使用する ことを検討してください。このプラットフォームでは、end2end暗号化のオプションが提供され、インプロセス、IPC、TCP、TIPC、マルチキャストでメッセージを伝送できるためです。さらに、それは多くのプログラミング言語に対応できるインターフェースを備えた本当に小さなライブラリです。
セキュリティについては、以下をご覧ください。
コアC / C +++ライブラリは、NULLメカニズムとPLAINメカニズム(これらは簡単でした)、およびCURVEとGSSAPI(かなり難しい)を実装しています。CURVEは、認証と暗号化のためのCurveZMQ.orgプロトコルです。GSSAPIを使用すると、Kerberosにプラグインできます。コアライブラリには「ZAP」と呼ばれる認証APIがあり、これを使用すると、たとえば、接続レベルで独自のIPアドレスのブラックリストを追加できます。