CN110166452B - 一种基于JavaCard共享接口的访问控制方法及系统 - Google Patents

一种基于JavaCard共享接口的访问控制方法及系统 Download PDF

Info

Publication number
CN110166452B
CN110166452B CN201910423949.5A CN201910423949A CN110166452B CN 110166452 B CN110166452 B CN 110166452B CN 201910423949 A CN201910423949 A CN 201910423949A CN 110166452 B CN110166452 B CN 110166452B
Authority
CN
China
Prior art keywords
client
data
server
access control
random number
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
CN201910423949.5A
Other languages
English (en)
Other versions
CN110166452A (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.)
Eastcompeace Technology Co Ltd
Original Assignee
Eastcompeace Technology 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 Eastcompeace Technology Co Ltd filed Critical Eastcompeace Technology Co Ltd
Priority to CN201910423949.5A priority Critical patent/CN110166452B/zh
Publication of CN110166452A publication Critical patent/CN110166452A/zh
Application granted granted Critical
Publication of CN110166452B publication Critical patent/CN110166452B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/083Network architectures or network communication protocols for network security for authentication of entities using passwords
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0863Generation of secret information including derivation or calculation of cryptographic keys or passwords involving passwords or one-time passwords
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0869Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Storage Device Security (AREA)

Abstract

本申请所提供的一种基于JavaCard共享接口的访问控制方法,包括:通过卡片操作系统对服务端方法函数的调用获取客户端的应用标识符;查找服务端的应用注册信息表并判断应用注册信息表中是否存在客户端的应用标识符;若是,则将服务端的服务端对象转换为共享类型对象以允许客户端进行数据访问。可见,该方法存在数据访问授权机制,即只有已经授权的客户端才能对服务端进行数据访问,能够提高客户端和服务端之间数据访问的安全性。本申请还提供一种基于JavaCard共享接口的访问控制系统,亦具有上述有益效果。

Description

