《密码学基础知识.docx》由会员分享,可在线阅读,更多相关《密码学基础知识.docx(6页珍藏版)》请在第一文库网上搜索。
1、密码学基础知识一、密码概念密码是指采用特定变换的方法对信息等进行加密保护、安全认证的技术、产品和服务。特定变换是指明文和密文相互转化的各种数学方法和实现机制;加密保护是指使用特定变换,将原始信息变成攻击者不能识别的符号序列,简单地说,就是将明文变成密文,从而保证信息的保密性;安全认证是指使用特定变换,确认信息是否被篡改、是否来自可靠信息源以及确认信息发送行为是否真实存在等,简单地说,就是确认主体和信息的真实可靠性,从而保证信息来源的真实性、数据的完整性和行为的不可否认性;技术是指利用物项实现加密保护或安全认证的方法或手段;典型的密码技术包括密码算法、密钥管理和密码协议。产品是指以实现加密保护或
2、安全认证为核心功能的设备与系统;服务是指基于密码专业技术、技能和设施,为他人提供集成、运营、监理等密码支持和保障的活动,是基于密码技术和产品,实现密码功能的行为。密码攻击方法唯密文攻击(CiphtextOn1yAttack,COA)定义:唯密文攻击(COA)是指仅仅知道密文的情况下进行分析,求解明文或密钥的密码分析方法。假定密码分析者拥有密码算法及明文统计特性,并截获了一个或者多个用同一密钥加密的密文,通过对这些密文进行分析求出明文或密钥。COA已知条件最少,经不起唯密文攻击的密码是被认为不安全的。简单理解:只知道密文,推出明文或密钥,T殳用穷举攻击。已知明文攻击(KnownP1aintext
3、AttackrKPA)定义:已知明文攻击(KPA)是指攻击者掌握了部分的明文M和对应的密文C,从而求解或破解出对应的密钥和加密算法。简单理解:知道部分的明文和密文对,推出密钥和加密算法。选择明文攻击(ChosenP1aintextAttackzCPA)定义:选择明文攻击(CPA)是指攻击者除了知道加密算法外,还可以选定明文消息,从而得到加密后的密文,即知道选择的明文和加密的密文,但是不能直接攻破密钥。简单理解:知道明文就知道密文,目标为推出密钥。选择密文攻击(ChosenCiphertextAttack,CCA)定义:选择密文攻击(CcA)是指攻击者可以选择密文进行解密,除了知道已知明文攻击的
4、基础上,攻击者可以任意制造或选择一些密文,并得到解密的明文,是一种比已知明文攻击更强的攻击方式。若一个密码系统能抵抗选择密文攻击,那必然能够抵抗COA和KPA攻击。密码分析者的目标是推出密钥,CCA主要应用于分析公钥密钥体制。简单理解:知道密文就知道明文,目标为推出密钥。比较分析当密码系统只有承受住选择明文攻击(CPA)和选择密文攻击(CcA),才能算是安全的。其中,四种攻击方式对应的难易程度为:唯密文攻击已知明文攻击选择明文攻击选择密文攻击二.密码实行分类管理核心密码一绝密级、机密级、秘密级普通密码一机密级、秘密级密码技术与核技术、航天技术并称为国家的三大撒手铜技术,是国之重器,是重要的战略
5、性资源。我国自主设计的商用密码算法ZUC、SM2、SM3、SM9、SM4均已成为国际标准。三、密码技术发展古典密码一艺术家的殿堂这一时期的密码是一种艺术,还算不上是一门学科。密码学家常常是凭借直觉和信念来进行密码设计和分析,而不是推理证明。古典密码的两个主要体制是代换密码和置换密码。代换密码:代换密码采用一个代换表,将一段明文变换成一段密文,这个代换表就是密钥。如果代换表只有一个,则代换过程被称为单表代换。如果代换表多于一个,则代换过程被称为多表代换。单表代换密码代表:凯撒密码多表代换密码代表:维吉尼亚密码置换密码:置换密码是一种特殊的代换密码,置换密码变换过程不改变明文字母,只改变它们的位置
6、。常见的置换密码有两种:列置换密码和周期置换密码。置换密码代表:栅栏密码古典密码难以对抗密码分析。单表代换密码一可用统计频率分析法破解多表代换一重合指数法配合统计频率分析可破解。已有事实证明,用唯密文攻击法(攻击者只拥有一个或者多个用同一个密钥加密的密文)分析单表和多表代换密码是可行的,因此,以上古典密码都是不安全的。机械密码密码编码学与密码分析学,作为密码学的两个分支,两者相互促进,使得密码技术不断发展演进。密码系统变得越来越复杂,手工作业方式难以满足复杂密码运算的要求。密码研究者设计出了一些机械和电动设备,自动实现了加密和解密计算,这一阶段的密码称为机械密码。机械密码的巅峰恩尼格玛密码机恩
7、尼格玛密码机由德国人亚瑟谢尔比乌斯和理查德.里特发明,20世纪20年代开始用于商业,后来被一些国家的军队与政府进行改造并使用,最著名的是掀起第二次世界大战的德国。一台只有三个转子的恩尼格玛密码机可以产生大约1亿亿种不同的密码变换组合。计算机科学之父艾伦-图灵,作为英国密码破译的核心人物,甚至制造了专用设备对破译算法进行加速,最终实现了对恩尼格玛密码机的实时破译。四、密码的功能保密性-数据的保密性。信息的保密性是指保证信息不被泄露给非授权的个人、进程等实体的性质。实现技术:1)密码技术中的加密和解密技术真实性-信息来源的真实性。实体身份的真实性是指信息收发双方身份与声称的相一致。实现技术:1)使
8、用动态口令机制2)基于对称密码算法消息鉴别码3)基于密码杂凑算法的消息鉴别码4)基于公钥密码算法的数字签名完整性-数据的完整性。数据的完整性是指数据没有受到非授权的篡改或破坏的性质。实现技术:1)基于对称密码算法消息鉴别码2)基于密码杂凑算法的消息鉴别码3)基于公钥密码算法的数字签名不可否认性一行为的不可否认性。不可否认性也称抗抵赖性,通常是指一个已经发生的操作行为无法否认的性质。实现技术:1)基于公钥密码算法的数字签名04密码应用技术框架实现密码的功能,需要密码应用技术体系支撑。密码应用技术框架包括密码资源、密码支撑、密码服务、密码应用四个层次,以及提供管理服务的密码管理基础设施。密码资源层提供基础性的密码算法资源以及上层对底层的基础密码算法进行封装;密码支撑层提供密码资源调用,由各类密码产品组成;密码服务层提供密码应用接口,分为对称密码服务、公钥密码服务及其他密码服务三大类,为上层应用提供数据的保密性保护、身份鉴别、数据完整性保护、抗抵赖等功能。密码应用层调用密码服务层提供的密码应用接口,实现所需的数据加密和解密、数字签名和验签等功能,为信息系统提供安全功能应用或服务。