《密码学》课程复习部分1、(1 )画出保密通信系统模型;(2 )说明在私钥密码体制和公钥密码体制下,该保密通信系统模型的差别主要体现在什么方面?解:(1 )保密通信系统模型如下图所示:(2 )在私钥密码体制和公钥密码体制下,该模型的差别主要体现在加密密钥的分发或传递上(即虚线部分所体现的差别)。
私钥密码体制下,接收方和发送方的共享密钥必须通过安全信道传递。
而在公钥密码体制下,发送方只需要认证所使用的加密密钥是接收方的。
2、设p=23 ,E 是由y 2 ≡x 3 +x+1(mod 23)所确定的有限域Z23 上的椭圆曲线。
(1 )设P=(x 1 ,y 1 ),Q=(x 2 ,y 2 ),P ≠-Q 是椭圆曲线E p (a,b)上的点,给出计算P+Q=(x 3 ,y 3 )的规则(提示:分成P =Q 和P ≠Q 两种情况)(2 )已知该椭圆曲线上有P=(13,7),Q=(3,10)两点,计算P+Q(3 )已知该椭圆曲线上有P=(13,7),计算2P答案:略。
3、简述密码体制的组成及其密码体制的分类。
答:密码体制就是完成加密和解密功能的密码方案或密码算法。
一个密码体制(Cryptosystem )或密码算法通常由以下5个部分构成:① 明文空间M (全体明文的集合);② 密文空间C (全体密文的集合);③ 密钥空间K (全体密钥的集合);④ 加密器或加密变换(算法)E ,由加密密钥控制的加密变换的集合,即K k C c M m c m E K ∈∈∈=,,,)(;⑤ 解密器或解密变换(算法)D ,由解密密钥控制的解密变换的集合,即K k C c M m m c D K ∈∈∈=,,,)(。
密码体制的分类:(1)根据密文数据段是否与明文数据段在整个明文中的位置有关否,可以将密码体制分为分组密码体制和序列密码体制。
(2)根据加密变换是否可逆,可以将密码体制分为单向变换密码体制和双向变换密码体制。
(3)根据在加密过程中是否引入客观随机因素,可以将密码体制分为确定型密码体制和概率密码体制。
4、评价一个密码体制的安全性有哪些方法?一个密码体制是实际可用的(或安全的)必须满足那些条件?答:评价一个密码体制安全性的有以下三种方法:①无条件安全:即使破译者提供了无穷的资源,依然无法破译,则该密码体制是无条件安全的,也称为完善保密性(Perfect Secrecy)。
②可证明安全性:该方法是将密码算法的安全性归结为某个经过深入研究的数学难题,而这个数学难题被证明在目前求解是困难的,因而密码算法在目前可证明是安全的。
③计算安全性:是在目前的计算资源条件有限的情况下,或利用已有的最好的破译方法破译该密码算法所需要的努力超出了破译者的破译能力(诸如时间、空间、资金等资源),或破译该密码算法难度等价于某个数学难题,因此该密码算法的安全是暂时的,也称为实际安全性(Practical Secrecy)。
一个密码体制要是实际可用的(或安全的)必须满足如下条件:①每一个加密函数和解密函数都能有有效的解;②破译者取得密文后将不能在有效的时间或成本范围内破译出密钥或明文;③一个密码体制是安全的必要条件:穷举破译将是不可行的,即密钥空间非常大。
5、(1 )以DES 为例,画出分组密码的输出反馈(CFB )模式的加密解密示意图(反馈值可以设定为j 比特)(2 )在(1 )的题设下,假设反馈值设定为8 比特,则加密时明文的一个比特错误,对密文造成什么影响?(3 )在(1 )的题设下,假设反馈值设定为8 比特,在传输过程中,密文的一个比特发生错误,则对接收方解密会造成什么影响?解:(1 )输出反馈(CFB )模式的加密示意图如下:(2 )加密时明文的一个比特错误,会导致该组加密密文发生变化,然后会把这个错误反馈到移位寄存器中,再经过DES 加密变换。
会导致后面的密文都受到影响。
(3 )在传输过程中,密文的一个比特错误,反馈值设定为8 比特时,会导致明文的一个单独错误。
此外,错误进入移位寄存器,导致后面部分密文成为无用信息,直到该错误从移位寄存器中移出。
故反馈值设定为8 比特,在传输过程中,密文的一个比特发生错误,则会产生9 个字节不能正常解密。
6、以DES为例,画出分组密码的输出反馈(OFB)模式的加密解密示意图(反馈值可以设定为j 比特),假设反馈值设定为8比特,则加密时明文的一个比特错误,对密文造成什么影响?假设反馈值设定为8比特,在传输过程中,密文的一个比特发生错误,对接收方解密会造成什么影响?解:(1)输出反馈(OFB)模式的加密示意图如下:(2)加密时明文的一个比特错误,只会导致该组加密密文发生变化,后面的密文不受到影响。
(3)在传输过程中,密文的一个比特错误,反馈值设定为8比特时,会导致明文的一个单独错误,改组密文无法正确解密。
但错误不会进入移位寄存器,导致后面部分密文可正常解密。
7、以DES为例,画出分组密码的密码分组链接(CBC)模式的加密解密示意图,假设加密时明文一个比特错误,对密文造成什么影响,对接收方解密会造成什么影响?在传输过程中,密文的一个比特发生错误,对接收方解密会造成什么影响?解:(1)输出反馈(CBC)模式的加密示意图如下:(2)加密时明文的一个比特错误,会导致该组加密密文发生变化,然后这个错误反馈值会作为下一次DES加密的输入值,再经过DES加密变换。
会导致后面的密文都受到影响。
(3)在传输过程中,密文的一个比特错误,会导致明文的一个单独错误。
此外,错误进入作为反馈值会作为下一次DES解密过程的输入,导致后一组密文无法正常解密,导致后组明文的一个单独错,但后续密文能够正常解密,因此密文1比特出错,会导致两组密文无法解密,即128比特,16字节无法正常解密。
8、以DES为例,画出分组密码的密码本(ECB)模式的加密解密示意图,并简述一下ECB模式的优缺点解:ECB模式最大特点:每个分组用同一密钥加密,同样明文分组得相同密文优点: 模式简单,主要适用于内容较短的报文的加密传递;无差错传播缺点:文明相同,密文相同;容易受到重复和代换攻击;9、简述密码体制的组成及其密码体制的分类。
答:密码体制就是完成加密和解密功能的密码方案或密码算法。
一个密码体制(Cryptosystem )或密码算法通常由以下5个部分构成:① 明文空间M (全体明文的集合);② 密文空间C (全体密文的集合);③ 密钥空间K (全体密钥的集合);④ 加密器或加密变换(算法)E ,由加密密钥控制的加密变换的集合,即K k C c M m c m E K ∈∈∈=,,,)(;⑤ 解密器或解密变换(算法)D ,由解密密钥控制的解密变换的集合,即K k C c M m m c D K ∈∈∈=,,,)(。
密码体制的分类:(1)根据密文数据段是否与明文数据段在整个明文中的位置有关否,可以将密码体制分为分组密码体制和序列密码体制。
(2)根据加密变换是否可逆,可以将密码体制分为单向变换密码体制和双向变换密码体制。
(3)根据在加密过程中是否引入客观随机因素,可以将密码体制分为确定型密码体制和概率密码体制。
10、简述信息安全攻击的主要形式及其含义。
答:(1)被动攻击:是未经用户同意和认可的情况下将信息或数据文件泄露给系统攻击者,但不对数据信息进行任何修改。
通常包括监听未受保护的通信信息、流量分析,破解弱加密的数据流、获得认证信息(如密码等)。
(2)主动攻击:主要涉及某些数据流的篡改或虚假数据流的产生。
主动攻击常分为假冒(或伪造)、重放、篡改信息和拒绝服务四类。
(3)物理临近攻击:是指未授权人以更改、收集或拒绝访问为目的而物理接近网络系统或设备。
这种接近可以是秘密进入或公开接近,或两种方式同时使用。
(4)内部人员攻击:可以是恶意的也可以非恶意的。
恶意攻击是指内部人员有计划地窃听或损坏信息或拒绝其他授权用户的访问。
(5)软硬件配装攻击:是指在软硬件生产的工厂内或在产品分发过程中恶意修改硬件或软件。
11、请具体阐述使用Diffie-Hellman 协议产生一个会话密钥的具体过程。
12、简要描述数字签名的基本原理及过程。
13、请阐述密钥分配与密钥协商的区别。
14、简述差分密码分析与线性分析区别?15、在RSA公开密钥加密方案中,每个用户有一个公开密钥e和一个私有密码d。
假设泄露了他的私有密钥。
他不是产生一个新的模数,而是决定产生一个新的公开和私有密钥,这样做安全吗?【同模攻击分析】16、Shamir的秘密共享门限方案:设:p=17;n=5;t=3;(ID(1), h(ID(1)))=(1, 8);(ID(2), h(ID(2)))=(2, 7);(ID(3), h(ID(3)))=(3, 10);(ID(4), h(ID(4)))=(4, 0);(ID(5), h(ID(5)))=(5, 11)。
当第1位、第3位、第5位参与者同时到场,求共享的秘密?20、盲签名是这样一种签名方案:签名者看不见他签名的对象。
我们介绍一种基于RSA 体制的盲签名。
设d为签名者的私钥,e和n是签名者的公钥。
由签名请求人选定消息m和盲因子k,计算t=mk e mod n,发送t 给签名者。
签名者计算并发送盲签名t d=(mk e)d mod n给签名请求人,签名请求人去除盲因子,得到消息m的原始签名s=t d/k=m d mod n,试问我们能否基于离散对数构造盲签名?如能,试给出你设计的基于离散对数的盲签名方案。
(如能,请把步骤写详细清楚)17、数字签名的原理和作用分别是什么?一个数字签名方案的一般形式是怎样的?签名算法为s,要求A对消息m签名并秘密地将m发送给用户B,那么A是签名后加密还是先加密后签名好?请说明理由?答:数字签名的原理是:利用Hash函数计算数据消息摘要;利用发送方的私钥加密该摘要;将该加密的摘要与原文一起发送,接收方对其进行验证,判断其真伪。
数字签名的作用是:防止对电文的否认与抵赖,发现攻击者对电文的非法篡改;保护数据完整性。
一个数字签名方案由两部分组成:签名算法和验证算法,签名者对消息使用签名算法,验证算法的结果表示了签名是否真实可靠。
在一个签名体制中,签名算法或签名密钥是秘密的,只有签名人掌握;验证算法是公开的,以便于他人进行验证。
最好是先签名(对明文签名),因为:首先,这样可以将签名后的报文存储起来以便可以再次使用(向其他人提供该报文);其次,如果先加密后签名,验证过程设计中的问题可能会导致一些安全威胁(尽管可以避免)。
18、举例说明保密密码体制的定义,并指出密码体制的四种攻击类型。
答:定义: (密码体制)它是一个五元组(M,C,K,E,D)满足条件(1)M是可能明文的有限集;(明文空间)(2)C是可能密文的有限集;(密文空间)(3)K是一切可能密钥构成的有限集;(密钥空间)(4)并有加密解密算法满足以下:加密E(M,K)=C 解密D(C,K)=M并且有:D(E(M,K1),K2)=M密钥K的可能值的范围称密钥空间。