专题:OpenSSL
一、常用操作
对称加密:
openssl enc -e -aes256 -base64 -in goal.file -out result.file 加密,-base64 指使用 base64 編码
openssl enc -d -aes256 -base64 -in result.file -out goal.file 解密
单向加密(文件完整性,没有被篡改过):
openssl dgst -sha512 goal.file 使用 sha512 算法生成特征码,默认为 md5 算法
生成随机数
openssl rand -base64 按 base64 編码规则,生成 位随机数
管理用户密码(即对密码加密存放)
openssl passwd - -salt `openssl rand -base64 ` 注:- 指使用 md5 算法,另可选 -apr1;-1 与 -salt 均为可选项
非对称加密(密钥对,私钥加密用于签名証明身份,公钥加密用于保护文件内容)
openssl genrsa > pkey.file && chmod pkey.file 生成私钥,密钥强度设置为 ,可选 或 ;私钥权限必須严整控制
openssl rsa -in pkey.file -pubout > pubkey.file 生成公钥(从私钥中提取)
openssl rsautl -encrypt -in goal.file -inkey pubkey.file -pubin -out result.file 使用公钥对文件 goal.file 加密,-pubin 声明使用公钥加密,默认是私钥
openssl rsautl -decrypt -in result.file -inkey pkey.file -out goal.file 使用私钥对文件 result.file 解密
二、 CA 相关
参考資料:
- http://www.cnblogs.com/yjmyzz/p/openssl-tutorial.html
- http://www.cnblogs.com/LittleHann/p/3738141.html
各詞解释:
- PKI :Public Key Infrastructure
- CRL :Certificate revocation lists ,证书黑名单、证书废除列表
- PKCS :Public Key Cryptography Standards ,公钥加密标准
- X.509 :国际电信联盟-电信部分(ITU-T)和国际标准化组织(ISO)的证书格式标准,作为ITU-ISO目录服务系列标准的一部分,X.509定义了公钥证书结构的基本标准;一份X.509证书是一些标准字段的集合,这些字段包含有关用户或设备及其相应公钥的信息
- CSR :Certificate Signing Request,证书签名请求,是需要提交給 CA 的申请文件
- CRT :certificate,即证书
- PEM :Privacy Enhanced Mail,証书文件編码格式的一种,采用 base64 文本文件方式
- DER :Distinguished Encoding Rules,另一种証书文件編码格式,二进制編码,常见于 Windows 平台
配置文件位置:/etc/ssl/openssl.cnf 不同系统平台可能有差别,使用 openssl version -d 命令进行确认
一、自签証书(CA 服务端):
- 对应 openssl.cnf 中定义的位置,创建 index.txt 、serial 文件,index.txt 留空,serial 文件根据需要每行添加一个数字(如:000、001等)
- 使用 openssl genrsa 生成服务端私钥:caPrivate.key
- 生成自签証书:openssl req -x509 -new -key CAprivate.key -days 3650 > CAcert.pem 注: -x509 选项用于创建自签(根) CA ,-days 指明有效期
二、申请証书(客户端):
- 生成申请文件并提交至 CA 机构 :openssl req -new -key USERprivate.key -days 365 > USERcert.scr
三、签发証书(服务端):
- 签发証书:openssl ca -in USERcert.csr -days 100 > USERcert.pem
专题:OpenSSL的更多相关文章
- ios专题 - openSSL
1 概述 1.1 产生背景 基 于万维网的电子商务和网上银行等新兴应用,极大地方便了人们的日常生活,受到人们的青睐.由于这些应用都需要在网络上进行在线交易,它们对网络通信的安全 性提出了更高的要求 ...
- 「mysql优化专题」高可用性、负载均衡的mysql集群解决方案(12)
一.为什么需要mysql集群? 一个庞大的分布式系统的性能瓶颈中,最脆弱的就是连接.连接有两个,一个是客户端与后端的连接,另一个是后端与数据库的连接.简单如图下两个蓝色框框(其实,这张图是我在悟空问答 ...
- Linux 安装OpenSSL出错的解决方法
以前编译php没有 –with–openssl 现在要使用到 openssl ,phpinze扩展安装,但是在make时候报错 今天找这个在网上找了大半天,最后总结应该是php版本本身的问题,错误是p ...
- CORS 专题
CORS(跨域资源共享,Cross-Origin Resource Sharing)CORS其实出现时间不短了,它在维基百科上的定义是:跨域资源共享(CORS )是一种网络浏览器的技术规范,它为Web ...
- OpenSSL之X509系列
OpenSSL之X509系列之1---引言和X509概述 [引言] X509是系列的函数在我们开发与PKI相关的应用的时候我们都会用到,但是OpenSSL中对X509的描述并不是很多,鉴于些,我 ...
- RSA非对称加密,使用OpenSSL生成证书,iOS加密,java解密
最近换了一份工作,工作了大概一个多月了吧.差不多得有两个月没有更新博客了吧.在新公司自己写了一个iOS的比较通用的可以架构一个中型应用的不算是框架的一个结构,并已经投入使用.哈哈 说说文章标题的相关的 ...
- 显示本地openssl支持的加密算法
参考页面: http://www.yuanjiaocheng.net/webapi/parameter-binding.html http://www.yuanjiaocheng.net/webapi ...
- 2016年中国微信小程序专题研究报告
2016年12月29日,全球领先的移动互联网第三方数据挖掘和分析机构iiMedia Research(艾媒咨询)权威首发<2016年中国微信小程序专题研究报告>. 报告显示,82.6%手机 ...
- [.NET领域驱动设计实战系列]专题二:结合领域驱动设计的面向服务架构来搭建网上书店
一.前言 在前面专题一中,我已经介绍了我写这系列文章的初衷了.由于dax.net中的DDD框架和Byteart Retail案例并没有对其形成过程做一步步分析,而是把整个DDD的实现案例展现给我们,这 ...
随机推荐
- C++异常处理try、catch 没有finally
程序的错误大致可以分为三种,分别是语法错误.逻辑错误和运行时错误: 1) 语法错误在编译和链接阶段就能发现,只有 100% 符合语法规则的代码才能生成可执行程序.语法错误是最容易发现.最容易定位.最容 ...
- scp指定端口 从远程机器复制目录到本机器目录
scp -P 22622 -r root@192.168.70.63:/root/iNmon ./ -P port 注意是大写的P, port是指定数据传输用到的端口 root@192.168.70 ...
- zabbix添加对web页面url的状态监控
zabbix3.0.4添加对web页面url的状态监控 1.应用集配置 在配置—>主机中打开主机列表,选择需要添加监控主机的web,创建应用集 2.web监测配置 选择web场景,再单击右上角的 ...
- python 数据压缩
zlib 压缩 import zlib import this s = this.s.encode('utf8')*10 for i in range(10): data = zlib.compres ...
- __attribute__((regparm(3))) from GNU C
在 x86 上,regparm 属性会传递一个数值给编译器,这个数值会告诉编译器要用多少个寄存器来传递函数参数(EAX, EDX 或 ECX,最多 3 个寄存器),通常情况下函数是用堆栈来传递参数的. ...
- InnoDB B树 锁
InnoDB B树 叶子=>主键+数记录非叶子=>主键1+主键3...主键4 事务和行锁 索引项加锁 相等条件来访问更新数据,避免使用范围条件 (1)InnoDB的行销是基于索引实现的,如 ...
- arcpy-字段唯一值、重复值、最值、平均值、方差、标准差、中数、众数
插个广告,制作ArcGIS的Tool工具学习下面的教程就对了: 零基础学习Python制作ArcGIS自定义工具观看链接 <零基础学习Python制作ArcGIS自定义工具>课程简介 im ...
- PHP操作XML方法之 XML Expat Parser
XML Expat Parser 简介 此PHP扩展实现了使用PHP支持JamesClark编写的expat.此工具包可解析(但不能验证)XML文档.它支持PHP所提供的3种字符编码:US-ASCII ...
- Codeforces 747F Igor and Interesting Numbers DP 组合数
题意:给你一个数n和t,问字母出现次数不超过t,第n小的16进制数是多少. 思路:容易联想到数位DP, 然而并不是...我们需要知道有多少位,在知道有多少位之后,用试填法找出答案.我们设dp[i][j ...
- 【CSS】div的背景图完整图片覆盖
最初的代码: .container_first { width: 100%; height: 100%; background: url(10176581.jpg); background-size: ...