CN102231729B - 支持多种ca身份认证的方法 - Google Patents

支持多种ca身份认证的方法 Download PDF

Info

Publication number
CN102231729B
CN102231729B CN201110128667.6A CN201110128667A CN102231729B CN 102231729 B CN102231729 B CN 102231729B CN 201110128667 A CN201110128667 A CN 201110128667A CN 102231729 B CN102231729 B CN 102231729B
Authority
CN
China
Prior art keywords
digital certificate
authentication
interface
party
certificate
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
CN201110128667.6A
Other languages
English (en)
Other versions
CN102231729A (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.)
Inspur General Software Co Ltd
Original Assignee
Inspur General Software 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 Inspur General Software Co Ltd filed Critical Inspur General Software Co Ltd
Priority to CN201110128667.6A priority Critical patent/CN102231729B/zh
Publication of CN102231729A publication Critical patent/CN102231729A/zh
Application granted granted Critical
Publication of CN102231729B publication Critical patent/CN102231729B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Storage Device Security (AREA)

Abstract

本发明公开了一种支持多种CA身份认证的方法,属于计算机技术领域。该方法通过集成当前主流CA厂商的证书,抽取这几种CA认证、加密的共性和相关性作为基本属性,并以此为依据抽象为数字证书认证和加密接口,然后通过实现这个接口来集成第三方数字证书,将这个实现封装为程序集部署到软件系统中。然后更改软件系统的全局配置文件,指定当前的CA为要使用的CA,集成第三方CA完成。与现有技术相比,本发明的支持多种CA身份认证的方法可以提高业务系统的稳定性和可复用性,易于部署和配置,可减少系统开发人员和维护人员的工作量。

Description

支持多种CA身份认证的方法
技术领域
本发明涉及计算机技术领域,具体地说是一种支持多种CA身份认证的方法。
背景技术
当今的计算机网络基本都是按照开放系统互连(为OSI)的国际标准建立起来的开放系统,开放系统可以使网络的使用和互连更加方便,但同时也造成了对网络安全的威胁。目前,计算机网络所面临的威胁大致可分为两种:一是对数据信息的威胁;二是对物理设备的威胁。
造成网络安全威胁的因素非常多,主要有软件漏洞、配置不当、病毒、黑客攻击等等,这些威胁的目的更多的是针对网络信息窃取和对网络通信和信息提供服务的破坏。针对网络信息所面临的威胁,常用的网络安全对策有:认证技术,加密技术,防火墙和入侵检测技术,还有病毒保护、访问控制、审计等方法来保障网络信息安全。
目前,数字证书是对身份认证和加密技术的综合运用,数字证书已经普遍地应用于网络身份识别、信息传输加密等网络安全技术中。标识;最后以统一数据标识为标准,进行数据的查询、整理和保存,形成决策有用的信息。
但是随着CA技术的发展,CA厂商层出不穷,大多数厂商在使用我们的软件前,或多或少的已经采购了CA,这就涉及到了CA如何与我们软件集成,如何在减少工作量的基础上更好的集成CA的问题,目前大多数软件厂商采用的是根据要集成的CA厂商的接口更改后台的系统代码,集成一个CA更改一次,这样就带来了一系列的问题,一是工作量大,二是系统稳定性不高,三是产品成熟度不高。
发明内容
本发明的技术任务是针对上述现有技术的不足,提供一种支持多种CA身份认证的方法。通过集成当前主流CA厂商的证书,抽取这几种CA认证、加密的共性和相关性作为基本属性,并以此为依据抽象为数字证书认证和加密接口,然后通过实现这个接口来集成第三方数字证书,将这个实现封装为程序集部署到软件系统中。然后更改软件系统的全局配置文件,指定当前的CA为要使用的CA,集成第三方CA完成。对于系统已集成的CA,只需要更改全局配置文件即可,不需要改动任何代码。
本发明的技术任务是按以下方式实现的:一种支持多种CA身份认证的方法,包括:
默认支持多种证书:系统默认支持多种当前主流的CA证书;
扩展性和兼容性:用高强度密码保护密钥,支持加密机、智能卡、USB Key等硬件设备,同时在认证的过程充分运用了CA认证、SSL加密通道、关键信息加密签名、时间戳等技术,保证了信息传递的保密性,真实性,有效防止了重放攻击;
高封装性:所有的数字证书申请,数据签名,吊销列表验证都封装在一个程序集dll中;
安全性和可靠性:用高强度密码保护密钥,支持加密机、智能卡、USB Key等硬件设备,同时在认证的过程充分运用了CA认证、SSL加密通道、关键信息加密签名、时间戳等技术,保证了信息传递的保密性,真实性,有效防止了重放攻击。
所述支持多种CA,不局限于某一个或者特定CA,
目前系统支持多种当前主流的CA证书厂商;
        除了默认支持的这几种CA,可以随着业务系统的应用,可以扩展支持的另外的CA厂商。
        所述扩展性和兼容性,可以在目前默认支持的CA基础上扩展和兼容别的CA厂商,
 首先提供符合国家规范,基于标准数字证书格式X509的数字证书认证接口,该接口包含根据过滤条件获取数字对象的集合方法,验证数字证书是否合法,包括是否被吊销,是否过期,是否信任CA颁发方法,数字证书签名和验签方法,
在该接口的基础上和要扩展的CA基础上,封装一个程序集,将该程序集部署到软件系统即可。
本发明的支持多种CA身份认证的方法还可以通过更改配置文件,而不更改后台代码的基础上,灵活的在默认支持的CA中指定当前要使用的CA。
所述安全性包括:
数字证书的实现原理和应用数字证书技术类似传统大使馆颁发、登记公民签证的方式,由大家所信任的公正第三者或认证机构(CA)以数字签名技术,将每一个用户的公钥和个人的身份数据签署成电子证书;
当用户收到他人的证书之后,可以使用CA的公钥验证所获得证书的正确性,确信此证书内所含的公开密钥、身份数据及其他相关内容确实是证书上声称的主体(持证人),而不是其他主体用户,如此可将用户身份与用户的公钥紧密地结合在一起,让攻击者无法伪冒他人,传送假的公钥欺骗其他网络用户;
数字证书利用公正第三者帮助认证用户公钥的方式,可以将用户必须认证网络上每一个用户公钥的问题,缩减到只需要认证用户所信任的公正第三方的公钥正确性的问题,大大增加了公开密钥的实用性。
上述支持多种CA身份认证的方法的实现具体包括如下步骤::
a、抽象数字证书认证加密接口,
所述加密接口包含根据过滤条件获取数字对象的集合方法,验证数字证书是否合法,包括是否被吊销,是否过期,是否信任CA颁发方法,数字证书签名和验签方法;
b、基于上述加密接口实现第三方CA,
根据上述数字证书认证加密接口,结合要实现的第三方CA,将实现数字证书认证加密的程序封装为一个程序集(如dll);
c、部署程序集,
将上述程序集部署发布到软件系统中; 
d、指定认证CA,
更改服务端配置文件,在多个CA中,指定需要使用的CA;
e、CA用户绑定,
通过系统的用户功能,将CA用户与软件系统用户进行绑定;
f、CA认证登录验签,
用户插入数字证书的key,在登录界面选择该证书,登录系统,进行CA认证签名。
进一步的,对于步骤a所描述“数字证书认证加密接口”,应该包含下面的几个基本方法和对象。
函数名称 ICertificate CreateCertificateFromCerFile (string fileName);
功能简介 从cer证书文件中获取第一个数字证书
参数说明 fileName:数字证书文件名
返回值 数字证书对象
函数名称 ICertificate CreateCertificateFromPemFile (string fileName);
功能简介 从Pem证书文件中获取数字证书
参数说明 fileName:数字证书文件名
返回值 数字证书对象
函数名称 ICertificate CreateFromBase64String(string  rawString);
功能简介 从Base64编码的字符流中构造数字证书
参数说明 rawString:Base64编码的字符流
返回值 数字证书对象
对于步骤d所描述的“指定认证CA”,可以理解为从系统默认支持的CA,指定一个CA为当前系统认证需要的CA。
可以通过更改服务端的配置文件
  <CertificateConfiguration>                                  
     <CertificateConfigurations>                                 
     <add PropertyName="Provider" Value="inspurCertificate" name="Provider" />  
     通过Value的值来确定当前要使用的CA。
本发明的支持多种CA身份认证的方法与现有技术相比具有以下突出的有益效果:
采用支持多种CA的认证方式,可以减少集成第三方CA的复杂性,提高业务系统的稳定性和可复用性;可以支持多种CA的认证;易于部署和配置,可以实现灵活的CA选择切换;减少了系统开发人员和维护人员的工作量。
附图说明
附图1是本发明支持多种CA身份认证方法实施例的流程图。
具体实施方式
参照说明书附图以具体实施例对本发明的支持多种CA身份认证的方法作以下详细地说明。
实施例:
如附图1所示,本发明方法的具体实现步骤包括:
步骤1:基于数字证书认证加密实现第三方CA。根据定义的数字证书认证加密接口,结合要实现的第三方CA,将实现数字证书认证加密的程序封装为一个程序集,一般为dll。
步骤2:部署程序集。将该程序集部署发布到软件系统中。
步骤3:指定认证CA。更改服务端配置文件,在多个CA中,指定要使用的CA。
步骤4:客户端启动,获取服务器端的身份验证配置信息。
根据获取的身份验证方式,登录窗口会根据这些验证方式从配置文件中获取实现了相应接口的类所在的dll和类型名。
然后创建这些对象,放到panel上面。
选择一个数字证书,进行数据签名。
步骤5:创建CA验证器,然后把CA身份验证的上下文作为参数调用
验证器的 void AuthenticateUserIdentity(GSPAuthenticationContext context)方法。在此方法里面进行真正的证书验证。
服务器端根据配置文件获取此登录用户的数字证书。
ICertificateManager 接口实现。
//调用证书接口里面的VerifySignedMessage方法。
Bool result =  VerifySignedMessage(string msg, string signedMsg)
If(签名验证通过)
{
//调用 ICertificateManager 接口里面的,判断证书是否有效。
result = VerifyCertificate(ICertificate cert,VerifyConfigData config);
if(无效)
{
抛出异常信息 : “登录用户数字证书验证失败 +失败原因”
}

Claims (1)

1.支持多种CA身份认证的方法,其特征在于,通过集成CA厂商的证书,抽取CA认证、加密的共性和相关性作为基本属性,并以此为依据抽象为数字证书认证和加密接口,然后通过实现这个接口来集成第三方数字证书,将这个实现封装为程序集部署到软件系统中;然后更改软件系统的全局配置文件,指定当前的CA为要使用的CA,集成第三方CA完成,
具体包括如下步骤:
a、抽象数字证书认证加密接口,
所述加密接口包含根据过滤条件获取数字证书对象的集合方法,验证数字证书是否合法,包括是否被吊销,是否过期,是否信任CA颁发方法,数字证书签名和验签方法;
b、基于上述加密接口实现第三方CA,
根据上述数字证书认证加密接口,结合要实现的第三方CA,将实现数字证书认证加密的程序封装为一个程序集;
c、部署程序集,
将上述程序集部署发布到软件系统中; 
d、指定认证CA,
更改服务端配置文件,在多个CA中,指定需要使用的CA;
e、CA用户绑定,
通过系统的用户功能,将CA用户与软件系统用户进行绑定;
f、CA认证登录验签,
用户插入数字证书的key,在登录界面选择该证书,登录系统,进行CA认证签名。
CN201110128667.6A 2011-05-18 2011-05-18 支持多种ca身份认证的方法 Active CN102231729B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201110128667.6A CN102231729B (zh) 2011-05-18 2011-05-18 支持多种ca身份认证的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201110128667.6A CN102231729B (zh) 2011-05-18 2011-05-18 支持多种ca身份认证的方法

Publications (2)

Publication Number Publication Date
CN102231729A CN102231729A (zh) 2011-11-02
CN102231729B true CN102231729B (zh) 2014-09-17

Family

ID=44844262

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201110128667.6A Active CN102231729B (zh) 2011-05-18 2011-05-18 支持多种ca身份认证的方法

Country Status (1)

Country Link
CN (1) CN102231729B (zh)

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102664758B (zh) * 2012-04-28 2015-03-25 沈阳通用软件有限公司 一种网络配置绑定与自动恢复的方法
CN102882858A (zh) * 2012-09-13 2013-01-16 江苏乐买到网络科技有限公司 一种用于云计算系统的外部数据传输方法
US9553730B2 (en) * 2013-06-02 2017-01-24 Microsoft Technology Licensing, Llc Certificating authority trust evaluation
CN103825741B (zh) * 2014-01-24 2017-03-15 安徽云盾信息技术有限公司 一种加密设备生产过程中注入带签名的证书的解决方法
CN104573475A (zh) * 2014-12-31 2015-04-29 乐视网信息技术(北京)股份有限公司 转码服务程序认证的方法和系统
CN106330812B (zh) * 2015-06-15 2019-07-05 腾讯科技(深圳)有限公司 文件安全性识别方法及装置
CN106982220B (zh) * 2017-04-21 2020-07-31 国信电子票据平台信息服务有限公司 一种数字证书调用方法及系统
CN107463806B (zh) * 2017-06-20 2020-08-14 国家计算机网络与信息安全管理中心 一种Android应用程序安装包的签名和验签方法
CN108200052B (zh) * 2017-12-29 2021-02-02 北京握奇智能科技有限公司 基于移动终端的数字签名方法、装置以及移动终端
CN108810002B (zh) * 2018-06-21 2020-02-21 北京智芯微电子科技有限公司 安全芯片的多ca应用系统及方法
CN108989055A (zh) * 2018-08-31 2018-12-11 密信技术(深圳)有限公司 兼容不同类型文件的签名和加密方法、装置及存储介质
CN111404859A (zh) * 2019-01-02 2020-07-10 中国移动通信有限公司研究院 一种客户端认证方法、装置和计算机可读存储介质
CN110166252B (zh) * 2019-05-20 2022-02-25 南京易联阳光信息技术股份有限公司 支持多种认证方式的数字证书统一认证网关
CN110942365A (zh) * 2019-09-14 2020-03-31 深圳家电网科技实业股份有限公司 一种大数据的电商交易方法及电商交易系统
WO2021077504A1 (zh) 2019-10-24 2021-04-29 华为技术有限公司 一种连续性场景下保护设备软件完整性的方法
CN112329031A (zh) * 2020-10-27 2021-02-05 国网福建省电力有限公司信息通信分公司 一种基于数据中台的数据权限控制系统

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4835111B2 (ja) * 2005-11-02 2011-12-14 富士ゼロックス株式会社 ジョブ処理システム及び画像読取装置
CN101925058B (zh) * 2009-06-16 2013-03-27 杭州华三通信技术有限公司 一种身份认证的方法、系统和鉴别器实体
CN101730097B (zh) * 2009-11-18 2012-10-10 中兴通讯股份有限公司 一种无线终端接入无线网络的方法及系统

Also Published As

Publication number Publication date
CN102231729A (zh) 2011-11-02

Similar Documents

Publication Publication Date Title
CN102231729B (zh) 支持多种ca身份认证的方法
CN108092982B (zh) 一种基于联盟链的数据存储方法及系统
CN102271042B (zh) 数字证书认证方法、系统、USB Key设备和服务器
CN101834860B (zh) 一种远程动态验证客户端软件完整性的方法
Chen et al. XAuth: Efficient privacy-preserving cross-domain authentication
CN104753881B (zh) 一种基于软件数字证书和时间戳的WebService安全认证访问控制方法
CN110069918A (zh) 一种基于区块链技术的高效双因子跨域认证方法
CN112765684B (zh) 区块链节点终端管理方法、装置、设备及存储介质
CN105099705B (zh) 一种基于usb协议的安全通信方法及其系统
CN114499895A (zh) 一种融合可信计算与区块链的数据可信处理方法及系统
CN104735054B (zh) 数字家庭设备可信接入平台及认证方法
CN107508847A (zh) 一种连接建立方法、装置和设备
CN104038478A (zh) 一种嵌入式平台身份验证可信网络连接方法和系统
CN101841525A (zh) 安全接入方法、系统及客户端
CN110381075B (zh) 基于区块链的设备身份认证方法和装置
CN105516980A (zh) 一种基于Restful架构的无线传感器网络令牌认证方法
CN104715183A (zh) 一种虚拟机运行时的可信验证方法和设备
EP3544226B1 (en) Unified secure device provisioning
TWI526871B (zh) Server, user device, and user device and server interaction method
US11362844B1 (en) Security device and methods for end-to-end verifiable elections
CN111211905A (zh) 一种基于无证书认证的Fabric联盟链成员身份管理方法
CN113259135B (zh) 用于检测数据防篡改的轻量级区块链通信认证装置及其方法
CN112436940A (zh) 一种基于零知识证明的物联网设备可信启动管理方法
CN109309645A (zh) 一种软件分发安全保护方法
CN104579687A (zh) 一种基于usbkey的csp实现方法

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 for invention or patent application
CB02 Change of applicant information

Address after: 250101 No. 1036 wave road, Shandong, Ji'nan

Applicant after: Langchao General Software Co., Ltd

Address before: 250101 Shandong Province, Ji'nan City hi tech Development Zone, Nga Road No. 1036

Applicant before: Shandong Universal Software Co., Ltd., Langchao Group Corp.

COR Change of bibliographic data

Free format text: CORRECT: APPLICANT; FROM: SHANDONG UNIVERSAL SOFTWARE CO., LTD., LANGCHAO GROUP CORP. TO: INSPUR GENERAL SOFTWARE CO., LTD.

C14 Grant of patent or utility model
GR01 Patent grant