如何将SHA-256 crypt与musl一起使用?
我正在使用musl: 如果我浏览存储库,我可以看到有一堆与crypt相关的源文件(包括crypt_sha256.c) 问题是它们没有头文件。我该如何使用它们 以下是我的系统库中的符号: 我也找不到谷歌关于如何使用musl的SHA-256功能的任何代码示例如何将SHA-256 crypt与musl一起使用?,c,sha256,musl,C,Sha256,Musl,我正在使用musl: 如果我浏览存储库,我可以看到有一堆与crypt相关的源文件(包括crypt_sha256.c) 问题是它们没有头文件。我该如何使用它们 以下是我的系统库中的符号: 我也找不到谷歌关于如何使用musl的SHA-256功能的任何代码示例 谢谢 这不是通用的SHA-256消息摘要算法,而是密码哈希函数使用的特定算法。有关该函数的使用方法,请参阅文档。您是正确的,这三个函数 sha256_init() sha256_更新() 沙乌森() 确实是通用的SHA256哈希函数 不
谢谢 这不是通用的SHA-256消息摘要算法,而是密码哈希函数使用的特定算法。有关该函数的使用方法,请参阅文档。您是正确的,这三个函数
- sha256_init()
- sha256_更新()
- 沙乌森()
$5$0rXgD0/KkyyT0$5PPJ3BKE0VPXSMDLSXZBZ2D3TFNAHLXSS7.elU3u2/
因此,没有提供用于这些函数的公共头文件。仅导出更高级别的函数crypt_sha256()
他们决定不导出通用接口的原因只能猜测,至少我找不到解释。正如Ctx在不知道原因的情况下所写和评论的那样,这些函数没有导出。我可以填写这个理由 通常,musl不会单方面发明新的接口,这些接口几乎肯定会以微妙的方式与其他libc提供商最终发明的类似接口不同。我们正在启动一个比POSIX标准化过程更不正式的跨libc协作组,这可能会使将来提供一些类似的接口变得合理,并最终将一些共识汇集到POSIX上游
除此之外,任何想要使用这些实现的人都可以复制代码并根据许可条款使用它。它们很小,是独立的,并且是许可的,通过这种方式使用它们,您不会锁定任何外部接口边界的签名。不过,与加密代码一样,您应该小心任何旁道泄漏机密的风险。在musl中使用时,我不认为这是一个问题,但我还没有分析其他可能的用途,选择一个设计用于任意加密设置的实现可能更安全。我可以回答这个问题。:-)完成。我本来可以做得更快,但我的isp在我发帖的时候出了问题。谢谢你的解释,我能理解这个原因。你应该接受R.s的答案;)直截了当地说,我认为Ctx很好地回答了这个问题;我的回答只是提供了额外的信息。我很高兴其他人也得到了代表;我当然不需要它。