电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本
换一换
首页 金锄头文库 > 资源分类 > PPT文档下载
分享到微信 分享到微博 分享到QQ空间

网络和通信程序设计(C#)语言第五章字符串与字符编码

  • 资源ID:119667351       资源大小:2.57MB        全文页数:39页
  • 资源格式: PPT        下载积分:20金贝
快捷下载 游客一键下载
账号登录下载
微信登录下载
三方登录下载: 微信开放平台登录   支付宝登录   QQ登录  
二维码
微信扫一扫登录
下载资源需要20金贝
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
如填写123,账号就是123,密码也是123。
支付方式: 支付宝    微信支付   
验证码:   换一换

 
账号:
密码:
验证码:   换一换
  忘记密码?
    
1、金锄头文库是“C2C”交易模式,即卖家上传的文档直接由买家下载,本站只是中间服务平台,本站所有文档下载所得的收益全部归上传人(卖家)所有,作为网络服务商,若您的权利被侵害请及时联系右侧客服;
2、如你看到网页展示的文档有jinchutou.com水印,是因预览和防盗链等技术需要对部份页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有jinchutou.com水印标识,下载后原文更清晰;
3、所有的PPT和DOC文档都被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;下载前须认真查看,确认无误后再购买;
4、文档大部份都是可以预览的,金锄头文库作为内容存储提供商,无法对各卖家所售文档的真实性、完整性、准确性以及专业性等问题提供审核和保证,请慎重购买;
5、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据;
6、如果您还有什么不清楚的或需要我们协助,可以点击右侧栏的客服。
下载须知 | 常见问题汇总

网络和通信程序设计(C#)语言第五章字符串与字符编码

网络和通信程序设计 C 语言 第五章字符串与字符编码 5 1String类 在C 中 字符串类型将一组字符视为一个整体进行处理 C 使用关键字string来定义字符串类型 对应着 NET类库的System String类 常用字符串操作方法 常用字符串操作方法 5 2StringBuilder类 与String的区别与联系String对象串联操作总是用现有字符串和新数据创建新的对象StringBuilder对象维护一个缓冲区 以便容纳新数据的串联主要方法Remove方法Replace方法Insert方法Append方法AppendLine方法AppendFormat方法System Text StringBuilder 5 3字符集与字符编码 计算机的字符集美国 1967年关于 中国 1981年BIG5字符集 双字节中国台湾五公司 1984年GB18030字符集 单 双 四字节中国 2000年Unicode字符集 0 0 x10FFFFUnicode学术学会 1994年UTF 8 8位变长UTF 16 16位无符号UTF 32 32位无符号 ASCII码表 Encoding类 NETFramework提供以下Encoding类的实现以支持当前Unicode编码和其他编码ASCIIEncoding将Unicode字符编码为单个7位ASCII字符 UTF7Encoding使用UTF 7编码对Unicode字符进行编码 UTF8Encoding使用UTF 8编码对Unicode字符进行编码 UnicodeEncoding使用UTF 16编码对Unicode字符进行编码 UTF32Encoding使用UTF 32编码对Unicode字符进行编码 System Text Encoding 字符与字符编码的转换 将文符串转换成字节数组Encoding ASCII GetBytes String 将字节数组转换成字符串Encoding ASCII GetString Byte 散列值 密文直接转换将出现乱码 5 4字节 数组 可视化处理方法 Base64编码是一种基于64个 2 6 64 可打印字符来表示二进制数据的表示方法 常用于处理文本数据的场合 表示 传输 存储二进制数据 如加解密及网络编码 可以将3 8bit表示为4 6bit 关于 tmp为字节数组 任务4 1 从身份证号码中提取信息输入身份证号从中提取出地区码 出生日期 性别等信息2 设计字符编码转换器实现字符与Base64字符的互转实现字符的16进制显示及其相互转换基于不同的字符编码 将字符转换成16进制显示并比较3 选择一张照片 将其显示为Base64文本 第六章密码术基础与网络编程 6 1密码术基础 网络信息安全信息存储安全和信息传输安全 信息传输安全是指如何保证信息在网络传输的过程中不被泄露与不被攻击 保证网络中信息安全的主要技术是数据的加密与解密 加密与解密在密码学中 将源信息称为明文 对明文进行某种变换后生成的隐藏了其真实内容的信息称为密文 将明文变换为密文的过程称为加密 将密文经过逆变换恢复成明文的过程称为解密 计算机网络加密技术 链路加密链路加密是目前常用的一种加密方法 通常用硬件在网络层以下的物理层和数据链路层中实现 它用于保护通信节点间的数据 节点加密节点加密是链路加密的改进 其目的是克服链路加密在节点处易遭非法存取的缺点 在协议传输层上进行加密 是对源点和目标节点间传输的数据进行加密保护 端 端加密网络层以上的加密 通常称为端 端加密 端 端加密是面向网络高层主体进行的加密 即在协议表示层上对传输的数据进行加密 而不对下层协议信息加密 协议信息以明文形式传输 用户数据在中间节点不需要加密 数据加密模型 数据加密表达式 加密 C En Ke P P 信息明文K 密钥En 算法C 信息密文解密 P Dn Kd C 传统加密技术 替代密码 字符操作 定义 明文中的每一个字符被替换成密文中的另外一个字符简单替代密码凯撒密码 循环移位密码 把明文中所有的字母都用它右边的第k个字母替代 并认为Z后边又是AROT13 用字母表里a m的字符来代替n z 用n z的字符来代替a m字符Eg vybirlbh 多表替代密码 明文 howareyou 密码 your P HOWAREYOUK YOURYOURYEk P FCQRPSSFS 传统密码技术 简单异或 按位操作 0 0 00 1 11 0 11 1 0加密 1001 1100 0101解密 0101 1100 1001 对称加密技术加密和解密过程均采用同一密钥DES与AES非对称加密技术加密和解密过程采用不同的密钥RSA与ECC 现代加密技术 对称加密技术 DES 数据加密算法 1976 64位分组加密AES 高级加密算法 2001 128位分组加密128 192 256位密钥 DES 原理 接收者将一对密码中的一个 公钥 公开 另一个秘密保存发送者使用接收者的公钥加密信息接收者使用私钥解密出原文数学模型 C E Kp P P D Ks C 特点 加密密码 公钥 Kp是公开信息 而解密密钥 私钥 Ks是保密的 公钥和私钥相互关联 但不可能根据公钥计算出私钥 非对称加密技术 HTTPS 电子信封技术的具体应用 一对矛盾对称加密 速度快 密钥管理困难非对称加密 速度慢 解决密钥管理问题电子信封技术HTTPS 安全的HTTP通道 在HTTP下加入SSL层 客户端向服务器发送请求 包括版本 算法等 服务器向客户端发送响应以及证书 含公钥 客户端产生对称密钥 用服务器公钥加密后发送服务器用私钥解密 得到对称密钥双方确认该对称密钥后 进行保密通信 保密性 数据的完整性验证 报文鉴别技术 Hash函数也称消息摘要 MD MessageDigest 将可变长度的报文M作为单向散列函数的输入 然后得出一个固定长度的标志H M 称为Hash值 哈希值 表达式 MD H M Hash算法MD算法 MD5 128位 SHA算法 SHA 1 160位 HMAC算法报文鉴别码MAC MessageAuthenticationCode 用一个密钥生成的一个小的数据块追加在报文的后面 表达式 MAC F K M 数据的不可抵赖性 数字签名技术 数字签名就是为了达到签名的效果 附加在数据单元上的一些数据 数字签名的要素 签名信息能被接收者读取发送者事后不能抵赖 信息内容及签名事实 接受者不能伪造签名数字签名的实现产生信息原文的摘要用私钥对摘要进行加密 签名 将原文和签名一起传输接收者用发送者的公钥解密签名得到摘要产生信息原文的摘要并与上述签名摘要比较 数字签名技术示意图 6 2 NET密码术编程基础 System Security Cryptography 6 2 1哈希 散列 算法及编程 哈希函数是现代密码系统的基础 哈希函数将任意长度的二进制字符串映射为固定长度的小二进制字符串 称为哈希值 散列值 哈希值用作表示大量数据的固定大小的唯一值 哈希函数通常用于数字签名和保持数据完整性等 哈希函数的特点 在计算时不可能将两个不同的输入通过哈希算法获取相同的值 如果相应的数据匹配 则两个数据集的哈希应该匹配 数据的少量更改会在哈希值中产生不可预知的大量更改 哈希算法的编程实现 NET哈希算法类都继承自HashAlgorithm抽象类 哈希 散列 编程实例 获取字符编码byte aaa Encoding UTF8 GetBytes str 使用MD5CryptoServiceProvider类创建md5对象MD5CryptoServiceProvidermd newMD5CryptoServiceProvider 也可以使用MD5类创建md5对象 MD5md MD5 Create 计算md5值byte bbb md ComputeHash aaa 显示处理StringBuildersb newStringBuilder foreach bytetmpinbbb sb Append tmp ToString X2 returnsb ToString 6 2 2对称加密算法及编程 特点 算法公开 计算量小 加密速度快 加密效率高 主要算法 DES 3DES RC5 AES等分组密码的工作模式电子密码本 electroniccodebookmode ECB 密码分组链接 cipherblockchaining CBC 密码反馈 cipherfeedback CFB 输出反馈 outputfeedback OFB 计数器 counter CTR 算法工作模式中的初始向量IVSymmetricAlgorithm类 留意CBC Key IV 对称加密的主要算法 一 DEA DES数据加密算法 DataEncryptionAlgorithm DEA 数据加密标准 DataEncryptionStandard DES 使用一个56位的密钥以及附加的8位奇偶校验位 产生最大64位的分组大小3DES TripleDES三重数据加密算法 TripleDataEncryptionAlgorithm TDEA 用双长度 128位 密钥K KL KR 将64位明文数据块 分组 进行3次DES加密 解密 加密 Y DES KL DES 1 KR DES KL X 解密 X DES 1 KL DES KR DES 1 KL Y 对称加密的主要算法 二 AES加密算法高级加密标准 AdvancedEncryptionStandard 又称Rijndael加密法 是美国联邦政府采用的一种区块加密标准 AES加密数据块分组长度必须为128位 密钥长度可以是128 192或256位加解密处理的参数密钥的长度与填充初始化向量的长度与填充 长度与数据块分组长度一致 SymmetricAlgorithm的主要成员 对称加密算法及编程 NET在SymmetricAlgorithm类的基础上 给出了抽象算法实现类DES RC2 TripleDES和Rijndael 并在此基础上给出了具体加密方案实现类 AES加密编程实现 Byte bKey Encoding UTF8 GetBytes Keystr PadRight 32 Byte bIV Encoding UTF8 GetBytes IVstr PadRight 16 Byte Data Encoding UTF8 GetBytes Datastr 创建内存流MemoryStreamms newMemoryStream 创建AES对象 并内存流对象包装成加密器对象RijndaelAes Rijndael Create CryptoStreamcs newCryptoStream ms Aes CreateEncryptor bKey bIV CryptoStreamMode Write 明文数据写入加密器cs Write Data 0 Data Length cs FlushFinalBlock 返回密文流Byte Cryptograph ms ToArray stringOutstr Convert ToBase64String Cryptograph AES解密编程实现 Byte bKey Encoding UTF8 GetBytes Keystr PadRight 32 Byte bIV Encoding UTF8 GetBytes IVstr PadRight 16 Byte Data Convert FromBase64String EnDatastr 创建内存流 并存入密文MemoryStreamms newMemoryStream Data 创建AES对象 并将内存流对象包装成解密器对象RijndaelAes Rijndael Create CryptoStreamcs newCryptoStream ms Aes CreateDecryptor bKey bIV CryptoStreamMode Read 以指定编码从

注意事项

本文(网络和通信程序设计(C#)语言第五章字符串与字符编码)为本站会员(ap****ve)主动上传,金锄头文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即阅读金锄头文库的“版权提示”【网址:https://www.jinchutou.com/h-59.html】,按提示上传提交保证函及证明材料,经审查核实后我们立即给予删除!

温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.