密码技术基础学习笔记

0、任务详情

  • 使用Get笔记辅助听资源中的视频 “ch03 密码技术-01-密码技术概论”和“ch03 密码技术-02-安全强度.mp4”,整理总结Get笔记生成内容,修正识别错误

  • 参考教材和网络资源以及AI工具,补充自己理解不好的内容,列出自己的贡献

  • 提交学习笔记markdown和pdf格式的学习笔记,命名规则:8位学号_姓名_密码技术基础学习笔记.md,8位学号_姓名_密码技术基础学习笔记.pdf

1、密码技术概论-GET笔记内容总结

数字时代与安全挑战

  • 数字时代特征:主要体现为数字化、网络化和智能化。在数字时代,世界可划分为人类社会空间、物理空间和信息空间三个次元,这三个次元相互关联、影响,反映时代信息化与数字演进状况。数字化是社会与物理空间的表达方式,网络化是二者通过信息空间的融合,智能化是信息空间作用于另外两个空间的方式,三者相互驱动、螺旋上升。
  • 安全挑战:以云计算、大数据等为代表的新一代信息技术推动社会向数字化、网络化、智能化转变,但复杂的万物互联环境使网络空间面临严峻安全挑战,如大数据产生、传输、使用过程中的安全保障,以及个人隐私安全使用等问题。

密码学概述

  • 定义与分支:密码学是专注于信息安全与保密的学科,包含密码编码和密码分析两个分支。按照我国密码法,密码是采用特定变换方法对信息等进行加密保护、安全认证的技术、产品和服务。
  • 发展阶段:分为传统密码、机械密码和现代密码学三个阶段。古典密码从古代到19世纪末,主要采用代换及置换方式,通过手工或简单机械实现,如凯撒密码,易被破解;之后出现维吉尼亚密码对抗频率分析,但因使用麻烦,在出现后的200年里很少被使用。古典密码因缺乏现代密码学的复杂性和抗攻击能力,无法满足现代通信保密要求。

机械密码

  • 发展背景:20世纪初到20世纪50年代,工业革命为复杂密码实现提供条件,战争对保密通信的需求加速其发展,加解密通过机械或电动设备实现,但未形成理论体系,仍靠代换和置换方式。
  • 典型代表 - 恩尼格玛密码机:由德国工程师在一战后发明,二战期间被德军广泛使用。它在加密成本和加密兼顾度上达成平衡,虽理论可破解,但通过机械电子化增加破解工作量。其使用过程包括发送方用国防局密码本每日密码加密明文,通过无线电通信,接收方用相同每日密码解密。它有接线板需每天重连,还有三个转子按特定规律旋转。恩尼格玛密码机曾两次被破解,第一次由波兰数学家完成,第二次由图灵完成,破解不仅靠技术,还借助间谍获取每日密码。随着设备结构和破解方法逐渐公开,算法保密性降低,密钥重要性升高。

现代密码学

  • 开端与发展:20世纪末香农发表论文《保密系统的通信理论》标志现代密码学开端,他将信息论引入密码学奠定理论基础。美国DES标准公布是重要标志,1976年DH算法发表为现代密码学发展开辟新方向。1978年美国麻省理工学院三位密码学家提出RSA公钥密码体制。现代密码学理论中,算法是核心,常见密码算法分为对称密码、公钥密码、密码杂凑三个类别。
  • 我国密码分类:根据我国密码法,密码分为核心密码、普通密码和商用密码三类,商用密码不能保护国家秘密。

我国商用密码发展历程

  • 政策与机构变革:1993年中央政治局会议提出对商用领域密码进行管理,增加商用密码类别;1999年颁布《商用密码管理条例》;2005年国家密码管理委员会办公室更名;2008年国家密码管理局纳入国务院序列管理;2016年密码行业标准化技术委员会成立;2019年颁布密码卡;2021年《数据安全法》和《个人信息保护法》颁布;2023年颁布新版《商用密码管理条例》。
  • 商用密码算法:2006年公布SM4算法,后更名,2012年成为行业标准,2016年成为国家标准,2018年纳入国际标准,2011年成为4G移动通信密码算法;SM3杂凑算法2000年公布,2012年成为行业标准,2016年成为国家标准,2018年成为国际标准;SM2算法2010年公布,2012年成为行业标准,2016年成为国家标准;SM9标识密码算法2010年发布为行业标准;SM1、SM7分组密码算法未公开,以IP核形式存在芯片中。

