Any participant on the Liquid Network can trustlessly verify L-BTC peg-ins. During the peg-in validation process, a Liquid node verifies that a peg-in from the Bitcoin network is legitimate.
By default, your Liquid node is configured to validate peg-ins from the Bitcoin blockchain. This feature requires you to run a Bitcoin node on the same device as your Liquid node.
There are two conditions under which peg-in validation may be disabled:
- There is no Bitcoin node available: If your Liquid node cannot locate a Bitcoin node on your device at startup, it will prompt you with a notification to accept disabling peg-in validation.
- Peg-in validation manually disabled: You may have decided to manually disable peg-in validation through your Liquid node configuration.
Warning: If peg-in validation is disabled, your node will not verify whether peg-ins are accepted by the network. This can result in peg-in funds getting locked. If you plan on initiating peg-ins with your Liquid node, it is essential that you have enabled peg-in validation.
Configure Your Bitcoin Node
Note: You only need to configure your Bitcoin node if you are running Bitcoin Core. If you are using Bitcoin CLI and have not altered the client’s configuration, you don’t need to make any changes to your Bitcoin node and can proceed directly to Configure Your Liquid Node.
1.
In the Bitcoin Core application:
- Mac: Select Bitcoin Core > Preferences
- Linux: Select Bitcoin Core > Settings
- Windows: Select Settings > Options
2.
Click Open Configuration File.
3.
A window will pop up notifying you that the configuration file can be used to override the application’s default settings. Click OK.
4.
The bitcoin.conf file will open in your text editor. Keep the bitcoin.conf window open and shut down Bitcoin Core.
5.
Paste the following line into bitcoin.conf:
server=1
6.
Save the changes you made to bitcoin.conf and close the window.
Configure Your Liquid Node
1.
In the Elements Core application:
- Mac: Select Elements Core > Preferences
- Linux: Select Elements Core > Settings
- Windows: Select Settings > Options
2.
Click Open Configuration File.
3.
A window will pop up notifying you that the configuration file can be used to override the application’s default settings. Click OK.
4.
The elements.conf file will open in your text editor. Keep the elements.conf window open and shut down Elements Core.
5.
If your elements.conf file contains no entry of validatepegin
or shows validatepegin=1
, you can simply close the window without making any changes.
If your elements.conf file contains an entry of validatepegin=0
, replace the line with validatepegin=1
.
Tip: If you are using a non-default location for your Bitcoin node, also add the line to the configuration file:mainchainrpccookiefile=<location_of_your_bitcoin_datadir>
, replacinglocation_of_your_bitcoin_datadir
with your node’s location.
6.
Save the changes to elements.conf and close the window.
Your Liquid node is now ready to validate peg-ins!
Confirm Whether Your Liquid Node Is Validating Peg-Ins
You will not notice any changes in your Bitcoin or Liquid node after you have enabled peg-in validation. If you would like to make sure that your Liquid node is correctly validating peg-ins to the Liquid Network, follow the steps below.
1.
Ensure that neither Bitcoin Core nor Elements Core is running.
2.
Open Elements Core. Do not open Bitcoin Core.
3.
If you see the below error message, you have successfully enabled peg-in validation on Elements Core.
Note: The error appears because Elements Core is looking for Bitcoin mainchain data to verify peg-ins. Because your Bitcoin node is not running, Elements Core cannot find the mainchain data and is therefore unable to validate peg-ins to the Liquid Network.
4.
Close Elements Core. Open Bitcoin Core, then re-open Elements Core. Your Liquid node is now validating peg-ins.