文档库 最新最全的文档下载
当前位置:文档库 › JNU2012密码学期末真题考题

JNU2012密码学期末真题考题

JNU2012密码学期末真题考题
JNU2012密码学期末真题考题

密码学作业

作业要求

1按下面各题要求回答问题;

2上机进行实验

3索引二篇公开发表有关计算机密码学的文章。时间发表在2009年以后

4考试当日,答题前交到监考老师处(二篇文章,本作业)

二.密码体制分类

密码体制从原理上可分为两大类,即单钥体制和双钥体制。

单钥体制的加密密钥和解密密钥相同。采用单钥体制的系统的保密性主要取决于密钥的保密性,与算法的保密性无关,即由密文和加解密算法不可能得到明文。换句话说,算法无需保密,需保密的仅是密钥。

换句话说,算法无需保密,需保密的仅是密钥。根据单钥密码体制的这种特性,单钥加解密算法可通过低费用的芯片来实现。密钥可由发送方产生然后再经一个安全可靠的途径(如信使递送)送至接收方,或由第三方产生后安全可靠地分配给通信双方。如何产生满足保密要求的密钥以及如何将密钥安全可靠地分配给通信双方是这类体制设计和实现的主要课题。密钥产生、分配、存储、销毁等问题,统称为密钥管理。这是影响系统安全的关键因素,即使密码算法再好,若密钥管理问题处理不好,就很难保证系统的安全保密。单钥体制对明文消息的加密有两种方式:一是明文消息按字符(如二元数字)逐位地加密,称之为流密码;另一种是将明文消息分组(含有多个字符),逐组地进行加密,称之为分组密码。单钥体制不仅可用于数据加密,也可用于消息的认证。

双钥体制是由Diffie和Hellman于1976年首先引入的。采用双钥体制的每个用户都有一对选定的密钥:一个是可以公开的,可以像电话号码一样进行注册公布;另一个则是秘密的。因此双钥体制又称为公钥体制。

双钥密码体制的主要特点是将加密和解密能力分开,因而可以实现多个用户加密的消息只能由一个用户解读,或由一个用户加密的消息而使多个用户可以解读。前者可用于公共网络中实现保密通信,而后者可用于实现对用户的认证。

三.扩散和混淆

扩散和混淆是由Shannon提出的设计密码系统的两个基本方法,目的是抗击敌手对密码系统的统计分析。

所谓扩散,就是将明文的统计特性散布到密文中去,实现方式是使得明文的每一位影响密文中多位的值,等价于说密文中每一位均受明文中多位影响。

混淆是使密文和密钥之间的统计关系变得尽可能复杂,以使敌手无法得到密钥。因此即使敌手能得到密文的一些统计关系,由于密钥和密文之间的统计关系复杂化,敌手也无法得到密钥。

七.什么是零知识证明?下图表示一个简单的迷宫,C与D之间有一道门,需要知道秘密口令才能将其打开。P向V证明自己能打开这道门,但又不愿向V泄露秘密口令。可采用什么协议?

零知识证明起源于最小泄露证明。在交互证明系统中,设P知道某一秘密,并向V证明自己掌握这一秘密,但又不向V泄露这一秘密,这就是最小泄露证明。进一步,如果V

除了知道P能证明某一事实外,不能得到其他任何信息,则称P实现了零知识证明,相应的协议称为零知识证明协议。

① V在协议开始时停留在位置A。

② P一直走到迷宫深处,随机选择位置C或位置D。

③ P消失后,V走到位置B,然后命令P从某个出口返回位置B。

④ P服从V的命令,必要时利用秘密口令打开C与D之间的门。

⑤ P和V重复以上过程n次。

协议中,如果P不知道秘密口令,就只能从来路返回B,而不能走另外一条路。此外,P每次猜对V要求走哪一条路的概率是1/2,因此每一轮中P能够欺骗V的概率是1/2。假定n取16,则执行16轮后,P成功欺骗V的概率是1/216=1/65536。于是,如果P16次都能按V的要求返回,V即能证明P确实知道秘密口令。还可以看出,V无法从上述证明过程中获取丝毫关于P的秘密口令的信息,所以这是一个零知识证明协议。

四.什么是密码分组链接(CBC)模式,请画出加密\解密示意图

它一次对一个明文分组加密,每次加密使用同一密钥,加密算法的输入是当前明文分组和前一次密文分组的异或,因此加密算法的输入不会显示出与这次的明文分组之间的固定关系,所以重复的明文分组不会在密文中暴露出这种重复关系。

一根据下面图解释名词,明文,密文,加密,解密,加密算法,解密算法, 加密密钥和解密密钥

通信双方采用保密通信系统可以隐蔽和保护需要发送的消息,使未授权者不能提取信息。发送方将要发送的消息称为明文,明文被变换成看似无意义的随机消息,称为密文,这种变换过程称为加密;其逆过程,即由密文恢复出原明文的过程称为解密。对明文进行加密操作的人员称为加密员或密码员。密码员对明文进行加密时所采用的一组规则称为加密算法。传送消息的预定对象称为接收者,接收者对密文进行解密时所采用的一组规则称为解密算法。加密和解密算法的操作通常都是在一组密钥控制下进行的,分别称为加密密钥和解密密钥。

五.杂凑(Hash)函数应满足的条件

杂凑函数应满足以下条件:

①函数的输入可以是任意长。

②函数的输出是固定长。

③已知x,求H(x)较为容易,可用硬件或软件实现。

④已知h,求使得H(x)=h的x在计算上是不可行的,这一性质称为函数的单向性,称H(x)为单向杂凑函数。

⑤已知x,找出y(y≠x)使得H(y)=H(x)在计算上是不可行的。

如果单向杂凑函数满足这一性质,则称其为弱单向杂凑函数。

⑥找出任意两个不同的输入x、y,使得H(y)=H(x)在计算上是不可行的。

如果单向杂凑函数满足这一性质,则称其为强单向杂凑函数。

第⑤和第⑥个条件给出了杂凑函数无碰撞性的概念,如果杂凑函数对不同的输入可产生相同的输出,则称该函数具有碰撞性。

六.迭代型杂凑函数的一般结构

其中函数的输入M被分为L个分组Y0,Y1,…,YL-1,每一个分组的长度为b比特,最后一个分组的长度不够的话,需对其做填充。

算法中重复使用函数f

f 的输入有两项,一项是上一轮(第i-1轮)输出的n比特值CVi-1,称为链接变量,另一项是算法在本轮(第i轮)的b比特输入分组Yi。f 的输出为n比特值CVi,CVi又作为下一轮的输入。算法开始时还需对链接变量指定一个初值IV,最后一轮输出的链接变量CVL 即为最终产生的杂凑值。通常有b>n,因此称函数f为压缩函数。算法可表达如下:CV0=IV=n比特长的初值;

CVi=f(CVi-1,Yi-1);1≤i≤L;

H(M)=CVL

算法的核心技术是设计无碰撞的压缩函数f,而敌手对算法的攻击重点是f 的内部结构,由于f 和分组密码一样是由若干轮处理过程组成,所以对f 的攻击需通过对各轮之间的位模式的分析来进行,分析过程常常需要先找出f 的碰撞。由于f 是压缩函数,其碰撞是不可避免的,因此在设计f 时就应保证找出其碰撞在计算上是不可行的。

八.AES高级加密标准的轮函数由4个不同的计算部件组成,分别是:字节代换(ByteSub)、行移位(ShiftRow)、列混合(MixColumn)、密钥加(AddRoundKey)。根据下图写出字节代换(ByteSub)、行移位(ShiftRow)、

(1) 字节代换(ByteSub)

字节代换是非线形变换,独立地对状态的每个字节进行。代换表(即S-盒)是可逆的,由以下两个变换的合成得到:

①首先,将字节看作GF(28)上的元素,映射到自己的乘法逆元,‘00’映射到自己。

②其次,对字节做如下的(GF(2)上的,可逆的)仿射变换:

(2) 行移位(ShiftRow)

行移位是将状态阵列的各行进行循环移位,不同状态行的位移量不同。第0行不移动,第1行循环左移C1个字节,第2行循环左移C2个字节,第3行循环左移C3个字节。位移量C1、C2、C3的取值与Nb有关,由表3.10给出。(见66页表3.10)