密码技术发展与人才培养

  • 技术发展:云计算、物联网和量子通信等新技术使密码技术面临挑战与机遇,如量子攻击密码、轻量级密码技术逐步成熟,密码技术发展方向包括抗量子攻击、量子密钥分发等。
  • 人才培养:2017年发现国家信安专业人才不足,密码人才匮乏。国家重视信息安全学科专业建设和人才培养,2012 - 2021年,山东大学等7所高校在本科招生中新增密码科学与技术专业,截至2024年全国已有20所高校新增该专业。2021 - 2022年,新增密码技术应用员和密码工程技术人员职业,本次课程为培养密码工程技术人员打基础,该职业从事密码算法与协议实现等相关工作。

密码技术构成

  • 密码算法:对消息加密和解密的数学函数。
  • 密钥管理:对密钥进行全生命周期的管理。
  • 密码协议:使用多个算法时,为两个及以上参与方使用算法达到加密保护或安全认证目的约定的交互规则。

📅 章节概要

00:00:09 数字时代背景与安全挑战
演讲者开篇点明本次课主题为密码技术概论,阐述数字时代是现代信息技术高度发展的产物,促使产业模式从传统工业主导转变为以信息技术为核心的新兴模式。在数字时代,数化万物与虚实孪生成为生活常态,人类生产生活方式发生巨大变革。新一代信息技术推动社会向数字化、网络化、智能化转变,然而复杂的万物互联环境给网络空间带来严峻安全挑战,如大数据安全及个人隐私保护等问题,引出密码学在保障信息安全中的重要性。

00:01:12 数字时代的特征与次元划分
介绍数字时代的主要特征为数字化、网络化和智能化,并将世界划分为人类社会空间、物理空间和信息空间三个次元。详细解释了三个次元之间的相互关系,数字化是社会与物理空间在信息空间的表达方式,网络化是这两个空间通过信息空间的融合,智能化则是信息空间作用于另外两个空间的方式,三者相互驱动、螺旋上升。同时提及物联网、5G、云计算、量子计算和人工智能在大数据处理中的作用,进而再次强调保障大数据安全的重要性。

00:02:39 密码学的定义与发展阶段
指出密码学是专注信息安全与保密的学科,包含密码编码和密码分析分支,依据我国密码法对密码给出定义。接着讲述密码学发展分为传统密码、机械密码和现代密码学三个阶段。着重介绍古典密码,从古代延续到19世纪末,采用代换及置换方式,通过手工或简单机械实现,以凯撒密码为例说明其易破解性,随后阐述为对抗频率分析出现的维吉尼亚密码,虽提升破解难度,但因使用麻烦在出现后200年很少被使用,强调好用的密码需在安全性和效率间找到平衡。

00:04:36 维吉尼亚密码的密钥管理
深入探讨维吉尼亚密码在使用过程中密钥管理的不同阶段。1.0版随意选择一个词作为密钥并不断重复使用,导致破解难度低;2.0版大幅增加密钥长度,常使用一篇文章或一首诗作为密钥以便双方协调使用;3.0版采用纯随机字母密钥,但因真随机生成困难且使用不便,仅存在于理论中,实际很少使用。同时指出古典密码因设计和分析依赖直觉与经验,缺乏现代密码学特性,无法抵御先进分析手段,不能满足现代通信保密要求。

00:06:31 机械密码的发展背景与特点
说明机械密码时期从20世纪初到20世纪50年代,工业革命为复杂密码实现提供条件,战争对保密通信的需求加速其发展。此阶段加解密通过机械或电动设备实现,但未形成理论体系,仍以代换和置换方式为主。

