Elements v22.0.2: PSET and DynaFed Updates
The latest release of Elements, the open-source sidechain-capable platform that Liquid is built on, brings its codebase up to date with Bitcoin Core v22.0, adds new features, fixes bugs, and makes improvements to performance.
Among the biggest improvements was to Elements’ PSET (Partially-Signed Elements Transactions), an extension of Bitcoin’s PSBT2 that allows wallets to collaboratively blind and sign Confidential Transactions. Elements v22.0.2 updates the PSET spec with multiple fixes to the implementation, a new parsepsbt
RPC for testing, and now allows the user to specify in PSET whether issuances should be blinded or not.
Additionally, several bugs were squashed and improvements were made to how Dynamic Federations (DynaFed) parameters are returned in RPC output. DynaFed was one of the most significant updates to Elements and Liquid to date, allowing a federation to add and remove functionaries more elegantly, avoiding any network disruptions and providing greater flexibility that will lead to a more decentralized and resilient sidechain implementation.
Another improvement is Elements now detects Bitcoin's RPC cookie authentication file correctly if it is running under the same user and in its default location, helping users validate a peg-in without having to set additional options. This new feature is especially useful for PeerSwap users.
Other changes with v22.0.2 include:
- The
dumpblindingkey
RPC will now accept non-confidential addresses if there is a corresponding blinding key. - Fix a crash in the wallet when handling unusual outputs with blinded assets but unblinded values.
- Fix a corner case when receiving a block from a peer races with getting the same block from
submitblock
, wrongly banning the peer. - Fix a problem in Windows where Elements would be installed in Bitcoin’s folder instead of its own. (Note: Since Elements 22.0.2 will be installed in the right location, cleanup of the left over files in
Program Files\Bitcoin
may be required.) - Minor fixes in elements-qt.
Elements 22.0.2 also brings all the same functionality wrapped in Bitcoin Core 22.0, including the addition of Taproot signing logic and the ability to use external signers like hardware wallets.
A Testbed for Bitcoin and Sidechain Tech
The Elements platform is available as a free, open-source download for anyone to set up their own sidechain solution. Liquid is the most well-known configuration of an Elements sidechain in production, focusing on financial markets and security token issuance, and is the default blockchain when you run elements-qt.
Upgrades to Bitcoin are cautious and methodical by design, with Elements historically filling a niche as a testing ground for new technologies to be later deployed on the mainchain. Technology upgrades to Bitcoin, such as OP_CSV and Segregated Witness (SegWit) were both implemented on Elements first. Other potential upgrades are Musig2, a cheaper and more private multisignature scheme, and Simplicity, an expressive smart contracting language currently in development for Elements and Liquid.
Build on Liquid
Start building on Bitcoin's second layer today with Elements and Liquid by exploring the new developer portal.
The Elements code tutorial is also a great place to start, which shows you how to make simple calls using elementsd
with different languages, including Python, C#, JavaScript, and many more. Effectively, any language that can use RPC gives developers access to all the features of a full Liquid node.
Finally, users can ask direct questions through the Liquid Community and Liquid Dev Telegram channels or the new Liquid subreddit. If you are a business interested in learning more about Liquid's capabilities or would like to see a demo of the new Asset Issuer tool, please email the Liquid team here.
This article was originally posted on the Blockstream blog at: https://blog.blockstream.com/elements-v22-0-2-pset-spec-and-dynafed-updates/