|
Ming and all,
Please see questions and explanation of my perplexion below. Bear with me.
Which MAC key for which example?
My main concern are the PBE examples that you generated and the existing one forget for a moment the namsespace change.
Following are some differences (highlighted in bold):
SPEC ONE:
Lets start with an extract of the existing one in the spec:
<pskc:MACMethod
Algorithm="http://www.w3.org/2000/09/xmldsig#hmac-sha1"> <pskc:MACKey> <xenc:EncryptionMethod Algorithm="http://www.w3.org/2001/04/xmlenc#aes128-cbc"/> <xenc:CipherData> <xenc:CipherValue> 2GTTnLwM3I4e5IO5FkufoNhk05y8DNyOHuSDuRZLn6DhIjoTY/dX4SkUAbQ SWJblA7Dzi031L6FNnUrcjsGGcQ== </xenc:CipherValue> </xenc:CipherData> </pskc:MACKey> </pskc:MACMethod> GENERATED ONE:
<pskc:MACMethod Algorithm="http://www.w3.org/2000/09/xmldsig#hmac-sha1"> <pskc:MACKey> <xenc:EncryptionMethod Algorithm="http://www.rsasecurity.com/rsalabs/pkcs/schemas/pkcs-5#pbes2"> <pskc:EncryptionScheme Algorithm="http://www.w3.org/2001/04/xmlenc#aes128-cbc"/> </xenc:EncryptionMethod> <xenc:CipherData> <xenc:CipherValue>2GTTnLwM3I4e5IO5FkufoOEiOhNj91fhKRQBtBJYluUDsPOLTfUvoU2dStyOwYZx</xenc:CipherValue> </xenc:CipherData> </pskc:MACKey> </pskc:MACMethod> Now I do not understand why we need EncryptionScheme at all. Should it not be as the one in the spec?
I have the same question about EncryptionScheme later in both examples:
SPEC ONE:
....
<pskc:Secret>
<pskc:EncryptedValue Id="ED">
<xenc:EncryptionMethod Algorithm= "http://www.rsasecurity.com/rsalabs/pkcs/schemas/pkcs-5#pbes2"> <pskc:EncryptionScheme Algorithm="http://www.w3.org/2001/04/xmlenc#aes128-cbc"/> </xenc:EncryptionMethod> <xenc:CipherData> <xenc:CipherValue> oTvo+S22nsmS2Z/RtcoF8Hfh+jzMe0RkiafpoDpnoZTjPYZu6V+A4aEn032yCr4f </xenc:CipherValue> </xenc:CipherData> GENERATED ONE:
ryptedValue> <xenc:EncryptionMethod Algorithm="http://www.rsasecurity.com/rsalabs/pkcs/schemas/pkcs-5#pbes2"> <pskc:EncryptionScheme Algorithm="http://www.w3.org/2001/04/xmlenc#aes128-cbc"/> </xenc:EncryptionMethod> <xenc:CipherData> <xenc:CipherValue>oTvo+S22nsmS2Z/RtcoF8Hfh+jzMe0RkiafpoDpnoZTjPYZu6V+A4aEn032yCr4f</xenc:CipherValue> </xenc:CipherData> Why do we need EncryptionScheme at all? Since we know it is a derived key in the main element?
Should these not be like the preshared key one?:
PRE-SHARED-KEY
<Secret> <EncryptedValue> <xenc:EncryptionMethod Algorithm="http://www.w3.org/2001/04/xmlenc#aes128-cbc"/> <xenc:CipherData> <xenc:CipherValue> AAECAwQFBgcICQoLDA0OD+cIHItlB3Wra1DUpxVvOx2lef1VmNPCMl8jwZqIUqGv </xenc:CipherValue> </xenc:CipherData> </EncryptedValue> <ValueMAC>aSRlEG1agUo0CS2dt/OvIAqQ6Co= </ValueMAC> </Secret> Also should we align the examples that they use prefixed namespace for pskc. e.g. <pskc:element> I rather have default namespace of pskc so that it reads: <element>.
Additional question, should we add the xenc11 import statement to the schema?
Philip
From: Pei, Mingliang [mailto:mpei at verisign.com] Sent: Wed 02/09/2009 7.43 To: Philip Hoyer; Hannes.Tschofenig at gmx.net; Phillip Hallam-Baker; Salah Machani; Sean Turner Cc: Doherty, Andrea; Magnus Nyström; KEYPROV Subject: RE: New version of PSKC Hi Philip,
Please see the forwarded email that includes the examples from my implementation that I sent earlier. The latest draft doesn't seem to have the CipherValue for the MAC key right. Please update it to
2GTTnLwM3I4e5IO5FkufoOEiOhNj91fhKRQBtBJYluUDsPOLTfUvoU2dStyOwYZx
Thanks,
- Ming
|