现代密码学-密码学概论与基本知识

本文介绍了密码学的发展历程,包括传统密码、对称密码和非对称密码,以及现代密码学的机密性、完整性、认证性和不可否认性等概念。重点讨论了密码系统的组成、攻击类型和常用的密码分析方法,同时提到了穷举攻击和统计分析攻击的应用。
摘要由CSDN通过智能技术生成

无条件安全性

计算安全性

可证明安全性

思维导图

传统密码

对称密码

非对称密码

哈希函数与消息认证

数字签名

公钥管理

参考


简介

本文或本专栏针对现代密码学,传统密码有提及,但不会深入,想深入了解,请移步其他作者的专栏。算法没有自己实现,基本是采用Go语言去调库,感兴趣的读者请自行阅读crypto等标准库源代码。

密码学发展简史

创建

1949年,Shannon发表了“保密系统的通信理论(Communication Theory of Secrecy Systems)”一文,为密码学的发展奠定了坚实的理论基础,此后的密码技术才真正称得上密码学。提出了保密系统的数学模型、随机密码、纯密码、完善保密性、理想保密系统、唯一解距离、理论保密性和实际保密性等重要概念,并提出评价保密系统的5条标准,即保密度、密钥量、加密操作的复杂性、误差传播和消息扩展。(第一次飞跃)

