deserializeKey static method

Slip32DeserializedKey deserializeKey(
  1. String serKeyStr,
  2. Slip32KeyNetVersions keyNetVer
)

Deserialize a serialized SLIP-32 key.

Implementation

static Slip32DeserializedKey deserializeKey(
  String serKeyStr,
  Slip32KeyNetVersions keyNetVer,
) {
  final bool isPublic = _getIfPublic(serKeyStr, keyNetVer);
  final List<int> serKeyBytes = Bech32Decoder.decode(
    isPublic ? keyNetVer.public : keyNetVer.private,
    serKeyStr,
  );

  // Get parts back
  final List<dynamic> keyParts = _getPartsFromBytes(serKeyBytes, isPublic);
  final List<int> keyBytes = keyParts[0];
  final Bip32Path path = keyParts[1];
  final Bip32ChainCode chainCode = keyParts[2];

  return Slip32DeserializedKey(keyBytes, path, chainCode, isPublic);
}