当前位置: 首页 > news >正文

网站开发报告小程序商城页面设计

网站开发报告,小程序商城页面设计,网站js文件夹,海南网站开发公司hi#xff0c;大家好#xff0c;上一节我们详细介绍了对称加密算法DES的基本内容#xff0c;由于明文的长度不固定#xff0c;而加密算法只能处理特定长度的一块数据#xff0c;所以就需要对比较长的明文进行分组后再加密#xff0c;但是分组后#xff0c;最后一组的长度…hi大家好上一节我们详细介绍了对称加密算法DES的基本内容由于明文的长度不固定而加密算法只能处理特定长度的一块数据所以就需要对比较长的明文进行分组后再加密但是分组后最后一组的长度可能又会出现位数长度不够的情况所以就又需要根据填充模式来对最后一组报文进行填充。 对称加密的分组模式 对称加密一共有五种分组模式下面我们来介绍一下。 1. ECB - Electronic Code Book, 电子密码本模式 优点 简单效率高有利于并行计算误差不会被传送 缺点 密文有规律容易被破解 可能对明文进行主动攻击 特性 最后一个明文分组必须要填充 des/3des - 最后一个分组填充满8字节aes - 最后一个分组填充满16字节 不需要初始化向量 2. CBC - Cipher Block Chaining, 密码块链模式推荐使用 优点 不容易被攻击安全性好适合传输长度长的报文是SSL、IPSec的标准 缺点 不利于并行计算误差会传递需要初始化向量 特性: 最后一个明文分组需要填充 des/3des - 最后一个分组填充满8字节aes - 最后一个分组填充满16字节 需要一个初始化向量 - 一个数组 数组的长度: 与明文分组相等数据来源: 负责加密的人的提供的加解密使用的初始化向量值必须相同 3. CFB - Cipher FeedBack, 密文反馈模式 优点 隐藏了明文模式密文没有规律分组密码转化为流模式可以及时加密传送小于分组的数据 缺点 不利于并行计算误差传递一个明文单一损坏影响多个单元需要初始化向量 特性: 明文分组是和一个数据流进行的按位异或操作, 最终生成了密文 需要一个初始化向量 - 一个数组 数组的长度: 与明文分组相等数据来源: 负责加密的人的提供的加解密使用的初始化向量值必须相同 不需要填充 4. OFB - Output-Feedback输出反馈模式 优点 隐藏了明文模式分组密码转化为流模式可以及时加密传送小于分组的数据 缺点 不利于并行计算对明文的主动攻击是可能的误差传送一个明文单元的损坏影响多个单元 特性: 密文没有规律明文分组是和一个数据流进行的按位异或操作最终生成了密文 需要一个初始化向量 - 一个数组 数组的长度: 与明文分组相等数据来源: 负责加密的人的提供的加解密使用的初始化向量值必须相同 不需要填充 5. CTR - CounTeR计数器模式重点推荐使用 特性 密文没有规律明文分组是和一个数据流进行的按位异或操作最终生成了密文不需要初始化向量不需要填充 以上五种分组模式中ECB模式很容易被破解如今已经很少再使用其余四种分组模式各有千秋。 但极力推荐CBC模式和CTR模式尤其是CTR模式不需要填充代码实现起来很方便。而且加密和解密的方法是一样的并且可以实现并发分组效率高安全性也有保障。 关于CBC模式中的向量 在CBC不光是DES算法模式下向量iv通过随机数或伪随机机制产生是一种比较常见的方法。iv的作用主要是用于产生密文的第一个block以使最终生成的密文产生差异明文相同的情况下使密码攻击变得更为困难除此之外iv并无其它用途。最大的好处是即使相同的明文相同的密钥也能产生不同的密文。 对称加密的填充模式 数据填充常见的一般有四种分别是 NoPaddingPKCS5Padding (PKCS7Padding)Zero PaddingISO 10126 Padding NoPadding API或算法本身不对数据进行处理加密数据由加密双方约定填补算法。例如若对字符串数据进行加解密可以补充\0或者空格解密后对数据进行trim 处理。 PKCS5Padding PKCS7Padding PKCS5Padding 、PKCS7Padding分别为Java和.Net中的默认填充方式PKCS5Padding和PKCS7Padding实际只是协议不一样根据相关资料说明PKCS5Padding明确定义了加密块是8字节PKCS7Padding加密块可以是1-255之间。但是封装的DES算法默认都是8字节所以可以认为他们是一样的。数据补位实际是在数据不满8字节的倍数才补充到8字节的倍数的填充过程。 加密前数据字节长度对8取余余数为m若m0,则补足8-m个字节字节数值为8-m即差几个字节就补几个字节字节数值即为补充的字节数若为0则补充8个字节的8 解密后取最后一个字节值为m则从数据尾部删除m个字节剩余数据即为加密前的原文 比如加密字符串为为AAA差5个字节则补位为AAA55555加密字符串为BBBBBB差2个字节则补位为BBBBBB22加密字符串为CCCCCCCC差0个字节则补位为CCCCCCCC88888888。 Zero Padding 0填充顾名思义就是所有不足8位的均补0不过0填充协议并没有在加密算法中标准化而且0填充可能会有问题当明文本身有一个或多个0字节结尾时就很难区分是填充的0还是原报文。 例如下面是一个以8字节为单位的加密块最后四个字节不足位时使用0来填充 … | DD DD DD DD DD DD DD DD | DD DD DD DD 00 00 00 00 | ISO 10126 ISO 10126 的填充模式定义了在报文最后一个字节填充之前的字节都可以随机填充在最后一个字节填充总共补充的字节数。 例如: 下面例子最后一共需要补充4个字节前三个字节都是随机填充的字节最后一个字节需要填充4表示该填充总共填充了4字节。 … | DD DD DD DD DD DD DD DD | DD DD DD DD 81 A6 23 04 | 何时需要填充何时不需要填充 观察分组模式的图示可以看出加密后再进行亦或操作的不需要填充而先进性亦或操作再加密的则不需要填充这是因为亦或操作需要两个相同长度的数据一一对比计算 总结 以上五种分组模式中ECB模式很容易被破解如今已经很少再使用其余四种分组模式各有千秋。 但极力推荐CBC模式和CTR模式尤其是CTR模式不需要填充代码实现起来很方便。而且加密和解密的方法是一样的并且可以实现并发分组效率高安全性也有保障 参考文章 1对称加密算法常用的五种分组模式ECB/CBC/CFB/OFB/CTR 2DES填充方式与初始向量IV的作用 3DES算法的几种加密模式和填补方式 欢迎大家关注「我是开发者FTD」公众号微信号ForTheDevelopers 也欢迎大家添加我的个人微信交流微信号ForTheDeveloper 关注开发更关注开发者
http://www.pierceye.com/news/926410/

