一、

加密方法

 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使用的更多相关文章

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

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

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

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

  3. 非阻塞/异步(epoll) openssl

    前段时间在自己的异步网络框架handy中添加openssl的支持,当时在网络上搜索了半天也没有找到很好的例子,后来自己慢慢的摸索,耗费不少时间,终于搞定.因此把相关的资料整理一下,并给出简单的例子,让 ...

  4. PHPmailer关于Extension missing: openssl报错的解决

    最近在写一个网页的时候,需要用到PHPmailer来发送邮件,按照官网上给出的demo写出一个例子,却报错Extension missing: openssl 最后发现需要修改php.ini中的配置: ...

  5. openssl、x509、crt、cer、key、csr、ssl、tls 这些都是什么鬼?

    今天尝试在mac机上搭建docker registry私有仓库时,杯具的发现最新的registry出于安全考虑,强制使用ssl认证,于是又详细了解linux/mac上openssl的使用方法,接触了一 ...

  6. Windows10下安装OpenSSL

    Windows10下安装的方法 安装环境:Windows10专业版+VS2013 工具:ActivePerl-5.22.1.2201-MSWin32-x64-299574.msi,下载地址:http: ...

  7. CentOS升级openssl

    才设置了http2,结果蓝狗说我网站不安全,检测一下发现openssl有漏洞,于是准备升级一下openssl 检测网站: www.ssllabs.com/ssltest/analyze.html # ...

  8. openssl+前端jsrsa签名+后端nodejs验签

    内容如标题所示,总体分为三个部分: 一.win10下安装openssl,然后通过openssl工具生成RSA的公钥和私钥 (1)win10下安装openssl需要的工具有:VS2013,Perl,na ...

  9. openssl用法详解

    OpenSSL 是一个开源项目,其组成主要包括一下三个组件: openssl:多用途的命令行工具 libcrypto:加密算法库 libssl:加密模块应用库,实现了ssl及tls openssl可以 ...

  10. 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 ...

随机推荐

  1. 51nod - 1586 - 约数和 - 打表 - 思维

    https://www.51nod.com/Challenge/Problem.html#problemId=1586 一眼看过去居然一点思路都没有的,一言不合就打表,打贡献表. #include & ...

  2. c知识点总结2

    函数 int func(int x){ //x:形式参数 .... } int main(){ .... int res=func(z); //z:实际参数 } 实参与形参具有不同的存储单元, 实参与 ...

  3. 监听table滚动事件,滚动到底部时加载数据

    mounted() { this.$refs.scrollTable.addEventListener( 'scroll',(event) => { this.getDistance(event ...

  4. jQuery学习总结02-属性

    1.attr(name|properties|key,value|fn) 说明:设置和返回被选元素的属性值 示例: 参数: name(属性名称) string properties(作为属性的'名/值 ...

  5. linux Sersync 上配置客户端

    1.安装 Rsync 并配置相关权限 在 SERSYNC 上配置 RSYNC 客户端相关权限认证: [root@SERSYNC /]# yum install rsync -y [root@SERSY ...

  6. V7双雄-基于Virtex7XC7VX690T的高性能计算板卡解决方案

    北京太速V7双雄-基于Virtex7XC7VX690T的高性能计算板卡

  7. selenium下拉菜单

    from selenium.webdriver.support.select import Selectdef select_value(self, css, value):    '''    选中 ...

  8. No qualifying bean of type xxx' available 的一种解决方法

    获取bean Class beanClass = Class.forName(event.className); FilterEvent filterEvent = (FilterEvent)Bean ...

  9. P2254 [NOI2005]瑰丽华尔兹

    链接P2254 [NOI2005]瑰丽华尔兹 首先有个很朴素的\(dp\),设\(f_{i,j,k}\)表示\(k\)时刻地点\(i,j\)的最长长度. 然后这样不能优化,考虑利用一段连续时间是同一个 ...

  10. Orabbix无法获取Oracle DB Size和DB Files Size的解决方法

    Orabbix无法获取Oracle DB Size和DB Files Size的解决方法 这几天在研究Orabbix时发现在Zabbix中无法获取DB Size和DB Files Size的大小,后来 ...