程序示例精选
C++ RSA加密解密签字通信系统源码
如需安装运行环境或远程调试,可点击 博主头像进入个人主页查看博主联系方式,由专业技术人员远程协助!
前言
这篇博客针对《C++ RSA加密解密签字通信系统源码》编写代码,代码整洁,规则,易读。 学习与应用推荐首选。
运行结果
文章目录
一、所需工具软件二、使用步骤
1. 引入库
2. 识别图像特征
3. 参数设置
4. 运行结果
三、在线协助
一、所需工具软件
1. VS2019, C++2. Yolov8, OpenCV
二、使用步骤
代码如下(示例):
#include "stdafx.h"
RSA* getPrivateKey(char* in_szKeyPath)
{
FILE* fp = NULL;
char szKeyPath[1024];
RSA* priRsa = NULL, * pubRsa = NULL, * pOut = NULL;
memset(szKeyPath, 0, sizeof(szKeyPath));
if (256 < strlen(in_szKeyPath))
strncpy_s(szKeyPath, in_szKeyPath, 256);
else
strncpy, in_szKeyPath, strlen(in_szKeyPath));
printf("密钥文件路径[%s]", szKeyPath);
/* 打开密钥文件 */
errno_t eErr = fopen_s(&fp, szKeyPath, "rb");
if (eErr != 0)
{
printf("打开密钥文件[%s]出错", szKeyPath);
return NULL;
}
/* 获取私密钥 */
if (NULL == (priRsa = PEM_read_RSAPrivate(fp, &priRsa, NULL, NULL)))
{
printf("读出私钥内容出错\n");
fclose(fp);
return NULL;
}
fclose(fp);
printf("提取私钥\n");
pOut = priRsa;
return pOut;
}
RSA* getPublicKey(char* in_szKeyPath)
{
FILE* fp = NULL;
char szKeyPath[1024];
RSA* priRsa = NULL, * pubRsa = NULL, * pOut = NULL;
memset(szKeyPath, 0, sizeof(szKeyPath));
if (256 < strlen(in_szKeyPath))
strncpy_s(szKeyPath, in_szKeyPath, 256);
else
strncpy_s(szKeyPath, in_szKeyPath, strlen(in_szKeyPath));
printf("密钥文件路径[%s]", szKeyPath);
/* 打开密钥文件 */
errno_t eErr = fopen_s(&fp, szKeyPath, "rb");
if (eErr != 0)
{
printf("打开密钥文件[%s]出错", szKeyPath);
return NULL;
}
/* 获取公密钥 */
if (NULL == (priRsa = PEM_read_RSA_PUBKEY(fp, &priRsa,NULL)))
{
printf("读出私钥内容出错\n");
fclose(fp);
return NULL;
}
fclose(fp);
printf("提取公钥\n");
pOut = priRsa;
return pOut;
}
运行结果
三、在线协助:
如需安装运行环境或远程调试,可点击博主头像,进入个人主页查看博主联系方式,由专业技术人员远程协助!
1)远程安装运行环境,代码调试
2)Visual Studio, Qt, C++, Python编程语言入门指导
3)界面美化
4)软件制作
博主个人主页:https://developer.aliyun.com/profile/expert/rfnzgp3sk3ahc
博主所有文章点这里:https://developer.aliyun.com/profile/expert/rfnzgp3sk3ahc
博主联系方式点这里:https://developer.aliyun.com/profile/expert/rfnzgp3sk3ahc