SSL and TLS: Designing and Building Secure Systems
暫譯: SSL 與 TLS:設計與建構安全系統

Eric Rescorla

  • 出版商: Addison Wesley
  • 出版日期: 2000-10-17
  • 售價: $1,880
  • 貴賓價: 9.5$1,786
  • 語言: 英文
  • 頁數: 528
  • 裝訂: Paperback
  • ISBN: 0201615983
  • ISBN-13: 9780201615982
  • 立即出貨 (庫存 < 3)

買這商品的人也買了...

相關主題

商品描述


Description

The step-by-step guide to securing Web systems and traffic with SSL and TLS, the Internet's leading security protocols.

  • Includes extensive coverage of Transport Level Security (TLS), the powerful security protocol that will succeed SSL.
  • From the basics to advanced topics: authentication, algorithms, Kerberos, and beyond.
  • By Eric Rescorla, leader of two IETF TLS working groups -- a world-renowned expert in network security architectures.
Secure Sockets Layer (SSL) is used in virtually every commercial web browser and server. In this book, one of the world's leading network security experts explains how SSL works -- and gives implementers step-by-step guidance and proven design patterns for building secure systems with SSL. Eric Rescorla also provides the first in-depth introduction to Transport Layer Security (TLS), the highly anticipated, maximum-security successor to SSL. Rescorla starts by introducing SSL's fundamentals: how it works, and the threats it is intended to address. One step at a time, he addresses each key SSL concept and technique, including cryptography, SSL performance optimization, designing and coding, and how to work around SSL's limitations. Rescorla demonstrates TLS at work in SMTP-based Internet security applications. The book includes detailed examples of SSL/TLS implementations, with in-depth insight into the key design choices that informed them. For all network and security designers, enterprise developers, system implementers, and suppliers of Internet security products and services.

Eric Rescorla is a security consultant specializing in systems design and architecture. He was one of the two designers of Secure-HTTP. At Terisa Systems, he implemented Secure HTTP, SSL, TLS, and SET for Terisa's SecureWeb Toolkit product. Rescola is active in many IETF security working groups, and currently author of the TLS, HTTP over TLS and S/MIME Working Groups.

Back to Top


Appropriate Courses

Networking--Advanced Topics.

Back to Top


Table Of Contents

Preface.
1. Security Concepts.
Introduction.
The Internet Threat Model.
The Players.
The Goals of Security.
Tools of the Trade.
Putting It All Together.
A Simple Secure Messaging System.
A Simple Secure Channel.
The Export Situation.
Real Cryptographic Algorithms.
Symmetric Encryption: Stream Ciphers.
Symmetric Encryption: Block Ciphers.
Digest Algorithms.
Key Establishment.
Digital Signature.
MACs.
Key Length.
Summary.

2. Introduction to SSL.
Introduction.
Standards and Standards Bodies.
SSL Over view.
SSL/TLS Design Goals.
SSL and the TCP/IP Suite.
SSL History.
SSL for the Web.
Everything over SSL.
Getting SSL.
Summary.

3. Basic SSL.
Introduction.
SSL Over view.
Handshake.
SSL Record Protocol.
Putting the Pieces Together.
A Real Connection.
Some More Connection Details.
SSL Specification Language.
Handshake Message Structure.
Handshake Messages.
Key Derivation.
Record Protocol.
Alerts and Closure.
Summary.

4. Advanced SSL.
Introduction.
Session Resumption.
Client Authentication.
Ephemeral RSA.
Rehandshake.
Server Gated Cryptography.
DSS and DH.
Elliptic Curve Cipher Suites.
Kerberos.
FORTEZZA.
The Story So Far.
Session Resumption Details.
Client Authentication Details.
Ephemeral RSA Details.
SGC Details.
DH/DSS Details.
FORTEZZA Details.
Error Alerts.
SSLv2 Backward Compatibility.
Summary.

5. SSL Security.
Introduction.
What SSL Provides.
Protect the master_secret.
Protect the Server's Private Key.
Use Good Randomness.
Check the Certificate Chain.
Algorithm Selection.
The Story So Far.
Compromise of the master_secret.
Protecting Secrets in Memory.
Securing the Server's Private Key.
Random Number Generation.
Certificate Chain Verification.
Partial Compromise.
Known Attacks.
Timing Cryptanalysis.
Million Message Attack.
Small-Subgroup Attack.
Downgrade to Export.
Summary.

