def crypto_sign(message, sk): """ Signs the message ``message`` using the secret key ``sk`` and returns the signed message. :param message: bytes :param sk: bytes :rtype: bytes """ signed = lib.ffi.new("unsigned char[]", len(message) + crypto_sign_BYTES) signed_len = lib.ffi.new("unsigned long long *") if lib.crypto_sign(signed, signed_len, message, len(message), sk) != 0: raise CryptoError("Failed to sign the message") return lib.ffi.buffer(signed, signed_len[0])[:]
def crypto_sign(message, sk): """ Signs the message ``message`` using the secret key ``sk`` and returns the signed message. :param message: bytes :param sk: bytes :rtype: bytes """ signed = lib.ffi.new("unsigned char[]", len(message) + crypto_sign_BYTES) signed_len = lib.ffi.new("unsigned long long *") rc = lib.crypto_sign(signed, signed_len, message, len(message), sk) assert rc == 0 return lib.ffi.buffer(signed, signed_len[0])[:]