疯了啊! 疯了啊! 疯了啊! 疯了啊! 疯了啊! 疯了啊! 疯了啊!

Call Next 2011-12-13 06:55:25
(我要疯了)请教大家一个问题:
问题:java加密和CRC校验

先说加密和用java自带的CRC校验我会使用,问题是出在加密后没法校验密文的CRC

详细描述遇到问题的地方:

CheckedInputStream(InputStream in, Checksum cksum) :主要是这个函数的第一个参数:

过程:
发送方:1、获取图片的Stream
2、计算图片的CRC 并在 流的开始 添加发送消息首部(发送消息首部包括主机信息以及图片描述等等)
3、将发送消息的首部和图片流加密
4、发送
接收方: 1、获取加密后的流
2、从流的开始读取指定大小的字节
3、解密首部信息,获取首部大小以及crc的值
4、问题来了这里能够准确的定位到图片字节流的开始,但是是加密的,所以用crc校验肯定是错的,而直接解密图片的流那有没办法进行CRC校验,原因就是上面那个函数,必须是一个流。我也不可能写了图片再读出来。不然就是脱了裤子打屁了。

大家给个提示吧。注意CRC是未加密之前的,要是是用加密后计算CRC就没这回事的。。。。杯具啊


...全文
289 25 打赏 收藏 转发到动态 举报
写回复
用AI写文章
25 条回复
切换为时间正序
请发表友善的回复…
发表回复
Call Next 2011-12-16
  • 打赏
  • 举报
回复
结贴了 自定义通信协议真头疼
Call Next 2011-12-16
  • 打赏
  • 举报
回复
[Quote=引用 23 楼 kouyisc 的回复:]
引用 18 楼 wangxvwang 的回复:
引用 14 楼 hackersun12345 的回复:
发送消息的首部不能加密,这个本身就用来校验的,加密了咋校

比如可以对首部进行一次简单的异或加密,这个密钥是预先双方协定好的,收到后只需要对预定大小的首部异或解密不久出来了嘛。


这个我已经解决了,可以将整个流读成字节数组,但是新问题出来了。
1、字节数组大小未知
2、如果用……
[/Quote]粉肠感谢, 我忘了,我CRC和头部内容长度都是这样做的 昏了
kouyiSC 2011-12-16
  • 打赏
  • 举报
回复
[Quote=引用 18 楼 wangxvwang 的回复:]
引用 14 楼 hackersun12345 的回复:
发送消息的首部不能加密,这个本身就用来校验的,加密了咋校

比如可以对首部进行一次简单的异或加密,这个密钥是预先双方协定好的,收到后只需要对预定大小的首部异或解密不久出来了嘛。


这个我已经解决了,可以将整个流读成字节数组,但是新问题出来了。
1、字节数组大小未知
2、如果用集合ArrayList可以解决1,但是toArra……
[/Quote]
将字节数组的 长度 带在消息头前面。。加一个定长位传递。。。服务器按定长位取字节数组长度。。。按长度取数据。。。
ghost123cc 2011-12-16
  • 打赏
  • 举报
回复
crc 没有听说过 可能是我太孤陋寡闻了
woshitianjin 2011-12-16
  • 打赏
  • 举报
回复
[Quote=引用 15 楼 a794588330 的回复:]
引用 11 楼 walking56849 的回复:
引用 7 楼 easonwang14 的回复:

引用 4 楼 sxzlc 的回复:

引用 1 楼 dxqrr 的回复:

每天回帖即可获得10分可用分!小技巧


楼主继续。

每天回帖即可获得10分可用分!小技巧

+1

+1
[/Quote]
+1
jiaqiang22 2011-12-16
  • 打赏
  • 举报
回复
不懂 来接分的
Call Next 2011-12-16
  • 打赏
  • 举报
回复
[Quote=引用 14 楼 hackersun12345 的回复:]
发送消息的首部不能加密,这个本身就用来校验的,加密了咋校
[/Quote]
比如可以对首部进行一次简单的异或加密,这个密钥是预先双方协定好的,收到后只需要对预定大小的首部异或解密不久出来了嘛。


这个我已经解决了,可以将整个流读成字节数组,但是新问题出来了。
1、字节数组大小未知
2、如果用集合ArrayList可以解决1,但是toArray(T[] a) 不能转换成字节数组,
Cactus_hxk 2011-12-15
  • 打赏
  • 举报
回复
艳沐石 2011-12-15
  • 打赏
  • 举报
回复
达布留西 2011-12-15
  • 打赏
  • 举报
回复
[Quote=引用 11 楼 walking56849 的回复:]
引用 7 楼 easonwang14 的回复:

引用 4 楼 sxzlc 的回复:

引用 1 楼 dxqrr 的回复:

每天回帖即可获得10分可用分!小技巧


楼主继续。

每天回帖即可获得10分可用分!小技巧

+1
[/Quote]
+1
easonwang14 2011-12-14
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 sxzlc 的回复:]

引用 1 楼 dxqrr 的回复:

每天回帖即可获得10分可用分!小技巧


楼主继续。
[/Quote]
每天回帖即可获得10分可用分!小技巧
金先生1 2011-12-14
  • 打赏
  • 举报
回复
是不是可以先用一个变量保存,然后再对其进行比较啊。
Call Next 2011-12-14
  • 打赏
  • 举报
回复
看来我真的要疯了...................
hackersun12345 2011-12-14
  • 打赏
  • 举报
回复
发送消息的首部不能加密,这个本身就用来校验的,加密了咋校
我嘞个去 2011-12-14
  • 打赏
  • 举报
回复
[Quote=引用 11 楼 walking56849 的回复:]
引用 7 楼 easonwang14 的回复:

引用 4 楼 sxzlc 的回复:

引用 1 楼 dxqrr 的回复:

每天回帖即可获得10分可用分!小技巧


楼主继续。

每天回帖即可获得10分可用分!小技巧

+1
[/Quote]+
walking56489 2011-12-14
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 easonwang14 的回复:]

引用 4 楼 sxzlc 的回复:

引用 1 楼 dxqrr 的回复:

每天回帖即可获得10分可用分!小技巧


楼主继续。

每天回帖即可获得10分可用分!小技巧
[/Quote]
+1
风影simple 2011-12-14
  • 打赏
  • 举报
回复
我也来了 (*^__^*) 嘻嘻……
南老頭 2011-12-14
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 easonwang14 的回复:]

引用 4 楼 sxzlc 的回复:

引用 1 楼 dxqrr 的回复:

每天回帖即可获得10分可用分!小技巧


楼主继续。

每天回帖即可获得10分可用分!小技巧
[/Quote]
+1 陪楼主一起等
sun0322 2011-12-13
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 dxqrr 的回复:]

每天回帖即可获得10分可用分!小技巧
[/Quote]

楼主继续。
寒拓冰 2011-12-13
  • 打赏
  • 举报
回复
CRC加密没研究
加载更多回复(1)

67,513

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