相关文章:

  • 网站地图怎么做html公司文化的建设对个人的意义
  • html网站模板免费下载台州网站制作 外贸
  • 有关建筑网站建设方案案例平台网站建设哪家有
  • 网站域名跳转是怎么做的空间一个数据库可以做几个网站
  • asp网站幻灯片不显示微商刚起步怎么找客源
  • 婚恋网站翻译可以做吗科技局网站建设方案
  • 长沙哪里学网站建设德阳做网站的公司
  • 制作短链接网站做抽奖网站违法吗
  • 网站备案每年审吗做网站做推广
  • 网站名称 规则个人网页模板背景
  • 网站制作方案策划简历网站建设咨询有客诚信网站建设咨询
  • 格尔木市住房和城乡建设局网站能看全景的地图软件
  • 一站式网站建设与运营wordpress后台代码修改
  • 企业品牌类网站有哪些做网站建设的公司是什么类型
  • 自己制作的网站怎么做分页2022建站市场
  • 网贷审核网站怎么做wordpress 文章列表页
  • 搬家网站建设公司西安是哪个省市
  • php 网站 整合 数据库智能建站系统个人网站
  • 福田区罗湖区宝安区龙华区seo上首页排名
  • 网站建设业务员提成企业网站 需求
  • 做淘宝客网站 首选霍常亮国外网页设计
  • 天津小型企业网站设计方案网页升级访问每天自动更新 下载
  • 好的学习网站打广告壹搜网站建设优化排名
  • 响应式设计 手机网站手机自己制作app软件
  • 东方头条网站源码杭州正晖建设工程有限公司网站
  • 阿里巴巴网站建设与维护深圳民治网站建设
  • 郑州短视频代运营seo外链是什么
  • 网站建设公司 经营资质wordpress文学
  • 手机网站建设请示常州建设网站公司哪家好
  • 网站开发报价ppt重庆沙坪坝有哪些大学