00:07:13 恩尼格玛密码机的介绍
介绍机械密码的典型代表恩尼格玛密码机,由德国工程师在一战后发明,二战期间被德军广泛使用。尽管其原理不如维吉尼亚加密版3.0,但在加密成本和加密兼顾度上达到平衡,通过机械电子化增加破解工作量,使单凭纸笔无法对抗。讲解其使用过程,包括发送方用国防局密码本每日密码加密明文,经无线电通信,接收方用相同每日密码解密。还介绍其构造,如接线板需每天重新连接,三个转子按特定规律旋转以实现加密。

00:08:31 恩尼格玛密码机的破解过程
讲述恩尼格玛密码机两次被破解的情况。第一次由波兰数学家完成,最初波兰情报局通过间谍获取每日密码实现首次破解,后德军改变每日密码,波兰情报局需采用新破译方法,并分享了密码机构造和破解方法。英国在布莱切利园扩大破译队伍,其中图灵利用数学方法和炸弹机器,通过分析德军信息中的规律性词汇,减少密码机可能的初始设定,完成第二次破解。强调密码技术应用中相关人员贡献常被长期保密,图灵的贡献战后多年才为人所知。同时指出随着设备结构和破解方法公开,算法保密性降低,密钥重要性升高。

00:11:39 现代密码学的开端与发展
表明20世纪末香农发表论文《保密系统的通信理论》标志现代密码学开端,他将信息论引入密码学奠定坚实理论基础,美国DES标准公布是现代密码学重要标志。1976年DH算法发表为现代密码学发展开辟新方向,带来第二次飞跃,虽该算法最早由政府密码学家发现,但现在广泛使用的是1978年美国麻省理工学院三位密码学家提出的RSA公钥密码体制。现代密码学理论中算法是核心,常见算法分为对称密码、公钥密码、密码杂凑三类。同时介绍我国密码法对密码的分类,包括核心密码、普通密码和商用密码,强调商用密码不能保护国家秘密。

00:12:50 我国商用密码的发展历程
从政策和机构变革以及商用密码算法两方面阐述我国商用密码发展历程。政策方面,1993年中央政治局会议提出对商用领域密码管理,增加商用密码类别;1999年颁布《商用密码管理条例》;2005 - 2008年国家密码管理相关机构变革;2016年密码行业标准化技术委员会成立;2019 - 2023年陆续颁布密码卡、相关法律及新版条例。商用密码算法方面,详细介绍SM4、SM3、SM2、SM9等算法的公布时间、成为行业及国家标准时间,以及纳入国际标准情况,还提及SM1、SM7以IP核形式存在芯片中未公开。

00:16:41 密码技术发展与面临的机遇挑战
指出随着密码技术迅速发展,云计算、物联网和量子通信等新技术使密码技术既面临挑战又迎来机遇,如量子攻击密码、轻量级密码技术逐步成熟,密码技术发展方向包括抗量子攻击、量子密钥分发等。

00:18:45 密码人才培养的重要性与举措
提到2017年发现国家信安专业人才不足,密码人才匮乏制约密码合规、正确、有效应用。国家重视信息安全学科专业建设和人才培养,2012 - 2021年多所高校在本科招生中新增密码科学与技术专业,截至2024年已有20所高校开设该专业。2021 - 2022年新增密码技术应用员和密码工程技术人员职业,本次课程为培养密码工程技术人员打基础,并给出该职业的定义。

00:20:52 密码技术的构成要素
总结密码技术主要包含密码算法、密钥管理和密码协议。密码算法是对消息加密和解密的数学函数,密钥管理是对密钥进行全生命周期管理,密码协议是使用多个算法时,为两个及以上参与方达到加密保护或安全认证目的约定的交互规则。

