博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
OpenSSL介绍
阅读量:7124 次
发布时间:2019-06-28

本文共 1423 字,大约阅读时间需要 4 分钟。

1. Openssl安装
OpenSSL: 

download: wget http://www.openssl.org/source/openssl-1.0.0-beta4.tar.gz

【查看系统中的openssl情况:which openssl, 找到默认的安装在/usr/bin/openssl目录下】
tar zxvf openssl-1.0.0-beta4.tar.gz
./config
make && make install
 
2. 加密常识
  对称机密与非对称加密
(1) 对称加密采取加密和解密采取同样的密钥,加密速度快,但是密钥的传递是个问题
加密格式:
openssl enc 加密算法 -k 密钥 -in 明文 -out 密文
例子:/opt/openssl/bin/openssl enc -des3 -k mykey -in test1.txt -out test1.enc
解密格式:
openssl enc 加密算法 -d -k 密钥 -in 密文 -out 明文
例子:/opt/openssl/bin/openssl enc -des3 -d -k mykey -in test1.enc -out test1.out
 
(2)非对称加密
用公钥加密,用私钥解密;公钥都可以获取,私钥自己掌握。传输的密文被获取也无法转换,这样无需传递密钥,又保证了安全。向谁传递内容,则用谁的公钥进行加密。
 
无需传输密钥,但加密速度慢,是对称加密速度的1/1000左右,一般只用于加密少量的数据
 一般分三步:首先生成private/public key, 再用公钥加密明文,最后用私钥解密密文,则得到的便是需要的信息
  <1> 产生密钥对
  生成私钥:/opt/openssl/bin/openssl genrsa -out 
private.key 1024
  根据私钥产生公钥: /opt/openssl/bin/openssl rsa -in 
private.key -pubout > 
public.key
  <2> 用公钥加密明文
/opt/openssl/bin/openssl rsautl -in 
test1.txt -out 
test1.pk -inkey 
public.key -pubin -encrypt
  <3> 用私钥解密
/opt/openssl/bin/openssl rsautl -in 
test1.pk -out 
test1.open -inkey 
private.key -decrypt
 
(3)两种加密方式的结合
用对称加密方式的session key加密大量文件,再用非对称加密的公钥对session key进行加密, 机密后的session key和用session key加密的信息一起传递; 对方再用非对称加密的私钥对已加密的session key进行解密,再用解密后的session key对用对称加密的信息进行解密,最后得到明文。
 
(4)
私钥加密,公钥解密的应用:数字签名和认证(肯定是持有私钥的人签过的文件)
  私钥加密,公钥验证
(5)公钥如何确认是对的呢?即公钥需要证明
公钥如何获取?是否不可伪造,必须引入第三方:证书
CA
 
本文转自 tianya23 51CTO博客,原文链接:http://blog.51cto.com/tianya23/253872,如需转载请自行联系原作者
你可能感兴趣的文章
java知识整理
查看>>
github pages 添加godaddy的dns解析
查看>>
转 微服务的4个设计原则和19个解决方案
查看>>
黑马程序员java笔记之八-----反射Class
查看>>
adobe flash player 安装失败
查看>>
图论--拓扑排序模板
查看>>
LeetCode10 Indexed tree
查看>>
c# webbrowser.documentstream保存html文件 解决gb2312编码 存下后出现乱码的问题
查看>>
Oracle数据控制语言(DCL)
查看>>
linux 磁盘io监控
查看>>
Java中instanceof关键字的用法
查看>>
单链表的创建,插入,删除等操作——精简版
查看>>
PHP访问Oracle数据库
查看>>
Jmeter 线程之间传递变量
查看>>
Python内置函数清单
查看>>
Learning Entity Framework(1)
查看>>
Learning EntityFramework(3)
查看>>
bzoj 3028 食物——生成函数
查看>>
MongoDB资料汇总
查看>>
写给运维兄弟
查看>>