Network Security with OpenSSL
Cryptography for Secure Communications
John Viega, Matt Messier, Pravir Chandra
Résumé
Most applications these days are at least somewhat network aware, but how do you protect those applications against common network security threats? Many developers are turning to OpenSSL, an open source version of SSL/TLS, which is the most widely used protocol for secure network communications.
The OpenSSL library is seeing widespread adoption for web sites that require cryptographic functions to protect a broad range of sensitive information, such as credit card numbers and other financial transactions. The library is the only free, full-featured SSL implementation for C and C++, and it can be used programmatically or from the command line to secure most TCP-based network protocols.
Network Security with OpenSSL enables developers to use this protocol much more effectively. Traditionally, getting something simple done in OpenSSL could easily take weeks. This concise book gives you the guidance you need to avoid pitfalls, while allowing you to take advantage of the library's advanced features. And, instead of bogging you down in the technical details of how SSL works under the hood, this book provides only the information that is necessary to use OpenSSL safely and effectively. In step-by-step fashion, the book details the challenges in securing network communications, and shows you how to use OpenSSL tools to best meet those challenges.
As a system or network administrator, you will benefit from the thorough treatment of the OpenSSL command-line interface, as well as from step-by-step directions for obtaining certificates and setting up your own certification authority. As a developer, you will further benefit from the in-depth discussions and examples of how to use OpenSSL in your own programs. Although OpenSSL is written in C, information on how to use OpenSSL with Perl, Python and PHP is also included.
OpenSSL may well answer your need to protect sensitive data. If that's the case, Network Security with OpenSSL is the only guide available on the subject.
Contents
Preface
1. Introduction
Cryptography for the Rest of Us
Overview of SSL
Problems with SSL
What SSL Doesn't Do Well
OpenSSL Basics
Securing Third-Party Software
2. Command-Line Interface
The Basics
Message Digest Algorithms
Symmetric Ciphers
Public Key Cryptography
S/MIME
Passwords and Passphrases
Seeding the Pseudorandom Number
Generator
3. Public Key Infrastructure (PKI)
Certificates
Obtaining a Certificate
Setting Up a Certification
Authority
4. Support Infrastructure
Multithread Support
Internal Error Handling
Abstract Input/Output
Random Number Generation
Arbitrary Precision Math
Using Engines
5. SSL/TLS Programming
Programming with SSL
Advanced Programming with SSL
6. Symmetric Cryptography
Concepts in Symmetric
Cryptography
Encrypting with the EVP API
General Recommendations
7. Hashes and MACs
Overview of Hashes and MACs
Hashing with the EVP API
Using MACs
Secure HTTP Cookies
8. Public Key Algorithms
When to Use Public Key
Cryptography
Diffie-Hellman
Digital Signature Algorithm
(DSA)
RSA
The EVP Public Key Interface
Encoding and Decoding Objects
9. OpenSSL in Other Languages
Net::SSLeay for Perl
M2Crypto for Python
OpenSSL Support in PHP
10. Advanced Programming Topics
Object Stacks
Configuration Files
X.509
PKCS#7 and S/MIME
PKCS#12
Appendix: Command-Line Reference
Index
L'auteur - John Viega
John Viega, Founder and Chief Scientist of Secure Software (www.securesoftware.com), is a well-known security expert, and coauthor of Building Secure Software (Addison-Wesley) and Network Security with OpenSSL (O'Reilly). John is responsible for numerous software security tools, and is the original author of Mailman, the GNU mailing list manager. He holds a B.A. and M.S. in Computer Science from the University of Virginia. Mr. Viega is also an Adjunct Professor of Computer Science at Virginia Tech (Blacksburg, VA) and a Senior Policy Researcher at the Cyberspace Policy Institute, and he serves on the Technical Advisory Board for the Open Web Applications Security Project. He also founded a Washington, D.C. area security interest group that conducts monthly lectures presented by leading experts in the field. He is the author or coauthor of nearly 80 technical publications, including numerous refereed research papers and trade articles.
L'auteur - Matt Messier
Matt Messier, Director of Engineering at Secure Software, is a security authority who has been programming for nearly two decades. Besides coauthoring Network Security with OpenSSL, Matt coauthored the Safe C String Library, RATS, and EGADS, an Entropy Gathering and Distribution System used for securely seeding pseudo-random number generators. Prior to joining Secure Software, Matt worked for IBM and Lotus, on source and assembly level debugging techniques, and operating system concepts.
Caractéristiques techniques
PAPIER | |
Éditeur(s) | O'Reilly |
Auteur(s) | John Viega, Matt Messier, Pravir Chandra |
Parution | 12/07/2002 |
Nb. de pages | 368 |
Format | 18 x 23,5 |
Couverture | Broché |
Poids | 600g |
Intérieur | Noir et Blanc |
EAN13 | 9780596002701 |
ISBN13 | 978-0-596-00270-1 |
Avantages Eyrolles.com
Nos clients ont également acheté
Consultez aussi
- Les meilleures ventes en Graphisme & Photo
- Les meilleures ventes en Informatique
- Les meilleures ventes en Construction
- Les meilleures ventes en Entreprise & Droit
- Les meilleures ventes en Sciences
- Les meilleures ventes en Littérature
- Les meilleures ventes en Arts & Loisirs
- Les meilleures ventes en Vie pratique
- Les meilleures ventes en Voyage et Tourisme
- Les meilleures ventes en BD et Jeunesse
- Informatique Informatique d'entreprise Conception et développement web Intranet et portails
- Informatique Informatique d'entreprise Conception et développement web Commerce électronique
- Informatique Développement d'applications Conception et développement web Commerce électronique
- Entreprise & Droit Marketing et vente Marketing stratégique - Marketing direct