- 1、本文档共6页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
实验一密码和应用实验
实验一 密码及应用实验
实验目的
用高级语言编制基本文本加解密程序。
实验学时
4学时 10.1.10.224:19
实验环境
装有Windows 系统的计算机和相应的程序编程环境。
实验内容
(1)替换加密技术
① 用凯撒密码实现数据加解密。
② 用维吉耐尔加密法实现数据加解密。
③ 用Vernam加密法实现数据加解密。
④ 用异或性质实现密,消息中每个字母换成后三个字母的字母,例如,明文变成了密文凯撒加密法A B C D E F G H I J K L M N O P Q R S T U V W X Y Z D E F G H I J K L M N O P Q R S T U V W X Y Z A B C
密文字母与明文字母不相隔三个字母,可以相隔任意多个字母,则。密钥是1-25中其中的一个数字Vigenere(维吉耐尔加密法是多码替换加密法,Vigenere密码就是把26个字母循环移位,排列在一起,形成26×26的方阵表。Vigenere表Vigenere密码多码替换加密法:
以YOUR为密钥Vigenere密码HOWAREYOU,则整个加密过程为:
(1)密钥重复组合,直到跟明文个数相同每个密钥加密一个明文字符P=HOWAREYOU (明文)
K=YOURYOURY (密钥的重复组合)
(2)加密Vigenere表以明文字母选择行,以密钥字母选择列,两者的交点就是加密生成的密码文字母Ek(P)=FCQRPSSFS
(3)解密Vigenere表以密钥字母选择列,从中找到密文字母,密文字母所在行的行名即为明文字母。 A B C D E F G H I J K L M 对应的数字 1 2 3 4 5 6 7 8 9 10 11 12 13 字母 N O P Q R S T U V W X Y Z 对应的数字 14 15 16 17 18 19 20 21 22 23 24 25 26
② 对密钥密钥当a^b=c,则c^b=a,即同一个数对a进行两次异或的结果还是a。利用此性质可以简单的字符串加解密。栅栏 (Rail Fence)把要被加密的按照一上一下的写法写出来。
图1.1 栅栏解密:先写第一行,再写第二行个数的决定是按照下面的原则:字母总数是偶数时第一行和第二行各一半,奇数时第一行多一个。然后按加密对角线序列读出。将明文消息一行一行地写入预定长度的矩形中(需要事先确定列数)。一列一列读消息,但不一定按1、2、3列的顺序,也可以按随机顺序得到的消息就是密文消息明文共6 列,加密时按6 5 ,4 ,3 ,2 ,1 列读出,得密文为:分栏式
单轮分栏式, 第三行非空白单元为16 mod 6=4,按读列的顺序写入矩形中,然后一行一行地读出,就得到明文。
3. DES算法基本原理
DES以64位为分组对数据加密步骤将64位明文块送入初始置换函数初始置换,为左明文(L)和右明文(R),各32位每个左明文与右明文经过16轮加密过程将左明文与右明文重接起来,对组成的块进行最终置换64位密文
图1.2 DES主要步骤
D表示解密密钥,E表示加密密钥,PT表示明文,CT表示密文。
计算两个大素数的乘积
(1)选择两个大素数P和Q,这两个数自己保密,并计算N=P×Q。
选择公钥(即加密密钥)E
选择的原则:使E不是(P-1)与(Q-1)的因子,即,E不是(P-1)×(Q-1)的因子,方法是先求乘积因子,再选择非因子的数,选取的结果可能不唯一。
选择私钥(即解密密钥)D
使D满足下列条件:
(D×E)mod (P-1)×(Q-1)=1,同样选取的结果可能不唯一。
加密
输入E,N和明文PT,加密的公式是:
CT=PTE mod N
解密
输入D,N和密文CT,解密的公式是:
PT=CTD mod N
明文消息ATTACKATFIVE的加密过程
(1)把要被加密的按照一上一下写出来
A a
T
C
A
F
V
T
A
K
T
I
E
(2)然后一行一行地产生密文,得到ATCAFVTAKTIE
文档评论(0)