deriveInner static method

PallasNativeFp deriveInner({
  1. required OrchardFullViewingKey fvk,
  2. required ZCryptoContext context,
})

Implementation

static PallasNativeFp deriveInner({
  required OrchardFullViewingKey fvk,
  required ZCryptoContext context,
}) {
  final ak = fvk.ak.key.point.toAffine().x;
  final scalar = commitIvk(
    ak: ak,
    nk: fvk.nk.inner,
    rivk: fvk.rivk.inner,
    context: context,
  );
  if (scalar.isZero()) {
    throw OrchardKeyError.failed(
      "deriveInner",
      reason: "commitIvk produced a zero scalar.",
    );
  }
  return scalar;
}