Update docs/liquid/liquid-part1.md
This commit is contained in:
parent
d047f809bf
commit
c4a8d07ed4
@ -9,7 +9,7 @@ This is a multipart DeepDive that will focus on the [Liquid Sidechain](https://l
|
||||
|
||||
Liquid is a federated BTC sidechain. The federation which controls the network are known as 'Functionaries'. Currently, there are 15 such Functionaries[^1] who are geographically dispered to help isolate the network from both physical and regulatory disruption.
|
||||
|
||||
Block signing happens in a round-robin style arrangement - consensus requires 11-of-15 to be available.
|
||||
These Functionaries are who does the Block signing, which happens in a round-robin style arrangement - consensus requires 11-of-15 to be available.
|
||||
|
||||
A unique aspect of this federation is that functioinary membership is dynamic - using a protocol known as *DynaFed* - this allows members to be rotated out/in depending on circumstance. The signing method the functionaries use is known as [ROAST](https://eprint.iacr.org/2022/550.pdf) (Robust Asynchronous Schnorr Threshold Signatures). As stated:
|
||||
|
||||
@ -22,7 +22,7 @@ A unique aspect of this federation is that functioinary membership is dynamic -
|
||||
responding at all), the 67 honest signers can successfully produce a signature within
|
||||
a few seconds."
|
||||
|
||||
The main benefit of ROAST is that signing becomes less problematic with a large number of federation members. Obviously this along with the inclusion of *DynaFed* (a recent addition to the network), seems to indicate that they plan to increase the total federation functionaries in the future.
|
||||
The main benefit of ROAST is that signing becomes less problematic with a large number of federation members. Obviously this along with the inclusion of *DynaFed* (a recent addition to the network), seems to indicate that they plan to increase the total federation functionaries in the future[].
|
||||
|
||||
**Functionaries Sign, not Mine**
|
||||
|
||||
@ -105,6 +105,27 @@ Now let's peg-in some bitcoin in order to receive L-BTC within our Liquid wallet
|
||||
* Copy the BTC transaction ID and save to variable
|
||||
- `$ export B_TRANSID="bb1d0903XXXXXXXXXXXXXXXXXXXXXXXXXXX"`
|
||||
* Wait for the BTC transaction to confirm[^4]
|
||||
* On your **BITCOIN** node, run the following command
|
||||
- `$ sudo ./scripts/app compose bitcoin exec bitcoind bitcoin-cli getrawtransaction $B_TRANSID`
|
||||
|
||||
020000000173f50....
|
||||
* Save that output to bash variable
|
||||
- `$ export B_RAWTRANS='020000000173f50....`
|
||||
* On your **BITCOIN** node, get output proof
|
||||
- `$ sudo ./scripts/app compose bitcoin exec bitcoind bitcoin-cli gettxoutproof '["<transaction_id_paste>"]'`
|
||||
|
||||
00406426ea774aff7437de482c73f2ac8......
|
||||
* Save output proof in bash variable
|
||||
- `$ export B_OUTPROOF='00406426ea774aff7437de482c73f2ac8....'`
|
||||
* Now back on the elements node, we can claim the L-BTC
|
||||
- `$ elements/bin/elements-cli -rpcuser=$E_RPCUSER -rpcpassword=$E_RPCPASS claimpegin $B_RAWTRANS $B_OUTPROOF $E_CLAIMSCR`
|
||||
* Issue a getwallet info on Elements and you should see an unconfirmed balance
|
||||
- `$ elements/bin/elements-cli -rpcuser=$E_RPCUSER -rpcpassword=$E_RPCPASS getwalletinfo`
|
||||
|
||||
"unconfirmed_balance": {
|
||||
"bitcoin": 0.00149952
|
||||
},
|
||||
|
||||
|
||||
|
||||
**Footnotes:**
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user