CosmosBaseAddress.fromPublicKey constructor
CosmosBaseAddress.fromPublicKey({
- required List<
int> pubkeyBytes, - required CosmosKeysAlgs algorithm,
- String hrp = CosmosAddrConst.accHRP,
Factory constructor to create a CosmosBaseAddress from public key and algorithm.
Implementation
factory CosmosBaseAddress.fromPublicKey({
required List<int> pubkeyBytes,
required CosmosKeysAlgs algorithm,
String hrp = CosmosAddrConst.accHRP,
}) {
final addressBytes = switch (algorithm) {
CosmosKeysAlgs.ed25519 => AtomAddressUtils.ed25519PubkeyToAddress(
pubkeyBytes,
),
CosmosKeysAlgs.secp256k1 => AtomAddressUtils.secp256k1PubKeyToAddress(
pubkeyBytes,
),
CosmosKeysAlgs.secp256r1 => AtomAddressUtils.secp256r1PubKeyToAddress(
pubkeyBytes,
),
CosmosKeysAlgs.stratosEthsecp256k1 ||
CosmosKeysAlgs.intiaEthsecp256k1 ||
CosmosKeysAlgs.ethsecp256k1 ||
CosmosKeysAlgs.injectiveEthsecp256k1 ||
CosmosKeysAlgs.comosEthsecp256k1 =>
AtomAddressUtils.ethSecp256k1PubKeyToAddress(pubkeyBytes),
};
/// Create a CosmosBaseAddress instance by converting byte data to an address string.
return CosmosBaseAddress._(
AtomAddressUtils.encodeAddressBytes(addressBytes: addressBytes, hrp: hrp),
hrp,
);
}