CN102299930A - 一种保障客户端软件安全的方法 - Google Patents
一种保障客户端软件安全的方法 Download PDFInfo
- Publication number
- CN102299930A CN102299930A CN2011102779488A CN201110277948A CN102299930A CN 102299930 A CN102299930 A CN 102299930A CN 2011102779488 A CN2011102779488 A CN 2011102779488A CN 201110277948 A CN201110277948 A CN 201110277948A CN 102299930 A CN102299930 A CN 102299930A
- Authority
- CN
- China
- Prior art keywords
- terminal
- server
- signature
- client software
- login
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 27
- 230000006854 communication Effects 0.000 claims abstract description 96
- 238000004891 communication Methods 0.000 claims abstract description 95
- 238000012795 verification Methods 0.000 claims description 16
- 230000005540 biological transmission Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005242 forging Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
Images
Landscapes
- Mobile Radio Communication Systems (AREA)
Abstract
本发明保障客户端软件安全的方法包括:步骤1,终端下载软件,服务器在软件包中加入终端身份认证信息;步骤2,终端向服务器发送绑定请求;步骤3,验证绑定请求的合法性,合法则向终端发送绑定成功的信息;步骤4,验证绑定成功的信息的合法性;步骤5,终端向服务器发送登录请求;步骤6,验证登录请求的合法性,合法则向终端发送登录成功的信息;步骤7,验证登录成功的信息的合法性,合法则保持会话。本发明就能更好地防止软件被篡改,保障终端与服务器间的通信安全性。既有效防止重放攻击,还能检测软件是否被篡改,即使黑客下载软件并通过篡改软件来攻击服务器,由此导致的危害也仅为该终端不能正常使用,不会危害到其他用户的正常使用。
Description
技术领域
本发明涉及一种保障客户端软件安全的方法。
背景技术
用户通过手持终端自服务器下载需要的客户端软件时,可能会存在以下安全隐患:
软件被恶意篡改:由于大多数终端都为java开发,由于java语言本身的特性就使得代码很容易被反编译,从而被篡改。尽管使用了代码模糊技术、但是黑客可以稍加改进反编译程序,还是能将客户端软件进行反编译,因此效果并不理想。
客户身份保护和验证:通常的身份验证都只是基于用户名和密码的形式,然而用户名和密码在网络上传输,很容易被黑客窃取。现有技术可以用RSA等加密技术来防止请求被伪造,但是如果私钥被窃取的话,请求也是可能被伪造的。
通信安全:基于HTTP协议的通信也同样容易被篡改、伪造。如果采用明文传送客户端软件,则内容容易别窃取。现有技术可以通过对称加密与非对称加密技术来确保通信过程的安全性。然而非对称加密时需要采用公钥和私钥来进行通信,如何保障私钥安全的下发至终端而不被窃取,是安全通信的保障,因为一旦私钥被窃取,就意味着黑客可以仿冒终端与服务端进行通信,同样不能保障通信安全性。
发明内容
本发明所要解决的技术问题是提供一种保障客户端软件安全的方法。
本发明保障客户端软件安全的方法,具体步骤如下:
步骤1,终端自服务器下载客户端软件,所述服务器在所述客户端软件包中加入终端身份认证信息;
步骤2,所述终端向所述服务器发送绑定请求;
步骤3,所述服务器验证所述终端发送的绑定请求的合法性:若合法,则所述终端与所述客户端软件在所述服务器完成绑定,所述服务器向所述终端发送绑定成功的信息,然后执行步骤4;否则,所述服务器向所述终端发送绑定失败的信息;
步骤4,所述终端验证所述服务器发送的绑定成功的信息的合法性:若合法,则所述终端与所述客户端软件在所述终端完成绑定,然后执行步骤5;否则,提示终端重新下载所述客户端软件;
步骤5,所述终端向所述服务器发送登录请求;
步骤6,所述服务器验证所述终端发送的登录请求的合法性:若合法,则向所述终端发送登录成功的信息,然后执行步骤7;否则,所述服务器向所述终端发送登录失败的信息;
步骤7,所述终端验证所述服务器发送的登录成功的信息的合法性:若合法,则所述终端与所述服务器保持会话;否则,提示终端登录失败。
进一步地,所述步骤1中,所述终端身份认证信息包括软件序列号、终端私钥、服务器公钥、和第一签名;其中,
所述服务器先对所述客户端软件包的内容进行MD5运算,得到第一MD5散列值;再用服务器私钥对所述第一MD5散列值和所述软件序列号进行签名,得到所述第一签名。
进一步地,所述步骤2中,所述终端发送的绑定请求包括第一通信序列号、国际移动设备身份码、第二MD5散列值、所述第一签名、和所述软件序列号;其中,
所述终端对所述客户端软件包的内容进行MD5运算,得到所述第二MD5散列值。
进一步地,所述步骤3中,所述服务器按照以下步骤验证所述绑定请求的合法性:
步骤A1,判断所述第一通信序列号是否大于服务器内保存的通信序列号:若大于,则继续执行步骤A2;否则,判定所述绑定请求不合法;
步骤A2,判断所述第一签名的正确性:
步骤A21,服务器通过所述软件序列号查找与该软件序列号对应的第一MD5散列值,并与所述第二MD5散列值进行比对:若二者相同,则继续执行步骤A22;否则,判定所述绑定请求不合法;
步骤A22,服务器通过服务器公钥验证第二MD5散列值、软件序列号、和第一签名的正确性:若正确,则继续执行步骤A3;否则,判定所述绑定请求不合法;
步骤A3,判断所述终端是否已与所述客户端软件完成绑定:若已完成绑定,则提示用户重新下载,并判定所述绑定请求不合法;否则,所述终端与所述客户端软件在所述服务器完成绑定。
进一步地,所述步骤3中,所述绑定成功的信息包括手机号、第二签名、第二通信序列号、和登录验证码;其中,
所述服务器用服务器私钥对所述手机号、第二通信序列号和登录验证码进行签名,得到所述第二签名。
进一步地,所述步骤4中,所述终端按照以下步骤验证所述绑定成功的信息的合法性:
步骤B1,判断所述第二通信序列号是否大于终端内保存的通信序列号:若大于,则继续执行步骤B2;否则,判定所述绑定成功的信息不合法;
步骤B2,通过所述手机号、第二通信序列号、登录验证码、服务器公钥和第二签名来验证所述第二签名的正确性:若第二签名正确,则所述终端与所述客户端软件在所述终端完成绑定;否则,判定所述绑定成功的信息不合法。
进一步地,所述步骤5中,所述终端发送的登录请求包括所述国际移动设备身份码、所述手机号、第三通信序列号、利用服务器公钥加密的随机码、和第三签名;其中,
所述终端用终端私钥对所述国际移动设备身份码、手机号、第三通信序列号、加密后的随机码、和登录验证码进行签名,得到所述第三签名。
进一步地,所述步骤6中,所述服务器按照以下步骤验证所述登录请求的合法性:
步骤C1,判断所述第三通信序列号是否大于服务器内保存的通信序列号:若大于,则继续执行步骤C2;否则,判定所述登录请求不合法;
步骤C2,通过国际移动设备身份码、手机号、第三通信序列号、加密后的随机码、客户端公钥和第三签名来验证所述第三签名的正确性:若第三签名正确,则继续执行步骤C3;否则,判定所述登录请求不合法;
步骤C3,进行终端与客户端软件的绑定校验:若所述服务器内保存有终端的手机号和国际移动设备身份码,则判定绑定校验合格,继续执行步骤C3;否则,判定所述登录请求不合法;
步骤C4,所述服务器利用服务器私钥对所述加密后的随机码进行解密,并向所述终端发送登录成功的信息。
进一步地,所述步骤6中,所述服务器发送的登录成功的信息包括会话序列号、第四通信序列号、用解密后的随机码加密的对称加密密钥、和第四签名;其中,
所述服务器用服务器私钥对所述话序列号、第四通信序列号和对称加密密钥进行签名,得到所述第四签名。
进一步地,所述步骤7中,所述终端按照以下步骤验证所述登录成功的信息的合法性:
步骤D1,判断所述第四通信序列号是否大于终端内保存的通信序列号:若大于,则继续执行步骤D2;否则,判定所述登录成功的信息不合法;
步骤D2,通过所述会话序列号、第四通信序列号、对称加密密钥、服务器公钥和第四签名来验证所述第四签名的正确性:若第四签名正确,则判定所述登陆成功的信息合法,然后执行步骤D3;否则,判定所述登录成功的信息不合法;
步骤D3,所述终端利用所述随机码对所述对称加密密钥进行解密;并通过所述会话序列号建立所述终端与所述服务器间的会话,利用解密后的对称加密密钥对终端与服务器间传递的数据进行加密。
本发明的有益效果是:
采用本发明技术方案,就可更好地防止客户端软件被篡改,保障终端与服务器之间的通信安全性。既可有效防止重放攻击,还能检测判断软件是否被篡改,即使黑客下载到客户端软件,通过篡改软件来攻击服务器,由此导致的危害结果也仅为该终端不能正常使用,而不会危害到其他用户的正常使用。
附图说明
图1为本发明保障客户端软件安全方法的流程示意图;
图2为本发明中服务器验证终端发送的绑定请求合法性的流程示意图;
图3为本发明中服务器验证终端发送的登录请求合法性的流程示意图;
图4为本发明中终端验证服务器发送的登录成功的信息的合法性的流程示意图。
具体实施方式
以下结合附图对本发明的原理和特征进行描述,所举实例只用于解释本发明,并非用于限定本发明的范围。
如图1所示,本发明保障客户端软件安全的方法,具体步骤如下:
步骤1,终端自服务器下载客户端软件,服务器在客户端软件包中加入终端身份认证信息;
步骤2,终端向服务器发送绑定请求;
步骤3,服务器验证终端发送的绑定请求的合法性:若合法,则终端与客户端软件在服务器完成绑定,服务器向终端发送绑定成功的信息,然后执行步骤4;否则,服务器向终端发送绑定失败的信息;
步骤4,终端验证服务器发送的绑定成功的信息的合法性:若合法,则终端与客户端软件在终端完成绑定,然后执行步骤5;否则,提示终端重新下载客户端软件;
步骤5,终端向服务器发送登录请求;
步骤6,服务器验证终端发送的登录请求的合法性:若合法,则向终端发送登录成功的信息,然后执行步骤7;否则,服务器向终端发送登录失败的信息;
步骤7,终端验证服务器发送的登录成功的信息的合法性:若合法,则终端与服务器保持会话;否则,提示终端登录失败。
下面对本发明的保障客户端软件安全的方法进行简单介绍。
第一步,用户通过终端(例如手机)下载客户端软件时,服务器会在客户端软件包中加入终端身份认证信息,该信息包括与客户端软件对应的唯一的软件序列号、终端私钥、服务器公钥、和第一签名(服务器先对客户端软件包的内容进行MD5运算,得到第一MD5散列值;再用服务器私钥对第一MD5散列值和软件序列号进行签名,得到第一签名。其中,MD5是指Message Digest Algorithm,中文名为消息摘要算法第五版)。同时服务器也保存有软件序列号、第一MD5散列值。为了保证终端与服务器间的正常通信,在服务器上保存有服务器私钥、服务器公钥、终端私钥和终端公钥,在终端上保存有终端私钥和服务器公钥。
第二步,在终端下载客户端软件后,如若运行该软件,则先要完成终端与该客户端软件间的绑定(即将终端的手机号、国际移动设备身份码与该客户端软件之间建立对应关系),包括在服务器上完成终端、软件与手机号的绑定、在终端上完成手机号与软件的绑定两个步骤。
1.对于在服务器上完成终端、软件与手机号绑定的过程如下:
首先,终端向服务器发送绑定请求,该绑定请求包括第一通信序列号(由终端按照递增关系产生,就是说,终端每次生成的通信序列号都要比上次生成的通信序列号大,这样就可以有效防止重放攻击)、国际移动设备身份码IMEI(International Mobile Equipment Identity)、第二MD5散列值(由终端对客户端软件包的内容进行MD5运算,得到第二MD5散列值)、第一签名和软件序列号。
将第一签名再传回到服务器的目的是为了防止终端伪造软件序列号,从而防止黑客攻击其他终端。因为终端内没有服务器私钥,若终端修改了软件序列号,则其生成的签名再传送到服务器,服务器公钥验证签名时则会出错。这样就可有效防止软件序列号被伪造、篡改。
其次,服务器接收上述绑定请求,并验证该绑定请求的合法性。对于经验证合法的绑定请求,则在服务器向终端发送绑定成功的信息之后,在服务器内完成终端与客户端软件之间的绑定(即建立终端的手机号、国际移动设备身份码与客户端软件间的对应关系)。对于经验证不合法的绑定请求,服务器则向终端发送绑定失败的信息。如图2所示,服务器主要通过以下三方面来验证绑定请求的合法性。
第一方面,验证是否存在重放攻击。也就是说,服务器通过判断第一通信序列号是否大于服务器内保存的通信序列号的方式来判断是否存在重放攻击。因为终端每次均是按照递增方式生成通信序列号的,因此,当终端再次生成一个新的通信序列号并发送到服务器时,该通信序列号肯定要比服务器内部之前保存的通信序列号要大。若攻击者截获通信序列码进行重放攻击,那么服务器每次接收到的通信序列码都是相同的。因此,若经判断,终端发送来的第一通信序列号大于服务器内保存的通信序列号,则认为本次通信未遭到重放攻击,可继续判断其它方面来验证绑定请求的合法性。若经判断,终端发送来的第一通信序列号不大于服务器内保存的通信序列号,则判定服务器遭到了重放攻击,绑定请求不合法。
第二方面,验证第一签名的正确性。因为在服务器向终端发送终端身份认证信息时,服务器内保存有客户端软件的软件序列号、第一MD5散列值、以及终端公钥,因此,服务器接收到终端发送的绑定请求后,即先根据绑定请求内包含的软件序列号来查找其对应的第一MD5散列值,并与第二MD5散列值进行比对:若第二MD5散列值与第一MD5散列值相同,则说明客户端软件包以及软件序列号未被篡改;否则,判定绑定请求不合法。然后再通过服务器公钥验证第二MD5散列值、软件序列号、和第一签名的正确性,即利用服务器公钥验证数据(第二MD5散列值和软件序列号)与第一签名是否相对应:若第一签名正确,则可继续判断其它方面来验证绑定请求的合法性;否则,判定绑定请求不合法。
第三方面,判断终端是否已与客户端软件完成绑定,以防止软件拷贝。若终端已与客户端软件完成绑定,即服务器内保存有终端的手机号、IMEI、客户端软件之间的对应关系,则服务器提示用户重新下载,并判定绑定请求不合法;否则,判定绑定请求合法。
综上所述,若上述三方面的判断结果均为合法,则服务器向终端发送绑定成功的信息,终端与客户端软件在服务器完成绑定。其中,绑定成功的信息包括手机号(在手机向服务器发送短信时,由服务器获取的)、第二通信序列号(由服务器按照递增关系产生,就是说,服务器每次生成的通信序列号都要比上次生成的通信序列号大,同样可有效防止重放攻击)、登录验证码、第二签名(服务器用服务器私钥对手机号、第二通信序列号和登录验证码进行签名,得到第二签名)。
2.终端接收到服务器发送的绑定成功的信息后,则判定该绑定成功的信息的合法性,以此完成终端手机号与软件在终端内的绑定。终端主要通过以下两方面来验证绑定成功的信息的合法性。
第一方面,验证是否存在重放攻击。也就是说,终端通过判断第二通信序列号是否大于终端内保存的通信序列号的方式来判断是否存在重放攻击。与服务器判断重放攻击的原理相同,若经判断,服务器发送来的第二通信序列号大于终端内保存的通信序列号,则认为本次通信未遭到重放攻击,可继续判断其它方面来验证绑定成功的信息的合法性。若经判断,服务器发送来的第二通信序列号不大于终端内保存的通信序列号,则判定遭到了重放攻击,判定绑定成功的信息不合法。
第二方面,验证第二签名的正确性。通过手机号、第二通信序列号、登录验证码、服务器公钥和第二签名来判断第二签名的正确性:利用服务器公钥对第二签名进行验证(采用Public Key Infrastructure公钥基础设施的数据签名技术):若第二签名正确,则终端手机号与客户端软件在终端完成绑定。否则,判定绑定成功的信息不合法。
第三步,完成终端与客户端软件在服务器上的绑定以及终端与客户端软件在终端上的绑定后,终端向服务器发送登录请求。该登录请求包括国际移动设备身份码IMEI、手机号、第三通信序列号(由终端按照递增关系产生,就是说,终端每次生成的通信序列号都要比上次生成的通信序列号大,同样可有效防止重放攻击)、利用服务器公钥加密的随机码(即该随机码以密文形式传送至服务器)、和第三签名(终端用终端私钥对IMEI、手机号、第三通信序列号、加密后的随机码、和服务器向终端发送绑定成功的信息时生成的登录验证码进行签名,得到第三签名)。
第四步,服务器接收终端发送的登录请求,如图3所示,通过以下三方面来验证登录请求的合法性。
第一方面,验证是否存在重放攻击。也就是说,服务器通过判断第三通信序列号是否大于服务器内保存的通信序列号的方式来判断是否存在重放攻击。与上述提及的服务器判断重放攻击和终端判断重放攻击的原理相同,若经判断,终端发送来的第三通信序列号大于服务器内保存的通信序列号,则认为本次通信未遭到重放攻击,可继续判断其它方面来验证登录请求的合法性。若经判断,终端发送来的第三通信序列号不大于服务器内保存的通信序列号,则判定遭到了重放攻击,判定登录请求不合法。
第二方面,验证第三签名的正确性。通过IMEI、手机号、第三通信序列号、加密后的随机码、客户端公钥和第三签名来判断第三签名的正确性:若第三签名正确,则可继续判断其它方面来验证登陆请求的合法性;否则,判定登录请求不合法。
第三方面,进行终端与客户端软件的绑定校验。即判断服务器内是否保存有终端的手机号和IMEI。若经查找服务器内保存有终端的手机号和IMEI,则判定绑定校验合格。若经查找服务器内不存在终端的手机号和IMEI,则判定登录请求不合法。
综上所述,若上述三方面的判断结果均为合法,则服务器向终端发送登录成功的信息,同时,服务器还利用服务器私钥对加密后的随机码进行解密。其中,登录成功的信息包括会话序列号、第四通信序列号(由服务器按照递增关系产生,就是说,服务器每次生成的通信序列号都要比上次生成的通信序列号大,同样可有效防止重放攻击)、用解密后的随机码加密的对称加密密钥(即利用解密后得到的随机码对对称加密密钥进行加密运算,使得对称加密密钥以密文形式传送至终端)、第四签名(服务器用服务器私钥对话序列号、第四通信序列号和以密文形式传送的对称加密密钥进行签名,得到第四签名)。
第五步,终端接收服务器发送的登录成功的信息,如图4所示,通过以下两方面验证该登录成功的信息的合法性。
第一方面,验证是否存在重放攻击。也就是说,终端通过判断第四通信序列号是否大于终端内保存的通信序列号的方式来判断是否存在重放攻击。与上述提及的服务器判断重放攻击和终端判断重放攻击的原理相同,若经判断,服务器发送的第四通信序列号大于终端内保存的通信序列号,则认为本次通信未遭到重放攻击,可继续判断其它方面来验证登录成功的信息的合法性。否则,判定登录成功的信息不合法。
第二方面,验证第四签名的正确性。通过会话序列号、第四通信序列号、对称加密密钥(以密文形式传送)、服务器公钥和第四签名来验证第四签名的正确性:若第四签名正确,则判定登录成功的信息合法。否则,判定登录成功的信息不合法。
综上所述,若上述两方面的判断结果均为合法,则终端利用随机码对以密文形式传送的对称加密密钥进行解密;并通过会话序列号保持终端与服务器间的会话。同时,在终端与服务器保持会话时,还可以利用解密后得到的对称加密密钥来对终端与服务器间传递的敏感数据进行加密,提高数据传递的安全性。
由于本发明采用随机码来加密对称加密密钥,而随机码是由终端随机产生,且以密文形式传送的,因此,即使利用服务器公钥加密的随机码被破解,该随机码也不能被重复利用。而利用这种安全性很高的随机码对对称加密密钥进行加密和解密运算,再进一步利用该对称加密密钥对终端与服务器间传递的数据进行数据加密,也就相应的提高了数据传递的安全性。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种保障客户端软件安全的方法,其特征在于,
步骤1,终端自服务器下载客户端软件,所述服务器在所述客户端软件包中加入终端身份认证信息;
步骤2,所述终端向所述服务器发送绑定请求;
步骤3,所述服务器验证所述终端发送的绑定请求的合法性:若合法,则所述终端与所述客户端软件在所述服务器完成绑定,所述服务器向所述终端发送绑定成功的信息,然后执行步骤4;否则,所述服务器向所述终端发送绑定失败的信息;
步骤4,所述终端验证所述服务器发送的绑定成功的信息的合法性:若合法,则所述终端与所述客户端软件在所述终端完成绑定,然后执行步骤5;否则,提示终端重新下载所述客户端软件;
步骤5,所述终端向所述服务器发送登录请求;
步骤6,所述服务器验证所述终端发送的登录请求的合法性:若合法,则向所述终端发送登录成功的信息,然后执行步骤7;否则,所述服务器向所述终端发送登录失败的信息;
步骤7,所述终端验证所述服务器发送的登录成功的信息的合法性:若合法,则所述终端与所述服务器保持会话;否则,提示终端登录失败。
2.按照权利要求1所述的保障客户端软件安全的方法,其特征在于,
所述步骤1中,所述终端身份认证信息包括软件序列号、终端私钥、服务器公钥、和第一签名;其中,
所述服务器先对所述客户端软件包的内容进行MD5运算,得到第一MD5散列值;再用服务器私钥对所述第一MD5散列值和所述软件序列号进行签名,得到所述第一签名。
3.按照权利要求1或2所述的保障客户端软件安全的方法,其特征在于,
所述步骤2中,所述终端发送的绑定请求包括第一通信序列号、国际移动设备身份码、第二MD5散列值、所述第一签名、和所述软件序列号;其中,
所述终端对所述客户端软件包的内容进行MD5运算,得到所述第二MD5散列值。
4.按照权利要求3所述的保障客户端软件安全的方法,其特征在于,
所述步骤3中,所述服务器按照以下步骤验证所述绑定请求的合法性:
步骤A1,判断所述第一通信序列号是否大于服务器内保存的通信序列号:若大于,则继续执行步骤A2;否则,判定所述绑定请求不合法;
步骤A2,判断所述第一签名的正确性:
步骤A21,服务器通过所述软件序列号查找与该软件序列号对应的第一MD5散列值,并与所述第二MD5散列值进行比对:若二者相同,则继续执行步骤A22;否则,判定所述绑定请求不合法;
步骤A22,服务器通过服务器公钥验证第二MD5散列值、软件序列号、和第一签名的正确性:若第一签名正确,则继续执行步骤A3;否则,判定所述绑定请求不合法;
步骤A3,判断所述终端是否已与所述客户端软件完成绑定:若已完成绑定,则提示用户重新下载,并判定所述绑定请求不合法;否则,所述终端与所述客户端软件在所述服务器完成绑定。
5.按照权利要求1、2或4所述的保障客户端软件安全的方法,其特征在于,
所述步骤3中,所述绑定成功的信息包括手机号、第二签名、第二通信序列号、和登录验证码;其中,
所述服务器用服务器私钥对所述手机号、第二通信序列号和登录验证码进行签名,得到所述第二签名。
6.按照权利要求5所述的保障客户端软件安全的方法,其特征在于,
所述步骤4中,所述终端按照以下步骤验证所述绑定成功的信息的合法性:
步骤B1,判断所述第二通信序列号是否大于终端内保存的通信序列号:若大于,则继续执行步骤B2;否则,判定所述绑定成功的信息不合法;
步骤B2,通过所述手机号、第二通信序列号、登录验证码、服务器公钥和第二签名来验证所述第二签名的正确性:若第二签名正确,则所述终端与所述客户端软件在所述终端完成绑定;否则,判定所述绑定成功的信息不合法。
7.按照权利要求1、2、4或6所述的保障客户端软件安全的方法,其特征在于,
所述步骤5中,所述终端发送的登录请求包括所述国际移动设备身份码、所述手机号、第三通信序列号、利用服务器公钥加密的随机码、和第三签名;其中,
所述终端用终端私钥对所述国际移动设备身份码、手机号、第三通信序列号、加密后的随机码、和登录验证码进行签名,得到所述第三签名。
8.按照权利要求9所述的保障客户端软件安全的方法,其特征在于,
所述步骤6中,所述服务器按照以下步骤验证所述登录请求的合法性:
步骤C1,判断所述第三通信序列号是否大于服务器内保存的通信序列号:若大于,则继续执行步骤C2;否则,判定所述登录请求不合法;
步骤C2,通过国际移动设备身份码、手机号、第三通信序列号、加密后的随机码、客户端公钥和第三签名来验证所述第三签名的正确性:若第三签名正确,则继续执行步骤C3;否则,判定所述登录请求不合法;
步骤C3,进行终端与客户端软件的绑定校验:若所述服务器内保存有终端的手机号和国际移动设备身份码,则判定绑定校验合格,继续执行步骤C4;否则,判定所述登录请求不合法;
步骤C4,所述服务器利用服务器私钥对所述加密后的随机码进行解密,并向所述终端发送登录成功的信息。
9.按照权利要求8所述的保障客户端软件安全的方法,其特征在于,
所述步骤6中,所述服务器发送的登录成功的信息包括会话序列号、第四通信序列号、用解密后的随机码加密的对称加密密钥、和第四签名;其中,
所述服务器用服务器私钥对所述话序列号、第四通信序列号和对称加密密钥进行签名,得到所述第四签名。
10.按照权利要求9所述的保障客户端软件安全的方法,其特征在于,
所述步骤7中,所述终端按照以下步骤验证所述登录成功的信息的合法性:
步骤D1,判断所述第四通信序列号是否大于终端内保存的通信序列号:若大于,则继续执行步骤D2;否则,判定所述登录成功的信息不合法;
步骤D2,通过所述会话序列号、第四通信序列号、对称加密密钥、服务器公钥和第四签名来验证所述第四签名的正确性:若第四签名正确,则判定所述登陆成功的信息合法,然后执行步骤D3;否则,判定所述登录成功的信息不合法;
步骤D3,所述终端利用所述随机码对所述对称加密密钥进行解密;并通过所述会话序列号建立所述终端与所述服务器间的会话,利用解密后的对称加密密钥对终端与服务器间传递的数据进行加密。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110277948.8A CN102299930B (zh) | 2011-09-19 | 2011-09-19 | 一种保障客户端软件安全的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110277948.8A CN102299930B (zh) | 2011-09-19 | 2011-09-19 | 一种保障客户端软件安全的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102299930A true CN102299930A (zh) | 2011-12-28 |
CN102299930B CN102299930B (zh) | 2014-09-10 |
Family
ID=45360105
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201110277948.8A Expired - Fee Related CN102299930B (zh) | 2011-09-19 | 2011-09-19 | 一种保障客户端软件安全的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102299930B (zh) |
Cited By (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103391194A (zh) * | 2012-05-10 | 2013-11-13 | 航天信息股份有限公司 | 对用户的安全设备进行解锁的方法和系统 |
CN103974254A (zh) * | 2014-04-29 | 2014-08-06 | 华为技术有限公司 | 一种信息传输方法及设备 |
CN104066085A (zh) * | 2014-01-16 | 2014-09-24 | 苏州天鸣信息科技有限公司 | 一种移动终端应用的安全保护方法及其系统 |
CN104134021A (zh) * | 2013-06-20 | 2014-11-05 | 腾讯科技(深圳)有限公司 | 软件的防篡改验证方法及装置 |
CN104640115A (zh) * | 2015-03-04 | 2015-05-20 | 北京深思数盾科技有限公司 | 云锁的临时认证方法 |
CN105205407A (zh) * | 2015-08-27 | 2015-12-30 | 郭玉涛 | 一种电子证加密解密方法 |
CN105681470A (zh) * | 2012-03-29 | 2016-06-15 | 北京奇虎科技有限公司 | 基于超文本传输协议的通信方法、服务器、终端 |
CN106302502A (zh) * | 2016-04-03 | 2017-01-04 | 北京动石科技有限公司 | 一种安全访问认证处理方法、用户终端和服务端 |
CN106652136A (zh) * | 2016-12-22 | 2017-05-10 | 奇酷互联网络科技(深圳)有限公司 | 一种基于移动终端的门禁管理信息处理方法及装置 |
CN107040513A (zh) * | 2016-06-30 | 2017-08-11 | 北京动石科技有限公司 | 一种可信访问认证处理方法、用户终端和服务端 |
CN108052804A (zh) * | 2018-01-09 | 2018-05-18 | 江苏徐工信息技术股份有限公司 | 一种基于云端管控的软件注册码的实现方法 |
CN108600151A (zh) * | 2018-02-28 | 2018-09-28 | 华为技术有限公司 | 一种数据通讯方法、设备及系统 |
WO2018219260A1 (zh) * | 2017-06-02 | 2018-12-06 | Oppo广东移动通信有限公司 | 用于绑定手机号码的方法、装置及系统 |
CN109714769A (zh) * | 2018-12-28 | 2019-05-03 | 北京深思数盾科技股份有限公司 | 信息绑定方法、装置、设备及存储介质 |
CN110768831A (zh) * | 2019-10-24 | 2020-02-07 | 黎剑猛 | 一种获取监控插件方法及系统 |
CN111314901A (zh) * | 2020-02-10 | 2020-06-19 | 成都雅信安科技服务有限公司 | 一种应用程序与其搭载移动终端的imei的关联方法 |
CN111431846A (zh) * | 2019-05-30 | 2020-07-17 | 杭州海康威视数字技术股份有限公司 | 数据传输的方法、装置和系统 |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107659581A (zh) * | 2017-10-19 | 2018-02-02 | 郑州云海信息技术有限公司 | 一种资源调用方法和装置 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1599314A (zh) * | 2004-08-25 | 2005-03-23 | 湖南大学 | 一种基于s/key系统双向认证的一次性口令验证方法 |
CN1983926A (zh) * | 2006-04-18 | 2007-06-20 | 华为技术有限公司 | 一种设备的安全保障方法 |
CN101242274A (zh) * | 2005-06-24 | 2008-08-13 | 华为技术有限公司 | 保证消息序列号不重复、防止重放攻击的方法及移动终端 |
CN101582763A (zh) * | 2009-04-02 | 2009-11-18 | 北京飞天诚信科技有限公司 | 基于动态口令进行身份认证的方法和系统 |
CN101834946A (zh) * | 2010-05-11 | 2010-09-15 | 丁峰 | 一种进行安全手机支付的方法和进行安全支付的手机 |
-
2011
- 2011-09-19 CN CN201110277948.8A patent/CN102299930B/zh not_active Expired - Fee Related
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1599314A (zh) * | 2004-08-25 | 2005-03-23 | 湖南大学 | 一种基于s/key系统双向认证的一次性口令验证方法 |
CN101242274A (zh) * | 2005-06-24 | 2008-08-13 | 华为技术有限公司 | 保证消息序列号不重复、防止重放攻击的方法及移动终端 |
CN1983926A (zh) * | 2006-04-18 | 2007-06-20 | 华为技术有限公司 | 一种设备的安全保障方法 |
CN101582763A (zh) * | 2009-04-02 | 2009-11-18 | 北京飞天诚信科技有限公司 | 基于动态口令进行身份认证的方法和系统 |
CN101834946A (zh) * | 2010-05-11 | 2010-09-15 | 丁峰 | 一种进行安全手机支付的方法和进行安全支付的手机 |
Non-Patent Citations (1)
Title |
---|
胡祥义等: "对称密码技术在网络认证系统中的应用", 《网络安全技术与应用》 * |
Cited By (27)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105681470A (zh) * | 2012-03-29 | 2016-06-15 | 北京奇虎科技有限公司 | 基于超文本传输协议的通信方法、服务器、终端 |
CN105681470B (zh) * | 2012-03-29 | 2018-12-28 | 北京奇虎科技有限公司 | 基于超文本传输协议的通信方法、服务器、终端 |
CN103391194A (zh) * | 2012-05-10 | 2013-11-13 | 航天信息股份有限公司 | 对用户的安全设备进行解锁的方法和系统 |
CN103391194B (zh) * | 2012-05-10 | 2016-08-31 | 航天信息股份有限公司 | 对用户的安全设备进行解锁的方法和系统 |
CN104134021B (zh) * | 2013-06-20 | 2016-03-02 | 腾讯科技(深圳)有限公司 | 软件的防篡改验证方法及装置 |
CN104134021A (zh) * | 2013-06-20 | 2014-11-05 | 腾讯科技(深圳)有限公司 | 软件的防篡改验证方法及装置 |
US9607147B2 (en) | 2013-06-20 | 2017-03-28 | Tencent Technology (Shenzhen) Company Limited | Method and device for detecting software-tampering |
CN104066085A (zh) * | 2014-01-16 | 2014-09-24 | 苏州天鸣信息科技有限公司 | 一种移动终端应用的安全保护方法及其系统 |
CN103974254A (zh) * | 2014-04-29 | 2014-08-06 | 华为技术有限公司 | 一种信息传输方法及设备 |
CN104640115B (zh) * | 2015-03-04 | 2018-07-06 | 北京深思数盾科技股份有限公司 | 云锁的临时认证方法 |
CN104640115A (zh) * | 2015-03-04 | 2015-05-20 | 北京深思数盾科技有限公司 | 云锁的临时认证方法 |
CN105205407A (zh) * | 2015-08-27 | 2015-12-30 | 郭玉涛 | 一种电子证加密解密方法 |
CN106302502A (zh) * | 2016-04-03 | 2017-01-04 | 北京动石科技有限公司 | 一种安全访问认证处理方法、用户终端和服务端 |
CN106302502B (zh) * | 2016-04-03 | 2019-08-02 | 郭铮铮 | 一种安全访问认证处理方法、用户终端和服务端 |
CN107040513A (zh) * | 2016-06-30 | 2017-08-11 | 北京动石科技有限公司 | 一种可信访问认证处理方法、用户终端和服务端 |
CN107040513B (zh) * | 2016-06-30 | 2020-06-02 | 郭铮铮 | 一种可信访问认证处理方法、用户终端和服务端 |
CN106652136A (zh) * | 2016-12-22 | 2017-05-10 | 奇酷互联网络科技(深圳)有限公司 | 一种基于移动终端的门禁管理信息处理方法及装置 |
WO2018219260A1 (zh) * | 2017-06-02 | 2018-12-06 | Oppo广东移动通信有限公司 | 用于绑定手机号码的方法、装置及系统 |
CN108052804A (zh) * | 2018-01-09 | 2018-05-18 | 江苏徐工信息技术股份有限公司 | 一种基于云端管控的软件注册码的实现方法 |
CN108600151A (zh) * | 2018-02-28 | 2018-09-28 | 华为技术有限公司 | 一种数据通讯方法、设备及系统 |
CN108600151B (zh) * | 2018-02-28 | 2020-09-08 | 华为技术有限公司 | 一种数据通讯方法、设备及系统 |
CN109714769A (zh) * | 2018-12-28 | 2019-05-03 | 北京深思数盾科技股份有限公司 | 信息绑定方法、装置、设备及存储介质 |
CN111431846A (zh) * | 2019-05-30 | 2020-07-17 | 杭州海康威视数字技术股份有限公司 | 数据传输的方法、装置和系统 |
CN110768831A (zh) * | 2019-10-24 | 2020-02-07 | 黎剑猛 | 一种获取监控插件方法及系统 |
CN110768831B (zh) * | 2019-10-24 | 2022-12-16 | 上海东谷云数字科技有限公司 | 一种获取监控插件方法及系统 |
CN111314901A (zh) * | 2020-02-10 | 2020-06-19 | 成都雅信安科技服务有限公司 | 一种应用程序与其搭载移动终端的imei的关联方法 |
CN111314901B (zh) * | 2020-02-10 | 2021-08-31 | 成都雅信安科技服务有限公司 | 一种应用程序与其搭载移动终端的imei的关联方法 |
Also Published As
Publication number | Publication date |
---|---|
CN102299930B (zh) | 2014-09-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102299930B (zh) | 一种保障客户端软件安全的方法 | |
CN108418691B (zh) | 基于sgx的动态网络身份认证方法 | |
CN109729523B (zh) | 一种终端联网认证的方法和装置 | |
CN107040513B (zh) | 一种可信访问认证处理方法、用户终端和服务端 | |
CN107579991B (zh) | 一种对客户端进行云端防护认证的方法、服务器和客户端 | |
CN102026195B (zh) | 基于一次性口令的移动终端身份认证方法和系统 | |
US20170208049A1 (en) | Key agreement method and device for verification information | |
EP2887576A1 (en) | Software key updating method and device | |
CN106453361B (zh) | 一种网络信息的安全保护方法及系统 | |
CN112711759A (zh) | 一种防重放攻击漏洞安全防护的方法及系统 | |
CN108243176B (zh) | 数据传输方法和装置 | |
CN103220673B (zh) | Wlan用户认证方法、认证服务器及用户设备 | |
CN103067402A (zh) | 数字证书的生成方法和系统 | |
US10091189B2 (en) | Secured data channel authentication implying a shared secret | |
WO2006024216A1 (fr) | Procede pour mettre en oeuvre la certification et systemes correspondants | |
CN104717063A (zh) | 移动终端的软件安全防护方法 | |
WO2015158228A1 (zh) | 一种服务器、用户设备以及用户设备与服务器的交互方法 | |
CN112448930A (zh) | 账号注册方法、装置、服务器及计算机可读存储介质 | |
CN113918967A (zh) | 基于安全校验的数据传输方法、系统、计算机设备、介质 | |
CN113612852A (zh) | 一种基于车载终端的通信方法、装置、设备及存储介质 | |
CN112699374A (zh) | 一种完整性校验漏洞安全防护的方法及系统 | |
CN114553480B (zh) | 跨域单点登录方法、装置、电子设备及可读存储介质 | |
Feng et al. | FIDO gets verified: A formal analysis of the universal authentication framework protocol | |
CN106096336B (zh) | 软件防破解方法和系统 | |
CN105577606A (zh) | 一种实现认证器注册的方法和装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20140910 Termination date: 20200919 |
|
CF01 | Termination of patent right due to non-payment of annual fee |