搜索
查看
编辑修改
首页
UNITY
NODEJS
PYTHON
AI
GIT
PHP
GO
CEF3
JAVA
HTML
CSS
搜索
我家自动化
这个屌丝很懒,什么也没留下!
关注作者
热门标签
jquery
HTML
CSS
PHP
ASP
PYTHON
GO
AI
C
C++
C#
PHOTOSHOP
UNITY
iOS
android
vue
xml
爬虫
SEO
LINUX
WINDOWS
JAVA
MFC
CEF3
CAD
NODEJS
GIT
Pyppeteer
article
热门文章
1
tcpdump抓包及tshark解包方法介绍
2
设置屏幕横屏_android设置横屏和竖屏的两种方法
3
request.getParameter()、request.getInputStream()和request.getReader()
4
人工智能读书笔记_读书笔记ai
5
华为ensp配置vrrp
6
Echarts 地图tooltip多行显示,当鼠标悬停地区显示数据_echarts地图tooltip
7
解读大模型(LLM)的token
8
nginx 重启nginx脚本文件
9
安卓面试题多线程 61-65
10
MacOS快速安装FFmpeg、ffprobe、ffplay
当前位置:
article
> 正文
OpenSSL公钥私钥加密解密程序_openssl genrsa -out private.pem 2048
作者:我家自动化 | 2024-03-25 08:33:29
赞
踩
openssl genrsa -out private.pem 2048
原文:
http://blog.chinaunix.net/uid-23686726-id-3413979.html
生成私钥:
openssl genrsa -out private.pem 2048
生成公钥:
openssl rsa -in private.pem -pubout > public.pem
C代码如下所示。
在Linux下的编译:gcc test.c -lcrypto -o test
#include
<
stdlib
.
h
>
#include
<
stdio
.
h
>
#include
<
string
.
h
>
#include
<
openssl
/
pem
.
h
>
#include
<
openssl
/
rsa
.
h
>
int
main
(
)
{
/
/
原始明文
char plain
[
256
]
=
"测试测试,hello123"
;
/
/
用来存放密文
char encrypted
[
1024
]
;
/
/
用来存放解密后的明文
char decrypted
[
1024
]
;
/
/
公钥和私钥文件
const
char
*
pub_key
=
"public.pem"
;
const
char
*
priv_key
=
"private.pem"
;
/
/
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
/
/
利用公钥加密明文的过程
/
/
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
/
/
打开公钥文件
FILE
*
pub_fp
=
fopen
(
pub_key
,
"r"
)
;
if
(
pub_fp
=
=
NULL
)
{
printf
(
"failed to open pub_key file %s!\n"
,
pub_key
)
;
return
-
1
;
}
/
/
从文件中读取公钥
RSA
*
rsa1
=
PEM_read_RSA_PUBKEY
(
pub_fp
,
NULL
,
NULL
,
NULL
)
;
if
(
rsa1
=
=
NULL
)
{
printf
(
"unable to read public key!\n"
)
;
return
-
1
;
}
if
(
strlen
(
plain
)
>
=
RSA_size
(
rsa1
)
-
41
)
{
printf
(
"failed to encrypt\n"
)
;
return
-
1
;
}
fclose
(
pub_fp
)
;
/
/
用公钥加密
int
len
=
RSA_public_encrypt
(
strlen
(
plain
)
,
plain
,
encrypted
,
rsa1
,
RSA_PKCS1_PADDING
)
;
if
(
len
=
=
-
1
)
{
printf
(
"failed to encrypt\n"
)
;
return
-
1
;
}
/
/
输出加密后的密文
FILE
*
fp
=
fopen
(
"out.txt"
,
"w"
)
;
if
(
fp
)
{
fwrite
(
encrypted
,
len
,
1
,
fp
)
;
fclose
(
fp
)
;
}
/
/
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
/
/
利用私钥解密密文的过程
/
/
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
/
/
打开私钥文件
FILE
*
priv_fp
=
fopen
(
priv_key
,
"r"
)
;
if
(
priv_fp
=
=
NULL
)
{
printf
(
"failed to open priv_key file %s!\n"
,
priv_key
)
;
return
-
1
;
}
/
/
从文件中读取私钥
RSA
*
rsa2
=
PEM_read_RSAPrivateKey
(
priv_fp
,
NULL
,
NULL
,
NULL
)
;
if
(
rsa2
=
=
NULL
)
{
printf
(
"unable to read private key!\n"
)
;
return
-
1
;
}
/
/
用私钥解密
len
=
RSA_private_decrypt
(
len
,
encrypted
,
decrypted
,
rsa2
,
RSA_PKCS1_PADDING
)
;
if
(
len
=
=
-
1
)
{
printf
(
"failed to decrypt!\n"
)
;
return
-
1
;
}
fclose
(
priv_fp
)
;
/
/
输出解密后的明文
decrypted
[
len
]
=
0
;
printf
(
"%s\n"
,
decrypted
)
;
}
声明:
本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:
https://www.wpsshop.cn/w/我家自动化/article/detail/308319?site
推荐阅读
article
Android
Bitmap
详细介绍_安卓
private
bitmap
origin
bitmap
; ...
Bitmap
是
Android
系统中的图像处理的最重要类之一。用它可以获取图像文件信息,进行图像剪切、旋转、缩放等操作,并...
赞
踩
article
RSA密钥使用指南_
-----
begin
rsa
private
key
-----
...
通过openssl工具生成RSA的公钥和私钥(opnssl工具可在互联网中下载到)生成RSA私钥打开bin文件夹下面的o...
赞
踩
article
OpenSSL
生成
rsa
公钥 和
私钥
_
openssl
生成公钥和
私钥
...
一、自己本地有没有安装
openssl
如果没有安装的,去下载安装http://slproweb.com/products...
赞
踩
article
给
文件
加解密
(
openssl
实现)(二)
公钥
私钥
加解密
_
openssl
私钥
加密
...
一、
openssl
命令
openssl
rsautl [-in file] [-out file] [-inkey fi...
赞
踩
article
openssl
windows
生成
公钥与
私钥
_
win10
电脑如何
生成
.
pem
私钥
文件...
一,下载安装
windows
平台
openssl
密钥
生成
工具,执行安装目录bin下的"
openssl
.exe",执行后弹出命...
赞
踩
article
openssl
--
生成
RSA
公钥和私钥_
openssl
生成
公钥和私钥...
openssl
--
生成
RSA
密钥对_
openssl
生成
公钥和私钥
openssl
生成
公钥和私钥 ...
赞
踩
article
openssl
生成
公私
钥
_
openssl
生成
公
钥
和私
钥
...
openssl
生成
RSA非对称公私
钥
_
openssl
生成
公
钥
和私
钥
openssl
生成
公
钥
和私
钥
...
赞
踩
article
openssl
RSA
的部分命令_
openssl
gen
rsa
-
out
rsa
_
2048
_
priv
...
openssl
RSA
_
openssl
gen
rsa
-
out
rsa
_
2048
_
priv
.
pem
2048
openss...
赞
踩
article
Linux
使用
openssl
工具生成
私钥
(
private
.
pem
)和公钥(
public
.
pem
)_o...
参考文章:
Linux
使用
openssl
工具生成
私钥
(
private
.
pem
)和公钥(
public
.
pem
)_AiFool...
赞
踩
article
OpenSsl
客户端生成证书请求,秘钥对的方法_
openssl
genrsa
-
out
privat...
OpenSsl
客户端生成证书请求,秘钥对的方法1、创建私钥
openssl
genrsa
-
out
private
.
pem
...
赞
踩
article
windows下安装
OpenSSL
生成RSA
私钥
与公钥_
genrsa
-out
private
.k...
下载根据提示一步步安装
OpenSSL
链接:https://pan.baidu.com/s/12ldxdKpPuY4HYn...
赞
踩
article
openssl
生成RSA私钥_
openssl
genrsa
-
out
privatekey
.
pem
...
openssl
# 生成私钥,指定
2048
位
genrsa
-
out
id_rsa_private
2048
# 生成私钥(把...
赞
踩
article
linux
+
openssl
命令之
RSA
加解密操作_
kali
openssl
rsa
使用
...
RSA
(Rivest-Shamir-Adleman)是一种非对称加密算法,由Ron Rivest、Adi Shamir和...
赞
踩
article
使用OpenSSL生成RSA公私钥_
openssl
gen
rsa
-out
rsa
_
private
_...
1.
openssl
gen
rsa
-out
rsa
_
private
_
key
_2048.
pem
2048 #生成
rsa
私,...
赞
踩
article
利用
openssl
生成
RSA
公钥
和
私钥
_基于
openssl
生成
1024 位的
rsa
公钥
-私...
利用
openssl
生成
RSA
公钥
和
私钥
_基于
openssl
生成
1024 位的
rsa
公钥
-
私钥
对基于 opens...
赞
踩
article
使用
openssl
对
文件
签
名
和验
签
_
openssl
签
名
...
这里介绍:
文件
签
名
和验
签
做了什么,
openssl
命令行工具进行
签
名
和验
签
_
openssl
签
名
openssl
签
名
...
赞
踩
article
openssl
加密(
encrypt
)、
解密
(
decrypt
)、签名(
sign
)、验证(
verify
...
openssl
加密(
encrypt
)、
解密
(
decrypt
)、签名(
sign
)、验证(
verify
)_
openssl
_...
赞
踩
article
使用OpenSSL生成RSA公私钥_
openssl
genrsa
-out
private
_
key
....
项目中需要用到公私钥实现数字签名、验签,通过下面的命令生成的:1.
openssl
genrsa
-out rsa_pri...
赞
踩
article
使用
OpenSSL
加密
和解密文件_
openssl
用公钥
加密
...
加密
_
openssl
用公钥
加密
openssl
用公钥
加密
OpenSSL
是一个实用工具,它可...
赞
踩
article
OpenSSL
基础
命令
_
openssl
命令
用法...
OpenSSL
功能之强大,
命令
组合用法之多,往往让我们的学习不知所措。在此,我们来对
openssl
命令
的使用做一个总结。...
赞
踩
相关标签
php
shell
openssl
linux
服务器
运维
网络安全
公玥
私玥
public.pem
private.pem
安全
ssl
ca证书
密码学
非对称加密
RSA