0

メール クライアント アプリケーションに k9mail(Android) オープン ソースを使用しています。目的は、ユーザーが SSL セキュリティで私のメール サーバーにのみアクセスすることです。そのため、メール クライアントに SSL 証明書をインストールする必要があります。クライアント側に SSL 証明書をインストールする最良の方法は何ですか?

(つまり)クライアントがサーバーと通信するときにサーバーからインストールします(または)アプリケーションを開発するときにクライアントにインストールします。あなたの提案をいただけますか?

4

1 に答える 1

4

簡単な答え: 開発時にクライアント アプリにインストール/インクルードします。クライアントがサーバーと通信するときにサーバーからインストールしないでください。これは正しいアプローチではありません (セキュリティ上の観点から)。

長い答え: サーバー証明書は安全な方法でクライアントに転送する必要があります。これは、攻撃者が証明書を自分の証明書に置き換えないようにするためです。これにより、後で攻撃者がメール サーバーであると偽ることができます (man-in-the-middle 攻撃)。クライアントがサーバーと通信するときにクライアントに証明書をダウンロードしただけでは、安全な (暗号化/認証された) チャネルを既に確立していない限り、サーバーであると思われるエンティティが実際にサーバーであることを証明できません (この場合、安全な接続がすでにある場合は、とにかく証明書は必要ありません)。

そのため、事前にサーバー証明書を生成し、アプリケーションに含める必要があります。別の方法は、物理メディアまたは他の安全なチャネルを介して転送することです (これはあまり意味がありません..)

于 2012-12-11T12:54:14.753 に答える