1976年后,美国数据加密标准(DES)的公布使密码学的研究公开,密码学得到了迅速发展。(里程碑

1976年,DiffeHellman发表了《密码学的新方向》,提出了一种新的密码设计思想,从而开创了公钥密码学的新纪元。(第二次飞跃
1978年由RivestShamireAdleman首先提出第一个实用的公钥密码体制RSA,使公钥密码的研究进入了快速发展阶段。(里程碑

发展阶段

密码学发展大致分为三个阶段:

前两个阶段又称为传统密码。

古典密码时期

起始时间:从古代到19世纪末,长达几千年。
    技术工具:手工。
    通信手段:信使。
    密码体制:纸、笔或者简单器械实现的代换置换,是一种艺术(富有创造性的方式、方法)。
    典型密码:凯撒密码维吉尼亚密码等。

近代密码时期

起始时间:从20世纪初到20世纪50年代,即一战及二战时期。
    技术工具:机械设备。
    通信手段:电报。
    密码体制:手工或电动机械实现复杂的代换置换,仍是一门艺术。
    典型密码:Vernam密码、转轮密码等。

现代密码时期

起始时间:从1949年至今。
    技术工具:计算机。(针对二进制的比特位,而不是字符)
    通信手段:无线通信、有线通信、计算网络等。
    密码体制:对称密码(分组密码、序列密码)和非对称密码(公钥密码),有坚实的数学理论基础,成为一门科学。
    典型密码:DESAES、RC4、RSA、SHA等。

密码主要功能

机密性

-我与你说话时,别人能不能偷听?

-别人偷听到了能不能听懂?

机密性是指保证信息不泄露给非授权的用户或实体,确保存储的信息和传输的信息仅能被授权的各方得到,而非授权用户即使得到信息也无法知晓信息内容,不能使用。

完整性

-收到的传真不太清楚?
-传送过程过程中别人篡改过没有?

完整性是指信息未经授权不能进行改变的特征,维护信息的一致性,即信息在生成、传输、存储和使用过程中不应发生人为或非人为的非授权篡改(插入、替换、删除、重排序等),如果发生,能够及时发现。

认证性

-我不认识你!
-你是谁?
-我怎么相信你就是你?
-要是别人冒充你怎么办?

认证性是指确保一个信息的来源或源本身被正确地标识,同时确保该标识的真实性,分为实体认证和消息认证。
    消息认证是指能向接收方保证该信息确实来自于它所宣称的源。
    实体认证是指参与信息处理的实体是可信的,即每个实体的确是它所宣称的那个实体,使得任何其它实体不能假冒这个实体。

不可否认性

-我收到货后,不想付款,想抵赖,怎么样?
-我将钱寄给你后,你不给发货,想抵赖,如何?

不可否认性是防止发送方或接收方抵赖所传输的信息,要求无论发送方还是接收方都不能抵赖所进行的行为。因此,当发送方发送一个信息时,接收方能证实该信息的确是由所宣称的发送方发来的;当接收方收到一个信息时,发送方能够证实该信息的确送到了指定的接收方。

密码系统的组成

一个密码系统(System)是由明文(Plaintext)、密文(Ciphertext)、密钥(Key)、加密算法(Encryption Algorithm)和解密算法(Decryption Algorithm)五部分组成的,即s={M,C,K,E,D}。

  • 信息的原始形式称为明文。
  • 明文经过编码变换所生成的称为密文。
  • 密钥是指控制明文与密文之间相互变换的,分为加密密钥解密密钥
  • 对明文进行编码变换生成密文的过程称为加密,编码的规则称为加密算法。
  • 将密文恢复出明文的过程称为解密,恢复的规则称为解密算法。

密码系统关系图

密码分析学

定义

研究如何分析或破解各种密码编码体制的一门科学。密码分析俗称为密码破译,是指在密码通信过程中,非授权者在不知道解密密钥的条件下对密文进行分析,试图得到明文或密钥的过程。

密码攻击类型

针对对称密码体制

这五种攻击的类型通常是依次增强的,抵御这五种类型的攻击是密码算法的基本要求。

惟密文攻击(Ciphertext Only Attack)

密码分析者除了拥有截获的密文外(密码算法是公开的,以下同),没有其它可以利用的信息。密码分析者的任务是恢复尽可能多的明文,或者最好能推算出解密密钥,这样就很容易解出被加密的信息。这种攻击的方法至少可采用穷举搜索法,即对截获一定数量的密文依次用所有的密钥尝试,直到得到有意义的明文。在这种情况下进行密码破译是最困难的,经不起这种攻击的密码体制被认为是完全不安全的。(仅仅搭线窃听

已知明文攻击(Known Plaintext Attack)

密码分析者不仅掌握了相当数量的密文,还有一些已知的明-密文对可供利用。密码分析者的任务就是用密文信息推导出解密密钥或导出一个替代算法,此算法可以对所获得的密文恢复出相应的明文。

对于现代密码体制的基本要求:不仅要经受得住惟密文攻击,而且要经受得住已知明文攻击。(有内奸

选择明文攻击(Chosen Plaintext Attack)

密码分析者不仅能够获得一定数量的明-密文对,还可以**选择任何明文并在使用同一未知密钥的情况下能得到相应的密文。**这种情况往往是密码分析者通过某种手段暂时控制加密机。(暂时控制加密机

选择密文攻击(Chosen Ciphertext Attack)

密码分析者能选择不同被加密的密文,并还可得到对应的明文,密码分析者的任务是推出密钥及其它密文对应的明文。

这种情况往往是密码分析者通过某种手段暂时控制加密机和解密机。(暂时控制解密机

选择文本攻击(Chosen Text Attack)

它是选择明文攻击和选择密文攻击的组合(暂时控制加密机和解密机)。

针对对称密码体制

惟密钥攻击

攻击者仅知道签名者的公钥

已知消息攻击

攻击者可以获得一些消息和相应的权力,但没有选择的权力。

一般选择消息攻击

攻击者在知道签名者的公钥之前一次性选择所选择获得消息及其签名,即攻击者选择消息与签名者无关。

特殊选择消息攻击

攻击者在知道签名者的公钥之后一次性选择所获得消息及其签名,即攻击者选择消息与签名者有关。

常用方法

穷举攻击

密码分析者用试遍所有密钥的方法来破译密码。穷举攻击所花费的时间等于尝试次数乘以一次解密(加密)所需时间。(一般会有常用密码本,所以大家要常换密码,密码不要太简单呦~)

当解密(加密)算法的复杂性增大时,完成一次解密(加密)所需的时间也增大,从而使穷举攻击的时间也增加。(这也增加合法用户使用密码系统的计算量)

结论:抵御穷举攻击最好方法是有足够密钥空间

统计分析攻击

密码分析者通过分析密文和明文的统计规律来破译密码。统计分析攻击在历史上为破译做出过极大的贡献,大多数传统密码都可以通过统计分析的方法来破译。
先自我介绍一下,小编浙江大学毕业,去过华为、字节跳动等大厂,目前阿里P7

深知大多数程序员,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年最新网络安全全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友。
img
img
img
img
img
img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上网络安全知识点,真正体系化!

由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新

需要这份系统化资料的朋友,可以点击这里获取
.(img-KmflQRTR-1714206256479)]
[外链图片转存中…(img-FfSDLG0T-1714206256480)]

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上网络安全知识点,真正体系化!

由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新

需要这份系统化资料的朋友,可以点击这里获取

  • 26
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值