Cryptographic Failures 加密失效

根据 OWASP 的说法,加密失效之前的版本称为敏感资料泄露.

主要是信息传输过程中,由于加密失效或者是直接明文传输,因而导致敏感资料的泄露.

密码学发展到现在,在我们身边随处可见,小到我们手里的账户密码,大到军事信号加密.

我们常见的加密算法有主要有对称加密,非对称加密,还有不需要密钥的散列算法.

对称算法主要有:

  1. DES
  2. 3DES
  3. AES

非对称算法有:

  1. RSA
  2. DSA
  3. ECC

散列算法有:

  1. SHA-1
  2. MD5

在互联网中常见的明文传输有 HTTP , SMTP , FTP 等协议,在绝对内网里面,如果人员可靠的话,并没有太大的影响;如果说是在外网的话,是很难保证传输的数据不会被修改.

HTTP 在 web 中是很常见的传输,但是它是一种明文传输,所以很难保证其安全性,所以在传输的路径上,增加了一层 SSL 加密,就变成现
在主流的 HTTPS 传输.

HTTP + SSL = HTTPS

既然要讲加密就讲讲这个 SSL 吧

SSL 是个非常典型的非对称加密技术

你想想,如果 SSL 是个对称加密技术,那么这个密钥如何保证传输的过程是安全的?

要我说,最安全的办法就是你把你的密钥放到 U 盘里,然后跑到你要传输数据人的家里,确认电脑安全性,然后再把密钥交给他.

虽然安全了,但是费力的很.

有没有简单的办法呢?

我相信大家应该学过乘法吧

c=a * b

c=d * e

如果说我给的公钥是 c ,内容为 a ,私钥为 b .

这个公钥是大家都知道的,如果黑客知道了公钥和加密内容

那么它很难推算出原文的内容和私钥的内容

这个可能是 d * e=c , 也可能是 x * y=c.

我们这么想一下 HTTPS 的过程

计算机A : 向服务器B发送请求,请求公钥

服务器B : 向计算机A发送了公钥XXXX.

计算机A : 利用公钥进行了加密,发送了加密数据YYYY.

服务器B : 利用私钥解密了加密内容,是 震山真帅.

上面就是很典型的非对称加密的流程,看起来似乎很安全

但是我们我们思路打开,我们加个黑客 C 从中间监听又会发送什么呢?

计算机A : 向服务器B发送请求,请求公钥

黑客C : 截获计算机A请求,发送伪公钥,同时向服务器B发送请求公钥.

服务器B : 向黑客C发送了公钥XXXX.

计算机A : 利用伪公钥进行了加密,向黑客C发送了加密数据YYYY.

黑客C : 利用伪私钥解密服务器A的东西是 震山真帅 ,觉得信息没用,就利用服务器B的公钥进行了加密发送给服务器B.

服务器B : 利用私钥解密了加密内容,是 震山真帅.于是返回了请求:我也这么觉得

黑客C : 利用公钥进行了解密,发现是 : 我也这么觉得 气的吐血身亡

我们在这里可以发现这个过程并非是安全的.你传输的数据仍然是有可能是被看见的

所以数字证书出现了,由 ca 机构发给客户端和服务端,除非你自己安装证书,中间将不会有第三人插足.

其中数字证书包括以下内容

  • 签发证书的机构
  • 加密算法
  • Hash 算法
  • 公钥
  • 证书到期时间

那么有小伙伴可能会问,那能保证证书在下发的过程中保持安全吗?

所以又出现了数字签名这个概念,由发证机构向服务器B 发送数字证书

这个证书会经过私钥进行解密获取 hash1

公钥解密数字证书获取的 hash2

对比 hash 值是否相同,相同则为发的证书

这时候过程大致如下

  1. 第一步 客户端A给出 支持的SSL版本+一个随机数+自己支持的加密方式
  2. 第二步 服务端B接收到这些信息后确认加密方式+自己的安全证书+一个随机数发给A
  3. 第三步 客户端A确认数字证书有效性(验证方法上面已经说明),然后生成一个随机数,并将这个随机数用B的数字证书公钥加密后发送给A。
  4. 第四步 服务端B使用自己的私钥解密这个随机数
  5. 第五步 A和B通过第二步确定的加密方法将前三个随机数生成一个对话密钥 用来接下来的通信

过程是安全了,那么后果是什么呢?

很显然,传输效率低了,因为要进行传输数据的加解密.

所以我们要根据合适的情况进行合理加密算法选择,保证数据传输的安全性.

本人也不是搞密码学的,本文只是个人之见,如有不足之处还望包涵.

OWASP A2 Cryptographic Failures(加密机制失效)相关推荐

  1. linux 硬件加密 ssd,市面上多种流行的固态硬盘产品存在硬盘加密机制绕过漏洞...

    *本文中涉及到的相关漏洞已报送厂商并得到修复,本文仅限技术研究与讨论,严禁用于非法用途,否则产生的一切后果自行承担. 近期,荷兰奈梅亨拉德堡德大学研究人员发现,市面上多种流行的固态硬盘( SSD dr ...

  2. SQL优化之一则MySQL中的DELETE、UPDATE 子查询的锁机制失效案例

    关注"数据和云",精彩不容错过 前言 开发与维护人员避免不了与 in/exists.not in/not exists 子查询打交道,接触过的人可能知道 in/exists.not ...

  3. Maven学习总结(52)——Maven 配置文件密码加密机制使用说明

    前言 Apache Maven项目提供了便捷的密码加密机制,该机制的最近更新时间为2018-03-06.该机制目前只支持在命令行下的操作,如生成密码的密文.此外,用户还需要在${user.home}/ ...

  4. 腾讯网页登陆的加密机制

    转自:http://www.cnblogs.com/DebugLZQ/archive/2011/12/31/2309100.html 问题的引入:前些天,几乎是再同时,CSDN等几大门户网站用户密码被 ...

  5. IIS网站——SSL安全加密机制

    Windows网络操作系统内置的IIS是大家最常用的Web服务器.但在系统默认配置下,IIS使用的是"HTTP协议"以明文形式传输数据,没有采用任何加密手段,传输的重要数据很容易被 ...

  6. 对称加密算法AES联合设备IMEI码设计的加密机制

    AES算法介绍 对称加密算法 AES,密码学中的高级加密标准(Advanced Encryption Standard,AES),又称高级加密标准Rijndael加密法,是美国联邦政府采用的一种区块加 ...

  7. 【联邦学习实战】基于同态加密和差分隐私混合加密机制的FedAvg

    联邦学习实战--基于同态加密和差分隐私混合加密机制的FedAvg 前言 1. FedAvg 1.1 getData.py 1.2 Models.py 1.3 client.py 1.4 server. ...

  8. Edusoho修改注册的用户密码加密机制规则

    一.简介 1.修改生成$salt的机制规则. 2.修改生成$password的机制规则. 二.edusoho的默认用户密码加密机制规则 1.系统默认生成$salt的方式: edusoho\src\Bi ...

  9. 松鼠聚合直播3.0加密key,聚合直播3.0采用了加密机制,直接打包无法播放都解决问题,有以下地方必须配对才可以正常通信

    松鼠聚合直播3.0加密key,聚合直播3.0采用了加密机制,直接打包无法播放都解决问题,有以下地方必须配对才可以正常通信 1,前端 首先是前端songshu-jhlive-uniapp 前端部分 在 ...

最新文章

  1. Matlab编程与数据类型 -- 文本M文件
  2. 一文看懂百度云智峰会:发布两大中台、八大方案,落地细节精准到发丝
  3. 道路运输车辆卫星定位系统JT/T808服务实现和压测
  4. pd快充线无法连接计算机,华为快充连接扩展坞再接计算机,无法正常充电
  5. union和union all有什么区别_Django基础(29):select_related和prefetch_related的用法与区别...
  6. [C++11]对模板右尖括号的优化
  7. [初级]Java中的switch对整型、字符型、字符串的具体实现细节
  8. 移动办公计算机,最适合移动办公的三款掌上电脑点评
  9. 已知有几个数据存放在BUF为首址的字节存储区中,试统计其中正数的个数,并将结果存入ZNUM单元中。
  10. npm link run npm script
  11. Z-BlogPHP导航主题模版源码 绿色完美版
  12. ping 丢包 网络摄像头_利用Zabbix监控工具自动帮我们检测目标网络状况
  13. tsm如何备份oracle原理,技巧 | 使用TSM备份Oracle,怎么设置通道更好?
  14. Centos 6\7下yum安装R
  15. P1262 间谍网络 (tarjan缩点 水过去)
  16. 代码主题darcula_Pycharm最舒服的主题风格
  17. qpython 使用教程_python中spy++的使用超详细教程
  18. matlab实现文本内容批量替换
  19. [BZOJ1864][CODEVS2462]三色二叉树
  20. 按键精灵可以实现c语言吗,按键精灵的原理和编写方法(1)

热门文章

  1. 【鲁棒】对信息不完整的 DSGE 模型进行鲁棒预测(Matlab代码实现)
  2. 软件测试工程师对英语要求高吗,软件测试工程师面试英文自我介绍
  3. java 连续运算_java 另类方法实现计算机连续四则运算
  4. Linux下日志分析--Linux日志
  5. 基于短消息的远程家电红外遥控系统
  6. java生成电子发票_C#/Java 动态生成电子发票
  7. Python--使用jieba进行分词并计算词权重
  8. 5个Excel办公必备的技巧,职场小白务必牢记于心!
  9. 拼多多新店铺上架后多久能有起色?上架后怎么推广?
  10. Matlab中使用符号工具箱求解变上限函数积分及其向量化运算