Skip to main content

Appendix: Changes from RFC 4634 (附录: RFC 4634的变更)

为生成本文档,对RFC 4634进行了以下更改:

1. 添加HKDF代码

添加了HKDF的代码以及关于HKDF的简要文本,并指向[RFC5869]。

2. 修复众多勘误

修复了针对[RFC4634]提交的众多勘误,如下所述。注意,在任何情况下,旧代码都不会返回不正确的哈希值。

2.a. 更正错误返回值

将一些错误地设为"shaNull"的错误返回值更正为正确的"shaInputTooLong"错误。

2.b. 更新注释和变量名

为了一致性和清晰性,更新了代码中的注释和变量名,以及其他编辑性更改。

2.c. 修复SHA-384和SHA-512的长度限制

先前的SHA-384和SHA-512代码在2^93字节(2^96位)后会停止。修复后的代码可处理高达2^125字节(2^128位)。

2.d. 添加额外的错误检查

添加了额外的错误检查,包括测试驱动程序中的运行时检查,以检测在使用[US-ASCII]以外的其他字符集编译后尝试运行测试驱动程序的情况。

3. 更新样板文本

更新样板文本,删除[RFC4634]中的特殊许可证,因为新样板要求使用简化的BSD许可证。

4. 替换getopt版本

用新代码替换MIT版本的getopt,以满足IETF传入和传出许可证限制。

5. 添加参考文献

添加对[RFC6194]的参考。

6. 其他编辑改进

其他各种编辑改进。