openssl命令行进行RSA加密解密

转载 2013年12月06日 10:17:41

http://www.cnblogs.com/aLittleBitCool/archive/2011/09/22/2185418.html


openssl是一个功能强大的工具包,它集成了众多密码算法及实用工具。我们即可以利用它提供的命令台工具生成密钥、证书来加密解密文件,也可以在利用其提供的API接口在代码中对传输信息进行加密。

RSA是一个非对称加密算法。简单说来,非对称加密算法就是说加密解密一个文件需要有两个密钥,一个用来加密,为公钥,一个用来解密,为私钥。证书可以用来授权公钥的使用。

今天小研究了下openssl的rsa加密,其中主要涉及利用公钥和密钥加解密文件,没有涉及对证书的操作。想要集体了解的可以去:

http://www.openssl.org/

http://blog.csdn.net/jiangsq12345/article/details/6066275

---------------------------------------------------------------------------------------------------------------------

首先介绍下命令台下openssl工具的简单使用:

生成一个密钥:

openssl genrsa -out test.key 1024

这里-out指定生成文件的。需要注意的是这个文件包含了公钥和密钥两部分,也就是说这个文件即可用来加密也可以用来解密。后面的1024是生成密钥的长度。

openssl可以将这个文件中的公钥提取出来:

openssl rsa -in test.key -pubout -out test_pub.key

-in指定输入文件,-out指定提取生成公钥的文件名。至此,我们手上就有了一个公钥,一个私钥(包含公钥)。现在可以将用公钥来加密文件了。

我在目录中创建一个hello的文本文件,然后利用此前生成的公钥加密文件

openssl rsautl -encrypt -in hello -inkey test_pub.key -pubin -out hello.en 

-in指定要加密的文件,-inkey指定密钥,-pubin表明是用纯公钥文件加密,-out为加密后的文件。

解密文件:

openssl rsautl -decrypt -in hello.en -inkey test.key -out hello.de

-in指定被加密的文件,-inkey指定私钥文件,-out为解密后的文件。

至此,一次加密解密的过程告终。在实际使用中还可能包括证书,这个以后有机会再说~

相关文章推荐

使用openssl命令进行加密解密及散列运算的命令行

/*********************************************************************  * Author  : Samson  * Date...

OpenSSL命令---rsautl

本指令能够使用RSA算法签名,验证身份,加密/解密数据。

Linux下利用openssl对文件进行加密和解密

--建立文件test.txt, 特意写入中英文 # cd /tmp # echo "test测试" > test.txt --开始加密, 使用aes-128-cbc算法, 也可以使用其他算...

OpenSSL命令---enc

对称加密算法工具。它能够运用块或者流算法对数据加/解密。还能够把加密/接密,还可以把结果进行base64编码。

openssl几个加密算法使用介绍

openssl几个加密算法使用介绍1.openssl简介1)openssl概述  OpenSSL 是一个强大的安全套接字层密码库,囊括主要的密码算法、常用的密钥和证书封装管理功能及SSL协议,并提供丰...

OpenSSL命令行工具验证RSA加解密

原文地址:http://blog.csdn.net/zhangyang0402/article/details/4071196 一、发送方A: 生成私钥: OpenSSL> genrsa -pa...

openssl 通过公钥/私钥加解密文件

Openssl 加解密文件命令行方式加解密文件 openssl 指定加密/解密算法加密 openssl 指定公钥/私钥文件加密

OpenSSL公钥私钥加密解密程序

原文:http://blog.chinaunix.net/uid-23686726-id-3413979.html 生成私钥: openssl genrsa -out privat...

使用openssl命令剖析RSA私钥文件格式

Openssl提供了强大证书功能,生成密钥对、证书,颁发证书、生成crl、验证证书、销毁证书等。本文将j介绍如何利用openssl的命令分析RSA私钥文件格式,同时也将简单介绍几种常见的私钥文件格式。...
  • Zhymax
  • Zhymax
  • 2012-06-22 09:48
  • 14423

RSA加密算法详解

研究RSA 不知为何,这几天突然有些心烦。望苍茫大地,凭添几分忧伤,可能是下雨的缘故。本篇主要想详细介绍RSA加密算法的原理,经常听别人说,这里是自己想搞清楚,弄明白。首先介绍了基本的数学原理,...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)