Re: [pkix] SCEP vs CMC vs CMP

max pritikin <pritikin@cisco.com> Fri, 29 October 2010 17:58 UTC

Return-Path: <pritikin@cisco.com>
X-Original-To: pkix@core3.amsl.com
Delivered-To: pkix@core3.amsl.com
Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id BCCB23A695B for <pkix@core3.amsl.com>; Fri, 29 Oct 2010 10:58:08 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -10.599
X-Spam-Level:
X-Spam-Status: No, score=-10.599 tagged_above=-999 required=5 tests=[BAYES_00=-2.599, RCVD_IN_DNSWL_HI=-8]
Received: from mail.ietf.org ([64.170.98.32]) by localhost (core3.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id mu+YrOIVstcU for <pkix@core3.amsl.com>; Fri, 29 Oct 2010 10:57:58 -0700 (PDT)
Received: from sj-iport-1.cisco.com (sj-iport-1.cisco.com [171.71.176.70]) by core3.amsl.com (Postfix) with ESMTP id 5B67D3A69BC for <pkix@ietf.org>; Fri, 29 Oct 2010 10:57:53 -0700 (PDT)
Authentication-Results: sj-iport-1.cisco.com; dkim=neutral (message not signed) header.i=none
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: AvsEAPeoykyrR7H+/2dsb2JhbAChVHGjLZwbgnSCVASEV4V8gwg
X-IronPort-AV: E=Sophos;i="4.58,260,1286150400"; d="scan'208";a="375773233"
Received: from sj-core-2.cisco.com ([171.71.177.254]) by sj-iport-1.cisco.com with ESMTP; 29 Oct 2010 17:59:37 +0000
Received: from [172.16.1.3] (stealth-10-32-244-67.cisco.com [10.32.244.67]) by sj-core-2.cisco.com (8.13.8/8.14.3) with ESMTP id o9THxalv013914; Fri, 29 Oct 2010 17:59:36 GMT
Message-Id: <66CE792E-5B96-4F71-B7B3-F5C68696644D@cisco.com>
From: max pritikin <pritikin@cisco.com>
To: Paul Hoffman <phoffman@imc.org>
In-Reply-To: <p0624080ac8efd7a3b275@[10.20.30.150]>
Content-Type: text/plain; charset="US-ASCII"; format="flowed"; delsp="yes"
Content-Transfer-Encoding: 7bit
Mime-Version: 1.0 (Apple Message framework v936)
Date: Fri, 29 Oct 2010 12:59:35 -0500
References: <E1PBdoE-0002Hk-Ei@login01.fos.auckland.ac.nz> <p0624080ac8efd7a3b275@[10.20.30.150]>
X-Mailer: Apple Mail (2.936)
Cc: pkix@ietf.org
Subject: Re: [pkix] SCEP vs CMC vs CMP
X-BeenThere: pkix@ietf.org
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: PKIX Working Group <pkix.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/listinfo/pkix>, <mailto:pkix-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/pkix>
List-Post: <mailto:pkix@ietf.org>
List-Help: <mailto:pkix-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/pkix>, <mailto:pkix-request@ietf.org?subject=subscribe>
X-List-Received-Date: Fri, 29 Oct 2010 17:58:09 -0000

Paul is correct. SCEP does not limit certificates to IPSec VPN uses;  
it is just an enrollment protocol. Although it is true that SCEP is  
widely used for IPsec VPN the client is also available on Apple  
iPhones, and a number of CA platforms provide server functionalities.  
What is indisputable is that SCEP is a draft, and the other options  
are RFC documents.

There have been a number of years of 'water under the bridge', perhaps  
now is the time to move forward? I suggest we focus on simplicity and  
unification rather than features or history.

I'd like to bring closure to the SCEP draft. It could be finalized as- 
is, or we could cast SCEP as just a secure transport for a profiled  
CMC using "Simple PKI Messages" -- which are exactly the same as the  
inner pkiMessages used by SCEP. I've drafted text providing references  
and showing why this is a valid perspective (see below). Thus we unify  
that portion of the discussion around a profile of CMC.

Moving forward I suggest we expand on RFC5273, or a new draft, to  
provide a clearer specification of CMC over HTTPS. Where the goal is a  
simple profile of CMC over a secure transport that could be easily  
implemented by a wide number of existing libraries. I have called this  
"CMC over Secure Transport" (CEST) and would be happy to share a copy  
although I've hesitated to submit it -- I do not want to be seen as  
adding a new protocol to the existing mix! The intention of the CEST  
idea is to leverage our combined operational experiences over the last  
number of years resulting in an easy to implement CMC profile.

I can not speak to the request for a CMP comparison. CMP is more  
complex than the requirements I have dealt with. It is worth noting  
that in previous conversations on this list we have discussed that CMP  
Section 6.2 on Root CA Key Update should probably be pulled out into  
an independent document, or otherwise referenced in future documents.

I hope you see these ideas as constructive attempts to find a way  
forward that could be easily implemented by a wide number of existing  
libraries. A profile approach provides an easy to implement enrollment  
for minimal products that can be easily expanded to a full  
implementation when needed.

- max

The following is a rough proposal casting SCEP as a profile of CMC  
over a secure transport. This does not change SCEP at all -- it is  
informative text providing a perspective shift. (The following text is  
NOT in the current SCEP draft but if this approach is makes sense to  
folks it is easy enough to add). Thanks for any comments:

Appendix X

This appendix details how SCEP can provide a secure transport for a  
limited profile of Certificate Management over CMS [RFC5272]. Only the  
"simple PKI Request" and "simple PKI Response" messages are supported.  
A functional certificate management protocol is thus described that is  
appropriate for PKI clients interested in obtaining client  
certificate(s) and associated infrastructure certificate(s) without  
necessitating a full implementation of all CMC [RFC5272] features.

This is consistent with the CMC [RFC5272] protocol specification of  
"simple" messages for clients to use "in the event no other services  
are needed". When using these messages CMC [RFC5272] section 3.1 notes  
that "the Simple PKI Request MUST NOT be used if a proof-of-identity  
needs to be included"; which precludes their use if inline  
authentication and/or authorization is required unless a secured  
transport is also specified. SCEP as such a secure transport is  
described in this appendix. CMC [RFC5272] provides additional  
functionality not included in this profile. For simple clients that  
require only secure certificate enrollment this profile is sufficient.

The SCEP protocol operations are as described in the main body of this  
[SCEP] document. The following clarification are made:

- RFC5273, Section 4 is followed by SCEP, although for  
interoperability with CMC clients have to use the POST method (SCEP  
indicates this as optional).

- When performing the SCEP "PKCSReq" transaction the outgoing  
messageData contains a PKCS#10 (ref CMC section 3.2.1.2.1). This is as  
currently described in the main body of this [SCEP] document.

- When performing the SCEP "PKCSRep" transaction the response contains  
a CMC Simple Enrollment Response. This is a "CMS "certs-only" message"  
which is also equivalent to the SCEP described "certificates-only  
PKCS#7 Signed-data". [Needs to be confirmed; this should be true if  
RFC3852 CMS Section 5.2.1 is followed].

