Subject: [Ietf-krb-wg] pkinit-alg-agility-04: ISSUE #5: Proposed Update to Test Vectors Section

From: Margaret Wasserman <[email-masked]>
Date: Tue, 3 May 2011 11:55:01 -0400

ISSUE #5: Proposed Update to Test Vectors Section
========
In Section #7, Test Vectors:

The specification of the test vector was inadequate for us to
duplicate the results without asking the authors to clarify the values
we should use.  There are several problems here:

- The test vector does not indicate which hash algorithm should be
   used.  It turns out to be SHA-1.  The algorithm ID
   should also be included in the inputs to the test vector.

- Since SHA-256 is the only mandatory-to-implement algorithm for this
   spec, there should be a SHA-256 test vector.  We might also want to
   include a test vector for SHA-512, and vary the enctype between the
   three test vectors.

- The input values are a mix of ASCII text, hex data and decimal
   numbers, without any indication of which format is being used for
   which field.  This is especially ambiguous for the as-req and
   pk-as-rep fields, which are a string of As and a string of Bs
   respectively.  It turns out that the as-req is 10 bytes of 0xAA, and
   the pk-as-rep is _9_ bytes of 0xBB.

- The lengths of the input fields are not specified, creating a need
   to count bytes in order to set up the input values.

I would suggest reworking the current test vector section as follows
to address these issues (in addition to adding other test vectors):

7.  Test vectors

    Test vectors for the Agility KDF described in section 6 of this
    document.

    7.1 Common Inputs

    Z: Length = 256 bytes, Hex Representation = (All Zeros)
    00000000 00000000 00000000 00000000 000000000 00000000 00000000  
00000000
    00000000 00000000 00000000 00000000 000000000 00000000 00000000  
00000000
    00000000 00000000 00000000 00000000 000000000 00000000 00000000  
00000000
    00000000 00000000 00000000 00000000 000000000 00000000 00000000  
00000000
    00000000 00000000 00000000 00000000 000000000 00000000 00000000  
00000000
    00000000 00000000 00000000 00000000 000000000 00000000 00000000  
00000000
    00000000 00000000 00000000 00000000 000000000 00000000 00000000  
00000000
    00000000 00000000 00000000 00000000 000000000 00000000 00000000  
00000000

    client: Length = 9 bytes, ASCII Representation = [email-masked]

    server: Length = 18 bytes, ASCII Representation = krbtgt/[email-masked]

    as-req: Length = 10 bytes, Hex Representation =
    AAAAAAAA AAAAAAAA AAAA

    pk-as-rep:  Length = 9 bytes, Hex Representation =
    BBBBBBBB BBBBBBBB BB

    ticket: Length =  55 bytes, Hex Representation =
    61353033 A0030201 05A1071B 0553552E 5345A210 300EA003 020101A1  
0730051B
    036C6861 A311300F A0030201 12A20804 0668656A 68656A

    7.2 Test Vector for SHA-1, enctype 18

    7.2.1 Specific Inputs
    algorithm-id: (id-pkinit-kdf-ah-sha1) Length = 8, Hex Representation
    = 2B060105 02030601

    enctype: (aes256-cts-hmac-sha1-96) Length = 1 byte, Decimal
    Representation = 18

    7.2.1 Outputs

    key-material: Length = 64, Hex Representation =
    C76289EC 4B28A691 FFCE80B BB7EC824 1523F99B 190CF2D34 8F54A865  
812C3273

    key: Length = 64, Hex Representation =
    C76289EC 4B28A691 FFCE80B BB7EC824 1523F99B 190CF2D34 8F54A865  
812C3273

IMO, we should also add the following sections to the document, and
fill them in once we know what the values should be:

    7.3 Test Vector for SHA-256, enctype ??
    7.3.1 Specific Inputs
    7.3.2 Ouputs
    7.4 Test Vector of SHA-512, enctype ??
    7.4.1 Specific Inputs
    7.4.2 Outputs

_______________________________________________
ietf-krb-wg mailing list
[email-masked]
https://lists.anl.gov/mailman/listinfo/ietf-krb-wg

---

From: Margaret Wasserman <[email-masked]>
Date: Tue, 3 May 2011 14:50:28 -0400

A correction to my own text:

>   C76289EC 4B28A691 FFCE80B BB7EC824 1523F99B 190CF2D34 8F54A865  

Length = 32 Bytes
>   C76289EC 4B28A691 FFCE80B BB7EC824 1523F99B 190CF2D34 8F54A865  

Length = 32 Bytes

Sorry,
Margaret