Version 1.8.2 of the Chia reference client is now available for download! This release features user experience improvements, including updates to transaction level claw back support, support for the Verifiable Credentials primitive, updated DID commands, mempool support for identical spend aggregation, and more improvements to WalletConnect support.
General User Experience Improvements
We’re rolling out a GUI experience for our clawback custody primitive along with introducing support for the newly introduced Verifiable Credentials (VC) primitive. Details on specific features are outlined below:
Transaction Level Claw Back Support
Version 1.8.2 enables clawback support when sending XCH transactions, allowing users to revert sent XCH transactions without impacting the immutability of the blockchain. Transactions mistakenly sent as the wrong amount or to the incorrect address can now be recovered within the sender’s set time period. Users may configure their wallet with a specific clawback time frame defined by the user (e.g., 1 hour) to function as the wallet’s default for sending XCH. These conditions can be overridden by adjusting the clawback’s time lock or disabling the functionality.
Receiving users will be able to see the incoming transactions updated in the pending balance, as well as a list of transactions with time locks and when they are available to be claimed. Any transaction that hasn’t been claimed by the recipient is eligible to be clawed back into the originating wallet. The spendable balance will be updated once transactions have been claimed and fully settled into the receiving wallet. For expedited claiming efficiency, auto-claiming can be enabled in settings so that any incoming clawback transactions will be automatically claimed with a preset transaction fee so long as the wallet application is running.
The clawback user guide provides additional information on the clawback functionality introduced in version 1.8.2.
Version 1.8.2 introduces our Verifiable Credentials (VC) primitive to the Chia wallet. Verifiable Credentials represent cryptographically verified, tamper-proof statements about a subject and must include a trusted network of issuers, holders, and verifiers and is based on the W3C standard for Verifiable Credentials.
- An issuer is an entity that creates Verifiable Credentials which assert statements about another entity.
- A holder is the entity that is the subject of a Verifiable Credential. They are the owner of the credential with total authority over its use and management.
- The verifier is an entity that checks the authenticity of Verifiable Credentials being presented by the holder and holds trust for the VC issuer.
Additional details on the process of minting VCs, adding proofs, transferring VCs, and revoking proofs can be found in the Verifiable Credentials user guide.
This release allows holders to directly view a list of VCs minted to their wallet accompanied by the data stored on each VC. Such data includes the VC’s issuer DID, date of issuance, expiration date, VC type, VC version number and metadata, as well as a permanent VC token identifier for auditing purposes.
A VC’s holder is the owner of the credential with total authority over its use and management. Holders can revoke a VC should their wallet be compromised to prevent misuse of the credential across the blockchain.
For Developers and Creators (RPC and CLI Only)
Verifiable Credentials Tokens Primitive
For Developers and Issuers:
As mentioned above, an issuer provides Verifiable Credentials that assert claims about an entity. Version 1.8.2 allows issuers to create VCs to the subject’s/holder’s wallet. Issuers are required to provide a Decentralized Identifier (DID), used to mint the VCs, along with providing proofs for the claims that the issuer has validated about the subject. While any entity can be a VC issuer, the acceptance of a VC is determined by the verifier based on the credibility of the VC issuer.
All identifying data stored on-chain and validated by an issuer must adhere to strict privacy permissions with an option to encrypt and decrypt the on-chain data. As a VC issuer, you have the following functionality to manage issued VCs:
- Add/Update proofs – Creating a valid VC requires providing proofs
- Revoke a VC – prevent the holder from using the VC due to expiration of the VC, or security breach
- Re-issue a VC – if the user has other wallets or has lost access to their wallet, holders can request VC issuers to re-issue a VC
To help contribute to the development of verifiable credentials, please take a look at the following Chia Improvement Proposals (CHIPs):
- CHIP-0016 – Verifiable Credential – Defines the on-chain VC and functionality
- CHIP-0017 – VC metadata structure – Provides a base template for the off-chain metadata for a VC
- CHIP-0018 – KYC VC data schema – Specific example using CHIP-0017 and standardizing the expected set of data and proofs that would be included for a know-your-customer VC
Addition of DID Commands to CLI
Previously, the majority of the Chia wallet’s DID commands were only available in RPC. To improve the user experience for CLI users, we’ve enabled the following CLI commands: get_pubkey, update_metadata, get_details, find_lost, set_name, and message_spend. See our documentation here for more details on using the added CLI commands.
Ability to Send DApp Notifications in WalletConnect
The latest updates to our WalletConnect application enable individual DApps to push notifications to a user’s connected wallet. This doesn’t require any on-chain transaction and is an alternative for notifying connected wallets about anything relevant from the DApp. Now, DApps can share announcements, such as new service updates, or offer notifications directly with ecosystem users.
Identical Spend Aggregation
Identical spend aggregation is a mempool feature that allows multiple different spend bundles to spend the same coin.
This feature works for coins that do not have any AGG_SIG_* conditions in their puzzles. This brings Chia one step closer to supporting inter-transaction announcements (the ability to assert an announcement made by another mempool item) for all coins. Further information on the mempool feature can be found here.
Other Fixes and Improvements
- Read our release notes for details on other fixes and improvements that have been made in this release here.