C++20, 基于 OpenSSL EVP 接口的对称加密封装

基于 OpenSSL EVP 接口的对称加密封装库,C++20 编写。

把 OpenSSL 那套复杂的 EVP 调用流程包了一层,对外只暴露三个方法:

加密、解密、参数校验。不用每次手动创建 context、处理 padding、释放资源,

调一下 Encrypt / Decrypt 就完事了。

--- 支持的算法 ---

AES: 128 / 192 / 256,CBC / CTR / ECB / CFB / OFB / CFB1 / CFB8

SM4: 128-bit,CBC / ECB / CTR

ARIA: 128 / 192 / 256,CBC / CTR / ECB

Camellia: 128 / 256,CBC / CTR / ECB

3DES: 192-bit key,CBC / ECB

Blowfish: CBC / ECB

理论上只要是 OpenSSL 支持的对称算法都能用,传算法名就行。

代码地址: