[电脑基础知识]P10 网络信息加密传输程序设计.ppt

[电脑基础知识]P10 网络信息加密传输程序设计.ppt

  1. 1、本文档共30页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
[电脑基础知识]P10 网络信息加密传输程序设计

计算机网络编程技术 第10章 网络信息加密传输程序设计 网络攻击类型 网络信息安全: 信息存储安全 信息传输安全 本章的主要内容 数据加密模型 对称加密程序设计 非对称加密程序设计 网络信息加密传输程序设计 10.1 数据加密模型 (2) 对称加密模型 常见的对称加密算法 (3) 非对称加密模型 非对称加密算法研制的最初理念与目标是旨在解决对称加密算法中密钥的分发问题. 实际上它不但很好地解决了这个问题,还可利用非对称加密算法来完成对电子信息的数字签名以防止对信息的否认与抵赖;同时,还可以利用数字签名较容易地发现攻击者对信息的非法篡改,以保护数据信息的完整性。 (4) 数字签名模型 数字签名一般采用非对称加密技术(如RSA)。 10.2 对称加密程序设计 10.2.1 对称加密算法 SymmetricAlgorithm类表示所有对称算法的实现都必须从中继承的抽象基类; 派生了DES、Triple-DES、RC2和Rijndael等对称加密算法; 来自于System.Security.Cryptography命名空间。 SymmetricAlgorithm类的主要属性和方法 对称算法的实现: RijndaelManaged DESCryptoServiceProvider RC2CryptoServiceProvider TripleDESCryptoService Provider 10.2.2 基于流的加密解密方法 由于对称加密往往用于加密大量数据信息,隐藏采用了流式加密方法,以便支持对内存流和文件流等数据的加密和解密。托管对称加密类与称为CryptoStream的特殊流类一起使用。 可以使用从Stream类派生的任何类(包括FileStream、MemorySteam和NetworkStream)初始化CryptoStream类。使用这些类,可以对各种流对象执行对称加密。 (1) 加密过程实例: ① 创建对称加密算法实例: cryptoService=new RijndaelManaged(); cryptoService.Mode=CipherMode.CBC; //设置为链接模式 ② 设置初始化参数,包括密钥和初始化向量等。 cryptoService.Key=GetLegalKey(); //设置密钥 cryptoService.IV=GetLegalIV(); //设置初始向量 ③ 创建加密实例: ICryptoTransform cryptoTransform=cryptoService.CreateEncryptor(); ④ 创建加密流: MemoryStream ms=new MemoryStream(); //创建内存流 CryptoStream cs=new CryptoStream(ms, crytoTransform,CryptoStreamMode.Write); ⑤ 通过流的写操作实现数据加密: cs.Write(plainByte,0,plainByte.Length); cs.FlushFinalBlock(); byte[] cryptoByte=ms.ToArray(); return Convert.ToBase64String(cryptoByte,0,cryptoByte.GetLength(0)); (2) 解密过程实例 ① 创建对称加密算法实例: cryptoService=new RijndaelManaged(); cryptoService.Mode=CipherMode.CBC; //设置为链接模式 ② 设置初始化参数,包括密钥和初始化向量等。用户设置方法如下: cryptoService.Key=GetLegalKey(); //设置密钥 cryptoService.IV=GetLegalIV(); //设置初始向量 ③ 创建解密实例,如: ICryptoTransform cryptoTransform=cryptoService.CreateEncryptor(); ④ 创建解密流,如: MemoryStream ms=new MemoryStream(cryptoByte,0,cryptoByte.Length);//创建内存流 CryptoStream cs=new CryptoStream(ms, crytoTransform, CryptoStreamMode.Read); ⑤ 通过解密流进行数据解密: StreamReader sr=new StreamReader(cs); return sr.ReadToEnd(); 10.2.3 对称加密程序设计示例 (1) 命名空间与重要实例 using System.Securit

文档评论(0)

skvdnd51 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档