- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
应用层传输层网络层物理链路层
应用层
传输层
网络层
物理链路层
《大数据安全与隐私》课程实验报告
实验一:现代密码学基础技能(阶梯三)
一、实验原理:
1、Socket通信原理
用户进程
用户进程用户进程用户进程用户进程
Socket抽象层
UDP
IGMP
硬件接口
媒体
RARP
ICMP
ARP
TCP
IP
Socket是在应用层和传输层之间的一个抽象层,它把TCP/IP层复杂的操作抽象为几个简单的接口,供应用层调用实现进程在网络中的通信。Socket起源于UNIX,在Unix一切皆文件的思想下,进程间通信就被冠名为文件描述符(filedesciptor),Socket是一种“打开—读/写—关闭”模式的实现,服务器和客户端各自维护一个“文件”,在建立连接打开后,可以向文件写入内容供对方读取或者读取对方内容,通讯结束时关闭文件。
在Socket网络通信过程需要分别构建服务端和客户端,服务器与客户端之间通信时,两端都建立了一个Socket对象,然后通过Socket对象对数据进行传输。通常服务器处于一个无限循环,等待客户端的连接。
2、DH密钥协商过程
迪菲一赫尔曼(Diffie-Hellman)密钥协商是在美国密码学家惠特菲尔德·迪菲和马丁·赫尔曼的合作下发明的,发表于1976年。它是第一个实用的在非保护信道中创建共享密钥方法。DH算法可以在一个不安全的信道上建立安全连接,从而解决的不安全信道上信息安全交换的问题。
假设Client_A与Client_B在不安全的信道上交换信息,他们通过DH算法协商出一个密钥,具体流程如下:
Client_A
Client_B
确定算法协商使用质数p的整数模n乘法群以及其原根g
确认回执
生成随机数ae[1.p-1]
计算A=g^amodp
发送A
发送B
计算s=B^amodp=g^(ba)modp
Client_A
生成随机数be[1,p-1]
计算B=g^bmodp
计算s=A^bmodp=g^(ab)modp
Client_B
1.Client_A与Client_B确定算法协商使用质数p的整数模n乘法群以及其原根g
2.Client_A生成随机数a∈[1,p-1],计算A=g2modp,将A发送
给Client_B
3.Client_B生成随机数b∈[1,p-1],计算B=g?modp,将B发送给
Client_A
4.Client_A计算s=Bamodp=gamodp
5.Client_B计算s=A?modp=gabmodp
通过上述过程,Client_A与Client_B得到了一个安全的共享密钥s。
3、AES加密过程
高级加密标准(AES,AdvancedEncryptionStandard),又称Rijndael加密法,是美国联邦政府采用的一种区块加密标准。这个标准用来替代原先的DES(DataEncryptionStandard),已经被多方分析且广为全世界所使用。
严格地说,AES和Rijndael加密法并不完全一样(虽然在实际应用中两者可以互换),因为Rijndael加密法可以支持更大范围的区块和密钥长度:AES的区块长度固定为128比特,密钥长度则可以是128,192或256比特;而Rijndael使用的密钥和区块长度均可以是128,192或256比特。加密过程中使用的密钥是由Rijndael密钥生成方案产生。
4个步骤:
密钥
密钥k
k[o]
密钥加法层
字节代换层
ShiftRows层
第一轮
MixColumn层
密钥加法层
字节代换层
ShiftRows层
第n-1轮一
MixColumn层
k[n-1]
密钥加法展
字节代换层
ShiftRows层
k[n]
密钥加法层
密文y
最后一轮.
变换n-1
扩散层
变换1
变换0
变换n
明文x
k[1]
AES加密过程在一个4x4的字节矩阵上运作,其初值就是一个明文区块 (矩阵中一个元素大小就是明文区块中的一个Byte)。其矩阵的“列数(Rownumber)”可视情况增加)加密时,各轮AES加密循环(除最后一轮外)均包含
(1)AddRound
文档评论(0)