<?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=5&amp;t=48" />

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

<author><name><![CDATA[Yubico Forum]]></name></author>
<id>https://forum.yubico.com/feed.php?f=5&amp;t=48</id>
<entry>
<author><name><![CDATA[Simon]]></name></author>
<updated>2008-06-19T09:42:26+01:00</updated>
<published>2008-06-19T09:42:26+01:00</published>
<id>https://forum.yubico.com/viewtopic.php?t=48&amp;p=320#p320</id>
<link href="https://forum.yubico.com/viewtopic.php?t=48&amp;p=320#p320"/>
<title type="html"><![CDATA[Re: I'm not entirely sure that I understand how the server...]]></title>

<content type="html" xml:base="https://forum.yubico.com/viewtopic.php?t=48&amp;p=320#p320"><![CDATA[
We got a question to forum@yubico as follows:<br /><br /><div class="quotetitle"><b>Quote:</b></div><div class="quotecontent"><br />In point 2 you say: &quot;Use this prefix to check up in the database which<br />AES key this particular ID has&quot;<br />Will this lookup be in the local database or in a remote database? If<br />it will be local does the database need to be synchronized?<br /></div><br /><br />The lookup is done in the local database.  The intention is that you only ever store the AES key in just one database, so there is no need to synchronize anything.  If you need to validate OTPs from any other place, you should use the web service client API instead of trying to decrypt the OTP.<br /><br />I hope this answers the question.<br /><br />Thanks,<br />Simon<p>Statistics: Posted by <a href="https://forum.yubico.com/memberlist.php?mode=viewprofile&amp;u=2">Simon</a> — Thu Jun 19, 2008 9:42 am</p><hr />
]]></content>
</entry>
<entry>
<author><name><![CDATA[hrag]]></name></author>
<updated>2008-05-20T20:08:12+01:00</updated>
<published>2008-05-20T20:08:12+01:00</published>
<id>https://forum.yubico.com/viewtopic.php?t=48&amp;p=54#p54</id>
<link href="https://forum.yubico.com/viewtopic.php?t=48&amp;p=54#p54"/>
<title type="html"><![CDATA[I'm not entirely sure that I understand how the server...]]></title>

<content type="html" xml:base="https://forum.yubico.com/viewtopic.php?t=48&amp;p=54#p54"><![CDATA[
Q: I'm not entirely sure that I understand how the server decrypts the token it receives, since it's encrypted with the device id as the key,how does it know what key to use for decryption?<br /><br />A: The OTP is not encrypted with the id. It is a separate symmetrical key, unique to each device. The basic principle to verify the blob is as follows:<br /> <br />1. Extract the public ID prefix (sent in clear text = the first characters - 32)<br />2. Use this prefix to check up in the database which AES key this particular ID has<br />3. Decrypt the OTP part using this key (last 32 characters = 128 bits)<br />4. Verify that the checksum matches<br />5. Verify that the private ID matche<br />6. Verify that the counter- and timer values match<p>Statistics: Posted by <a href="https://forum.yubico.com/memberlist.php?mode=viewprofile&amp;u=58">hrag</a> — Tue May 20, 2008 8:08 pm</p><hr />
]]></content>
</entry>
</feed>