一个 rsa 加密算法的 python 实现
此仓库仅仅是加密算法实现的一次练习,请勿在任何重要场合使用此仓库进行加密和解密,否则,造成的后果将由使用者自己承担
首先需要 private_key
和 private_key
文件,仓库中已提供生成好的密钥对,您也可以自己生成:
python3 key.py
默认生成 最大为 2048 位的 p 和 q,你也可以修改 key.py
中 22
行的 KEY_LENGTH
值。注意:KEY_LENGTH
值为 2048 时在本机测试的时间开销在 7000s 左右,其中的素数判断使用的是 米勒-拉宾素性检验。
python3 main.py -e input.txt output.bin
其中 -e
表示 加密,input.txt
可以不指定,默认为读取 input.txt
文件,加密到 output.bin
或者使用仓库提供的示例 hamlet.txt
:
python3 main.py -e hamlet.txt
python3 main.py -d output.bin decrypted.txt
其中 -d
表示 解密,output.bin
可以不指定,默认为读取 output.bin
文件,解密到 decrypted.txt
使用
python3 main.py -h
获得帮助