✨ 内容亮点

  • 实用要点
    • 理解好用的密码需在安全性和效率上找到平衡点,如维吉尼亚密码虽安全性提升但因使用麻烦未被广泛应用。
    • 现代密码学中,算法公开、密钥保护的理念,如恩尼格玛密码机破解过程中体现出密钥重要性逐渐升高。
    • 了解我国商用密码算法发展历程及应用,如SM4算法在4G移动通信中的应用,为相关领域技术应用提供参考。
    • 知晓密码技术构成要素,包括密码算法、密钥管理和密码协议,为深入学习密码技术奠定基础。
  • 精彩观点
    • 数字时代三个次元(社会空间、物理空间、信息空间)相互关联、影响,数字化、网络化、智能化相互驱动、螺旋上升,这种对数字时代特征的解读新颖且全面。
    • 密码技术发展中,算法保密性逐渐降低,密钥重要性逐渐升高的观点,反映了密码技术发展的趋势和特点。
    • 密码学发展过程中,从古典密码依赖直觉和经验到现代密码学形成科学理论体系,体现了学科发展的科学性和进步性。
  • 案例启示
    • 恩尼格玛密码机案例,展示了机械密码在加密成本和加密兼顾度上的平衡,以及其破解过程对现代密码设计的启示,即算法不追求理论上无法破解,而是在期望时间内难以破解。
    • 密码技术应用中人员贡献常被保密的情况,如图灵的贡献战后多年才被知晓,反映了密码领域工作的特殊性和保密性。
    • 我国商用密码算法发展案例,如SM4算法从公布到成为国际标准的历程,体现了我国在密码技术领域的发展和突破,对相关产业发展具有借鉴意义。
  • 行动建议
    • 对于学习密码技术的人员,深入研究不同阶段密码学发展特点,如古典密码、机械密码和现代密码学的差异,构建系统知识体系。
    • 关注我国密码政策法规变化,如密码法及相关条例,确保在密码技术应用中合规操作。
    • 有志于从事密码相关职业的人员,可关注高校密码科学与技术专业设置,通过学习相关专业知识,为进入该领域做准备。
    • 关注密码技术发展新方向,如抗量子攻击、量子密钥分发等,提前布局学习,适应行业发展需求。

2、安全强度-GET笔记内容总结

密码算法安全强度的概念

  • 衡量方式:密码算法的安全强度指破解算法所需计算量大小,一般以位为单位衡量。安全强度越高,破解所需计算时间越长,算法越安全。密码学中N位安全强度表示破解算法需进行二的N次方次运算,如MD5安全强度小于18位,1024位的RSA算法安全强度是80位,AES128算法安全强度是128位。
  • 计算破解时间:可通过计算量估计破解时间,如MD5按计算机1毫秒一帧速度,2的18次方运算需262144毫秒,约4.34分钟;1024位RSA算法破解需38年,AES128需1000万个11年,不过该时间会随计算机性能提升而下降。

影响算法安全强度的因素

  • 密钥长度:对称加密、公钥加密等算法,密钥越长安全性越高。
  • 算法设计:算法设计的复杂性和数学应用影响其安全性。
  • 迭代次数:在算法设计中增加迭代次数,可显著提高暴力破解难度。
  • 安全性评估:经过评估审查、验证测试的算法,安全强度更高,当然还有其他影响因子。

不同类型算法安全强度特点

  • 对称算法:安全强度一般等于其密钥长度,因使用相同密钥加密和解密,暴力破解主要针对密钥。
  • 非对称算法(如RSA):安全强度不单取决于密钥长度,还与基于的数学问题复杂度相关,RSA算法破解数据拆算法较有效。椭圆曲线算法在相同安全强度下所需密钥更短。
  • 杂凑算法:因生日攻击问题,安全强度等于输出长度的一半。

安全强度的动态更新

  • 案例:以SHA - 3算法为例,1993年发布时设计目标是提供至少80位安全强度,2005年2月王小云教授团队发现其安全强度小于69位,2005年8月王海文教授团队改进破解算法后发现安全强度只有63位,2015年10月马克皮埃尔托马斯团队发现安全强度只有57.5位,表明安全强度需动态更新。

密码工程中算法安全强度选用标准

  • 国际国内标准:参考美国NIST、德国BSI、欧洲卓越密码网络、中国国家密码管理局推荐标准。目前小于112位安全强度的密码算法不推荐使用,128位较安全,长期运营系统若无性能瓶颈应考虑256位。根据中国商用密码应用安全性评估量化评估规则2023版,建议不低于112位。
  • 常见算法安全强度列举:给出多种常见密码算法安全强度,如1024位RSA为80位,2048位RSA为112位等,部分安全强度低的算法不建议再使用。

