2012-03-04 6 views
1

私はGnuTLSでネットワーククライアントとサーバーを開発したいと思っています。いくつかのオプションがあります:x509、PSK、SRP、PGP?どの方法が最も安全だと考えられていますか、どちらが高レベルのネットワーク通信セキュリティを必要とするアプリケーションには推奨されていませんか?使用する暗号化方式はどれですか?

ベストウイッシュ

答えて

1

あなたのクライアント(実際のユーザー、またはある種のデーモン/ cronジョブ)を使用する人と、必要な他のソフトウェアとの相互運用性の種類によって異なります。

ほとんどの目的で、X509v3証明書が必要です。これらは、SSL/TLS上で最も広く使用され実装された認証方法であり、相互運用性が最も優れています。 PSK、SRP、およびPGPはSSL/TLSのコンテキストではかなりエキゾチックな選択肢です。

テクニカルではないユーザーが使用できる必要があるため、クライアント認証が必要な場合、クライアント認証用の証明書を使用するとシナリオがうまくいかない場合は、SSL/TLSによるパスワードベースの認証でSRPが最も安全です。

PGPの使用は概念的にX509v3証明書と同等ですが、相互運用性は低いです。あなたの環境にすでにPGPベースのPKIが導入されていない限り、PGPを使用するのは最良の選択ではありません。

PSKは最も限定された選択であり、CPU /メモリの厳しい制約のためにクライアント上で公開鍵の計算を避けなければならない場合にのみ適しています。

2

あなたは、クライアントとサーバーの両方を実装する場合は、これらの認証方式は、すべての[ほぼ均等]あなたがそれらを使用する方法に応じて、安全なまたは安全でないことができます。ソフトウェアが第三者によって使用される場合、私はすべての方法をサポートし、ユーザーに決定させます。

関連する問題