计算机网络编程技术多媒体课件 P10 网络信息加密传输程序设计.ppt

计算机网络编程技术多媒体课件 P10 网络信息加密传输程序设计.ppt

ID:50169178

大小:569.50 KB

页数:30页

时间:2020-03-09

计算机网络编程技术多媒体课件 P10 网络信息加密传输程序设计.ppt_第1页
计算机网络编程技术多媒体课件 P10 网络信息加密传输程序设计.ppt_第2页
计算机网络编程技术多媒体课件 P10 网络信息加密传输程序设计.ppt_第3页
计算机网络编程技术多媒体课件 P10 网络信息加密传输程序设计.ppt_第4页
计算机网络编程技术多媒体课件 P10 网络信息加密传输程序设计.ppt_第5页
资源描述:

《计算机网络编程技术多媒体课件 P10 网络信息加密传输程序设计.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、计算机网络编程技术第10章网络信息加密传输程序设计张晓明北京石油化工学院计算机系8/25/20211网络攻击类型网络信息安全:信息存储安全信息传输安全8/25/20212本章的主要内容数据加密模型对称加密程序设计非对称加密程序设计网络信息加密传输程序设计8/25/2021310.1数据加密模型(1)数据加密模型描述8/25/20214(2)对称加密模型对称加密算法使用起来简单快捷,密钥较短,且破译困难。8/25/20215常见的对称加密算法密码算法作者密钥长度说明DESIBM56对于现在使用,太弱了IDEAMassey和Xuejia128好,但是属于专利算法RC4RonaldR

2、ivest1~2048小心,有一些弱密钥RC5RonaldRivest128~256好,但是属于专利算法RijndaelDaemen和Rijmen128~256最佳的选择SerpentAnderson,Biham,Knuds128~256很强三重DESIBM168第二最佳选择TwofishBruceSchneier128~256很强,被广泛使用8/25/20216(3)非对称加密模型非对称加密算法研制的最初理念与目标是旨在解决对称加密算法中密钥的分发问题.实际上它不但很好地解决了这个问题,还可利用非对称加密算法来完成对电子信息的数字签名以防止对信息的否认与抵赖;同时,还可以利用

3、数字签名较容易地发现攻击者对信息的非法篡改,以保护数据信息的完整性。8/25/20217(4)数字签名模型数字签名一般采用非对称加密技术(如RSA)。8/25/2021810.2对称加密程序设计10.2.1对称加密算法SymmetricAlgorithm类表示所有对称算法的实现都必须从中继承的抽象基类;派生了DES、Triple-DES、RC2和Rijndael等对称加密算法;来自于System.Security.Cryptography命名空间。8/25/20219SymmetricAlgorithm类的主要属性和方法名称描述BlockSize获取或设置加密操作的块大小IV获

4、取或设置对称算法的初始化向量Key获取或设置对称算法的密钥KeySize获取或设置对称算法所用密钥的大小Mode获取或设置对称算法的运算模式Clear()释放资源Create()创建用于执行对称算法的加密实例CreateDecryptor()用指定的密钥和初始化向量创建一个对称解密器对象CreateEncryptor()用指定的密钥和初始化向量创建一个对称加密器对象GenerateIV()为对称加密算法生成一个随机的初始化向量(IV),并重写IV属性中所存储的值GenerateKey()为对称加密算法生成一个随机密钥(Key),并重写Key属性的值8/25/202110对称算法

5、的实现:RijndaelManagedDESCryptoServiceProviderRC2CryptoServiceProviderTripleDESCryptoServiceProvider8/25/20211110.2.2基于流的加密解密方法由于对称加密往往用于加密大量数据信息,隐藏采用了流式加密方法,以便支持对内存流和文件流等数据的加密和解密。托管对称加密类与称为CryptoStream的特殊流类一起使用。可以使用从Stream类派生的任何类(包括FileStream、MemorySteam和NetworkStream)初始化CryptoStream类。使用这些类,可以

6、对各种流对象执行对称加密。8/25/202112(1)加密过程实例:①创建对称加密算法实例:cryptoService=newRijndaelManaged();cryptoService.Mode=CipherMode.CBC;//设置为链接模式②设置初始化参数,包括密钥和初始化向量等。cryptoService.Key=GetLegalKey();//设置密钥cryptoService.IV=GetLegalIV();//设置初始向量③创建加密实例:ICryptoTransformcryptoTransform=cryptoService.CreateEncryptor()

7、;④创建加密流:MemoryStreamms=newMemoryStream();//创建内存流CryptoStreamcs=newCryptoStream(ms,crytoTransform,CryptoStreamMode.Write);⑤通过流的写操作实现数据加密:cs.Write(plainByte,0,plainByte.Length);cs.FlushFinalBlock();byte[]cryptoByte=ms.ToArray();returnConvert.ToBase64

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。