6. SSL Performance.
Introduction.
SSL Is Slow.
Performance Principles.
Cryptography Is Expensive.
Session Resumption.
Handshake Algorithm and Key Choice.
Bulk Data Transfer.
Basic SSL Performance Rules.
The Story So Far.
Handshake Time Allocation.
Normal RSA Mode.
RSA with Client Authentication.
Ephemeral RSA.
DSS/DHE.
DSS/DHE with Client Authentication.
Performance Improvements with DH.
Record Processing.
Java.
SSL Servers under Load.
Hardware Acceleration.
Inline Hardware Accelerators.
Network Latency.
The Nagle Algorithm.
Handshake Buffering.
Advanced SSL Performance Rules.
Summary.

7. Designing with SSL.
Introduction.
Know What You Want to Secure.
Client Authentication Options.
Reference Integrity.
Inappropriate Tasks.
Protocol Selection.
Reducing Handshake Overhead.
Design Strategy.
The Story So Far.
Separate Ports.
Upward Negotiation.
Downgrade Attacks.
Reference Integrity.
Username/Password Authentication.
SSL Client Authentication.
Mutual Username/Password Authentication.
Rehandshake.
Secondary Channels.
Closure.
Summary.

8. Coding with SSL.
Introduction.
SSL Implementations.
Sample Programs.
Context Initialization.
Client Connect.
Server Accept.
Simple I/O Handling.
Multiplexed I/O Using Threads.
Multiplexed I/O with select().
Closure.
Session Resumption.
What's Missing?
Summary.

9. HTTP over SSL.
Introduction.
Securing the Web.
HTTP.
HTML.
URLs.
HTTP Connection Behavior.
Proxies.
Virtual Hosts.
Protocol Selection.
Client Authentication.
Reference Integrity.
HTTPS.
HTTPS Overview.
URLs and Reference Integrity.
Connection Closure.
Proxies.
Virtual Hosts.
Client Authentication.
Referrer.
Substitution Attacks.
Upgrade.
Programming Issues.
Proxy CONNECT.
Handling Multiple Clients.
Summary.

10. SMTP over TLS.
Introduction.
Internet Mail Security.
Internet Messaging Overview.
SMTP.
RFC 822 and MIME.
E-Mail Addresses.
Mail Relaying.
Virtual Hosts.
MX Records.
Client Mail Access.
Protocol Selection.
Client Authentication.
Reference Integrity.
Connection Semantics.
STARTTLS.
STARTTLS Overview.
Connection Closure.
Requiring TLS.
Virtual Hosts.
Security Indicators.
Authenticated Relaying.
Originator Authentication.
Reference Integrity Details.
Why Not CONNECT?
What's STARTTLS Good For?
Programming Issues.
Implementing STARTTLS.
Server Startup.
Summary.

11. Contrasting Approaches.
Introduction.
The End-to-End Argument.
The End-to-End Argument and SMTP.
Other Protocols.
IPsec.
Security Associations.
ISAKMP and IKE.
AH and ESP.
Putting It All Together: IPsec.
IPsec versus SSL.
Secure HTTP.
CMS.
Message Format.
Cryptographic Options.
Putting It All Together: S-HTTP.
S-HTTP versus HTTPS.
S/MIME.
Basic S/MIME Formatting.
Signing Only.
Algorithm Choice.
Putting It All Together: S/MIME.
Implementation Barriers.
S/MIME versus SMTP/TLS.
Choosing the Appropriate Solution.
Summary.

Appendix A: Example Code.
Chapter 8.
Examples.
Java Examples.
Chapter 9.
HTTPS Examples.
mod_ssl Session Caching.

Appendix B: SSLv2.
Introduction.
SSLv2 Overview.
Missing Features.
Security Problems.
PCT.
What about SSLv1?

Bibliography.
Index. 0201615983T04062001


Back to Top

商品描述(中文翻譯)

描述

