目录

  • 机密性
    • 对称加密
      • 1、DES
      • 2、AES(推荐)
      • 3、其他
    • 非对称加密
      • 1、RAS
      • 2、其他
    • 参考:

机密性

实现机密性最常用的手段是“加密”(encrypt),就是把消息用某种方式转换成谁也看不懂的乱码,只有掌握特殊“钥匙”的人才能再转换出原始文本。

这里的“钥匙”就叫做“密钥”(key),加密前的消息叫“明文”(plain text/clear text),加密后的乱码叫“密文”(cipher text),使用密钥还原明文的过程叫“解密”(decrypt),是加密的反操作,加密解密的操作过程就是“加密算法”。

所有的加密算法都是公开的,任何人都可以去分析研究,而算法使用的“密钥”则必须保密。 “密钥”就是一长串的数字,但约定俗成的度量单位是“位”(bit),而不是“字节”(byte)。比如,说密钥长度是 128,就是 16 字节的二进制串,密钥长度 1024,就是 128 字节的二进制串。

按照密钥的使用方式,加密可以分为两大类:对称加密和非对称加密。

对称加密

“对称加密”很好理解,就是指加密和解密时使用的密钥都是同一个,是“对称”的。只要保证了密钥的安全,那整个通信过程就可以说具有了机密性。

举个例子,你想要登录某网站,只要事先和它约定好使用一个对称密码,通信过程中传输的全是用密钥加密后的密文,只有你和网站才能解密。黑客即使能够窃听,看到的也只是乱码,因为没有密钥无法解出明文,所以就实现了机密性。

1、DES

数据加密标准(DES)算法 采用的 56 位密钥,每次计算加密 64 位的数据。目前已经被证明可以被暴力破解。所谓暴力破解,就是遍历所有可能的密钥解析数据的方法。举个例子,已知张三和李四传输的是中文,加密算法是 DES,那么拿出一小段数据进行暴力破解,尝试所有的密钥,如果能成功解析出中文词语(词语在词库中可以查到),那么说明破解成功。

2、AES(推荐)

为了应对暴力破解等问题,很多团队选择对称加密算法时开始使用高级加密标准(AES),这个加密法用 128 位密钥,并设计了更难破解的算法。推荐在项目中使用

3、其他

RC4、DES、3DES、AES、ChaCha20 ,但前三种算法都被认为是不安全的,通常都禁止使用,目前常用的只有 AES 和 ChaCha20。

对称加密看上去好像完美地实现了机密性,但其中有一个很大的问题:如何把密钥安全地传递给对方,术语叫“密钥交换”。如果你和网站约定的密钥在传递途中被黑客窃取,那就没有安全性可言了。所以需要一种新的可以保证安全传递秘钥的算法。

非对称加密

非对称加密也叫公钥加密算法。它有两个密钥,一个叫“公钥”(public key),一个叫“私钥”(private key)。两个密钥是不同的,“不对称”,公钥可以公开给任何人使用,而私钥必须严格保密。

公钥和私钥有个特别的“单向”性,虽然都可以用来加密解密,但公钥加密后只能用私钥解密,反过来,私钥加密后也只能用公钥解密。

非对称加密可以解决“密钥交换”的问题。网站秘密保管私钥,在网上任意分发公钥,你想要登录网站只要用公钥加密就行了,密文只能由私钥持有者才能解密。而黑客因为没有私钥,所以就无法破解密文。

1、RAS

RSA 几乎可以说是非对称加密的代名词,它的安全性基于“整数分解”的数学难题,使用两个超大素数的乘积作为生成密钥的材料,想要从公钥推算出私钥是非常困难的。

10 年前 RSA 密钥的推荐长度是 1024,但随着计算机运算能力的提高,现在 1024 已经不安全,普遍认为至少要 2048 位。

2、其他

DH、DSA、ECC 等。

HTTPS 协议的握手和交换密钥过程需要非对称加密算法;

应用
HTTPS 协议的握手和交换密钥过程需要非对称加密算法

比如利用证书实现 git 账号的免密操作也是基于非对称加密算法

比如利用证书实现 git 账号的免密操作也是基于非对称加密算法

参考:

2、混合加密和摘要算法

1、对称加密和非对称加密相关推荐

  1. 加解密基础——(对称加密、非对称加密和混合加密)

    本文对之前学习过的加解密相关知识做一简单总结,以备后用. 1. 基本概念 加密算法 通常是复杂的数学公式,这些公式确定如何将明文转化为密文的过程和规则. 密钥 是一串被加入到算法中的随机比特. 待续 ...

  2. 对称加密和非对称加密介绍和区别

    什么是对称加密技术? 对称加密采用了对称密码编码技术,它的特点是文件加密和解密使用相同的密钥,即加密密钥也可以用作解密密钥,这种方法在密码学中叫做对称加密算法,对称加密算法使用起来简单快捷,密钥较短, ...

  3. 【上】安全HTTPS-全面详解对称加密,非对称加密,数字签名,数字证书和HTTPS

    此文章转载来源于http://blog.csdn.net/tenfyguo/article/details/40922813点击打开链接 一,对称加密 所谓对称加密,就是它们在编码时使用的密钥e和解码 ...

  4. 对称加密与非对称加密的区别_https原理及对称加密、非对称加密、数字证书、数字签名的含义...

    一.为什么要使用https 使用https的原因其实很简单,就是因为http的不安全. 当我们往服务器发送比较隐私的数据(比如说你的银行卡,身份证)时,如果使用http进行通信.那么安全性将得不到保障 ...

  5. mysql对称连接什么意思_对称加密与非对称加密的区别是什么

    区别:1.对称加密中加密和解密使用的秘钥是同一个:非对称加密中采用两个密钥,一般使用公钥进行加密,私钥进行解密.2.对称加密解密的速度比较快,非对称加密和解密花费的时间长.速度相对较慢.3.对称加密的 ...

  6. 浅谈对称加密与非对称加密

    在数字加密算法中,通过可划分为对称加密和非对称加密. 一:什么是对称加密? 在对称加密算法中,加密和解密使用的是同一把钥匙,即:使用相同的密匙对同一密码进行加密和解密: 加密过程如下: 加密:原文 + ...

  7. 对称加密 与 非对称加密

    2019独角兽企业重金招聘Python工程师标准>>> 明文: 没有被加密过的内容 密文: 已经被加密的内容 算法: 通过算法对明文进行加密,如移位,置换 密钥: 加密时需要的密码, ...

  8. 对称加密、非对称加密深度解析

    密码学的发展 加密的发展史随着人类的进化逐步复杂.严谨也更安全,对于早期的移位和字母对应等加密方式我们不难理解. 移位 : 比如恺撒密码, 简单点说将 26个英文字母的顺序打乱,得到一个新的字母顺序, ...

  9. 网络协议从入门到底层原理(7)网络安全 - 常见攻击、单向散列函数、对称加密、非对称加密、混合密码系统、数字签名、证书

    网络安全 网络层 - ARP欺骗 DoS.DDoS 介绍与防御 传输层 - SYN洪水攻击(SYN flooding attack) 传输层 - LAND攻击 应用层 - DNS劫持.HTTP劫持 H ...

  10. HTTPS是对称加密还是非对称加密?

    你知道,HTTPS用的是对称加密还是非对称加密? HTTPS灵魂拷问 1)为什么用了 HTTPS 就是安全的? 2)HTTPS 的底层原理如何实现? 3)用了 HTTPS 就一定安全吗? 不用担心,本 ...

最新文章

  1. 教育部发文35所高校新增AI本科专业!想回去重新高考
  2. SAP RETAIL 事务代码RWBE查询界面上的Plant Group
  3. [Swift]LeetCode496. 下一个更大元素 I | Next Greater Element I
  4. 升级版记事本 Notepad++
  5. Codeforces Gym 100286I iSharp 水题
  6. 对程序员职业的一些建议
  7. rvm 安装后的补充工作:source $HOME/.profile
  8. 写文件 追加到开始_文件和流
  9. RTP/RTCP中的Jitter
  10. 典型的异步服务器端套接字构建
  11. Python:学习笔记之PyQt5
  12. 精选PHP毕业设计12套——源码+论文完整资源
  13. 数据的正态性检验汇总
  14. 这是我看过把Spring Cloud核心组件讲的最明白的一个故事了
  15. 未转变者服务器买车指令,未转变者3.X服务器控制台命令大全_快吧单机游戏
  16. transformer变体
  17. 关于计算机知识的动画电影,动画概论总复习题目(附答案)
  18. 软件开发中的思维僵化
  19. vue-trtc多人视频开发(从零开始)-有手就行篇-最详细讲解
  20. 深度学习backbone是什么意思_什么是深度学习,深度学习是热门词

热门文章

  1. 山东大学众智课程——网络(图)有关的实验
  2. SDE、PM、DS等相关职位的面试题
  3. 共享打印机无法连接 操作无法完成 错误 0x00000709
  4. 【django】DRF
  5. 课代表|看懂零信任,必须掌握的专业知识有哪些?
  6. Java使用Function包策略模式,优化业务代码大量if...else语句
  7. QML学习笔记(四)-Canva画板画图功能-跟随鼠标位置进行随笔画
  8. 探索环信IMuni-app(小程序)在集成中遇到的断联问题,如何保持较为稳定的websocket链接?
  9. 服务器ubuntu系统登录,ubuntu服务器版登陆
  10. 记一次微信公众号认证反代理授权成功