CN110866240A - 智能密码钥匙调用方法和系统 - Google Patents
智能密码钥匙调用方法和系统 Download PDFInfo
- Publication number
- CN110866240A CN110866240A CN201911103213.6A CN201911103213A CN110866240A CN 110866240 A CN110866240 A CN 110866240A CN 201911103213 A CN201911103213 A CN 201911103213A CN 110866240 A CN110866240 A CN 110866240A
- Authority
- CN
- China
- Prior art keywords
- skf
- data packet
- server
- remote procedure
- client
- 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.)
- Pending
Links
Images
Classifications
-
- 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/31—User authentication
- G06F21/42—User authentication using separate channels for security data
- G06F21/43—User authentication using separate channels for security data wireless channels
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/40—Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists
- G06Q20/401—Transaction verification
- G06Q20/4014—Identity check for transactions
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Theoretical Computer Science (AREA)
- Business, Economics & Management (AREA)
- Accounting & Taxation (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Strategic Management (AREA)
- General Business, Economics & Management (AREA)
- Finance (AREA)
- Computer Networks & Wireless Communication (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Telephonic Communication Services (AREA)
Abstract
本申请实施例提供智能密码钥匙调用方法和系统。在本申请的一些实施例中,向服务端发送包含远程过程调用协议的上行数据包,以使所述服务端响应于所述上行数据包实现对SKF代理组件的调用;接收所述服务端反馈的包含远程过程调用协议的下行数据包,其中,所述下行数据包是由所述服务端通过SKF接口对智能密码钥匙访问后得到的;基于所述下行数据包中包含的SKF接口的执行结果执行密码应用。通过在无需进行繁琐开发的前提下,不仅能够满足多种不同终端的智能密码钥匙的调用需求,还能满足移动终端的远程调用需求。
Description
技术领域
本申请计算机技术领域,尤其涉及智能密码钥匙调用方法和系统。
背景技术
近些年来,在智能移动终端上进行网银交易的需求愈加旺盛,交易量和交易金额涨幅迅速,但是安全性问题却一直不容乐观。以安卓系统为例,被恶意软件攻击、感染钓鱼软件、安卓系统被Root等风险一直困扰着移动金融业务的健康发展。而PC端拥有成熟稳定的智能密码钥匙解决方案,PC端智能密码钥匙的发行数量大、用户数量多,利用已经发行使用的USB智能密码钥匙为智能移动终端提供密码服务将成为最优的解决方案。
在现有技术中,智能移动终端上使用智能密码钥匙的时候,可以通过蓝牙连接、音频连接、OTG连接等方案,用户需要支出额外的硬件成本和部署成本。
并且,现有PC所用的智能密码钥匙无法为智能移动终端所用。
本发明的目的在于,提供一种智能密码钥匙调用方法和系统,能够使PC和智能移动终端共享智能密码钥匙。
发明内容
本申请的多个方面提供智能密码钥匙调用方法和系统,用以满足多种终端的智能密码钥匙的调用需求。
本申请实施例提供一种智能密码钥匙调用方法,所述方法包括:
向服务端发送包含远程过程调用协议的上行数据包,以使所述服务端响应于所述上行数据包实现对SKF代理组件的调用;
接收所述服务端反馈的包含远程过程调用协议的下行数据包,其中,所述下行数据包是由所述服务端通过SKF接口对智能密码钥匙访问后得到的;
基于所述下行数据包中包含的SKF接口的执行结果执行密码应用。
可选地,密码应用通过所述SKF接口实现对远程过程调用客户端的访问;
所述远程过程调用客户端将封装得到的所述上行数据包发送给所述服务端,以使所述服务端响应于所述上行数据包实现对SKF代理组件的调用。
可选地,所述远程过程调用客户端对SKF接口、函数名和形参进行序列化,封装得到所述远程过程调用上行数据包;
发送所述远程过程调用上行数据包给所述服务端。
可选地,所述远程过程调用客户端接收所述服务端反馈的所述下行数据包;
反序列化所述下行数据包得到SKF接口的执行结果和输出数据;
通过所述SKF接口将所述SKF接口的执行结果和所述输出数据发送给所述密码应用。
本申请实施例提供另一种智能密码钥匙调用方法,应用于服务端,所述方法包括:
接收包含远程过程调用协议的上行数据包;
响应于所述上行数据包调用SKF代理组件;
对通过所述SKF代理组件访问智能密码钥匙得到的下行数据包;
发送包含远程过程调用协议的下行数据包给客户端,以使客户端响应于所述下行数据包包含的SKF接口的执行结果执行密码应用。
可选地,反序列化所述上行数据包,获得SKF接口、函数名和形参;
通过所述SKF接口调用SKF代理组件。
可选地,通过所述SKF代理组件访问所述智能密码钥匙得到SKF接口的执行结果;
基于所述SKF接口的执行结果和输出数据,序列化生成下行数据包。
本申请实施例提供一种智能密码钥匙调用系统,所述系统包括:
客户端,用于向服务端发送包含远程过程调用协议的上行数据包,以使所述服务端响应于所述上行数据包实现对SKF代理组件的调用;接收所述服务端反馈的包含远程过程调用协议的下行数据包,其中,所述下行数据包是由所述服务端通过SKF接口对智能密码钥匙访问后得到的;基于所述下行数据包中包含的SKF接口的执行结果执行密码应用;
服务端,用于接收包含远程过程调用协议的上行数据包;响应于所述上行数据包调用SKF代理组件;对通过所述SKF代理组件访问智能密码钥匙得到的下行数据包;发送包含远程过程调用协议的下行数据包给客户端,以使客户端响应于所述下行数据包包含的SKF接口的执行结果执行密码应用。
在本申请的一些实施例中,通过将智能密码钥匙与安装有服务端的计算机等终端设备连接,在移动终端上安装有包含用于实现远程过程调用的客户端和密码应用(或用于实现远程过程调用的客户端集成在密码应用中)。在需要进行智能密码钥匙调用的时候,密码应用调用客户端SKF接口,客户端利用远程过程调用协议,将请求发送给对应的安装有服务端的计算机;然后,服务端通过SKF接口访问智能密码钥匙,并将SKF接口的执行结果也基于远程过程调用协议发送给客户端,通过客户端SKF接口发送给密码应用。通过上述方案,在无需进行繁琐开发的前提下,不仅能够满足多种不同终端的智能密码钥匙的调用需求,还能满足移动终端的远程调用需求。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1为本发明实施例提供的一种智能密码钥匙调用方法的流程示意图;
图2为智能密码钥匙调用方法实施例中的上行数据包封装方法的流程示意图;
图3为智能密码钥匙调用方法实施例中的下行数据包解析方法的流程示意图;
图4为本发明提供的另一种智能密码钥匙调用方法的流程示意图;
图5为另一智能密码钥匙调用方法实施例中的SKF组件调用方法的流程示意图;
图6为本发明实施例提供的一种智能密码钥匙调用系统的过程示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请具体实施例及相应的附图对本申请技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
在本发明实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本发明。在本发明实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义,“多种”一般包含至少两种,但是不排除包含至少一种的情况。
取决于语境,如在此所使用的词语“如果”、“若”可以被解释成为“在……时”或“当……时”或“响应于确定”或“响应于检测”。类似地,取决于语境,短语“如果确定”或“如果检测(陈述的条件或事件)”可以被解释成为“当确定时”或“响应于确定”或“当检测(陈述的条件或事件)时”或“响应于检测(陈述的条件或事件)”。
本发明实施例提供一种智能密码钥匙调用系统,所述系统包括:
客户端(SKF RPC客户端),用于向服务端(SKF RPC服务端)发送包含远程过程调用(RPC)协议的上行数据包,以使所述服务端(SKF RPC服务端)响应于所述上行数据包实现对SKF代理组件的调用;接收所述服务端(SKF RPC服务端)反馈的包含远程过程调用协议的下行数据包,其中,所述下行数据包是由所述服务端(SKF RPC服务端)通过SKF接口对智能密码钥匙访问后得到的;基于所述下行数据包中包含的SKF接口的执行结果执行密码应用;
服务端(SKF RPC服务端),用于接收包含远程过程调用协议的上行数据包;响应于所述上行数据包调用SKF代理组件;对通过所述SKF代理组件访问智能密码钥匙得到的下行数据包;发送包含远程过程调用协议的下行数据包给客户端(SKF RPC客户端),以使客户端(SKF RPC客户端)响应于所述下行数据包包含的SKF接口的执行结果执行密码应用。
客户端(SKF RPC客户端)所在的移动终端中,还包括密码应用;在服务端(SKF RPC服务端)所在的计算机终端中,还包括SKF代理组件。
图1为智能密码钥匙调用方法中,客户端的流程示意图,包括如下步骤:
101:向服务端(SKF RPC服务端)发送包含远程过程调用协议的上行数据包,以使所述服务端(SKF RPC服务端)响应于所述上行数据包实现对SKF代理组件的调用。
102:接收所述服务端反馈的包含远程过程调用协议的下行数据包,其中,所述下行数据包是由所述服务端(SKF RPC服务端)通过SKF接口对智能密码钥匙访问后得到。
103:基于所述下行数据包中包含的SKF接口的执行结果执行密码应用。
下面针对步骤101进行展开说明。图2为上行数据包封装方法的流程示意图,具体包括如下步骤:
201:密码应用通过所述SKF接口实现对远程过程调用客户端(SKF RPC客户端)的访问。
202:所述远程过程调用客户端(SKF RPC客户端)将封装得到的所述上行数据包发送给所述服务端(SKF RPC服务端),以使所述服务端(SKF RPC服务端)响应于所述上行数据包实现对SKF代理组件的调用。
203:所述远程过程调用客户端(SKF RPC客户端)对SKF接口、函数名和形参进行序列化,封装得到所述远程过程调用上行数据包。
204:发送所述远程过程调用上行数据包给所述服务端(SKF RPC服务端)。
在本实施方式中密码应用、客户端(SKF RPC客户端)安装在移动终端中,作为密码应用安装有中国银行应用(中国银行APP),当用户想要进行转账操作时,需要通过智能密码钥匙认证后才能实现。具体来说,中国银行APP调用SKF接口,通过SKF接口将中国银行APP的请求报文发送给SKF RPC客户端。
在SKF RPC客户端在接收到请求报文之后,对SKF接口、函数名和对应的形参进行序列化处理,封装得到上行RPC数据包。SKF RPC客户端将该上行数据包发送给对应的位于计算机终端上的SKF RPC服务端。
下面针对步骤102进行展开说明。图3为一种下行数据包解析方法的流程示意图,具体包括如下步骤:
301:所述SKF RPC客户端接收所述服务端(SKF RPC服务端)反馈的所述下行数据包。
302:反序列化所述下行数据包得到SKF接口的执行结果和输出数据。
303:通过所述SKF接口将所述SKF接口的执行结果和所述输出数据发送给所述密码应用。
在实际应用中,远程过程调用客户端(SKF RPC客户端)在接收到服务端(SKF RPC服务端)反馈的下行数据包之后,对下行数据包进行解析,可以得到SKF代理组件反馈的SKF接口的执行结果和输出数据,SKF代理组件获得的执行结果是通过访问智能密码钥匙得到的。
进一步地,SKF RPC客户端将SKF接口的执行结果通过SKF接口发送给密码应用。比如,SKF RPC客户端将SKF接口的执行结果发送给中国银行APP,以便实现密码验证。
在本实施方式中服务端(SKF RPC服务端)安装在计算机终端、笔记本电脑终端等。为了便于理解,下面以服务端(SKF RPC服务端)安装于计算机终端为例进行说明。
图4为智能密码钥匙调用方法中,服务端(SKF RPC服务端)的流程示意图,具体可以包括如下步骤:
401:服务端(SKF RPC服务端)接收包含远程过程调用协议的上行数据包。
402:响应于所述上行数据包调用SKF代理组件。
403:对通过所述SKF代理组件访问智能密码钥匙得到的下行数据包。
404:发送包含远程过程调用协议的下行数据包给客户端(SKF RPC客户端),以使客户端(SKF RPC客户端)响应于所述下行数据包包含的SKF接口的执行结果执行密码应用。
SKF RPC服务端用于与SKF RPC客户端进行数据传输,并且还用于调用SKF代理组件。以便通过SKF代理组件实现对智能密码钥匙的访问。
在SKF RPC服务端接收到上行数据包之后,进一步对该上行数据包进行反序列化处理。
图5为本发明实施例中,SKF代理组件调用方法的流程示意图,具体包括如下步骤:
501:反序列化所述上行数据包,获得SKF接口、函数名和形参。
502:通过所述SKF接口调用SKF代理组件。
503:通过所述SKF代理组件访问所述智能密码钥匙得到SKF接口的执行结果。
504:基于所述SKF接口的执行结果和输出数据,序列化生成下行数据包。
在SKF RPC服务端接收到该上行数据包之后,对该上行数据包进行反序列化处理可以得到该数据包中包含的SKF接口、函数名和对应的形参等信息。然后,SKF RPC服务端根据SKF接口调用SKF代理组件。
使用上述系统和方法,在无需支出额外的硬件成本和部署成本的情况下,满足多种不同终端的智能密码钥匙的调用需求,使PC端上的智能密码钥匙可以为处于同一网络中的其它计算设备提供密码服务,能够使PC和智能移动终端共享智能密码钥匙。
实施例
以下结合附图,详细说明本申请各实施例提供的技术方案。
图6示出了一种智能密码钥匙调用的系统,包含以下设备:
移动智能终端1、计算机终端2,智能密码钥匙3。移动智能终端1和计算机终端2通过网络连接,智能密码钥匙3通过有线或无线连接在计算机终端2上。
移动智能终端1包括密码应用11、SKF RPC客户端12,SKF RPC客户端12也可以嵌入在密码应用11中。
计算机终端2包括SKF RPC服务端21、SKF代理组件22。
SKF RPC客户端12与SKF RPC服务端21建立连接后,移动智能终端1进行智能密码钥匙调用。关于建立连接的方法,以下详细论述。
安装在移动智能终端1的SKF RPC客户端12用于对密码应用11提供SKF接口、封装上行RPC数据包并通过网络发送给SKF RPC服务端21。
安装在计算机终端2的SKF RPC服务端21用于解析来自SKF RPC客户端12的上行RPC数据包、调用SKF代理组件执行目标SKF接口、封装下行RPC数据包并通过网络发送给SKFRPC客户端12;
安装在计算机终端的SKF代理组件22,用于对SKF RPC服务端21提供SKF接口、访问智能密码钥匙3,执行密码功能、获取执行结果。
本实施方式中,不论是移动智能终端(客户端)1内部的调用,计算机终端(服务端)2内部的调用,均遵循GM/T 0016密码应用接口规范。
计算机终端2与智能密码钥匙的连接方式相对固定,并且计算机终端2调用智能密码钥匙属于现有技术,这里不再赘述。
以下对移动智能终端调用智能密码钥匙的流程进行说明。
在实现智能密码钥匙调用之前,首先建立SKF RPC客户端12与SKF RPC服务端21之间的连接。关于建立连接的方法,以下详细论述。
步骤S1,启动密码应用,向SKF RPC客户端12发起SKF接口的调用,SKF RPC客户端12发送RPC数据包至SKF RPC服务端21。
即,SKF RPC客户端12对SKF接口(函数)名称和参数进行序列化,以网络报文的形式封装SKF函数名称、参数等RPC数据协议所必须的要素得到上行数据包,将其通过网络发送给SKF RPC服务端21。
步骤S2,SKF RPC服务端21接收上行数据包,调用SKF代理组件22对应的SKF接口。
即,SKF RPC服务端21接收上行数据包后,反序列化得到待执行的函数名和参数列表,访问SKF代理组件22调用对应的SKF接口。
步骤S3,SKF代理组件22访问智能密码钥匙3,实际执行密码功能,例如读取,并验证证书,获得执行结果,并将执行结果数据返回给SKF RPC服务端21。
步骤S4,SKF RPC服务端21将执行结果数据发送至SKF RPC客户端12。
SKF RPC服务端21以网络报文的形式封装执行结果数据等RPC数据协议所必须的要素得到下行数据包,将其通过网络发送给SKF RPC客户端12。
步骤S5,SKF RPC客户端12收到下行数据包,将执行结果数据返回给密码应用11。
SKF RPC客户端12收到下行数据包后,反序列化得到SKF接口的执行结果和输出数据,并返回给密码应用11;密码应用11完成一次SKF接口远程调用。
本实施方式中,在移动智能终端1安装SKF RPC客户端12,在对应的计算机终端2上安装SKF RPC服务端21,从而移动智能终端1可以通过远程调用的方式,实现对智能密码钥匙的调用,与计算机终端2共享智能密码钥匙。
在本实施方式中,单个移动智能终端1与计算机终端2连接,实现智能密码钥匙共享。这里所说的移动智能终端1可以是手机、手表、可穿戴设备等。作为移动智能终端1中的密码应用11,比如,安装有中国银行应用软件,用于实现转账和付款等便捷操作。这里所说的计算机终端2,可以是台式计算机、笔记本电脑等。实际应用中,可以根据需要将多个移动智能终端1与计算机终端2连接,即可以是多对一的关系,比如,用户可以通过手机、手表等移动终端作为移动智能终端1远程调用与计算机终端2连接的智能密码钥匙3。作为智能密码钥匙3例如,现有技术中的USB智能密码钥匙。
在本实施例中,密码应用1读取存储在智能密码钥匙3中的证书文件过程如下:
由密码应用11调用符合GM/T 0016规范的SKF_ExportCertificate接口,输入参数为证书文件的容器句柄;SKF RPC客户端12将函数名称和输入参数按照RPC数据协议封装成数据包,发送给SKF RPC服务端21;
SKF RPC服务端21解析数据格式后,通过SKF代理组件22访问智能密码钥匙3,执行SKF_ExportCertificate函数并获得执行结果;函数返回值是成功、没找到证书、权限不足、读取失败等状态字,输出参数是证书文件的内容;SKF RPC服务端21将函数返回值和输出参数按协议格式封装后发送给SKF RPC客户端12;SKF RPC客户端12解析数据包,密码应用11即可获得本次远程调用结果,完成智能密码钥匙调用。
密码应用11通过RPC远程调用的方式访问插在计算机终端2上的智能密码钥匙3获取密码服务的过程中,遵循GM/T 0016密码应用接口规范。对于密码应用11而言,访问本地智能密码钥匙3获得密码服务和通过本发明的方法远程访问插在计算机终端2上的智能密码钥匙3获得密码服务,这两种访问方式的调用方法与接口规范是完全相同的,均遵循GM/T0016密码应用接口规范;密码应用3不需要为实施本发明做额外的修改。
用于远程执行SKF接口调用的RPC数据协议包括调用名称、输入参数、对应于调用名称的应答名称、输出参数、执行结果状态字几个要素。
调用名称及输入参数用于上行数据包(请求数据包)。
对应于调用名称的应答名称、执行结果状态字、输出参数用于下行数据包(应答数据包)。
SKF RPC客户端12和SKF RPC服务端21之间不仅要约定所需上述要素,还要约定数据包的数据封装格式。
以TLV格式为例,远程调用从智能智能密码钥匙中读取证书:
请求数据包:
调用名称为:TAG_CMD_GET_CERT;
输入参数:TAG_CERT_ID,长度2字节;
应答数据包:
对应于调用名称的应答名称:TAG_RSP_GET_CERT;
执行结果状态字:TAG_STATUS_CODE,长度4字节;
输出参数:TAG_CERT_DATA,证书数据;
以JSON格式为例,远程调用智能密码钥匙读取证书:
请求数据包:
调用名称为:"cmd":"getCert";
输入参数:"certID":"xxxxx….";
应答数据包:
对应于调用名称的应答名称:"resp":"getCert";
执行结果状态字:"statusCode":"xxxxx…";
输出参数:证书数据:"certData":"xxxxx…";
远程过程调用移动智能终端1的客户端(SKF RPC客户端12)与计算机终端2上的服务端(SKF RPC服务端21)可通过WIFI局域网络以网络报文的形式交换RPC数据包。网络通信过程中需鉴别SKF RPC服务端21的真实性、保护RPC数据包的完整性和机密性。
下面举例说明SKF RPC客户端12与SKF RPC服务端21在实现智能密码钥匙调用之前如何建立安全连接。
在智能密码钥匙3中预先安装一张RPC设备证书,用于让SKF RPC客户端12鉴别SKFRPC服务端21连接的智能密码钥匙的真实性。
SKF RPC客户端12从SKF RPC服务端21获取智能密码钥匙3中的RPC设备证书,验证RPC设备证书签名,并将证书信息展示给用户。
用户通过核验证书信息确认SKF RPC服务端21所连接的智能密码钥匙3的唯一标识。
SKF RPC客户端12与SKF RPC服务端21使用RPC设备证书进行SSL连接认证,建立SSL安全连接。SSL连接认证为现有技术,这里不再赘述。
本方法使用智能密码钥匙3中的RPC设备证书作为认证因素,用户可以通过移动智能终端1的密码应用3核验证书信息,确定即将远程访问的智能密码钥匙的唯一标识;通过SSL安全连接保护RPC数据包的完整性和机密性。为了鉴别SKF RPC服务端21(所连接的智能密码钥匙3)的真实性、保护RPC数据包的完整性和机密性,SKF RPC客户端12与SKF RPC服务端21建立连接的方法包含但不限于上述方法。
基于同样的思路,本发明实施例还提供一种存储有计算机程序的计算机可读存储介质,当所述计算机程序被一个或多个处理器执行时,致使所述一个或多个处理器执行包括以下的动作:
向服务端发送包含远程过程调用协议的上行数据包,以使所述服务端响应于所述上行数据包实现对SKF代理组件的调用;接收所述服务端反馈的包含远程过程调用协议的下行数据包,其中,所述下行数据包是由所述服务端通过SKF接口对智能密码钥匙访问后得到的;基于所述下行数据包中包含的SKF接口的执行结果执行密码应用。
基于同样的思路,本发明实施例还提供一种存储有计算机程序的计算机可读存储介质,当所述计算机程序被一个或多个处理器执行时,致使所述一个或多个处理器执行包括以下的动作:
接收包含远程过程调用协议的上行数据包;响应于所述上行数据包调用SKF代理组件;对通过所述SKF代理组件访问智能密码钥匙得到的下行数据包;发送包含远程过程调用协议的下行数据包给客户端,以使客户端响应于所述下行数据包包含的SKF接口的执行结果执行密码应用。
基于同样的思路,本发明实施例还提供一种电子设备,包括:一个或多个处理器,以及一个或多个存储计算机程序的存储器,以及传感器;
所述一个或多个处理器执行所述计算机程序,以用于:
向服务端发送包含远程过程调用协议的上行数据包,以使所述服务端响应于所述上行数据包实现对SKF代理组件的调用;接收所述服务端反馈的包含远程过程调用协议的下行数据包,其中,所述下行数据包是由所述服务端通过SKF接口对智能密码钥匙访问后得到的;基于所述下行数据包中包含的SKF接口的执行结果执行密码应用。
基于同样的思路,本发明实施例还提供一种电子设备,包括:一个或多个处理器,以及一个或多个存储计算机程序的存储器,以及传感器;
所述一个或多个处理器执行所述计算机程序,以用于:
接收包含远程过程调用协议的上行数据包;响应于所述上行数据包调用SKF代理组件;对通过所述SKF代理组件访问智能密码钥匙得到的下行数据包;发送包含远程过程调用协议的下行数据包给客户端,以使客户端响应于所述下行数据包包含的SKF接口的执行结果执行密码应用。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪存储体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
在现有技术中,若智能终端想要使用智能密码钥匙的时候,比如,可以通过蓝牙连接、音频接口连接或者OTG接口连接。无论采用上述三种连接方式中的哪一种,都需要用户为智能移动终端购买额外的带有蓝牙连接功能、音频连接功能或OTG连接功能的智能密码钥匙。并且蓝牙连接通道、音频连接通道等进行数据传输的速度比较缓慢,用户体验较差;不同版本的蓝牙连接协议兼容性不尽相同,不论是智能密码钥匙服务商还是移动终端服务商都需要付出额外的开发成本。
通过上述实施例可知,通过将智能密码钥匙3与安装有SKF RPC服务端21的计算机终端2设备连接,在移动智能终端1上安装有密码应用11和用于实现远程过程调用的SKFRPC客户端12。在需要进行智能密码钥匙调用的时候,SKF RPC客户端12可以利用远程过程调用协议,调用SKF接口,将请求发送给对应的SKF RPC服务端,然后,SKF RPC服务端将通过SKF代理组件获得的智能密码钥匙的执行结果基于远程过程调用协议,通过SKF接口发送给密码应用11。通过上述方案,在无需支出额外的硬件成本和部署成本的前提下,不仅能够满足多种不同终端的智能密码钥匙的调用需求,还能满足移动终端的远程调用需求,能够使PC和智能移动终端共享智能密码钥匙。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
以上所述仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。
Claims (9)
1.一种智能密码钥匙调用方法,其特征在于,应用于客户端,所述方法包括:
向服务端发送包含远程过程调用协议的上行数据包,以使所述服务端响应于所述上行数据包实现对SKF代理组件的调用;
接收所述服务端反馈的包含远程过程调用协议的下行数据包,其中,所述下行数据包是由所述服务端通过SKF接口对智能密码钥匙访问后得到的;
基于所述下行数据包中包含的SKF接口的执行结果执行密码应用。
2.根据权利要求1所述的方法,其特征在于,所述向服务端发送包含远程过程调用协议的上行数据包,以使所述服务端响应于所述上行数据包实现对SKF代理组件的调用,包括:
密码应用通过所述SKF接口实现对远程过程调用客户端的访问;
所述远程过程调用客户端将封装得到的所述上行数据包发送给所述服务端,以使所述服务端响应于所述上行数据包实现对SKF代理组件的调用。
3.根据权利要求2所述的方法,其特征在于,所述远程过程调用客户端将封装得到的所述上行数据包发送给所述服务端,包括:
所述远程过程调用客户端对SKF接口、函数名和形参进行序列化,封装得到所述远程过程调用上行数据包;
发送所述远程过程调用上行数据包给所述服务端。
4.根据权利要求2所述的方法,其特征在于,所述接收所述服务端反馈的包含远程过程调用协议的下行数据包,包括:
所述远程过程调用客户端接收所述服务端反馈的所述下行数据包;
反序列化所述下行数据包得到SKF接口的执行结果和输出数据;
通过所述SKF接口将所述SKF接口的执行结果和所述输出数据发送给所述密码应用。
5.一种智能密码钥匙调用方法,其特征在于,应用于服务端,所述方法包括:
接收包含远程过程调用协议的上行数据包;
响应于所述上行数据包调用SKF代理组件;
对通过所述SKF代理组件访问智能密码钥匙得到的下行数据包;
发送包含远程过程调用协议的下行数据包给客户端,以使客户端响应于所述下行数据包包含的SKF接口的执行结果执行密码应用。
6.根据权利要求5所述的方法,其特征在于,所述响应于所述上行数据包调用SKF代理组件,包括:
反序列化所述上行数据包,获得SKF接口、函数名和形参;
通过所述SKF接口调用SKF代理组件。
7.根据权利要求5所述的方法,其特征在于,所述对通过所述SKF代理组件访问智能密码钥匙得到的下行数据包,包括:
通过所述SKF代理组件访问所述智能密码钥匙得到SKF接口的执行结果;
基于所述SKF接口的执行结果和输出数据,序列化生成下行数据包。
8.一种智能密码钥匙调用系统,其特征在于,所述系统包括:
客户端,用于向服务端发送包含远程过程调用协议的上行数据包,以使所述服务端响应于所述上行数据包实现对SKF代理组件的调用;接收所述服务端反馈的包含远程过程调用协议的下行数据包,其中,所述下行数据包是由所述服务端通过SKF接口对智能密码钥匙访问后得到的;基于所述下行数据包中包含的SKF接口的执行结果执行密码应用;
服务端,用于接收包含远程过程调用协议的上行数据包;响应于所述上行数据包调用SKF代理组件;对通过所述SKF代理组件访问智能密码钥匙得到的下行数据包;发送包含远程过程调用协议的下行数据包给客户端,以使客户端响应于所述下行数据包包含的SKF接口的执行结果执行密码应用。
9.根据权利要求8所述的系统,其特征在于,所述客户端独立于所述密码应用或集成在所述密码应用中。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911103213.6A CN110866240A (zh) | 2019-11-12 | 2019-11-12 | 智能密码钥匙调用方法和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911103213.6A CN110866240A (zh) | 2019-11-12 | 2019-11-12 | 智能密码钥匙调用方法和系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110866240A true CN110866240A (zh) | 2020-03-06 |
Family
ID=69654737
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911103213.6A Pending CN110866240A (zh) | 2019-11-12 | 2019-11-12 | 智能密码钥匙调用方法和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110866240A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111447198A (zh) * | 2020-03-24 | 2020-07-24 | 中安云科科技发展(山东)有限公司 | 一种远程解锁智能密码钥匙的方法 |
CN115062330A (zh) * | 2022-08-18 | 2022-09-16 | 麒麟软件有限公司 | 基于tpm的智能密码钥匙密码应用接口的实现方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101686127A (zh) * | 2008-09-24 | 2010-03-31 | 北京创原天地科技有限公司 | 一种新型的USBKey安全调用方法和USBKey装置 |
CN105654290A (zh) * | 2014-11-10 | 2016-06-08 | 国民技术股份有限公司 | 一种终端与智能密码钥匙通信的方法、网关、终端及系统 |
US20160205498A1 (en) * | 2013-10-02 | 2016-07-14 | Panasonic Intellectual Property Management Co., Ltd. | Short-distance radio communication system for vehicle |
CN109583154A (zh) * | 2018-12-04 | 2019-04-05 | 北京华大智宝电子系统有限公司 | 一种基于Web中间件访问智能密码钥匙的系统及方法 |
-
2019
- 2019-11-12 CN CN201911103213.6A patent/CN110866240A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101686127A (zh) * | 2008-09-24 | 2010-03-31 | 北京创原天地科技有限公司 | 一种新型的USBKey安全调用方法和USBKey装置 |
US20160205498A1 (en) * | 2013-10-02 | 2016-07-14 | Panasonic Intellectual Property Management Co., Ltd. | Short-distance radio communication system for vehicle |
CN105654290A (zh) * | 2014-11-10 | 2016-06-08 | 国民技术股份有限公司 | 一种终端与智能密码钥匙通信的方法、网关、终端及系统 |
CN109583154A (zh) * | 2018-12-04 | 2019-04-05 | 北京华大智宝电子系统有限公司 | 一种基于Web中间件访问智能密码钥匙的系统及方法 |
Non-Patent Citations (1)
Title |
---|
郭建伟等: "《密码技术对"双网"的安全保护》", 31 December 2018, 兵器工业出版社 * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111447198A (zh) * | 2020-03-24 | 2020-07-24 | 中安云科科技发展(山东)有限公司 | 一种远程解锁智能密码钥匙的方法 |
CN111447198B (zh) * | 2020-03-24 | 2021-12-21 | 中安云科科技发展(山东)有限公司 | 一种远程解锁智能密码钥匙的方法 |
CN115062330A (zh) * | 2022-08-18 | 2022-09-16 | 麒麟软件有限公司 | 基于tpm的智能密码钥匙密码应用接口的实现方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3484125B1 (en) | Method and device for scheduling interface of hybrid cloud | |
KR102242218B1 (ko) | 사용자 인증 방법 및 장치, 및 웨어러블 디바이스 등록 방법 및 장치 | |
CN107689868B (zh) | 客户端应用与可信应用的通信方法、装置以及终端 | |
US6807561B2 (en) | Generic communication filters for distributed applications | |
US9799029B2 (en) | Securely receiving data input at a computing device without storing the data locally | |
CN101916388B (zh) | 智能sd卡及利用该智能sd进行移动支付的方法 | |
US9313257B2 (en) | Method for starting a client program | |
WO2020119379A1 (zh) | 一种基于区块链智能合约的编解码方法及系统 | |
TW202044019A (zh) | 基於h5接入方式的接入方法及其接入元件和移動終端 | |
WO2018090201A1 (zh) | 一种安全的处理器芯片及终端设备 | |
EP3007066A1 (en) | Method for using shared device in apparatus capable of operating two operating systems | |
US20200351247A1 (en) | Method and Apparatus for Trusted Service Management | |
CN110866240A (zh) | 智能密码钥匙调用方法和系统 | |
CN111125667A (zh) | 漫游密钥调用方法、装置和系统 | |
CN108833500B (zh) | 服务调用方法、服务提供方法、数据传递方法和服务器 | |
US9058498B2 (en) | Runtime environment management of secure communications on card computing devices | |
TWI657389B (zh) | 行動終端及其交易確認方法、裝置 | |
CN109525550B (zh) | 一种数据报文的处理方法、装置以及系统 | |
CN109872148B (zh) | 基于tui的可信数据处理方法、装置以及移动终端 | |
TWM587315U (zh) | 電子支付服務系統及信用卡服務系統 | |
CN116755842B (zh) | 身份验证系统部署方法、装置、设备及存储介质 | |
WO2024066749A1 (zh) | 区块链的交易执行方法、装置、程序产品、设备和介质 | |
CN110781522A (zh) | 一种ca调用方法 | |
CN114826693A (zh) | 一种数据交互方法、装置及介质 | |
CN117651273A (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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20200306 |
|
RJ01 | Rejection of invention patent application after publication |