getKeysFromMnemonic method

KeyStoreModel getKeysFromMnemonic(
  1. Uint8List seedLength32,
  2. SignerCurve signerCurve
)

Implementation

KeyStoreModel getKeysFromMnemonic(
    Uint8List seedLength32, SignerCurve signerCurve) {
  if (signerCurve == SignerCurve.ED25519) {
    KeyPair keyPair = Dartez.sodiumUtils.cryptoSignSeedKeypair(seedLength32);
    String skKey = GenerateKeys.readKeysWithHint(
        keyPair.sk, GenerateKeys.keyPrefixes[PrefixEnum.edsk]!);
    return getKeysFromPrivateKey(skKey, signerCurve);
  } else if (signerCurve == SignerCurve.SECP256K1) {
    PrivateKey secpPk = PrivateKey.fromHex(hex.encode(seedLength32));
    var pk = GenerateKeys.readKeysWithHint(
        Uint8List.fromList(hex.decode(secpPk.toHex())),
        GenerateKeys.keyPrefixes[PrefixEnum.spsk]!);
    return getKeysFromPrivateKey(pk, signerCurve);
  }
  throw new Exception("SECP256R1 is not supported");
}