hello I'm really happy to be here so
part of a small team called mmt most of
who are based in the southern hemisphere
so they can unfortunately can't be here
with me
we've been working on some collaborative
finance projects for about a year and
our current project is called crystal
its appeared to be a tool for securely
backing up secrets using the power of
community networks and we're really
grateful that we've got a grant and we
can make this project happen so the
private key custody problem people are
finally waking up to the idea that
there's limitations of centralized
services and they want more control over
their data encryption tools are becoming
more popular smart contracts and
cryptocurrency digital identity there's
a lot of tools now which rely on you
having a private key and the more we
these tools have got give us massive
advantages but they come at a cost and
the cost is you need to look after your
private key and the implicate the more
we rely on them the bigger the
implications are when you lose your key
so what can we do about this you can
make personal backups you need to be
careful where you keep them you can use
a cloud service but probably you want to
encrypt your key with another key so it
kind of defeats the object
deterministic password generators are
quite interesting but they've got some
limitations I'm not going to go into
that now there's you port which is
something that we're very interested in
and looking at but the thing which has
been getting us jumping up and down with
excitement is secret sharding tools so
if you don't know who ad shamea is maybe
you've heard of RSA public kick public
key encryption
shamea is the s in RSA he published a
paper in the late 70s called how to
share a secret Blakely is less well
known but published a very similar paper
around the same time and so the idea is
you split a secret into shards which are
pieces of data and you
one to each friend and the important
thing is is that each individual shard
has no information about the secret so
we can visualize it kind of simplified
on a as a 2d graph and in this case so
if we can imagine our secret is the
Green Line the point where crosses x
equals zero would be our secret which is
essentially a number but it's a piece of
data and in this case we've got we've
got two points plotted on the graph and
they would be two shards and there's an
infinite number of different curves
which pass through those two points but
as soon as we get a third one we can map
our curve and we've got a secret so in
this case the quorum is 3 but you can
have whatever quorum you want depending
on the mathematical function and you
might have more than three shots so you
could have say five friends and three of
them three of them need to you need
minimum three so if you two of them you
lose contact whether you're still safe
you can still get back your secret so I
mentioned that there's already to do
this it's been around with the 70 since
the seventies it's not anything new so
what is it that we're doing that's new
so generally you put in your secret and
you get out these shards which are long
strings and you then need to find a way
of giving them to your friends and your
friends need to store them and it's
given back to you and we tried doing
this and when you've got a lot of
different secrets different shards from
different people for different things
you can get in a big muddle and so we're
trying to automate things a bit moves
are trying to keep things secure so we
are using secure scuttlebutt it's
decentralized peer-to-peer protocol for
social networks it's offline first it
was developed it was kind of started by
somebody living on a sailing boat who
wanted to keep in touch with his friends
when not always having connection to
Internet it's got a really vibrant
community but the thing which makes it
really interesting for us for this
project is it's gossip protocol so it's
not like it's not like a blockchain
it's not like content centered
distributed storage systems like that
ipfs or bits on which typically are
using distributed hash table to mean
that everybody can connect to everybody
everybody kind of has at least in theory
access to our ubiquitous data set and
scuttlebutt there's there's it's using
gossip it's kind of use a user publishes
messages on a feed and they it's
replicated by their friends and friends
of friends until the specified number of
hops away from them so we wanted some
replication because we didn't want some
really written one danger kind of if if
people lose their shards but we didn't
want to make things totally public even
though they're encrypted theoretically
you could publish these shards to a
blockchain or make them public in some
way so that they're encrypted but we
wanted to kind of keep them within your
social network so we've got a working
prototype it's embedded into a popular
scuttlebutt client called patch Bay and
it's been since a few months in the
world with people using it so you just
give your secret a name you put your
secret you choose who gets it
I'm the quorum the minimum number that
is needed to be constructed it encrypts
the shards and publishes them but
there's still a lot of things that it
doesn't do and that we though we that we
are hopefully going to make happen in
the next few months so what can you use
this for other than just being useful
for backing up keys and secrets one
thing we've been doing is managing our
group funds in a multi sig wallet and if
there's a lot of funds in the wallet we
want to have a large number of
co-signers to gain consensus about
payments
and the more cosine is required the
bigger the danger when people lose their
keys and because we're kind of all bases
we're based in different countries we
don't know each other we didn't know
each other well but there's always a
kind of danger you can lose touch with
people so as a kind of extra step we're
kind of shouting our keys and giving
them to each other which kind of
essentially means one less signatures
required in a sense but it means there's
kind of an also an extra level of
consensus needed so it's it's kind of
useful in that case another one is
inheritance planning like if what comes
to your cryptocurrency if you die or
what happens to your email account or
access to some other online service and
another one is if you have got some
information which is very very sensitive
and might put you in danger
depending on you know in a particular
situation you might want to distribute
the custody of that information among a
small group or maybe you need to cross a
border with a device which has got no
encryption keys on it whatsoever and
kind of recombine your secrets later so
it's a trustful model one thing we're a
little bit kind of critical of is this
idea of trustless nurse that you can
automate everything and have so much
strong encryption and algorithms that
you don't need trust we think human
trust is really important and really
powerful and we want to bring a sense of
community to digital world so we do all
our development discussions in the open
here you can find this on these
skuttlebutt channels and we although
these repos all our codes in no js' and
thank you very much for listening
you