Path: gmdzi!unido!unidui!math.fu-berlin.de!ira.uka.de! sol.ctr.columbia.edu!spool.mu.edu!snorkelwacker.mit.edu! bloom-picayune.mit.edu!athena.mit.edu!burt From: bu...@chirality.rsa.com (Burt Kaliski) Newsgroups: sci.crypt Subject: PKCS: Public-Key Cryptography Standards Message-ID: <BURT.91Jun21152800@chirality.rsa.com> Date: 21 Jun 91 20:28:00 GMT Sender: ne...@athena.mit.edu (News system) Distribution: sci Organization: RSA Data Security, Inc. Lines: 109 RSA Data Security, Inc. is pleased to announce PKCS: Public-Key Cryptography Standards, a suite of standards for public-key cryptography developed jointly with representatives of industry and universities. PKCS covers RSA encryption, Diffie-Hellman key agreement, password-based encryption, extended-certificate syntax, cryptographic enhancement syntax, and private-key information syntax. As public-key cryptography begins to see wide application and acceptance one thing is increasingly clear: If it is going to be as effective as the underlying technology allows it to be, there must be interoperable standards. Even though vendors may agree on the basic public-key techniques, compatibility between implementations is by no means guaranteed. Interoperability requires strict adherence to an agreed-upon standard format for transferred data. PKCS provides such a basis for interoperability. The standards presented here evolved from the following broad design goals: 1. To maintain compatibility with PEM (the Internet Privacy Enhanced Mail standard) wherever possible, at least to the extent of being able to share certificates and to translate encrypted and/or signed messages back and forth between PEM and PKCS. 2. To extend beyond PEM in being able to handle arbitrary binary data (not just ASCII data), to handle a richer set of attributes in (extended) certificates, to handle Diffie-Hellman key agreement, and to handle a richer set of features in digitally signed and enveloped data. 3. To propose a standard suitable for incorporation in future OSI (Open Systems Interconnection) standards. The standards here are based on the use of OSI standard ASN.1 (Abstract Syntax Notation One) and BER (Basic Encoding Rules) to describe and represent data. PKCS describes the syntax for messages in an abstract manner, and gives complete details about algorithms. However, it does not specify how messages are to be represented, though BER is the logical choice. Thus PKCS implementations are free to exchange messages in any manner, depending on character set, record size constraints, and the like, as long as the abstract meaning of the messages can be preserved from sender to recipient. The PKCS standards are offered by RSA Data Security to developers of computer systems employing public-key technology. It is RSA Data Security's intention to improve and refine the standards in conjunction with computer system developers, with the goal of producing standards that most if not all developers adopt. The role of RSA Data Security in the standards-making process is five-fold: 1. Publish carefully written documents describing the standards. 2. Retain sole decision-making authority on what each standard is. This includes arbitrary object identifier choices, etc. 3. Solicit opinions and advice from developers on useful or necessary changes and extensions. 4. Publish revised standards when appropriate. 5. Provide implementation guides and/or reference implementations. The PKCS suite includes the following documents, each of which is available by anonymous ftp from <rsa.com>: RSA Data Security, Inc. PKCS #1: RSA Encryption Standard. Version 1.4, June 1991. (pub/pkcs/pkcs-1.ps) RSA Data Security, Inc. PKCS #3: Diffie-Hellman Key-Agreement Standard. Version 1.3, June 1991. (pub/pkcs/pkcs-3.ps) RSA Data Security, Inc. PKCS #5: Password-Based Encryption Standard. Version 1.4, June 1991. (pub/pkcs/pkcs-5.ps) RSA Data Security, Inc. PKCS #6: Extended-Certificate Syntax Standard. Version 1.4, June 1991. (pub/pkcs/pkcs-6.ps) RSA Data Security, Inc. PKCS #7: Cryptographic Message Syntax Standard. Version 1.4, June 1991. (pub/pkcs/pkcs-7.ps) RSA Data Security, Inc. PKCS #8: Private-Key Information Syntax Standard. Version 1.1, June 1991. (pub/pkcs/pkcs-8.ps) RSA Data Security, Inc. PKCS #9: Selected Attribute Types. Version 1.0, June 1991. (pub/pkcs/pkcs-9.ps) (PKCS #2 and #4 have been superseded by other members of the suite.) Also available are an overview, examples, and a layman's guide to ASN.1, BER and DER: Burton S. Kaliski Jr. An Overview of the PKCS Standards. RSA Data Security, Inc., June 1991. (pub/pkcs/overview.ps) Burton S. Kaliski Jr. Some Examples of the PKCS Standards. RSA Data Security, Inc., June 1991. (pub/pkcs/examples.ps) Burton S. Kaliski Jr. A Layman's Guide to a Subset of ASN.1, BER and DER. RSA Data Security, Inc., June 19 1. (pub/pkcs/layman.ps) Paper copies can be obtained at a nominal charge from PKCS Editor, RSA Data Security, Inc., 10 Twin Dolphin Drive, Redwood City, CA, 94065. Phone: (415) 595-8782.