如何让tweetnacl工作?

时间:2017-10-24 17:51:22

标签: c

Tweetnacl的头文件和源文件(如提供的here)不匹配,标头中声明的extern函数实际上并未在源文件中定义。我认为标题中的许多#define是理解这一点的关键,尽管我不确定如何。它使用什么样的奇怪格式?我错过了什么?

虽然可能是一个单独的问题,但源文件在链接时也找不到randombytes,这个函数在哪里被定义?

示例:

tweetnacl.h

#define crypto_hash_sha256_tweet_BYTES 32
extern int crypto_hash_sha256_tweet(unsigned char *,const unsigned char *,unsigned long long);
#define crypto_hash_sha256_tweet_VERSION "-"
#define crypto_hash_sha256 crypto_hash_sha256_tweet
#define crypto_hash_sha256_BYTES crypto_hash_sha256_tweet_BYTES
#define crypto_hash_sha256_VERSION crypto_hash_sha256_tweet_VERSION
#define crypto_hash_sha256_IMPLEMENTATION "crypto_hash/sha256/tweet"

源文件未定义名为crypto_hash_sha256_tweet的函数。功能上crypto_hash处理计算哈希值,加上#define在源文件中实际使用的不存在,这表明我在这里有一些我缺少的第三个组件,例如一些解析器脚本,它重写源文件以匹配标题。

0 个答案:

没有答案