第十七章 RSA / 17.2 openssl的RSA实现

OpensslRSA实现源码在crypto/rsa目录下。它实现了RSA PKCS1标准。主要源码如下:

1  rsa.h

       定义RSA数据结构以及RSA_METHOD,定义了RSA的各种函数。

2)    rsa_asn1.c

       实现了RSA密钥的DER编码和解码,包括公钥和私钥。

3  rsa_chk.c

       RSA密钥检查。

4  rsa_eay.c

Openssl实现的一种RSA_METHOD,作为其默认的一种RSA计算实现方式。此文件未实现rsa_signrsa_verifyrsa_keygen回调函数。

       5rsa_err.c

              RSA错误处理。

       6rsa_gen.c

RSA密钥生成,如果RSA_METHOD中的rsa_keygen回调函数不为空,则调用它,否则调用其内部实现。

       7rsa_lib.c

主要实现了RSA运算的四个函数(公钥/私钥,加密/解密),它们都调用了RSA_METHOD中相应都回调函数。

       8rsa_none.c

              实现了一种填充和去填充。

       9rsa_null.c

              实现了一种空的RSA_METHOD

       10)  rsa_oaep.c

              实现了oaep填充与去填充。

       11rsa_pk1.

              实现了pkcs1填充与去填充。

       12rsa_sign.c

              实现了RSA的签名和验签。

       13rsa_ssl.c

              实现了ssl填充。

       14rsa_x931.c

              实现了一种填充和去填充。