Zip32Orchard.fromSpendKey constructor

Zip32Orchard.fromSpendKey({
  1. required List<int> sk,
  2. required ZCryptoContext context,
  3. Bip32KeyData? keyData,
})

Implementation

factory Zip32Orchard.fromSpendKey({
  required List<int> sk,
  required ZCryptoContext context,
  Bip32KeyData? keyData,
}) {
  keyData ??= Bip32KeyData();
  final spendKey = OrchardSpendingKey(sk);
  OrchardSpendAuthorizingKey.fromSpendingKey(spendKey);
  final fvk = OrchardFullViewingKey.fromSpendKey(spendKey);
  OrchardKeyAgreementPrivateKey.deriveInner(fvk: fvk, context: context);
  OrchardKeyAgreementPrivateKey.deriveInner(
    fvk: fvk.deriveInternal(),
    context: context,
  );
  final prvKey = OrchardExtendedSpendingKey(sk: spendKey, keyData: keyData);
  return Zip32Orchard._(
    privateKey: prvKey,
    publicKey: OrchardExtendedFullViewKey(fvk: fvk, keyData: keyData),
  );
}