Crate concordium_rust_sdk
source ·Expand description
A library for interacting with the Concordium blockchain. The library is structured around multiple modules.
v2
contains the main entrypoint to the library. In particular it contains theClient
struct which maintains a connection to the node, and supports queries and node manipulation. This client uses gRPC API version 2 of the Concordium node.constants
contains a number of constants and type definitions that are relevant when using the chain.types
contains most type definitions to model responses as well as types defining transactions. The latter are in a submoduletypes::transactions
.
In addition to these, the library re-exports a number of core crates that implement the core cryptographic protocols of the Concordium blockchain.
id
is the implementation of most of the protocols in the identity layercommon
has some common type definitions, as well as traits and helpers for binary serializationencrypted_transfers
implements structures and zero knowledge proofs related to encrypted transferseddsa_ed25519
is a re-export of the signature scheme used for blocks and accounts on the Concordium blockchain.aggregate_sig
is a re-export of the BLS signature scheme, used by the finalizers.ecvrf
is a re-export of the implementation of the VRF function used to determine lottery winners in consensus.
Re-exports§
pub use concordium_base as base;
Modules§
- Re-export of functionality for constructing and verifying aggregate signatures. This is useful for constructing baker transactions. Implementation of aggregate signatures specified in https://datatracker.ietf.org/doc/html/draft-irtf-cfrg-bls-signature-04
- Types and functions for working with CIS-0 smart contracts. This module contains types and functions for interacting with smart contracts following the CIS-0 specification.
- Types and functions for working with CIS-2 smart contracts. This module contains types and functions for interacting with smart contracts following the CIS-2 specification.
- Types and functions for working with CIS-4 credential registry standard contracts. This module contains types and functions for interacting with smart contracts following the CIS-4 specification.
- Re-export of common helper functionality. Common types and operations used throughout the Concordium chain development.
- Various constants and types that apply to the chain.
- A generic client for interacting with smart contracts. This module contains a generic client that provides conveniences for interacting with any smart contract instance, as well as for creating new ones.
- Re-export the VRF function implementation. Implementation of the verifiable random function as specified in https://datatracker.ietf.org/doc/html/draft-irtf-cfrg-vrf-09.
- Re-export of Elgamal encryption. A few helpers around the dalek ed25519 signature scheme.
- Re-export of functionality for constructing and verifying encrypted transfers. This library provides the API needed by the chain, the wallet, and the supporting tools to deal with encrypted amounts.
- Wrapper for the node’s GRPC API. The return values are parsed and wrapped in structured values.
- Re-export of the identity library. This module and its submodules implement the Concordium identity layer, providing the core functionality for all entities involved (users, identity providers, and the chain).
- Support for writing indexers using the Rust SDK.
- Functionality related to smart contracts.
- Type definitions used throughout the rest of the SDK.
- Functionality for retrieving, verifying, and registering web3id credentials.