<html><head><meta http-equiv="Content-Type" content="text/html charset=windows-1252"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;"><br><div><div>On Nov 19, 2014, at 10:35 AM, Ben Laurie <<a href="mailto:benl@google.com">benl@google.com</a>> wrote:</div><blockquote type="cite"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin: 0px 0px 0px 0.8ex; border-left-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; padding-left: 1ex; position: static; z-index: auto;"><br>
Clients recognize the hash from the log, look up when the certificate<br>
was issued (when the hash was published), and set the certificate to<br>
expire three days later.<br></blockquote><div><br></div><div>The question is: how do I know its 3 days later?</div></div></blockquote><br></div><div>For many machines it is trivial - just look at the system clock.</div><div><br></div><div>But lots of machines don’t have a RTC. The RaspberryPi for example does not because it would add $10 to the cost and require huge board area for the battery.</div><div><br></div><div>Sync with an NTP server provides time but not trusted time since the current protocol isn’t signed.</div><div><br></div><div><br></div><div>Which is why my Private-DNS protocol might be relevant. DNS and Time are both trusted services. Every device needs to be configured with a means to authenticate responses from a source chosen as trustworthy.</div><div><br></div><div>The main difference between Private-DNS and DNS over DTLS is that while they both involve a key agreement portion and a framing portion, in Private-DNS the key agreement portion is high level and allows a client to ask for means to connect to multiple services at once. For example DNS and NTP.</div><div><br></div><div><br></div><div>That said, NTP is probably way more accurate than necessary for crypt purposes for which a simple JSON protocol ‘what is the time’. would be more than sufficient to check that the system clock is within five minutes of UTC and TAI. Which is also supported.</div><div><br></div><div>I hope to get a draft out on this only I caught something nasty on the plane back and my machine is dead. So after I rebuild the machine and find the Visual Studio disks etc I should have an implementation of using the key agreement protocol with Private-DNS and NTP / JNTP.</div><br></body></html>