按指定的位移量对状态的行进行的行移位运算记为ShiftRow (State)图3.20是行移位示意图。

十二、在RSA算法中,设公钥KU={7,187},私钥KR={23,187},设明文M=88, 求密文C(16分)

答:88^7mod187=[(88^4mod187)( 88^2mod187)( 88^1mod187)] mod187

88^1mod187=88

88^2mod187=7744mod187=77

88^4mod187=59969536 mod187=132

88^7mod187=(88*77*132) mod187=894432mod187=11

所以M=88 在公钥KU={7,187}的计算下得到的密问C=11,

解密时,我们计算M=11^23 mod187

11^23 mod187=[(11^1 mod187)( 11^2 mod187)( 11^4 mod187(11^8 mod187)( 11^8mod187)) mod187

11^1 mod187=11

11^2 mod187=121

11^4 mod187=14641 mod187=55

11^8 mod187=214365881 mod187=33

11^23 mod187=(11*121*55*33*33) mod187=79720245 mod187=88

用私钥KR={23,187}计算出明文M=88,

十三、根据下图S-DES收、发双方共享的10位密钥,计算出两个8位子密钥分别用在加密、解密的不同阶段。图中的P10、P8如下表,初始10位密钥为(1010000010)求图中的K1、K2

初始10位密钥为(1010000010)

P10=1000001100

LS1左=00001 LS1右=11000 K 1= P8=10010010 LS2左=00100 LS2右=00011 K 2= P8=00001001

十四、根据下图S-DES 加密算法计算出当明文M=11110011,求密文?算法中的变换如表

解答如下:

(S0)1=00 (S1)1=10 (S0)2=10 (S1)2=00

明文C=10010110

十五、通信双方使用RSA 加密体制,接收放的公开密钥是(e,n )=(5,119) 接收到的密文是C=66,求明文m=? p(96例4.8)

解:求n=119=p ×q ,选p=7,q=17。φ(n)=(p-1)(q-1)=96。取e=5,满足1

c ≡195 mo

d 119≡2476099 mod 119≡66

解密为

6677mod 119≡19

练习题

用RSA算法对下列数据实现加密和解密

1)p=3;q=11;e=7;m=5

2) p=5;q=11;e=3m=9

3) p=7;q=11;e=1;m=8

4)p=11;q=13;e=11;m=7

5)p=17;q=31;e=7;m=2

十六、是密钥分配的一个实例。根据下图,假定两个用户A、B分别与密钥分配中心KDC (key distribution center)有一个共享的主密钥K A和K B。A希望与B建立一个共享的一次性会话密钥,根据下图解释可通过几步来完成?

密钥分配实例

①A向KDC发出会话密钥请求。表示请求的消息由两个数据项组成,第1项是A和B的身份,第2项是这次业务的惟一识别符N1,称N1为一次性随机数,可以是时戳、计数器或随机数。

②KDC为A的请求发出应答。应答是由KA加密的消息,因此只有A才能成功地对这一消息解密,并且A可相信这一消息的确是由KDC 发出的。消息中包括A希望得到的两项内容:

?一次性会话密钥KS;

?A在①中发出的请求,包括一次性随机数N1,

此外,消息中还有B希望得到的两项内容:

?一次性会话密钥KS;

?A的身份(例如A的网络地址)IDA。

这两项由KB加密,将由A转发给B,以建立A、B之间的连接并用于向B证明A的身份。

③A存储会话密钥,并向B转发EKB[KS‖IDA]。因为转发的是由KB加密后的密文,所以转发过程不会被窃听。B收到后,可得会话密钥KS,并从IDA可知另一方是A,而且还从EKB知道KS的确来自KDC。

这一步完成后,会话密钥就安全地分配给了A、B。然而还能继续以下两步工作:

④B用会话密钥KS加密另一个一次性随机数N2,并将加密结果发送给A。

⑤A以f(N2)作为对B的应答,其中f是对N2进行某种变换(例如加1)的函数,并将应答用会话密钥加密后发送给B。

十七、假定A、B双方已完成公钥交换,根据下图可按什么步骤建立共享会话密钥?:

图5.7 具有保密性和认证性的密钥分配

①A用B的公开钥加密A的身份ID A和一个一次性随机数N1后发往B,其中N1用于惟一地标识这一业务。

②B用A的公开钥PK A加密A的一次性随机数N1和B新产生的一次性随机

数N2后发往A。因为只有B能解读①中的加密,所以B发来的消息中N1的存在可使A相信对方的确是B。

③A用B的公钥PK B对N2加密后返回给B,以使B相信对方的确是A。

④A选一会话密钥K S,然后将M=E PKB[E SKA[K S]]发给B,其中用B的公开钥加密是为保证只有B能解读加密结果,用A的秘密钥加密是保证该加密结果只有A能发送。

⑤B以D PKA[D SKB[M]]恢复会话密钥。

十八、MD5的算法的框图如下图所示。算法的输入为任意长的消息(图中为K比特),分为512比特长的分组,输出为128比特的消息摘要。请解释MD5对对消息填充、附加消息的长度用步骤、对MD缓冲区初始化处理过程?

图6.5 MD5的算法框图

处理过程有以下几步:

①对消息填充对消息填充,使得其比特长在模512下为448,即填充后消息的长度为512的某一倍数减64,留出的64比特备第2步使用。步骤①是必需的,即使消息长度已满足要求,仍需填充。例如,消息长为448比特,则需填充512比特,使其长度变为960,因此填充的比特数大于等于1而小于等于512。

填充方式是固定的,即第1位为1,其后各位皆为0。

②附加消息的长度用步骤①留出的64比特以little-endian方式来表示消息被填充前的长度。如果消息长度大于264,则以264为模数取模。

Little-endian方式是指按数据的最低有效字节(byte)(或最低有效位)优先的顺序存储数据,即将最低有效字节(或最低有效位)存于低地址字节(或位)。相反的存储方式称为big-endian 方式。

前两步执行完后,消息的长度为512的倍数(设为L倍),则可将消息表示为分组长为512的一系列分组Y0,Y1,…,Y L-1,而每一分组又可表示为16个32比特长的字,这样消

息中的总字数为N=L×16,因此消息又可按字表示为M[0,…,N-1]。

③对MD缓冲区初始化算法使用128比特长的缓冲区以存储中间结果和最终杂凑值,缓冲区可表示为4个32比特长的寄存器(A,B,C,D),每个寄存器都以little endian方式存储数据,其初值取为(以存储方式)A=01234567,B=89ABCDEF,C=FEDCBA98,

D=76543210,实际上为67452301,EFCDAB89,98BADCFE,10325476。

十九、例7.1 下面给出的是具有仲裁方式数字签字,其中X表示发方,Y表示收方,A 是仲裁者,M是消息,X→Y:表示X给Y发送一消息M。请解释签字按如下过程是怎样

实现的?

①X→A:M‖E KXA[ID X‖H(M)]。

②A→Y:E KAY[ID X‖M‖E KXA[ID X‖H(M)]‖T]。

其中E是单钥加密算法,KXA和KAY分别是X与A共享的密钥和A与Y共享的密钥,H(M)是M的杂凑值,T是时戳,IDX是X的身份。

在①中,X以EKXA[IDX‖H(M)]作为自己对M的签字,将M及签字发往A。在②中A将从X收到的内容和IDX、T一起加密后发往Y,其中的T用于向Y表示所发的消息不是旧消息的重放。Y对收到的内容解密后,将解密结果存储起来以备出现争议时使用。

如果出现争议,Y可声称自己收到的M的确来自X,并将

EKAY[IDX‖M‖EKXA[IDX‖H(M)]]

发给A,由A仲裁,A由KAY解密后,再用KXA对EKXA[IDX‖H(M)]解密,并对H(M)加以验证,从而验证了X的签字。

以上过程中,由于Y不知KXA,因此不能直接检查X的签字,但Y认为消息来自于A因而是可信的。所以在整个过程中,A必须取得X和Y的高度信任:

?X相信A不会泄露KXA,并且不会伪造X的签字;

?Y相信A只有在对EKAY[IDX‖M‖EKXA[IDX‖H(M)]‖T]中的杂凑值及X的签字验证无误后才将之发给Y;

