`

.net客户端调用java服务端,通讯数据加密解密思路及过程

阅读更多
目前系统客户端用.net实现,java服务端采用了webservice的方式向客户端提供服务。

要实现的功能:验证从.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端来做。

我对数据加密所知甚少,而且对通用的处理方式也不太了解,真诚希望能够得到有经验的各位多多指点,谢谢!

分享到:
评论
2 楼 charles751 2008-03-10  
多谢andot,有时间我去看看
1 楼 andot 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 是一样的。

相关推荐

    客户端获取服务端webservice接口内容的六种方式(含sm3,sm4加密解密方式)

    WebService就是一个应用程序,它向外界暴露出一个能够通过Web进行调用的API。这就是说,你能够用编程的方法通过Web调用来实现...Web Service客户端获取服务端webservice接口内容的六种方式(含sm3,sm4加密解密方式)

    java源码包---java 源码 大量 实例

     WDSsoft的一款免费源代码 JCT 1.0,它是一个Java加密解密常用工具包。 Java局域网通信——飞鸽传书源代码 28个目标文件 内容索引:JAVA源码,媒体网络,飞鸽传书  Java局域网通信——飞鸽传书源代码,大家都知道VB...

    java实现微信企业号和公众号服务端调用方法封装源码

    1、微信企业号服务端调用方法java源码实现 1.1 获取AccessToken 1.2 发送文本消息 1.3 发送消息(包括文本、图像、声音、视频、文件、图文) 1.4 上传素材文件 1.5 获取素材文件 1.6 获取应用素材总数以及每种类型...

    JAVA上百实例源码以及开源项目源代码

     WDSsoft的一款免费源代码 JCT 1.0,它是一个Java加密解密常用工具包。 Java局域网通信——飞鸽传书源代码 28个目标文件 内容索引:JAVA源码,媒体网络,飞鸽传书  Java局域网通信——飞鸽传书源代码,大家都知道VB...

    .NET之美:.NET关键技术深入分析

    9.2.NET对加密和解密的支持 9.2.1散列运算 9.2.2对称加密和解密 9.2.3非对称加密 9.3本章小结 第10章网络编程 10.1网络编程基本概念 10.1.1 面向连接的传输协议——TCP 10.1.2 即时通信程序的三种模式 10.2...

    asp.net知识库

    如何在客户端调用服务端代码 页面一postback,它就显示页面的最顶端,怎样让它定位在某一位置? 如何保证页面刷新后的滚动条位置 清除网页历史记录,屏蔽后退按钮! 如何传值在2个页面之间 :要求不刷新父页面,并且...

    java源码包4

     WDSsoft的一款免费源代码 JCT 1.0,它是一个Java加密解密常用工具包。 Java局域网通信——飞鸽传书源代码 28个目标文件 内容索引:JAVA源码,媒体网络,飞鸽传书  Java局域网通信——飞鸽传书源代码,大家都知道...

    java源码包3

     WDSsoft的一款免费源代码 JCT 1.0,它是一个Java加密解密常用工具包。 Java局域网通信——飞鸽传书源代码 28个目标文件 内容索引:JAVA源码,媒体网络,飞鸽传书  Java局域网通信——飞鸽传书源代码,大家都知道...

    java源码包2

     WDSsoft的一款免费源代码 JCT 1.0,它是一个Java加密解密常用工具包。 Java局域网通信——飞鸽传书源代码 28个目标文件 内容索引:JAVA源码,媒体网络,飞鸽传书  Java局域网通信——飞鸽传书源代码,大家都知道...

    JAVA上百实例源码以及开源项目

     WDSsoft的一款免费源代码 JCT 1.0,它是一个Java加密解密常用工具包。 Java局域网通信——飞鸽传书源代码 28个目标文件 内容索引:JAVA源码,媒体网络,飞鸽传书  Java局域网通信——飞鸽传书源代码,大家都知道VB...

    delphi加密C#解密全部源码

    一个项目,客户端D,服务端C#,要求D发送的密码在C#能解析. 研究了三天,采取的办法是采用D开发一个dll,在C#中调用. 办法一:可以采用相同的算法,但网上的资料少得可怜. 办法二:采用D做DLL C#调用 ,问题在于D返回string...

    C#实现微信企业号API服务端调用封装

    C#实现微信企业号API服务端调用封装全部源码 1、基础方法 1.1 在回调模式下验证服务器接口地址 1.2 服务器端解密方法 1.3 服务器端加密方法 1.4 获取AccessToken(企业号的全局唯一票据) 1.5 获取企业号应用的基本...

    成百上千个Java 源码DEMO 4(1-4是独立压缩包)

    摘要:JAVA源码,媒体网络,山寨QQ,Java聊天程序 Java编写的山寨QQ,多人聊天+用户在线,程序分服务端和客户端,典型C/S结构, 当用户发送第一次请求的时候,验证用户登录,创建一个该qq号和服务器端保持通讯连接得线程...

    成百上千个Java 源码DEMO 3(1-4是独立压缩包)

    摘要:JAVA源码,媒体网络,山寨QQ,Java聊天程序 Java编写的山寨QQ,多人聊天+用户在线,程序分服务端和客户端,典型C/S结构, 当用户发送第一次请求的时候,验证用户登录,创建一个该qq号和服务器端保持通讯连接得线程...

    java开源包1

    jSIP这个Java包目标是用Java实现SIP(SIP:Session Initiation Protocol)协议及SIP协议的其它扩展部 分。 Java表达式语法解析库 parboiled parboiled 是一个纯Java库提供了一种轻量级,易于使用,功能强大和优雅的PEG...

    java开源包4

    jSIP这个Java包目标是用Java实现SIP(SIP:Session Initiation Protocol)协议及SIP协议的其它扩展部 分。 Java表达式语法解析库 parboiled parboiled 是一个纯Java库提供了一种轻量级,易于使用,功能强大和优雅的PEG...

    java开源包11

    jSIP这个Java包目标是用Java实现SIP(SIP:Session Initiation Protocol)协议及SIP协议的其它扩展部 分。 Java表达式语法解析库 parboiled parboiled 是一个纯Java库提供了一种轻量级,易于使用,功能强大和优雅的PEG...

    java开源包101

    jSIP这个Java包目标是用Java实现SIP(SIP:Session Initiation Protocol)协议及SIP协议的其它扩展部 分。 Java表达式语法解析库 parboiled parboiled 是一个纯Java库提供了一种轻量级,易于使用,功能强大和优雅的PEG...

    java开源包6

    jSIP这个Java包目标是用Java实现SIP(SIP:Session Initiation Protocol)协议及SIP协议的其它扩展部 分。 Java表达式语法解析库 parboiled parboiled 是一个纯Java库提供了一种轻量级,易于使用,功能强大和优雅的PEG...

Global site tag (gtag.js) - Google Analytics