一种基于JavaCard共享接口的访问控制方法及系统
技术领域
本申请涉及数据访问领域,特别涉及一种基于JavaCard共享接口的访问控制方法及系统。
背景技术
目前,客户端通过共享接口对服务端进行数据访问时,服务端接收到客户端的数据访问请求就发送响应消息,以允许客户端对服务端进行数据访问。由于有些客户端是未知的客户端,其发送的数据访问请求可能是恶意的数据访问请求,导致安全风险较大。
因此,如何提高客户端和服务端之间数据访问的安全性是本领域技术人员亟需解决的技术问题。
发明内容
本申请的目的是提供一种基于JavaCard共享接口的访问控制方法及系统,能够提高客户端和服务端之间数据访问的安全性。
为解决上述技术问题,本申请提供一种基于JavaCard共享接口的访问控制方法,包括:
通过卡片操作系统对服务端方法函数的调用获取客户端的应用标识符;
查找服务端的应用注册信息表并判断所述应用注册信息表中是否存在所述客户端的所述应用标识符;
若是,则将所述服务端的服务端对象转换为共享类型对象以允许所述客户端进行数据访问。
优选地,所述查找服务端的应用注册信息表并判断所述应用注册信息表中是否存在所述客户端的所述应用标识符之前,还包括:
在接收所述客户端发送的Select命令后,响应FCI信息至所述客户端;
在接收所述客户端发送的Get Challenge命令后,生成预设长度的第一随机数并响应至所述客户端;
在接收所述客户端利用RSA公钥对所述第一随机数加密得到的认证数据后,利用所述RSA公钥对应的RSA私钥对所述认证数据进行解密得到明文,并将所述明文与所述第一随机数进行比较,得到比较结果;
将所述比较结果发送至所述客户端以判断所述比较结果的正确性;
若所述比较结果为False,则所述客户端执行结束流程操作;
若所述比较结果为True,则接收所述客户端通过Add Registry命令或DeleteRegistry命令发送的访问控制记录密文信息;其中,所述访问控制记录密文信息是所述客户端利用所述RSA公钥对所述应用标识符对应的访问控制记录信息进行加密而得到的密文信息;
在利用所述RSA私钥对所述访问控制记录密文信息进行解密后,依据所述AddRegistry命令或所述Delete Registry命令,在所述应用注册信息表中添加或删除所述访问控制记录信息。
优选地,所述将所述服务端的服务端对象转换为共享类型对象以允许所述客户端进行数据访问,包括:
接收所述客户端发送的数据读取请求;
将所述数据读取请求对应的数据信息响应至所述客户端。
优选地,所述将所述服务端的服务端对象转换为共享类型对象以允许所述客户端进行数据访问,包括:
在接收所述客户端发送的数据更新请求前,生成第二随机数并响应至所述客户端;
在接收所述客户端利用3DES算法或SM4算法对所述第二随机数加密得到的认证密文后,利用所述3DES算法或所述SM4算法对所述认证密文进行解密得到明文数据,并将所述明文数据与所述第二随机数进行比较,得到认证结果;
将所述认证结果发送至所述客户端以判断是否有权限对所述服务端进行数据更新;
若无所述权限,则所述客户端执行结束流程操作;
若有所述权限,则所述客户端对所述服务端执行数据更新操作。
本申请还提供一种基于JavaCard共享接口的访问控制系统,包括:
应用标识符获取模块,用于通过卡片操作系统对服务端方法函数的调用获取客户端的应用标识符;
应用标识符存在判断模块,用于查找服务端的应用注册信息表并判断所述应用注册信息表中是否存在所述客户端的所述应用标识符;
数据访问模块,用于若所述应用注册信息表中存在所述应用标识符,则将所述服务端的服务端对象转换为共享类型对象以允许所述客户端进行数据访问。
优选地,该基于JavaCard共享接口的访问控制系统还包括:
FCI信息响应模块,用于在接收所述客户端发送的Select命令后,响应FCI信息至所述客户端;
第一随机数生成模块,用于在接收所述客户端发送的Get Challenge命令后,生成预设长度的第一随机数并响应至所述客户端;
比较结果获取模块,用于在接收所述客户端利用RSA公钥对所述第一随机数加密得到的认证数据后,利用所述RSA公钥对应的RSA私钥对所述认证数据进行解密得到明文,并将所述明文与所述第一随机数进行比较,得到比较结果;
比较结果正确性判断模块,用于将所述比较结果发送至所述客户端以判断所述比较结果的正确性;
结束流程操作执行模块,用于若所述比较结果为False,则所述客户端执行结束流程操作;
访问控制记录密文信息接收模块,用于若所述比较结果为True,则接收所述客户端通过Add Registry命令或Delete Registry命令发送的访问控制记录密文信息;其中,所述访问控制记录密文信息是所述客户端利用所述RSA公钥对所述应用标识符对应的访问控制记录信息进行加密而得到的密文信息;
应用注册信息表更改模块,用于在利用所述RSA私钥对所述访问控制记录密文信息进行解密后,依据所述Add Registry命令或所述Delete Registry命令,在所述应用注册信息表中添加或删除所述访问控制记录信息。
优选地,所述数据访问模块,包括:
数据读取请求接收单元,用于接收所述客户端发送的数据读取请求;
数据信息响应单元,用于将所述数据读取请求对应的数据信息响应至所述客户端。
优选地,所述数据访问模块,包括:
第二随机数生成单元,用于在接收所述客户端发送的数据更新请求后,生成第二随机数并响应至所述客户端;
认证结果获取单元,用于在接收所述客户端利用3DES算法或SM4算法对所述第二随机数加密得到的认证密文后,利用所述3DES算法或所述SM4算法对所述认证密文进行解密得到明文数据,并将所述明文数据与所述第二随机数进行比较,得到认证结果;
权限判断单元,用于将所述认证结果发送至所述客户端以判断是否有权限对所述服务端进行数据更新;
结束流程操作执行单元,用于若无所述权限,则所述客户端执行结束流程操作;
数据更新操作执行单元,用于若有所述权限,则所述客户端对所述服务端执行数据更新操作。
本申请所提供的一种基于JavaCard共享接口的访问控制方法,包括:通过卡片操作系统对服务端方法函数的调用获取客户端的应用标识符;查找服务端的应用注册信息表并判断所述应用注册信息表中是否存在所述客户端的所述应用标识符;若是,则将所述服务端的服务端对象转换为共享类型对象以允许所述客户端进行数据访问。
该方法服务端先是获取客户端的应用标识符,再查找所述应用注册信息表并判断所述应用注册信息表中是否存在所述客户端的所述应用标识符,若存在该应用标识符,则将服务端对象转换为共享类型对象以允许所述客户端进行数据访问。可见,该方法存在数据访问授权机制,即只有已经授权的客户端才能对服务端进行数据访问,能够提高客户端和服务端之间数据访问的安全性。本申请还提供一种基于JavaCard共享接口的访问控制系统,亦具有上述有益效果,在此不再赘述。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本申请实施例所提供的一种基于JavaCard共享接口的访问控制方法的流程图;
图2为本申请实施例所提供的一种基于JavaCard共享接口的访问控制系统的结构框图。
具体实施方式
本申请的核心是提供一种基于JavaCard共享接口的访问控制方法,能够提高客户端和服务端之间数据访问的安全性。本申请的另一核心是提供一种基于JavaCard共享接口的访问控制系统。
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
目前,客户端通过共享接口对服务端进行数据访问时,服务端接收到客户端的数据访问请求就发送响应消息,以允许客户端对服务端进行数据访问。由于有些客户端是未知的客户端,其发送的数据访问请求可能是恶意的数据访问请求,导致安全风险较大。本申请提供的一种基于JavaCard共享接口的访问控制方法,能够提高客户端和服务端之间数据访问的安全性。具体请参考图1,图1为本申请实施例所提供的一种基于JavaCard共享接口的访问控制方法的流程图,该基于JavaCard共享接口的访问控制方法具体包括:
S101、通过卡片操作系统对服务端方法函数的调用获取客户端的应用标识符;
本申请实施例的执行主体为服务端,该服务端具体可为Server Applet。在通过卡片操作系统对服务端方法函数的调用获取客户端的应用标识符之前,客户端通过调用客户端方法函数获取服务端的共享接口对象。上述客户端具体可为Client Applet,上述客户端方法函数具体可为Client Method,上述服务端方法函数具体可为Server Method。
其中,Client Method和Server Method均为API,Client Method:public staticShareable getAppletShareableInterfaceObject(AID serverAID,byte parameter);Server Method:public Shareable getShareableInterfaceObject(AID clientAID,byteparameter)。在此对卡片操作系统以及应用标识符均不作具体限定,应由本领域技术人员根据实际情况作出相应的设定,卡片操作系统具体可以为金融卡的操作系统、SIM卡的操作系统、inSE的操作系统及eSE的操作系统;应用标识符具体可为AID。故步骤S101具体可为:Client Applet通过调用Client Method方法获取Server Applet的共享接口对象(Shareable Interface Object),第一个参数为Server Applet的AID对象;卡片操作系统通过Server Applet的AID在卡片的应用注册信息表中找到对应的Server Applet入口,调用Server Applet的Server Method方法,Server Method方法的第一个参数为ClientApplet的AID对象。
S102、查找应用注册信息表并判断应用注册信息表中是否存在客户端的应用标识符;
上述应用注册信息表具体可为AID Registry,数据结构为链表但不局限于此,亦可为数组、记录文件等,可保存多条访问控制记录信息(AID和Key)。步骤S102具体可为:Server Applet查找自己的AID Registry,判断是否存在Server Method方法第一个参数指定的Client Applet AID并将查找结果返回给Server Method方法。当应用服务提供方需要对一个Client Applet进行授权时,需要通过外部应用程序(TSM平台、手机客户端、PC桌面工具程序等)对Server Applet添加一条或多条访问控制记录信息到AID Registry(同一个AID可对应多组Key,可通过密钥索引区分)。
进一步地,上述查找服务端的应用注册信息表并判断应用注册信息表中是否存在客户端的应用标识符之前,通常还可以包括:在接收客户端发送的Select命令后,响应FCI信息至客户端;在接收客户端发送的Get Challenge命令后,生成预设长度的第一随机数并响应至客户端;在接收客户端利用RSA公钥对第一随机数加密得到的认证数据后,利用RSA公钥对应的RSA私钥对认证数据进行解密得到明文,并将明文与第一随机数进行比较,得到比较结果;将比较结果发送至客户端以判断比较结果的正确性;若比较结果为False,则客户端执行结束流程操作;若比较结果为True,则接收客户端通过Add Registry命令或Delete Registry命令发送的访问控制记录密文信息;其中,访问控制记录密文信息是客户端利用RSA公钥对应用标识符对应的访问控制记录信息进行加密而得到的密文信息;在利用RSA私钥对访问控制记录密文信息进行解密后,依据Add Registry命令或DeleteRegistry命令,在应用注册信息表中添加或删除访问控制记录信息。如果想要对多个Client Applet进行授权或取消授权操作,只需多次重复上述流程即可。访问控制记录信息添加成功后,即代表该记录信息中的AID所表示的Client Applet是一个合法的,经过应用服务提供方授权的Client Applet。当然,此方案是与卡片形态无关的。对于金融卡,应用服务提供方可以通过PC桌面工具和读卡器,对Server Applet的AID Registry做添加或删除记录操作,以达到授权或取消授权目的;如果是SIM卡,那么上述流程既可以通过手机客户端与Server Applet进行交互来实现,也可以通过TSM平台使用GSM03.48数据短信与ServerApplet进行交互来实现;如果是inSE或eSE,可通过手机客户端与Server Applet进行交互来实现。
本申请实施例能够体现访问授权机制的灵活性,应用服务提供方可通过访问授权机制,动态的添加或删除访问Server Applet数据的Client Applet,并能保证ClientApplet的合法性,增强了Server Applet的使用场景和服务能力。本申请实施例通过在Server Applet添加的访问授权机制和数据访问安全认证机制,既可动态添加多个ClientApplet通过共享接口访问Server Applet数据,又可对动态添加的多个Client Applet的合法性和后续数据访问的安全性得到有效的保证,增强了Server Applet的使用场景和服务能力。
S103、若应用注册信息表中存在客户端的应用标识符,则将服务端的服务端对象转换为共享类型对象以允许客户端进行数据访问。
本申请实施例对于若应用注册信息表中不存在客户端的应用标识符这种情况的后续操作不作具体限定,通常服务端发送空指针至上述客户端。Client Applet在通过共享接口对Server Applet进行数据访问之前,必须先经过Server Applet的授权确认,并获取到Server Applet的Shareable Interface Object,在Server Applet的ShareableInterface Object获取成功后,Client Applet就可以对Server Applet进行数据访问操作了。当然,根据具体的业务需求,数据的访问权限还可根据其安全级别不同进行额外的区分,比如非敏感信息可直接读取,敏感信息需额外认证才可读取;数据的读操作可直接进行,更新操作需额外认证才能进行等等。
进一步地,上述将服务端的服务端对象转换为共享类型对象以允许客户端进行数据访问,通常包括:接收客户端发送的数据读取请求;将数据读取请求对应的数据信息响应至客户端。具体地,Client Applet通过Shareable Interface Object直接调用共享接口的read data()方法对Server Applet进行数据读取操作,Server Applet将要读取的数据信息响应给Client Applet。
进一步地,上述将服务端的服务端对象转换为共享类型对象以允许客户端进行数据访问,通常包括:在接收客户端发送的数据更新请求前,生成第二随机数并响应至客户端;在接收客户端利用3DES算法或SM4算法对第二随机数加密得到的认证密文后,利用3DES算法或SM4算法对认证密文进行解密得到明文数据,并将明文数据与第二随机数进行比较,得到认证结果;将认证结果发送至客户端以判断是否有权限对服务端进行数据更新;若无权限,则客户端执行结束流程操作;若有权限,则客户端对服务端执行数据更新操作。本申请实施例中安全认证算法的类型不固定于非对称或对称算法,也不固定于国际算法或国密算法;非对称算法和对称算法、国密算法和国密算法均可相互替换,当然亦可采用两者相结合的方式。
上述过程具体如下:
(1).Client Applet通过Shareable Interface Object调用共享接口的getchallenge()方法;Server Applet生成随机数,响应给Client Applet;
(2).Client Applet使用指定key对获取到的随机数采用3DES或SM4算法加密得到认证密文,并将此认证密文通过Shareable Interface Object调用共享接口的externalauth()方法发送给Server Applet;Server Applet使用AID Registry中的相同key采用同样的算法对接收到的认证密文做解密操作得到明文数据,与第(1)步生成的随机数进行比较,Server Applet将比较结果作为认证结果保存,同时将认证结果响应给Client Applet;
(3).Client Applet根据响应的认证结果判断是否有权限对Server Applet进行数据更新操作:若认证成功,Client Applet通过Shareable Interface Object调用共享接口的update data()方法对Server Applet进行数据更新操作,Server Applet更新数据并将更新结果响应给Client Applet;若认证失败,则流程结束。但如果认证失败了,ClientApplet仍要进行数据更新操作,Server Applet会根据认证结果拒绝处理,并响应异常错误状态字给Client Applet。
本申请提供的一种基于JavaCard共享接口的访问控制方法,服务端先是通过卡片操作系统对服务端方法函数的调用获取客户端的应用标识符,再查找应用注册信息表并判断应用注册信息表中是否存在客户端的应用标识符,若存在该应用标识符,则将服务端对象转换为共享类型对象以允许客户端进行数据访问。可见,该方法存在数据访问授权机制,即只有已经授权的客户端才能对服务端进行数据访问,能够提高客户端和服务端之间数据访问的安全性。
下面对本申请实施例提供的一种基于JavaCard共享接口的访问控制系统进行介绍,下文描述的基于JavaCard共享接口的访问控制系统与上文描述的基于JavaCard共享接口的访问控制方法可相互对应参照。
请参考图2,图2为本申请实施例所提供的一种基于JavaCard共享接口的访问控制系统的结构框图;该基于JavaCard共享接口的访问控制系统包括:
应用标识符获取模块201,用于通过卡片操作系统对服务端方法函数的调用获取客户端的应用标识符;
应用标识符存在判断模块202,用于查找服务端的应用注册信息表并判断应用注册信息表中是否存在客户端的应用标识符;
数据访问模块203,用于若应用注册信息表中存在应用标识符,则将服务端的服务端对象转换为共享类型对象以允许客户端进行数据访问。
基于上述实施例,本实施例中该基于JavaCard共享接口的访问控制系统通常还可以包括:
FCI信息响应模块,用于在接收客户端发送的Select命令后,响应FCI信息至客户端;
第一随机数生成模块,用于在接收客户端发送的Get Challenge命令后,生成预设长度的第一随机数并响应至客户端;
比较结果获取模块,用于在接收客户端利用RSA公钥对第一随机数加密得到的认证数据后,利用RSA公钥对应的RSA私钥对认证数据进行解密得到明文,并将明文与第一随机数进行比较,得到比较结果;
比较结果正确性判断模块,用于将比较结果发送至客户端以判断比较结果的正确性;
结束流程操作执行模块,用于若比较结果为False,则客户端执行结束流程操作;
访问控制记录密文信息接收模块,用于若比较结果为True,则接收客户端通过AddRegistry命令或Delete Registry命令发送的访问控制记录密文信息;其中,访问控制记录密文信息是客户端利用RSA公钥对应用标识符对应的访问控制记录信息进行加密而得到的密文信息;
应用注册信息表更改模块,用于在利用RSA私钥对访问控制记录密文信息进行解密后,依据Add Registry命令或Delete Registry命令,在应用注册信息表中添加或删除访问控制记录信息。
基于上述实施例,本实施例中数据访问模块203通常包括:
数据读取请求接收单元,用于接收客户端发送的数据读取请求;
数据信息响应单元,用于将数据读取请求对应的数据信息响应至客户端。
基于上述实施例,本实施例中数据访问模块203通常包括:
第二随机数生成单元,用于在接收客户端发送的数据更新请求前,生成第二随机数并响应至客户端;
认证结果获取单元,用于在接收客户端利用3DES算法或SM4算法对第二随机数加密得到的认证密文后,利用3DES算法或SM4算法对认证密文进行解密得到明文数据,并将明文数据与第二随机数进行比较,得到认证结果;
权限判断单元,用于将认证结果发送至客户端以判断是否有权限对服务端进行数据更新;
结束流程操作执行单元,用于若无权限,则客户端执行结束流程操作;
数据更新操作执行单元,用于若有权限,则客户端对服务端执行数据更新操作。
说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例提供的系统而言,由于其与实施例提供的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。
以上对本申请所提供的一种基于JavaCard共享接口的访问控制方法及系统进行了详细介绍。本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以对本申请进行若干改进和修饰,这些改进和修饰也落入本申请权利要求的保护范围内。

