9. 保密通信小记

题记:失败的经历总是惨痛的,关键是要快速的重新振作起来,再次前行。最近的面试总是被问到加密算法的问题,这让我很郁闷,今天就查找了一些资料,收集总结一些关于密码学的小点,因为我并不是要从事算法或密码学相关领域,就简单记了些概要和流程,再面试被问到时,总不能什么都了解吧。简单学习一下,发现了解这些还是有必要的。(文中如有错误,还请提出,一起交流,内容不全,感兴趣的同学可以留言补充,笔者将感激不尽)


1.密码术的准则
  • 不能证明某个事物是安全的,只能证明他是不安全的
  • 算法和实现之间存在区别
  • 永远不要相信专用算法
  • 算法的强度基于密钥的秘密性,而非算法本身
  • 密码术不仅仅是SSL(安全套接字协议,在客户端的浏览器和服务器之间进行点到点的加密)
  • 所有的密码术都是可破解的,这仅仅是时间的问题
  • 特性:
    • 机密性
    • 完整性
    • 认证性

  • SSL会话
    • 低级别的加密方案,用于加密高级别协议(HTTP等)和文件传输协议(FTP)
    • 为了传送加密的数据,浏览器和服务器必须交换共同的密钥
    • 过程:


      SSL会话握手的过程
2. 四个密码原语
  • 这些密码源语可以构建密码术的所有领域,原语之间也是紧密关联的

  • 包括:

    • 随机数生成
    • 对称加密
    • 非对称加密
    • 散列函数

  • 随机数生成:不存在真正的随机数,只能依靠一定的算法或思想生成伪随机数

  • 对称加密:又称单密钥加密,最基本和最容易的密码原语

    • 思想:使用一个密钥加密和解密消息

    • 流密码:消息被当成数据流,其数据是一个字节一个字节处理的,顺序很重要,一次一密

    • 分组密码:一次只对一个分组加密,一个分组可认为是一定数量的位,由算法确定,每个分组都是独立处理的,同一个消息中的各个分组的加密不存在关联。与流密码的区别就是在于他是一次对一个消息分组进行处理的。

        约束:通信双方必须在使用算法之前知道该密钥。
      
    • 共享密钥:

      实现:密钥协商。其中Diffie-Hellman密钥协商的实现就是让每个用户向其他用户发送一条消息,一旦双方都拥有了对方的消息,便在二者之间确定了一个密钥。

      缺陷:没有建立认证,通信的机密性和完整性都将丧失。

  • 非对称加密:又称双密钥加密,需要两个密钥,一个用来加密(公钥),另一个用来解密(私钥)。非对称加密非常缓慢。

    实现:与对称加密一起使用

      1。A创建两个用于非对称加密的密钥,其中一个密钥向外部公开(即公钥),用于其他用户可以使用该密钥进行加密,另一个密钥只有A自己知道,供自己使用,用来解密(即私钥)
      2。用户B创建一个对称密钥
      3。用户B利用A公开的密钥(即公钥),对自己创建的对称密钥进行加密,再发送给A
      4。A接收到经过非对称加密得到的密文,使用其私钥进行解密,得到用户B创建的对称密钥,并使用这个对称的密钥与用户B通信
    
  • 散列函数:也叫单向散列函数,以任意长度的消息为输入,并计算出一个更短的长度固定的消息叫做摘要或散列,计算量小。

    • 三个特性:

      • 找到能过散列到相同摘要的两条消息在计算上是不可行的,
      • 给定一个摘要,找到能够产生相同摘要的第二条消息在计算上是不可行的
      • 给定一个摘要,找到该摘要的原始消息在计算上是不可行的
    • 常见的散列函数:MD(消息摘要),SHA(安全散列算法)

      MD4算法:是一个三轮迭代散列函数,每一轮都是16个步骤,而且每个步骤对应一个输入字,他得到的散列值是4个字长的位字符串。

      MD5算法:在MD4的基础上增加了额外一轮和更多常数,这些使得MD5更难被追踪。

      SHA-0:

      SHA-1:推荐连接

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 本文主要介绍移动端的加解密算法的分类、其优缺点特性及应用,帮助读者由浅入深地了解和选择加解密算法。文中会包含算法的...
    苹果粉阅读 11,611评论 5 29
  • 前言 《图解密码技术》一书介绍了很多关于密码的知识,通读一遍需要不少时间。为了方便学习,我对书中关键的部分进行了总...
    咖枯阅读 7,296评论 1 25
  • 这篇文章主要讲述在Mobile BI(移动商务智能)开发过程中,在网络通信、数据存储、登录验证这几个方面涉及的加密...
    雨_树阅读 2,760评论 0 6
  • 随着对于安全度的不断要求,对于数据加解密与破解之间的斗争,加解密的方式也在不断发生着变化,来看看现在流行的一些加解...
    zhouhao_180阅读 2,159评论 1 12
  • Guide to BluetoothSecurity原文 本出版物可免费从以下网址获得:https://doi.o...
    公子小水阅读 8,354评论 0 6