一种基于加密的通信方法和系统的制作方法_3

文档序号:9791096阅读:来源:国知局
息,该新闻消息为业务结果。
[0181 ] 步骤402,采用加密标识对应的加密方式对所述业务结果进行加密;
[0182]应用本发明实施例,如图3所示,可以在服务器和客户端中共同部署一套相同的通信组件,包括一个调制解调器,用于对通信数据进行加密/解密、压缩/解压等处理,N(N为正整数)个加密方式,M(M为正整数)个压缩方式,其中,N和M可以相同,也可以不同,本发明实施例对此不加以限制。
[0183]通信组件可以由服务器进行维护,其通信组件中约定的加密方式、压缩方式均为服务器可以实现的,通过定期更新或不定期更新的方式分发到客户端中。
[0184]为了增加安全性,部署在客户端和服务器的调制解调器可以采用静态链接库的方式实现,加密方式和压缩方式于可以采用静态链接库的方式实现,即通信组件形成一个链接库组。
[0185]由于静态链接库的代码是不可逆向的,安全性提高。即使调用静态链接库的方法被恶意用户探测到,由于要理清多个静态链接库的处理关系,也大大增加了探测成本。
[0186]另外,由于使用静态链接库是独立于主程序的,很容易进行更新,通过定期或不定期的更新加密规则、压缩规则,可以增加恶意用户破解通信协议的成本,从而增加通信的安全性。
[0187]需要说明的是,静态链接库是一种开发结构,其特点是将逻辑代码打包成二进制文件,在本发明实施例中,相当于将加密方式和压缩方式的代码,制作成动态链接库,供主逻辑调用。
[0188]当然,除了加密方式、压缩方式之外,在实施本发明实施例时,可以根据实际情况设置其他通信方式,例如,增加通信数据的混淆方式,等等,本发明实施例对此不加以限制。另外,除了上述通信方式外,本领域技术人员还可以根据实际需要采用其它通信方式,本发明实施例对此也不加以限制。
[0189]在具体实现中,服务器的调制解调器可以调用加密标识对应的加密方式所属的第一动态链接库,通过第一动态链接库采用该加密方式对业务数据进行加密。
[0190]若客户端在先发起业务请求,该业务请求中约定了加密方式,则服务器所选取的加密方式可以与该业务请求中约定的加密方式相同,也可以与该业务请求中约定的加密方式不同,本发明实施例对此不加以限制。
[0191]若服务器主动推送业务结果,则服务器所选取的加密方式可以为默认的加密方式,可以基于客户端的支持率和强度选取,即选择一个客户端支持率较高、强度较高的加密方式。
[0192]此外,该加密方式具有加密标识,即标识加密方式的信息,进一步也可以为标识第一动态链接库的信息。
[0193]步骤403,采用压缩标识对应的压缩方式对所述业务数据进行压缩;
[0194]在具体实现中,服务器的调制解调器可以调用压缩标识对应的压缩方式所属的第二动态链接库,通过第二动态链接库采用该压缩方式对业务数据进行压缩。
[0195]若客户端在先发起业务请求,该业务请求中约定了压缩方式,则服务器所选取的压缩方式可以与该业务请求中约定的压缩方式相同,也可以与该业务请求中约定的压缩方式不同,本发明实施例对此不加以限制。
[0196]若服务器主动推送业务结果,则服务器所选取的压缩方式可以为默认的压缩方式,可以基于客户端的支持率和强度选取,即选择一个客户端支持率较高、强度较高的压缩方式。
[0197]此外,压缩方式具有压缩标识,即标识压缩方式的信息,进一步也可以为标识第二动态链接库的信息。
[0198]需要说明的是,服务器可以先进行加密、再进行压缩,也可以先进行压缩,再进行加密,本发明实施例对此不加以限制。
[0199]步骤404,通过统一接口将所述业务结果返回客户端;
[0200]在具体实现中,服务器可以提供一个统一接口,用于统一与客户端进行通信,即通过该统一接口统一接收客户端发送的不同业务类型的业务请求、通过该统一接口统一向客户端发送不同业务类型的响应消息。
[0201 ]所谓统一,即除了该接口外,不存在其他接口与客户端进行通信。?0202] 此外,客户端与服务器之间的通信可以采用HTTP(Hyper Text TransferProtoco,超文本传送协议)协议,也可以米用HTTPS(Hyper Text Transfer ProtocolSecure,超文本传输安全协议)协议,等等,本发明实施例对此不加以限制。
[0203]需要说明的是,若客户端在先发起业务请求,该业务请求中约定了加密方式、压缩方式,且服务器所选取的加密方式、压缩方式与该业务请求中约定的加密方式、压缩方式相同,则可以不将加密标识、压缩标识返回客户端,否则,与业务结果将加密标识、压缩标识返回客户端。
[0204]步骤405,客户端按照所述加密方式对所述业务结果进行解密;
[0205]在具体实现中,服务器的调制解调器可以调用该加密方式所属的第一动态链接库,通过第一动态链接库采用该加密方式对业务结果进行解密。
[0206]若服务器未返回加密方式的加密标识,则可以查找在先发起业务请求时约定的加密标识,调用该加密标识所属的第一动态链接库。
[0207]若服务器返回了加密方式的加密标识,则可以直接调用该加密标识所属的第一动态链接库。
[0208]步骤406,按照所述压缩方式对所述业务结果进行解压。
[0209]在具体实现中,服务器的调制解调器可以调用该压缩方式所属的第二动态链接库,通过该第二动态链接库采用该压缩方式对业务数据进行解压。
[0210]若服务器未返回压缩方式的压缩标识,则可以查找在先发起业务请求时约定的压缩标识,调用该压缩标识所属的第二动态链接库。
[0211]若服务器返回了压缩方式的压缩标识,则可以直接调用该压缩标识所属的第二动态链接库。
[0212]需要说明的是,若服务器先进行加密、再进行压缩,则客户端可以先进行解压、再进行解密,若服务器先进行压缩,再进行加密,则客户端可以先进行解密、再进行解压,本发明实施例对此不加以限制。
[0213]对于解密、解压之后获得的业务结果,客户端可以进行进一步处理。
[0214]例如,户输入账号、密码请求登录即时通讯工具,若服务器验证通过,则可以在即时通讯工具加载分组、好友等数据。
[0215]又例如,在出现重大新闻消息时,服务器可以主动向即时通讯客户端推送新闻消息,则客户端可以生成一弹窗,在该弹窗中加载该新闻消息。
[0216]本发明实施例通过静态链接库的方式实现加密方式、压缩方式,由于静态链接库是不可逆向的,并且,静态链接库是独立于主程序的,容易进行更新,从而大大提高了通信的安全性。
[0217]为使本领域技术人员更好地理解本发明实施例,以下通过具体的通信示例来说明本发明实施例中统一接口的通信方法。
[0218]1、客户端发起请求获取主页数据的业务请求;
[0219]请求地址为http://next.gamebox.***.cn/api/intface,“***” 为域名;
[0220]使用post方式传递业务数据:
[0221]其中,业务路径为:
[0222]7/xgamebox/dashboard;
[0223]请求参数为:
[0224]ml = ed571bf7489ff8d7603cle3556434322&m2 =ed571bf7489ff8d7603cle3556434322&page = l&ch = 100100&v = 41301&bir = &nt=l&curqid = &jdata = 1447296790
[0225]调用第I个加密动态链接库、第2个压缩动态链接库对业务路径和请求参数进行加密(即加密标识为I )、压缩(即压缩标识为2)后,得到一组业务数据:
[0226]a8tTcdNRZz%2F0tn0iHkdJGkAH62QoR47TdadIeXgS8utlUF%2FUhSaT7sHLh2ffF8xYTMx6NrBtsFp%2BJc6xdh6SuJ5d9NLgPsGGEvD5RIvhwBdFCApJEB2hiw2oCtVZIfftKjwevS8Gf704c9ZDktQZPSCAmbZM03ULR0zByZq99XXZE% 3D
[0227]将业务数据作为post的参数、将加密标识1、压缩标识2传递给服务器。
[0228]2、服务器接到业务请求之后,读取加密标识1、压缩标识2和业务数据;
[0229]调用第I个加密动态链接库、第2个压缩动态链接库对业务数据进行解密和解压,得到业务路径为:
[0230]7/xgamebox/dashboard;
[0231]请求参数为:
[0232]ml = ed571bf7489ff8d7603cle3556434322&m2 =ed571bf7489ff8d7603cle3556434322&page = l&ch = 100100&v = 41301&bir = &nt=l&curqid = &jdata = 1447296790
[0233]将请求参数发送至业务路径所处的业务组件,查找(即业务处理)主页数据(即业务结果)。
[0234]3、服务器获得主页数据之后,调用第I个加密动态链接库、第2个压缩动态链接库对主页数据进行加密和压缩,返回给客户端。
[0235]4、客户端接收到业务结果之后,可以调用第I个加密动态链接库、第2个压缩动态链接库对业务结果进行解密和解压,在页面加载主页数据。
[0236]对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明实施例并不受所描述的动作顺序的限制,因为依据本发明实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本发明实施例所必须的。
[0237]参照图5,示出了根据本发明一个实施例的一种基于加密的通信系统实施例1的结构框图,所述系统包括客户端,其中,所述客户端具体可以包括如下模块:
[0238]业务数据确定模块501,适于在接收到业务操作指令时,确定业务数据;
[0239]第一加密模块502,适于采用预设的加密方式对所述业务数据进行加密,所述加密方式具有加密标识;
[0240]第一数据嵌入模块503,适于将所述业务数据和所述加密标识嵌入业务请求中;[0241 ] 业务请求发送模块504,适于通过统一接口将所述业务请求发送至所述服务器进行业务处理。
[0242]参照图6,示出了根据本发明一个实施例的一种基于加密的通信系统实施例2的结构框图,所述系统包括客户端610和服务器620;
[024
当前第3页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1