One document matched: draft-josefsson-pbkdf2-test-vectors-01.xml


<?xml version="1.0"?>
<!DOCTYPE rfc SYSTEM "rfc2629.dtd">

<!DOCTYPE rfc SYSTEM "rfc2629.dtd" [
    <!ENTITY rfc2104 PUBLIC '' 'http://xml.resource.org/public/rfc/bibxml/reference.RFC.2104.xml'>
    <!ENTITY rfc2898 PUBLIC '' 'http://xml.resource.org/public/rfc/bibxml/reference.RFC.2898.xml'>
    <!ENTITY fips180 PUBLIC '' 'http://xml.resource.org/public/rfc/bibxml2/reference.FIPS.180-1.1995.xml'>
    <!ENTITY SCRAM PUBLIC '' 'http://xml.resource.org/public/rfc/bibxml3/reference.I-D.ietf-sasl-scram.xml'>
]>

<?rfc compact="yes"?>
<?rfc toc="yes"?>
<?rfc symrefs="yes"?>

<rfc category="info" ipr="trust200902"
    docName="draft-josefsson-pbkdf2-test-vectors-01">

    <front>

	<title>
	  Test vectors for PKCS #5 PBKDF2 
	</title>

	<author initials="S." surname="Josefsson" fullname="Simon Josefsson">
	    <organization>SJD AB</organization>
	    <address>
		<postal>
		    <street>Hagagatan 24</street>
		    <city>Stockholm</city>
		    <code>113 47</code>
		    <country>SE</country>
		</postal>
		<email>simon@josefsson.org</email>
		<uri>http://josefsson.org/</uri>
	    </address>
	</author>

	<date month="August" year="2010"/>

	<abstract>

	    <t>This document contains test vectors for PKCS #5
	      PBKDF2.</t>

	</abstract>

    </front>

    <middle>

	<section anchor="intro"
		 title="Introduction">

	  <t>The PKCS #5 <xref target="RFC2898"/> Password Based Key
	    Derivation Function 2 (PBKDF2) is used by several
	    protocols to derive encryption keys from a password.</t>

	  <t>Test vectors for the algorithm were not included in the
	    original specification, but are often useful for
	    implementers.</t>

	</section>

	<section anchor="test-vectors-hmac-sha1"
		 title="PBKDF2 test vectors for HMAC-SHA1">

	  <t>The <xref target="I-D.ietf-sasl-scram">SCRAM</xref>
	    protocol uses PBKDF2 with
	    <xref target="RFC2104">HMAC</xref>
	    and <xref target="FIPS.180-1.1995">SHA-1</xref>.</t>

	<figure>
	  <artwork>
  Input:
    P = "password" (8 octets)
    S = "salt" (4 octets)
    c = 1
    dkLen = 20

  Output:
    DK = 0c 60 c8 0f 96 1f 0e 71 f3 a9 b5 24 af 60 12 06 2f e0 37 a6
	  </artwork>
	</figure>

	<figure>
	  <artwork>
  Input:
    P = "password" (8 octets)
    S = "salt" (4 octets)
    c = 2
    dkLen = 20

  Output:
    DK = ea 6c 01 4d c7 2d 6f 8c cd 1e d9 2a ce 1d 41 f0 d8 de 89 57
	  </artwork>
	</figure>

	<figure>
	  <artwork>
  Input:
    P = "password" (8 octets)
    S = "salt" (4 octets)
    c = 4096
    dkLen = 20

  Output:
    DK = 4b 00 79 01 b7 65 48 9a be ad 49 d9 26 f7 21 d0 65 a4 29 c1
	  </artwork>
	</figure>

	<figure>
	  <artwork>
  Input:
    P = "password" (8 octets)
    S = "salt" (4 octets)
    c = 16777216
    dkLen = 20

  Output:
    DK = ee fe 3d 61 cd 4d a4 e4 e9 94 5b 3d 6b a2 15 8c 26 34 e9 84
	  </artwork>
	</figure>

	</section>

	<section anchor="ack"
		 title="Acknowledgements">

	  <t>Barry Brachman and Love Hörnquist Åstrand confirmed the
	    test vectors and pointed out a mistake in the salt octet
	    length count.</t>

	</section>

	<section title="Copying conditions">

	  <t>This document should be considered a Code Component, and
	    is thus effectively available under the BSD license.</t>
  
	</section>

    </middle>

    <back>

	<references title="Normative References">

&rfc2898;

	</references>

	<references title="Informative References">

&rfc2104;
&fips180;
&SCRAM;
	</references>

    </back>

</rfc>

PAFTECH AB 2003-20262026-04-21 17:50:18