我正在尝试使用openssl dsa实现,但我对以下细节非常困惑:
命令openssl dsa ....
的选项'-text':输出中的十六进制数字,我是否正确假设那些是字节,因此它们是小端序?
功能BN_bn2hex和BN_hex2bn,他们使用什么Endianess?
提前感谢您的帮助。
答案 0 :(得分:10)
OpenSSL将所有字节序列(unsigned char
数组)视为大端。
函数BN_bn2hex
和BN_hex2bn
用于转换为可打印格式和从可打印格式转换。可打印格式始终处于自然阅读顺序,这是大端。
对于bn2bin等不可打印的格式转换,文档明确指出转换是大端。但正如我之前所说,OpenSSL中的约定是所有字节序列的大端。