2024现代密码学简介.docx
《2024现代密码学简介.docx》由会员分享,可在线阅读,更多相关《2024现代密码学简介.docx(109页珍藏版)》请在课桌文档上搜索。
1、提供PDF版现代密码学简介2023目录第一章结论21.1 什么是密码学21.1.1 密钥21.2 密眄体制的基本要素31.2.1 弱密钥与半弱密例51.3 经典密码51.3.1 基础概念51.3.2 单表代换密码61.3.3 单表代换密码的破解71.3.4 多表代换密码81.3.5 一次一密101.4 加密系统的安全性10第二章流密码与伪随机数发生器132.1 数学上的基本概念132.1.1 GF上的加法与乘法132.1.2 GF上的多项式142.2 流密码的基本概念162.3 基于1.FSR的伪W1.机比特发生器172.3.1 伪叨机比特发生器的线性郃分172.3.2 伪Ia机比特发生器的非
2、线性部分202.4 BBS产生器212.5 ANS1.X9.17伪1.机数发生器222.5.1 准备阶段222.5.2 122第三章分组声码233.1 设计密码系统的方法233.1.1 扩散与1233.1.2 与代233.2 分组密码的定义233.3 分处密码的设计方法243.3.1 费斯妥密码243.3.2 SP网络253.4 分红I密码的运行模式263.4.1 电码本模式(ECB)263.4.2 密码分组链接模式(CBC)273.4.3 密码反馈模式(CrB)283.4.4 输出反馈模式(OFB)283.4.5 计数器模式(CTR)293.5 DES293.5.1 算法与代码303.5.2
3、 多重DES403.5.3 结构特性403.6 IDEA413.6.1 符号说明413.6.2 轮结构423.6.3 加密过程423.7 AES433.7.1 隘人与黝出433.7.2 轮函数443.7.3 密蝌端排算法483.7.4 总的加解密过程503.7.5 数学基础52第四章公钥密码574.1 简介574.2 RSA密码584.2.1 基本框架584.2.2 舞法细节594.2.3 RSA的数学脸证654.2.4 RSA的安全性664.3 E1.GamaI密码664.3.1 数学基础664.3.2 基本框架664.3.3 正确性证明674.3.4 EIGamaI密眄的安全性674.3.
4、5 模整数乘法群上的EIGamaI684.3.6 椭硼曲线684.3.7 椭圆曲线上的EIGamaI69第五章哈希眸法715.1 消息认证715.2 定义715.3 应用725.4 MerkIeQam猫rd结构735D服从MD结构的埴充函数735.4.2 单向压缩函数735.4.3 算法745.5 MD57455,1充比aafttatt75552亍Cti765.5.2 初始化变量765.5.3 处理消息775.5.4 总过程815.6 SIIA-256825.6.2 1.比特825.6.3 填充长度825.6.4 初始化变锻835.6.5 处理消息855.6.6 总过程87第六章消息脸证码89
5、6.1 简介896.2 基于分组密码的MAC算法906.2.1 CBC-MAC906.2.2 CMAC906.3 基于哈布函数的MAC算法916.4 基于全域哈布的MAC算法926.4.1 Po1.y1305926.5 认证加密956.5.1 先加密再MAC956.5.2 加密同时MAC956.5.3 先MAC再加密956.5.4 认证加密模式95第七章数字签名967.1 简介967.2 数字签名的执行方法967.2.1 直接方式(DirCCtdigi1.aIsignatures)977.2.2 仲裁方式(Arbi1.nHCddigita1.SignatUrCS)977.3 基于公的密码的数字
6、签名的基本步骤977.3.1 密钥生成算法977.3.2 锭名算法977.3.3 蕤证签名算法977.3.4 讨论977.4 数字签名算法DSA987.4.1 密钥生成算法987.4.2 签名算法997.4.3 5金证签名律法99第八章安全协议IW8.1 为什么要安全协议1008.2 安全协议记号1008.3 密W协议1018.3.1 对称密码的密的分RIOI8.3.2 公钥密码体系的安全协议1048.3.3 基于公钥密码的殳话密钥分配协议1058.3.4 秘密共享107第一章绪论1.1 什么是密码学如果我们要求一个从未接触过密码学的人处理一段文字,把这段文字尽可能地加密,让别人无法皱解,咫么
7、,大多数人在深思熟虑之后,总能提出一些加密修法。这时候,一般人的思路可能会有几个方向。有的人的方向是把这段文字中的字母之间通过各种更杂的运算进行组合.比如说.把要加密的文字中每两个字母在字母表中的位置诳行相加,形成密码.比如说,“Ciyp(OgraPhy”中,“cr变成了3+18=2变成了25+16=41,crypiograph尸对应的密码就是24135252133“。但这样的密码,显然忽略了一点:密码的可解密性,我们之所以要进行加密,是为了安全地传递信息.但接收信息者必须要仃解密的方法.但这种加密方式则没有对应的解密方法.所以说.这不是一个合格的加密方式。这时,足终聪明的人,则考虑到了解密的
8、方法。他们想出了一-些类似于古代使用的加密方法。比如说,著名的凯嫩密码:把一段H1.英文字母组成的谱句,每个字母都在字母表中往后移3个位置.-ventvidiMCir也就变成了“yhq1.y1.g1.y1.t.这种密码的解密方法,也就是每个字母在字母表中向箭移动3个位置,当何起这种玄码体制里最IR要的是什么,大部分人都会说是加密算法。如果把加密算法告诉了别人,那这种密码就相当于被破解了。如果进而问起一个密码体制的组成,大部分人的答,就是加密算法.也许有些自用比普通人聪明一点的人,还会加上一个解密算法,也就是,将处理过后的密码变为正常文字的算法.如果用阳代如要彼加雷的文字,C代表被加密出来的密码
9、,EO代表加密算法,DO代表解率算法,那么大多数人理解的密码学,本质就是以下这两个式子:c=E(n)in=D(c)1.1.1 密钥但是,我们考虑一下实际的侍况。根据我们之前的常识.会发现,如果要用密码来传递信息.首先通信的双方必须要在一个安全信道中传递一些额外的信息.比如说,告诉接收者加密的方式.或者更n接施,告诉攵不解密算法。不存在种和密的方式,能不出先通过安全信道传递信息,而使得只有接收者能的解密。那么,为了使通信更加安全,通信双方对安全信道的使用应该尽可能少,如果A1.iCC和Bob使用凯撒定码进行通信,而A1.iCe事先在安全信道中要对BOb说“我的这种加密方式是把一段由英文字母组成的
10、语句,每个字母那在字母衣中往后移3个位置.”这段话是如此之长,而如果考虑是在战场上,由通信员用摩尔斯电码发送,那么花戏的这么长的时间显然是不合叫!的。再者,现代的通信方式一般都是把信息编码成二进制进行传递,那么,相比把段话娟眄成二进制.不如找一些数字来代表这个定码.在我们的这段思想博弈中,一个重要的概念呼之欲出.京凯楸密码为例,在其加密算法中,还有一个关键的H:3.试想,如果通信双方A1.iCe和Bob.A1.ice在场的所有人她用的是凯嫩密码的加率方式加密她的话,又在安全信道中告诉Bob-4,意味着她使用的凯撤密码里,是将每个字母在字母衣的位跣上向后移动4个位置.么,即使在场有人能偷听到A1
11、.iCe给Bob的密码,也无法破斛Ake想说的是什么,只彳j掌握了规则“向后移动4个位置”的Bob.才能正确地破解密码.如果还是按照之前的说法,一个密码体制包括加密霓法和解密算法,那么向后移动3个位置的凯嫩密码和向后移动4个位置的凯撤密码,就成了两个密码体制。但是,这两种加密方式是极其类似的,差别也就只在于一个向后移动3个位置.一个向后移动4个位置.我们对于这些密码的研究,也许也就十分类似.因此,把这两种加密方式归类为同一种梏码体制.似乎是更好的选择,因此,密钥就应运而生了,所谓密钥,我们可以粗略地理解成加密算法、斛密驾法中的参数,也就是我们之前说的3、4.通过一个密码体制通信的双方,需要首先
12、在保密信道中确定密鼓而一个密码体制,也就可以由加密。法、解密算法和密钥构成.W1.1.t.如果以J1.代表密钥,加么之前的式子就变成了c=Ek(m,”=Dfc(C)这也就是现在通用的衡码学。那么我们思考几个问瑜:在一次加密通信过程中,加密獴法和解密算法中使用的密倒是否必须要相同?密钥是否只能是一个数?可不可以没有密例?针时第一个问跑,确实存在某些高端的技巧使得加密修法和解密算法使用的密铀是不同的。M实上,在宓码学领域中,根据加雷豫法和解密算法使用的密铝是否相同,人们将加雷方式分为对称加密与非时称加酸,分别对应使用同一密钥和使FH不同密钥,非对称加密方式也许雄以理解,我们也会在充分学习对称加密后
13、再介绍非对称加密.所以,我们接下来讨论的对称加密过程中,请大家记住,加容算法和解密算法使用的是相同的名彷.此外,对于对称加密算法,密钥也并不一定是一个数。比如说,加密算法Eab(m)=am+b其密钥为胡),但我们仍认为我使用单一济钥,也就是说.把(Gb)看作一个密钥.此外,可不可能不存在密钥呢?确实有这样的密码体制,但这样却也十分不安全,比如说,加密算法E(m)=/H就是一个无密钥的加密算法.1.2 密码体制的基本要素根据之前的讨论.我们就可以得出一个密眄体制的基本要素: 明文空间M所有可以被加密算法加密的元索组成的集合,加密算法的定义城.明文空间的元素叫做明文dieM.例如,在凯撤密码中,明
14、文空间就为所有由英文字母祖成的字符申“ 密文空间C所有可以由加密算法输出的元素纲成的集合,加密算法的做域。密文空间的元素叫做宓文ceC.我们需要注意到的是,这里的伯域,可以理解成二元函数E(1,)的值域.比如说.对于加密非法Ek(/W)=nr+Ir其密文空间为0.+8)而非F,+oo). 密钥空间K所有密钥组成的集合。密钥空间的元素叫做密钥JteK.在非对称加密中,密的空间分为加密密钥空间和解密密钥空间.加密算法Efc(ZM)根据密钥生成的特定豫法,将明文转化为密文, 解密法Da根据密钥生成的特定算法,将密文转化为明文.对于时称加格算法,也就是只使用一个密切的加密体制,解密算法与加密豫法湎足D
15、k(Ejc(m)=m在我打讨论密码体制的一些性质时,密仍生成算法有时也是必要的.什么是密钥生成算法呢?回忆之前A1.iCe和Bob的例子,凭什么A1.ice选择的密钥是4而不是25呢?这就涉及到了密钥牛.成算法,在这个例子中,率倒生成算法就是A1.ice自己想到哪个密钥就输出哪个密91.但是.从严格意义上来讲.密钥生成算法是一种概率算法.所谓概率算法,就是在算法的步骡中涉及到了某些概率.比如说,在某个密钥生成算法中,在。I)中等慨率随机生成一个数,,而生成的密钥大满足1I(0.5,1)k=0/=0.5-16(0,0.5)这就是一个典型的概率律法.其特点就是在两次运行中输出的结果不一定相同.因此
16、,我们称一个加密方案包含一:个要素:加密算法E,解密算法D.密钥生成算法G根据定义,我们可以说,一个密码体制由一个加密方案(E,D,G)及一个明文空间M完全定义,因此,A1.ie和BOb的一次加密通信的过程包括:1.A1.ice根据梆仍生成算法G生成密的kK.2 A1.ice通过安全信道将k告诉Bob.3 A1.iCC将想要传达的明文meM根据加密究法加密成裕文C=Ek(,)告诉Bob.4 Bob根据之前AIiCe告诉自己的k、密文C及解密算法得出明文E=D1.c(C)原么,在一个密码体制中,哪个最通要呢?是不是之前我们说的加密匏法呢?这里,就不得不提Kerckhof1.s原则用现代的语言来说
17、,KerckhofYs原则匍述的是:提化1安全性不能建立在对算法的保密上.也就是说,我们如果要证明一个加密体制的安全性,不能指型算法的保密性.我们应默认加解密算法可以被所有人知道(事实上也确实如此),也就是说,我正值得保密的.是密仍.如果潜在的敌手获得南朝,那么根据公开的解密算法,那么他就可以从物得的密文中获得明文。1.2.1 弱密钥与半弱密钥在我们构造密码体系的时候,有的人会S!,利用己行的密码体系加的两次怎么样?即:Ek(Efc(zn)或者EH(EfcS(,)的安全性如何?这里提出了弱密钥与半弱密钥的概念:定义1.1.肘于加密:方式Ekg),若密钥Jt使得对于任意mGM,书Ek(Ek(M)
18、=m则称A为朋密钥.若密钥ki.kz若密钊k使得对于任意mM.有Efc1(Ek3(m)=m则称八心为一对半弱密的.由上述定义可知,如果我们想鬟利用已有的密码体系加密两次,那么一定要避开的就是弱密钥与半弱密钥.1.3经典密码1.3.1 基础概念我们讨论了密码体制的基本要素之后,就可以介绍一些经典的密码,让大家更好地理解这些术语了.值得指出的是,这些密码都是古代欧洲人的研究成果,当时并没有如今“数字化”的概乐因此,这些密码,都是针对拉丁字母诳行的加密,因此,我们首先要引入一些概念:函数CR”)将拉丁字母m映射到它在字母表中的位置上,比如C(八)=1,C(2)=26.函数/(”)格位于I和26之间的
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2024 现代 密码学 简介

链接地址:https://www.desk33.com/p-1564067.html