密码算法分类及推荐

  • 算法分类:根据安全强度分为退役算法(安全强度弱,新工程不再使用)、遗留算法(存在安全问题,遗留系统仍在使用,新系统不应用)、现行算法(无安全问题,可使用)。
  • 推荐算法:密码工程首先推荐商用密码算法SM2、SM3、SM4;国际算法在必要时使用,给出推荐顺序。

📅 章节概要

00:00:09 课程引入 - 密码算法安全强度
课程开场,老师点明主题为讲解密码技术中的安全强度。介绍密码算法分为对称密码、公钥密码、密码杂凑算法三类,并以学生常困惑的128位AES算法和1024位RSA算法安全性比较为例,引出密码算法安全强度概念,即破解算法所需计算量大小,以位为单位衡量,安全强度与破解计算时间、算法安全性正相关,还列举了MD5、22A、AES128等算法的安全强度示例。

00:01:32 破解计算量及影响因素
老师讲解可估算算法破解计算量,如算出MD5破解时间约4.34分钟,并提及1024位RSA算法和AES128算法破解所需时间,同时说明随着计算机性能提升,破解时间会下降。接着阐述影响算法安全强度的关键因素,包括密钥长度(密钥越长越安全)、算法设计(复杂性和数学应用影响安全性)、迭代次数(增加迭代次数可提高暴力破解难度)以及是否经过广泛安全性评估等。

00:03:02 不同类型算法安全强度特点及综合评估
开始介绍不同类型算法安全强度特点,对称算法安全强度一般等于密钥长度,暴力破解针对密钥;非对称算法如RSA安全强度与密钥长度和数学问题复杂度相关,还提到椭圆曲线算法在相同安全强度下密钥更短;杂凑算法因生日攻击问题安全强度为输出长度一半。随后强调密码学不断发展,安全强度评估需动态更新,要综合考虑密钥长度、输出长度、算法设计、安全性分析、实现细节及潜在攻击等因素,还应关注后量子密码学发展以应对量子计算威胁。

00:05:38 安全强度动态更新示例 - SHA - 3算法
以SHA - 3算法为例说明安全强度动态更新。1993年发布时设计目标是至少80位安全强度,但2005年2月王小云教授团队发现其安全强度小于69位,同年8月王海文教授团队改进破解算法后发现降至63位,2015年10月马克皮埃尔托马斯团队发现仅57.5位,充分体现安全强度并非固定不变。

00:06:41 密码工程算法安全强度选用标准
老师推荐参考美国NIST、德国BSI、欧洲卓越密码网络、中国国家密码管理局标准来选用算法安全强度。指出目前小于112位安全强度的算法不推荐使用,128位较安全,长期运营系统若无性能瓶颈应考虑256位,依据中国2023版商用密码应用安全性评估量化评估规则,建议不低于112位。

00:08:03 常见密码算法安全强度列举
详细列举常见密码算法安全强度,如1024位RSA为80位,2048位RSA为112位,我国商用密码算法SM2、SM1、SM4、SM3安全强度为128位等,部分安全强度低的算法如DES3代等不建议再使用。

00:09:52 公钥密码算法安全长度及算法分类
提及公钥密码算法不同长度密钥对应不同安全长度并给出列表。将现有算法按安全强度分为退役算法(新工程不使用)、遗留算法(遗留系统使用,新系统不用)、现行算法(可使用)三类。

00:10:49 密码工程推荐算法
老师强调密码工程首先推荐我国商用密码算法SM2、SM3、SM4,对于国际算法在必要时使用,并给出推荐顺序,最后结束课程。

