openssl使用
一、
加密方法
dsaffdfd
fgggg
1.对称加密:
加密算法 + 口令
加密算法:
DES(56bits),3DES(用des加密反复加密三次),AES(128bits),Blowfish
特性:
加密法,加密/解密方使用同一个口令
把数据分成块,然后进行加密
面临问题:
密钥交换 -》解决:DH算法
用户身份认证
数据完整性
2.非对称加密:
加密算法:
RSA,EIGamal,DSA(只能签名不能加密)
一般而言,先用对称加密算法对数据进行加密,然后再用非对称加密把口令加密
密钥交换
用户身份认证
数据完整性
3.单向加密:
抽取数据特征码:
MD5(128bits),SHA1(160bits),SHA512,CRC-32(512bits)
以上实现工具: openssl,gpg
二、openssl
1.openssl:套件,开源程序
libcrypto:通用功能的加密库
libssl:用于实现TLS/SSL的功能
openssl:多功能命令工具
生成密钥、创建数字证书、手动加密解密数据
2.加密解密技术常用的功能及算法
a.对称加密:
算法:DES(56bits),3DES(用des加密反复加密三次),AES(128bits),Blowfish
实现工具:gpg,openssl enc
例:openssl enc
# openssl enc -des3 -a -salt -in /root/a.txt -out /tmp/a.jiami 加密
# openssl enc -d -des3 -a -salt -in /tmp/a.jiami -out /tmp/a.new 解密
b.单向加密:
算法:MD5(128bits),SHA1(160bits),SHA512,CRC-32(512bits)
实现工具:sha1sum,md5sum,cksum,openssl dgst
c.非对称加密:
非对称加密一般只做密钥交换,用户身份验证
密钥对:
公钥:pkey
私钥:skey
工具:gpg,openssl rsautl
数字证书:
证书格式:x509,pkcs
x509格式:
公钥和有效期限
持有者的个人合法身份信息
证书的使用方式
CA的信息
CA的数字签名
谁给CA发证书,CA要证书有什么用?
自签证书,CA证书包含CA的公钥,主机请求的到后,验证用户使用


