hi I'm trippin Ling nekoma also call me
Nicholas I'm from a theramin foundation
today I'll be talking about weak
subjectivity and how the singing
protocol works in e2 so this talk
consists of three parts weak
subjectivity and II through sync and
I'll let um
finally I'll make a brief introduction
on the fortress rule used in a theory No
so first I'll talk about what
subjectivity means in his context and
why is it weak so one is objectivity
means in his count has so objectivity in
his country could be for example I
prefer work you know how much work down
how much electricity spend and so node
joining the Bitcoin or interior network
knows that you can in request pro work
from any peers and then he can use this
proper world to objectively identify the
canonical chain but improver say the
work could be like running
state-transition creating verifying
signatures but this work are tiny
compared to proper work so every
validator can create super long for
change secretly at any time and so this
enables the long range attack so
basically in a long range attack for
example say Eve is an attacker and he
first request we throw on the main chain
and after some time his withdraw is
successfully processed now he/she has no
stake on the main chain and later Alice
goes online and now you can create a
fortune and on that change did not
withdraw withdraw and can he continues
to vote on the fortune and now you can
feed this fortune to Alice and later
when Alice find out that Eve has been
feeding her with four chains
she would try to use this fortune as
approved to prove that he was double
voting and she will send his evidence
will mention but then she will find out
that if no longer has any steak on the
chain so subjectivity in this count
heads means that you need to trust some
sources to identify the canonical chain
and why is a week is a way because we
only need to trust when first you join
join the network for the first time or a
second you were offline for a long time
for how long it depends on Halloween
texts for the attacker to withdraw their
stake and this is called a weak
subjectivity period and we subjectivity
Pierrot
is going to determine if we're gonna
need trust when we are thinking so next
I will talk about how the sinking
protocol works in e2 I will walk through
a hall decline sink in three different
situations and the first is how the
cleansing when you brewster you know the
first time and the second one is when
you goes offline and login back before
the week subjectivity period ends the
third situation is when you stay offline
for too long for longer than we
subjectivity Peru first how does the
client seek when bootstrap you know the
first time you neither trust you trust
the bootstrap knows you trust the
genesis blocks Genesis state or if the
genesis is already white been in the
past you will trust a lattice point
ladies try point instead so say if now
you have a trusted Genesis or let it try
point you will connect to peers and you
will first exchange that is try point
and head blocks and some other infos to
decide if you are you two are on the
same channel and if you are then you
will start requests amazing blocks or if
you are not on the same channel you will
simply disconnect so second situation
how this clients thing when you go
offline but a login back in time first
you still in the trust you trust you
trust a push read notes or maybe you can
use the peer info you persist in the
database during this connection but now
you do not need to trust the
try point because you can use the
checkpoint the last time you're online
and start sinking from there it's mostly
same you have the try point and you
connect to peers and you start
exchanging letters try point a blog and
some other informations to decide if
we're on the same chain and you are you
request missing blocks but now that the
client will only support requesting
blocks since the start of the way
subjectivity P Rio which means that you
won't be able to sing the blocks that's
older than the start of the weeks of GDP
subjectivity Peru okay and you've grown
understand same chain you will appear
when alpha us and then we would
disconnect okay
there is situation how this client sing
when you stay offline for longer than
wave subjective subjectivity P Rio so
it's basically the same as when you were
as the way you sing when you push run on
the first time you trust Genesis blog or
trust the lettuce try point and start
singing from there okay once we down
once we finish the syncing we will have
a picture of how the chain or how the
blood tree looks like and then we'll
apply the forest rule to get a score of
each chain and then we can identify the
canonical chain so before I get to the
forest rule there's two type of two
types of checkpoints first one is
finalized tree point the second one is
justified tree point and we do not
override the finalized checkpoint unless
there's an attack but in that case we
can know for sure that this a winter of
the valley that in East will be burned
so the type of here and for final are
justified checkpoint it can be over
right it can be overridden we will
choose we will switch to the more recent
justify tree point okay so after justify
try point is decided we apply the forest
road on different row chains and the
score counting stars from justified tree
point but here we
and I use longest chain rule because as
I previously mentioned the attacker can
secretly secretly create super long four
chains anytime
so what pro-choice rule do we use we use
element II ghost stands for latest
message driven ghost go stands for
gritty heavies observed subtree um how
does the ghost for choice rule works say
we have different flow change here and
the y square is the block and green
circle is the attestation yes the other
station is the validator the vole caste
by the very letter the validator would
vote for the block now they think is the
head block of the canonical chain at
that time so we have the votes and then
we will do the score count the score of
a block is the sum of the score of his
chat box and once we have the score
count we will start from justified track
point and goes all the way down to the
headlock and in each step each in in
each step when there is a fork we choose
the one with higher score and so in goes
for gyro
we will have the chain on the top as the
winning chain as the chain with higher
highest score okay next how does the
element he goes works on the post by
their ex research samurais pre-world you
don't care test votes with sender might
not receive other messages due to the
net world latency insured it means that
we only counted well terrorists lettuce
vote so now say there are six valid
errors and these are the votes that cast
and since in element egos we only count
the validators lettuce vote so this will
what a is this will be what the vote
count like and so we will get
a different score account and apply the
same rule a centrist enroll who you have
now will have the channel on the button
as the winning chain and now I want to
briefly mention the optimization on LMD
ghost the idea of the optimization is
basically that when we run in a forest
rule we skip the blocks that no veteran
is vote for and so this would save a
time and memory when traversing a block
tree back and forth okay there's one
thing worth mentioning is that we're
seeing blocks but not yet attestations
so we wait for attestation to be
propagated to us it can come in as a
form of single authorization aggregated
other stations or other stations that
included in the blocks and we take all
three kinds of a station into account
when in our for choice rule but since we
do not think the attestation Ana means
every no could receive different
attestation at different time so every
no crew had different view they have
different they could have different
vocal fold each for chains so this
creates a window for the attacker the
attacker can withhold attestation and
broadcast them I wanted to make a victim
switch between different chains
repeatedly but there's a prerequisite
for this attack is that there has to be
a temporary network failure and one tag
is called decoy flip-flop attack and
really you can read more about it on the
research forum and one possible
mitigation is the recent proposed
recently proposed variant of course is
called fresh message driven ghost and
insured is basically that we do now
except attestation to long ago for
example we do not accept a station from
maybe to a particle and okay that's my
introduction and we subjectivity is to
sing and fotress row today thank you
[Applause]
you