<html><head><meta http-equiv="content-type" content="text/html; charset=utf-8"></head><body dir="auto"><div><span></span></div><div><div><div style="direction: inherit;">Hi,</div></div><div><div style="direction: inherit;"><br></div>On 2 Oct 2016, at 12:21, Tobias Markmann <<a href="mailto:tmarkmann@googlemail.com">tmarkmann@googlemail.com</a>> wrote:</div><blockquote type="cite"><div dir="ltr"><div class="gmail_extra"><div class="gmail_quote"><div style="direction: inherit;"><br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div id="gmail-:3ih" class="gmail-a3s gmail-aXjCH gmail-m15785141b0af4a52">* How does this relate to other standardization efforts? (You already<br>
  mentioned olm, there's also OMEMO which is currently gaining some<br>
  traction.)</div></blockquote></div><div class="gmail_extra"><br></div>OMEMO is currently being adjusted to use Olm instead of Signal, so that it will be more implementation and standardization friendly [1], and will probably be standardized by the XSF afterwards.</div></div></blockquote><div style="direction: inherit;"><br></div><div style="direction: inherit;">For those not familiar: Olm is an independent implementation of the Double Ratchet algorithm based on the original sketch by Trevor & Moxie, written in C/C++14 by the <a href="http://Matrix.org">Matrix.org</a> team. It's released under the Apache 2.0 license at <a href="https://matrix.org/git/olm">https://matrix.org/git/olm</a>, and we've published a formal spec for it at <a href="https://matrix.org/docs/spec/olm.html">https://matrix.org/docs/spec/olm.html</a>. Olm is independent of the actual messaging protocol (eg it's used fine for both Matrix and XMPP/OMEMO). We've spoken at length to Moxie about Olm, and understand that he is fine with an independent liberal-licensed implementation as long as we make it abundantly clear that it's nothing to do with Signal, or Signal protocol, and is just a double ratchet impl.</div><div style="direction: inherit;"><br></div><div style="direction: inherit;">Seperately, Megolm is a new ratchet we've designed specifically for the problem of handling group conversations with selectively shareable history for syncing between devices. It's also included in libolm, and the formal spec is at <a href="https://matrix.org/docs/spec/megolm.html">https://matrix.org/docs/spec/megolm.html</a>. Megolm is very new (less than a month old), although it's being beta'd in <a href="https://riot.im/app">https://riot.im/app</a> currently. It uses Olm to exchange the group ratchet state between participants. </div><div style="direction: inherit;"><br></div><div style="direction: inherit;">Olm (and megolm) are currently being audited by NCC Group as part of a publicly released audit (which has already shown up some stuff we need to address; eg whether Olm prekeys should be signed and whether Megolm sessions suffer from replay attacks). We were going to hold off making a big announcement until the audit's done and we've fixed the thinkos, but I guess this thread preempts that :)</div><div style="direction: inherit;"><br></div><div style="direction: inherit;">Obviously we are very interested in Olm (and perhaps Megolm) being usable as an unencumbered, liberal licensed, and well-specified E2E protocol for the purposes being discussed here. However, we've been too busy building it and shipping it in Riot to get stuck into standardisation stuff yet! We would certainly like to be part of a BOF discussion though :)</div><div style="direction: inherit;"><br></div><div style="direction: inherit;">Matthew</div><div style="direction: inherit;"><br></div><div style="direction: inherit;">-- </div><div style="direction: inherit;"><a href="http://Matrix.org">Matrix.org</a></div>
</div></body></html>