這是一本逐步指導如何使用 SSL 和 TLS 來保護網路系統和流量的指南,這兩者是互聯網上領先的安全協議。
- 包含對傳輸層安全性 (Transport Level Security, TLS) 的廣泛介紹,這是一種將取代 SSL 的強大安全協議。
- 從基礎到進階主題:身份驗證、演算法、Kerberos 等等。
- 作者為 Eric Rescorla,兩個 IETF TLS 工作組的領導者,全球知名的網路安全架構專家。

安全套接層 (Secure Sockets Layer, SSL) 幾乎在每個商業網頁瀏覽器和伺服器中都被使用。在這本書中,全球領先的網路安全專家解釋了 SSL 的運作方式,並為實施者提供逐步指導和經過驗證的設計模式,以便使用 SSL 建立安全系統。Eric Rescorla 也提供了對傳輸層安全性 (TLS) 的首次深入介紹,這是 SSL 的高度期待的最高安全性繼任者。Rescorla 首先介紹了 SSL 的基本概念:它的運作方式以及它旨在解決的威脅。他逐步解釋每個關鍵的 SSL 概念和技術,包括密碼學、SSL 性能優化、設計和編碼,以及如何克服 SSL 的限制。Rescorla 展示了 TLS 在基於 SMTP 的互聯網安全應用中的運作。這本書包含了 SSL/TLS 實作的詳細範例,並深入探討了影響這些設計選擇的關鍵因素。適合所有網路和安全設計師、企業開發者、系統實施者以及互聯網安全產品和服務的供應商。

Eric Rescorla 是一位專注於系統設計和架構的安全顧問。他是 Secure-HTTP 的兩位設計者之一。在 Terisa Systems,他為 Terisa 的 SecureWeb Toolkit 產品實施了 Secure HTTP、SSL、TLS 和 SET。Rescorla 活躍於許多 IETF 安全工作組,目前是 TLS、HTTP over TLS 和 S/MIME 工作組的作者。

適合的課程

網路 - 進階主題。

目錄

前言。
1. 安全概念。
- 介紹。
- 互聯網威脅模型。
- 參與者。
- 安全的目標。
- 行業工具。
- 整合所有內容。
- 一個簡單的安全消息系統。
- 一個簡單的安全通道。
- 出口情況。
- 真實的密碼演算法。
- 對稱加密:流密碼。
- 對稱加密:區塊密碼。
- 摘要演算法。
- 密鑰建立。
- 數位簽名。
- MACs。
- 密鑰長度。
- 總結。

2. SSL 介紹。
- 介紹。
- 標準和標準組織。
- SSL 概述。
- SSL/TLS 設計目標。
- SSL 和 TCP/IP 套件。
- SSL 歷史。
- 用於網路的 SSL。
- 一切皆可透過 SSL。
- 獲取 SSL。
- 總結。

3. 基本 SSL。
- 介紹。
- SSL 概述。
- 握手。
- SSL 記錄協議。
- 整合各個部分。
- 一個真實的連接。
- 更多連接細節。
- SSL 規範語言。
- 握手消息結構。
- 握手消息。
- 密鑰衍生。
- 記錄協議。
- 警報和關閉。
- 總結。

4. 進階 SSL。
- 介紹。
- 會話恢復。
- 客戶端身份驗證。
- 瞬時 RSA。
- 重新握手。
- 伺服器門控密碼學。
- DSS 和 DH。
- 橢圓曲線密碼套件。
- Kerberos。
- FORTEZZA。
- 到目前為止的故事。
- 會話恢復細節。
- 客戶端身份驗證細節。
- 瞬時 RSA 細節。
- SGC 細節。
- DH/DSS 細節。
- FORTEZZA 細節。
- 錯誤警報。
- SSLv2 向後相容性。
- 總結。

5. SSL 安全性。
- 介紹。
- SSL 提供的內容。
- 保護 master_secret。
- 保護伺服器的私鑰。
- 使用良好的隨機性。
- 檢查證書鏈。
- 演算法選擇。
- 到目前為止的故事。
- master_secret 的妥協。
- 在記憶體中保護秘密。
- 保護伺服器的私鑰。
- 隨機數生成。
- 證書鏈驗證。
- 部分妥協。
- 已知攻擊。
- 時間密碼分析。
- 百萬消息攻擊。
- 小子群攻擊。
- 降級到出口。
- 總結。

