代码编织梦想

【密码学篇】(商密)密码算法分析理论知识

密码算法分析理论—【蘇小沐】

(一)密码系统安全性

密码系统安全性分为"实际安全性" 和"无条件安全性";实际安全性又分为"计算安全性、可证明安全性"。

1.实际安全性

实际安全性备注
计算安全(1)破译密文的代价超过被加密信息的价值;(2)破译密文所花的时间超过信息的有用期
可证明安全将密码系统的安全性归结为某个经过深入研究的"数学难题(如大整数素因子分解、计算离散对数等)",数学难题被证明求解困难。这种评估方法存在的问题是它只说明了这个密码方法的安全性与某个困难问题相关,没有完全证明问题本身的安全性,并给出它们的等价性证明。

2.无条件安全性(无限资源)

假定攻击者拥有"无限的计算资源",但仍然无法破译该密码系统。

无论有多少可以使用的密文,都不足以唯一的确定密文所对应的明文。(破译所需要的信息不在密文里面)

(二)密码算法攻击类型

攻击难度:“唯密文攻击>已知明文攻击>选择明文攻击>选择密文攻击”。

如果一个密码系统能够抵抗选择密文攻击,那么它当然能够抵抗唯密文攻击和已知明文攻击。

攻击类型说明攻击者掌握的内容攻击方法
唯密文攻击攻击者仅靠密文推算可能的密钥◆加密算法;◆截获的部分密文
已知明文攻击攻击者不仅掌握了一定数量的密文,还有一些明文(密文对)◆加密算法;◆截获的部分密文;◆一个或多个明文密文对。线性密码分析;最佳仿射逼近分析
选择明文攻击攻击者能选择任意明文并获得相应密文◆加密算法;◆截获的部分密文;◆自己选择的明文消息,及由密钥产生的相应密文(攻击者有接加密机器的机会,不能打开机器找到密钥,但可以加密大量经过精心挑选的明文,然后利用所得的密文推断密钥的信息或试图对其他密文进行解密)。时间-存储权衡攻击
选择密文攻在选择明文攻击基础上,攻击者还能选择任意密文并得到对应明文。◆加密算法;◆截获的部分密文;◆自己选择的密文消息,及相应的被解密的明文(攻击者有接触解密机器的机会,对选择的密文进行解密操作,然后试着用所得结果推断密钥或试图对其他密文进行解密)。

(三)密码算法分析

柯克霍夫原则(Kerckhoffs,柯克霍夫假说/公理/定律)”,由奥古斯特-柯克霍夫在19世纪提出:即使密码系统的任何细节已为人悉知,只要密匙(key,又称密钥或秘钥)未泄漏,它也应是安全的。【基于密钥的保密,而不是算法的隐蔽性】

一切秘密寓于密钥之中,基于香农提出的理想密码模型"一次一密"理论,最安全的密码是1比特密钥保护1比特明文,然而现实中真正的无限长随机密钥难以找到。

Shannon (香农)指出,仅当密钥至少和明文一样长时,才能达到无条件安全,也就是说,“除了一次一密外,再无其他的加密方案是无条件安全的”。

1.古典密码分析

古典密码分析方法说明
统计
明文-密文
穷举
重合指数法重合指数法(index of coincidence,又称一致检索法)是Wolfe Friendman于1920年提出的方法,它可以进一步地检验多表代换密码的密钥长度。当计算某个密文的重合指数时,即相当于求在某个密文中随机无放回地抽取其中的两位,这两位的字母相同的概率。
卡西斯基试验

2.对称密码分析

密码算法分析的目的是通过各种攻击方式,找到"密码算法的弱点或者不完美的地方"。

希尔密码算法抵御频率分析攻击能力最强,而对已知明文攻击最弱

对称密码分析说明
差分类攻击截断差分攻击、统计饱和攻击、不可能差分攻击、高阶差分攻击、飞去来器攻击、多差分分析等。
线性类攻击线性差分分析、多线性分析和线性区分攻击等。
单表代换"字母频率分析法"对单表代换密码算法分析最有效
多表代换"重合指数法"对多表代换密码算法的分析最有效

3.公钥密码分析

公钥密码分析类型
对底层困难问题的分析以及上层方案实际安全性的分析
LLL算法攻击(格基约化算法)

4.杂凑算法分析

杂凑算法分析类型
差分攻击
生日攻击
模差分攻击
中间相遇攻击

5.抗量子攻击

基于格、多变量、编码、杂凑函数的密码,可以抵抗量子攻击。

(四)攻击类型

1.主动攻击(影响系统)

主动攻击:试图改变系统资源或"影响系统运行"。

主动攻击类型
篡改
伪造
重放
消息修改
拒绝服务

2.被动攻击(不影响系统)

被动攻击:试图获取系统资源或利用系统的信息,但"不影响系统资源"。

被动攻击类型
截获
窃听
流量分析
信息内容的泄露

3.侧信道分析

侧信道攻击(Side Channel Attack),上述对密码算法的分析都是基于"数学理论"的分析方法,其特点是假定密码算法在一个封闭、可信的计算环境里运行,攻击者既不能观察运算过程中的内部状态也不能修改或干扰它。除此之外,有针对"密码的实现方式和应用方式"提出的侧信道分析,这种分析是基于"物理实现"的分析方法。

