CN112242905A - 一种基于浏览器的注册接口实现数据通讯的方法和系统 - Google Patents
一种基于浏览器的注册接口实现数据通讯的方法和系统 Download PDFInfo
- Publication number
- CN112242905A CN112242905A CN202011431771.8A CN202011431771A CN112242905A CN 112242905 A CN112242905 A CN 112242905A CN 202011431771 A CN202011431771 A CN 202011431771A CN 112242905 A CN112242905 A CN 112242905A
- Authority
- CN
- China
- Prior art keywords
- user
- data
- information
- relying party
- name
- 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
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3236—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using cryptographic hash functions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/25—Integrating or interfacing systems involving database management systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/44—Program or device authentication
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3247—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3263—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Theoretical Computer Science (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Data Mining & Analysis (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明公开了一种基于浏览器的注册接口实现数据通讯的方法和系统,涉及通信领域。所述方法包括依赖方根据脚本应用的请求向脚本应用发送待处理数据和挑战码,脚本应用根据待处理数据组织用户信息和依赖方信息,调用浏览器的注册接口将用户信息、依赖方信息和挑战码传给浏览器,认证设备从浏览器发送的注册数据中获取用户信息和依赖方信息并解析得到待处理数据,对待处理数据执行预设操作得到已处理数据,将已处理数据作为扩展项生成认证设备数据,根据认证设备数据生成注册响应并发送给脚本应用,依赖方从脚本应用发送的注册响应中获取已处理数据。本发明的有益效果在于实现了浏览器在数据通讯过程中的去插件化。
Description
技术领域
本发明涉及通信领域,尤其涉及一种基于浏览器的注册接口实现数据通讯的方法和系统。
背景技术
数据通讯是把数据的处理和传输合为一体,实现数字信息的接收、存储、处理和传输,并对信息流加以控制、校验和管理的一种通讯形式。为了确保数据通讯的安全性,数据通讯过程需要认证设备的参与。
现有技术中,浏览器与认证设备之间的数据通讯需要通过插件来实现,这就需要浏览器安装相应的插件。然而安装插件不仅给用户带来了极大的不便,也给客户端的开发和维护带来了麻烦,因此,如何在数据通讯过程中实现去插件化成为一个亟待解决的技术问题。
发明内容
为解决现有技术的不足,提供了一种基于浏览器的注册接口实现数据通讯的方法和系统。
第一方面,本发明提供了一种基于浏览器的注册接口实现数据通讯的方法,包括如下步骤:
步骤101:依赖方根据脚本应用发送的获取待处理数据请求向所述脚本应用发送待处理数据和挑战码;
步骤102:所述脚本应用根据接收到的待处理数据组织用户信息和依赖方信息,调用浏览器的注册接口,给所述注册接口传入所述用户信息、所述依赖方信息和所述挑战码;
步骤103:认证设备从所述浏览器根据所述注册接口传入的所述用户信息、所述依赖方信息和所述挑战码生成的注册数据中获取所述用户信息、所述依赖方信息、算法信息和客户端数据哈希值,解析所述用户信息和所述依赖方信息得到待处理数据,对所述待处理数据执行预设操作得到已处理数据,将所述已处理数据作为扩展项生成认证设备数据;
步骤104:所述认证设备使用认证设备私钥和所述算法信息中的签名算法标识对应的签名算法对所述客户端数据哈希值和所述认证设备数据进行签名得到第一签名结果,获取证书链,组织证书链、所述第一签名结果和所述算法信息中的签名算法标识得到符合预设认证声明格式的认证声明,根据预设认证声明格式、所述认证设备数据和所述认证声明生成注册响应,将所述注册响应发送给所述浏览器;
步骤105:所述脚本应用将所述浏览器的注册接口返回的注册响应发送给所述依赖方;
步骤106:所述依赖方解析接收到的注册响应得到认证设备数据,从所述认证设备数据中获取所述已处理数据。
第二方面,本发明提供了一种基客户端向服务器注册的过程实现数据通讯的系统,包括:依赖方、脚本应用和认证设备;
所述依赖方包括:第一发送模块、第一解析模块和第一获取模块;
所述第一发送模块,用于根据脚本应用发送的获取待处理数据请求向所述脚本应用发送待处理数据和挑战码;
所述第一解析模块,用于解析接收到的注册响应得到认证设备数据;
所述第一获取模块,用于从所述第一解析模块解析接收到的注册响应得到的认证设备数据中获取已处理数据;
所述脚本应用包括:第一组织模块、第一调用模块和第二发送模块;
所述第一组织模块,用于根据接收到的待处理数据组织用户信息和依赖方信息;
所述第一调用模块,用于调用浏览器的注册接口将所述用户信息、所述依赖方信息和所述挑战码传给所述浏览器;
所述第二发送模块,用于将所述浏览器的注册接口返回的注册响应发送给所述依赖方;
所述认证设备包括:第二获取模块、第二解析模块、第一生成模块、第一作为模块、第一签名模块、第二组织模块、第二生成模块和第三发送模块;
所述第二获取模块,用于从所述浏览器根据所述注册接口传入的所述用户信息、所述依赖方信息和所述挑战码生成的注册数据中获取所述用户信息、所述依赖方信息、算法信息和客户端数据哈希值;
所述第二解析模块,用于解析所述第二获取模块获取的用户信息和依赖方信息得到待处理数据;
所述第一生成模块,用于对所述待处理数据执行预设操作得到已处理数据;
所述第一作为模块,用于将所述已处理数据作为扩展项生成认证设备数据;
所述第一签名模块,用于使用认证设备私钥和所述算法信息中的签名算法标识对应的签名算法对所述客户端数据哈希值和所述认证设备数据进行签名得到第一签名结果;
所述第二组织模块,用于获取证书链,组织证书链、所述第一签名结果和所述算法信息中的签名算法标识得到符合预设认证声明格式的认证声明;
所述第二生成模块,用于根据预设认证声明格式、所述认证设备数据和所述认证声明生成注册响应;
所述第三发送模块,用于将所述第二生成模块生成的注册响应发送给所述浏览器。
本发明与现有技术相比,至少具有以下优点:
本发明提供的一种基于浏览器的注册接口实现数据通讯的方法和系统,浏览器无需安装插件即可实现将待处理的通讯数据下发给认证设备并接收认证设备返回的处理结果,实现了浏览器在数据通讯过程中的去插件化。
附图说明
图1为本发明实施例1提供的一种基于浏览器的注册接口实现数据通讯的方法流程图;
图2为本发明实施例2提供的一种基于浏览器的注册接口实现数据通讯的方法流程图;
图3为本发明实施例2提供的一种基于浏览器的注册接口实现数据通讯的方法流程图;
图4为本发明实施例3提供的一种基于浏览器的注册接口实现数据通讯的方法流程图;
图5为本发明实施例3提供的一种基于浏览器的注册接口实现数据通讯的方法流程图;
图6为本发明实施例4提供的一种基于浏览器的注册接口实现数据通讯的系统模块框图。
具体实施方式
本申请提出一种基于浏览器的注册接口实现数据通讯的方法和系统,下面结合附图,对本申请具体实施方式进行详细说明。所述实施例的示例在附图中示出。下面通过参考附图描述的实施例是示例性的,仅用于解释本申请,而不能解释为对本申请的限制。
本技术领域技术人员可以理解,除非另外定义,这里使用的所有术语(包括技术术语和科学术语),具有与本申请所属领域中的普通技术人员的一般理解相同的意义。还应该理解的是,诸如通用字典中定义的那些术语,应该被理解为具有与现有技术的上下文中的意义一致的意义,并且除非像这里一样被特定定义,否则不会用理想化或过于正式的含义来解释。
为使本发明的目的、技术方案和优点更加清楚,下面结合附图对本发明实施方式作进一步地详细描述。
需说明的是,Web Authentication API(简称:WebAuthn)是浏览器提供的一套用于完成注册认证的应用接口,本实施例中涉及的注册接口为WebAuthn接口。
实施例1
本发明实施例1提供了一种基于浏览器的注册接口实现数据通讯的方法,适用于包含依赖方、脚本应用以及认证设备的系统,其中,所述脚本应用来自于依赖方,运行在浏览器上,所述浏览器安装在PC(Personal Computer)设备上;所述浏览器包含WebAuthn接口(也称:注册接口),所述认证设备与WebAuthn接口兼容,如图1所示,包括如下步骤:
步骤101:依赖方根据脚本应用发送的获取待处理数据请求向脚本应用发送待处理数据和挑战码;
步骤102:脚本应用根据接收到的待处理数据组织用户信息和依赖方信息,调用浏览器的注册接口,给注册接口传入用户信息、依赖方信息和挑战码;
步骤103:认证设备从浏览器根据注册接口传入的用户信息、依赖方信息和挑战码生成的注册数据中获取用户信息、依赖方信息、算法信息和客户端数据哈希值,解析用户信息和依赖方信息得到待处理数据,对待处理数据执行预设操作得到已处理数据,将已处理数据作为扩展项生成认证设备数据;
步骤104:认证设备使用认证设备私钥和算法信息中的签名算法标识对应的签名算法对客户端数据哈希值和认证设备数据进行签名得到第一签名结果,获取证书链,组织证书链、第一签名结果和算法信息中的签名算法标识得到符合预设认证声明格式的认证声明,根据预设认证声明格式、认证设备数据和认证声明生成注册响应,将注册响应发送给浏览器;
步骤105:脚本应用将浏览器的注册接口返回的注册响应发送给依赖方;
步骤106:依赖方解析接收到的注册响应得到认证设备数据,从认证设备数据中获取已处理数据。
可选地,本实施例中,步骤101之前还包括:
步骤A1:脚本应用根据用户输入的登录信息向依赖方发送登录请求;
步骤A2:依赖方接收脚本应用发送的登录请求,解析登录请求得到登录信息,对登录信息进行验证,向脚本应用发送登录响应;
步骤A3:脚本应用接收依赖方发送的登录响应,判断登录响应的类型,如为登录成功响应,向依赖方发送获取待处理数据请求,如为登录失败响应,结束。
可选地,本实施例中,步骤101具体为:
步骤B1:依赖方接收脚本应用发送的获取待处理数据请求,获取待处理数据,生成挑战码,向脚本应用发送待处理数据和挑战码。
可选地,本实施例中,步骤103中,将已处理数据作为扩展项生成认证设备数据具体为:认证设备将已处理数据作为扩展项,生成凭证密钥对和用户凭证标识,获取设备唯一标识,按照认证设备数据格式组织设备唯一标识、凭证密钥对中的凭证公钥、用户凭证标识和扩展项得到认证设备数据。
可选地,本实施例中,步骤105还包括:脚本应用将浏览器的注册接口返回的客户端数据发送给依赖方。
可选地,本实施例中,步骤106之前还包括:依赖方验证客户端数据,如验证通过,执行步骤106,如验证未通过,报错结束。
可选地,本实施例中,步骤102中,用户信息包括:用户名和用户显示名;依赖方信息包括:依赖方名;
脚本应用根据接收到的待处理数据组织用户信息和依赖方信息具体为:脚本应用将待处理数据设置用户信息的用户名和/或用户显示名和/或依赖方信息的依赖方名,根据设置后的用户名和用户显示名生成用户信息,根据设置后的依赖方名生成依赖方信息。
可选地,本实施例中,待处理数据具体为待签名数据,待签名数据包括:证书DN、用户密码、待签名原文、认证设备屏显信息和哈希算法名;脚本应用根据接收到的待处理数据组织用户信息和依赖方信息具体为:脚本应用根据证书DN和用户密码生成用户名,根据待签名原文和认证设备屏显信息生成用户显示名,根据哈希算法名生成依赖方名,获取预置的用户ID和依赖方ID,根据用户ID、用户名和用户显示名组织用户信息,根据依赖方ID和依赖方名组织依赖方信息;
解析用户信息和依赖方信息得到待处理数据包括:认证设备解析用户信息得到用户ID、用户名和用户显示名,解析用户名得到证书DN和用户密码,解析用户显示名得到待签名原文和认证设备屏显信息,解析依赖方信息得到依赖方ID和依赖方名,解析依赖方名得到哈希算法名。
可选地,本实施例中,步骤103中,对待处理数据执行预设操作得到已处理数据包括:
步骤D1:认证设备显示认证设备屏显信息,等待接收用户对认证设备屏显信息的确认信息,当接收到用户对认证设备屏显信息的确认信息时,执行步骤D2:
步骤D2:认证设备根据证书DN查找签名证书私钥,并根据哈希算法名查找哈希算法,如均查找到,根据待签名原文和认证设备屏显信息生成待签名报文,使用根据哈希算法名查找到的哈希算法对待签名报文进行哈希运算得到待签名报文哈希值;
步骤D3:认证设备验证用户密码,当验证通过时,使用根据证书DN查找到的签名证书私钥对待签名报文哈希值进行签名得到第二签名结果,将第二签名结果作为已处理数据。
可选地,本实施例中,待处理数据具体为待验证的PIN码;脚本应用根据接收到的待处理数据组织用户信息和依赖方信息具体为:脚本应用根据待验证的PIN码生成用户显示名,获取预置的用户名、用户ID、依赖方名和依赖方ID,根据用户ID、用户名和用户显示名组织用户信息,根据依赖方ID和依赖方名组织依赖方信息;
解析用户信息和依赖方信息得到待处理数据,对待处理数据执行预设操作得到已处理数据包括:
步骤C1:认证设备解析用户信息得到用户ID、用户名和用户显示名,解析用户显示名得到待验证的PIN码;
步骤C2:认证设备获取保存的PIN码,根据认证设备保存的PIN码验证待验证的PIN码并生成验证结果,将验证结果作为已处理数据。
本发明提供的一种基于浏览器的注册接口实现数据通讯的方法,浏览器无需安装插件即可实现将待处理的通讯数据下发给认证设备并接收认证设备返回的处理结果,实现了浏览器在数据通讯过程中的去插件化。
实施例2
本发明实施例2提供了一种基于浏览器的注册接口实现数据通讯的方法,适用于包含依赖方、脚本应用以及认证设备的系统,其中,所述脚本应用来自于依赖方,运行在浏览器上,所述浏览器安装在PC(Personal Computer)设备上;所述浏览器包含WebAuthn接口(也称:注册接口),所述认证设备与WebAuthn接口兼容,如图2和图3所示,该方法包括如下步骤:
步骤200:脚本应用根据用户输入的登录信息向依赖方发送登录请求;
具体地,本实施例中,当用户在浏览器的地址栏中输入相应的网址时,浏览器根据用户输入的网址从依赖方下载所述网址对应的网页,该网页包含脚本应用,当用户在下载的网页上输入登录信息,点击网页上的登录按钮时,浏览器运行该网页上的脚本应用将包含登录信息的登录请求发送给依赖方;
可选地,本实施例中,登录信息包括:登录账号和登录密码;其中,登录账号和登录密码已在依赖方注册过;
可选地,本实施例中,依赖方具体为:网站;
步骤201:依赖方接收脚本应用发送的登录请求,解析登录请求得到登录信息,对登录信息进行验证,向脚本应用发送登录响应;
可选地,本实施例中,对登录信息进行验证具体为:依赖方根据登录请求中的登录账号查找所述登录账号对应的登录密码,比对查找到的登录密码与登录请求中的登录密码,如比对一致,则向脚本应用发送登录成功响应,如比对不一致,则向脚本应用发送登录失败响应。
步骤202:当脚本应用接收到依赖方发送的登录成功响应时,向依赖方发送包含客户端标识信息的获取待签名数据请求;
可选地,本实施例中,客户端标识信息包括第一依赖方标识和第一用户标识;
步骤203:依赖方接收脚本应用发送的获取待签名数据请求,获取待签名数据,生成第一挑战码,将第一挑战码和客户端标识信息对应保存,向脚本应用发送待签名数据和第一挑战码;所述待签名数据包括证书DN、用户密码、待签名原文、认证设备屏显信息和哈希算法名;
步骤204:脚本应用接收依赖方发送的待签名数据和第一挑战码 ,解析待签名数据得到证书DN、用户密码、待签名原文、认证设备屏显信息和哈希算法名;
步骤205:脚本应用根据证书DN和用户密码组织用户名,根据签名原文和认证设备屏显信息组织用户显示名,根据哈希算法名组织依赖方名;
步骤206:脚本应用根据用户名、用户显示名和用户ID生成用户信息,根据依赖方名和依赖方ID生成依赖方信息,调用浏览器的注册接口将用户信息、依赖方信息和第一挑战码传给浏览器;
例如:浏览器的注册接口具体为:navigator.credentials.create();
例如:用户名为:"name": "DN(CN=qubo1,C=CN)12345678";
用户显示名为:"displayName": "sha1<xmlversion=\"1.0\"encoding=\"GBK\"><TradeData><fieldname=\"\u6c47\u6b3e\u4eba\u540d\u79f0\"value=\"\u6c88\u4ef2\u8363\"DisplayOnScreen=\"TRUE\"/><fieldname=\"\u6c47\u6b3e\u8d26\u6237\"value=\"6229310118888888888\"DisplayOnScreen=\"TRUE\"/><fieldname=\"\u91d1\u989d\"value=\"123.00\u5143\"DisplayOnScreen=\"TRUE\"/><fieldname=\"\u5927\u5199\u91d1\u989d\"value=\"\u58f9\u4f70\u8d30\u62fe\u53c1\u5143\u6574\"DisplayOnScreen=\"TRUE\"/><fieldname=\"\u6536\u6b3e\u4eba\u540d\u79f0\"value=\"\u6731\u91cd\u516b\"DisplayOnScreen=\"TRUE\"/><fieldname=\"\u6536\u6b3e\u8d26\u6237\"value=\"6229310116666666666\" DisplayOnScreen=\"TRUE\"/></TradeData>"};
用户ID为:"id":h'68747470733A2F2F6578616D706C652E636F6D2F7573657249636F6E2E706E67';
根据用户名、用户显示名和用户ID生成的用户信息具体为:
{"id":h'68747470733A2F2F6578616D706C652E636F6D2F7573657249636F6E2E706E67', "icon": "https://example.com/userIcon.png", "name": "DN(CN=qubo1,C=CN)12345678", "displayName": "sha1<xmlversion=\"1.0\"encoding=\"GBK\"><TradeData><fieldname=\"\u6c47\u6b3e\u4eba\u540d\u79f0\"value=\"\u6c88\u4ef2\u8363\"DisplayOnScreen=\"TRUE\"/><fieldname=\"\u6c47\u6b3e\u8d26\u6237\"value=\"6229310118888888888\"DisplayOnScreen=\"TRUE\"/><fieldname=\"\u91d1\u989d\"value=\"123.00\u5143\"DisplayOnScreen=\"TRUE\"/><fieldname=\"\u5927\u5199\u91d1\u989d\"value=\"\u58f9\u4f70\u8d30\u62fe\u53c1\u5143\u6574\"DisplayOnScreen=\"TRUE\"/><fieldname=\"\u6536\u6b3e\u4eba\u540d\u79f0\"value=\"\u6731\u91cd\u516b\"DisplayOnScreen=\"TRUE\"/><fieldname=\"\u6536\u6b3e\u8d26\u6237\"value=\"6229310116666666666\" DisplayOnScreen=\"TRUE\"/></TradeData>"};
依赖方名为:"name":"\u8bf7\u6838\u5bf9\u4ea4\u6613\u4fe1\u606f\uff0c\u82e5\u4fe1\u606f\u65e0\u8bef\u8bf7\u70b9\u51fb\"\u786e\u5b9a\"\uff0c\u5426\u5219\u70b9\u51fb\"\u53d6\u6d88\""};
依赖方ID为:"id": "localhost", "icon": https://example.com/rpIcon.png;
根据依赖方名和依赖方ID生成的依赖方信息具体为:
{"id": "localhost", "icon": "https://example.com/rpIcon.png", "name":"\u8bf7\u6838\u5bf9\u4ea4\u6613\u4fe1\u606f\uff0c\u82e5\u4fe1\u606f\u65e0\u8bef\u8bf7\u70b9\u51fb\"\u786e\u5b9a\"\uff0c\u5426\u5219\u70b9\u51fb\"\u53d6\u6d88\""};
步骤207:浏览器根据用户信息,依赖方信息、第一挑战码生成客户端数据并保存,使用预设哈希算法对客户端数据进行哈希运算得到客户端数据哈希值,获取算法信息,根据客户端数据哈希值、用户信息、依赖方信息和算法信息生成注册数据,将注册数据发送给认证设备;
可选地,本实施例中,客户端数据包括:客户端数据类型、第一挑战码、客户端标识信息、可信域和哈希算法;
可选地,本实施例中,算法信息包括:签名算法标识和签名类型;
例如:签名算法信息具体为:[{"alg": -7, "type": "public-key"}];
根据客户端数据、用户信息、依赖方信息和签名算法信息生成的注册数据具体为:
{1:h'896EB797322142D7AB5BB7ED7710B087A15BF2F582A8CA76304CFEF6EA9D15F6',2:{"id":"localhost","icon":"https://example.com/rpIcon.png","name":"\u8bf7\u6838\u5bf9\u4ea4\u6613\u4fe1\u606f\uff0c\u82e5\u4fe1\u606f\u65e0\u8bef\u8bf7\u70b9\u51fb\"\u786e\u5b9a\"\uff0c\u5426\u5219\u70b9\u51fb\"\u53d6\u6d88\""},3:{"id":h'68747470733A2F2F6578616D706C652E636F6D2F7573657249636F6E2E706E67',"icon":"https://example.com/userIcon.png", "name": "DN(CN=qubo1,C=CN)12345678", "displayName": "sha1<xmlversion=\"1.0\"encoding=\"GBK\"><TradeData><fieldname=\"\u6c47\u6b3e\u4eba\u540d\u79f0\"value=\"\u6c88\u4ef2\u8363\"DisplayOnScreen=\"TRUE\"/><fieldname=\"\u6c47\u6b3e\u8d26\u6237\"value=\"6229310118888888888\"DisplayOnScreen=\"TRUE\"/><fieldname=\"\u91d1\u989d\"value=\"123.00\u5143\"DisplayOnScreen=\"TRUE\"/><fieldname=\"\u5927\u5199\u91d1\u989d\"value=\"\u58f9\u4f70\u8d30\u62fe\u53c1\u5143\u6574\"DisplayOnScreen=\"TRUE\"/><fieldname=\"\u6536\u6b3e\u4eba\u540d\u79f0\"value=\"\u6731\u91cd\u516b\"DisplayOnScreen=\"TRUE\"/><fieldname=\"\u6536\u6b3e\u8d26\u6237\"value=\"6229310116666666666\" DisplayOnScreen=\"TRUE\"/></TradeData>"},4: [{"alg": -7, "type": "public-key"}]};
步骤208:认证设备接收浏览器发送的注册数据,解析注册数据得到客户端数据哈希值、用户信息、依赖方信息和算法信息,解析用户信息得到用户ID、用户名和用户显示名,解析用户名得到证书DN和用户密码,解析用户显示名得到签名原文和认证设备屏显信息, 解析依赖方信息得到依赖方ID和依赖方名,解析依赖方名的到哈希算法名;
步骤209:认证设备显示认证设备屏显信息,等待接收用户对认证设备屏显信息的确认信息,当接收到用户对认证设备屏显信息的确认信息时,执行步骤210;
可选地,本实施例中,用户可以通过输入PIN码、触发认证设备的按键、触摸认证设备的指纹采集模块等方式向认证设备发送对认证设备屏显信息的确认信息;
步骤210:认证设备根据证书DN查找所述证书DN对应的签名证书私钥,根据哈希算法名查找所述哈希算法名对应的哈希算法,如均查找到,根据待签名原文和认证设备屏显信息生成待签名报文;
步骤211:认证设备使用哈希算法名对应的哈希算法对待签名报文进行哈希运算得到待签名报文哈希值;
步骤212:认证设备验证用户密码,当验证通过时,根据证书DN对应的签名证书私钥对待签名报文哈希值进行签名得到第一签名结果,将第一签名结果作为扩展项;
例如: 第一签名结果具体为:8C01D11BEBCC94E0D6965C779575633FE6FBF4C5C1FB3B6AA5CF692A4D80E4524DC51514F6230BEABEEEB92BC324C69F84674F91E1C3D1825881AD6FB095EC3C13B979060DACA8632C43BCCC27E7FCFE190AB4B60560DD7E51D542889FB1A51D51261F03F9A1AAD2D7BD260F23232BB6A5B3068E47DF23232BB6A5B3068E47D5;
步骤213:认证设备生成凭证密钥对和用户凭证标识,获取设备唯一标识,按照认证设备数据格式组织设备唯一标识、凭证密钥对中的凭证公钥、用户凭证标识和扩展项得到认证设备数据;
例如:设备唯一标识具体为:3E22415D7FDF4EA48A0CDD60C4249B9D;
凭证密钥对中的凭证公钥具体为:A5010203262001215820F3E75EE0D651BA5C780DA97ADBD2EF8B019B4E5CE80EDB7C5F97F0D79AFE8B112258207E1C3D1847539BD045BE683CD8FFC3B8FE5CC78F75DC345E8B4863C4B550CCCA;
用户凭证标识具体为:707875A0708465A419F601E1E143D1F184674F916CF012A825881AD6FB095EC3C13B979060DACA8632C43BCCC27E7FCFE190AB4B60560DD7E51D542889FB1A51D51261F03F9A1AAD2D7BD260F23232BB6A5B3068E47D9541EB7169F78769D0D8;
得到的认证设备数据具体为:2: h'E45329D03A2068D1CAF7F7BB0AE954E6B0E6259745F32F4829F750F05011F9C2C5000007983E22415D7FDF4EA48A0CDD60C4249B9D0060707875A0708465A419F601E1E143D1F184674F916CF012A825881AD6FB095EC3C13B979060DACA8632C43BCCC27E7FCFE190AB4B60560DD7E51D542889FB1A51D51261F03F9A1AAD2D7BD260F23232BB6A5B3068E47D9541EB7169F78769D0D8A5010203262001215820F3E75EE0D651BA5C780DA97ADBD2EF8B019B4E5CE80EDB7C5F97F0D79AFE8B112258207E1C3D1847539BD045BE683CD8FFC3B8FE5CC78F75DC345E8B4863C4B550CCCA8C01D11BEBCC94E0D6965C779575633FE6FBF4C5C1FB3B6AA5CF692A4D80E4524DC51514F6230BEABEEEB92BC324C69F84674F91E1C3D1825881AD6FB095EC3C13B979060DACA8632C43BCCC27E7FCFE190AB4B60560DD7E51D542889FB1A51D51261F03F9A1AAD2D7BD260F23232BB6A5B3068E47DF23232BB6A5B3068E47D5';
步骤214:认证设备获取认证设备私钥,使用认证设备私钥和算法信息中的签名算法标识对应的签名算法对客户端数据哈希值和认证设备数据进行签名得到第二签名结果,获取证书链,根据证书链、第二签名结果和算法信息中的签名算法标识生成符合预设认证声明格式的认证声明;
例如:签名算法信息中的签名算法具体为:"alg": -7;
第二签名结果具体为:"sig": h'3044022044D5B113024F582857F10A6490824131FCE10B5449331483AB96FF5D04A99E7902205B0C5A5BBBD757D735D165DB2C31604D7EDAB498CA8EA1B0DB68574C8E76BD22';
认证设备私钥的证书链具体为:"x5c": [h'3082023C308201E2A00302010202101DF2B55A51DC4B6885A3D99E697FED18300A06082A8648CE3D0403023049310B3009060355040613025553311D301B060355040A0C144665697469616E20546563686E6F6C6F67696573311B301906035504030C124665697469616E204649444F2043412030363020170D3139303932323030303030305A180F32303334303932313233353935395A3069310B3009060355040613025553311D301B060355040A0C144665697469616E20546563686E6F6C6F6769657331223020060355040B0C1941757468656E74696361746F72204174746573746174696F6E3117301506035504030C0E4654204649444F322030353230693059301306072A8648CE3D020106082A8648CE3D0301070342000474A4636C9A498F61E81E9434603208DFCA75F76927BFCB1B8ECC2BF29B61CD220E7781D893ECD8FE48FAC5666187672D35AE4707017E83B87E33CEF71DA0220BA38189308186301D0603551D0E04160414561DD7D67991EB7B842A88FB529305A04AFC9F0A301F0603551D2304183016801432AE8DC45CC5CD8275302385FEB7C26A43124E40300C0603551D130101FF040230003013060B2B0601040182E51C0201010404030205203021060B2B0601040182E51C010104041204103E22415D7FDF4EA48A0CDD60C4249B9D300A06082A8648CE3D0403020348003045022073AE72D10E7D071AAE4362979224D0B86152F61B8EDD6AA284680BEC3ECB05C1022100B4CE642B34B3A7ACE79C7AE5951FBF130E3EC780767C67C11904660AEF3E36D8', h'308201FA308201A0A003020102021018152B41B743AE6DB41599C3B17D820B300A06082A8648CE3D040302304B310B3009060355040613025553311D301B060355040A0C144665697469616E20546563686E6F6C6F67696573311D301B06035504030C144665697469616E204649444F20526F6F742043413020170D3138303532303030303030305A180F32303338303531393233353935395A3049310B3009060355040613025553311D301B060355040A0C144665697469616E20546563686E6F6C6F67696573311B301906035504030C124665697469616E204649444F2043412030363059301306072A8648CE3D020106082A8648CE3D03010703420004EE1AF2A0A6B9E89B5A9A50A7691256255332EA88AD83CD08223B5B930E4B69EA88000C6ED4996A02753D55609E4B748D94E5DA61A86EAAB6C9ACBCD7C5DA487CA3663064301D0603551D0E0416041432AE8DC45CC5CD8275302385FEB7C26A43124E40301F0603551D230418301680144BBD872611AD1C89CF0458BE70D2088C6B1623B730120603551D130101FF040830060101FF020100300E0603551D0F0101FF040403020106300A06082A8648CE3D0403020348003045022023C7AFD70ADDF6650A4AA3471E03792A0674AF3669C80D459919729DA6436023022100C510973AC92376BB2877930E34DD8773B53B4F38F7D4288AB9A616E32F170D80'];
生成的认证声明具体为:
{"alg": -7, "sig": h'3044022044D5B113024F582857F10A6490824131FCE10B5449331483AB96FF5D04A99E7902205B0C5A5BBBD757D735D165DB2C31604D7EDAB498CA8EA1B0DB68574C8E76BD22', "x5c": [h'3082023C308201E2A00302010202101DF2B55A51DC4B6885A3D99E697FED18300A06082A8648CE3D0403023049310B3009060355040613025553311D301B060355040A0C144665697469616E20546563686E6F6C6F67696573311B301906035504030C124665697469616E204649444F2043412030363020170D3139303932323030303030305A180F32303334303932313233353935395A3069310B3009060355040613025553311D301B060355040A0C144665697469616E20546563686E6F6C6F6769657331223020060355040B0C1941757468656E74696361746F72204174746573746174696F6E3117301506035504030C0E4654204649444F322030353230693059301306072A8648CE3D020106082A8648CE3D0301070342000474A4636C9A498F61E81E9434603208DFCA75F76927BFCB1B8ECC2BF29B61CD220E7781D893ECD8FE48FAC5666187672D35AE4707017E83B87E33CEF71DA0220BA38189308186301D0603551D0E04160414561DD7D67991EB7B842A88FB529305A04AFC9F0A301F0603551D2304183016801432AE8DC45CC5CD8275302385FEB7C26A43124E40300C0603551D130101FF040230003013060B2B0601040182E51C0201010404030205203021060B2B0601040182E51C010104041204103E22415D7FDF4EA48A0CDD60C4249B9D300A06082A8648CE3D0403020348003045022073AE72D10E7D071AAE4362979224D0B86152F61B8EDD6AA284680BEC3ECB05C1022100B4CE642B34B3A7ACE79C7AE5951FBF130E3EC780767C67C11904660AEF3E36D8', h'308201FA308201A0A003020102021018152B41B743AE6DB41599C3B17D820B300A06082A8648CE3D040302304B310B3009060355040613025553311D301B060355040A0C144665697469616E20546563686E6F6C6F67696573311D301B06035504030C144665697469616E204649444F20526F6F742043413020170D3138303532303030303030305A180F32303338303531393233353935395A3049310B3009060355040613025553311D301B060355040A0C144665697469616E20546563686E6F6C6F67696573311B301906035504030C124665697469616E204649444F2043412030363059301306072A8648CE3D020106082A8648CE3D03010703420004EE1AF2A0A6B9E89B5A9A50A7691256255332EA88AD83CD08223B5B930E4B69EA88000C6ED4996A02753D55609E4B748D94E5DA61A86EAAB6C9ACBCD7C5DA487CA3663064301D0603551D0E0416041432AE8DC45CC5CD8275302385FEB7C26A43124E40301F0603551D230418301680144BBD872611AD1C89CF0458BE70D2088C6B1623B730120603551D130101FF040830060101FF020100300E0603551D0F0101FF040403020106300A06082A8648CE3D0403020348003045022023C7AFD70ADDF6650A4AA3471E03792A0674AF3669C80D459919729DA6436023022100C510973AC92376BB2877930E34DD8773B53B4F38F7D4288AB9A616E32F170D80']};
步骤215:认证设备根据认证设备数据、预设认证声明格式和认证声明生成注册响应,将注册响应发送给浏览器;
例如:预设认证声明格式为:1: "packed";
生成的注册响应具体为:{1: "packed", 2: h'E45329D03A2068D1CAF7F7BB0AE954E6B0E6259745F32F4829F750F05011F9C2C5000007983E22415D7FDF4EA48A0CDD60C4249B9D0060707875A0708465A419F601E1E143D1F184674F916CF012A825881AD6FB095EC3C13B979060DACA8632C43BCCC27E7FCFE190AB4B60560DD7E51D542889FB1A51D51261F03F9A1AAD2D7BD260F23232BB6A5B3068E47D9541EB7169F78769D0D8A5010203262001215820F3E75EE0D651BA5C780DA97ADBD2EF8B019B4E5CE80EDB7C5F97F0D79AFE8B112258207E1C3D1847539BD045BE683CD8FFC3B8FE5CC78F75DC345E8B4863C4B550CCCA8C01D11BEBCC94E0D6965C779575633FE6FBF4C5C1FB3B6AA5CF692A4D80E4524DC51514F6230BEABEEEB92BC324C69F84674F91E1C3D1825881AD6FB095EC3C13B979060DACA8632C43BCCC27E7FCFE190AB4B60560DD7E51D542889FB1A51D51261F03F9A1AAD2D7BD260F23232BB6A5B3068E47DF23232BB6A5B3068E47D5', 3:{"alg": -7, "sig": h'3044022044D5B113024F582857F10A6490824131FCE10B5449331483AB96FF5D04A99E7902205B0C5A5BBBD757D735D165DB2C31604D7EDAB498CA8EA1B0DB68574C8E76BD22', "x5c": [h'3082023C308201E2A00302010202101DF2B55A51DC4B6885A3D99E697FED18300A06082A8648CE3D0403023049310B3009060355040613025553311D301B060355040A0C144665697469616E20546563686E6F6C6F67696573311B301906035504030C124665697469616E204649444F2043412030363020170D3139303932323030303030305A180F32303334303932313233353935395A3069310B3009060355040613025553311D301B060355040A0C144665697469616E20546563686E6F6C6F6769657331223020060355040B0C1941757468656E74696361746F72204174746573746174696F6E3117301506035504030C0E4654204649444F322030353230693059301306072A8648CE3D020106082A8648CE3D0301070342000474A4636C9A498F61E81E9434603208DFCA75F76927BFCB1B8ECC2BF29B61CD220E7781D893ECD8FE48FAC5666187672D35AE4707017E83B87E33CEF71DA0220BA38189308186301D0603551D0E04160414561DD7D67991EB7B842A88FB529305A04AFC9F0A301F0603551D2304183016801432AE8DC45CC5CD8275302385FEB7C26A43124E40300C0603551D130101FF040230003013060B2B0601040182E51C0201010404030205203021060B2B0601040182E51C010104041204103E22415D7FDF4EA48A0CDD60C4249B9D300A06082A8648CE3D0403020348003045022073AE72D10E7D071AAE4362979224D0B86152F61B8EDD6AA284680BEC3ECB05C1022100B4CE642B34B3A7ACE79C7AE5951FBF130E3EC780767C67C11904660AEF3E36D8', h'308201FA308201A0A003020102021018152B41B743AE6DB41599C3B17D820B300A06082A8648CE3D040302304B310B3009060355040613025553311D301B060355040A0C144665697469616E20546563686E6F6C6F67696573311D301B06035504030C144665697469616E204649444F20526F6F742043413020170D3138303532303030303030305A180F32303338303531393233353935395A3049310B3009060355040613025553311D301B060355040A0C144665697469616E20546563686E6F6C6F67696573311B301906035504030C124665697469616E204649444F2043412030363059301306072A8648CE3D020106082A8648CE3D03010703420004EE1AF2A0A6B9E89B5A9A50A7691256255332EA88AD83CD08223B5B930E4B69EA88000C6ED4996A02753D55609E4B748D94E5DA61A86EAAB6C9ACBCD7C5DA487CA3663064301D0603551D0E0416041432AE8DC45CC5CD8275302385FEB7C26A43124E40301F0603551D230418301680144BBD872611AD1C89CF0458BE70D2088C6B1623B730120603551D130101FF040830060101FF020100300E0603551D0F0101FF040403020106300A06082A8648CE3D0403020348003045022023C7AFD70ADDF6650A4AA3471E03792A0674AF3669C80D459919729DA6436023022100C510973AC92376BB2877930E34DD8773B53B4F38F7D4288AB9A616E32F170D80']}};
步骤216:浏览器接收认证设备发送的注册响应,获取保存的客户端数据,将注册响应和客户端数据通过浏览器的注册接口返回给脚本应用;
步骤217:脚本应用接收注册响应和客户端数据,将注册响应和客户端数据发送给依赖方;
步骤218:依赖方接收脚本应用发送的注册响应和客户端数据,对客户端数据进行验证,当验证通过时,执行步骤219;
可选地,本实施例中,对客户端数据进行验证包括:依赖方根据预设哈希算法对客户端数据进行哈希运算得到第一摘要值,根据客户端数据中的客户端标识信息查找保存的待签名数据和第一挑战码,根据保存的待签名数据和第一挑战码生成第一数据,根据预设哈希算法对第一数据进行哈希运算得到第二摘要值,比对第一摘要值和第二摘要值,如比对一致,则验证通过,如比对不一致,则验证未通过。
步骤219:依赖方解析注册响应得到第一签名结果,对第一签名结果进行验签,当验签通过时,保存第一签名结果。
可选地,本实施例中,对第一签名结果进行验签具体为:依赖方根据客户端数据中的客户端标识信息获取证书DN,根据证书DN查找签名证书公钥,使用签名证书公钥和签名算法信息中的签名算法对第一签名结果进行验签,当验签通过时,保存第一签名结果。
本发明提供的一种基于浏览器的注册接口实现数据通讯的方法,浏览器无需安装插件即可实现将待处理的通讯数据下发给认证设备并接收认证设备返回的处理结果,实现了浏览器在数据通讯过程中的去插件化。
实施例3
本发明实施例3提供了一种基于浏览器的注册接口实现数据通讯的方法,适用于包含依赖方、脚本应用以及认证设备的系统,其中,所述脚本应用来自于依赖方,运行在浏览器上,所述浏览器安装在PC(Personal Computer)设备上;所述浏览器包含WebAuthn接口(也称:注册接口),所述认证设备与WebAuthn接口兼容,如图4和图5所示,包括如下步骤:
步骤300:脚本应用根据用户输入的登录信息向依赖方发送登录请求;
步骤301:依赖方接收脚本应用发送的登录请求,解析登录请求得到登录信息,对登录信息进行验证,向脚本应用发送登录响应;
步骤302:当脚本应用接收到依赖方发送的登录成功响应时,向依赖方发送包含客户端标识信息的获取待验证的PIN码的请求;
步骤303:依赖方接收脚本应用发送的获取待验证的PIN码的请求,获取待验证的PIN码,生成第二挑战码,将第二挑战码和客户端标识信息对应保存,向脚本应用发送待验证的PIN码和第二挑战码;
步骤304:脚本应用接收依赖方发送的待验证的PIN码和第二挑战码,根据待验证的PIN码生成用户显示名,获取预置的用户名、用户ID、依赖方名和依赖方ID,根据用户ID、用户名和用户显示名组织用户信息,根据依赖方ID和依赖方名组织依赖方信息;
步骤305:脚本应用调用浏览器的注册接口将用户信息、依赖方信息和第二挑战码传给浏览器;
例如:浏览器的注册接口具体为:navigator.credentials.create();
步骤306:浏览器根据用户信息,依赖方信息、第二挑战码生成客户端数据并保存,使用预设哈希算法对客户端数据进行哈希运算得到客户端数据哈希值,获取算法信息,根据客户端数据哈希值、用户信息、依赖方信息和算法信息生成注册数据,将注册数据发送给认证设备;
步骤307:认证设备接收浏览器发送的注册数据,解析注册数据得到客户端数据哈希值、用户信息、依赖方信息和签名算法信息,解析用户信息得到用户ID、用户名和用户显示名,解析用户显示名得到待验证的PIN码;
步骤308:认证设备获取保存的PIN码,根据保存的PIN码验证待验证的PIN码并生成验证结果,将验证结果作为扩展项;
步骤309:认证设备生成凭证密钥对和用户凭证标识,获取设备唯一标识,按照认证设备数据格式组织设备唯一标识、凭证密钥对中的凭证公钥、用户凭证标识和扩展项得到认证设备数据;
步骤310:认证设备获取认证设备私钥,使用认证设备私钥和和算法信息中的签名算法标识对应的签名算法对客户端数据哈希值和认证设备数据进行签名得到第二签名结果,获取证书链,根据证书链、第二签名结果和算法信息中的签名算法标识生成符合预设认证声明格式的认证声明;
步骤311:认证设备根据认证设备数据、预设认证声明格式和认证声明生成注册响应,将注册响应发送给浏览器;
步骤312:浏览器接收认证设备发送的注册响应,获取保存的客户端数据,将注册响应和客户端数据通过浏览器的注册接口返回给脚本应用;
步骤313:脚本应用接收注册响应和客户端数据,将注册响应和客户端数据发送给依赖方;
步骤314:依赖方接收脚本应用发送的注册响应和客户端数据,对客户端数据进行验证,当验证通过时,解析注册响应得到验证结果并保存。
本发明提供的一种基于浏览器的注册接口实现数据通讯的方法,浏览器无需安装插件即可实现将待处理的通讯数据下发给认证设备并接收认证设备返回的处理结果,实现了浏览器在数据通讯过程中的去插件化。
实施例4
本发明实施例4提供了一种基于浏览器的注册接口实现数据通讯的系统,如图6所示,包括:依赖方40、脚本应用50和认证设备60;
依赖方40包括:第一发送模块401、第一解析模块402和第一获取模块403;
第一发送模块401,用于根据脚本应用50发送的获取待处理数据请求向脚本应用50发送待处理数据和挑战码;
第一解析模块402,用于解析接收到的注册响应得到认证设备60数据;
第一获取模块403,用于从第一解析模块402解析接收到的注册响应得到的认证设备60数据中获取已处理数据;
脚本应用50包括:第一组织模块501、第一调用模块502和第二发送模块503;
第一组织模块501,用于根据接收到的待处理数据组织用户信息和依赖方信息;
第一调用模块502,用于调用浏览器的注册接口将用户信息、依赖方信息和挑战码传给浏览器;
第二发送模块503,用于将浏览器的注册接口返回的注册响应发送给依赖方40;
认证设备60包括:第二获取模块601、第二解析模块602、第一生成模块603、第一作为模块604、第一签名模块605、第二组织模块606、第二生成模块607和第三发送模块608;
第二获取模块601,用于从浏览器发送的注册数据中获取用户信息、依赖方信息、算法信息和客户端数据哈希值;
第二解析模块602,用于解析第二获取模块601获取的用户信息和依赖方信息得到待处理数据;
第一生成模块603,用于对待处理数据执行预设操作得到已处理数据;
第一作为模块604,用于将已处理数据作为扩展项生成认证设备60数据;
第一签名模块605,用于使用认证设备60私钥和算法信息中的签名算法标识对应的签名算法对客户端数据哈希值和认证设备60数据进行签名得到第一签名结果;
第二组织模块606,用于获取证书链,组织证书链、第一签名结果和算法信息中的签名算法标识得到符合预设认证声明格式的认证声明;
第二生成模块607,用于根据预设认证声明格式、认证设备60数据和认证声明生成注册响应;
第三发送模块608,用于将第二生成模块607生成的注册响应发送给浏览器。
可选地,本实施例中,脚本应用50还包括:第四发送模块、第一接收模块、第一判断模块和第五发送模块;
第四发送模块,用于根据用户输入的登录信息向依赖方40发送登录请求;
第一接收模块,用于接收依赖方40发送的登录响应;
第一判断模块,用于判断第一接收模块接收到的登录响应的类型,如为登录成功响应,触发第五发送模块,如为登录失败响应,结束;
第五发送模块,用于向依赖方40发送获取待处理数据请求;
依赖方40还包括:第二接收模块、第三解析模块和第一验证模块;
第二接收模块,用于接收脚本应用50发送的登录请求;
第三解析模块,用于解析第二接收模块接收到的登录请求得到登录信息;
第一验证模块,用于对第三解析模块解析登录请求得到的登录信息进行验证,根据验证结果向脚本应用50发送登录响应。
可选地,本实施例中,其特征在于,第一发送模块401包括:第一接收单元、获取生成单元和第一发送单元;
第一接收单元,用于接收脚本应用50发送的获取待处理数据请求;
获取生成单元,用于获取待处理数据,生成挑战码;
第一发送单元,用于向脚本应用50发送待处理数据和挑战码。
可选地,本实施例中,第一作为模块604包括:第一作为单元、第一生成单元、第一获取单元和第一组织单元;
第一作为单元,用于将已处理数据作为扩展项;
第一生成单元,用于生成凭证密钥对和用户凭证标识;
第一获取单元,用于获取设备唯一标识;
第一组织单元,用于按照认证设备60数据格式组织设备唯一标识、凭证密钥对中的凭证公钥、用户凭证标识和扩展项得到认证设备60数据。
可选地,本实施例中,其特征在于,第二发送模块503,还用于将浏览器保存的客户端数据发送给依赖方40。
可选地,本实施例中,依赖方40还包括:第二验证模块;
第二验证模块,用于验证第二发送模块503发送的客户端数据,如验证通过,触发第一获取模块403,如验证未通过,结束。
可选地,本实施例中,用户信息包括:用户名和用户显示名;依赖方信息包括:依赖方名;
第一组织模块具体用于,将待处理数据设置用户信息的用户名和/或用户显示名和/或依赖方信息的依赖方名,根据设置后的用户名和用户显示名生成用户信息,根据设置后的依赖方名生成依赖方信息。
可选地,本实施例中,待处理数据具体为待签名数据,待签名数据包括:证书DN、用户密码、待签名原文、认证设备屏显信息和哈希算法名;
第一组织模块501包括:第二生成单元、第二获取单元和第二组织单元;
第二生成单元,用于根据证书DN和用户密码生成用户名,根据待签名原文和认证设备屏显信息生成用户显示名,根据哈希算法名生成依赖方名;
第二获取单元,用于获取预置的用户ID和依赖方ID;
第二组织单元,用于根据用户ID、用户名和用户显示名组织用户信息,根据依赖方ID和依赖方名组织依赖方信息;
第二解析模块602包括:第一解析单元和第二解析单元;
第一解析单元,用于解析用户信息得到用户ID、用户名和用户显示名,解析用户名得到证书DN和用户密码,解析用户显示名得到待签名原文和认证设备屏显信息;
第二解析单元,用于解析依赖方信息得到依赖方ID和依赖方名,解析依赖方名得到哈希算法名。
可选地,本实施例中,第一生成模块603包括:显示接收单元、生成哈希单元和验证签名单元;
显示接收单元,用于显示认证设备屏显信息,等待接收用户对认证设备屏显信息的确认信息,当接收到用户对认证设备屏显信息的确认信息时,触发生成哈希单元;
生成哈希单元,用于根据证书DN查找签名证书私钥并根据哈希算法名查找哈希算法,如均查找到,则根据待签名原文和认证设备屏显信息生成待签名报文,使用根据哈希算法名查找到的哈希算法对待签名报文进行哈希运算得到待签名报文哈希值;
验证签名单元,用于验证用户密码,当验证通过时,使用根据证书DN查找到的签名证书私钥对待签名报文哈希值进行签名得到第二签名结果,将第二签名结果作为已处理数据。
可选地,本实施例中,待处理数据具体为待验证的PIN码;
第一组织模块501包括:第三生成单元、第三获取单元和第三组织单元;
第三生成单元,用于根据待验证的PIN码生成用户显示名;
第三获取单元,用于获取预置的用户名、用户ID、依赖方名和依赖方ID;
第三组织单元,用于根据用户ID、用户名和用户显示名组织用户信息,根据依赖方ID和依赖方名组织依赖方信息;
第二解析模块602包括:第三解析单元和生成作为单元;
第三解析单元,用于解析用户信息得到用户ID、用户名和用户显示名,解析用户显示名得到待验证的PIN码;
生成作为单元,用于获取保存的PIN码,根据保存的PIN码验证待验证的PIN码并生成验证结果,将验证结果作为已处理数据。
本发明提供的一种基于浏览器的注册接口实现数据通讯的系统,浏览器无需安装插件即可实现将待处理的通讯数据下发给认证设备并接收认证设备返回的处理结果,实现了浏览器在数据通讯过程中的去插件化。
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。
Claims (20)
1.一种基于浏览器的注册接口实现数据通讯的方法,其特征在于,包括如下步骤:
步骤101:依赖方根据脚本应用发送的获取待处理数据请求向所述脚本应用发送待处理数据和挑战码;
步骤102:所述脚本应用根据接收到的待处理数据组织用户信息和依赖方信息,调用浏览器的注册接口,给所述注册接口传入所述用户信息、所述依赖方信息和所述挑战码;
步骤103:认证设备从所述浏览器根据所述注册接口传入的所述用户信息、所述依赖方信息和所述挑战码生成的注册数据中获取所述用户信息、所述依赖方信息、算法信息和客户端数据哈希值,解析所述用户信息和所述依赖方信息得到待处理数据,对所述待处理数据执行预设操作得到已处理数据,将所述已处理数据作为扩展项生成认证设备数据;
步骤104:所述认证设备使用认证设备私钥和所述算法信息中的签名算法标识对应的签名算法对所述客户端数据哈希值和所述认证设备数据进行签名得到第一签名结果,获取证书链,组织证书链、所述第一签名结果和所述算法信息中的签名算法标识得到符合预设认证声明格式的认证声明,根据预设认证声明格式、所述认证设备数据和所述认证声明生成注册响应,将所述注册响应发送给所述浏览器;
步骤105:所述脚本应用将所述浏览器的注册接口返回的注册响应发送给所述依赖方;
步骤106:所述依赖方解析接收到的注册响应得到认证设备数据,从所述认证设备数据中获取所述已处理数据。
2.如权利要求1所述的方法,其特征在于,步骤101之前还包括:
步骤A1:所述脚本应用根据用户输入的登录信息向所述依赖方发送登录请求;
步骤A2:所述依赖方接收所述脚本应用发送的登录请求,解析所述登录请求得到登录信息,对所述登录信息进行验证,向所述脚本应用发送登录响应;
步骤A3:所述脚本应用接收所述依赖方发送的登录响应,判断所述登录响应的类型,如为登录成功响应,向所述依赖方发送获取待处理数据请求,如为登录失败响应,结束。
3.如权利要求1所述的方法,其特征在于,所述步骤101具体为:
步骤B1:所述依赖方接收所述脚本应用发送的获取待处理数据请求,获取待处理数据,生成挑战码,向所述脚本应用发送所述待处理数据和所述挑战码。
4.如权利要求1所述的方法,其特征在于,所述步骤103中,将所述已处理数据作为扩展项生成认证设备数据具体为:所述认证设备将所述已处理数据作为扩展项,生成凭证密钥对和用户凭证标识,获取设备唯一标识,按照认证设备数据格式组织所述设备唯一标识、所述凭证密钥对中的凭证公钥、所述用户凭证标识和所述扩展项得到认证设备数据。
5.如权利要求1所述的方法,其特征在于,所述步骤105还包括:所述脚本应用将所述浏览器的注册接口返回的客户端数据发送给所述依赖方。
6.如权利要求5所述的方法,其特征在于,所述步骤106之前还包括:所述依赖方验证所述客户端数据,如验证通过,执行步骤106,如验证未通过,报错结束。
7.如权利要求1所述的方法,其特征在于,所述步骤102中,所述用户信息包括:用户名和用户显示名;所述依赖方信息包括:依赖方名;
所述脚本应用根据接收到的待处理数据组织用户信息和依赖方信息具体为:所述脚本应用将所述待处理数据设置所述用户信息的用户名和/或用户显示名和/或所述依赖方信息的依赖方名,根据设置后的用户名和用户显示名生成所述用户信息,根据设置后的依赖方名生成所述依赖方信息。
8.如权利要求1所述的方法,其特征在于,所述待处理数据具体为待签名数据,所述待签名数据包括:证书DN、用户密码、待签名原文、认证设备屏显信息和哈希算法名;所述脚本应用根据接收到的待处理数据组织用户信息和依赖方信息具体为:所述脚本应用根据所述证书DN和所述用户密码生成用户名,根据所述待签名原文和所述认证设备屏显信息生成用户显示名,根据所述哈希算法名生成依赖方名,获取预置的用户ID和依赖方ID,根据所述用户ID、所述用户名和所述用户显示名组织所述用户信息,根据所述依赖方ID和所述依赖方名组织所述依赖方信息;
所述解析所述用户信息和所述依赖方信息得到待处理数据包括:所述认证设备解析所述用户信息得到用户ID、用户名和用户显示名,解析所述用户名得到证书DN和用户密码,解析所述用户显示名得到待签名原文和认证设备屏显信息,解析所述依赖方信息得到依赖方ID和依赖方名,解析所述依赖方名得到哈希算法名。
9.如权利要求8所述的方法,其特征在于,所述步骤103中,对所述待处理数据执行预设操作得到已处理数据包括:
步骤D1:所述认证设备显示所述认证设备屏显信息,等待接收用户对所述认证设备屏显信息的确认信息,当接收到用户对所述认证设备屏显信息的确认信息时,执行步骤D2:
步骤D2:所述认证设备根据所述证书DN查找签名证书私钥,并根据所述哈希算法名查找哈希算法,如均查找到,根据所述待签名原文和所述认证设备屏显信息生成待签名报文,使用根据所述哈希算法名查找到的哈希算法对所述待签名报文进行哈希运算得到待签名报文哈希值;
步骤D3:所述认证设备验证所述用户密码,当验证通过时,使用根据所述证书DN查找到的签名证书私钥对所述待签名报文哈希值进行签名得到第二签名结果,将所述第二签名结果作为已处理数据。
10.如权利要求1所述的方法,其特征在于,所述待处理数据具体为待验证的PIN码;所述脚本应用根据接收到的待处理数据组织用户信息和依赖方信息具体为:所述脚本应用根据所述待验证的PIN码生成用户显示名,获取预置的用户名、用户ID、依赖方名和依赖方ID,根据所述用户ID、所述用户名和所述用户显示名组织所述用户信息,根据所述依赖方ID和所述依赖方名组织所述依赖方信息;
所述解析所述用户信息和所述依赖方信息得到待处理数据,对所述待处理数据执行预设操作得到已处理数据包括:
步骤C1:所述认证设备解析所述用户信息得到用户ID、用户名和用户显示名,解析所述用户显示名得到待验证的PIN码;
步骤C2:所述认证设备获取保存的PIN码,根据所述认证设备保存的PIN码验证所述待验证的PIN码并生成验证结果,将所述验证结果作为已处理数据。
11.一种基于浏览器的注册接口实现数据通讯的系统,其特征在于,包括:依赖方、脚本应用和认证设备;
所述依赖方包括:第一发送模块、第一解析模块和第一获取模块;
所述第一发送模块,用于根据脚本应用发送的获取待处理数据请求向所述脚本应用发送待处理数据和挑战码;
所述第一解析模块,用于解析接收到的注册响应得到认证设备数据;
所述第一获取模块,用于从所述第一解析模块解析接收到的注册响应得到的认证设备数据中获取已处理数据;
所述脚本应用包括:第一组织模块、第一调用模块和第二发送模块;
所述第一组织模块,用于根据接收到的待处理数据组织用户信息和依赖方信息;
所述第一调用模块,用于调用浏览器的注册接口将所述用户信息、所述依赖方信息和所述挑战码传给所述浏览器;
所述第二发送模块,用于将所述浏览器的注册接口返回的注册响应发送给所述依赖方;
所述认证设备包括:第二获取模块、第二解析模块、第一生成模块、第一作为模块、第一签名模块、第二组织模块、第二生成模块和第三发送模块;
所述第二获取模块,用于从所述浏览器根据所述注册接口传入的所述用户信息、所述依赖方信息和所述挑战码生成的注册数据中获取所述用户信息、所述依赖方信息、算法信息和客户端数据哈希值;
所述第二解析模块,用于解析所述第二获取模块获取的用户信息和依赖方信息得到待处理数据;
所述第一生成模块,用于对所述待处理数据执行预设操作得到已处理数据;
所述第一作为模块,用于将所述已处理数据作为扩展项生成认证设备数据;
所述第一签名模块,用于使用认证设备私钥和所述算法信息中的签名算法标识对应的签名算法对所述客户端数据哈希值和所述认证设备数据进行签名得到第一签名结果;
所述第二组织模块,用于获取证书链,组织证书链、所述第一签名结果和所述算法信息中的签名算法标识得到符合预设认证声明格式的认证声明;
所述第二生成模块,用于根据预设认证声明格式、所述认证设备数据和所述认证声明生成注册响应;
所述第三发送模块,用于将所述第二生成模块生成的注册响应发送给所述浏览器。
12.如权利要求11所述的系统,其特征在于,所述脚本应用还包括:第四发送模块、第一接收模块、第一判断模块和第五发送模块;
所述第四发送模块,用于根据用户输入的登录信息向所述依赖方发送登录请求;
所述第一接收模块,用于接收所述依赖方发送的登录响应;
所述第一判断模块,用于判断所述第一接收模块接收到的登录响应的类型,如为登录成功响应,触发所述第五发送模块,如为登录失败响应,结束;
所述第五发送模块,用于向所述依赖方发送获取待处理数据请求;
所述依赖方还包括:第二接收模块、第三解析模块和第一验证模块;
所述第二接收模块,用于接收所述脚本应用发送的登录请求;
所述第三解析模块,用于解析所述第二接收模块接收到的登录请求得到登录信息;
所述第一验证模块,用于对所述第三解析模块解析所述登录请求得到的登录信息进行验证,根据验证结果向所述脚本应用发送登录响应。
13.如权利要求11所述的系统,其特征在于,所述第一发送模块包括:第一接收单元、获取生成单元和第一发送单元;
所述第一接收单元,用于接收所述脚本应用发送的获取待处理数据请求;
所述获取生成单元,用于获取待处理数据,生成挑战码;
所述第一发送单元,用于向所述脚本应用发送所述待处理数据和所述挑战码。
14.如权利要求11所述的系统,其特征在于,所述第一作为模块包括:第一作为单元、第一生成单元、第一获取单元和第一组织单元;
所述第一作为单元,用于将所述已处理数据作为扩展项;
所述第一生成单元,用于生成凭证密钥对和用户凭证标识;
所述第一获取单元,用于获取设备唯一标识;
所述第一组织单元,用于按照认证设备数据格式组织所述设备唯一标识、所述凭证密钥对中的凭证公钥、所述用户凭证标识和所述扩展项得到所述认证设备数据。
15.如权利要求11所述的系统,其特征在于,所述第二发送模块,还用于将所述浏览器保存的客户端数据发送给所述依赖方。
16.如权利要求15所述的系统,其特征在于,所述依赖方还包括:第二验证模块;
所述第二验证模块,用于验证所述第二发送模块发送的客户端数据,如验证通过,触发所述第一获取模块,如验证未通过,结束。
17.如权利要求11所述的系统,其特征在于,所述用户信息包括:用户名和用户显示名;所述依赖方信息包括:依赖方名;
所述第一组织模块具体用于,将所述待处理数据设置所述用户信息的用户名和/或用户显示名和/或所述依赖方信息的依赖方名,根据设置后的用户名和用户显示名生成所述用户信息,根据设置后的依赖方名生成所述依赖方信息。
18.如权利要求11所述的系统,其特征在于,所述待处理数据具体为待签名数据,所述待签名数据包括:证书DN、用户密码、待签名原文、认证设备屏显信息和哈希算法名;
所述第一组织模块包括:第二生成单元、第二获取单元和第二组织单元;
所述第二生成单元,用于根据所述证书DN和所述用户密码生成用户名,根据所述待签名原文和所述认证设备屏显信息生成用户显示名,根据所述哈希算法名生成依赖方名;
所述第二获取单元,用于获取预置的用户ID和依赖方ID;
所述第二组织单元,用于根据所述用户ID、所述用户名和所述用户显示名组织所述用户信息,根据所述依赖方ID和所述依赖方名组织所述依赖方信息;
所述第二解析模块包括:第一解析单元和第二解析单元;
所述第一解析单元,用于解析所述用户信息得到用户ID、用户名和用户显示名,解析所述用户名得到证书DN和用户密码,解析所述用户显示名得到待签名原文和认证设备屏显信息;
所述第二解析单元,用于解析所述依赖方信息得到依赖方ID和依赖方名,解析所述依赖方名得到哈希算法名。
19.如权利要求18所述的系统,其特征在于,所述第一生成模块包括:显示接收单元、生成哈希单元和验证签名单元;
所述显示接收单元,用于显示所述认证设备屏显信息,等待接收用户对所述认证设备屏显信息的确认信息,当接收到用户对认证设备屏显信息的确认信息时,触发所述生成哈希单元;
所述生成哈希单元,用于根据所述证书DN查找签名证书私钥并根据所述哈希算法名查找哈希算法,如均查找到,则根据所述待签名原文和所述认证设备屏显信息生成待签名报文,使用根据所述哈希算法名查找到的哈希算法对所述待签名报文进行哈希运算得到待签名报文哈希值;
所述验证签名单元,用于验证所述用户密码,当验证通过时,使用根据所述证书DN查找到的签名证书私钥对所述待签名报文哈希值进行签名得到第二签名结果,将所述第二签名结果作为已处理数据。
20.如权利要求11所述的系统,其特征在于,所述待处理数据具体为待验证的PIN码;
所述第一组织模块包括:第三生成单元、第三获取单元和第三组织单元;
所述第三生成单元,用于根据所述待验证的PIN码生成用户显示名;
所述第三获取单元,用于获取预置的用户名、用户ID、依赖方名和依赖方ID;
所述第三组织单元,用于根据所述用户ID、所述用户名和所述用户显示名组织所述用户信息,根据所述依赖方ID和所述依赖方名组织所述依赖方信息;
所述第二解析模块包括:第三解析单元和生成作为单元;
所述第三解析单元,用于解析所述用户信息得到用户ID、用户名和用户显示名,解析所述用户显示名得到待验证的PIN码;
所述生成作为单元,用于获取保存的PIN码,根据所述保存的PIN码验证所述待验证的PIN码并生成验证结果,将所述验证结果作为已处理数据。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011431771.8A CN112242905B (zh) | 2020-12-10 | 2020-12-10 | 一种基于浏览器的注册接口实现数据通讯的方法和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011431771.8A CN112242905B (zh) | 2020-12-10 | 2020-12-10 | 一种基于浏览器的注册接口实现数据通讯的方法和系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112242905A true CN112242905A (zh) | 2021-01-19 |
CN112242905B CN112242905B (zh) | 2021-03-16 |
Family
ID=74175479
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011431771.8A Active CN112242905B (zh) | 2020-12-10 | 2020-12-10 | 一种基于浏览器的注册接口实现数据通讯的方法和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112242905B (zh) |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20160269181A1 (en) * | 2013-10-28 | 2016-09-15 | Singou Technology Ltd. | Method and Device for Information System Access Authentication |
CN106878319A (zh) * | 2017-03-06 | 2017-06-20 | 中国科学院数据与通信保护研究教育中心 | 一种提供签名服务的方法及系统 |
CN108881310A (zh) * | 2018-08-15 | 2018-11-23 | 飞天诚信科技股份有限公司 | 一种注册系统及其工作方法 |
CN109150541A (zh) * | 2018-08-15 | 2019-01-04 | 飞天诚信科技股份有限公司 | 一种认证系统及其工作方法 |
US20190028269A1 (en) * | 2016-05-27 | 2019-01-24 | Feitian Technologies Co., Ltd. | Smart key device and working method thereof |
US20190075102A1 (en) * | 2017-09-04 | 2019-03-07 | Electronics And Telecommunications Research Institute | Terminal apparatus, server apparatus, blockchain and method for fido universal authentication using the same |
US20200089867A1 (en) * | 2018-09-17 | 2020-03-19 | Samsung Sds Co., Ltd. | System and method for authentication |
CN111414608A (zh) * | 2020-03-10 | 2020-07-14 | 飞天诚信科技股份有限公司 | 一种服务器接受注册的方法 |
CN112039848A (zh) * | 2020-08-05 | 2020-12-04 | 北京链飞未来科技有限公司 | 一种基于区块链公钥数字签名的Web认证方法、系统和装置 |
-
2020
- 2020-12-10 CN CN202011431771.8A patent/CN112242905B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20160269181A1 (en) * | 2013-10-28 | 2016-09-15 | Singou Technology Ltd. | Method and Device for Information System Access Authentication |
US20190028269A1 (en) * | 2016-05-27 | 2019-01-24 | Feitian Technologies Co., Ltd. | Smart key device and working method thereof |
CN106878319A (zh) * | 2017-03-06 | 2017-06-20 | 中国科学院数据与通信保护研究教育中心 | 一种提供签名服务的方法及系统 |
US20190075102A1 (en) * | 2017-09-04 | 2019-03-07 | Electronics And Telecommunications Research Institute | Terminal apparatus, server apparatus, blockchain and method for fido universal authentication using the same |
CN108881310A (zh) * | 2018-08-15 | 2018-11-23 | 飞天诚信科技股份有限公司 | 一种注册系统及其工作方法 |
CN109150541A (zh) * | 2018-08-15 | 2019-01-04 | 飞天诚信科技股份有限公司 | 一种认证系统及其工作方法 |
US20200089867A1 (en) * | 2018-09-17 | 2020-03-19 | Samsung Sds Co., Ltd. | System and method for authentication |
CN111414608A (zh) * | 2020-03-10 | 2020-07-14 | 飞天诚信科技股份有限公司 | 一种服务器接受注册的方法 |
CN112039848A (zh) * | 2020-08-05 | 2020-12-04 | 北京链飞未来科技有限公司 | 一种基于区块链公钥数字签名的Web认证方法、系统和装置 |
Also Published As
Publication number | Publication date |
---|---|
CN112242905B (zh) | 2021-03-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8819253B2 (en) | Network message generation for automated authentication | |
CN106888089B (zh) | 电子签章的方法和系统以及用于电子签章的移动通信终端 | |
CN109639661B (zh) | 服务器证书更新方法、装置、设备及计算机可读存储介质 | |
JP4808903B2 (ja) | パーソナルコンピュータ及び個人端末装置を使用して文書に対しデジタル署名する方法 | |
CN111770057B (zh) | 身份验证系统及身份验证方法 | |
CN108322416B (zh) | 一种安全认证实现方法、装置及系统 | |
CN1771717A (zh) | 用于安全无线局域网接入的技术 | |
CN107046544A (zh) | 一种识别对网站的非法访问请求的方法和装置 | |
CN108959990B (zh) | 一种二维码的验证方法及装置 | |
WO2005116909A1 (en) | An apparatus, system and methods for supporting an authentication process | |
CN111628871B (zh) | 一种区块链交易处理方法、装置及电子设备和存储介质 | |
US7610625B2 (en) | Program control system, program control method and information control program | |
CN110135149A (zh) | 一种应用安装的方法及相关装置 | |
CN114390524B (zh) | 一键登录业务的实现方法和装置 | |
CN112242905B (zh) | 一种基于浏览器的注册接口实现数据通讯的方法和系统 | |
US20060177111A1 (en) | Communication device, digital signature verification method and digital signature generation method | |
JP4105552B2 (ja) | 小型デバイスにおける暗号署名を使用した否認防止方法 | |
KR20080077786A (ko) | 이동통신 단말기 및 가입자 식별 모듈을 이용한 개인 인증방법 및 장치 | |
CN110266641B (zh) | 信息读取方法、系统、装置和计算机可读存储介质 | |
CN115567271B (zh) | 鉴权方法和装置、页面跳转方法和装置、电子设备及介质 | |
CN109951565B (zh) | 供应链管理系统的数据传输方法、装置、介质和电子设备 | |
JP4091438B2 (ja) | 小型デバイスにおける暗号署名 | |
CN114070610A (zh) | Api网关鉴权方法、网关设备及可读存储介质 | |
CN111541775B (zh) | 一种认证报文的安全转换方法及系统 | |
CN109726573B (zh) | 一种通过脚本装置实现签名的方法及脚本装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |