「Transport Layer Security」の版間の差分
提供: セキュリティ
行1: | 行1: | ||
− | |||
− | |||
− | |||
− | |||
[[Transport Layer Security]] (TLS)は、セキュリティを必要とされる通信のためのプロトコルです。 | [[Transport Layer Security]] (TLS)は、セキュリティを必要とされる通信のためのプロトコルです。 | ||
[[Secure Sockets Layer]] ( [[Secure_Sockets_Layer|SSL]] ) とも呼ばれます。 | [[Secure Sockets Layer]] ( [[Secure_Sockets_Layer|SSL]] ) とも呼ばれます。 | ||
行8: | 行4: | ||
読み方 | 読み方 | ||
− | とらんすぽーと・れいやー・せきゅりてぃ | + | ;[[Transport Layer Security]]: とらんすぽーと・れいやー・せきゅりてぃ |
− | てぃーえるえす | + | ;[[TLS]]:てぃーえるえす |
+ | ;[[SSL]]::えすえすえる | ||
+ | ;[[Secure Sockets Layer]]: せきゅあ そけっつ れいやー | ||
__TOC__ | __TOC__ | ||
== 概要 == | == 概要 == | ||
− | |||
[[Transport Layer Security]] (TLS)の元になったプロトコルは、[[Secure_Sockets_Layer|SSL]] です。 | [[Transport Layer Security]] (TLS)の元になったプロトコルは、[[Secure_Sockets_Layer|SSL]] です。 | ||
行24: | 行21: | ||
[[共通鍵暗号]]による[[暗号化]]を提供します。 | [[共通鍵暗号]]による[[暗号化]]を提供します。 | ||
+ | |||
+ | {|class="wikitable" | ||
+ | |+ SSL/TLSで利用可能な暗号 | ||
+ | ! 暗号方式 | ||
+ | ! 暗号アルゴリズム | ||
+ | |- | ||
+ | | [[共通鍵暗号]] [[ブロック暗号]] | ||
+ | | RC2(40), [[DES暗号|DES]](40,56),Triple DES, IDEA,[[AES暗号|AES]], [[Camellia]], SEED | ||
+ | |- | ||
+ | | [[共通鍵暗号]] [[ストリーム暗号]] | ||
+ | | [[RC4]](40,128) | ||
+ | |- | ||
+ | | [[公開鍵暗号]] | ||
+ | | [[RSA暗号|RSA]], ECDH, DH | ||
+ | |- | ||
+ | | [[デジタル署名]] | ||
+ | | [[RSA暗号|RSA]], DSS, ECDSA | ||
+ | |- | ||
+ | | [[ハッシュ関数]] | ||
+ | | [[MD5]], [[SHA-1]], [[SHA-2|SHA-256]], SHA-384, SHA-512 | ||
+ | |} | ||
== 認証 == | == 認証 == | ||
行37: | 行55: | ||
選択肢として、 [[MD5]]、[[SHA-1]]、[[SHA-256]] の[[ハッシュ関数]]があります。 | 選択肢として、 [[MD5]]、[[SHA-1]]、[[SHA-256]] の[[ハッシュ関数]]があります。 | ||
− | == | + | == BEAST攻撃 == |
+ | [[BEAST攻撃]]対策として[[RC4]]を利用すると言われてきましたが、必ずしも良いとはいえません。 | ||
+ | * [[電子政府における調達のために参照すべき暗号のリスト]]の電子政府推奨暗号リストに[[RC4]]はありません。 | ||
+ | * SSL_OP_DONT_INSERT_EMPTY_FRAGMENTS オプションを無効にすることで対応できます。 | ||
+ | * [[BEAST攻撃]]の攻撃条件は非常に厳しいものです。 | ||
+ | ** パケットをすべて盗聴できること | ||
+ | ** 任意のリクエストをサーバーに送信できること | ||
+ | *** 最近のほとんどの[[ウェブブラウザ]]は、[[同一生成元ポリシー]](Same Origin Policy)を実装している。 | ||
== 使い方 == | == 使い方 == | ||
== 関連項目 == | == 関連項目 == | ||
− | |||
* [[BEAST攻撃]] | * [[BEAST攻撃]] | ||
* [[HTTPS]] | * [[HTTPS]] | ||
* [[Hypertext Transfer Protocol]] | * [[Hypertext Transfer Protocol]] | ||
+ | <!-- | ||
+ | vim: filetype=mediawiki | ||
+ | --> |
2013年12月4日 (水) 00:33時点における版
Transport Layer Security (TLS)は、セキュリティを必要とされる通信のためのプロトコルです。 Secure Sockets Layer ( SSL ) とも呼ばれます。
読み方
- Transport Layer Security
- とらんすぽーと・れいやー・せきゅりてぃ
- TLS
- てぃーえるえす
- SSL
- :えすえすえる
- Secure Sockets Layer
- せきゅあ そけっつ れいやー
概要
Transport Layer Security (TLS)の元になったプロトコルは、SSL です。
TLSは、TCPをラッピングする形で利用されます。HTTPでの利用意識されて設計されていますが、アプリケーション層のプロトコルには依存しません。HTTPSは、URIスキームの1つで、TLSを使ったHTTPのことを表します。
暗号化
暗号方式 | 暗号アルゴリズム |
---|---|
共通鍵暗号 ブロック暗号 | RC2(40), DES(40,56),Triple DES, IDEA,AES, Camellia, SEED |
共通鍵暗号 ストリーム暗号 | RC4(40,128) |
公開鍵暗号 | RSA, ECDH, DH |
デジタル署名 | RSA, DSS, ECDSA |
ハッシュ関数 | MD5, SHA-1, SHA-256, SHA-384, SHA-512 |
認証
SSL は、公開鍵証明書による認証を提供します。
SSLでは、署名アルゴリズムとして RSA暗号やDSAが利用されます。
改竄検出
SSLでは、データレコードを送信するときに、レコードのシーケンス番号、ハッシュ用共通鍵、データからハッシュ値を計算し、レコードに付加します。ハッシュ用共通鍵を知らない攻撃者によりデータが改竄されても、ハッシュ値で検出できます。
選択肢として、 MD5、SHA-1、SHA-256 のハッシュ関数があります。
BEAST攻撃
BEAST攻撃対策としてRC4を利用すると言われてきましたが、必ずしも良いとはいえません。
- 電子政府における調達のために参照すべき暗号のリストの電子政府推奨暗号リストにRC4はありません。
- SSL_OP_DONT_INSERT_EMPTY_FRAGMENTS オプションを無効にすることで対応できます。
- BEAST攻撃の攻撃条件は非常に厳しいものです。