cryptoScalarmult static method

Uint8List cryptoScalarmult(
  1. Uint8List n,
  2. Uint8List p
)

Implementation

static Uint8List cryptoScalarmult(Uint8List n, Uint8List p) {
  RangeError.checkValueInInterval(n.length, cryptoScalarmultScalarbytes,
      cryptoScalarmultScalarbytes, 'n', 'Invalid length');
  RangeError.checkValueInInterval(p.length, cryptoScalarmultBytes,
      cryptoScalarmultBytes, 'p', 'Invalid length');

  final _q = calloc<Uint8>(cryptoScalarmultBytes);
  final _n = n.toPointer();
  final _p = p.toPointer();
  try {
    _cryptoScalarmult
        .crypto_scalarmult(_q, _n, _p)
        .mustSucceed('crypto_scalarmult');
    return _q.toList(cryptoScalarmultBytes);
  } finally {
    calloc.free(_q);
    calloc.free(_n);
    calloc.free(_p);
  }
}