Advertisement

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)

还没有任何评论哟~