Expand description
Pallet storing associations from main chain public key to parter chain address.
§Purpose of this pallet
This pallet establishes a many-to-one mapping from Cardano staking keys to Partner Chain addresses. The purpose of this mapping is primarily to indicate the local PC address to be the recipient of any block production rewards or cross-chain token transfers credited to a Cardano key holders on a Partner Chain. Some intended scenarios inlude:
- ADA delegators become eligible for block rewards due to their stake poool’s operator participating in a Partner Chain network. The on-chain payout mechanism uses data provided by this pallet to identify each delegator’s Partner Chain address based on their Cardano staking key.
- A Partner Chain develops its own cross-chain bridge from Cardano. A Cardano user associates their Cardano public key with a Partner Chain address that they control. The user then uses the bridge to send some tokens to themselves. The receiving logic in the Partner Chain ledger then uses this pallet’s data to identify the user’s PC account and comlete the transfer.
§Usage - PC Builder
This pallet is self-contained and doesn’t need any node support. To include the pallet in the runtime, one must only provide its configuration. Consult documentation of pallet::Config for explanation of all configuration fields.
For the pallet to verify the validity of address associations submitted by Users, it requires a signature
created using the Cardano private key corresponding to the public key being associated. A dedicated
CLI command for creating the signature is provided by cli_commands
crate. Consult the crate’s
documentation for more information.
§Usage - PC User
This pallet expoes a single extrinsic associate_address
accepting the Cardano public key
and Partner Chain address to be associated together with a signature confirming that the submitter is
the owner of the associated Cardano public key.
To obtain the signature, the User should use the dedicated signing command wired into the Partner Chain node executable.
Important: For compliance reasons, all address associations are final and can not be changed.
Re-exports§
pub use pallet::*;
Modules§
- pallet
- The
pallet
module in each FRAME pallet hosts the most important items needed to construct this pallet. - weights
- Autogenerated weights for pallet_address_associations
Structs§
- Address
Association Signed Message - Schema of the message signed by a User to verify validity of submitted address association
Traits§
- OnNew
Association - Handler for new associations