?X,Y都相信A可公正地解决争议。

如果A已取得各方的信任,则X就能相信没有人能伪造自己的签字,Y就可相信X不能对自己的签字予以否认。

本例中消息M是以明文形式发送的,因此未提供保密性,下面两个例子可提供保密性。

二十、例7.2下面给出的是具有仲裁方式数字签字,其中X表示发方,Y表示收方,A

是仲裁者,M是消息,X→Y:表示X给Y发送一消息M。请解释数字签字按如下过程是

怎样实现的?

例签字过程如下:

① X→A: IDX‖EKXY[M]‖EKXA[IDX‖H(EKXY[M])]。

② A→Y: EKAY[IDX‖EKXY[M]‖EKXA[IDX‖H(EKXY[M])]‖T]。

其中K XY是X,Y共享的密钥,其他符号与例7.1相同。X以E KXA[ID X‖H(E KXY[M])]作为对M的签字,与由KXY加密的消息M一起发给A。A对E KXA[ID X‖H(E KXY[M])]解密后通过验证杂凑值以验证X的签字,但始终未能读取明文M。A验证完X的签字后,对X发来的消息加一时戳,再用K AY加密后发往Y。解决争议的方法与例7.1一样。

本例虽然提供了保密性,但还存在与上例相同的一个问题,即仲裁者可和发方共谋以否认发方曾发过的消息,也可和收方共谋以伪造发方的签字。这一问题可通过下例所示的采用公钥加密技术的方法得以解决。

二十一、例7.2下面给出的是具有仲裁方式数字签字,其中X表示发方,Y表示收方,A是仲裁者,M是消息,X→Y:表示X给Y发送一消息M。请解释签字按如下过程是怎

样实现的?

例签字过程如下:

例7.3 签字过程如下:

① X→A:IDX‖ESKX[IDX‖EPKY[ESKX[M]]]。

② A→Y:ESKA[IDX‖EPKY[ESKX[M]]‖T]。

其中SKA和SKX分别是A和X的秘密钥,PKY是Y的公开钥,其他符号与前两例相同。第①步中,X用自己的秘密钥SKX和Y的公开钥PKY对消息加密后作为对M的签字,以这种方式使得任何第3方(包括A)都不能得到M的明文消息。A收到X发来的内容后,用X的公开钥可对ESKX[IDX‖EPKY[ESKX[M]]]解密,并将解密得到的IDX与收到的IDX加以比较,从而可确信这一消息是来自于X的(因只有X有SKX)。第②步,A将X的身份IDX和X对M 的签字加上一时戳后,再用自己的秘密钥加密发往Y。

与前两种方案相比,第3种方案有很多优点。首先,在协议执行以前,各方都不必有共享的信息,从而可防止共谋。第二,只要仲裁者的秘密钥不被泄露,任何人包括发方就不能发送重放的消息。最后,对任何第三方(包括A)来说,X发往Y的消息都是保密的。

二十二、根据下图说明PGP中通过数字签字提供认证的过程?

①发送方产生消息M。

②用SHA产生160比特长的消息摘要H(M)。

③发送方用自己的秘密钥SK A按RSA算法对H(M)加密,并将加密结果EP SKA[H(M)]与M链接后发送。

④接收方用发送方的公开钥对EP SKA[H(M)]解密得H(M)。

⑤接收方对收到的M计算消息摘要,并与④中的H(M)比较。如果一致,则认为M是真实的。

过程中结合使用了SHA和RSA算法,类似地也可结合使用DSS算法和SHA算法。

二十三、根据下图说明PGP为传输或存储的文件提供加密的保密性认证

业务的过程?①发

送方产生消息M及一次性会话密钥KS。

②用密钥K S按CAST-128(或IDEA或3DES)加密M。

③用接收方的公开钥PK B按RSA算法加密一次性会话密钥K S,将②、③中的两个加密结果链接起来发往接收方。

④接收方用自己的秘密钥按RSA算法恢复一次性会话密钥。

⑤接收方用一次性会话密钥恢复发送方发来的消息。

二十四、根据下图说明同一消息同时提供保密性与认证性的过程?、

发送方首先用

自己的秘密钥对消息签字,将明文消息和签字链接在一起,再使用一次性会话密钥按CAST-128(或IDEA或3DES)对其加密,同时用ElGamal算法对会话密钥加密,最后将两个加密结果一同发往接收方。这一过程中,先对消息签字再对签字加密。这一顺序优于先加密、再对加密结果签字。这是因为将签字与明文消息在一起存储比与密文消息在一起存储会带来很多方便,同时也给第三方对签字的验证带来方便。

21、图2.9是一个3级反馈移位寄存器,其初始状态为(a1,a2,a3)=(1,0,1),输出可由

2.2求出。

图2.9 一个3级反馈移位寄存器 参考答案

表2.2 一个3级反馈移位寄存器的状态和输出

既输出序列为101110111011……,周期为4

状态(a 1,a 2,a 3) 输出

1 0 1 1 1 0 1 1 1 0 1 1 1 0 1 1 1 0

1 0 1 1 1 0

22.计算AES 的密钥编排EAD27321(32) B58DBAD2(33) 312BF560(34) 7F8D292F (35)

求W 36 W 37 W 38 W 39

扩展的计算 第八轮密钥

EAD27321(32) B58DBAD2(33)312BF560(34) 7F8D292F(35)

1.字循环:使一个字的中的四个字节循环左移一个字节. W35 = temp=7F8D292F RotWord 后=7F8D292F 2.S盒对输入的每个字节进行代换 SubWord=5DA515D2 {7F}经过s 盒的代换得到{5D }

3. 第2步的结果SubWord=5DA515D2与轮常量进行

Rcon[9] ⊕5DA515D2=1B000000 ⊕5DA515D2

=46A515D2

常量是一个字,最右边三个字节总是为0

RCON[J]=(RC[J],0,0,0)

G=46A515D2

W36 = G ⊕W32 = 46A515D2 ⊕EAD27321

=AC7766F3

W37= W33 ⊕W36

W38= W34 ⊕W37

W39= W35 ⊕W38

23例2.3 图2.11是一个5级线性反馈移位寄存器,其初始状态为(a1,a2,a3,a4,a5)=(1,0,0,1,1),可求出输出序列为

图2.11 一个5级线性反馈移位寄存器

1001101001000010101110110001111100110…

周期为31。

2

25 RSA算法密钥的产生

①选两个保密的大素数p和q。

②计算n=p×q,φ(n)=(p-1)(q-1),其中φ(n)是n的欧拉函数值。

③选一整数e,满足1

④计算d,满足d·e≡1 mod φ(n),即d是e在模φ(n)下的乘法逆元,因e与φ(n)互素,由模运算可知,它的乘法逆元一定存在。

⑤以{e,n}为公开钥,{d,n}为秘密钥。

36例4.8 选p=7,q=17。计算ASE的密钥求19的密文?

求n=p×q=119,φ(n)=(p-1)(q-1)=96。取e=5,满足1

c≡195 mod 119≡2476099 mod 119≡66

解密为

6677mod 119≡19

37 公钥证书

上述公钥管理机构分配公开钥时也有缺点,由于每一用户要想和他人联系都需求助于管理机构,所以管理机构有可能成为系统的瓶颈,而且由管理机构维护的公钥目录表也易被敌手窜扰。

分配公钥的另一方法是公钥证书,用户通过公钥证书来互相交换自己的公钥而无须与公钥管理机构联系。公钥证书由证书管理机构CA(certificate authority)为用户建立,其中的数据项有与该用户的秘密钥相匹配的公开钥及用户的身份和时戳等,所有的数据项经CA 用自己的秘密钥签字后就形成证书,即证书的形式为CA=ESKCA[T,IDA,PKA],其中IDA 是用户A 的身份,PKA 是A 的公钥,T 是当前时戳,SKCA 是CA 的秘密钥,CA 即是为用户A 产生的证书。产生过程如图5.5所示。用户可将自己的公开钥通过公钥证书发给另一用户,接收方可用CA 的公钥PKCA 对证书加以验证,即