- The SCEP client "MUST understand the Full PKI Response" for full CMC  
compliance. This would be an addition to existing SCEP clients. CMC  
indicates that "A Full PKI Response is always a valid response, but  
for interoperability with downlevel clients a compliant server SHOULD  
use the Simple Enrollment Response whenever possible".

- SCEP libraries mark other SCEP functionalities as deprecated when  
CMC compliance is claimed.

This meets the requirements indicated in CMC section 8.2 for "Minimum  
Conformance Requirements" of RFC 2797 (Obsolete; this section was  
removed in the current document).

On Oct 28, 2010, at 8:46 PM, Paul Hoffman wrote:

> At 2:31 PM +1300 10/29/10, Peter Gutmann wrote:
>> Paul Hoffman <phoffman@imc.org> writes:
>>
>>> SCEP is not your answer. It is narrowly limited to IPsec VPN  
>>> boxes, and a
>>> small subset of that market.
>>
>> Uhh, no it isn't, it was originally designed for that 15?-odd years  
>> ago but
>> it's used all over the place.  The last time I used SCEP was to  
>> provision
>> iPhones from a Microsoft Windows server, neither of which are IPsec  
>> VPN boxes.
>
> Gaaaah. Thanks for the update. :-(
>
> OK, so you still have three sores, ooozing different-colored (elided).
> _______________________________________________
> pkix mailing list
> pkix@ietf.org
> https://www.ietf.org/mailman/listinfo/pkix