✨ 内容亮点

  • 实用要点
    • 计算破解时间可通过计算量结合计算机运算速度得出,如MD5按1毫秒一帧速度计算破解时间。
    • 密码工程选用算法时,参考国际国内权威标准,如美国NIST、中国国家密码管理局标准等。
    • 依据中国2023版商用密码应用安全性评估量化评估规则,不使用低于112位安全强度的密码算法。
    • 对于长期运营且无性能瓶颈的系统,应考虑使用256位强度的密码算法。
  • 精彩观点
    • 密码学是不断发展的领域,安全强度评估需随攻击技术和计算能力提升而动态更新。
    • 不同类型密码算法安全强度衡量方式不同,对称算法与密钥长度相关,非对称算法还与数学问题复杂度有关。
    • 经过广泛安全性评估审查的算法,其安全强度更高。
  • 行动建议
    • 新的密码工程不使用退役算法,遗留算法不在新系统中使用。
    • 优先推荐使用我国商用密码算法SM2、SM3、SM4。
    • 如需使用国际算法,按照推荐顺序选择。
    • 关注后量子密码学发展,必要时迁移到量子安全算法。

3、补充说明

1. 密码技术概论 - 难点解析

1. 数字时代的三个次元(空间)及其关系

  • 难点:这个概念比较抽象,容易混淆。
  • 补充说明:可以类比为一个智能家居系统物理空间:就是房子、门窗、空调、灯泡、摄像头等实实在在的物体。 信息空间:是连接和控制这些物体的“大脑”和“神经网络”,比如家里的Wi-Fi网络、手机上的控制App、云端的服务器。它负责收集数据(如摄像头画面、温度读数)和发送指令(如打开空调)。 人类社会空间:就是人类家庭。人类通过手机App(信息空间)去控制空调(物理空间),让居住环境更舒适。 数字化:就是将空调的状态(开/关、温度)、灯泡的亮度等信息变成计算机能处理的数据。 网络化:就是让空调、灯泡、手机等设备都连上同一个网络,可以互相通信。 智能化:就是系统能自动学习人类的习惯,比如在人类下班回家前自动打开空调。这三个过程环环相扣,驱动技术不断升级。

2. 密码分析 vs 密码编码

  • 难点:容易只关注“造锁”而忽略“开锁”。
  • 补充说明密码编码学 (Cryptography)“造锁”的艺术。研究如何设计加密算法,把明文(正常信息)变成密文(乱码),以保护信息。 密码分析学 (Cryptanalysis)“开锁”的艺术。研究如何分析、破解加密算法,从密文恢复出明文,而不需要密钥。 两者是对立统一的关系。一个强大的加密算法,必须能经受住最顶尖的密码分析专家的攻击测试。密码学的进步,正是在这种“攻”与“防”的不断较量中实现的。

3. 恩尼格玛密码机的“加密成本与加密强度平衡”

  • 难点:为什么它理论上可破解却仍被广泛使用?
  • 补充说明:这里的“成本”不仅指金钱,更指时间成本和计算资源成本。 恩尼格玛机通过机械和电气方式实现了极其复杂的加密过程(巨大的密钥空间),使得手工破解成为不可能。 在二战时期,破译一份加密情报如果需要花费数月,那么这份情报早就失去价值了。恩尼格玛机的设计目标就是:让敌方在情报的有效期内无法完成破译。 因此,它追求的不是在数学上的“绝对不可破解”,而是实际应用中的“在有效时间内无法破解”,这在当时是一种非常成功的平衡。图灵等人的破解工作,是动用了当时最顶尖的专家和早期计算机(炸弹机)才实现的,反过来证明了其设计的有效性。

4. 现代密码学的核心原则:“算法公开,密钥保密”

  • 难点:为什么算法公开了反而更安全?
  • 补充说明:这源于Kerckhoffs原则,它是现代密码学的基石。 古典密码:安全性基于算法本身的保密(如凯撒密码的偏移量规则)。一旦算法泄露,系统立刻被完全攻破。 现代密码:安全性完全依赖于密钥的保密。算法可以且应该被公开,让全世界的专家去审查、攻击。一个算法只有经过这样公开的、长期的考验而被证明是坚固的,才会被信任和使用。 好处标准化:大家都可以使用同一个经过验证的优秀算法(如AES, RSA),便于通信和互联互通。 安全透明:不依赖“隐蔽式安全”,漏洞更容易被发现和修复。 重点明确:只需全力保护短小得多的密钥,而不是复杂的整个算法。

