<?xml version="1.0" encoding="UTF-8"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en-gb">
<link rel="self" type="application/atom+xml" href="https://forum.yubico.com/feed.php?f=8&amp;t=45" />

<title>Yubico Forum</title>
<subtitle>...visit our web-store at</subtitle>
<link href="https://forum.yubico.com/index.php" />
<updated>2008-06-10T09:33:42+01:00</updated>

<author><name><![CDATA[Yubico Forum]]></name></author>
<id>https://forum.yubico.com/feed.php?f=8&amp;t=45</id>
<entry>
<author><name><![CDATA[Simon]]></name></author>
<updated>2008-06-10T09:33:42+01:00</updated>
<published>2008-06-10T09:33:42+01:00</published>
<id>https://forum.yubico.com/viewtopic.php?t=45&amp;p=224#p224</id>
<link href="https://forum.yubico.com/viewtopic.php?t=45&amp;p=224#p224"/>
<title type="html"><![CDATA[Re: Test vectors]]></title>

<content type="html" xml:base="https://forum.yubico.com/viewtopic.php?t=45&amp;p=224#p224"><![CDATA[
I'm not sure I understand perfectly here, but I really hope that nobody has reached the 2^15 limit for a real yubikey -- since I gave away the AES key for that yubikey, a software implementation will be able to &quot;kill&quot; that yubikey as far as the server believes.  But if you give away the AES key, the security is gone...  so this is all to be expected, right?<br /><br />/Simon<p>Statistics: Posted by <a href="https://forum.yubico.com/memberlist.php?mode=viewprofile&amp;u=2">Simon</a> — Tue Jun 10, 2008 9:33 am</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[caitsith6502]]></name></author>
<updated>2008-06-09T21:15:48+01:00</updated>
<published>2008-06-09T21:15:48+01:00</published>
<id>https://forum.yubico.com/viewtopic.php?t=45&amp;p=207#p207</id>
<link href="https://forum.yubico.com/viewtopic.php?t=45&amp;p=207#p207"/>
<title type="html"><![CDATA[Re: Test vectors]]></title>

<content type="html" xml:base="https://forum.yubico.com/viewtopic.php?t=45&amp;p=207#p207"><![CDATA[
Key is absolutely dead when this happens.  (unless the admins manually rewrap the key back to 0 everything on the server.)<br /><br />Note, Just the 8 hz timer is enough to detect that the key has not been replayed, even if the other counters has not wrapped, but once that reaches 16777215, with button press counter at 255, and insert counter at 65535 (Actually detected as 32767 with caps lock activation), and that OTP is played, no further OTPs from that key will ever work, without a reset.   This condition has already been met, by my hands.<p>Statistics: Posted by <a href="https://forum.yubico.com/memberlist.php?mode=viewprofile&amp;u=128">caitsith6502</a> — Mon Jun 09, 2008 9:15 pm</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[hasterguf]]></name></author>
<updated>2008-06-09T19:16:31+01:00</updated>
<published>2008-06-09T19:16:31+01:00</published>
<id>https://forum.yubico.com/viewtopic.php?t=45&amp;p=201#p201</id>
<link href="https://forum.yubico.com/viewtopic.php?t=45&amp;p=201#p201"/>
<title type="html"><![CDATA[Re: Test vectors]]></title>

<content type="html" xml:base="https://forum.yubico.com/viewtopic.php?t=45&amp;p=201#p201"><![CDATA[
caitsith6502: Ups it's already up to 60000 now (giving me a NON-REPLAY-OTP)... wonder what happens when it reaches 65535 <img src="https://forum.yubico.com/images/smilies/icon_e_smile.gif" alt=":)" title="Smile" /> wrap around?<br />Well I am not going to spoil that virtual yubikey. But whenever someone hits the magic 2^16 - lets see how yubico's servers handle that <img src="https://forum.yubico.com/images/smilies/icon_e_smile.gif" alt=":)" title="Smile" /><br /><br />Best regards,<br />   Alex<p>Statistics: Posted by <a href="https://forum.yubico.com/memberlist.php?mode=viewprofile&amp;u=76">hasterguf</a> — Mon Jun 09, 2008 7:16 pm</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[caitsith6502]]></name></author>
<updated>2008-06-09T18:18:32+01:00</updated>
<published>2008-06-09T18:18:32+01:00</published>
<id>https://forum.yubico.com/viewtopic.php?t=45&amp;p=200#p200</id>
<link href="https://forum.yubico.com/viewtopic.php?t=45&amp;p=200#p200"/>
<title type="html"><![CDATA[Re: Test vectors]]></title>

<content type="html" xml:base="https://forum.yubico.com/viewtopic.php?t=45&amp;p=200#p200"><![CDATA[
Simon: when was the last time you used the yubikey that you gave test vector samples of?  A few simulated inserts later, and this is the end result.  (And check the test your key page, in OTP mode only.  (Remove and reinsert till you get in.)  (Although You may be able to get that info directly.).<br /><br />(Note, all yubikey OTPs that were used to get me here, were generated on <a href="http://zyz.dk/yk/generator_0.2/yubi_generator.php" class="postlink">http://zyz.dk/yk/generator_0.2/yubi_generator.php</a>.)   As a result, the real physical yubikey, that is in Simon's possession, will end up hitting on the REPLAYED_OTP error for the next few inserts.<p>Statistics: Posted by <a href="https://forum.yubico.com/memberlist.php?mode=viewprofile&amp;u=128">caitsith6502</a> — Mon Jun 09, 2008 6:18 pm</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[hasterguf]]></name></author>
<updated>2008-06-09T16:21:30+01:00</updated>
<published>2008-06-09T16:21:30+01:00</published>
<id>https://forum.yubico.com/viewtopic.php?t=45&amp;p=196#p196</id>
<link href="https://forum.yubico.com/viewtopic.php?t=45&amp;p=196#p196"/>
<title type="html"><![CDATA[Re: Test vectors]]></title>

<content type="html" xml:base="https://forum.yubico.com/viewtopic.php?t=45&amp;p=196#p196"><![CDATA[
Hi,<br /><br />if you need more testvectors<br /><br />You can make all the test-vectors you like here: <!-- m --><a class="postlink" href="http://zyz.dk/yk/generator_0.2/yubi_generator.php">http://zyz.dk/yk/generator_0.2/yubi_generator.php</a><!-- m --><br />And you can test-decode otp's here: <!-- m --><a class="postlink" href="http://zyz.dk/yk/class_0.5/yubikey_test_decode.php">http://zyz.dk/yk/class_0.5/yubikey_test_decode.php</a><!-- m --><br /><br />Best regards,<br />  Alex<p>Statistics: Posted by <a href="https://forum.yubico.com/memberlist.php?mode=viewprofile&amp;u=76">hasterguf</a> — Mon Jun 09, 2008 4:21 pm</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Simon]]></name></author>
<updated>2008-06-09T12:47:53+01:00</updated>
<published>2008-06-09T12:47:53+01:00</published>
<id>https://forum.yubico.com/viewtopic.php?t=45&amp;p=193#p193</id>
<link href="https://forum.yubico.com/viewtopic.php?t=45&amp;p=193#p193"/>
<title type="html"><![CDATA[Re: Test vectors]]></title>

<content type="html" xml:base="https://forum.yubico.com/viewtopic.php?t=45&amp;p=193#p193"><![CDATA[
There have been requests for more test vectors for real OTPs, so here is a bunch from a key with this AES key:<br /><br /><div class="codetitle"><b>Code:</b></div><div class="codecontent">B64 secret: BoKVLTNj8iVlS1inOxMSWQ==<br />Hex secret: 0682952d3363f225654b58a73b131259<br />Modhex secret: chjdkgdteehevddghgfngjlienbebdgk<br /></div><br /><br />A few OTPs are:<br /><br /><div class="codetitle"><b>Code:</b></div><div class="codecontent">ndgtriluugngkuhguutjdfihfkleuvnjtjiljkbtbngb<br />ndgtriluugnghggtkhvrbbrrgtdfeivgklbkviteggcu<br />ndgtriluugngvlbnjllchllugvhhftndludrjubuuvkh<br />ndgtriluugngvukkrdlbvnettvhdhcjfgtjljkufulfe<br />ndgtriluugngnfdeicbdnfhlinhjvkufikdvbunjjvbn<br />ndgtriluugngbclrcivunvrbghicrfkeflvgrkdrfbve<br />ndgtriluugngvkdlfkvljfcvbehdvbtelhuutgdhfdku<br /></div><br /><br />You should be able to print debug info using the 'tool' program from the yubico-c project, see: <a href="http://code.google.com/p/yubico-c/" class="postlink">http://code.google.com/p/yubico-c/</a><br /><br />Outputs for the first two OTPs are:<br /><br /><div class="codetitle"><b>Code:</b></div><div class="codecontent">jas@mocca:~$ tool chjdkgdteehevddghgfngjlienbebdgk ndgtriluugngkuhguutjdfihfkleuvnjtjiljkbtbngb<br />warning: overlong token, ignoring prefix: ndgtriluugng<br />Input:<br />  token: kuhguutjdfihfkleuvnjtjiljkbtbngb<br />          9e 65 ee d8 24 76 49 a3 ef b8 d8 7a 89 1d 1b 51 <br />  aeskey: chjdkgdteehevddghgfngjlienbebdgk<br />          06 82 95 2d 33 63 f2 25 65 4b 58 a7 3b 13 12 59 <br />Output:<br />          c5 fc 55 c3 76 7f 0d 00 00 00 00 00 1a 33 6d 9d <br /><br />Struct:<br />  uid: c5 fc 55 c3 76 7f <br />  counter: 13 (0x000d)<br />  timestamp (low): 0 (0x0000)<br />  timestamp (high): 0 (0x00)<br />  session use: 0 (0x00)<br />  random: 13082 (0x331a)<br />  crc: 40301 (0x9d6d)<br /><br />Derived:<br />  cleaned counter: 13 (0x000d)<br />  modhex uid: rgvrggreihiv<br />  triggered by caps lock: no<br />  crc: F0B8<br />  crc check: ok<br />jas@mocca:~$ <br /></div><br /><br /><div class="codetitle"><b>Code:</b></div><div class="codecontent">jas@mocca:~$ tool chjdkgdteehevddghgfngjlienbebdgk ndgtriluugnghggtkhvrbbrrgtdfeivgklbkviteggcu<br />warning: overlong token, ignoring prefix: ndgtriluugng<br />Input:<br />  token: hggtkhvrbbrrgtdfeivgklbkviteggcu<br />          65 5d 96 fc 11 cc 5d 24 37 f5 9a 19 f7 d3 55 0e <br />  aeskey: chjdkgdteehevddghgfngjlienbebdgk<br />          06 82 95 2d 33 63 f2 25 65 4b 58 a7 3b 13 12 59 <br />Output:<br />          c5 fc 55 c3 76 7f 0d 00 16 00 00 01 5f 97 0b 46 <br /><br />Struct:<br />  uid: c5 fc 55 c3 76 7f <br />  counter: 13 (0x000d)<br />  timestamp (low): 22 (0x0016)<br />  timestamp (high): 0 (0x00)<br />  session use: 1 (0x01)<br />  random: 38751 (0x975f)<br />  crc: 17931 (0x460b)<br /><br />Derived:<br />  cleaned counter: 13 (0x000d)<br />  modhex uid: rgvrggreihiv<br />  triggered by caps lock: no<br />  crc: F0B8<br />  crc check: ok<br />jas@mocca:~$ <br /></div><br /><br />Happy hacking,<br />Simon<p>Statistics: Posted by <a href="https://forum.yubico.com/memberlist.php?mode=viewprofile&amp;u=2">Simon</a> — Mon Jun 09, 2008 12:47 pm</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[Simon]]></name></author>
<updated>2008-05-19T11:13:18+01:00</updated>
<published>2008-05-19T11:13:18+01:00</published>
<id>https://forum.yubico.com/viewtopic.php?t=45&amp;p=50#p50</id>
<link href="https://forum.yubico.com/viewtopic.php?t=45&amp;p=50#p50"/>
<title type="html"><![CDATA[Test vectors]]></title>

<content type="html" xml:base="https://forum.yubico.com/viewtopic.php?t=45&amp;p=50#p50"><![CDATA[
To make it easier to port the basic server libraries to other languages, we publish below some test vectors that can be used to detect errors in your code.  People have expressed a desire to port our libraries to Python and Perl, and we'd certainly like to see that happen!<br /><br /><div class="codetitle"><b>Code:</b></div><div class="codecontent">Test vectors for Yubikey<br />------------------------<br /><br />The YubiKey output consists of a two fields concatenated with each<br />other:<br /><br />YubiKey = &#91;identity&#93;&lt;otp&gt;<br /><br />The &quot;identity&quot; field is a variable-length ModHex encoded identity<br />field.  If no static identity is wanted, it may be omitted (i.e., of<br />zero length).<br /><br />The &quot;otp&quot; field is a 32 characters fixed-size ModHex encoded field<br />with a AES encrypted plaintext block of a specific format.<br /><br />Test vectors are needed for ModHex, AES in ECB mode, and internal<br />parsing of the plaintext.<br /><br />In this file, we'll use the sample YubiKey<br />'dteffujehknhfjbrjnlnldnhcujvddbikngjrtgh' for demonstration purposes.<br /><br />Modhex<br />------<br /><br />Modhex is an encoding mechanism, much similar to hex-encoding but the<br />alphabet is the alphanumeric string 'cbdefghijklnrtuv' instead.<br /><br />The input is an arbitrary binary string.  The output is a ASCII<br />string, twice as large as the input.<br /><br />INPUT:     hknhfjbrjnlnldnhcujvddbikngjrtgh<br />DECODE:    69b6481c8baba2b60e8f22179b58cd56 (in hex)<br /><br />More test vectors:<br /><br />INPUT:     test<br />ENCODE:    ifhgieif<br /><br />INPUT:     test<br />ENCODE:    hhhvhvhdhbid<br /><br />AES-ECB<br />-------<br /><br />This is standard AES-128 in &quot;raw&quot; mode, i.e. Electronic Code Book.  It<br />is assumed that the same input is never encrypted twice.  We only use<br />key sizes of 128 bits.<br /><br />INPUT:    69 b6 48 1c 8b ab a2 b6 0e 8f 22 17 9b 58 cd 56 <br />AESKEY    ec de 18 db e7 6f bd 0c 33 33 0f 1c 35 48 71 db <br /><br />OUTPUT:   87 92 eb fe 26 cc 13 00 30 c2 00 11 c8 9f 23 c8 <br /><br />Plaintext<br />---------<br /><br />The following plaintext converted into a structure:<br /><br />PLAINTEXT:  87 92 eb fe 26 cc 13 00 30 c2 00 11 c8 9f 23 c8 <br /><br />  uid: 87 92 eb fe 26 cc <br />  counter: 19 (0x0013)<br />  timestamp (low): 49712 (0xc230)<br />  timestamp (high): 0 (0x00)<br />  session use: 17 (0x11)<br />  random: 40904 (0x9fc8)<br />  crc: 51235 (0xc823)<br /><br />The CRC value is not used for cryptographic authentication, just as a<br />sanity check.  It is CRC-16 checksum computed on the entire structure<br />(including the provided crc value from the plaintext), and the residue<br />should be 0xf0b8.  The CRC-16 value computed on the above PLAINTEXT<br />would be:<br /><br />  crc: F0B8<br /><br />This matches the expected residue.<br /><br />Questions?<br />----------<br /><br />Talk to &lt;simon@yubico.com&gt;.<br /><br />-- <br />$Id: test-vectors.txt,v 1.3 2008-04-03 14:50:25 jas Exp $<br /></div><p>Statistics: Posted by <a href="https://forum.yubico.com/memberlist.php?mode=viewprofile&amp;u=2">Simon</a> — Mon May 19, 2008 11:13 am</p><hr />
]]></content>
</entry>
</feed>