Frequency Identity


  • Name: Message Source Account or MSA
  • Docs: MSA Pallet
  • Representation: The following data that constitute a Message Source Account are stored in the MSA pallet:
    • The DSNP User Id associated with this MSA
    • Delegation relationships to Providers
    • Schema permissions granted to Providers
    • MSA user state (Profile, Graph, etc...)
    • Control keys

DSNP User Identifier

  • Name: Message Source Account Identifier, or MSA Id.
  • Data Type: uint64
  • Docs: MessageSourceId
  • Mapping: The MSA Id is able to be used directly as the DSNP User Id
  • Description: At least one public key MUST be associated with an MSA Id for it to be considered active.

Control Keys

  • Name: Referred to as: public_key, provider_key, or delegator_key
  • Data Type: AccountId, Schnorrkel/Ristretto X25519 ("sr25519") derived cryptographic public key
  • Docs: AccountId
  • Description: See Cryptography on Polkadot and Polkadot Protocol Specification. A public key CANNOT be associated with more than one MSA at a time.


  • Name: delegation
  • Docs: Delegation
  • Representation: The following data storage relates necessary information for retrieving and validating delegations:
    • Provider registry
    • Delegations
    • Schema permissions granted to Providers


  • Name: Delegator
  • Representation: MSA Id


  • Name: Provider
  • Representation: MSA Id
  • Description: A Provider MUST already have an MSA Id (via msa::create()) and be approved as a Provider (via msa::propose_to_be_provider()).