mirror of
https://github.com/urbit/shrub.git
synced 2024-12-22 10:21:31 +03:00
38 lines
1.1 KiB
Plaintext
38 lines
1.1 KiB
Plaintext
|
|%
|
||
|
:: +raw-ring-signature: low level ring signature type
|
||
|
::
|
||
|
:: The :s field of a ring signature grows O(n) with the number of
|
||
|
:: participants in the ring.
|
||
|
::
|
||
|
++ raw-ring-signature
|
||
|
$: ch0=@
|
||
|
::
|
||
|
s=(list @)
|
||
|
:: linked ring signature tag
|
||
|
::
|
||
|
:: Two linked ring signatures with the same link scope can be shown to
|
||
|
:: have been made by the same private key, leading to Sybil
|
||
|
:: resistance...but if your private keys are compromised, your
|
||
|
:: adversary can determine which signatures you made.
|
||
|
::
|
||
|
y=(unit @udpoint)
|
||
|
==
|
||
|
:: +ring-signature: higher level ring signature type
|
||
|
::
|
||
|
:: This contains all the identifying information to verify a ring signature
|
||
|
:: in an urbit context.
|
||
|
::
|
||
|
++ ring-signature
|
||
|
$: :: a ring signature is computed over a set of public keys. the
|
||
|
:: participants set is not those keys, but static references to them.
|
||
|
::
|
||
|
participants=(set [ship=@p =life])
|
||
|
:: the linkage scope this signature was made on
|
||
|
::
|
||
|
link-scope=(unit *)
|
||
|
:: the rest of the low level ring signature is appended
|
||
|
::
|
||
|
raw=raw-ring-signature
|
||
|
==
|
||
|
--
|