OpenSSL Provider 编码器解码器设计
OpenSSL命令行工具与provider互通的调用链
涉及跨provider时需要加一层decoder/encoder export_object
涉及导入时需要STORE层处理文件对象
导入:
openssl CLI -> libcrypto -> provider decoder -> provider keymgmt import
导出:
openssl CLI -> libcrypto -> provider keymgmt export -> provider encoder
Encoder和Decoder数量不对称的说明
这主要是由于EncryptedPrivateKeyInfo和PEM/DER格式的处理顺序决定的。
EncryptedPrivateKeyinfo:
decoder 靠看数据自动判断,encoder 靠用户指令选择。前者一个入口就行,后者必须每种可能都提前注册好。
PEM/DER:
PEM是DER的包装,所以自然地,encode时需要两个分支输出,decode可汇在一起处理
但这给decoder带来的是更加复杂的一层回调。

OpenSSL Provider 编码器解码器设计
https://47.108.189.123/2026/08/12/实习经历/OpenHiTLS-2026/OpenSSL-编码器解码器设计/