在实际应用中,密码系统会通过物理装置泄露一些信息,如"能量消耗、电磁辐射、运行时间等",无须实施入侵或破解密码算法就可以分析获得密钥等敏感数据。

攻击方式说明
逻辑侧信道攻击(side channel attack)利用"密码算法软件"实现过程的一些额外泄露信息进行攻击。计时攻击(timing attack):1)密码代码实现中,不同秘密信息对应的代码执行时间不等;2)通过测量运行的时间,推断出秘密信息。
物理侧信道攻击(硬件)功耗分析:1)密码芯片上运行时,不同秘密信息对应不同的"功耗";2)攻击者通过分析测量功耗推断密钥。电磁辐射分析:1)密码芯片上运行时,不同秘密信息对应不同的"电磁辐射";2)攻击者通过分析测量电磁辐射推断密钥

(五)针对"密码功能"的攻击

密码四大功能:机密性(保密性)、完整性、真实性、不可否认性。

密码功能安全威胁密码技术
机密性(保密性)截获、窃听、通信量分析加密、访问控制
完整性篡改消息鉴别码(对称,杂凑密码)、数字签名(公钥)
真实性伪造在线/离线认证服务器、静态/动态口令、生物特征
不可否认性(抗抵赖性)否认数字签名、认证交换、公证

总结

由于本人能力有限,纯粹做个记录,文中如有不妥和错漏之处欢迎批评指正。如果觉得本文档对您有帮助,可以点赞收藏关注!

【著作所有权归作者 蘇小沐所有,转载请注明文章出处】

名称时间
开始编辑日期2022 年 11 月 21 日
最后编辑日期2022 年 11 月 24 日

在这里插入图片描述

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/NDASH/article/details/127997765

浅谈des、ras、sha-256与sm1、sm2、sm3、sm4区别_jambeau的博客-爱代码爱编程_sha256 sm2

我们今天浅谈一下,目前密码学中应用最为广泛的一些加密算法。并对这些算法做一些比较。 一、概念介绍 国密算法是什么? 国密算法是由国家密码局发布,包含SM1、SM2、 SM3、 SM4、 SSF33算法。 国际算法是什么?

区块链加密算法总结-爱代码爱编程

文章目录 1、对称加密DES(Data EncryptionStandard)3DES(Triple DES)AES(Advanced EncryptionStandard)2、非对称加密RSA加密法DSA(Digital SignatureAlgorithm)ECC(Elliptic CurvesCryptography)应用数字签名其他场景1.

网络安全理论综合题纲-爱代码爱编程

网络安全理论综合 第一部分 网络安全应用技术与工程实践基础1信息的概念及特征2信息系统的概念及构成3网络空间的概念及特点4信息安全发展阶段和属性第二部分 网络安全技术体系1网络安全滑动标尺模型2安全风险三要素3安全能力三要素4P2DR模型5网络安全法6网络安全等级保护7安全策略文件四级体系第三部分 网络基础架构安全技术1物理与环境安全2安全域3网络

清华姚班的科研能力,能孵化出一家怎样的公司?-1-爱代码爱编程

  Top2大学实验室里的科研成果,能孵化出怎样的商业价值? 现在,清华大学的又一张王牌浮出水面—— 转化图灵奖得主姚期智院士和清华大学交叉信息学院徐葳副教授在隐私计算理论方面的研究成果,成立华控清交信息科技(北京)有限公司,还推出了实际可落地的商业产品。   前高盛全球合伙人张旭东出任CEO,徐葳副教授担任首席科学家,还有多位清华姚班毕业生

清华姚班的科研能力,能孵化出一家怎样的公司?-爱代码爱编程

鱼羊 发自 凹非寺量子位 报道 | 公众号 QbitAI Top2大学实验室里的科研成果,能孵化出怎样的商业价值? 现在,清华大学的又一张王牌浮出水面—— 转化图灵奖得主姚期智院士和清华大学交叉信息学院徐葳副教授在隐私计算理论方面的研究成果,成立华控清交信息科技(北京)有限公司,还推出了实际可落地的商业产品。 前高盛全球合伙人张旭东出任C

云厂商视角安全-爱代码爱编程

1. 公有云安全(AWS、Azure、Google) 早期:AWS, 租户层面安全 AWS安全模块化,安全最佳实践,客户的安全体系 AWS组织管理、VPC的安全架构管理、美国国防部做的SCCA安全架构 云平台的SDL和内部的安全架构 Google的底层安全架构非常完善,虚拟化安全体系包括: KVM漏洞挖掘、QEMU代码重构、业界第一个重构QEMU的沙

《商用密码应用与安全性评估》第一章 密码基础知识-小结-爱代码爱编程

密码的定义:采用特定变换的方法对信息进行加密保护、安全认证的技术、产品和服务 密码技术包括:密码编码、实现、协议、安全防护、分析破译、以及密钥产生、分发、传递、使用、销毁等技术 典型的密码技术包括:密码算法、密钥管理、密码协议 密码算法:实现密码对信息进行“明”“密”变换、产生认证“标签”的一种特定规则 密码协议:两个或两个以上参与者使用密码算法,