Claims (6)

1.一种基于JavaCard共享接口的访问控制方法,其特征在于,包括:
通过卡片操作系统对服务端方法函数的调用获取客户端的应用标识符;
查找服务端的应用注册信息表并判断所述应用注册信息表中是否存在所述客户端的所述应用标识符;
若是,则将所述服务端的服务端对象转换为共享类型对象以允许所述客户端进行数据访问;
所述查找服务端的应用注册信息表并判断所述应用注册信息表中是否存在所述客户端的所述应用标识符之前,还包括:
在接收所述客户端发送的Select命令后,响应FCI信息至所述客户端;
在接收所述客户端发送的Get Challenge命令后,生成预设长度的第一随机数并响应至所述客户端;
在接收所述客户端利用RSA公钥对所述第一随机数加密得到的认证数据后,利用所述RSA公钥对应的RSA私钥对所述认证数据进行解密得到明文,并将所述明文与所述第一随机数进行比较,得到比较结果;
将所述比较结果发送至所述客户端以判断所述比较结果的正确性;
若所述比较结果为False,则所述客户端执行结束流程操作;
若所述比较结果为True,则接收所述客户端通过Add Registry命令或DeleteRegistry命令发送的访问控制记录密文信息;其中,所述访问控制记录密文信息是所述客户端利用所述RSA公钥对所述应用标识符对应的访问控制记录信息进行加密而得到的密文信息;
在利用所述RSA私钥对所述访问控制记录密文信息进行解密后,依据所述AddRegistry命令或所述Delete Registry命令,在所述应用注册信息表中添加或删除所述访问控制记录信息。
2.根据权利要求1所述的基于JavaCard共享接口的访问控制方法,其特征在于,所述将所述服务端的服务端对象转换为共享类型对象以允许所述客户端进行数据访问,包括:
接收所述客户端发送的数据读取请求;
将所述数据读取请求对应的数据信息响应至所述客户端。
3.根据权利要求1所述的基于JavaCard共享接口的访问控制方法,其特征在于,所述将所述服务端的服务端对象转换为共享类型对象以允许所述客户端进行数据访问,包括:
在接收所述客户端发送的数据更新请求前,生成第二随机数并响应至所述客户端;
在接收所述客户端利用3DES算法或SM4算法对所述第二随机数加密得到的认证密文后,利用所述3DES算法或所述SM4算法对所述认证密文进行解密得到明文数据,并将所述明文数据与所述第二随机数进行比较,得到认证结果;
将所述认证结果发送至所述客户端以判断是否有权限对所述服务端进行数据更新;
若无所述权限,则所述客户端执行结束流程操作;
若有所述权限,则所述客户端对所述服务端执行数据更新操作。
4.一种基于JavaCard共享接口的访问控制系统,其特征在于,包括:
应用标识符获取模块,用于通过卡片操作系统对服务端方法函数的调用获取客户端的应用标识符;
应用标识符存在判断模块,用于查找服务端的应用注册信息表并判断所述应用注册信息表中是否存在所述客户端的所述应用标识符;
数据访问模块,用于若所述应用注册信息表中存在所述应用标识符,则将所述服务端的服务端对象转换为共享类型对象以允许所述客户端进行数据访问;
FCI信息响应模块,用于在接收所述客户端发送的Select命令后,响应FCI信息至所述客户端;
第一随机数生成模块,用于在接收所述客户端发送的Get Challenge命令后,生成预设长度的第一随机数并响应至所述客户端;
比较结果获取模块,用于在接收所述客户端利用RSA公钥对所述第一随机数加密得到的认证数据后,利用所述RSA公钥对应的RSA私钥对所述认证数据进行解密得到明文,并将所述明文与所述第一随机数进行比较,得到比较结果;
比较结果正确性判断模块,用于将所述比较结果发送至所述客户端以判断所述比较结果的正确性;
结束流程操作执行模块,用于若所述比较结果为False,则所述客户端执行结束流程操作;
访问控制记录密文信息接收模块,用于若所述比较结果为True,则接收所述客户端通过Add Registry命令或Delete Registry命令发送的访问控制记录密文信息;其中,所述访问控制记录密文信息是所述客户端利用所述RSA公钥对所述应用标识符对应的访问控制记录信息进行加密而得到的密文信息;
应用注册信息表更改模块,用于在利用所述RSA私钥对所述访问控制记录密文信息进行解密后,依据所述Add Registry命令或所述Delete Registry命令,在所述应用注册信息表中添加或删除所述访问控制记录信息。
5.根据权利要求4所述的基于JavaCard共享接口的访问控制系统,其特征在于,所述数据访问模块,包括:
数据读取请求接收单元,用于接收所述客户端发送的数据读取请求;
数据信息响应单元,用于将所述数据读取请求对应的数据信息响应至所述客户端。
6.根据权利要求4所述的基于JavaCard共享接口的访问控制系统,其特征在于,所述数据访问模块,包括:
第二随机数生成单元,用于在接收所述客户端发送的数据更新请求前,生成第二随机数并响应至所述客户端;
认证结果获取单元,用于在接收所述客户端利用3DES算法或SM4算法对所述第二随机数加密得到的认证密文后,利用所述3DES算法或所述SM4算法对所述认证密文进行解密得到明文数据,并将所述明文数据与所述第二随机数进行比较,得到认证结果;
权限判断单元,用于将所述认证结果发送至所述客户端以判断是否有权限对所述服务端进行数据更新;
结束流程操作执行单元,用于若无所述权限,则所述客户端执行结束流程操作;
数据更新操作执行单元,用于若有所述权限,则所述客户端对所述服务端执行数据更新操作。
CN201910423949.5A 2019-05-21 2019-05-21 一种基于JavaCard共享接口的访问控制方法及系统 Active CN110166452B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910423949.5A CN110166452B (zh) 2019-05-21 2019-05-21 一种基于JavaCard共享接口的访问控制方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910423949.5A CN110166452B (zh) 2019-05-21 2019-05-21 一种基于JavaCard共享接口的访问控制方法及系统