三、用openssl实现私有CA
配置文件:/etc/pki/tls/openssl.cnf
[root@ca CA]# pwd
/etc/pki/CA
[root@ca CA]# tree
.
├── certs #签署证书目录
├── crl #吊销证书目录
├── newcerts
└── private
1、生成密钥对:
[root@ca ~]# cd /etc/pki/CA/
[root@ca CA]# (umask 077;openssl genrsa -out private/cakey.pem 2048)
Generating RSA private key, 2048 bit long modulus
............+++
...............................................................................+++
e is 65537 (0x10001)
[root@ca CA]# ls private/
cakey.pem
[root@ca CA]# openssl rsa -in private/cakey.pem -pubout -text -noout #查看公钥
openssl使用的更多相关文章
- RSA非对称加密,使用OpenSSL生成证书,iOS加密,java解密
最近换了一份工作,工作了大概一个多月了吧.差不多得有两个月没有更新博客了吧.在新公司自己写了一个iOS的比较通用的可以架构一个中型应用的不算是框架的一个结构,并已经投入使用.哈哈 说说文章标题的相关的 ...
- 显示本地openssl支持的加密算法
参考页面: http://www.yuanjiaocheng.net/webapi/parameter-binding.html http://www.yuanjiaocheng.net/webapi ...
- 非阻塞/异步(epoll) openssl
前段时间在自己的异步网络框架handy中添加openssl的支持,当时在网络上搜索了半天也没有找到很好的例子,后来自己慢慢的摸索,耗费不少时间,终于搞定.因此把相关的资料整理一下,并给出简单的例子,让 ...
- PHPmailer关于Extension missing: openssl报错的解决
最近在写一个网页的时候,需要用到PHPmailer来发送邮件,按照官网上给出的demo写出一个例子,却报错Extension missing: openssl 最后发现需要修改php.ini中的配置: ...
- openssl、x509、crt、cer、key、csr、ssl、tls 这些都是什么鬼?
今天尝试在mac机上搭建docker registry私有仓库时,杯具的发现最新的registry出于安全考虑,强制使用ssl认证,于是又详细了解linux/mac上openssl的使用方法,接触了一 ...
- Windows10下安装OpenSSL
Windows10下安装的方法 安装环境:Windows10专业版+VS2013 工具:ActivePerl-5.22.1.2201-MSWin32-x64-299574.msi,下载地址:http: ...
- CentOS升级openssl
才设置了http2,结果蓝狗说我网站不安全,检测一下发现openssl有漏洞,于是准备升级一下openssl 检测网站: www.ssllabs.com/ssltest/analyze.html # ...
- openssl+前端jsrsa签名+后端nodejs验签
内容如标题所示,总体分为三个部分: 一.win10下安装openssl,然后通过openssl工具生成RSA的公钥和私钥 (1)win10下安装openssl需要的工具有:VS2013,Perl,na ...
- openssl用法详解
OpenSSL 是一个开源项目,其组成主要包括一下三个组件: openssl:多用途的命令行工具 libcrypto:加密算法库 libssl:加密模块应用库,实现了ssl及tls openssl可以 ...
- Nginx 1.10.1 编译、配置文档(支持http_v2,TLSv1.2,openssl v1.0.2)
1.安装常用工具及基础包: [root@localhost /]# yum -y install wget git vim make gcc gcc-c++ openssl-devel [root@l ...
随机推荐
- Log4Net 之将日志记录到数据库的配置 (一)
原文:Log4Net 之将日志记录到数据库的配置 (一) 前段时间我一直想做一个通用一点的日志记录系统,可以便于不同的业务组调用进行日志记录及分析.本来打算着自己下手写一个,后面发现各业务组可能会需要 ...
- 重磅 | Elasticsearch7.X学习路线图
原文:重磅 | Elasticsearch7.X学习路线图 版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明. 本文链接:https://blog.c ...
- AspNetCore使用MySQL
既然NetCore开源,那么也使用开源的MySQL的数据库呢?当然NetCore不止单单配MSSQL数据库而已.今天我来讲解NetCore怎么使用MySQL进行开发. 首先新建一个NetCore项目 ...
- vue-cli-webpake搭建和配置
确认创建项目后,后续还需输入一下项目名称.项目描述.作者.打包方式.是否使用ESLint规范代码等等,详见上图.安装顺利执行后会,生成如下文件目录:1.全局化安装cnpm npm install cn ...
- 如何在Set集合中避免重复元素
文章翻译自 Avoiding near-duplicates in sets, 作者Paul Hudson @twostraws是一名优秀的Swifter. 这是我第一次翻译,可能有翻译不到位的地方, ...
- load 和 initialize 的区别
官方文档 Apple的官方文档很清楚地说明了 initialize 和 load 的区别在于: load 是只要类所在文件被引用就会被调用,而 initialize 是在类或者其子类的第一个方法被调用 ...
- Windows 进入上帝模式窗口
Win10上帝模式如何启用? 默认情况下,Win10的上帝模式是隐藏的,如果要开启的话,操作步骤也非常简单,下面就介绍两种方法. 方法一.直接运行命令行 1.使用[Win + R ]快捷键打开“运行” ...
- ES基本原理
Elasticsearch是基于一款高性能的.可扩展的信息检索工具库Lucene构建的强大的搜索引擎,在很多情况,它也被作为NoSql数据库并取得了很好的效果,下面介绍下ES的基本概念,映射到数据库的 ...
- Linux ssh内置sftp配置说明
centos7 环境下已验证 首先建立两个用户,用于sftp访问使用. eg: useradd -d /opt/sftp -s /bin/nologin sftp 说明 -s /bin/nologi ...
- [web 安全] xxe
一.探测漏洞 1.是否支持实体解析. 2.是否支持外部实体解析. 2.1 直接读取本地文件: 2.2 远程文件: 3.不回显错误,则用 blind xxe.(先获取本地数据,然后带着本地数据去访问恶意 ...