在互联网上,没有人知道你是一条狗?-爱代码爱编程

1993 年,《纽约客》(The New Yorker)杂志刊登一则由彼得·施泰纳(Peter Steiner)创作的漫画:标题是【On the Internet, nobody knows you’re a dog.】 这则漫画中有两只狗:一只黑狗站在电脑椅上,爪子扶着键盘。它望向站在地上、表情迷茫的另一只狗,兴奋地说:「在互联网上,没人知道你是一条狗

密码学基础知识(二)-爱代码爱编程

密码学基础知识 五、数字签名5.1 单向散列函数(哈希函数)5.2 数字签名5.2.1 RSA 数字签名5.2.2 椭圆曲线DSA(ECDSA)5.2.3 群签名5.2.4 DSS六、密钥管理6.1 密钥生成6.2 密钥分发6.3 密钥验证6.4 密钥更新6.5 密钥存储6.6 密钥备份6.7 密钥有效期6.8 密钥销毁七、公钥基础设施PKI7.1

商用密码的安全性-爱代码爱编程

一、密码算法安全性的含义 密码乃国之重器,是保护国家利益的战略性资源,是网络安全的核心技术和基础支撑。根据2017年4月《密码法》(草案),我国密码分为核心密码、普通密码和商用密码。核心密码、普通密码用于保护国家秘密信息;而商用密码用于保护不属于国家秘密的信息。 这样看来,是不是商用密码的安全性相对来说比较差呢?不少人有这样的疑惑。为了弄明白说清楚这个问题

山东大学软件工程应用与实践——GMSSL开源库(二)——浅尝SM9-爱代码爱编程

2021SC@SDUSC 概述 为了降低公开密钥系统中密钥和证书管理的复杂性,以色列科学家、RSA算法发明人之一Adi Shamir在1984年提出了标识密码(Identity-Based Cryptography)的理念。标识密码将用户的标识(如邮件地址、手机号码、QQ号码等)作为公钥,省略了交换数字证书和公钥过程,使得安全系统变得易于部署和管理,非

利用日志管理,溯源追踪解决安全问题-爱代码爱编程

服务器是IT基础设施的关键,但是网络攻击每天都在发生。IT Governance报告显示,仅在2020年11月就有586,771,602条泄露记录。在今年1月至6月期间,CrowdStrike检测到了大约41,000次潜在攻击。可见,服务器一直面临着巨大的风险。 通常,攻击者会寻找并利用一个弱点或漏洞展开攻击,以进行“点”的突破;防守者则必须防御所有

2022年商用密码行业市场规模前景调研分析预测及投资建议可行性研究预测-爱代码爱编程

2022年商用密码行业市场规模前景调研分析预测及投资建议可行性研究预测 (1)中国商用密码行业发展情况:中国商用密码发展起步较晚,历程始于近现代密码时代。整体来看,我国商用密码经历了起步形成、快速发展、立法规范三个发展阶段。   我国商用密码的发展起步起源于20世纪90年代开启的“金字”工程。正是随着一系列信息化工程的实施,国家对信息技术

现代密码学导论-14-基于伪随机发生器的eav安全_南鸢北折的博客-爱代码爱编程

目录 3.3.3 基于伪随机发生器的EAV安全 用伪随机发生器进行加密的图示 CONSTRUCTION 3.17 一种基于伪随机发生器的私钥加密方案 THEOREM 3.16 基于伪随机发生器的私钥加密方案的EAV安全 THEOREM 3.16 的证明 最后来理一下 3.3.3 基于伪随机发生器的EAV安全 用伪随机发生器进行加密的图

现代密码学导论-12-伪随机发生器_南鸢北折的博客-爱代码爱编程

目录 3.3.1 Pseudorandom Generators DEFINITION 3.14 伪随机发生器的定义 Example 3.15 不安全的发生器的例子 3.3.1 Pseudorandom Generators 伪随机发生器G是一种有效的、确定性的算法,用于将一个短的、均匀的字符串(称为种子)转换为一个更长的、“看起来是均匀的

现代密码学导论-13-归约证明_南鸢北折的博客-爱代码爱编程

目录 3.3.2 Proofs by Reduction 最后来理一遍: 3.3.2 Proofs by Reduction 如果我们希望证明一个给定的构造(例如,加密方案)在计算上是安全的,那么——除非该方案在信息理论上是安全的——我们必须依赖于未经证明的假设。我们的策略是假设一些数学问题是困难的,或者一些低级的密码原语是安全的,然后证明只

谷歌原数据保护团队技术主管:零信任实践分享_binary authorization_普通网友的博客-爱代码爱编程

本文作者2015至2020年有幸参与了谷歌生产环境零信任(Zero Trust in Production Environments)的理论和实践。在此背景下开发的Binary Authorization for Borg(BAB) 系统已经在谷歌生产环境中实现了全面覆盖:任何人在生产环境中以任何服务的身份运行任何软件包之前,都必须为目标服务建立一个足够强