DPKCA[CA]=DPKCA[ESKCA[T,IDA,PKA]]=(T,IDA,PKA)

)PK ,ID (T,]]PK ,ID [T,[E D ][C D A A A A SK PK A PK CA CA CA ==

图5.5 证书的产生过程

因为只有用CA 的公钥才能解读证书,接收方从而验证了证书的确是由CA 发放的,且也获得了发送方的身份IDA 和公开钥PKA 。时戳T 为接收方保证了收到的证书的新鲜性,用以防止发送方或敌方重放一旧证书。因此时戳可被当作截止日期,证书如果过旧,则被吊销。

38. 简单分配

图5.6表示简单使用公钥加密算法建立会话密钥的过程,如果A 希望与B 通信,可通过以下几步建立会话密钥:

① A 产生自己的一对密钥{PKA,SKA},并向B 发送PKA||IDA ,其中IDA 表示A 的身份。 ② B 产生会话密钥KS ,并用A 的公开钥PKA 对KS 加密后发往A 。

③ A 由DSKA[EPKA[KS]]恢复会话密钥。因为只有A 能解读KS ,所以仅A 、B 知道这一共享密钥。

④ A 销毁{PKA,SKA},B 销毁PKA 。

图5.6 简单使用公钥加密算法建立会话密钥

密码技术复习题

一、选择题 1、密码学包括哪两个相互对立的分支(D) A.对称加密与非对称加密 B.序列算法与分组算法 C.DES和RSA D.密码编码学与密码分析学 2、在密码学中,需要被变换的原消息被称为什么?D A.密文 B.算法 C.密码 D.明文 3、下列古典密码算法是置换密码的是(C) A.加法密码 B.Hill密码 C.多项式密码 D.栅栏式密码 4、乘数密码是(C) A.替换与变换加密 B.变换加密 C.替换密码 D.都不是 5、关于摘要函数,叙述不正确的是(C) A.输入任意大小的消息,输出时一个长度固定的摘要 B.输入消息中的任何变动都会对输出摘要产生影响 C.输入消息中的任何变动都不会对输出摘要产生影响 D.可以防止消息被篡改 6、下面关于密码算法的阐述,__D_是不正确的。 A.对于一个安全的密码算法,即使是达不到理论上的不破的,也应当实际 上是不可破的。即是说,从截获的密文或某些已知明文密文对,要决定 密钥或任意明文在计算机上是不可行的。 B.系统的保密性不依赖与对加密体制或算法的保密,而依赖于密钥(这就是 著名的Kerckhoff原则) C.数字签名的的理论基础是公钥密码体制。 D.对于使用公钥密码体制加密的密文,知道密钥的人,就一定能够解密。 7、通常使用_ C_来实现抗抵赖 A.加密 B.时间戳

C.签名 D.数字指纹 8、根据所依据的难解问题,除了_C_以外,公钥密码体制分为以下分类 A.大整数分解问题(简称IFP) B.椭圆曲线离散对数问题(简称ECDLP) C.生日悖论 D.离散对数问题(简称DLP) 9、下列算法属于Hash 算法的是(C) A.DES B.IDEA C.SHA D.RSA 10、以下各种加密算法中属于古典加密算法的是(A) A.Caesar替代法 B.DES加密算法 C.IDEA加密算法 D.Diffie-Hellman加密算法 11、以下各种加密算法中属于双钥制加密算法的是(D) A.DES加密算法 B.Caesar替代法 C.Vigenere算法 D.Diffie-Hellman加密算法 12、PKI是(B) A.Private Key Infrastructure B.Public Key Infrastructure C.Public Key Institute D.Private Key Institue 13、PKI解决信息系统中的_A__问题 A.身份信任 B.权限管理 C.安全审计 D.加密 14、下面哪一项不是一个公开密钥基础设施(PKI)的正常的部件(D) A.数字签名 B.CA中心 C.密钥管理协议 D.对称加密密钥

现代密码学期终考试试卷和答案

一.选择题 1、关于密码学的讨论中,下列(D )观点是不正确的。 A、密码学是研究与信息安全相关的方面如机密性、完整性、实体鉴别、抗否认等的综 合技术 B、密码学的两大分支是密码编码学和密码分析学 C、密码并不是提供安全的单一的手段,而是一组技术 D、密码学中存在一次一密的密码体制,它是绝对安全的 2、在以下古典密码体制中,属于置换密码的是(B)。 A、移位密码 B、倒序密码 C、仿射密码 D、PlayFair密码 3、一个完整的密码体制,不包括以下(?C?? )要素。 A、明文空间 B、密文空间 C、数字签名 D、密钥空间 4、关于DES算法,除了(C )以外,下列描述DES算法子密钥产生过程是正确的。 A、首先将DES 算法所接受的输入密钥K(64 位),去除奇偶校验位,得到56位密钥(即经过PC-1置换,得到56位密钥) B、在计算第i轮迭代所需的子密钥时,首先进行循环左移,循环左移的位数取决于i的值,这些经过循环移位的值作为下一次 循环左移的输入 C、在计算第i轮迭代所需的子密钥时,首先进行循环左移,每轮循环左移的位数都相同,这些经过循环移位的值作为下一次循 环左移的输入 D、然后将每轮循环移位后的值经PC-2置换,所得到的置换结果即为第i轮所需的子密钥Ki 5、2000年10月2日,NIST正式宣布将(B )候选算法作为高级数据加密标准,该算法是由两位比利时密码学者提出的。 A、MARS B、Rijndael C、Twofish D、Bluefish *6、根据所依据的数学难题,除了(A )以外,公钥密码体制可以分为以下几类。 A、模幂运算问题 B、大整数因子分解问题 C、离散对数问题 D、椭圆曲线离散对数问题 7、密码学中的杂凑函数(Hash函数)按照是否使用密钥分为两大类:带密钥的杂凑函数和不带密钥的杂凑函数,下面(C )是带密钥的杂凑函数。 A、MD4 B、SHA-1

密码学与信息安全的关系

密码学与网络信息安全 【论文摘要】本文以优化中小企业信息化管理为思想,以系统开发为宗旨从系统企业的需求到信息化需要系统的支撑,然后设计出进销存管理系统,最后实现进销存管理系统的整个过程。关键词:信息化进销存优化管理。 【论文关键词】密码学信息安全网络 密码学是研究编制密码和破译密码的技术科学。研究密码变化的客观规律,应用于编制密码以保守通信秘密的,称为编码学;应用于破译密码以获取通信情报的,称为破译学,总称密码学。 密码是通信双方按约定的法则进行信息特殊变换的一种重要保密手段。依照这些法则,变明文为密文,称为加密变换;变密文为明文,称为脱密变换。密码在早期仅对文字或数码进行加、脱密变换,随着通信技术的发展,对语音、图像、数据等都可实施加、脱密变换。 密码学是在编码与破译的斗争实践中逐步发展起来的,并随着先进科学技术的应用,已成为一门综合性的尖端技术科学。它与语言学、数学、电子学、声学、信息论、计算机科学等有着广泛而密切的联系。它的现实研究成果,特别是各国政府现用的密码编制及破译手段都具有高度的机密性。 网络安全,这是个百说不厌的话题。因为在互联网上,每台计算机都存在或多或少的安全间题。安全问题不被重视,必然会导致严重后果。诸如系统被破坏、数据丢失、机密被盗和直接、间接的经济损失等。这都是不容忽视的问题。既然说到网络安全,我们经常提到要使用防火墙、杀毒软件等等。这些的确很重要,但是人们往往忽视了最重要的,那就是思想意识。 人类的主观能动性是很厉害的,可以认识世界、改造世界,正确发挥人的主观能动性可以提高认知能力。但是人类本身固有的惰性也是十分严重的,喜欢墨守成规、图省事。就是这点惰性给我的网络带来了安全隐患。据不完全统计,每年因网络安全问题而造成的损失超过300亿美元,其中绝大多数是因为内部人员的疏忽所至。所以,思想意识问题应放在网络安全的首要位置。 一、密码 看到这里也许会有读者以为我大放网词,那就先以我自己的一个例子来说起吧。本人也很懒,但是也比较注意安全性,所以能设置密码的地方都设置了密码,但是密码全是一样的。从E-mail信箱到用户Administrator,统一都使用了一个8位密码。我当初想:8位密码,怎么可能说破就破,固若金汤。所以从来不改。用了几年,没有任何问题,洋洋自得,自以为安全性一流。恰恰在你最得意的时候,该抽你嘴巴的人就出现了。我的一个同事竟然用最低级也是最有效的穷举法吧我的8位密码给破了。还好都比较熟,否则公司数据丢失,我就要卷着被子回家了。事后我问他,怎么破解的我的密码,答曰:只因为每次看我敲密码时手的动作完全相同,于是便知道我的密码都是一样的,而且从不改变。这件事情被我引以为戒,以后密码分开设置,采用10位密码,并且半年一更换。现在还心存余悸呢。我从中得出的教训是,密码安全要放在网络安全的第一位。因为密码就是钥匙,如果别人有了你家的钥匙,就可以堂而皇之的进你家偷东西,并且左邻右舍不会怀疑什么。我的建议,对于重要用户,诸如:Root,Administratoi的密码要求最少要8位,并且应该有英文字母大小写以及数字和其他符号。千万不要嫌麻烦,密码被破后更麻烦。为什么要使用8位密码呢,Unix一共是0x00

《应用密码学》学习笔记

以下是我对《应用密码学》这本书的部分学习笔记,比较简单。笔记中对现代常用的加密技术进行了简单的归类和解释,有兴趣的同学可以看一下,没看过的同学就当普及知识了,看过的同学就当复习了。笔记里面可能有错别字,有的话请各位看客帮忙指正。 第1章密码学概述 1-1、1-2 1.密码技术的发展历史大致可以划分为三个时期:古典密码、近代密码和现代密码时期。 2.公元前440多年的斯巴达克人发明了一种称为“天书”的加密器械来秘密传送军事情报。这是最早的移位密码。 3.1919年德国人亚瑟·谢尔比乌斯利用机械电气技术发明了一种能够自动编码的转轮密码机。这就是历史上最著名的德国“埃尼格玛”密码机。 4.1949年香农的奠基性论文“保密系统的通信理论”在《贝尔系统技术杂志》上发表。 5.1977年,美国国家标准局正式公布实施了美国的数据加密标准(DES)。 6.1976年11月,名美国斯坦福大学的著名密码学家迪菲和赫尔曼发表了“密码学新方向”一文,首次提出了公钥密码体制的概念和设计思想。 7.1978年,美国的里韦斯特(R.L.Rivest)、沙米尔(A.Shamir)和阿德勒曼(L.Adleman)提出了第一个较为完善的公钥密码体制——RSA体制,成为公钥密码的杰出代表和事实标准。 8.2000年10月,比利时密码学家Joan Daemen和Vincent Rijmen提出的“Rijndael数据加密算法”被确定为AES算法,作为新一代数据加密标准。 1-3 1.密码学的主要任务:密码学主要为存储和传输中的数字信息提供如下几个方面的安全保护:机密性、数据完整性、鉴别、抗抵赖性。 2.密码体制中的有关基本概念: 明文(plaintext):常用m或p表示。 密文(ciphertext):常用c表示。 加密(encrypt): 解密(decrypt): 密码算法(cryptography algorithm):简称密码(cipher)。

2016年全国密码学竞赛初赛真题(收集版)

因为题是我们答题的时候自己存下来的,所以并不是严格的40道单选20道多选20道选择。排版比较乱,但是有很好的参考价值。 一、单选 4.以Brakerski-Vaikuntanathan为代表提出了基于()困难问题构造的第2代全同态加密方案。 A.霍奇猜想 B.纳卫尔-斯托可方程 C.NP-C D.带误差学习 5.DES加密算法中___________。 A.全部过程是非线性的 B.全部过程是线性的 C.部分过程是非线性的 D.不存在以上说法 7.下面哪种密码可以抵抗频率分析攻击() A.置换密码 B.仿射密码 C.多名代替密码 D.加法密码 8. TELNET协议主要应用于哪一层(?? ?) A.应用层 B.传输层 C.Internet层? D.网络层 9.()的安全性是基于数论中在一个非常大的维数格中寻找最短向量的数学难题。 A.NTRU 算法 B.全同态 C.RSA算法 D.DH算法 10.会话密钥由()选择并分发。 A.会话请求双发 B.可信权威机构 C.密钥中心 D.可信服务器 16.2013年,IBM研究中心发布的开源同态加密库HElib实现的是()方案。 A.DGHV B.GSW C.BGV D.BV11b 17.采用主模式进行?IKE?第一阶段协商的三对消息中,哪一对消息的协商是加密进行的?()? A.双方交换协商第一阶段?SA?需要的参数 B.双方交换?KE?和?Nonce C.双方交换身份验证信息 D.以上都不是 18.下列哪项不可以用来侦听和分析网络流量() A.Wireshark B.Tcpdump C.SSLdump D.Burpsuite 18.()方式,数据解密时需要将密文传输至客户端,数据库密文的检索性能是该种加密方式面临的最大问题。 A.存储层加密 B.数据库层加密 C.应用层加密 D.网络层加密 21.G.I.David等提出一种基于()的数据库加密策略。 A.密钥 B.子密钥 C.上下文 D.对象 4.以Brakerski-Vaikuntanathan为代表提出了基于()困难问题构造的第2代全同态加密方案。 A.霍奇猜想 B.纳卫尔-斯托可方程 C.NP-C D.带误差学习 26.Which of the following is not included in public key cryptosystem for confidentiality? A.Key generation B.Encryption algorithm C.Decryption algorithm D.Verification algorithm 25.下列不属于可信计算平台中的构件的是() A.安全协处理器 B.可信平台模块 C.安全插槽 D.增强型CPU 27.S-HTTP是在()的HTTP协议 A.传输层 B.链路层 C.网络层 D.应用层 22. 除了()以外,下列都属于公钥的分配方法 A.公用目录表 B.公钥管理机构 C.公钥证书 D.秘密传输

final-10 密码学期末试题

CS255:Cryptography and Computer Security Winter2010 Final Exam Instructions ?Answer all four questions. ?The exam is open book and open notes.Wireless devices are not allowed. ?You have two hours. Problem1.Questions from all over. a.Suppose a symmetric cipher uses128bit keys to encrypt1024bit messages.Can the cipher be perfectly secure?Justify your answer. b.Suppose a symmetric cipher uses128bit keys to encrypt1024bit messages.Can the cipher be semantically secure?Justify your answer. c.Suppose a cipher encrypts1024bit messages and the resulting ciphertext is1024bits long. Can the cipher be semantically secure under a chosen plaintext attack?(i.e.can we use one key to encrypt more than one message?)Justify your answer. d.What is the smallest possible positive value of e that can be used to de?ne the RSA trapdoor function?Explain why a smaller value of e cannot be used. e.Prove that the function F(k,x)=k⊕x is not a secure PRF. f.Consider MAC-based challenge-response authentication where the shared secret between the prover and veri?er is a human memorizable password.Can a passive eavesdropper who listens in on communications between the prover and veri?er carry out a dictionary attack against the prover’s password?If not,explain why not.If yes,explain how. Problem2.Hash functions. a.Let’s explore what goes wrong if the padding block in the Merkle-Damgard construction does not include the message length.Let h:X×M→X be a compression function used in the Merkle-Damgard construction to build a hash function H taking inputs in X?. Let IV be the initial value used by H.Suppose one?nds a?xed point for h,namely a message block m such that h(IV,m)=IV.Explain how this?xed point can be used to construct collisions for H,assuming the padding block does not contain the length. b.Recall that SHA-256uses the Davies-Mayer compression function.Davies-Mayer builds a compression function h from a block cipher(E,D)by de?ning h(x,m):=x⊕E(m,x). Show that the designers of SHA-256could easily choose an IV for which they have a ?xed point for h. c.Prove that if H1and H2are collision resistant then so is H(x):=H1(H2(x)). d.Prove that if H1and H2are collision resistant,H(x):=H1(x)⊕H2(x)need not b e. Hint:given a collision resistant hash function T,construct collision resistant functions H1,H2such that H is not collision resistant. 1

密码学级考卷A卷 答案

试题 2015 年~ 2016 年第1 学期 课程名称:密码学专业年级: 2013级信息安全 考生学号:考生姓名: 试卷类型: A卷■ B卷□考试方式: 开卷□闭卷■……………………………………………………………………………………………………… 一. 选择题(每题2分,共20分) 1.凯撒密码是有记录以来最为古老的一种对称加密体制,其加密算法的定义为, 任意,,那么使用凯撒密码加密SECRET的结果是什么()。 A. UGETGV B. WIGVIX C. VHFUHW D. XIVGIW 2.在一下密码系统的攻击方法中,哪一种方法的实施难度最高的()。 A. 唯密文攻击 B. 已知明文攻击 C. 选择明文攻击 D. 选择文本攻击 3.仿射密码顺利进行加解密的关键在于保证仿射函数是一个单射函数,即对于 任意的同余方程有唯一解,那么仿射密码的密钥空间大小是()。(表示中所有与m互素的数的个数) A. B. C. D. 4.为了保证分组密码算法的安全性,以下哪一点不是对密码算法的安全性要求

()。 A. 分组长度足够长 B. 由密钥确定置换的算法要足够复杂 C. 差错传播尽可能地小 D. 密钥量足够大 5.以下哪一种分组密码工作模式等价于同步序列密码()。 A. 电码本模式(ECB模式) B. 密码分组链接模式(CBC模式) C. 输出反馈模式(OFB模式) D. 密码反馈模式(CFB模式) 6.以下对自同步序列密码特性的描述,哪一点不正确()。 A.自同步性 B.无错误传播性 C.抗主动攻击性 D.明文统计扩散性 7.如下图所示的线性移位寄存器,初始值为,请问以下哪 一个选项是正确的输出序列()。 A. B. C. D. 8.以下关于消息认证码的描述,哪一点不正确()。 A.在不知道密钥的情况下,难以找到两个不同的消息具有相同的输出 B.消息认证码可以用于验证消息的发送者的身份 C.消息认证码可以用于验证信息的完整性 D.消息认证码可以用于加密消息 9.以下哪些攻击行为不属于主动攻击()。 A.偷听信道上传输的消息

密码学在网络安全中的应用

密码学在网络安全中的应用 0 引言 密码学自古就有,从古时的古典密码学到现如今数论发展相对完善的现代密码学。加密算法也经历了从简单到复杂、从对称加密算法到对称和非对称算法并存的过程。现如今随着网络技术的发展,互联网信息传输的安全性越来越受到人们的关注,很需要对信息的传输进行加密保护,不被非法截取或破坏。由此,密码学在网络安全中的应用便应运而生。 1 密码的作用和分类 密码学(Cryptology )一词乃为希腊字根“隐藏”(Kryptós )及“信息”(lógos )组合而成。现在泛指一切有关研究密码通信的学问,其中包括下面两个领域:如何达成秘密通信(又叫密码编码学),以及如何破译秘密通信(又叫密码分析学)。密码具有信息加密、可鉴别性、完整性、抗抵赖性等作用。 根据加密算法的特点,密码可以分为对称密码体制和非对称密码体制,两种体制模型。对称密码体制加密和解密采用相同的密钥,具有很高的保密强度。而非对称密码体制加密和解密是相对独立的,加密和解密使用两种不同的密钥,加密密钥向公众公开,解密密钥只有解密人自己知道,非法使用者根据公开的加密密钥无法推算出解密密钥[1]。 2 常见的数据加密算法 2.1 DES加密算法 摘 要:本文主要探讨的是当今流行的几种加密算法以及他们在网络安全中的具体应用。包括对称密码体制中的DES加密算法和AES加密算法,非对称密码体制中的RSA加密算法和ECC加密算法。同时也介绍了这些加密方法是如何应用在邮件通信、web通信和keberos认证中,如何保证网络的安全通信和信息的加密传输的。 关键词:安全保密;密码学;网络安全;信息安全中图分类号:TP309 文献标识码:A 李文峰,杜彦辉  (中国人民公安大学信息安全系,北京 102600) The Applying of Cryptology in Network Security Li Wen-feng 1, Du Yan-hui 2 (Information security department, Chinese People’s Public Security University, Beijing 102600, China) Abstract: This article is discussing several popular encryption methods,and how to use this encryption method during security transmittion.There are two cipher system.In symmetrical cipher system there are DES encryption algorithm and AES encryption algorithm.In asymmetrical cipher system there are RSA encryption algorithm and ECC encryption algorithm. At the same time, It introduces How is these encryption applying in the mail correspondence 、the web correspondence and the keberos authentication,how to guarantee the security of the network communication and the secret of information transmits. Key words: safe security; cryptology; network security; information security DES 算法为密码体制中的对称密码体制,又被成为美国数据加密标准,是1972年美国IBM 公司研制的对称密码体制加密算法。其密钥长度为56位,明文按64位进行分组,将分组后的明文组和56位的密钥按位替代或交换的方法形成密文组的加密方法。 DES 加密算法特点:分组比较短、密钥太短、密码生命周期短、运算速度较慢。DES 工作的基本原理是,其入口参数有三个:Key 、Data 、Mode 。Key 为加密解密使用的密钥,Data 为加密解密的数据,Mode 为其工作模式。当模式为加密模式时,明文按照64位进行分组,形成明文组,Key 用于对数据加密,当模式为解密模式时,Key 用于对数据解密。实际运用中,密钥只用到了64位中的56位,这样才具有高的安全性。 2.2 AES加密算法 AES (Advanced Encryption Standard ):高级加密标准,是下一代的加密算法标准,速度快,安全级别高。2000年10月,NIST (美国国家标准和技术协会)宣布通过从15种候选算法中选出的一项新的密匙加密标准。Rijndael 被选中成为将来的AES 。Rijndael 是在1999年下半年,由研究员Joan Daemen 和 Vincent Rijmen 创建的。AES 正日益成为加密各种形式的电子数据的实际标准。 算法原理:AES 算法基于排列和置换运算。排列是对数据重新进行安排,置换是将一个数据单元替换为另一个。 doi :10.3969/j.issn.1671-1122.2009.04.014

密码学基础教学大纲完整版

《密码学基础》课程教学大纲 (课程代码:07310620) 课程简介 密码学基础是信息安全专业的一门技术基础课程,该课程的学习将为后续的信息安全课程打下基础,同时也为将来从事信息安全研究和安全系统的设计提供 必要的基础。该课程主要讲授流密码(古典密码学)分组密码学、公钥密码学、 密钥分配与管理、信息认证和杂凑算法、数字签名以及网络加密与认证等几个部分,在其中将学习各种加解密、散列函数、单向函数、签名模式及伪随机发生器 等多种密码学工具,以及如何应用这些工具设计一个实现基本信息安全目标的系 统(目前学时不够,没有安排)。基本密码学工具的掌握和应用这些工具构造安 全服务就是本课程的基本目标。 本课程具有如下特点: (一)依赖很强的数学基础 本课程需要数论、近世代数、概率论、信息论、计算复杂性等数学知识作为 学习的基础。这些数学基础的讲解既要体现本身的体系性,同时还要兼顾密码学背景。 (二)可扩展性强 各种具体方法的学习不是本课程的最终目标,背后的基本原理以及应用这些原理设计新工具的能力才是本课程的最终目标。 (三)课程内容复杂且涉及面广 由于密码学内容丰富,且包含许多复杂的知识点,所以本课程的讲授以线为主,即在基本主线的勾勒基础上对授课内容及复杂程度做出取舍。 本课程先修课程有:数据结构、近世代数、概率论、高等数学、高级语言程 序设计等。后续课程有信息安全扫描技术、PKI技术、病毒学等专业课程。 课程教材选用国内信息安全优秀教材杨波编著的《现代密码学》(清华大学出版社),同时参考国外优秀教材:《经典密码学与现代密码学》,Richard Spillman,清华大学出版社、Douglas R. Stinson著,冯登国译的《密码学原理和实践》,电子工业出版社,2003年2月第二版。另外还向学生推荐国内的一些具有特色的操作系统教材如胡向东编写的《应用密码学教程》(电子工业出版社)等。 实验教材选用自编的实验指导书,同时参考上海交大的“信息安全综合实验系统实验指导书”,除了这些教材之外,学校的图书馆为师生提供了相关的学术 期刊和图书。 课程教学体系:理论课程(34学时)课程实验(16学时)。达到从算法 验证、综合设计、到创新应用知识的逐步提高、全面培养的目的。相应的教学 材料由教学大纲、实验大纲、实验指导书等。实践环节的实验条件有:计算机 科学技术系的实验中心(实施课程实验)。 课程教学安排 序号内容课时数备注 一密码学概述 2 二古典密码学算法(一) 2

06计算机密码学试卷A

计算机密码学试卷A 学号:姓名:成绩: 班级:计算机科学与技术(信息安全)031预科、031、032班 一、选择与填空:(24分,每题2分) 1、5 mod 13的乘法逆元是:,负元是:。 2、从信息论的角度看,要提高密码的保密性,应该通过两个途径,一是通过:,二是。 3、DES密码有次迭代,它的加/解密算法仅不同。 4、有限状态自动机在流密码中的作用是:。 5、两密钥三DES加密算法中的加密可以表示为:。 6、强单向杂凑函数是指:。 7、在密钥的生成、分配、管理中KDC叫,它的作用是: 。 8、设已知乘数密码明文字母 J(9)对应于密文字母 P(15),即 9k mod 26 = 15, 密钥 k是:。 9、AES算法如果密钥为192位,则种子密钥阵列为:字节的阵列。 10、对一个分组,SHA要经过轮,步运算。 11、选择明文攻击的前提是:。 12、在认证协议中,时间戳的作用是为了防止攻击。 二、简答:(20分,每题5分) 1、简述CA机构为客户颁发公钥证书的过程,X.509公钥证书中主要包含了哪些项目。

2、简述DSS数字签名标准。 3、简述分组密码的密码反馈模式的工作原理,如果按照16bit反馈,使用DES工作 于密码反馈模式,这时如果某分组的密文中出现了1bit的错误,则此错误在怎样的情况下会影响以后分组的正确性?最多会影响几个分组? 4、怎么样去找一个大素数?素性检测的原理和作用是什么? 三、计算与证明:(56分) 1、用RSA加密:p=7,q=17,e=13,M=10。(4分)

2、求: 11的所有本原根(6分)。 3、用费尔玛和欧拉定理求:6208 mod 11 (4分) (1,3)表示y≡x3+x+3 mod 11 求: 4、椭圆曲线E 11 =3,计算其公钥。(4分) ①曲线上所有的点。(5分)②生成元G(1,4),私钥n A ③若明文为Pm = (4,7),k取2,计算密文Cm。(4分) x≡ 2 mod 3 4、求同余方程组:x≡ 4 mod 5 (5分) x≡ 6 mod 7

云南大学密码技术期末重点剖析

填空: 1.密码包括两部分:密码编码学和密码分析学 2.根据每次处理数据的多少可以分为流密码、分组密码各自一个代表算法:RC4、DES算法 3.单表替换密码的密钥有多少种:26!Playfair 密码有5×5个密钥轮转机:26^n 4.IDEA算法密钥长度为128bits,RC4算法的密钥长度为8-2048bitsAES算法的密钥长度分别为128、192和256 5.DES密码数据分组为64bits,和输入密钥是64bits,产生56bit的字密钥 6.安全服务(X.800),服务分成五大类: 认证 访问控制 数据保密性 数据完整性 不可否认性 名词解释: 无条件安全: 无论有多少可使用的密文,都不足以唯一的确定密文所对应的明文。 计算的安全: 1.破译密码的代价超出密文信息的价值 2.破译密码的时间超出密文信息的有效生命 对称密钥体制 经典的密码体制中,加密密钥与解密密钥是相同的,或者可以简单相互推导,也就是说:知道了加密密钥,也就知道了解密密钥;知道了解密密钥,也就知道了加密密钥。所以,加、解密密钥必须同时保密。这种密码体制称为对称(也称单钥)密码体制。最典型的对称加密算法是DES数据加密标准。 公钥密码体制

公钥算法是基于数学函数而不是基于替换和置换的。公钥密码学使用两个密钥:公密钥、私密钥,其中公密钥可以公开,而私密钥需要保密。仅根据密码算法和加密密钥来确定解密密钥在计算上是不可行的。两个密钥中的任何一个都可以用来加密,另一个用来解密。公钥密码可以用于加密、认证、数字签名等。 ECC 椭圆曲线密码学(ECC, Elliptic curve cryptography)是基于椭圆曲线数学的一种公钥密码的方法,ECC他是添加了模拟的模乘运算,叠加的是模拟的模幂运算。需要困难的问题去当量于离散的log。Q=KP,Q、P属于主要曲线,他是容易的计算Q的值给出K、P,但是是困难的去找到K给出Q、P,解决椭圆算法问题。Eq(a,b) 碰撞(Collision) 如果两个输入串的hash函数的值一样,则称这两个串是一个碰撞(Collision)。既然是把任意长度的字符串变成固定长度的字符串,所以,必有一个输出串对应无穷多个输入串,碰撞是必然存在的。 置换:指古典密码的编码方式的一种,把明文中的字母重新排列,字母本身不变,但其位置改变了,从而实现加密明文的过程。 替换:代换是指古典密码的编码方式的一种,即将明文中的字符替换成其他字符,产生相互映射的关系。 离散对数选择一个素数p,设α与β为非0的模p整数,令)(modpxαβ≡,求x的问题成为离散对数问题。如果n是满足nα)mod1p(≡的最小正整数,假设0nx<≤,我们记)(βαLx=,并称之为与α相关的β的离散对数(素数p可从符号中忽略 混淆:使得密钥和明文以及密文之间的依赖关系相当复杂以至于这种依赖性对密码分析者来说是无法利用的。目前主要采用替代运算以及非线性运算等。在DES主要采用S盒替代。 扩散:密钥的每一位数字影响密文的许多位数字以防止对密钥进行逐段破译,而且明文的每一位数字也应影响密文的许多位数字以便隐蔽明文数字统计特性。最简单的扩散是置换。 简答: HMAC设计思路 1.在消息中使用散列函数: 2.其中K+填充大小是关键 3.OPAD,iPad都采用指定的填充常量 4.开销仅有3哈希的消息需要单独计算比

密码学期末考试复习

填空题 1、密码学的主要任务是实现性、鉴别、数据完整性、抗抵赖性。 1、性是一种允许特定用户访问和阅读信息,而非授权用户对信息容不可理解的安全属性。在密码学中,信息的性通过加密技术实现。 2、完整性数据完整性即用以确保数据在存储和传输过程中不被非授权修改的的安全属性。密码学可通过采用数据加密、报文鉴别或数字签名等技术来实现数据的完整性保护。 3、鉴别是一种与数据来源和身份鉴别有关的安全服务。鉴别服务包括对身份的鉴别和对数据源的鉴别。对于一次通信,必须确信通信的对端是预期的实体,这就涉及到身份的鉴别。 4、抗抵赖性 是一种用于阻止通信实体抵赖先前的通信行为及相关容的安全特性。密码学通过对称加密或非对称加密,以及数字签名等技术,并借助可信机构或证书机构的辅助来提供这种服务。 5、密码编码学的主要任务是寻求有效密码算法和协议,以保证信息的性或认证性的方法。它主要研究密码算法的构造与设计,也就是密码体制的构造。它是密码理论的基础,也是系统设计的基础。 6、密码分析学的主要任务是研究加密信息的破译或认证信息的伪造。它主要是对密码信息的解析方法进行研究。 7、明文(Plaintext)是待伪装或加密的消息(Message)。在通信系统中它可能是比特流,如文本、位图、数字化的语音流或数字化的视频图像等。 8、密文(Ciphertext)是对明文施加某种伪装或变换后的输出,也可认为是不可直接理的字符或比特集,密文常用c表示。 9、加密(Encrypt )是把原始的信息(明文)转换为密文的信息变换过程。 10、解密(Decrypt)是把己加密的信息(密文)恢复成原始信息明文的过程。 11、密码算法(Cryptography Algorithm)也简称密码(Cipher),通常是指加、解密过程所使用的信息变换规则,是用于信息加密和解密的数学函数。对明文进行加密时所采用的规则称作加密算法,而对密文进行解密时所采用的规则称作解密算法。加密算法和解密算法的操作通常都是在一组密钥的控制下进行的。 11、密钥(Secret Key )密码算法中的一个可变参数,通常是一组满足一定条件的随机序列 12、替代密码是指先建立一个替换表,加密时将需要加密的明文依次通过查表,替换为相应的字符,明文字符被逐个替换后,生成无任何意义的字符串,即密文,替代密码的密钥就是其替换表。

《密码学》期末考试试卷

新乡学院 2013-2014 学年度第一学期 《密码学》期末考试试卷 2010级信息与计算科学专业,考试时间:100分钟,考试方式:随堂考,满分100分 一、判断题(每小题2分,正确的在后面的括号内打“√”,错误的在后面的括号内打“×”) 1. 1976年,美国数据加密标准(DES)的公布使密码学的研究公开,从而开创了现在密码 学的新纪元,失眠墓穴发展史上的一次质的飞跃。() 2. 密码学的发展大致经历了两个阶段:传统密码学和现在密码学。() 3. 现在密码体质的安全性不应取决于不易改变的算法,而应取决于可是随时改变的密钥。 () 4. Hash函数也称为散列函数、哈希函数、杂凑函数等,是一个从消息空间到像空间的可逆 映射。() 5. 成熟的公钥密码算法出现以后,对称密码算法在实际中已无太大利用价值了。() 二、选择题(每小题2分,将正确答案的标号写在后面的括号内) 1. 若Alice要向Bob分发一个会话密钥,采用ElGamal公钥加密算法,那么Alice对该回 话密钥进行加密应该选用的是()(A)Alice的公钥(B)Alice的私钥(C)Bob的公钥(D)Bob的私钥 2. 下列算法中,不具有雪崩效应的是() (A)DES加密算法(B)序列密码的生成算法(C)哈希函数(D)RSA加密算法 3. 下列选项中,不是Hash函数的主要应用的是() (A)数据加密(B)数字签名(C)文件校验(D)认证协议 4. 对于二元域上的n元布尔函数,其总个数为()(A)n2(B)n22(C)n2(D)以上答案都不对 5. 下列密码算法中,不属于序列密码范畴的是() (A)RC4算法(B)A5算法(C)DES算法(D)WAKE算法 三、填空题(每小题1分,共20分) 1. 序列密码通常可以分为____序列密码和____序列密码。 2. 布尔函数是对称密码中策重要组件,其表示方法主要有____表示、____表示、____表示、 ____表示、____表示、____表示等。 3. 为了抗击各种已有的攻击方法,密码体制中的布尔函数的设计需要满足各种相应的设计 准则,这些设计准则主要有:________、________、________、________、________。 4. Hash函数就是把任意的长度的输入,通过散列函数,变换成固定长度的输出,该输出称 为____,Hash函数的单向性是指:____________________,Hash函数的抗碰撞性是指:________________。 5. 常用的公钥密码算法有:________、________、________、________。 四、简答题(每小题10分,共30分) 1. 简述RSA公钥密码体制中的密钥对的生成步骤、主要攻击方法以及防范措施。 2. 简述ElGamal公钥密码体制中的加密和解密过程。

密码学竞赛,单选题汇编

1.在现有的计算能力条件下,对于非对称密码算法Elgamal,被认为是安全的最小密钥长度是(D.1024位)。 2.密钥为“ISCBUPT”,利用Playfair密码算法,将明文“steganographia”加密,其结果(A)。 A.GNTLTONHOEAFCP ? B.GNTLTONHOEBFCP ? C.GNTLTONHOEAFCT ? D.GNTLTONHOHAFCP 3.RSA使用不方便的最大问题是(A )。 ? A.产生密钥需要强大的计算能力 ? B.算法中需要大数 ? C.算法中需要素数 ? D.被攻击过许多次 4. 一种密码攻击的复杂度可分为两部分,即数据复杂度和(B ) ? A.时间复杂度 ? B.处理复杂度 ? C.空间复杂度 ? D.计算复杂度 5.第一个被推广的背包公钥加密体制是(A ) ? A.Merkle-Hellman ? B.ECC ? C.Rabin ? D.McEliece 6.一个同步流密码具有很高的密码强度主要取决于(A ) ? A.密钥流生成器的设计 ? B.密钥长度 ? C.明文长度 ? D.密钥复杂度 7.根据所依据的难解问题,除了( D)以外,公钥密码体制分为以下分类。 ? A.大整数分解问题(简称IFP) ? B.离散对数问题(简称DLP) ? C.椭圆曲线离散对数问题(简称ECDLP) ? D.生日悖论 8.字母频率分析法对(B)算法最有效。

? A.置换密码 ? B.单表代换密码 ? C.多表代换密码 ? D.序列密码 9.一切国家机关、武装力量、政党、社会团体、_____都有保守国家秘密的义务。( D) ? A.国家公务员 ? B.共产党员 ? C.政府机关 ? D.企业事业单位和公民 10.Vigenere密码是由(C)国密码学家1858年提出来的。 ? A.英 ? B.美 ? C.法 ? D.意大利 11.数字证书采用公钥体制,每个用户设定一个公钥,由本人公开,用它进行()。 ? A.加密和验证签名 ? B.解密和签名 ? C.加密 ? D.解密 12.最佳放射逼近分析方法是一种()的攻击方法 ? A.选择密文攻击 ? B.唯密文攻击 ? C.选择明文攻击 ? D.已知明文攻击 13.Playfair密码是()年由英国人Charles Wheatstone提出来的。 ? A.1854 ? B.1855 ? C.1856 ? D.1853 14.衡量一个密码系统的安全性有两种基本的方法,即(实际安全性)和() ? A.加密安全性 ? B.解密安全性 ? C.验证安全性 ? D.无条件安全性(理论安全)

JNU2012密码学期末真题考题

密码学作业 作业要求 1按下面各题要求回答问题; 2上机进行实验 3索引二篇公开发表有关计算机密码学的文章。时间发表在2009年以后 4考试当日,答题前交到监考老师处(二篇文章,本作业) 二.密码体制分类 密码体制从原理上可分为两大类,即单钥体制和双钥体制。 单钥体制的加密密钥和解密密钥相同。采用单钥体制的系统的保密性主要取决于密钥的保密性,与算法的保密性无关,即由密文和加解密算法不可能得到明文。换句话说,算法无需保密,需保密的仅是密钥。 换句话说,算法无需保密,需保密的仅是密钥。根据单钥密码体制的这种特性,单钥加解密算法可通过低费用的芯片来实现。密钥可由发送方产生然后再经一个安全可靠的途径(如信使递送)送至接收方,或由第三方产生后安全可靠地分配给通信双方。如何产生满足保密要求的密钥以及如何将密钥安全可靠地分配给通信双方是这类体制设计和实现的主要课题。密钥产生、分配、存储、销毁等问题,统称为密钥管理。这是影响系统安全的关键因素,即使密码算法再好,若密钥管理问题处理不好,就很难保证系统的安全保密。单钥体制对明文消息的加密有两种方式:一是明文消息按字符(如二元数字)逐位地加密,称之为流密码;另一种是将明文消息分组(含有多个字符),逐组地进行加密,称之为分组密码。单钥体制不仅可用于数据加密,也可用于消息的认证。 双钥体制是由Diffie和Hellman于1976年首先引入的。采用双钥体制的每个用户都有一对选定的密钥:一个是可以公开的,可以像电话号码一样进行注册公布;另一个则是秘密的。因此双钥体制又称为公钥体制。 双钥密码体制的主要特点是将加密和解密能力分开,因而可以实现多个用户加密的消息只能由一个用户解读,或由一个用户加密的消息而使多个用户可以解读。前者可用于公共网络中实现保密通信,而后者可用于实现对用户的认证。 三.扩散和混淆 扩散和混淆是由Shannon提出的设计密码系统的两个基本方法,目的是抗击敌手对密码系统的统计分析。 所谓扩散,就是将明文的统计特性散布到密文中去,实现方式是使得明文的每一位影响密文中多位的值,等价于说密文中每一位均受明文中多位影响。 混淆是使密文和密钥之间的统计关系变得尽可能复杂,以使敌手无法得到密钥。因此即使敌手能得到密文的一些统计关系,由于密钥和密文之间的统计关系复杂化,敌手也无法得到密钥。 七.什么是零知识证明?下图表示一个简单的迷宫,C与D之间有一道门,需要知道秘密口令才能将其打开。P向V证明自己能打开这道门,但又不愿向V泄露秘密口令。可采用什么协议?

相关文档
相关文档 最新文档