私はIoTデバイス用のAndroidアプリに取り組んでいます。Android アプリは IoT デバイスからデータを取得し、MongoDB に保存する NodeJS に送信します。AES-256 暗号化を使用して、暗号化されたデータを POST 要求を使用して NodeJS サーバーに送信しています。問題は、誰でもこの POST リクエストを作成して、データを mongodb に保存できることです。これを保護するために JWT を使用できますが、問題は、このアプリにユーザー名とパスワードの機能がないことです。そのため、サーバー側で検証されるある種のトークンを送信することを考えていました。検証されると、データが保存されます。しかし、このトークンを生成し、MITM 攻撃からこれを保存する方法を理解できません。
IoTの理念に反するのでsessionは使えません。他のアイデアは素晴らしいでしょう。また、PKI の実装に EJBCA を使用することも考えていましたが、それについての知識はほとんどありません。その上の小さなライトも素晴らしいでしょう。
私のセットアップはlocalhostで実行されています。