Another day another edition. I realized that the IntegerDataType was actually creating BigIntegers in java since it was of type xs:integer and hence have changed it to xs:int to more reflect what we need. And I have also renamed it to intDataType to be in line with the longDataType used for counters. The OCRA example was also corrected and someFrom keyprov-bounces at ietf.org Wed Jul 9 07:39:20 2008 Return-Path: <keyprov-bounces at ietf.org> X-Original-To: keyprov-archive at optimus.ietf.org Delivered-To: ietfarch-keyprov-archive at core3.amsl.com Received: from [127.0.0.1] (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id 4FE823A6A9B; Wed, 9 Jul 2008 07:39:20 -0700 (PDT) X-Original-To: keyprov at core3.amsl.com Delivered-To: keyprov at core3.amsl.com Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id 772CD28C135 for <keyprov at core3.amsl.com>; Wed, 9 Jul 2008 07:39:18 -0700 (PDT) X-Virus-Scanned: amavisd-new at amsl.com X-Spam-Flag: NO X-Spam-Score: 0 X-Spam-Level: X-Spam-Status: No, score=x tagged_above=-999 required=5 tests=[] 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 O83aeHZ46QRD for <keyprov at core3.amsl.com>; Wed, 9 Jul 2008 07:39:18 -0700 (PDT) Received: from frhub1.activcard.fr (frhub1.activcard.fr [91.151.120.133]) by core3.amsl.com (Postfix) with ESMTP id 13B293A68EE for <keyprov at ietf.org>; Wed, 9 Jul 2008 07:39:15 -0700 (PDT) Received: from sur-corp-ex-02.corp.ad.activcard.com (sur-corp-ex-02.corp.ad.activcard.com [192.168.33.40]) by frhub1.activcard.fr (Postfix) with ESMTP id 72BC125ED48; Wed, 9 Jul 2008 16:39:26 +0200 (CEST) X-MimeOLE: Produced By Microsoft Exchange V6.5 Content-class: urn:content-classes:message MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="----_=_NextPart_001_01C8E1D1.932FA6E8" Date: Wed, 9 Jul 2008 16:39:21 +0200 Message-ID: <5BFE9E473DBFC24CA87F18F29B3F0AC40203F164 at sur-corp-ex-02.corp.ad.activcard.com> In-Reply-To: <5BFE9E473DBFC24CA87F18F29B3F0AC40203F159 at sur-corp-ex-02.corp.ad.activcard.com> X-MS-Has-Attach: yes X-MS-TNEF-Correlator: Thread-Topic: [KEYPROV] [pskc] Latest draft of PSKC - no more name value pairs Thread-Index: Acihb52vIXPZfM+dQBGaWxrT4r5ocAAVy7xQAHs9/BAAB0GJoAAC0jWgARViyUAASBMeYAFfxKKAAAGFK/UAAAvvgANQaPGwAZRV6yADujT6IAG6oWTwATCmQMAA+mvdEAA5sAPg References: <9ED76AB595E4944BB33D8998DE448D110160C92D at CORPUSMX10B.corp.emc.com><5BFE9E473DBFC24CA87F18F29B3F0AC40203F0D3 at sur-corp-ex-02.corp.ad.activcard.com><5BFE9E473DBFC24CA87F18F29B3F0AC40203F105 at sur-corp-ex-02.corp.ad.activcard.com> <5BFE9E473DBFC24CA87F18F29B3F0AC40203F12D at sur-corp-ex-02.corp.ad.activcard.com> <5BFE9E473DBFC24CA87F18F29B3F0AC40203F159 at sur-corp-ex-02.corp.ad.activcard.com> From: "Philip Hoyer" <philip.hoyer at actividentity.com> To: "Pei, Mingliang" <mpei at verisign.com>, <SMachani at diversinet.com>, "Hannes Tschofenig" <Hannes.Tschofenig at gmx.net>, "Hallam-Baker, Phillip" <pbaker at verisign.com>, <robert.philpott at rsa.com>, <andrea.doherty at rsa.com> Cc: keyprov at ietf.org Subject: Re: [KEYPROV] [pskc] Latest draft of PSKC - no more name value pairs X-BeenThere: keyprov at ietf.org X-Mailman-Version: 2.1.9 Precedence: list List-Id: "Provisioning of Symmetric Keys \(keyprov\)" <keyprov.ietf.org> List-Unsubscribe: <https://www.ietf.org/mailman/listinfo/keyprov>, <mailto:keyprov-request at ietf.org?subject=unsubscribe> List-Archive: <http://www.ietf.org/pipermail/keyprov> List-Post: <mailto:keyprov at ietf.org> List-Help: <mailto:keyprov-request at ietf.org?subject=help> List-Subscribe: <https://www.ietf.org/mailman/listinfo/keyprov>, <mailto:keyprov-request at ietf.org?subject=subscribe> Sender: keyprov-bounces at ietf.org Errors-To: keyprov-bounces at ietf.org This is a multi-part message in MIME format.Title: Re: [KEYPROV] [pskc] Latest draft of PSKC
|
Another day another edition. I realized that the IntegerDataType was
actually creating BigIntegers in java since it was of type xs:integer and hence
have changed it to xs:int to more reflect what we need. And I have also renamed
it to intDataType to be in line with the longDataType used for counters. The OCRA example was also corrected and
some nits from Sean Turner abut different spelling of crypto modules in the use
cases. Please find attached the latest work in
progress draft and related schema after
the additions that address Robert Philpott’s latest comments (if they
resulted in changes to existing changes from draft -04 they have been
prefixed [UPDATE]), TODOs:
Changes
made from version 4 are:
[Update] Extension points: Changed to model proposed by Rob Philpott
declaring a new type: <xs:complexType name="ExtensionsType">
<xs:sequence>
<xs:any namespace="##other" processContents="lax" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute name="definition" type="xs:anyURI"
<xs:sequence>
<xs:any namespace="##other" processContents="lax" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute name="definition" type="xs:anyURI" use="optional"/> </xs:complexType> Which has been added as “<xs:element name="Extensions" type="pskc:ExtensionsType" minOccurs="0" maxOccurs="unbounded"/>” To:
Please NOTE that KeyData still has the existing
“<xs:any namespace="##other" minOccurs="0" maxOccurs="unbounded"/>” Because of the special nature of the
KeyData element and subelements PINUsageMode too maintains the existing
“<xs:any namespace="##other" minOccurs="0" maxOccurs="unbounded"/>” Being an extensible enumeration Added a ‘<xs:anyAttribute
namespace="##other"/>’ to:
<xs:attribute name="OTP" type="xs:boolean"
default="false"/>
<xs:attribute name="CR" type="xs:boolean"
default="false"/>
<xs:attribute name="Integrity" type="xs:boolean"
default="false"/>
<xs:attribute name="Encrypt" type="xs:boolean"
default="false"/>
<xs:attribute name="Unlock" type="xs:boolean"
default="false"/> ="##other" minOccurs="0" maxOccurs="unbounded"/>” Being an extensible enumeration Added a ‘<xs:anyAttribute
namespace="##other"/>’ to:
<xs:attribute name="OTP" type="xs:boolean"
default="false"/>
<xs:attribute name="CR" type="xs:boolean"
default="false"/>
<xs:attribute name="Integrity" type="xs:boolean"
default="false"/>
<xs:attribute name="Encrypt" type="xs:boolean"
default="false"/>
<xs:attribute name="Unlock" type="xs:boolean"
default="false"/>
So I thought it would be wise to be able to extend this Outstanding
issues that need to be discussed:
Philip From:
andrea.doherty at rsa.com [mailto:andrea.doherty at rsa.com]
So I thought it would be wise to be able to extend this Outstanding
issues that need to be discussed:
Philip From:
andrea.doherty at rsa.com [mailto:andrea.doherty at rsa.com] Here is Philip Hoyer's response
to Rob's comments (see below), which we initially handled offline, and
then we decided it would be better to further the discussion on the mailing
list. -- Andrea [PH] good point I was
thinking that xs:Id for KeyPropertiesId could be a good choice The KeyId on
the other hand is not really used to be referred to. Do you think it would be
better to use xs:ID for this aswell? And in case we use it now is it backwards
compatible to what we have?
[PH] valid comment and I
will think we should add this [PH] agreed [PH] so basically you are saying that any
high level entity (Key, Device, KeyContainer etc) should have an ID that is
xs:ID? The thought of DeviceId was to aggregate under a specific type the
elements that comprise the compound key to look up the device Here is Philip Hoyer's response
to Rob's comments (see below), which we initially handled offline, and
then we decided it would be better to further the discussion on the mailing
list. -- Andrea [PH] good point I was
thinking that xs:Id for KeyPropertiesId could be a good choice The KeyId on
the other hand is not really used to be referred to. Do you think it would be
better to use xs:ID for this aswell? And in case we use it now is it backwards
compatible to what we have?
[PH] valid comment and I
will think we should add this [PH] agreed [PH] so basically you are saying that any
high level entity (Key, Device, KeyContainer etc) should have an ID that is
xs:ID? The thought of DeviceId was to aggregate under a specific type the
elements that comprise the compound key to look up the device
[PH] agreed I think we
should add an xs:any [PH] this has been
extensively discussed at IETF and there are pros and cons for all approaches.
The pro’s of the name value approach is that it will be re-usable for the
ASN.1 spec and that we will have a semantic registry defined by IANA.
[PH] this has been
extensively discussed. And we opted for the name value pair approach. This mean
that all elements in Data can be parsed in the same manner and individually be
encrypted or not. There will be a centralized semantic registry by IANA, etc
[PH] why do you say that,
the name could be also be a namespace for an wholly encrypted or base64 encoded
XML sub node. I see your point though in terms of parsing here. Could you give
me an example of what you had in mind since we have considered quite a few use
cases and not come across the requirement for grouped extensions.
[PH] agreed I think we
should add an xs:any [PH] this has been
extensively discussed at IETF and there are pros and cons for all approaches.
The pro’s of the name value approach is that it will be re-usable for the
ASN.1 spec and that we will have a semantic registry defined by IANA.
[PH] this has been
extensively discussed. And we opted for the name value pair approach. This mean
that all elements in Data can be parsed in the same manner and individually be
encrypted or not. There will be a centralized semantic registry by IANA, etc
[PH] why do you say that,
the name could be also be a namespace for an wholly encrypted or base64 encoded
XML sub node. I see your point though in terms of parsing here. Could you give
me an example of what you had in mind since we have considered quite a few use
cases and not come across the requirement for grouped extensions.
[PH] using xs:string for
plainvalue was discussed during the last IETF meeting (I personally am in favor
of it) but Sean Turner and the rest of the people did not see much value in it.
If we use string we will need to deice for specific data elements what the
encoding rules are. For example do we say for 8 byte unsigned int to encode
just string e.g. ‘60’ or leading 0 examples ‘00000060’.
I would appreciate your thoughts on this. Also how would we encode binary data
in string form base64 encoded?
[PH] agreed and see
answer above
[PH] if you are referring
to the fact that ‘<xs:attribute name="PINKeyId"
type="xs:string" use="required"/>’ is set to
required I agree with you. We should set this to ‘optional’. I do
not agree with your 90% use case analysis since the main use cases I have come
across where to transmit the initial random pin for PINPads tokens within the
same PSKC document from manufacturing to the validation server.
[PH] using xs:string for
plainvalue was discussed during the last IETF meeting (I personally am in favor
of it) but Sean Turner and the rest of the people did not see much value in it.
If we use string we will need to deice for specific data elements what the
encoding rules are. For example do we say for 8 byte unsigned int to encode
just string e.g. ‘60’ or leading 0 examples ‘00000060’.
I would appreciate your thoughts on this. Also how would we encode binary data
in string form base64 encoded?
[PH] agreed and see
answer above
[PH] if you are referring
to the fact that ‘<xs:attribute name="PINKeyId"
type="xs:string" use="required"/>’ is set to
required I agree with you. We should set this to ‘optional’. I do
not agree with your 90% use case analysis since the main use cases I have come
across where to transmit the initial random pin for PINPads tokens within the
same PSKC document from manufacturing to the validation server.
[PH] I agree we need to
make PINPolicy extensible and not put stuff into the Data elements of the
PINKey. Are there any other elements that you know of we should include now and
not just as an xs:any extension?
<Key
KeyId="07552252661"
KeyAlgorithm="http://www.ietf.org/keyprov/pskc#pin">
<Usage>
<ResponseFormat Length="4" Format="DECIMAL"/> olicy information IS NOT a key. [PH] I agree we need to
make PINPolicy extensible and not put stuff into the Data elements of the
PINKey. Are there any other elements that you know of we should include now and
not just as an xs:any extension?
<Key
KeyId="07552252661"
KeyAlgorithm="http://www.ietf.org/keyprov/pskc#pin">
<Usage>
<ResponseFormat Length="4" Format="DECIMAL"/>
<Data Name="SECRET">
<PlainValue>MTIzNA==</PlainValue>
</Data> </Key> [PH] I see your point. If we make PINKeyId optional as in the
comment above you can have a common PINPolicy as part of the shared
KeyProperties. I believe that would serve your purpose.
[PH] agreed, will change
<Data Name="SECRET">
<PlainValue>MTIzNA==</PlainValue>
</Data> </Key> [PH] I see your point. If we make PINKeyId optional as in the
comment above you can have a common PINPolicy as part of the shared
KeyProperties. I believe that would serve your purpose.
[PH] agreed, will change
|
Attachment:
keyprov-pskc-1.0_draft-05_wip_PH_090708.xsd
Description: keyprov-pskc-1.0_draft-05_wip_PH_090708.xsd
Attachment:
keyprov-pskc-1.0_draft-05_wip_PH_090708.xsd
Description: keyprov-pskc-1.0_draft-05_wip_PH_090708.xsd
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type='text/xsl' href='rfc2629.xslt' ?>
<!DOCTYPE rfc SYSTEM "rfc2629.dtd" [
<!ENTITY rfc2119 PUBLIC ''
'httrBOÎ?[[Y[??[YOH?^[?Ú[Û?È?\OH?ÚØÎ?^[?Ú[Û?Õ\H?Z[?ØØÝ\?ÏH??X^ØØÝ\?ÏH?[??Ý[?Y?Ï?B?BOÞÎ?Ù\]Y[?ÙO?B?OÞÎ?ÛÛ\^\O?B?OÎ?ÛÛ\^\H?[YOH?]?XÙU\H??B?BOÎ?Ù\]Y[?ÙO?B?BBOÎ?[[Y[??[YOH?]?XÙR[??È?\OH?ÚØÎ?]?XÙR[??Õ\H?Z[?ØØÝ\?ÏH??Ï?B?BBOÎ?[[Y[??[YOH?Ù^H?\OH?ÚØÎ?Ù^U\H?X^ØØÝ\?ÏH?[??Ý[?Y?Ï?B?BBOÎ?[[Y[??[YOH?\Ù\?Y?\OH?Î?Ý?[?È?Z[?ØØÝ\?ÏH??Ï?B?BBOÎ?[[Y[??[YOH?^[?Ú[Û?È?\OH?ÚØÎ?^[?Ú[Û?Õ\H?Z[?ØØÝ\?ÏH??X^ØØÝ\?ÏH?[??Ý[?Y?Ï?B?BOÞÎ?Ù\]Y[?ÙO?B?OÞÎ?ÛÛ\^\O?B?OÎ?ÛÛ\^\H?[YOH?\ØYÙU\H??B?BOÎ?Ù\]Y[?ÙO?B?BBOÎ?[[Y[??[YOH?Ú[[?ÙQ?Ü?X]?Z[?ØØÝ\?ÏH???B?BBBOÎ?ÛÛ\^\O?B?BBBBOÎ?]?X?]H?[YOH??Ü?X]?\OH?ÚØÎ??[YQ?Ü?X]\H?\ÙOH??\]Z\?Y?Ï?B?BBBBOÎ?]?X?]H?[YOH?Z[??\OH?Î?[?ÚYÛ?Y[??\ÙOH??\]Z\?Y?Ï?B?BBBBOÎ?]?X?]H?[YOH?X^?\OH?Î?[?ÚYÛ?Y[??\ÙOH??\]Z\?Y?Ï?B?BBBBOÎ?]?X?]H?[YOH?ÚXÚÑYÚ]È?\OH?Î??ÛÛX[??Y?][H??[ÙH?Ï?B?BBBOÞÎ?ÛÛ\^\O?B?BBOÞÎ?[[Y[??B?BBOÎ?[[Y[??[YOH??\ÜÛ?ÙQ?Ü?X]??B?BBBOÎ?ÛÛ\^\O?B?BBBBOÎ?]?X?]H?[YOH??Ü?X]?\OH?ÚØÎ??[YQ?Ü?X]\H?\ÙOH??\]Z\?Y?Ï?B?BBBBOÎ?]?X?]H?[YOH?[?Ý?\OH?Î?[?ÚYÛ?Y[??\ÙOH??\]Z\?Y?Ï?B?BBBBOÎ?]?X?]H?[YOH?ÚXÚÑYÚ]È?\OH?Î??ÛÛX[??Y?][H??[ÙH?Ï?B?BBBOÞÎ?ÛÛ\^\O?B?BBOÞÎ?[[Y[??B?BBOÎ?[[Y[??[YOH?^[?Ú[Û?È?\OH?ÚØÎ?^[?Ú[Û?Õ\H?Z[?ØØÝ\?ÏH??X^ØØÝ\?ÏH?[??Ý[?Y?Ï?B?BOÞÎ?Ù\]Y[?ÙO?B?BOÎ?]?X?]H?[YOH?Õ?\OH?Î??ÛÛX[??Y?][H??[ÙH?Ï?B?BOÎ?]?X?]H?[YOH?Ô??\OH?Î??ÛÛX[??Y?][H??[ÙH?Ï?B?BOÎ?]?X?]H?[YOH?[?YÜ?]H?\OH?Î??ÛÛX[??Y?][H??[ÙH?Ï?B?BOÎ?]?X?]H?[YOH?[?Ü?\?\OH?Î??ÛÛX[??Y?][H??[ÙH?Ï?B?BOÎ?]?X?]H?[YOH?[?ØÚÈ?\OH?Î??ÛÛX[??Y?][H??[ÙH?Ï?B?BOÎ?[?P]?X?]H?[Y\ÜXÙOH?ÈÛÝ\??Ï?B?OÞÎ?ÛÛ\^\O?B?OÎ?ÛÛ\^\H?[YOH?^[?Ú[Û?Õ\H??B?BOÎ?Ù\]Y[?ÙO?B?BBOÎ?[?H?[Y\ÜXÙOH?ÈÛÝ\???ØÙ\ÜÐÛÛ?[?ÏH?^?X^ØØÝ\?ÏH?[??Ý[?Y?Ï?B?BOÞÎ?Ù\]Y[?ÙO?B?BOÎ?]?X?]H?[YOH?Y?[?][Û??\OH?Î?[?UT?H?\ÙOH?Ü[Û?[?Ï?B?OÞÎ?ÛÛ\^\O?B?OÎ?Ú[\U\H?[YOH?Ù^P[ÛÜ?]U\H??B?BOÎ??\Ý?XÝ[Û??\ÙOH?Î?[?UT?H?Ï?B?OÞÎ?Ú[\U\O?B?OÎ?Ú[\U\H?[YOH??[YQ?Ü?X]\H??B?BOÎ??\Ý?XÝ[Û??\ÙOH?Î?Ý?[?È??B?BBOÎ?[?[Y\?][Û??[YOH?PÒSPS?Ï?B?BBOÎ?[?[Y\?][Û??[YOH?VQPÒSPS?Ï?B?BBOÎ?[?[Y\?][Û??[YOH?SS?SQT?PÈ?Ï?B?BBOÎ?[?[Y\?][Û??[YOH??TÑM??Ï?B?BBOÎ?[?[Y\?][Û??[YOH??S?T?H?Ï?B?BOÞÎ??\Ý?XÝ[Û??B?OÞÎ?Ú[\U\O?B?OÎ?[[Y[??[YOH?Ù^PÛÛ?Z[?\??\OH?ÚØÎ?Ù^PÛÛ?Z[?\?\H?Ï?B?ÞÎ?ØÚ[XO?B<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type='text/xsl' href='rfc2629.xslt' ?>
<!DOCTYPE rfc SYSTEM "rfc2629.dtd" [
<!ENTITY rfc2119 PUBLIC ''
輽ᵰ¹É?ͽÕÉ??¹½É?½ÁÕ?±¥?½É??½?¥?áµ°½É???É?¹??¹I¸ÈÄÄä¹áµ°?ø4)tø4(ñÉ?????Ñ??½Éäô?ÍÑ???¥ÁÈô??Õ±°ÌäÜà???½?9?µ?ô??É??е¥?Ñ?µ?åÁɽصÁ½ÉÑ??±?µÍåµµ?ÑÉ¥?µ?äµ?½¹Ñ?¥¹?È´ÀÔ¹ÑáÐ?ø4($ðýÉ???ѽ?ô?å?Ì??üø4($ðýÉ???ÍåµÉ??Ìô?å?Ì??üø4($ðýÉ???ͽÉÑÉ??Ìô?å?Ì?üø4($ðýÉ???¥Áɹ½Ñ¥?¥??ô?¹¼??üø4($ðýÉ???ÍÑÉ¥?Ðô?å?Ì??üø4($ñ?ɽ¹Ðø4($$ñѥѱ?ùA½ÉÑ??±??Måµµ?ÑÉ¥??-?ä?
½¹Ñ?¥¹?Èð½Ñ¥Ñ±?ø4($$ñ?ÕÑ¡½È?¥¹¥Ñ¥?±Ìô? at ¸??ÍÕɹ?µ?ô?!½å?È???Õ±±¹?µ?ô?A¡¥±¥À?!½å?È?ø4($$$ñ½É??¹¥é?Ñ¥½¸????É?Øô??Ñ¥Ù%??¹Ñ¥Ñä?ø4($$%?Ñ¥Ù%??¹Ñ¥Ñä°?%¹?¸4($????ð½½É??¹¥é?Ñ¥½¸ø4($$$ñ???É?ÍÌø4($$$$ñÁ½ÍÑ?°ø4($$$$$ñÍÑÉ??ÐøÄÄÜ?]?Ñ?ɱ½¼?I½??ð½ÍÑÉ??Ðø4($$$$$ñ?¥Ñäù1½¹?½¸ð½?¥Ñäø4($$$$$ñÉ??¥½¸ùMÄð½É??¥½¸ø4($$$$$ñ?½??øáU0ð½?½??ø4($$$$$ñ?½Õ¹ÑÉäùU,ð½?½Õ¹ÑÉäø4($$$$ð½Á½ÍÑ?°ø4($$$$ñÁ¡½¹?ø¬ÐÐ? À¤?ÈÀ?ÜÜÐÐ?ØÐÔÔð½Á¡½¹?ø4($$$$ñ?µ?¥°ùA¡¥±¥À¹!½å?É??Ñ¥Ù¥??¹Ñ¥Ñä¹?½´ð½?µ?¥°ø4($$$ð½???É?ÍÌø4($$ð½?ÕÑ¡½Èø4($$ñ?ÕÑ¡½È?¥¹¥Ñ¥?±Ìô?4¸??ÍÕɹ?µ?ô?A?¤???Õ±±¹?µ?ô?5¥¹?±¥?¹??A?¤?ø4($$$ñ½É??¹¥é?Ñ¥½¸????É?Øô?Y?É¥M¥?¸?ø4($$%Y?É¥M¥?¸°?%¹?¸4($????ð½½É??¹¥é?Ñ¥½¸ø4($$$ñ???É?ÍÌø4($$$$ñÁ½ÍÑ?°ø4($$$$$ñÍÑÉ??ÐøÐàÜ?¸?5¥??±??¥?±??I½??ð½ÍÑÉ??Ðø4($$$$$ñ?¥Ñäù5½Õ¹Ñ?¥¸?Y¥?Üð½?¥