社区
Java SE
帖子详情
用过AES加密吗,为啥加密后文件会变长?
okgoood
2012-03-21 10:48:11
我用InputStream读入一个31字节的文件,然后用AES加密,就变成了32字节,为啥文件会变长呢?
就算我把buffer扩大到1024字节,还是会有这样的问题。
...全文
9047
7
打赏
收藏
用过AES加密吗,为啥加密后文件会变长?
我用InputStream读入一个31字节的文件,然后用AES加密,就变成了32字节,为啥文件会变长呢? 就算我把buffer扩大到1024字节,还是会有这样的问题。
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
7 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
smarteyeexit
2013-01-08
打赏
举报
回复
如果你不指定填充及加密模式的话,将会采用 ECB 模式和 PKCS5Padding 填充进行处理。 AES 是块加密,块的长度是 16 个字节,如果原文不到 16 个字节,则需要填充至 16 个字节后再进行处理。 AES 密文长度 = (原文长度 / 16) * 16 + 16 这里的“/”表示整除 顶
火龙果被占用了
2012-03-21
打赏
举报
回复
如果你想密文与原文长度一样的话,就不能使用块加密算法,需要使用流加密算法,比如 RC4 算法
火龙果被占用了
2012-03-21
打赏
举报
回复
如果你不指定填充及加密模式的话,将会采用 ECB 模式和 PKCS5Padding 填充进行处理。
AES 是块加密,块的长度是 16 个字节,如果原文不到 16 个字节,则需要填充至 16 个字节后再进行处理。
AES 密文长度 = (原文长度 / 16) * 16 + 16
这里的“/”表示整除
dreamhyz
2012-03-21
打赏
举报
回复
超过16字节,试试分段加密下~~
okgoood
2012-03-21
打赏
举报
回复
为啥加密后总会多一个字节?
okgoood
2012-03-21
打赏
举报
回复
[Quote=引用 3 楼 bao110908 的回复:]
如果你不指定填充及加密模式的话,将会采用 ECB 模式和 PKCS5Padding 填充进行处理。
AES 是块加密,块的长度是 16 个字节,如果原文不到 16 个字节,则需要填充至 16 个字节后再进行处理。
AES 密文长度 = (原文长度 / 16) * 16 + 16
这里的“/”表示整除
[/Quote]
不错,大神果然啥都知道啊
btpka3
2012-03-21
打赏
举报
回复
1. 对称加密(比如AES)加密后的结果都是一个某个数(比如128bit=16字节)的整倍数。
2. 对称加密(比如AES)大部分都是分块加密的。比如你加密1个字节和加密2个字节的结果长多都是一样的。
因为都没有超过加密最小块的大小,如果不足,会自动填充的。
新建 WinRAR 压缩
文件
.rar_AES_AES
加密
_STM32
aes
加密
AES
加密
文件
。可用。包含了aes.c和aex.h。自己直接加进工程就好了
Qt实现AES256
加密
运用Qt框架实现AES256
加密
字符串以及
文件
,并且支持AES128以及AES192进行字符串以及
文件
的
加密
,可供学习和研究
AES.rar_AES_AES pu_AES
文件
加密
_aes 多线程_aes
加密
文件
AES
加密
技术使用了多线程技术和
文件
功能
用C语言实现的
AES
加密
解密算法
用C语言实现的
AES
加密
解密算法,用C语言实现的
AES
加密
解密算法
VB6
AES
加密
解密文本串和
文件
的DLL动态库
根据michael19880628提供的“VB实现DES
加密
解密算法” 改写的 一个VB6
AES
加密
解密文本串和
文件
的 DLL动态库
Java SE
62,635
社区成员
307,269
社区内容
发帖
与我相关
我的任务
Java SE
Java 2 Standard Edition
复制链接
扫一扫
分享
社区描述
Java 2 Standard Edition
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章