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. 其他编辑改进
其他各种编辑改进。