[发明专利]一种基于消息验证技术的三方增强认证系统设计方法有效
申请号: | 202110941223.8 | 申请日: | 2021-08-17 |
公开(公告)号: | CN113676468B | 公开(公告)日: | 2023-06-06 |
发明(设计)人: | 高景生;孔凯薇;胡佳;郭笑笑;张坤;荣秋成;李纯昊 | 申请(专利权)人: | 北京计算机技术及应用研究所 |
主分类号: | H04L9/40 | 分类号: | H04L9/40;H04L9/32;H04L9/08 |
代理公司: | 中国兵器工业集团公司专利中心 11011 | 代理人: | 王雪芬 |
地址: | 100854*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 消息 验证 技术 增强 认证 系统 设计 方法 | ||
1.一种基于消息验证技术的三方增强认证系统设计方法,其特征在于,该方法中,将所述系统设计为包括终端认证代理、终端认证设备、身份认证服务器;
所述终端认证代理部署在用户终端和应用服务器上,部署在用户终端时,设计为用于提供身份认证的客户端代理功能;部署在应用服务器上时,设计为用于支持对应用身份认证和票据认证,终端认证代理包括认证代理服务模块、内核驱动模块、认证接口库;
所述认证代理服务模块作为应用侧认证代理服务,通过对外提供的接口,接收外部认证请求,向身份认证服务器发送认证数据,完成认证功能,认证服务代理模块具有对应用通信的加解密、调用身份认证服务器验证应用身份这些功能逻辑,实现终端认证代理与第三方应用之间的双向认证;
内核驱动模块,实现终端认证设备管理,对上接收认证服务调用的随机数生成、加解密、签名验签这些密码算法请求,对下调用终端认证设备,完成算法运算,返回结果;
认证接口库,作为第三方应用和终端桌面应用调用的公用接口,集成和兼容终端认证设备接口和应用身份认证接口;
所述身份认证服务器设计为具有第三方管理、秘钥对及共享消息秘钥生成功能,以及认证服务功能;
所述第三方管理功能是在对外提供认证前服务前,通过第三方应用管理,将应用信息添加到身份认证服务器中,在认证过程中对第三方应用身份进行确认,防止恶意冒用或中间劫持;
所述秘钥对及共享消息秘钥生成功能是为第三方应用生成共享消息秘钥msgKey以及两对公私钥对cPriKey/cPubKey、aPriKey/aPubKey,其中共享消息秘钥msgKey用于应用身份的验证;cPriKey/cPubKey、aPriKey/aPubKey分别用于与终端认证代理、身份认证服务器进行加密通信;
所述认证服务功能包括两方面,一方面是策略管理,另一方面是认证管理:
1)策略管理,将认证策略管理功能进行扩展,支持人员与应用的绑定,防止非法人员访问应用;同时增加或扩展已有黑白名单机制,将人员、应用纳入到认证的黑白名单管理;
2)认证管理:
a)验证应用身份:终端认证代理验证应用身份是调用身份认证服务器中相关接口完成验证;
b)应用票据生成:票据的数据结构中包含应用信息,确保当前票据是发给当前应用的;
c)票据的验证:在验证票据的时候首先对消息验证码进行验证,然后对终端认证设备进行验证以及基于解析的应用身份对消息验证码中识别的身份进行二次验证,接下来是基于策略进行检查,最后是票据本身信息的验证;
该系统实现的强三方认证工作方法包括以下步骤:
(1)认证前的准备工作
第三方应用在接入本系统进行认证前,通过身份认证服务器为其生成两对公私钥对cPriKey/cPubKey、aPriKey/aPubKey、消息秘钥msgKey,其中,cPriKey/cPubKey用于与终端认证代理之间进行交互,aPriKey/aPubKey用于与身份认证服务器进行交互,所述消息秘钥为第三方应用与身份认证服务器之间进行消息鉴别使用,所述消息鉴别的具体流程为:①将第三方应用的证书以离线方式发送给身份认证服务器,用于数据导出时加密;②身份认证服务器为当前应用生成身份标识appId、消息秘钥msgKey以及两对公私钥对cPriKey/cPubKey、aPriKey/aPubKey;③身份认证服务器使用第三方应用的证书中的公钥对步骤②生成的身份标识appId、消息秘钥msgKey以及两对公私钥对cPriKey/cPubKey、aPriKey/aPubKey进行加密,连同认证服务器证书,通过离线方式导出;④第三方应用收到cPriKey/cPubKey、aPriKey/aPubKey、消息秘钥msgKey数据后进行加密存储;
(2)强三方认证流程,包括以下步骤:
(1)终端认证代理利用终端认证设备,建立与身份认证服务器之间的安全通道完成双向认证;
(2)第三方应用在获取认证之前,发起与终端认证代理之间的安全通道;
(3)发送票据请求
建立安全通道后,第三方应用发起登录认证请求,向终端认证代理请求随机数;终端认证代理调用自身认证设备,生成随机数返回给第三方应用;第三方应用对随机数计算消息验证码,并将自身appId、随机数及消息验证码以票据请求的方式发送给终端认证代理;
(4)验证应用身份
终端认证代理收到获取票据请求后,提取第三方应用随机数及其消息验证码,并调用身份认证服务器对消息验证码进行验证;
(5)应用身份鉴别,身份认证服务器调用消息验证码进行验证,识别出应用身份,并返回应用appId给终端认证代理;
(6)获取票据
终端认证代理获取断言后,携带断言、应用appId向身份认证服务器发送获取票据请求;身份认证服务器收到票据请求后,调用本地密码卡,为第三方应用生成一个一次性票据,返回给终端认证代理;返回票据成功后,身份认证服务器在本地生成一份票据的描述,用于描述票据的终端认证代理身份信息以及应用身份信息,用于验证票据,同时便于异常行为追溯;
(7)票据签名与加密
终端认证代理收到认证票据后,对票据进行二次封装,增加自身信息签名及签名证书,加密后发送给第三方应用;
(8)生成消息验证码
第三方应用收到返回的票据,对数据进行运算,生成返回的票据的消息验证码,附在票据的尾部,然后利用身份认证服务器公钥,对票据及其消息验证码进行加密;
(9)验证票据
第三方应用通过调用身份认证服务器接口验证加密票据;身份认证服务器收到票据后,进行消息码运算,识别出应用appId’,同时调用密码卡接口,对终端认证代理加密的数据进行解密,提取票据内容,验证票据,同时比较票据中的应用appId与当前的应用appId’进行比对,验证应用身份,验证是否是从当前应用IP、端口发送的,以检测异常IP认证请求。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京计算机技术及应用研究所,未经北京计算机技术及应用研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110941223.8/1.html,转载请声明来源钻瓜专利网。