<div dir="ltr"><br><div class="gmail_extra"><br><br><div class="gmail_quote">On Wed, Aug 27, 2014 at 3:18 PM, Tony Arcieri <span dir="ltr"><<a href="mailto:bascule@gmail.com" target="_blank">bascule@gmail.com</a>></span> wrote:<br>

<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"><div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">

<div class="">On Wed, Aug 27, 2014 at 3:12 PM, Jonathan Moore <span dir="ltr"><<a href="mailto:moore@eds.org" target="_blank">moore@eds.org</a>></span> wrote:<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">



<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote"><div>Two things the errors in the bitcoin cases were do to nonce reuse. What the research actually did is look for reused r, where r is derived from the nonce and private key, values in the dsa signatures. I know that some of the reuse was explicitly due to bad counter implementation. Others are knows to be due to the bad android RNG.</div>



</div></div></div></blockquote><div><br></div></div><div>This could be easily solved by doing deterministic ECDSA like EdDSA does.</div></div></div></div></blockquote><div><br></div><div>Yes but it is an example of nonce generation failures.</div>

<div> </div><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"><div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">

<div class=""><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">

<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote"><div>

<div>Why would you refer to my scheme as counting?</div></div></div></div></div></blockquote><div><br></div></div><div>I wasn't referring to your scheme. Using time or a counter as part of the nonce is much cheaper than your scheme, which requires a content hash. Deriving keys or IVs from a content hash is great if you're building a convergent / content addressable encryption scheme, but if you're not it's a waste.</div>

</div></div></div></blockquote><div><br></div><div>I don't think your aproi claim that it is a waste is correct. It adds desirable properties, that adding in time can not guarantee, and for some situations the cost is totally reasonable. ( It is also worth noting that the extra cost is only when for encryption and not decryption. ) If the cost is really a issue one could also consider a construction like HS1-SIV which uses the authenticator as the IV; but that only works for mac then encrypt modes which some people don't like.</div>

<div><br></div><div>-Jonathan </div></div></div></div>