调用OpenSSL实现RC4算法(详细步骤)

OpenSSL实现RC4算法

实验环境简介

Win10操作系统;
Visual studio 2022;
OpenSSL1.1.1stable版本

实验源码

#pragma comment(lib,"libssl.lib")
#pragma comment(lib,"libcrypto.lib")
#pragma warning(disable 4996)
#include<openssl/rc4.h>
#include<iostream>
#define n 256

using namespace std;
int main()
{
    printf("请输入密钥:\n");
    unsigned char* key = new unsigned char[n + 1];
    cin >> key;
    string str;
    printf("请输入加密信息:\n");
    cin >> str;
    unsigned char mes[30];
    RC4_KEY enkey, dekey;
    RC4_set_key(&enkey, n + 1, key);
    RC4_set_key(&dekey, n + 1, key);
    for (int i = 0; i < str.size(); i++)
    {
        mes[i] = (unsigned char)str[i];//转置到需要的形式
    }

    unsigned char c_text[30];//密文
    unsigned char p_text[30];//明文
    RC4(&enkey, str.size(), mes, c_text);
    c_text[str.size()] = '\0';//字串结束位置为0,防止过多输出
    cout << endl << c_text << endl;
    RC4(&dekey, str.size(), c_text, p_text);
    p_text[str.size()] = '\0';
    cout << endl << p_text << endl;
    return 0;
}

实验详细步骤

按着这个步骤来做应该没有错误,可能错误的部分我也强调了
1.首先打开visual studio 2022,选择创建新项目
在这里插入图片描述
点击控制台应用,然后下一步
在这里插入图片描述
设置项目名称后点击创建,此处以test为例

2.将OpenSSL库包含到项目中

2.1在打开后的test项目的最上方点击"项目"

2.2在二级菜单中点击"test属性 Alt+F7"选项

2.3出现下图所示属性页
在这里插入图片描述
2.4选择VC++目录
找到常规当中的,包含目录和库目录两个选项
选择编辑,将下载好的openssl文件中的lib和include文件夹分别添加到包含目录和库目录中,然后点击确认
在这里插入图片描述
注意:此处如果test属性页上方的配置和平台不是所有配置和所有平台,将其手动改成所有配置和所有平台

2.5找到所下载的OpenSSL文件夹
在OpenSSL文件夹的下属文件夹中,找到lib文件夹
将lib文件夹中libcrypto.lib和libssl.lib文件复制到test项目的文件夹当中
在这里插入图片描述
2.6将上文给的实验源码复制到test项目中的test.cpp文件当中
注意:此处选择与自己下载openssl版本相同的位数,我所下载的是x64版本,故在此处也选择x64在这里插入图片描述
如果位数不匹配会出现下列错误
在这里插入图片描述

然后点击本地的Windows调试器,进行调试
成功运行,并且无报错!
在这里插入图片描述

  • 0
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

R丿清风不解语

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值