<div dir="ltr"><div class="gmail_default" style="font-size:small">One of the feature sets for the Mesh requires a set of cryptographic agent functions. I have generalized these as follows:</div><div class="gmail_default" style="font-size:small"><br></div><div class="gmail_default" style="font-size:small">1) Haber-Stornetta Hash Chain notary</div><div class="gmail_default" style="font-size:small"><br></div><div class="gmail_default" style="font-size:small">Yeah, gets request, signs it, chucks it in a blockchain, blockchain then cross notarizes periodically with others. Job done.</div><div class="gmail_default" style="font-size:small"><br></div><div class="gmail_default" style="font-size:small">Groups of notaries may offer joint signatures through a PRE-ESTABLISHED agreement among the notaries. <br></div><div class="gmail_default" style="font-size:small"><br></div><div class="gmail_default" style="font-size:small">2) Micali simultaneous contracts notary</div><div class="gmail_default" style="font-size:small"><br></div><div class="gmail_default" style="font-size:small">The patent has expired. Time to use this. </div><div class="gmail_default" style="font-size:small"><br></div><div class="gmail_default" style="font-size:small">This is a scheme that allows Alice and Bob to both obtain a signed receipt on a document or neither does.</div><div class="gmail_default" style="font-size:small"></div><div class="gmail_default" style="font-size:small"><br></div><div class="gmail_default" style="font-size:small">3) Key Escrow Agent</div><div class="gmail_default" style="font-size:small"><br></div><div class="gmail_default" style="font-size:small">The proxy publishes and commits to follow a key use protocol for the key {X, x} as follows:</div><div class="gmail_default" style="font-size:small"><br></div><div class="gmail_default" style="font-size:small">1) The public key X</div><div class="gmail_default" style="font-size:small">2) The DateTime at which the proxy will begin servicing decryption requests</div><div class="gmail_default" style="font-size:small">3) The DateTime at which the proxy will cease servicing decryption requests</div><div class="gmail_default" style="font-size:small">4) The DateTime at which the proxy will dispose of the key</div><div class="gmail_default" style="font-size:small">5) Whether the private key x SHALL be destroyed or published on the disposal date.</div><div class="gmail_default" style="font-size:small">6) Additional requirements for access control on service provision (optional).</div><div class="gmail_default" style="font-size:small"><br></div><div class="gmail_default" style="font-size:small">It is my belief that it is sufficient to offer non-threshold escrow. Users who want to ensure they can decrypt a document in the case that one or more notaries fail, can perform (n,t) secret sharing over the session keys.</div><div class="gmail_default" style="font-size:small"><br></div><div class="gmail_default" style="font-size:small">So here is the plan, I want to implement a reference service for test purposes this year with a view to hardening it later on. But I still want to have good crypto hygiene and survivability.</div><div class="gmail_default" style="font-size:small"><br></div><div class="gmail_default" style="font-size:small">I don't feel good trusting HSMs. They can be compromised at source and they can fail. So I want the escrow keys to be represented on paper.</div><div class="gmail_default" style="font-size:small"><br></div><div class="gmail_default" style="font-size:small">I am considering the use of an ink jet printer with UV 'invisible' ink for this. The key shares used to generate the master keys can be printed out, distributed, locked in safes, etc.</div><div class="gmail_default" style="font-size:small"><br></div><div class="gmail_default" style="font-size:small">The response to getting a (lawful) writ will of course be to do whatever the court requires. If people want greater assurances, use multiple services.<br></div><div class="gmail_default" style="font-size:small"><br></div><div class="gmail_default" style="font-size:small">I do have some ideas for using notary chain services to nail down the crypto further. But they kinda depend on having another notary service there to tie to. So the idea of starting a reference service is in large part to enable the creation of production services.</div><div class="gmail_default" style="font-size:small"><br></div><div class="gmail_default" style="font-size:small">[And no, there shall be no proof of work element and no minting of cryptobucks.]</div></div>