如何将 SHA-256 加密与 musl 一起使用?
How to use SHA-256 crypt with musl?
我正在使用 musl:https://www.musl-libc.org
如果我浏览存储库,我可以看到有一堆与 crypt 相关的源文件(包括 crypt_sha256.c)。
问题是没有它们的头文件。我应该如何使用它们?
这些是我系统上的库中的符号:
我也找不到任何来自 google 如何使用 musl 的 SHA-256 功能的代码示例。
谢谢!
这不是通用的 SHA-256 消息摘要算法,而是 crypt
(3) 密码哈希函数使用的特定算法。请参阅该函数的文档以了解其使用方法。
你说的对,就是三个函数
- sha256_init()
- sha256_update()
- sha256_sum()
确实是通用的 SHA256 哈希函数。
遗憾的是,这些符号不会导出 publically,而仅在内部用于生成 [=10=]rXgD0/KkyyT0PPj3bke0vPxsMDlSXzBz2D3TFNahLrXSs7.elU3u2/
形式的加盐密码哈希
因此,没有提供使用这些函数的 public 头文件。仅导出更高级别的函数 crypt_sha256()
。
为什么他们决定不导出通用接口只能推测,至少我找不到解释。
正如Ctx写的和评论的不知道原因,这些函数没有被导出。我可以填写那个原因。
通常,musl 不会单方面发明新的接口,这些接口几乎肯定最终会与其他 libc 提供商最终发明的类似接口在细微的方面有所不同。我们正在启动一个比 POSIX 标准化过程更不正式的跨 libc 协作组,这可能使将来提供一些这样的接口变得合理,并且最终可能会汇集出现的一些共识POSIX.
的上游
除此之外,欢迎任何想要使用这些实现的人复制代码并在许可条款下使用它。它们体积小、独立且许可许可,通过这种方式使用它们,您不会锁定任何外部接口边界的签名。但是,与加密代码一样,您应该注意任何侧通道泄露秘密的风险。正如在 musl 中使用的那样,我认为这不是问题,但我没有分析其他可能的用途,选择专为在任意加密设置中使用而设计的实现可能更安全。
我正在使用 musl:https://www.musl-libc.org
如果我浏览存储库,我可以看到有一堆与 crypt 相关的源文件(包括 crypt_sha256.c)。
问题是没有它们的头文件。我应该如何使用它们?
这些是我系统上的库中的符号:
我也找不到任何来自 google 如何使用 musl 的 SHA-256 功能的代码示例。
谢谢!
这不是通用的 SHA-256 消息摘要算法,而是 crypt
(3) 密码哈希函数使用的特定算法。请参阅该函数的文档以了解其使用方法。
你说的对,就是三个函数
- sha256_init()
- sha256_update()
- sha256_sum()
确实是通用的 SHA256 哈希函数。
遗憾的是,这些符号不会导出 publically,而仅在内部用于生成 [=10=]rXgD0/KkyyT0PPj3bke0vPxsMDlSXzBz2D3TFNahLrXSs7.elU3u2/
因此,没有提供使用这些函数的 public 头文件。仅导出更高级别的函数 crypt_sha256()
。
为什么他们决定不导出通用接口只能推测,至少我找不到解释。
正如Ctx写的和评论的不知道原因,这些函数没有被导出。我可以填写那个原因。
通常,musl 不会单方面发明新的接口,这些接口几乎肯定最终会与其他 libc 提供商最终发明的类似接口在细微的方面有所不同。我们正在启动一个比 POSIX 标准化过程更不正式的跨 libc 协作组,这可能使将来提供一些这样的接口变得合理,并且最终可能会汇集出现的一些共识POSIX.
的上游除此之外,欢迎任何想要使用这些实现的人复制代码并在许可条款下使用它。它们体积小、独立且许可许可,通过这种方式使用它们,您不会锁定任何外部接口边界的签名。但是,与加密代码一样,您应该注意任何侧通道泄露秘密的风险。正如在 musl 中使用的那样,我认为这不是问题,但我没有分析其他可能的用途,选择专为在任意加密设置中使用而设计的实现可能更安全。