OpenSSL中的大数接口与基于其的自用RSA加密接口设计
发布时间
阅读量:
阅读量
本研究过程涵盖了对OpenSSL大数模块的初步探索,重新梳理了RSA加密算法的实现步骤,并基于OpenSSL提供的相关接口开发出适用于个人使用的RSA加密工具。同时,借助所构建的接口,展示了Alice与Bob之间通过RSA加密技术实现安全通信的具体实例。
概览
自行构建的库中应具备的功能包括:
- 实现大整数对象的创建与赋值操作(最低需支持至
2^65536-1) - 支持大整数的加法、乘法、取模运算以及快速幂运算等基础数学操作
- 对该大整数进行素性判定
- 基于两个大素数生成RSA公钥
(n,e)和私钥d - 随机生成长度分别为
80位、128位、256位及512位的对称密钥 - 对不同长度的对称密钥执行加密操作(包含填充技术)
- 对加密后的不同长度对称密钥进行解密处理
Part 0 环境准备
由于macOS系统默认集成有openssl库,若未安装也可通过brew工具进行配置和安装。
$ brew info openssl
openssl: stable 1.0.2k (bottled) [keg-only]
SSL/TLS cryptography library
https://openssl.org/
/usr/local/Cella
全部评论 (0)
还没有任何评论哟~
