Module frame_system::offchain
source · Expand description
Module helpers for off-chain calls.
§Overview
This module provides transaction related helpers to:
- Submit a raw unsigned transaction
- Submit an unsigned transaction with a signed payload
- Submit a signed transaction.
§Usage
Please refer to example-offchain-worker
for
a concrete example usage of this crate.
§Submit a raw unsigned transaction
To submit a raw unsigned transaction, SubmitTransaction
can be used.
§Signing transactions
To be able to use signing, the following trait should be implemented:
AppCrypto
: where an application-specific key is defined and can be used by this module’s helpers for signing.CreateSignedTransaction
: where the manner in which the transaction is constructed is defined.
§Submit an unsigned transaction with a signed payload
Initially, a payload instance that implements the SignedPayload
trait should be defined.
See PricePayload
The payload type that is defined defined can then be signed and submitted onchain.
§Submit a signed transaction
Signer
can be used to sign/verify payloads
Structs§
- Details of an account for which a private key is contained in the keystore.
- Marker struct used to flag using all supported keys to sign a payload.
- Marker struct used to flag using any of the supported keys to sign a payload.
- Provides an implementation for signing transaction payloads.
- Provides the ability to directly submit signed and unsigned transaction onchain.
Traits§
- A type binding runtime-level
Public/Signature
pair with crypto wrapped byRuntimeAppPublic
. - Interface for creating an inherent.
- Interface for creating an old-school signed transaction.
- Interface for creating a transaction.
- Common interface for the
CreateTransaction
trait family to unify theCall
type. - Submit a signed transaction to the transaction pool.
- Submit an unsigned transaction onchain with a signed payload
- A message signer.
- Utility trait to be implemented on payloads that can be signed.
- A wrapper around the types which are used for signing.