zoukankan      html  css  js  c++  java
  • Cryptopp 加密库 RSA 加密算法的 入门指引

    导读

      由于使用需要,进来开始接触 Windows 平台下 C++编程开发使用的 RSA 加密算法。先是接触了 微软提供的 RSA Cryptography(位于头文件 wincrypt.h 下),主要的接口有 CryptExportKey,CryptEncrypt,CryptImportKey , CryptBinaryToString 等,虽然网上有人提供了部分使用示例,如这里这里,官网也有相关接口的说明和例子,  然而或许是个人初步接触,水平有限(相关知识和英文水平),入门起来还是有些痛苦,没有一个快速能够上手的条件。

          在将目光转向了另一个 C++ 开源库 Crypto++ 。Crypto++是一个开源的C++加密算法库,它包括密码、消息认证码,单向散列函数,公钥密码机制,关键协议方案,缩小压缩等加密算法。

          出乎意料的是,对于初学者上手来说,相比于Win32 提供的接口,操作起来则容易很多。官方提供 windows 平台下 Visual Studio 的 sln 解决方案,极大减小了刚接触入门者编译和运行测试的门槛。

          本文简单记录 自己如何 下载 和 使用 Cryptopp 库的过程,希望为有有关需要的人提供一个参考。 


    目录
    1. 环境 和 软件
    2. 项目下载 与 编译测试
    3. 参考链接
    1、环境 和 软件

    开发平台:Windows

    开发工具:Visual Studio 2015

    加密算法库:Cryotopp : https://www.cryptopp.com/

    2、项目下载与编译测试

    由于 Cryotopp 库自带提供了很多测试用例、以及自带 Visual Studio 解决方案 sln 的配置,实际上整个过程变得非常简单

    (1)从官方下载 Release 发布包

    访问官网:https://www.cryptopp.com/ ,点击 Download 链接

     在列表中下载特定的版本的 Release

    (2)使用 Visual Studio 打开 sln 项目

    解决方案下有 4 个项目: 

     其中,cryptdll 项目将生成动态 dll;   cryptlib 项目用于生成静态 lib

    dlltest 用于 测试 cryptdll;  cryptest 则提供了大量的测试用例,用于测试。

    (3)RSA 的测试和使用

    进入 cryptest 项目,可通过命令行指令,测试 生成 公钥和秘钥、进行加密和解密测试

    参数设置 g 测试生成公钥和秘钥

    输入长度,私钥公钥的存储位置 和  秘钥种子,便可完成秘钥的生成

    参数设置 r 测试使用公钥加密,和使用秘钥解密

    指定 秘钥的位置,输入 加密的消息 即可进行测试加密和解密

     

    3、参考链接

    关于cryptopp加密库RSA加密算法的简单应用

    visual studio c++ 2015 Crypto++ 下载、编译和部署

    关于 秘钥种子


    版权声明
    本博客所有的原创文章,作者皆保留版权。转载必须包含本声明,保持本文完整,并以超链接形式注明作者 BensonLaur  和本文原始地址:
  • 相关阅读:
    队列
    生物信息 perl 脚本实战
    Linux 命令速查
    perl 语法速查 | 模块安装
    Falcon Genome Assembly Tool Kit Manual
    Falcon:三代reads比对组装工具箱
    白话经典算法系列
    八大排序算法
    七大查找算法(附C语言代码实现)
    samtools常用命令详解(转)
  • 原文地址:https://www.cnblogs.com/BensonLaur/p/14570188.html
Copyright © 2011-2022 走看看