这是一个关于RSA加密算法的简单程序,在最近的版本中,可以进行英文文本的加密,解密和密钥对的生成。密钥长度较低,仅作为对RSA加密算法的探究。
- linux下在对应的文件夹下执行 make
- windows下请参考Makefile自行编译。
- 将需要加密的文件,放在source.txt中
- 程序启动后,按照提示输入指令,选择加密功能
- 按照提示输入公钥即可完成加密
- 加密后的密文将存放在result.txt中
- 解密过程与加密过程相反,操作类似
- 程序启动后,按照提示输入指令,选择生成密钥对功能,即可随机生成一对密钥
- 同时在程序所在文件夹中,将产生Pub_key,txt和Pri_key.txt文件,其中包含按照时间排列的密钥对记录。
- 如果文件在运行过程中产生一些可以预料的错误,将会在程序所在文件夹中生成Error.txt文件。
- 在程序初次运行时,会产生primer_number.txt和configuration,txt,其中包含生成密钥对所需要的素数表以及程序的配置信息。
- configuration.txt中包含了程序运行过程中需要的参数
- 以下对其中的参数进行说明
| 名称 | 解释 |
|---|---|
| [Configuration From File] | 是否从文件读取配置信息,1表示是,0表示否,默认1 |
| [Total Number] | 素数表中的素数总数 |
| [L_MIT] | 素数表左边界,默认5000 |
| [R_MIT] | 素数表右边界,默认9999 |
| [BITWIDTH] | 一个加密单位包含的字符数,默认3 |
注意:
- 调整边界和加密单位可能导致溢出,请谨慎调节。
- 调整素数表边界之后,请删除原有素数表,以便以程序在下次启动是重新生成,并同时调整程序中内置的hash值