1

SilverLight アプリケーション間でデータを送信する必要があります。SSL/TLS などの安全なプロトコルを使用してデータを送信する必要があるという要件があります。パフォーマンス上の理由により、データは TCP ソケットを使用して送信されます。残念ながら、SilverLight はSslStreamをサポートしていません。SSL/TLS 経由でデータを送信したい場合は、SecureBlackboxなどのサードパーティ ライブラリを購入する必要があります。トランスポート層の処理に関しては、サードパーティのライブラリに依存したくありません。

ただし、SilverLight にはCryptoStreamクラスがあります。WCF over SSL (SilverLight はそれをサポートしています) を使用して対称暗号化のキーを交換し、CryptoStream を使用して AES でデータを暗号化することを考えています。

このソリューションは安全ですか? セキュリティの観点から、SSL/TLS を使用する場合と比較できますか? 私が見逃している明らかなセキュリティホールはありますか?

4

1 に答える 1

1

AES アプローチの主な問題は、鍵の管理と鍵の検証だと思います。SSL は、CA チェーン (認証局) を使用して SSL 証明書の有効性を検証する「ハンドシェイク」を使用することをご存じでしょう。これはすべて、SSL セッション用の AES キーが生成される前に発生します。したがって、SSL を使用しないと、この重要なステップを逃してしまいます。

これは、キーが安全であり、安全な方法で交換されていることを確認する責任を負うことを意味します。

于 2012-07-04T09:14:04.100 に答える