2

Web サーバーが組み込まれたアプリがあります。このWebサーバーは、OpenSSLパッケージを介してSSLを実行できるようになりました:)

次に、証明書の問題に進みます。このアプリは販売されています。これは、私が所有するサーバーに置かれているだけでなく、何千ものコンピューターにインストールされているためです。お客様の安全を確保したいので、できるだけ苦労せずに SSL を使っていただきたいと思っています。現在、独自の CA を作成してから、自己署名証明書を作成しています。つまり、すべてのお客様 (およびそのユーザー) は、カスタムのインストール固有の CA をインストールするか、証明書からの信頼されていないルートの警告を受け入れる必要がありますが、どちらも魅力的ではありません。

それを回避する方法は?

次のいずれかが必要です。

  1. CA のインストールを非常に簡単にします (ブラウザは意図的にこれを非常に困難にしています -- 多くの恐ろしい警告ダイアログが表示されます)。
  2. どうにかして、ブラウザで認識された CA によって正当に署名されたすべての顧客証明書を取得します。
  3. 顧客に独自の証明書を購入してインストールするように強制する

#1 をどうするか分からないので、#2 を見ています。#3はほとんど問題外です。

SSL証明書を購入して、製品と一緒に出荷することもできます。そうです、誰もが同じ証明書を使用しており、証明書と秘密鍵がパブリックドメインに漏洩する可能性があります...うーん。 ..おそらく、責任のために私たちの名前を付けたくありません...

問題は、そもそも CA の目的に反する作業をしていることだと思います。これをユーザーにとって簡単かつ安全にする方法について何か考えはありますか? (中間者攻撃は問題ではないと仮定します。実際に文書化されたことはありますか??)

4

1 に答える 1

1

これに対する単純で簡単な解決策はありません。これが簡単に解決された場合、SSL 証明書システムのセキュリティは貧弱になります。

おっしゃるとおり、ブラウザの警告を回避する方法は限られています。アプリケーションによっては、それぞれのアプローチが適している場合があります。

1. クライアント ブラウザにルート CA をインストールする

アプリケーションが内部で使用される場合、またはクライアントがアプリケーションを使用するために何かをインストールすることが予想される場合、これは合理的な解決策です。これは、余分な費用が必要ないため、おそらく最も低コストのソリューションでもあります。ただし、アプリケーションが一般の人々によって使用される場合、これは合理的な解決策ではありません。

2.商用のルート CA 署名付き証明書を購入する

アプリケーションがインターネットに公開されている場合、これが必要になる可能性が高くなります。ただし、単にサービスを提供するのではなく、アプリケーションを販売している場合、これは、あなたが述べたように、責任上の理由から適切ではない可能性があります.

3. 顧客に独自の商用ルート CA 署名付き証明書を購入してもらう

アプリケーションがクライアントによって使用されるために販売されている場合、これはおそらく合理的です。基本オプションとして自己署名証明書を使用してアプリケーションを提供し、必要に応じてクライアントに証明書の使用を提案できます。多くの企業は、サイトの SSL 証明書をすでに持っています。

于 2009-04-13T17:41:07.560 に答える