浏览 3244 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2008-03-08
要实现的功能:验证从.net客户端登陆的用户的合法性。用户从客户端登陆,需要调用java接口验证用户信息的合法性。原java系统中采用了MD5的方式对用户的某些数据进行加密,加密后的数据保存到了DB中。 问题1:用户的某些敏感数据不能在.net的客户端用MD5进行处理。 因为原java系统中用的MD5不是通用的算法,而是对通用MD5进行了改造。糟糕的是,现在做.net客户端的程序员无法实现这个MD5。 解决办法:MD5的工作由java端处理。 即客户端传明文到java端,由java端对用户数据进行MD5处理。这样就实现了用户信息验证的功能。同时又带来了另一个问题。 问题2:数据通讯中怎么能传明文呢?太不安全了吧,别人截获了http消息,不就拿到用户数据了吗,太危险了! 解决办法: 用户的数据需要在传输的过程中做加密处理。客户端和服务端一致决定采用DES的加密算法进行加密,但具体处理的过程 中又遇到了一些问题。 问题3:.net端加密出来的数据在java端却无法正确解密。 两边的加密解密不匹配。查了一些资料才知道,.net端默认的DES算法模式和java的不同。感叹互联网的威力啊,可以找到那么多的相关资料,然后我就修修补补,敲敲打打,历尽百辛千苦,终于小功告成,呵呵。 最后的解决办法: 1.客户端和服务端对通讯数据进行了加密处理,杜绝了传递明文。 2.MD5的工作放到java端来做。 我对数据加密所知甚少,而且对通用的处理方式也不太了解,真诚希望能够得到有经验的各位多多指点,谢谢! 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间:2008-03-09
你可以试试 PHPRPC for .NET 和 for Java,它可以实现 Java 和 .NET 的相互调用,并且可以部分加密传输数据。
for Java 版本的用户指南已经发布:http://www.phprpc.org/forum/viewthread.php?tid=62&extra=page%3D1 for .NET 版本的用户指南过些日子也会发布,基本用法与 Java 是一样的。 |
|
返回顶楼 | |
发表时间:2008-03-10
多谢andot,有时间我去看看
|
|
返回顶楼 | |