Publications (2)

Publication Number Publication Date
CN110166452A CN110166452A (zh) 2019-08-23
CN110166452B true CN110166452B (zh) 2022-03-04

Family

ID=67631652

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910423949.5A Active CN110166452B (zh) 2019-05-21 2019-05-21 一种基于JavaCard共享接口的访问控制方法及系统

Country Status (1)

Country Link
CN (1) CN110166452B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113055198B (zh) * 2019-12-26 2022-05-31 大唐高鸿智联科技(重庆)有限公司 一种应用标识集合配置方法、设备、装置及介质

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008139923A (ja) * 2006-11-30 2008-06-19 Dainippon Printing Co Ltd 共有オブジェクトを有するicカード、共有オブジェクトへのアクセス管理方法、及び、icカードプログラム
CN102880897A (zh) * 2011-07-14 2013-01-16 中国移动通信集团公司 一种智能卡的应用数据共享方法和智能卡
CN105045597A (zh) * 2015-08-07 2015-11-11 中国联合网络通信集团有限公司 一种java卡对象调用方法及装置
CN105302666A (zh) * 2015-10-13 2016-02-03 东信和平科技股份有限公司 一种基于java card的应用内部数据备份与恢复方法
CN106293529A (zh) * 2016-08-08 2017-01-04 北京数码视讯支付技术有限公司 一种智能卡存储数据的方法、装置和智能卡
CN107968784A (zh) * 2017-12-01 2018-04-27 恒宝股份有限公司 一种提高JavaCard共享接口访问安全的认证方法及认证系统
CN108234125A (zh) * 2016-12-21 2018-06-29 金联汇通信息技术有限公司 用于身份认证的系统和方法

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7926086B1 (en) * 2006-10-31 2011-04-12 Oracle America, Inc. Access control mechanism for shareable interface communication access control
US8807440B1 (en) * 2010-12-17 2014-08-19 Google Inc. Routing secure element payment requests to an alternate application
CN102609253B (zh) * 2012-01-19 2016-04-20 捷德(中国)信息科技有限公司 一种智能卡的应用实现方法及系统
CN105427098B (zh) * 2015-11-02 2020-02-11 飞天诚信科技股份有限公司 一种不同应用之间信息共享的实现方法及装置

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008139923A (ja) * 2006-11-30 2008-06-19 Dainippon Printing Co Ltd 共有オブジェクトを有するicカード、共有オブジェクトへのアクセス管理方法、及び、icカードプログラム
CN102880897A (zh) * 2011-07-14 2013-01-16 中国移动通信集团公司 一种智能卡的应用数据共享方法和智能卡
CN105045597A (zh) * 2015-08-07 2015-11-11 中国联合网络通信集团有限公司 一种java卡对象调用方法及装置
CN105302666A (zh) * 2015-10-13 2016-02-03 东信和平科技股份有限公司 一种基于java card的应用内部数据备份与恢复方法
CN106293529A (zh) * 2016-08-08 2017-01-04 北京数码视讯支付技术有限公司 一种智能卡存储数据的方法、装置和智能卡
CN108234125A (zh) * 2016-12-21 2018-06-29 金联汇通信息技术有限公司 用于身份认证的系统和方法
CN107968784A (zh) * 2017-12-01 2018-04-27 恒宝股份有限公司 一种提高JavaCard共享接口访问安全的认证方法及认证系统

