⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 rsa.cpp

📁 RSA算法C++程序
💻 CPP
字号:
// Rsa.cpp : 定义控制台应用程序的入口点。
//

#include "stdafx.h"

#define RSA_KEY_FILE "rsakey.txt"

int _tmain(int argc, _TCHAR* argv[])
{
	RSA *key;
	char msg[]="i, i have no data to enc";
	char msg2[256];
    char msg3[256];
	int r;

	puts("genrsa...(maybe a few seconds)");
	key=RSA_generate_key(1024, 65537, NULL, NULL);
	puts("ok");
	BIO *b=NULL;
	b=BIO_new_file("bf.txt","w");
	RSA_print(b, key, 12);

    
	//公钥加密
	r=RSA_public_encrypt(strlen(msg), (unsigned char *)msg, (unsigned char *)msg2, key, RSA_PKCS1_PADDING);
	if(!r)
		puts("error in enc!");

    //私钥解密
	r=RSA_private_decrypt(r, (unsigned char *)msg2, (unsigned char *)msg3, key, RSA_PKCS1_PADDING);
	if(!r)
		puts("error in dec!");

	if (memcmp(msg, msg3, strlen(msg)))
	{
		puts("Error! text2!=text");
	} 
	else
	{
		msg3[strlen(msg)]=0;
		printf("解密后的明文是:%s\n",msg3);
	}

	RSA_free(key);

	return 0;
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -