TLS を利用したアプリケーションやシステムを開発するうえで重要となるセキュリティ上の課題
脆弱性の階層
標準も更新されているが、標準の更新には時間がかかるため、利用側で適切なアルゴリズムや鍵長を選択する必要
プロトコル仕様
古いバージョンのプロトコルには脆弱性があるため、利用する暗号スイートや機能の選択に注意 プロトコル実装
各実装ベンダーの努力で担保
基本的品質保証、品質管理の自動化、単体テスト、統合テスト
多数の他社実装との相互運用性テスト
API の一貫性、後方互換性
脆弱性管理
アプリケーション実装
TLS バージョン : 原則として 1.3 を使うべきだが、やむを得ず 1.2 を使うならセキュリティオプションを下げるようにオプションを選択 暗号スイートについては、TLS 1.3 では危険なものは排除されている 開発やテスト用のオプションを間違って本番に適用しないように
エラーログを確認できるようにしておく
ネットワーク上の脅威
基本的なもの
ハードウェア的な踏み込んだ解析もある
直接 IC チップ上の回路を読み取るとか、配線の改造、バスデータの読み取りなどの攻撃 従来はハードウェアとしても極めて堅牢な実装で、大規模サーバーシステムの一環として利用されてきた
近年では、軽装に IC チップ上に実現したセキュアエレメントと呼ばれる鍵管理チップも広く利用されるように 公開鍵ペアは工場の製造工程で安全に管理されて封印されたり、チップに鍵生成機能を持たせることで、鍵のライフサイクル全体で秘密鍵をチップの外に一切出さない