coniks-sys/coniks-go

Recovering from unintended inconsistencies

vqhuy opened this issue · 0 comments

vqhuy commented

See Arlo's comment in 80e453c#commitcomment-19804686

We're only returning the STR with the response as an optimization (consciously or not), since an omniscient client would know which epoch we're in and when exactly to fetch the new STR. See the discussion here about syncing clocks in practice though #74 (comment)
Any STR that passes the checks in updateSTR will be stored and used by the client, regardless of whether the rest of the checks pass / fail, and that's fine since it contains proof of being issued. The rest of the checks are tangential to maintaining the STR hash chain and knowing which epoch we're in.
There are questions about how the client recovers in the face of equivocation and whatnot

Also, open problem from coniks.org (https://coniks.cs.princeton.edu/research.html#openproblems)