密码编码学与网络安全中文答案文档格式.docx
《密码编码学与网络安全中文答案文档格式.docx》由会员分享,可在线阅读,更多相关《密码编码学与网络安全中文答案文档格式.docx(11页珍藏版)》请在冰豆网上搜索。
2.9简要定义单表代换密码
amonoalphabeticsubstitutionciphermapsaplaintextalphabettoaciphertextalphabet,sothateachletteroftheplaintextalphabetmapstoasingleuniqueletteroftheciphertextalphabet.
书本p23
2.10简要定义playfair密码
theplayfairalgorithmisbasedontheuseofa5?
5matrixoflettersconstructedusingakeyword.plaintextisencryptedtwolettersatatimeusingthismatrix.
书本p26
2.11单表代换密码和夺标代换密码的区别是什么?
apolyalphabeticsubstitutioncipherusesaseparatemonoalphabeticsubstitutioncipherforeachsuccessiveletterofplaintext,dependingonakey.
书本p30
2.12一次一密的两个问题是什么?
1.thereisthepracticalproblemofmakinglargequantitiesofrandomkeys.anyheavilyused
systemmightrequiremillionsofrandomcharactersonaregularbasis.supplyingtrulyrandomcharactersinthisvolumeisasignificanttask.
2.evenmoredauntingistheproblemofkeydistributionandprotection.foreverymessagetobesent,akeyofequallengthisneededbybothsenderandreceiver.thus,amammothkeydistributionproblemexists.
书本p33
2.13什么是置换密码?
atranspositioncipherinvolvesapermutationoftheplaintextletters.
2.14什么是隐写术?
steganographyinvolvesconcealingtheexistenceofamessage.
书本p36
2.7.3习题
2.1
a.对b的取值是否有限制?
解释原因。
没有限制,b只会使得明文加密后的密文字母统一左移或右移,因此如果是单射的,b改变后依然是单射。
注:
答案解答得很坑爹,答了等于没答。
现解答如下:
若要e?
k,p?
?
e?
k,q?
,则ap?
b?
aq?
mod26不成立,则ap?
0mod26不成立。
这时b已经消掉了,因此显然b不会影响算法的映射特性。
b.判定a不能取哪些值。
2,4,6,8,10,12,13,14,16,18,20,22,24.当a大于25时,a也不能是使得amod26为这些数的值。
c.分析a可以取那些值,不可以取那些值。
并给出理由。
a与26必须没有大于1的公因子。
也就是说a与26互素,或者最大公约数为1.为了说
明为什么是这样,先注意到要使e(a,p)=e(a,q)(0≤p≤q26)成立当且仅当26整除a(p–q).
1.假如a与26互素.则26不能整除a(p–q).这是因为不能减小a/26的这部分而且(p–q)小于
26.2.假如a和26有公因子k1.则当q=p+m/k≠p时,p–q=-m/k,显然26能整除a(p–q),从而e(a,p)=e(a,q).
由a.知a?
p?
q?
0mod26不成立,则26不能整除a?
.由文中暗示0?
26,0?
26,这个其实开头我也不知道,后来觉得应该是这样。
因为p与q不相等,所以p?
26,因此p?
q不可能是26的整数倍,但是p?
q有可能是2或13的整数倍。
因此a不能是2或13的整数倍。
2.2有多少种仿射caesar密码?
a有12种可能的值(2,4,6,8,10,12,13,14,16,18,20,22,24),b有26种可能的值(0到25),因此总共有12?
26=312种仿射caesar密码。
2.3用仿射caesar密码加密得到一份密文。
频率最高的字母为b,次高的字母为u,请破译该密码。
假设明文中频率最高的字母为e,次高的字母为t。
注意e=4(e排在第4,a排在第0,没有第26),b=1,t=19,u=20;
因此可以得到:
1=(4a+b)mod26
20=(19a+b)mod26
下式减上式可得19=15amod26,通过反复的错误实验,可得a=3
然后代入第一条式子可得1=(12+b)mod26,然后得出b=15
注意:
答案说经过反复错误试验,这个解答很坑爹,实际上是可以精确算出的。
因为gcd?
15,26?
1,因此由裴蜀定理,必存在整数s和t,使得15s?
26t?
1。
由欧几里得算法
26?
15?
11
15?
11?
4
11?
2?
4?
3
4?
3?
1
因此4?
1,因此?
因此15?
26?
最后得出15?
7?
所以15?
1mod26
119?
7mod26,从而a?
19?
133?
3mod26,3就是这样的出来的.1515
于是p?
c?
a?
1mod26,即p?
1mod26,显然3?
1?
9mod26所以
2.4agoodglassinthebishopshostelinthedevilsseat—twenty-onedegreesandthirteenminutes—northeastandbynorth—mainbranchseventhlimbeastside—shootfromthelefteyeofthedeathshead—abeelinefromthetreethroughtheshotfiftyfeetout.(fromthegoldbug,byedgarallanpoe)
2.5
a.第一个字母t对应a,第二个字母h对应b,e对应c,s对应d,依此类推。
随后在句子中重复出现的字母则忽略。
结果是
密文:
sidkhkdmafhcrkiabieshimckdlfeaila
明文:
basilisktoleviathanblakeiscontact
b.这是一个单表密码,因此容易被破译
c.最后一句可能不会包含字母表中的所有字母。
如果用第一句的话,随后的句子可以继续填补第一句字母的不全。
2.6thecipherreferstothewordsinthepageofabook.thefirstentry,534,referstopage534.thesecondentry,c2,referstocolumntwo.theremainingnumbersarewordsinthatcolumn.thenamesdouglasandbirlstonearesimplywordsthatdonotappearonthatpage.elementary!
(fromthevalleyoffear,bysirarthurconandoyle)
2.6密文其实指的是一本书中某一页的单词。
第一项,534是指第534页。
第二项,c2是指第二列。
剩余的数字是这一列中的单词。
名字douglas和birlstone显然是那一页没有出
【篇二:
密码编码学与网络安全10期末试卷】
s=txt>
专业年级班级姓名学号
一、填空题(答案请填写试题空格之上!
每空1分,共15分)
1.处于计算机安全核心地位的三个关键目标分别是保密性、完整性、可用性。
2.x.800将安全攻击分为主动攻击和被动攻击两类。
3.x.800将认证服务分成主要两类,分别是数据源认证、同等实体认证。
4.访问控制策略一般分成三类:
和基于角色的访问控制策略。
5.对称密码算法主要有明文、密文、密钥、加密算法和
6.请写出两种分组密码的工作模式:
输出反馈模式和计数器模式。
二、简答题(本题总分20分)
1、什么是数字证书,其主要组成部份是是什么,功能是什么?
如何确保数字证书的不可伪造性?
(10)
数字证书就是把公钥和其所有者身份进行绑定的文档;
证书用户和证书所有者;
2、简述cmac算法的主要功能以及算法过程。
(10)确保传来信息的真实性;
将明文m分为:
m=m1+m2+…+mn;
则密文:
c1=e(k,m1)c2=e(k,[m2+c1])c3=e(k,[m3+c2])…
cn=e(k,[mn+cn-1])
outputt=msbtlen(cn)
三、计算题(注意:
请写出计算过程。
)(20)
1、在rsa体制中,某给定用户的公钥e=31,n=3599,那么该用户的私钥等于多少?
(10分)30312、考虑公共素数q=11,本原根为2的diffie-hellman方案,如果a的公钥为9,请问a的私钥是什么?
如果用户b的公钥为3,请问共享的密钥是什么?
(10分)64
四、证明题(本题总分10)
?
(n)表示欧拉函数,请表述此函数的含义。
假设n=pq,其中p、q是两个素数,试证明以下结论:
(n)=(p-1)(q-1)。
五、协议分析题(本题总分15)分析以下协议并解答以下问题:
1、说明该协议的功能,并解释协议每一步骤的具体含义。
2、协议中rb,的作用是什么?
为什么能起到这种作用?
1)、a-b:
rb
2)、a-b:
ra,hk(ra,rb,b)3)、a-b:
hk(rb,ra,a)
其中,a、b是通信双方,h是hash函数。
六、综合论述题(本题总分10)
描述rsa算法的公私钥对生成过程,并论述:
如果可以高效分解大整数,则可以彻底攻破rsa密码体制。
七、综合应用题(10)
某软件公司在其公司网站上发表最新的软件,并希望可以避免软件被黑客篡改之后分发。
请帮他们设计一种解决方案并清晰描述出来。
【篇三:
信息安全复习题答案】
=txt>
1.信息安全(计算机安全)目标是什么?
机密性(confidentiality):
防止XX的信息泄漏完整性(integrity):
防止XX的信息篡改可用性(avialbility):
防止XX的信息和资源截留
抗抵赖性、不可否认性、问责性、可说明性、可审查性(accountability):
真实性(authenticity):
验证用户身份
2.理解计算安全性(即one-timepad的理论安全性)
使用与消息一样长且无重复的随机密钥来加密信息,即对每个明文每次采用不同的代换表不可攻破,因为任何明文和任何密文间的映射都是随机的,密钥只使用一次3.传统密码算法的两种基本运算是什么?
代换和置换
前者是将明文中的每个元素映射成另外一个元素;
后者是将明文中的元素重新排列。
4.流密码和分组密码区别是什么?
各有什么优缺点?
分组密码每次处理一个输入分组,对应输出一个分组;
流密码是连续地处理输入元素,每次输出一个元素流密码stream:
每次加密数据流的一位或者一个字节。
连续处理输入分组,一次输出一个元素,速度较快。
5.利用playfair密码加密明文bookstore,密钥词是(harpsicod),所得的密文是什么?
i/jdrglrqdhg
harpsbookstorexi/jddgpugogvi/jcodbefgklmnqtuvwxyz
6.用密钥词cat实现vigenere密码,加密明文vigenerecoper,所得的密文是什么?
xizgnxtevqpxt
key:
catcatcatcatcatcatplaintext:
vigenerecoperchipertext:
xizgnxtevqpxt
7.假定有一个密钥2431的列置换密码,则明文canyouunderstand的密文是多少?
ynsdcodtnurnaueakey:
2431plaintext:
canyouunderstand
chipertext:
ynsdcodtnurnauea8.什么是乘积密码?
多步代换和置换,依次使用两个或两个以上的基本密码,所得结果的密码强度将强与所有单个密码的强度.9.混淆和扩散的区别是什么?
扩散(diffusion):
明文的统计结构被扩散消失到密文的,使得明文和密文之间的统计关系尽量复杂.即让每个明文数字尽可能地影响多个密文数字
混淆(confusion):
使得密文的统计特性与密钥的取值之间的关系尽量复杂,阻止攻击者发现密钥10.feistel密码中每轮发生了什么样的变化?
将输入分组分成左右两部分。
以右半部数据和子密钥作为参数,对左半部数据实施代换操作。
将两部分进行互换,完成置换操作。
11.s-box的概念
s盒用在des算法中,每个s盒都由6位输入产生4位输出,所有说,s盒定义了一个普通的可逆代换。
相当程度上,des的强度取决于s盒的设计,但是,s盒的构造方法是不公开的12.aes每轮变化中设计的基本操作有哪些?
每轮包括4个阶段:
字节代换、行移位、列混淆、轮密钥加
13.des、aes和rc4之间的比较(建议比较分组大小、密钥长度、相对速度、安全强度、轮数、是否feistel体制、基本操作等若干方面)
*
14.aes与des相比有优点?
3des与des相比的变化有哪些?
什么是2des中的中间相遇攻击?
(1)aes更安全。
(2)3des增加了1到2个密钥,进行多轮des,安全性更高。
(3)c=ek2(ek1(p))?
x=ek1(p)=dk2(c)?
15.分组密码的工作模式有哪些?
及优缺点?
a.ecb,电码本模式,一次处理64位明文,每次使用相同的密钥加密。
任何64位的明文组都有唯一的密文与之对应,有―结构化‖
的缺点。
b.cbc,密码分组连接模式,克服了ecb中―结构化‖的缺点,同样的明文变成密文之后就不同了,而且加密必须从头到尾c.cfb,密码反馈模式.一次处理M位,上一个分组的密文产生一个伪随机数输出的加密算法的输入,该输出与明文的异或,作为
下一个分组的输入。
d.ofb,输出反馈模式,与CFB基本相同,只是加密算法的输入是上一次des的输出。
也可用于流密码。
给定明文密文对(p,c)
对所有256个密钥,加密p,对结果按x排序与t中对所有256个密钥,解密c,解密结果与t中的值比较找出k1,k2使得ek1(p)=dk2(c)
用k1和k2对p加密,若结果为c,则认定这两个密钥为正确的密钥
16.rsa算法中密钥的生成和加密解密过程。
生成过程
rsa的加解密为:
给定消息m=88(88187)?
加密:
c=887mod187=11?
解密:
m=1123mod187=8817.rsa算法计算实例(给定p,q,e,m/c,计算n,?
(n),d,c/m)
1.选择素数:
p=17q=11
18.描述diffie-hellman密钥交换机制。
算法:
a.双方选择素数p以及p的一个原根a
b.用户a选择一个随机数xap,计算ya=axamodpc.用户b选择一个随机数xbp,计算yb=axbmodpd.每一方保密x值,而将y值交换给对方e.用户a计算出k=ybxamodp
用户a用户b
后发
ya
b
f.用户b计算出k=yaxbmodpg.双方获得一个共享密钥
(axaxbmodp)
素数p以及p的原根a可由一方选择
给对方
19.描述diffie-hellman算法(dh算法)
中中间人攻击发生的过程。
中间人攻击
1双方选择素数p以及p的一个原根a(假定o知道)
2a选择xap,计算ya=axamodp,a?
b:
ya
3o截获ya,选xo,计算yo=axomodp,冒充a?
yo4b选择xbp,计算yb=axbmodp,b?
a:
yb5o截获yb,冒充b?
yo
6a计算:
(xo)xa≡(axo)xa≡axoxamodp7b计算:
(xo)xb≡(axo)xb≡axoxbmodp
8o计算:
(ya)xo≡axaxomodp,(yb)xo≡axbxomodpo无法计算出axaxbmodp
o永远必须实时截获并冒充转发,否则会被发现
20.如何使用公钥密码实现数据的保密性、完整性和数据源认证(签名)?
发送方用其私钥对消息―签名‖。
可以通过对整条消息加密或者对消息的一个小的数据块(消息认证码/摘要)加密来产生。
e(k,[m||e(pra,h(m))])其中k为pub
解密时,第一步解密使用b的私钥,然后使用a的公钥。
21.对比对称算法和公钥算法?
(建议从用途,速度和效率等方面)对称算法: