CN102006306B - 一种web服务的安全认证方法 - Google Patents

一种web服务的安全认证方法 Download PDF

Info

Publication number
CN102006306B
CN102006306B CN201010578882.1A CN201010578882A CN102006306B CN 102006306 B CN102006306 B CN 102006306B CN 201010578882 A CN201010578882 A CN 201010578882A CN 102006306 B CN102006306 B CN 102006306B
Authority
CN
China
Prior art keywords
interface
client
web service
server
random code
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.)
Active
Application number
CN201010578882.1A
Other languages
English (en)
Other versions
CN102006306A (zh
Inventor
舒海燕
王振勇
宋保军
刘双广
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Gosuncn Technology Group Co Ltd
Original Assignee
Gosuncn Technology Group Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Gosuncn Technology Group Co Ltd filed Critical Gosuncn Technology Group Co Ltd
Priority to CN201010578882.1A priority Critical patent/CN102006306B/zh
Publication of CN102006306A publication Critical patent/CN102006306A/zh
Application granted granted Critical
Publication of CN102006306B publication Critical patent/CN102006306B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Storage Device Security (AREA)

Abstract

本发明属于软件安全认证的技术领域,尤其涉及一种WEB服务接口应用的安全认证方法。本发明WEB服务的安全认证方法,硬件包括分布有WEB服务接口的服务器和调用该WEB服务接口的客户端,所述WEB服务接口包括一个登录接口、一个注销接口和若干业务接口,其特征在于:所述客户端与服务器之间采用双向不对称加密算法,对客户端的帐号、密码、硬件ID进行加密,并以随机码的方式作为身份凭证,客户端在调用业务接口前,先调用登录接口取得身份凭证,客户端在程序退出时,调用注销接口注销身份凭证。本发明提升WEB服务接口的安全性,对于企业级的分布式应用具有非常积极的意义。

Description

一种WEB服务的安全认证方法
技术领域
本发明属于软件安全认证的技术领域,尤其涉及一种WEB服务接口应用的安全认证方法。
技术背景
随着软件技术的发展,应用软件已由单机应用向分布式应用发展。由于WEB服务(WEBSERVICE)开发相对简单,使用非常容易,已成为越来越多分布式软件的选择,目前大量的分布式应用程序采用了WEB服务(WEBSERVICE)作为技术基础,实现分布式的计算和应用。
但随着应用的增多,安全问题也更加突出。当前WEB服务(WEBSERVICE)应用时,为了保证不被非法调用,都会采用用户认证机制,一般的认证方法都采用帐号与密码的安全认证方式,有的在此基础上对密码进行了如MD5( Message Digest Algorithm MD5,中文名为消息摘要算法第五版)等简单的加密处理。由于帐号与密码的设置一般最多也只会设置十几位,太长会造成使用上的繁琐,而一般都会设置非常简单的密码,这就给人可乘之机,往往采用猜测的方法就能破解一大批密码。因此,如何保证使用简单的密码而达到很高的安全性,就成了一个新的研究方向。
发明内容
本发明的目的在于克服现有技术的不足,提供一种更加安全可靠的身份认证方法,该方法能使帐号破解难度大大增加,从而保证WEB服务接口应用的安全。
为了实现上述目的,本发明采用的技术方案如下:
一种WEB服务的安全认证方法,硬件包括分布有WEB服务接口的服务器和调用该WEB服务接口的客户端,所述WEB服务接口包括一个登录接口、一个注销接口和若干业务接口,其特征在于:所述客户端与服务器之间采用双向不对称加密算法,对客户端的帐号、密码、硬件ID进行加密,并以随机码的方式作为身份凭证,客户端在调用业务接口前,先调用登录接口取得身份凭证,客户端在程序退出时,调用注销接口注销身份凭证。
所述的WEB服务的安全认证方法,具体包括下列步骤:
步骤1,客户端和服务器约定两组密钥:密钥对A和密钥对B,其中密钥对A的私钥(private A)掌握在客户端,其对应的公钥(Public A)保存在服务器端;密钥对B的私钥(private B)掌握在服务器端,其对应的公钥(Public B)保存在客户端;
步骤2,登录认证:
当客户端调用登录接口时,先利用private A私钥将帐号、密码和硬件ID三个参数进行加密,再发送给服务器,服务器利用 Public A 公钥进行解密;如果能解密成功,则进一步验证帐号、密码及硬件ID是否正确;验证通过后,服务器生成一组随机码,并保存此帐号、硬件ID和随机码;再利用private B私钥对随机码进行加密,将加密后的随机码返回给客户端;客户端利用Public B公钥进行解密,将解密后的随机码保存在内存中;登录身份认证结束。
步骤3,业务接口认证:
客户端调用业务接口时,将解密后的随机码和未加密的硬件ID发送给服务器,服务器将对这两个参数与登录时保存的信息进行验证,验证符合后进行实际业务操作;
步骤4,注销接口认证
客户端调用注销接口时,将解密后的随机码和未加密的硬件ID发送给服务器,服务器将对这两个参数与登录时保存的信息进行验证,验证通过将登录时保存的帐号、硬件ID和随机码记录删除,实现注销,此时此随机码也即刻失效。
所述密钥对不定期进行更新,更新方式一般以手工导入密钥的方式进行。
进一步地,步骤2中所述服务器利用 Public A 公钥进行解密不成功时,返回空字串或错误编码给客户端,而不往下执行。
进一步地,所述随机码由字母、数字及特殊符号组成,长度为64~256位,长度根据安全需要进行控制。
上述WEB服务的安全认证方法中所述不对称加密算法通常采用RSA算法。
上述WEB服务的安全认证方法中所述硬件ID为CPU序列号或硬盘序列号或MAC地址或手机IEME号,根据实际情况决定,通常通过程序自动取得。
本发明采用双向的不对称加密方法,对帐号、密码、硬件ID进行加密处理,并以及随机码的方式作为身份凭证,达到强化认证安全的效果。
通过上述方法,即使帐号、密码、加密算法失窃,只要保护好密钥,盗窃者也无法加密成合法的密码串,那就不能通过攻击手段通过登录接口的安全认证。而且不对称加密的密钥和加密后的密码串都是很长的,长度视安全级别而定,猜测与穷举的方式根本不可能完成。而登录后取得的随机码也是需要一个公钥进行解密,又加了一层安全保障。即使攻击者绕过登录接口,直接调用业务接口,足够长的随机码也是不可破解的,并且每次登录后的随机码是不同的。
综上所述,利用上述这种安全认证方式能极大地提升WEB服务接口的安全性,克服目前WEB服务应用的一些安全问题,对于企业级的分布式应用具有非常积极的意义。
附图说明
图1为本发明WEB服务的安全认证方法过程示意图。
具体实施方式
下面结合附图对本发明做进一步的说明。
请参考附图1,WEBSERVICE接口作为服务器端方式存在,其分布有一个登录接口、一个注销接口和若干业务接口。调用此WEBSERVICE接口的应用程序以客户端的形式存在,通过调用WEBSERVICE接口实现各种业务功能。所有WEBSERVICE接口都采用了安全认证机制,登录接口、注销接口和业务接口的身份认证机制稍有不同,客户端在调用业务接口前,必须先调用登录接口取得身份凭证,客户端在程序退出时,调用注销接口注销身份凭证。
可按照如下步骤进行实现:
1、首先需要确定一种不对称加密算法,不对称加密是一种非常成熟的加密算法,不对称算法有很多种,目前最常用的算法是RSA,RSA公钥加密算法是1977年由Ron Rivest、Adi Shamirh和LenAdleman在(美国麻省理工学院)开发的。RSA取名来自开发他们三者的名字。RSA是目前最有影响力的公钥加密算法,它能够抵抗到目前为止已知的所有密码攻击,已被ISO推荐为公钥数据加密标准。只要其钥匙的长度足够长,用RSA加密的信息实际上是不能被解破的。其加减密是采用密码对,即成对公钥和私钥,利用私钥加密,只有其对应的公钥才能解密。密钥的长度可以根据安全需要进行控制,越长越安全。以下均以RSA算法为例。
2、生成RSA密钥对:RSA算法类都会提供密钥生成工具,生成两对密钥,分别定义为A密钥与B密钥。其中密钥对A的私钥(private A)掌握在客户端,其对应的公钥(Public A)保存在服务器端;密钥对B的私钥(private B)掌握在服务器端,其对应的公钥(Public B)保存在客户端。
3、建立服务器端的WEBSERVICE接口(WEB方法)
A、建立登录接口,
登录安全是第一步,也是最重要的一步。登录时将向服务器登录接口发送三个参数:帐号、密码和硬件ID(对于PC,一般取CPU ID,对于手机一般取IEME号,通过程序自动取得)。这三个参数都将通过RSA算法进行加密处理。此时,即便是简单的密码,也会变成很长的密码串。
三个参数都是通过A密钥的私钥private A进行加密的,所在在此方法内,首先需要采用A密钥的公钥Public A进行解密,如果解密不成功,则不再往下执行,返回给客户端一个空字串或特定的错误编码;如成功再进行下一步验证,即帐号、密码及硬件ID(在一些移动应用中,往往只对已登记的终端开放,此时需要对硬件ID进行验证)是否正确,验证成功后生成随机码(随机码不应太短,建议在64位以上),再将帐号、硬件ID和随机码成对保存在一个数据库表中,完成验证。然后将随机码用密钥B的私钥private B进行加密,再返回给调用者;
B、业务接口:此接口是实现业务功能所用接口,根据实际需要进行定义,要求每个接口都要包括两个参数,一个随机码的参数和一个硬件ID参数,并且最好都放在其它参数的前面,例如: 接口名称(String randCode,String hardId,其它参数)。randCode和hardId这两个参数是明文,无需解密,任何业务接口都应调用一个公共方法,此公共方法对随机码和硬件ID进行验证,看是否是一组的(通过登录时保存在数据库表中的数据进行匹对),只有是正确的,才往下执行具体业务功能;
C、注销接口:注销接口只需提供随机码参数和硬件ID参数,如LoginOut(String randCode,String hardId),参数也是明文,无需解密。方法内的处理为先调用业务接口所用的公共方法,对随机码和硬件ID进行验证。如正确,则将登录时保存的帐号、硬件ID和随机码记录删除,实现注销,此时此随机码也即刻失效;
4、客户端的调用
A、调用登录接口:首先利用密钥A的私钥private A对帐号、密码和硬件ID(硬件ID可取CPU序列号、硬盘序列号或MAC,根据实际情况决定)进行加密,然后调用登录WEBSERVICE接口,如果成功后,会返回一段随机码,将此随机码用密钥B的的公钥Public B进行解密,保存在内存中。
B、业务接口的调用:调用业务接口时,将硬件ID和随机码以明文传递给业务接口,不用加密
C、注销接口的调用:在客户端退出程序时,应该要调用注销接口,将硬件ID和随机码以明文传递给业务接口即可。

Claims (6)

1.一种WEB服务的安全认证方法,硬件包括分布有WEB服务接口的服务器和调用该WEB服务接口的客户端,所述WEB服务接口包括一个登录接口、一个注销接口和若干业务接口,其特征在于:所述客户端与服务器之间采用双向不对称加密算法,对客户端的帐号、密码、硬件ID进行加密,并以随机码的方式作为身份凭证,客户端在调用业务接口前,先调用登录接口取得身份凭证,客户端在程序退出时,调用注销接口注销身份凭证,具体包括下列步骤:
步骤1,客户端和服务器约定两组密钥对:密钥对A和密钥对B,其中密钥对A的私钥private A掌握在客户端,其对应的公钥Public A保存在服务器端;密钥对B的私钥private B掌握在服务器端,其对应的公钥Public B保存在客户端;
步骤2,登录认证:
当客户端调用登录接口时,先利用private A私钥将帐号、密码和硬件ID三个参数进行加密,再发送给服务器,服务器利用 Public A 公钥进行解密;如果能解密成功,则进一步验证帐号、密码及硬件ID是否正确;验证通过后,服务器生成一组随机码,并保存此帐号、硬件ID和随机码;再利用private B私钥对随机码进行加密,将加密后的随机码返回给客户端;客户端利用Public B公钥进行解密,将解密后的随机码保存在内存中;登录身份认证结束;
步骤3,业务接口认证:
客户端调用业务接口时,将解密后的随机码和未加密的硬件ID发送给服务器,服务器将对这两个参数与登录时保存的信息进行验证,验证符合后进行实际业务操作;
步骤4,注销接口认证
客户端调用注销接口时,将解密后的随机码和未加密的硬件ID发送给服务器,服务器将对这两个参数与登录时保存的信息进行验证,验证通过将登录时保存的帐号、硬件ID和随机码记录删除,实现注销,此时此随机码也即刻失效。
2.根据权利要求1所述的WEB服务的安全认证方法,其特征在于:步骤2中所述服务器利用 Public A 公钥进行解密不成功时,返回空字串或错误编码给客户端,而不往下执行。
3.根据权利要求1所述的WEB服务的安全认证方法,其特征在于:所述密钥对不定期进行更新。
4.根据权利要求1所述的WEB服务的安全认证方法,其特征在于:所述随机码由字母、数字及特殊符号组成,长度为64~256位。
5.根据权利要求1至4任一项所述的WEB服务的安全认证方法,其特征在于:所述不对称加密算法为RSA算法。
6.根据权利要求1至4任一项所述的WEB服务的安全认证方法,其特征在于:所述硬件ID为CPU序列号或硬盘序列号或MAC地址。
CN201010578882.1A 2010-12-08 2010-12-08 一种web服务的安全认证方法 Active CN102006306B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201010578882.1A CN102006306B (zh) 2010-12-08 2010-12-08 一种web服务的安全认证方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201010578882.1A CN102006306B (zh) 2010-12-08 2010-12-08 一种web服务的安全认证方法

Publications (2)

Publication Number Publication Date
CN102006306A CN102006306A (zh) 2011-04-06
CN102006306B true CN102006306B (zh) 2013-07-31

Family

ID=43813378

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201010578882.1A Active CN102006306B (zh) 2010-12-08 2010-12-08 一种web服务的安全认证方法

Country Status (1)

Country Link
CN (1) CN102006306B (zh)

Families Citing this family (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103023855A (zh) * 2011-09-20 2013-04-03 镇江雅迅软件有限责任公司 一种基于客户端计算机硬件参数的安全登录系统
CN103391194B (zh) * 2012-05-10 2016-08-31 航天信息股份有限公司 对用户的安全设备进行解锁的方法和系统
CN102801717B (zh) * 2012-08-03 2016-06-15 苏州迈科网络安全技术股份有限公司 登录验证方法及系统
CN103248483B (zh) * 2013-03-22 2016-12-28 张经纶 一种实名验证装置
CN104580256A (zh) * 2015-02-02 2015-04-29 北京嘀嘀无限科技发展有限公司 通过用户设备登录和验证用户身份的方法及设备
CN106470201A (zh) * 2015-08-21 2017-03-01 中兴通讯股份有限公司 一种用户认证方法和装置
CN105205407A (zh) * 2015-08-27 2015-12-30 郭玉涛 一种电子证加密解密方法
CN105187449B (zh) * 2015-09-30 2018-10-02 北京恒华伟业科技股份有限公司 一种接口调用方法及装置
CN106940664A (zh) * 2017-03-13 2017-07-11 成都育芽科技有限公司 一种wtc通信服务调用检测方法及装置
US11228579B2 (en) * 2017-04-18 2022-01-18 Google Llc Passing authentication information via parameters
CN107171784B (zh) * 2017-05-12 2020-07-31 珠海富鸿科技有限公司 突发环境事件应急指挥调度方法及系统
CN109600223B (zh) * 2017-09-30 2021-05-14 腾讯科技(深圳)有限公司 验证方法、激活方法、装置、设备及存储介质
CN108075880A (zh) * 2017-11-28 2018-05-25 珠海金山网络游戏科技有限公司 一种网络游戏服务器登录安全系统及方法
CN108965222B (zh) * 2017-12-08 2021-12-07 普华云创科技(北京)有限公司 身份认证方法、系统及计算机可读存储介质
CN108040048A (zh) * 2017-12-11 2018-05-15 福建福诺移动通信技术有限公司 一种基于http协议的移动客户端用户动态秘钥加密通讯方法
CN108289102B (zh) * 2018-01-26 2020-03-13 华南理工大学 一种微服务接口安全调用装置
CN109039653A (zh) * 2018-08-16 2018-12-18 常熟市顺网网络技术服务有限公司 一种基于双向加密的网络身份认证方法
CN108833449B (zh) * 2018-08-22 2021-05-28 海南火链科技有限公司 基于RAS算法的Web通信加密传输方法、装置及系统
CN110365661B (zh) * 2019-06-28 2021-11-26 苏州浪潮智能科技有限公司 一种网络安全认证方法和装置
CN110889123B (zh) * 2019-11-01 2021-01-12 浙江地芯引力科技有限公司 一种认证方法及密钥对的处理方法、装置与可读存储介质
CN113067828B (zh) * 2021-03-25 2023-05-12 中国建设银行股份有限公司 报文处理方法、装置、服务器、计算机设备及存储介质

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1925392A (zh) * 2006-09-08 2007-03-07 四川长虹电器股份有限公司 一种设备合法性认证的方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007534042A (ja) * 2003-10-08 2007-11-22 ステファン・ヨズ・エングベアウ プライバシ強化技術を利用して通信を確立する方法及びシステム

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1925392A (zh) * 2006-09-08 2007-03-07 四川长虹电器股份有限公司 一种设备合法性认证的方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
"基于X.509证书的身份认证机制的研究";袁晖;《大众科技》;20061231;174-175页 *
袁晖."基于X.509证书的身份认证机制的研究".《大众科技》.2006,

Also Published As

Publication number Publication date
CN102006306A (zh) 2011-04-06

Similar Documents

Publication Publication Date Title
CN102006306B (zh) 一种web服务的安全认证方法
CN106330850B (zh) 一种基于生物特征的安全校验方法及客户端、服务器
CN102664885B (zh) 一种基于生物特征加密和同态算法的身份认证方法
CN109040067A (zh) 一种基于物理不可克隆技术puf的用户认证设备及认证方法
CN102510378B (zh) 一种通过移动设备登陆网络游戏的方法
CN102299930B (zh) 一种保障客户端软件安全的方法
CN101494541B (zh) 一种实现对pin码进行安全保护的系统及方法
CN103491094A (zh) 一种基于c/s模式的快速身份认证方法
CN105656862B (zh) 认证方法及装置
CN102281138B (zh) 一种提高验证码安全性的方法和系统
CN102916970B (zh) 一种基于网络的pin码缓存方法
CN105187382B (zh) 防止撞库攻击的多因子身份认证方法
CN106452764A (zh) 一种标识私钥自动更新的方法及密码系统
CN103888938A (zh) 一种基于参数的动态生成密钥的pki私钥保护方法
CN103560892A (zh) 密钥生成方法和密钥生成装置
CN101582896A (zh) 第三方网络认证系统及其认证方法
CN104125064B (zh) 一种动态密码认证方法、客户端及认证系统
CN104333545A (zh) 对云存储文件数据进行加密的方法
CN104754571A (zh) 用于多媒体数据传输的用户认证实现方法、装置及其系统
WO2015158228A1 (zh) 一种服务器、用户设备以及用户设备与服务器的交互方法
CN114282189A (zh) 一种数据安全存储方法、系统、客户端以及服务器
CN103139163A (zh) 数据访问方法、服务器和终端
CN1953366B (zh) 智能密钥装置的密码管理方法和系统
TW201305935A (zh) 一次性密碼產生及應用方法及其系統
CN105978688A (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
C53 Correction of patent of invention or patent application
CB02 Change of applicant information

Address after: 510663, D401, 402 and 403 rooms, No. 11, color road, Science City, Guangzhou economic and Technological Development Zone, Luogang District, Guangzhou, Guangdong, China

Applicant after: GOSUNCN TECHNOLOGY GROUP Co.,Ltd.

Address before: 510663, D401, 402 and 403 rooms, No. 11, color road, Science City, Guangzhou economic and Technological Development Zone, Luogang District, Guangzhou, Guangdong, China

Applicant before: GUANGDONG GOSUN TELECOMMUNICATIONS Co.,Ltd.

COR Change of bibliographic data

Free format text: CORRECT: APPLICANT; FROM: GUANGDONG GOSUN TELECOMMUNICATIONS CO., LTD. TO: GOSUNCN TECHNOLOGY GROUP CO., LTD.

C14 Grant of patent or utility model
GR01 Patent grant
EE01 Entry into force of recordation of patent licensing contract
EE01 Entry into force of recordation of patent licensing contract

Application publication date: 20110406

Assignee: Guangzhou Kaide Finance Leasing Co.,Ltd.

Assignor: GOSUNCN TECHNOLOGY GROUP Co.,Ltd.

Contract record no.: 2019990000223

Denomination of invention: Security authentication method for WEB service

Granted publication date: 20130731

License type: Exclusive License

Record date: 20190709

PE01 Entry into force of the registration of the contract for pledge of patent right
PE01 Entry into force of the registration of the contract for pledge of patent right

Denomination of invention: Security authentication method for WEB service

Effective date of registration: 20190807

Granted publication date: 20130731

Pledgee: Guangzhou Kaide Finance Leasing Co.,Ltd.

Pledgor: GOSUNCN TECHNOLOGY GROUP Co.,Ltd.

Registration number: Y2019990000037

EC01 Cancellation of recordation of patent licensing contract
EC01 Cancellation of recordation of patent licensing contract

Assignee: Guangzhou Kaide Finance Leasing Co.,Ltd.

Assignor: GOSUNCN TECHNOLOGY GROUP Co.,Ltd.

Contract record no.: 2019990000223

Date of cancellation: 20220922

PC01 Cancellation of the registration of the contract for pledge of patent right
PC01 Cancellation of the registration of the contract for pledge of patent right

Date of cancellation: 20220922

Granted publication date: 20130731

Pledgee: Guangzhou Kaide Finance Leasing Co.,Ltd.

Pledgor: GOSUNCN TECHNOLOGY GROUP Co.,Ltd.

Registration number: Y2019990000037