使用OpenSSL库实现AES、SM4、DES、RSA、3DES_EDE和3DES_EEE算法的加解密验证
摘要:本文将详细介绍使用OpenSSL库实现AES、SM4、DES、RSA、3DES_EDE和3DES_EEE算法进行加密/解密的Reference Check方案,以及如何通过DPI(Direct Programming Interface)将这些函数导入UVM(Universal Verification Methodology)环境。
一、需求分析
1.1 算法支持
AES (假设AES-128-CBC)、SM4 (SM4-CBC,中国国家标准加密算法)、DES (DES-CBC)、RSA (RSA-2048,非对称加密,使用PKCS1 padding)、3DES_EDE (Triple DES Encrypt-Decrypt-Encrypt in CBC mode)、3DES_EEE (Triple DES Encrypt-Encrypt-Encrypt in CBC mode)。
1.2 功能
为每个算法提供加密(encrypt)和解密(decrypt)函数,作为参考模型(reference check)。这些函数使用OpenSSL库实现纯软件加密/解密,用于验证硬件SKE(Symmetric Key Engine或其他加密引擎)的正确性。
1.3 输出输出
&