5. 我国密码分类(核心、普通、商用)

  • 难点:它们的区别和适用场景是什么?
  • 补充说明:这是根据保护对象的重要性使用场景来划分的。 核心密码:用于保护最高级别的国家秘密(绝密级)。应用于党和国家的核心要害部门,由专门的核心密码机构管理。 普通密码:用于保护较低级别的国家秘密(机密级、秘密级)。应用于党政军机关和企事业单位,由密码管理部门管理。 商用密码:用于保护不属于国家秘密的信息(如企业商业秘密、公民个人信息)。社会公众和各行各业都可以依法使用。SM2/3/4/9等算法都属于商用密码范畴。法律明确规定“商用密码不能用于保护国家秘密”,这既是职责划分,也是安全等级的界定。

2. 安全强度 - 难点解析

1. 安全强度(N位)的具体含义

  • 难点:“N位安全强度”是一个非常抽象的概念。
  • 补充说明N位安全强度意味着,破解这个算法平均需要尝试 2^N 次操作。 可以把破解密码想象成猜一个二进制组合锁的密码。 一个“80位安全强度”的锁,意味着密码有80位二进制数(比如由80个0或1组成),破解者平均需要试 2^80 次才能猜中。这是一个天文数字(1.2亿亿亿次),即使用超级计算机也需要很多年。 所以,安全强度的“位”数,直接衡量了破解所需的工作量,与算法本身的密钥长度可能有关,但不一定相等。

2. 为什么杂凑算法(如SHA-256)的安全强度只有输出长度的一半?

  • 难点:为什么256位的哈希算法,安全强度是128位?
  • 补充说明:这是由于一种叫做 “生日攻击” 的精巧数学现象。 传统暴力破解是找一个特定的目标(“找到和你同一天生日的人”),难度大。 “生日攻击”不针对特定目标,而是寻找任意两个碰撞(“找到房间里任意两个生日相同的人”)。在一个23人的房间里,找到两人生日相同的概率就超过50%了。这远比找特定一个人(1/365)容易。 对于哈希算法,找到两个不同的信息产生相同的哈希值(碰撞),其难度远低于找到一个信息产生特定的目标哈希值。根据数学推导,找到碰撞的难度大约是 2^(n/2),其中n是输出长度。所以SHA-256(输出256位)的抗碰撞安全强度是 2^128

3. 非对称算法(如RSA)的安全强度为什么不等于密钥长度?

  • 难点:为什么2048位的RSA只有112位的安全强度?
  • 补充说明:因为破解非对称算法不需要把所有的密钥可能性都试一遍。 破解RSA的本质是对大整数进行质因数分解。比如,一个2048位的RSA公钥,其模数N是由两个大约1024位的质数p和q相乘得到的。破解者需要从N倒推出p和q。 数学家们发明了远比“试遍所有1024位质数”更高效的因数分解算法(如数域筛法)。这些算法大大降低了破解所需的工作量。 因此,2048位的RSA密钥,其有效安全强度因高效的攻击算法而“打折”到了约112位。相比之下,破解256位的AES密钥,目前没有比试遍所有2^256种可能性更高效的方法,所以它的安全强度就是实打实的256位。

4. 安全强度的动态性

  • 难点:为什么一个算法的安全强度会变化?
  • 补充说明:两个原因: 计算能力的进步:摩尔定律使得计算机速度越来越快,以前需要100万年的计算量,未来可能只需要1年。因此,固定的安全强度所能提供的“安全时间”在缩短。 密码分析学的进步:数学家们不断发现新的、更高效的攻击算法(如王小云教授对SHA-1的攻击)。这些新算法能极大地降低破解某个算法所需的工作量,从而直接“降低”了该算法的有效安全强度(如文档中SHA-1的例子)。这就是为什么我们需要淘汰旧算法,迁移到更安全的新算法。

3. 我的贡献

倾听课程,梳理主要内容,标记不太懂的地方,然后对照GET笔记整理的内容总结,明确自己不理解或有困惑的地方,再和AI沟通交流,最后整理成文档。

posted @ 2025-09-30 09:18  20231420  阅读(17)  评论(0)    收藏  举报