Also Published As

Publication number Publication date
CN110166452A (zh) 2019-08-23

Similar Documents

Publication Publication Date Title
US10666642B2 (en) System and method for service assisted mobile pairing of password-less computer login
US11882442B2 (en) Handset identifier verification
EP1801721B1 (en) Computer implemented method for securely acquiring a binding key for a token device and a secured memory device and system for securely binding a token device and a secured memory device
CN106992851B (zh) 基于TrustZone的数据库文件口令加解密方法、装置及终端设备
CN112632521B (zh) 一种请求响应方法、装置、电子设备和存储介质
CN110690956B (zh) 双向认证方法及系统、服务器和终端
GB2454792A (en) Controlling user access to multiple domains on a terminal using a removable storage means
CN107733652B (zh) 用于共享交通工具的开锁方法和系统及车锁
CN112512048B (zh) 移动网络接入系统、方法、存储介质及电子设备
CN110708291B (zh) 分布式网络中数据授权访问方法、装置、介质及电子设备
CN111200593A (zh) 应用登录方法、装置和电子设备
CN116436682A (zh) 数据处理方法、装置及系统
CN112560003A (zh) 用户权限管理方法和装置
CN110166452B (zh) 一种基于JavaCard共享接口的访问控制方法及系统
US20220167152A1 (en) Systems and methods for authenticating a subscriber identity module swap
CN112751803B (zh) 管理对象的方法、设备、计算机可读存储介质
CN115473655B (zh) 接入网络的终端认证方法、装置及存储介质
US20220174490A1 (en) System, method, storage medium and equipment for mobile network access
CN110457959B (zh) 一种基于Trust应用的信息传输方法及装置
JP7107241B2 (ja) 鍵共有方法、鍵共有システム、エージェント端末
CN109933994B (zh) 数据分级存储方法和装置以及计算设备
CN114830603B (zh) 用于获得与euicc安全模块的网络接入配置文件有关的命令的方法
KR102403303B1 (ko) 사용자 인증 기반 랜섬웨어 암호화 차단 서비스 제공 시스템
CN109474624B (zh) 一种应用程序认证系统及方法
CN118158673A (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