Subject: I-D ACTION:draft-ietf-smime-examples-11.txt

From: [email-masked]
Date: Wed, 02 Jul 2003 06:56:53 -0400

A New Internet-Draft is available from the on-line Internet-Drafts directories.
This draft is a work item of the S/MIME Mail Security Working Group of the IETF.

	Title		: Examples of S/MIME Messages
	Author(s)	: P. Hoffman
	Filename	: draft-ietf-smime-examples-11.txt
	Pages		: 8
	Date		: 2003-7-1
	
This document gives examples of message bodies formatted using S/MIME.
Specifically, it has examples of Cryptographic Message Syntax (CMS)
objects, S/MIME messages (including the MIME formatting), and Enhanced
Security Services for S/MIME (ESS). It includes examples of most or all
common CMS and ESS formats; in addition, it gives examples that show
common pitfalls in implementing CMS. The purpose of this document is to
help increase interoperability for S/MIME and other protocols that rely
on CMS.
This draft is being discussed on the 'ietf-smime' mailing list.  To
join the list, send a message to <[email-masked]> with the
single word 'subscribe' in the body of the message.  Also, there is a
Web site for the mailing list at <http://www.imc.org/ietf-smime/>.

This draft is being discussed on the 'ietf-smime' mailing list.  To
join the list, send a message to <[email-masked]> with the
single word 'subscribe' in the body of the message.  Also, there is a
Web site for the mailing list at <http://www.imc.org/ietf-smime/>.

A URL for this Internet-Draft is:
http://www.ietf.org/internet-drafts/draft-ietf-smime-examples-11.txt

To remove yourself from the IETF Announcement list, send a message to 
ietf-announce-request with the word unsubscribe in the body of the message.

Internet-Drafts are also available by anonymous FTP. Login with the username
"anonymous" and a password of your e-mail address. After logging in,
type "cd internet-drafts" and then
	"get draft-ietf-smime-examples-11.txt".

A list of Internet-Drafts directories can be found in
http://www.ietf.org/shadow.html 
or ftp://ftp.ietf.org/ietf/1shadow-sites.txt

Internet-Drafts can also be obtained by e-mail.

Send a message to:
	[email-masked].
In the body type:
	"FILE /internet-drafts/draft-ietf-smime-examples-11.txt".
	
NOTE:	The mail server at ietf.org can return the document in
	MIME-encoded form by using the "mpack" utility.  To use this
	feature, insert the command "ENCODING mime" before the "FILE"
	command.  To decode the response(s), you will need "munpack" or
	a MIME-compliant mail reader.  Different MIME-compliant mail readers
	exhibit different behavior, especially when dealing with
	"multipart" MIME messages (i.e. documents which have been split
	up into multiple messages), so check your local documentation on
	how to manipulate these messages.

Below is the data which will enable a MIME compliant mail reader
implementation to automatically retrieve the ASCII version of the
Internet-Draft.

---

From: Paul Hoffman / IMC <[email-masked]>
Date: Wed, 2 Jul 2003 08:44:28 -0700

Hi again. The -11 draft has the following changes:
5.1.bin
5.3.bin
5.4.bin
5.6.bin
5.7.bin
5.10.bin
8.2.bin
11.1.bin
11.2.bin

It would be great if everyone who has tested can re-test with these 
new examples.

