美文网首页
密码学基础(三)密码分析

密码学基础(三)密码分析

作者: 于中阳Mercina_zy | 来源:发表于2018-11-13 15:14 被阅读71次

本文首发于 2017-10-30 13:23 原地址:http://www.blockchainbrother.com/article/81

此次和大家谈一谈密码分析。区块链技术当中一个很重要的组成部分就是密码学,作为从事区块链研究的工程技术人员,应该对密码学有一定的了解。现我想分享一些密码学的基本概念以供交流学习,大家共同学习,更加充实对区块链技术的理解

密码分析

密码编码学的主要目的是保持明文(或者是密钥)的秘密并防止窃听者(也可以叫对手、攻击者、截取者、入侵者、敌人等)知晓。这里假设窃听者完全能够截获发送者和接收者之间的通信。

密码分析学是在不知道密钥的情况下,恢复明文的科学。成功的密码分析可以恢复消息的明文或者密钥。与此同时,密码分析也可以验证出密码体制的弱点,并最终恢复明文或者密钥。

注:密钥通过非密码分析方式的丢失叫做泄露(compromise)。

对密码进行分析的尝试称为攻击(attack)。A.Kerckhoffs 早在19世纪就阐明了密码分析的一个基本假设,此假设就是秘密必须全寓于密钥中。Kerckhoffs假设密码分析者已知密码算法以及其实现的全部资料。虽然在实际的密码分析中并不总是拥有如此详细的信息,但理应如此假设。这样如果不能破译算法,那么即便了解算法是如何工作的也是徒然。当然,如果连算法的知识和相关资料都没有,那就肯定无法破译。

现我列出常用的四类密码分析攻击,在此假设每一类密码分析者都知道所用的加密算法的全部知识。

1)唯密文攻击(ciphertext-only attack)。密码分析者有一些消息的密文,这些消息都用相同的加密算法进行加密。密码分析者的任务就是恢复尽可能多的明文,或者最好能推算出加密消息的密钥,以便可采用相同的密钥破解其他被加密的消息。

已知:

...

推导出:或者找出一个算法从

推导出

2)已知明文攻击(known-plaintext attack)。密码分析者不仅可得到一些消息的密文,而且也知道这些消息的明文。分析者的任务就是用加密信息推出用来加密的密钥或导出一个算法,此算法可以对用相同密钥加密的任何新消息进行解密。

已知:推导出,密钥K,或者从推导出的算法。

3)选择明文攻击(chosen-plaintext attack)。分析者不仅可以得到一些消息的密文和相同的明文,而且还可以选择被加密的明文。这比已知明文攻击更加有效,因为密码分析者能选择特定的明文块进行加密,那些块可能产生更多关于密钥的信息。分析者的任务就是推导出用来加密消息的密钥或导出一个算法,此算法可以对用相同密钥加密的任何新消息进行解密。

已知:其中可以由密码分析者选择。

推导出:密钥K,或者从推导出的算法。

4)自适应选择明文攻击(adaptive-chosen-plaintext attack)。这是选择明文攻击的特殊情况。密码分析者不仅能够选择被加密的明文,还可以基于以前加密的结果修正这个选择。在选择明文攻击中,密码分析者还可以选择一大块被加密的明文。而在自适应选择明文攻击中,可以选择较小的明文块,然后再基于第一块的结果选择另一个明文块,以此类推。

除了以上介绍的4类密码分析攻击,还有至少三类其它的密码分析攻击。接上文排序如下:

5)选择密文攻击(chosen-ciphertext attack)。密码分析者能选择不同的被加密的密文,并可得到对应的解密的明文。例如,密码分析者访问一个防篡改的自动解密盒,密码分析者的任务就是推导出密钥。

已知:推导出:K。

这种攻击主要用于公开密钥算法。选择密文攻击有时也可以有效的用于对称算法。

注:有时选择明文攻击和选择密文攻击一起称为选择文本攻击(chosen-text attack)。

6)选择密钥攻击(chosen-key attack)。这种攻击并不表示密码分析者能够选择密钥,其只是表示密码分析者具有不同密钥之间关系的有关知识。

此种方法比较晦涩和奇特,并不是很实际。

7)软磨硬泡攻击(rubber-hose cryptanalysis)。密码分析者威胁、勒索,或者通过折磨某人,直到其给出密钥为止。

通过行贿获取密钥的方法,有时称为购买密钥攻击(purchase-key attack)。这些是非常有效的攻击,并经常是破译算法的最便捷途径。

于中阳 Mercina-zy

相关文章

  • 密码学基础(三)密码分析

    本文首发于 2017-10-30 13:23 原地址:http://www.blockchainbrother.c...

  • 密码学的安全性浅析3

    前言 本文是本系列的第三篇,由于侧重点是对密码学中的安全性问题进行分析,所以不会对密码学基础的核心概念进行阐述,如...

  • 密码学-RSA

    密码学 密码学是指研究信息加密,破解密码的技术科学。密码学的起源可追溯到2000年前。而当今的密码学是以数学为基础...

  • iOS-逆向(七) RSA加密

    密码学 密码学是指研究信息加密,破解密码的技术科学.密码学的起源可追溯到2000年前,如今的密码学是以数学为基础的...

  • 密码学的安全性浅析4

    前言 本文是本系列的第四篇,由于侧重点是对密码学中的安全性问题进行分析,所以不会对密码学基础的核心概念进行阐述,如...

  • 0. 密码学专题 - 概述

    密码学专题 - 概述 本人打算整理一份关于密码学基础知识的专栏。主要参考了这些书籍:《应用密码学:协议、算法与C源...

  • 浅谈密码学——加密者与破译者的博弈

    密码学是网络安全、信息安全、区块链等产品的基础,常见的非对称加密、对称加密、散列函数等,都属于密码学范畴。 密码学...

  • 密码学之RSA加密原理解析

      密码学是指研究信息加密,破解密码的技术科学。密码学的起源可追溯到2000年前。而当今的密码学是以数学为基础的。...

  • 密码学RSA

    密码学是指研究信息加密,破解密码的技术科学。密码学的起源可追溯到2000年前。而当今的密码学是以数学为基础的。 密...

  • 比特币之密码学应用

    由于比特币的去中心化安全机制是完全建立在密码学基础之上的,所以比特币家族又被称为“密码学货币”,可以说密码学是比特...

网友评论

      本文标题:密码学基础(三)密码分析

      本文链接:https://www.haomeiwen.com/subject/mxklfqtx.html