3

を介して通信するアプリケーションを作成しました。ネットSSLStream、および開発のために、私makecert.exeは自己署名SSL証明書を作成していました。今、私はいくつかのマイクロソフトの記事を読みました、そのmakecertはテストのためだけに使われるべきです。

今私の質問は、アプリケーションはこの証明書で安全ですか、それともどのプログラムで安全で比較可能な証明書を作成できますか?編集:自己署名証明書はクライアントアプリケーションにハードコードされており、接続を確立するたびに比較されるため、中間者攻撃は機能しませんが、makecert証明書はどの程度ランダムですか



4

4 に答える 4

4

OpenSSLを使用して、実稼働環境で使用される自己署名証明書を作成することをお勧めします。makecert.exeについて考えたことはありません。正直に言うと、アプリケーションとサーバー間でSSLを使用してデータの暗号化された転送を実現したいと考えています。

ホール証明書は「ユーザー/顧客」には表示されません。現在の唯一の理由は、 SSLが有効になっているページに「これは安全なページです」というバッジを埋め込むことです。

これを探している場合は、CAからの署名付き証明書が必ず必要になります。これについて考えている場合は、StartSSLをお勧めします。これは、はるかに安価で、ほぼ無制限のワイルドカード証明書を1回だけ検証できるためです。マイクロソフトから信​​頼されており、無料でコード署名証明書を作成できます。(検証のための1回限りの料金)。

証明書のランダム性とセキュリティに関して:

接続している証明書のフィンガープリントを検証する場合は、セキュリティ上の懸念が少なくなるはずです。(つまり、Fiddlerはこのようには機能しません)。

SSLはRSAアルゴリズムに基づいているため、キーサイズが2048または4096(StartSSLで最大)の秘密/公開キーペアを生成する場合、セキュリティ上の懸念はありません。ここにある証明書の作成方法 RSAを信頼しない場合は、誰も信頼しないでください;)

OpenSSLを使用して作成された自己署名証明書を使用しているほとんどの大学に注意してください。現在はFIPS認定を受けており、システムに適合させるためのさまざまな設定が可能です。

于 2013-01-26T11:04:42.937 に答える
2

アプリケーションを使用するすべての人に証明書を取得するための安全な方法を見つければ、安全です。そうしないと、アプリケーションと実際に通信していることを知る方法がありません。他の誰もがmakecertあなたと同じように走ることができ、彼らが本当にあなたと話しているかどうかを知る方法は誰にもありません。CAによって発行された証明書は、IDを証明書にバインドし、クライアントが実際に適切なサービスと通信していることを認識できるようにします。

https://www.amazon.comブラウザにパンチインしたとき、クレジットカード情報を詐欺師ではなくAmazonに送信していることをどのようにして知ることができますか?ええと、Amazonには認証局によって発行さwww.amazon.comれた証明書があります。詐欺師はそのような証明書を取得できませんでした-当局はそれを発行しませんでした。

しかし、Amazonが自己署名証明書を使用した場合...まあ、誰でもそれを行うことができます。では、私が実際にアマゾンと話していることをどうやって知ることができるでしょうか?私は、どの自己署名証明書がwww.amazon.com正しいものであるかを事前に知る必要があります。私には、CAの承認のスタンプがありません。

于 2013-01-18T05:52:37.650 に答える
1

パスワードを(長い証明書として)アプリケーションにハードコーディングし、それが安全かどうかを尋ねていますか?

必要なのは、コードのコピーまたはコードを保存した場所だけです。これまでに作成したすべてのアプリをハックできます。さらに、更新または変更することはできません。

于 2015-10-26T22:36:16.003 に答える
0

自己署名証明書には、基本的に「私は私であることを証明します。署名:私」と記載されています。独自の認証局を設定する方法を調べてください(選択した環境によって異なり、いくつかのオプションがあります)。その権限を使用して証明書を発行し、CAを信頼するようにサーバーとクライアントを設定します。それらに$$$$を支払う必要はありません。さらに、どのような条件下で証明書を配布するかを正確に把握できます

于 2013-01-25T22:13:52.580 に答える