web-dev-qa-db-ja.com

組み込みデバイスのHttps、ローカルアドレス

作業中の組み込みデバイスにhttpsを追加しようとしています。これらのデバイスには通常、ローカルIPアドレスが割り当てられているため、独自のSSL証明書を取得することはできません。

基本的に私の質問は、グローバルIPアドレスのないデバイスの証明書をどのように取得するかということです。

仮定:

ブラウザは、信頼できるCAによって検証されない限り、証明書を信頼しません。

ただし、グローバルに一意のドメインの検証済み証明書のみを取得できます。

それらのくそった顧客はローカルIPアドレスを主張します。

同様の質問 ここ


仮説A:

  1. 主要企業のWebサイトの証明書を取得する
  2. その証明書をコピーします。 +すべてのデバイスへの秘密鍵
  3. ユーザーがデバイスに接続します
  4. デバイスは証明書を送信します。ユーザーへ
  5. ユーザーには証明書が表示されます。信頼されている(このサーバー用ではないことを無視しますか??)
  6. ユーザーは証明書の公開鍵を使用してhttpを暗号化します
  7. デバイスは秘密鍵を使用します

結果:

  1. ブラウザが名前の不一致について文句を言う
  2. 顧客はお互いの秘密鍵にアクセスできます
  3. 安全性が低い

仮説B:

  1. 各デバイスの主要な会社のWebサイトの証明書を取得します
  2. 証明書をコピーします。 +各デバイスの秘密鍵
  3. ユーザーがデバイスに接続します
  4. デバイスは証明書を送信します。ユーザーへ
  5. ユーザーには証明書が表示されます。信頼されている(このサーバー用ではないことを無視しますか??)
  6. ユーザーは証明書の公開鍵を使用してhttpを暗号化します
  7. デバイスは秘密鍵を使用します

結果:

  1. ブラウザが名前の不一致について文句を言う
  2. 安全

仮説C:

  1. デバイスごとに自己署名証明書を作成します
  2. 証明書をコピーします。 +デバイスへの秘密鍵
  3. ユーザーがデバイスに接続します
  4. デバイスは証明書を送信します。ユーザーへ
  5. Firefoxにはカナリアがあります
  6. ユーザーは証明書の公開鍵を使用してhttpを暗号化します
  7. デバイスは秘密鍵を使用します

結果:

  1. ブラウザが自己署名証明書について文句を言う
  2. 自己署名証明書はman-in-middle攻撃である可能性があります
8
Shiftee

顧客がローカルIP接続を主張する場合は、世界中の 公開鍵インフラストラクチャ 「既知」に連絡することで 認証局 を活用する必要はありません。

独自のローカルCAを使用して独自のローカルPKIを設定し、CAの証明書をすべてのクライアントに配布するだけです。次に、そのCAを使用してデバイスに証明書を発行すると、クライアントから信頼されます。

3
Luke404

ワイルドカード証明書を取得して、デバイスのサブドメインとして使用することはできますか?

デバイスがローカルでDNS上にある限り、IPアドレスは重要ではありません。

0
Chida