The Transport Layer Security (TLS) Protocol Version 1.3
【外部リンク】
https://tools.ietf.org/html/draft-ietf-tls-tls13-19
Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 4
1.1. Conventions and Terminology . . . . . . . . . . . . . . . 5
1.2. Major Differences from TLS 1.2 . . . . . . . . . . . . . 6
1.3. Updates Affecting TLS 1.2 . . . . . . . . . . . . . . . . 13
2. Protocol Overview . . . . . . . . . . . . . . . . . . . . . . 14
2.1. Incorrect DHE Share . . . . . . . . . . . . . . . . . . . 17
2.2. Resumption and Pre-Shared Key (PSK) . . . . . . . . . . . 18
2.3. Zero-RTT Data . . . . . . . . . . . . . . . . . . . . . . 20
3. Presentation Language . . . . . . . . . . . . . . . . . . . . 22
3.1. Basic Block Size . . . . . . . . . . . . . . . . . . . . 22
3.2. Miscellaneous . . . . . . . . . . . . . . . . . . . . . . 22
3.3. Vectors . . . . . . . . . . . . . . . . . . . . . . . . . 23
3.4. Numbers . . . . . . . . . . . . . . . . . . . . . . . . . 24
3.5. Enumerateds . . . . . . . . . . . . . . . . . . . . . . . 24
3.6. Constructed Types . . . . . . . . . . . . . . . . . . . . 25
3.7. Constants . . . . . . . . . . . . . . . . . . . . . . . . 25
3.8. Variants . . . . . . . . . . . . . . . . . . . . . . . . 25
3.9. Decoding Errors . . . . . . . . . . . . . . . . . . . . . 26
4. Handshake Protocol . . . . . . . . . . . . . . . . . . . . . 27
4.1. Key Exchange Messages . . . . . . . . . . . . . . . . . . 28
4.1.1. Cryptographic Negotiation . . . . . . . . . . . . . . 28
4.1.2. Client Hello . . . . . . . . . . . . . . . . . . . . 29
4.1.3. Server Hello . . . . . . . . . . . . . . . . . . . . 32
4.1.4. Hello Retry Request . . . . . . . . . . . . . . . . . 34
4.2. Extensions . . . . . . . . . . . . . . . . . . . . . . . 35
4.2.1. Supported Versions . . . . . . . . . . . . . . . . . 38
4.2.2. Cookie . . . . . . . . . . . . . . . . . . . . . . . 39
4.2.3. Signature Algorithms . . . . . . . . . . . . . . . . 39
4.2.4. Negotiated Groups . . . . . . . . . . . . . . . . . . 42
4.2.5. Key Share . . . . . . . . . . . . . . . . . . . . . . 44
Rescorla Expires September 11, 2017 [Page 2]
Internet-Draft TLS March 2017
4.2.6. Pre-Shared Key Exchange Modes . . . . . . . . . . . . 47
4.2.7. Early Data Indication . . . . . . . . . . . . . . . . 47
4.2.8. Pre-Shared Key Extension . . . . . . . . . . . . . . 50
4.3. Server Parameters . . . . . . . . . . . . . . . . . . . . 54
4.3.1. Encrypted Extensions . . . . . . . . . . . . . . . . 54
4.3.2. Certificate Request . . . . . . . . . . . . . . . . . 54
4.4. Authentication Messages . . . . . . . . . . . . . . . . . 56
4.4.1. The Transcript Hash . . . . . . . . . . . . . . . . . 57
4.4.2. Certificate . . . . . . . . . . . . . . . . . . . . . 58
4.4.3. Certificate Verify . . . . . . . . . . . . . . . . . 62
4.4.4. Finished . . . . . . . . . . . . . . . . . . . . . . 64
4.5. End of Early Data . . . . . . . . . . . . . . . . . . . . 65
4.6. Post-Handshake Messages . . . . . . . . . . . . . . . . . 66
4.6.1. New Session Ticket Message . . . . . . . . . . . . . 66
4.6.2. Post-Handshake Authentication . . . . . . . . . . . . 67
4.6.3. Key and IV Update . . . . . . . . . . . . . . . . . . 68
5. Record Protocol . . . . . . . . . . . . . . . . . . . . . . . 69
5.1. Record Layer . . . . . . . . . . . . . . . . . . . . . . 69
5.2. Record Payload Protection . . . . . . . . . . . . . . . . 71
5.3. Per-Record Nonce . . . . . . . . . . . . . . . . . . . . 73
5.4. Record Padding . . . . . . . . . . . . . . . . . . . . . 74
5.5. Limits on Key Usage . . . . . . . . . . . . . . . . . . . 75
6. Alert Protocol . . . . . . . . . . . . . . . . . . . . . . . 75
6.1. Closure Alerts . . . . . . . . . . . . . . . . . . . . . 76
6.2. Error Alerts . . . . . . . . . . . . . . . . . . . . . . 77
7. Cryptographic Computations . . . . . . . . . . . . . . . . . 80
7.1. Key Schedule . . . . . . . . . . . . . . . . . . . . . . 80
7.2. Updating Traffic Keys and IVs . . . . . . . . . . . . . . 83
7.3. Traffic Key Calculation . . . . . . . . . . . . . . . . . 84
7.4. (EC)DHE Shared Secret Calculation . . . . . . . . . . . . 84
7.4.1. Finite Field Diffie-Hellman . . . . . . . . . . . . . 84
7.4.2. Elliptic Curve Diffie-Hellman . . . . . . . . . . . . 85
7.5. Exporters . . . . . . . . . . . . . . . . . . . . . . . . 85
8. Compliance Requirements . . . . . . . . . . . . . . . . . . . 86
8.1. Mandatory-to-Implement Cipher Suites . . . . . . . . . . 86
8.2. Mandatory-to-Implement Extensions . . . . . . . . . . . . 86
9. Security Considerations . . . . . . . . . . . . . . . . . . . 88
10. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 88
11. References . . . . . . . . . . . . . . . . . . . . . . . . . 89
11.1. Normative References . . . . . . . . . . . . . . . . . . 89
11.2. Informative References . . . . . . . . . . . . . . . . . 91
Appendix A. State Machine . . . . . . . . . . . . . . . . . . . 98
A.1. Client . . . . . . . . . . . . . . . . . . . . . . . . . 98
A.2. Server . . . . . . . . . . . . . . . . . . . . . . . . . 98
Appendix B. Protocol Data Structures and Constant Values . . . . 99
B.1. Record Layer . . . . . . . . . . . . . . . . . . . . . . 99
B.2. Alert Messages . . . . . . . . . . . . . . . . . . . . . 100
B.3. Handshake Protocol . . . . . . . . . . . . . . . . . . . 102
Rescorla Expires September 11, 2017 [Page 3]
Internet-Draft TLS March 2017
B.3.1. Key Exchange Messages . . . . . . . . . . . . . . . . 102
B.3.2. Server Parameters Messages . . . . . . . . . . . . . 107
B.3.3. Authentication Messages . . . . . . . . . . . . . . . 108
B.3.4. Ticket Establishment . . . . . . . . . . . . . . . . 109
B.3.5. Updating Keys . . . . . . . . . . . . . . . . . . . . 109
B.4. Cipher Suites . . . . . . . . . . . . . . . . . . . . . . 109
Appendix C. Implementation Notes . . . . . . . . . . . . . . . . 110
C.1. API considerations for 0-RTT . . . . . . . . . . . . . . 110
C.2. Random Number Generation and Seeding . . . . . . . . . . 111
C.3. Certificates and Authentication . . . . . . . . . . . . . 111
C.4. Implementation Pitfalls . . . . . . . . . . . . . . . . . 111
C.5. Client Tracking Prevention . . . . . . . . . . . . . . . 113
C.6. Unauthenticated Operation . . . . . . . . . . . . . . . . 113
Appendix D. Backward Compatibility . . . . . . . . . . . . . . . 113
D.1. Negotiating with an older server . . . . . . . . . . . . 114
D.2. Negotiating with an older client . . . . . . . . . . . . 115
D.3. Zero-RTT backwards compatibility . . . . . . . . . . . . 115
D.4. Backwards Compatibility Security Restrictions . . . . . . 116
Appendix E. Overview of Security Properties . . . . . . . . . . 116
E.1. Handshake . . . . . . . . . . . . . . . . . . . . . . . . 117
E.2. Record Layer . . . . . . . . . . . . . . . . . . . . . . 120
Appendix F. Working Group Information . . . . . . . . . . . . . 121
Appendix G. Contributors . . . . . . . . . . . . . . . . . . . . 122
Author's Address . . . . . . . . . . . . . . . . . . . . . . . . 127
20170318
--
注目の投稿
cURL error 60: SSL certificate problem: unable to get local issuer certificate
cURL error 60: SSL certificate problem: unable to get local issuer certificate 更新失敗: ダウンロードに失敗しました。 cURL error 60: SSL certificate problem: ...
人気の投稿
-
n117 データアクセスに制限がかかっています 【外部リンク】 https://id.smt.docomo.ne.jp/src/utility/errorcode_list.html dアカウント設定のエラーコードと対処方法 エラーコード一覧(2019年7月...
-
PS Vita / PS Vita TV のエラーコード 【外部リンク】 https://www.playstation.com/ja-jp/support/hardware/psvita-problem-reading-disc/ PlayStationVita / Pla...
-
cifs エラー一覧 cifs エラーコード smb コマンド windows windows7 smb 設定 windows10 samba 資格情報 smb trans2 windows10 samba4 windows10 samba インストー...
-
【外部リンク】 https://discussionsjapan.apple.com/thread/10179313 このメッセージはサーバからダウンロードされていません このメッセージはサーバからダウンロードされていません。 機種変更 この サーバ から ダウンロー...
-
au ID セッションタイムアウトになりました。再度接続してください。(CCAE0003) ※何度も、このエラーが表示される場合は、ご利用のブラウザでCookieを受け入れる設定に変更を行ってください。 【外部リンク】 https://id.auone.jp/age/...