web-dev-qa-db-ja.com

ECDHE-RSA-AES128-GCM-SHA256のみを有効にしたApache TLS

ApacheのこのTLS構成に対して何かありますか?

SSLProtocol TLSv1.2
SSLCipherSuite ECDHE-RSA-AES128-GCM-SHA256

より複雑な設定を使用する例はたくさんありますが、この構成は安全で理解しやすいものだと思います。

私たちはユーザーがかなり最近のブラウザーまたはデバイスを持っていることを期待しているため、Android 4.3またはIE 7をサポートする必要はありません。

4
Gert-Jan

TLS 1.2またはその暗号スイートに既知の脆弱性はありません。互換性とパフォーマンスの観点から機能する場合は、使用しても問題ありません。

この構成は問題ありませんが、ChaCha20-Poly1305スイートの1つも提供し、そのスイートを推奨オプションにすることをお勧めします。 RSA証明書を使用している場合はTLS_ECDHE_RSA_WITH_CHACHA20_POLY1305_SHA256を、ECDSA証明書を使用している場合はTLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305_SHA256を提供することをお勧めします。

この理由はパフォーマンスです。 AES-GCMは、ハードウェアアクセラレーションなしでは高速でないいくつかの操作を使用します。具体的には、AES命令セットの拡張とキャリーレス乗算(PCLMULQDQ、XMULXなど)を使用して、GF(2k)それぞれGHASHです。これらの拡張機能がないと、AES-GCMのパフォーマンスは特に低下します。これは主に、(ARMv8アーキテクチャでのみ)AES拡張機能を備えている可能性があるが、必要なキャリーレス乗算拡張機能を提供しないスマートフォンに影響します。

ただし、ChaCha20-Poly1305は、パフォーマンスのSIMD命令のみに依存しています。これらはかなりユビキタスです。最新のすべてのx86_64プロセッサとほとんどのハイエンドARMプロセッサは、ChaCha20-Poly1305の非常に効率的で高性能な実装を可能にする、さまざまなSIMD命令拡張機能(SSE4、AVX2、NEONなど)を提供します) 。

さらに、ECDSA証明書についての私の言及に戻って参照すると、従来のRSA証明書の代わりにそれらを検討することができます。最新のブラウザはすべてこのような証明書をサポートしており、これらもまた、パフォーマンスの向上を提供します。 ECDSAはまた、新しい攻撃に対してより将来性があると考えられており、一般にセキュリティの観点からより簡単です(RSAには、実装を記述するときに軽減する必要がある問題のlotがあります)。 ECDSA証明書を選択する場合、GCMにTLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256を使用するには、既存の構成を交換する必要があります。

1
Polynomial