java 加密模式
来源:互联网 发布:听歌软件版权 编辑:程序博客网 时间:2024/05/17 06:46
常见加密模式介绍:
ECB(Electronic Code Book:电码本)
ECB是最简单的模式,同样的明文分组总是加密成相同的密文分组。这对于发送单一的块数据来说是非常好的,如密钥。但对执行一个加密的信息流来说不是很好,因为如果相同的明文多次发送以后,同样的密文也会被多次发送。
ECB最大的弱点是对每一个块用相同的方式进行加密。如果我们的密钥或者数据不断发生变化,ECB是完全安全的。但是如果类似的块经过同样的密钥加密发出以后,攻击者可能获得一些我们并不想让别人知道的信息。
CBC(Cipher Block Chaining:密码分组链接)
CBC模式改变了加密方式,同样的明文分组不一定加密或解密同样的密文块,因此解决了ECB存在的主要问题。CBC使用前一分组的信息加密当前分组。因此和ECB模式大不相同。这个方法依然存在问题,那就是相同的信息仍然加密成相同的密文,因为所有的分组是同时变成密文分组的。为了解决这个问题,我们引入一个Initialization Vector(初始化向量),也就是前不久有人问到的IV问题。IV仅仅是一个初始化加密程序的随机数。它无需秘密保存,但队每一个信息来说它都是不同的,通过这个方式,即使有两条相同的信息,只要他们有不同的IV,那么他们加密后的密文也是不同的。从这个意义上来说,初始化向量无疑就和口令加密过程中使用的盐值是一样的。
CBC很适合文本传输,但它每一次都需要传送一个完整的数据块,一般选8个字符。
CFB(Cipher FeedBack:密码反馈)
CFB的工作方式与CBC类似,但它可以执行更小的数据块,典型的有8位,这非常适合加密像聊天对话这样的信息,因为每次可以发送单一的字节数据块。
和CBC一样,CFB也需要一个IV,且相同及钥发送的每条信息的IV都必须是唯一的。
OFB(Output FeedBack:输出反馈)
OFB除了在传输中能给数据提供更好的保护,防止数据丢失外,其他和CFB类似。密文中一位出错,也只造成明文中的一位出错,其他的方式会造成整个块丢失。
- java 加密模式
- Java实现SSH模式加密
- AES Java加密 C#解密 (128-ECB加密模式)
- java DES ECB模式对称加密解密
- java DES ECB模式对称加密解密
- 加密模式
- 【转】 java DES ECB模式对称加密解密
- Java实现SSH模式加密原理及代码
- DES ECB模式JAVA PHP C#实现加密、解密兼容
- java/php对应的AES/CBC/PKCS5Padding模式 加密解密
- 分组加密的加密模式
- java加密
- java 加密
- java 加密
- java加密
- java 加密
- java加密
- java加密
- Subversion for Windows 安裝指南(繁体)[2]
- 计算机教育学术交流会
- 判断sim卡不同发短信息
- 在网页中插入FLV格式的视频在本地预览中能播放,上传到服务器就不能播放
- 如何获得当前应用程序的名字【Winform and WPF】
- java 加密模式
- JSON进阶第一篇 在PHP与javascript 中使用JSON
- Source Insight BKM
- JSON进阶第二篇 AJAX方式传递JSON数据
- 3D实时渲染中的BSP树和多边形剔除
- 数据库记录锁的一个注意事项
- 最简单的border为1px的表格源代码
- linux redhat enterparse6.1 安装code::blocks10.05
- NoSQL数据库技术特性解析之文档数据库