一、常用操作


对称加密

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 相关


参考資料

各詞解释

  • 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 服务端):

  1. 对应 openssl.cnf 中定义的位置,创建 index.txt 、serial 文件,index.txt 留空,serial 文件根据需要每行添加一个数字(如:000、001等)
  2. 使用 openssl genrsa 生成服务端私钥:caPrivate.key
  3. 生成自签証书: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的更多相关文章

  1. ios专题 - openSSL

    1  概述 1.1  产生背景 基 于万维网的电子商务和网上银行等新兴应用,极大地方便了人们的日常生活,受到人们的青睐.由于这些应用都需要在网络上进行在线交易,它们对网络通信的安全 性提出了更高的要求 ...

  2. 「mysql优化专题」高可用性、负载均衡的mysql集群解决方案(12)

    一.为什么需要mysql集群? 一个庞大的分布式系统的性能瓶颈中,最脆弱的就是连接.连接有两个,一个是客户端与后端的连接,另一个是后端与数据库的连接.简单如图下两个蓝色框框(其实,这张图是我在悟空问答 ...

  3. Linux 安装OpenSSL出错的解决方法

    以前编译php没有 –with–openssl 现在要使用到 openssl ,phpinze扩展安装,但是在make时候报错 今天找这个在网上找了大半天,最后总结应该是php版本本身的问题,错误是p ...

  4. CORS 专题

    CORS(跨域资源共享,Cross-Origin Resource Sharing)CORS其实出现时间不短了,它在维基百科上的定义是:跨域资源共享(CORS )是一种网络浏览器的技术规范,它为Web ...

  5. OpenSSL之X509系列

    OpenSSL之X509系列之1---引言和X509概述 [引言]    X509是系列的函数在我们开发与PKI相关的应用的时候我们都会用到,但是OpenSSL中对X509的描述并不是很多,鉴于些,我 ...

  6. RSA非对称加密,使用OpenSSL生成证书,iOS加密,java解密

    最近换了一份工作,工作了大概一个多月了吧.差不多得有两个月没有更新博客了吧.在新公司自己写了一个iOS的比较通用的可以架构一个中型应用的不算是框架的一个结构,并已经投入使用.哈哈 说说文章标题的相关的 ...

  7. 显示本地openssl支持的加密算法

    参考页面: http://www.yuanjiaocheng.net/webapi/parameter-binding.html http://www.yuanjiaocheng.net/webapi ...

  8. 2016年中国微信小程序专题研究报告

    2016年12月29日,全球领先的移动互联网第三方数据挖掘和分析机构iiMedia Research(艾媒咨询)权威首发<2016年中国微信小程序专题研究报告>. 报告显示,82.6%手机 ...

  9. [.NET领域驱动设计实战系列]专题二:结合领域驱动设计的面向服务架构来搭建网上书店

    一.前言 在前面专题一中,我已经介绍了我写这系列文章的初衷了.由于dax.net中的DDD框架和Byteart Retail案例并没有对其形成过程做一步步分析,而是把整个DDD的实现案例展现给我们,这 ...

随机推荐

  1. angular 通过路由获取ID

    constructor( private dataService: TestListsService, private route: ActivatedRoute, ) { // 通过路由获取ID c ...

  2. 解决(Oracle)ORA-12528: TNS: 监听程序: 所有适用例程都无法建立新连接 问题

    解决(Oracle)ORA-12528: TNS: 监听程序: 所有适用例程都无法建立新连接 问题通过在CMD下用lsnrctl status 查看出的问题:发现BLOCKEDORACLE启动步骤:s ...

  3. 树的重心(DFS)

    ;vector< ; i < v[node].size() ; i++){ , ; i <= n- ; i++){ cin >> a >> b; v[a].p ...

  4. overflow:hidden失效

    overflow:hidden失效 为了页面的健壮性,我们常常需要使用overflow:hidden.有时候是为了防止布局被撑开,有时候是为了配合其它规则实现文字截断,还有时候纯粹是为了创建块级上下文 ...

  5. Python变量空间

    a==b的时候a和b指向同一个ID,然后a重新赋值后a指向另一个ID 那么这样的话,变量(a...)不就是数据空间"123"的引用了吗(其实在Python中这才是正确的说法)

  6. BUUCTF MISC部分题目wp

    MISC这里是平台上比较简单的misc,都放在一起,难一些的会单独写1,二维码图片里藏了一个压缩包,用binwalk -e分离,提示密码为4个数字,fcrackzip -b -c1 -l 4 -u 得 ...

  7. 《代码大全2》读书笔记 Week8

    这一周博主阅读了<代码大全2>第11章至第13章,第三部分——"变量"就结束了,第四部分作者将转入语句的讨论. 第十一章作者详细阐述了变量名的有效命名规则,第十二和十三 ...

  8. Shell 变量的分类

  9. tee - 从标准输入写往文件和标准输出

    总览 (SYNOPSIS) tee [OPTION]... [FILE]... 描述 (DESCRIPTION) 把 标准输入 的 数据 复制到 每一个 文件 FILE, 同时 送往 标准输出. -a ...

  10. Stm32 控制1.44寸液晶显示图片 基于stm32f051k8u6

    在线图片转BMP格式:https://app.xunjiepdf.com/img2bmp 一.使用工具对图片生成字符数组 1. 使用1.44寸的液晶其像素是128*128的16位真彩,则需要把图片调整 ...