LINUX使用OpenSSL进行签名

简介: LINUX使用OpenSSL进行签名

image.png

创建私钥

# 创建私钥
openssl genrsa -out key.pri -f4 2048
# 查看私钥
openssl rsa -inform PEM -in key.pri -text

导出公钥

# 导出公钥
openssl rsa -inform PEM -outform PEM -in key.pri -out key.pub -pubout
# 查看公钥
cat key.pub

方法1:私钥签名、公钥校验

测试发现方法1与方法2的sig文件不同。所以要分开。


# 签名
openssl dgst -sha256 -out file.sig -sign key.pri -keyform PEM file.txt
# 查看签名
od -v -An -t x1 file.sig
# 公钥校验
openssl dgst -sha256 -keyform PEM -verify key.pub -signature file.sig file.txt

方法2:私钥签名、公钥校验

# 私钥签名
openssl dgst -sha256 -binary -out file.sha256 file.txt
openssl rsautl -out file.sig -sign -inkey key.pri -in file.sha256
# 查看签名
od -v -An -t x1 file.sig
# 计算信息摘要
openssl rsautl -out file.rec -inkey key.pub -in file.sig -pubin -verify
# 查看信息摘要
od -v -An -t x1 file.rec
# 计算原文件f的信息摘要。
openssl dgst -sha256 -binary -out file.sha256 file.txt
# 查看
od -v -An -t x1 file.sha256


目录
相关文章
|
2月前
|
Linux 编译器 vr&ar
linux交叉编译一些常用依赖库util-linux,zlib,sqlite3,eudev ,openssl,libpng,glibc
linux交叉编译一些常用依赖库util-linux,zlib,sqlite3,eudev ,openssl,libpng,glibc
44 1
|
Linux
解决办法:更新linux时候提示“由于没有公钥,无法验证下列签名 ***”
解决办法:更新linux时候提示“由于没有公钥,无法验证下列签名 ***”
577 1
|
Ubuntu Linux 编译器
openssl 的编译(linux、Ubuntu) 和 交叉编译(arm、Hi3531A)的问题分析、解决
openssl 的编译(linux、Ubuntu) 和 交叉编译(arm、Hi3531A)的问题分析、解决
823 0
|
C语言
MQTT交叉编译(海思v300 arm-hisiv300-linux-):openssl、paho.mqtt.c、paho.mqtt.cpp
MQTT交叉编译(海思v300 arm-hisiv300-linux-):openssl、paho.mqtt.c、paho.mqtt.cpp
552 0
MQTT交叉编译(海思v300 arm-hisiv300-linux-):openssl、paho.mqtt.c、paho.mqtt.cpp
|
6天前
|
安全 Linux Android开发
FFmpeg开发笔记(十六)Linux交叉编译Android的OpenSSL库
该文介绍了如何在Linux服务器上交叉编译Android的FFmpeg库以支持HTTPS视频播放。首先,从GitHub下载openssl源码,解压后通过编译脚本`build_openssl.sh`生成64位静态库。接着,更新环境变量加载openssl,并编辑FFmpeg配置脚本`config_ffmpeg_openssl.sh`启用openssl支持。然后,编译安装FFmpeg。最后,将编译好的库文件导入App工程的相应目录,修改视频链接为HTTPS,App即可播放HTTPS在线视频。
FFmpeg开发笔记(十六)Linux交叉编译Android的OpenSSL库
|
16天前
|
安全 应用服务中间件 网络安全
linux_nginx中添加ssl配置(open ssl)
linux_nginx中添加ssl配置(open ssl)
25 1
|
2月前
|
算法 安全 Linux
Linux 裁剪并交叉编译openssl库
Linux 裁剪并交叉编译openssl库
39 1
|
4月前
|
Linux
Linux安装OpenSSL
Linux安装OpenSSL
|
5月前
|
应用服务中间件 Linux 网络安全
Linux【脚本 06】HTTPS转发HTTP安装OpenSSL、Nginx(with-http_ssl_module)及自签名的X.509数字证书生成(一键部署生成脚本分享)
Linux【脚本 06】HTTPS转发HTTP安装OpenSSL、Nginx(with-http_ssl_module)及自签名的X.509数字证书生成(一键部署生成脚本分享)
70 1
|
10月前
|
算法 编译器 Linux
Linux下安装openssl
Linux下安装openssl
728 0