6. SSL 性能。
- 介紹。
- SSL 很慢。
- 性能原則。
- 密碼學成本高。
- 會話恢復。
- 握手演算法和密鑰選擇。
- 大量數據傳輸。
- 基本 SSL 性能規則。
- 到目前為止的故事。
- 握手時間分配。
- 正常 RSA 模式。
- 帶有客戶端身份驗證的 RSA。
- 瞬時 RSA。
- DSS/DHE。
- 帶有客戶端身份驗證的 DSS/DHE。
- 使用 DH 的性能改進。
- 記錄處理。
- Java。
- 負載下的 SSL 伺服器。
- 硬體加速。
- 內嵌硬體加速器。
- 網路延遲。
- Nagle 演算法。
- 握手緩衝。
- 進階 SSL 性能規則。
- 總結。

7. 使用 SSL 設計。
- 介紹。
- 知道你想要保護的內容。
- 客戶端身份驗證選項。
- 參考完整性。
- 不當任務。
- 協議選擇。
- 減少握手開銷。
- 設計策略。
- 到目前為止的故事。
- 分開的端口。
- 向上協商。
- 降級攻擊。
- 參考完整性。
- 使用者名稱/密碼身份驗證。
- SSL 客戶端身份驗證。
- 互相使用者名稱/密碼身份驗證。
- 重新握手。
- 次要通道。
- 關閉。
- 總結。

8. 使用 SSL 編碼。
- 介紹。
- SSL 實作。
- 範例程式。
- 上下文初始化。
- 客戶端連接。
- 伺服器接受。
- 簡單的 I/O 處理。
- 使用執行緒的多路複用 I/O。
- 使用 select() 的多路複用 I/O。
- 關閉。
- 會話恢復。
- 缺少什麼?
- 總結。

9. HTTP over SSL。
- 介紹。
- 保護網路。
- HTTP。
- HTML。
- URL。
- HTTP 連接行為。
- 代理伺服器。
- 虛擬主機。
- 協議選擇。
- 客戶端身份驗證。
- 參考完整性。
- HTTPS。
- HTTPS 概述。
- URL 和參考完整性。
- 連接關閉。
- 代理伺服器。
- 虛擬主機。
- 客戶端身份驗證。
- 來源。
- 替代攻擊。
- 升級。
- 編程問題。
- 代理 CONNECT。
- 處理多個客戶端。
- 總結。

10. SMTP over TLS。
- 介紹。
- 互聯網郵件安全。
- 互聯網消息概述。
- SMTP。
- RFC 822 和 MIME。
- 電子郵件地址。
- 郵件中繼。
- 虛擬主機。
- MX 記錄。
- 客戶端郵件訪問。
- 協議選擇。
- 客戶端身份驗證。
- 參考完整性。
- 連接語義。
- STARTTLS。
- STARTTLS 概述。
- 連接關閉。
- 要求 TLS。
- 虛擬主機。
- 安全指標。
- 驗證中繼。
- 發起者身份驗證。
- 參考完整性細節。
- 為什麼不使用 CONNECT?
- STARTTLS 有什麼好處?
- 編程問題。
- 實作 STARTTLS。
- 伺服器啟動。
- 總結。

11. 對比方法。
- 介紹。
- 端到端論點。
- 端到端論點與 SMTP。
- 其他協議。
- IPsec。
- 安全關聯。
- ISAKMP 和 IKE。
- AH 和 ESP。
- 整合所有內容:IPsec。
- IPsec 與 SSL。
- 安全 HTTP。
- CMS。
- 消息格式。
- 密碼選項。
- 整合所有內容:S-HTTP。
- S-HTTP 與 HTTPS。
- S/MIME。
- 基本 S/MIME 格式。
- 僅簽名。
- 演算法選擇。
- 整合所有內容:S/MIME。
- 實作障礙。
- S/MIME 與 SMTP/TLS。
- 選擇適當的解決方案。
- 總結。

附錄 A:範例代碼。
- 第 8 章。
- 範例。
- Java 範例。
- 第 9 章。
- HTTPS 範例。
- mod_ssl 會話快取。

附錄 B:SSLv2。
- 介紹。
- SSLv2 概述。
- 缺失的功能。
- 安全問題。
- PCT。
- SSLv1 怎麼辦?

參考文獻。
索引。