BTW, I forgot to change the title of 6.3 to say RC2/128, and will do 
so in the -12 draft. (Just to be sure, I have already started the -12 
draft so I don't space out again...)

I would like to update the chart below for the -11 draft soon so we 
can move it to IETF last call.

======================================

Status of the examples in -10

4. Trivial Examples

4.1 ContentInfo with Data type, BER
   John Pawling: tested OK.
   Jim Schaad: tested OK.
   Jeff Jacoby: tested OK.
   Holger Ebel: tested OK.

4.2 ContentInfo with Data type, DER
   John Pawling: tested OK.
   Jim Schaad: tested OK.
   Jeff Jacoby: tested OK.
   Holger Ebel: tested OK.

5.  Signed-data
   Jim Schaad pointed out that many examples had the
     signatureAlgorithm of 1.2.840.10040.4.1 (dsa) but it should instead
     be 1.2.840.10040.4.3 (dsaWithSha1).
   The general decision was that the examples should have dsaWithSha1.
   John Pawling and Sue Beauchamp at DigitalNet agreed to re-generate
     the examples.

5.1 Basic signed content, DSS
   John Pawling: tested OK.
   Blake Ramsdell: tested OK.
   Jim Schaad: failed.
     signatureAlgorithm is dsa but should be dsaWithSha1
   Holger Ebel: tested OK.
   Sue Beauchamp sent new example file.

5.2 Basic signed content, RSA
   John Pawling: tested OK.
   Blake Ramsdell: tested OK.
   Jim Schaad: tested OK.
   Jeff Jacoby: tested OK.
   Holger Ebel: tested OK.

5.3 Basic signed content, detached content
   John Pawling: tested OK.
   Blake Ramsdell: tested OK.
   Jim Schaad: failed.
	Contains Alice's RSA certificate
	No content hint unsigned attribute
     signatureAlgorithm is dsa but should be dsaWithSha1
   Jeff Jacoby: tested OK.
   Holger Ebel: tested OK.
   Sue Beauchamp sent new example file.

5.4 Fancier signed content
   John Pawling: tested OK.
   Blake Ramsdell: tested OK.
   Jeff Jacoby: tested OK.
   Holger Ebel: tested OK.
     Countersigner is Alice, not Diane
     No content hint
   Sue Beauchamp sent new example file.

5.5 All RSA signed message
   John Pawling: tested OK.
   Blake Ramsdell: tested OK.
   Jim Schaad: tested OK.
   Jeff Jacoby: tested OK.
   Holger Ebel: tested OK.

5.6 Multiple signers
   John Pawling: tested OK.
   Blake Ramsdell: tested OK.
   Jim Schaad: failed.
     signatureAlgorithm is dsa but should be dsaWithSha1
   Holger Ebel: tested OK.
   Sue Beauchamp sent new example file.

5.7 Signing using SKI
   John Pawling: tested OK.
   Blake Ramsdell: tested OK.
   Jim Schaad: failed.
     signatureAlgorithm is dsa but should be dsaWithSha1
   Holger Ebel: tested OK.
   Sue Beauchamp sent new example file.

5.8 S/MIME multipart/signed message
   John Pawling: tested OK.
   Blake Ramsdell: tested OK.
   Holger Ebel: tested OK except that it has a CRLF prepended.

5.9 S/MIME application/pkcs7-mime signed message
   John Pawling: tested OK.
   Blake Ramsdell: tested OK.
   Jim Schaad: failed because signatureAlgorithm of dsa not dsaWithSha1
   Holger Ebel: tested OK except that it has a CRLF prepended.

5.10 SignedData With Attributes
   John Pawling: tested OK.
   Blake Ramsdell: tested OK.
   Jim Schaad: failed.
	Change "unknown OID" to "unknown OID (1.2.5555)"
	Content Hint should have an OID of 1.2.840.113549.1.7.1
	Content Identifier attribute absent
	Contains Security Label attribute
	Contains encrypt key preference attribute
	Contains ML Expansion History attribute
	Contains Equivalent Label attribute
   Jeff Jacoby: tested OK.
   Holger Ebel: failed (not signed by Alice).

5.11 SignedData with Certificates Only
   John Pawling: tested OK.
   Blake Ramsdell: tested OK.
   Jeff Jacoby: tested OK.
   Holger Ebel: tested OK.

6.  Enveloped-data

6.1 Basic encrypted content, TripleDES and DH
   John Pawling: tested OK.
   Holger Ebel: tested OK.

6.2 Basic encrypted content, TripleDES and RSA
   John Pawling: tested OK.
   Blake Ramsdell: tested OK.
   Jeff Jacoby: tested OK.
   Holger Ebel: tested OK.

6.3 Basic encrypted content, RC2/40 and RSA
   Blake Ramsdell: this is actually a 128-bit key.
   Jeff Jacoby: confirmed Blake's assertion.
   Paul Hoffman: thinks we could just change the title of the example.
   John Pawling: tested OK.
   Blake Ramsdell: tested OK.
   Jeff Jacoby: tested OK.
   Holger Ebel: tested OK.

6.4 Encrypted content, two recipients, no shared keying material
   John Pawling: tested OK but noted unsuccessful Invalid tag for
     privateKeyInfo for second login.
   Holger Ebel: tested OK.

6.5 Encrypted content, two recipients, shared keying material
   John Pawling: could not test due to bug in his code.
   Holger Ebel: tested OK.

6.6 Encrypted content, TripleDES and DH, previously-distributed keys
   John Pawling: tested OK.
   Holger Ebel: tested OK.

6.7 Encrypted content, RC2/40 and RSA, previously-distributed keys
   John Pawling: tested OK.
   Holger Ebel: tested OK.

6.8 S/MIME application/pkcs7-mime encrypted message
   John Pawling: tested OK.
   Holger Ebel: tested OK.

6.9 EnvelopedData with All Recipient Types
   John Pawling: tested OK.
   Holger Ebel: tested OK.

6.10 EnvelopedData with KARI RC2 Encryption
   John Pawling: tested OK.
   Holger Ebel: tested OK.

6.11 EnvelopedData with KEK 3DES Encryption
   John Pawling: tested OK.
   Holger Ebel: tested OK.

7. Digested-data
   Blake Ramsdell: tested OK.
   Jeff Jacoby: tested OK.

8. Encrypted-data

8.1 Simple EncryptedData
   Blake Ramsdell: tested OK.
   Jim Schaad: tested OK.
   Jeff Jacoby: tested OK.

8.2 EncryptedData with unprotected attributes
   Jim Schaad: failed badly.
     The key is not in the text and it is not the same as 8.1
	The encapsulated content type is EncryptedData not id-data
	The content hint content type does not match the encapsulated 
content type

9. Authenticated-data
   There are still no examples in this section.

10. Key Wrapping
   John Pawling: tested OK.

10.1 Wrapping RC2
   John Pawling: tested OK.

10.2 Wrapping TripleDES
   John Pawling: tested OK.
   Holger Ebel: tested OK.

11. ESS Examples

11.1 ReceiptRequest
   John Pawling: test failed, has sent new example file.
   Jeff Jacoby: tested OK.

11.2 Receipt
   John Pawling: test failed, has sent new example file.

11.3 eSSSecurityLabel
   John Pawling: tested OK.
   Jim Schaad: tested OK.
   Jeff Jacoby: tested OK.

11.4 EquivalentLabels
   John Pawling: tested OK.
   Jeff Jacoby: tested OK.

11.5 mlExpansionHistory
   John Pawling: tested OK.
   Jeff Jacoby: tested OK.

11.6 SigningCertificate
   John Pawling: tested OK.
   Jeff Jacoby: tested OK.

--Paul Hoffman, Director
--Internet Mail Consortium

---

From: "Blake Ramsdell" <[email-masked]>
Date: Mon, 14 Jul 2003 04:04:19 -0700

> -----Original Message-----
> From: [email-masked] 
> [mailto:[email-masked]] On Behalf Of Paul Hoffman / IMC
> Sent: Wednesday, July 02, 2003 8:44 AM
> To: [email-masked]; [email-masked]
> Subject: Status of the examples draft
> 

The comments that I posted regarding the -10 draft stand for the -11
draft, and I have included them below for completeness.

The only thing that I've had trouble with so far is 5.6.bin appears to
have changed the order of the SignerInfos.  I don't believe that this
change is relevant, so I don't think there needs to be any modification
of the draft.

The files I have worked with:

5.1.bin -- Identified as a CMS SignedData with signatures and content,
checked certificates were present, matched content to ExContent.bin,
verified one signer

5.2.bin -- Checked certificates were present, matched content to
ExContent.bin, verified one signer

5.3.bin -- Identified as a CMS SignedData with signatures and no
content, checked certificates were present, verified one signer against
external content in ExContent.bin

5.4.bin -- Extracted signing time attribute, checked certificates were
present, checked CRLs were present, matched content to ExContent.bin,
verified one signer

5.5.bin -- Checked certificates were present, matched content to
ExContent.bin, verified one signer

5.6.bin -- Checked certificates were present, matched content to
ExContent.bin, verified two signers

5.7.bin -- Checked certificates were present, matched content to
ExContent.bin, verified one signer

5.8.eml -- Parsed content with MIME parser, matched extracted text
content from text part to ExContent.bin, checked certificates were
present, verified one signer against first part of message, identified
as a CMS SignedData with signatures and no content

5.9.eml -- Parsed content with MIME parser, matched extracted text
content from text part to ExContent.bin, checked certificates were
present, verified one signer, identified as a CMS SignedData with
signatures and content

5.10.bin -- Matched content to ExContent.bin, verified one signer

5.11.bin -- Identified as a CMS SignedData with no signatures and no
content, checked certificates were present

6.2.bin -- Decrypted message, matched content to ExContent.bin,
identified as a CMS EnvelopedData

6.3.bin -- Decrypted message, matched content to ExContent.bin

7.0.bin -- Verified hash, matched content to ExContent.bin

8.1.bin -- Decrypted data with given key, matched content to
ExContent.bin

I also worked with the following certificates and private keys:

AliceDSSSignByCarlNoInherit.cer
AlicePrivRSASign.pri
AliceRSASignByCarl.cer
BobPrivRSAEncrypt.pri
BobRSASignByCarl.cer
CarlDSSCRLForAll.crl
CarlDSSSelf.cer
CarlPrivDSSSign.pri
CarlPrivRSASign.pri
CarlRSASelf.cer
DianeDHEncryptByCarl.cer
DianeDSSSignByCarlInherit.cer
DianePrivRSASignEncrypt.pri
DianeRSASignByCarl.cer
EricaDHEncryptByCarl.cer

Blake