def crypto_scalarmult(n, p): """ Computes and returns the scalar product of the given group element and an integer ``n``. :param p: bytes :param n: bytes :rtype: bytes """ q = ffi.new("unsigned char[]", crypto_scalarmult_BYTES) rc = lib.crypto_scalarmult(q, n, p) ensure(rc == 0, "Unexpected library error", raising=exc.RuntimeError) return ffi.buffer(q, crypto_scalarmult_SCALARBYTES)[:]
def crypto_scalarmult(n, p): """ Computes and returns the scalar product of the given group element and an integer ``n``. :param p: bytes :param n: bytes :rtype: bytes """ q = ffi.new("unsigned char[]", crypto_scalarmult_BYTES) rc = lib.crypto_scalarmult(q, n, p) assert rc == 0 return ffi.buffer(q, crypto_scalarmult_SCALARBYTES)[:]
def crypto_scalarmult(n, p): """ Computes and returns the scalar product of the given group element and an integer ``n``. :param p: bytes :param n: bytes :rtype: bytes """ q = ffi.new("unsigned char[]", crypto_scalarmult_BYTES) rc = lib.crypto_scalarmult(q, n, p) ensure(rc == 0, 'Unexpected library error', raising=exc.RuntimeError) return ffi.buffer(q, crypto_scalarmult_SCALARBYTES)[:]