diversifyHashNative static method

PallasNativePoint diversifyHashNative(
  1. List<int> bytes
)

Implementation

static PallasNativePoint diversifyHashNative(List<int> bytes) {
  const String keyDiversificationPersonalization = "z.cash:Orchard-gd";
  final point = PallasNativePoint.hashToCurve(
    domainPrefix: keyDiversificationPersonalization,
    message: bytes.exc(
      length: 11,
      operation: "Diversify Hash",
      reason: "Invalid diversify key bytes length.",
    ),
  );
  if (point.isIdentity()) {
    throw OrchardKeyError.failed(
      "Diversify Hash",
      reason: "Hash-to-curve returned the identity element",
    );
  }
  return point;
}