CN103793644A - 信息安全设备实现多应用的方法、信息安全设备和*** - Google Patents
信息安全设备实现多应用的方法、信息安全设备和*** Download PDFInfo
- Publication number
- CN103793644A CN103793644A CN201410072040.7A CN201410072040A CN103793644A CN 103793644 A CN103793644 A CN 103793644A CN 201410072040 A CN201410072040 A CN 201410072040A CN 103793644 A CN103793644 A CN 103793644A
- Authority
- CN
- China
- Prior art keywords
- intermediate code
- code file
- information safety
- safety devices
- application
- 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
-
- 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/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/629—Protecting access to data via a platform, e.g. using keys or access control rules to features or functions of an application
-
- 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/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/52—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow
-
- 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/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/52—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow
- G06F21/53—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow by executing in a restricted environment, e.g. sandbox or secure virtual machine
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Storage Device Security (AREA)
- Stored Programmes (AREA)
Abstract
本发明公开了一种信息安全设备实现多应用的方法、信息安全设备和***,该方法包括:终端将编写的应用程序进行编译转化得到中间码文件;终端对中间码文件进行安全校验并保存通过安全校验的中间码文件;终端接收信息安全设备发送的应用程序下载请求,并根据下载请求获取请求下载的至少两个应用程序的中间码文件;终端向信息安全设备发送所述至少两个应用程序的中间码文件;信息安全设备接收并保存所述至少两个应用程序的中间码文件;信息安全设备接收第一执行命令;信息安全设备上的中间码解释器执行第一执行命令指示的应用程序的中间码文件,其中,中间码文件用于调用信息安全设备的API对信息安全设备的硬件进行控制。
Description
技术领域
本发明涉及一种电子技术领域,尤其涉及一种信息安全设备实现多应用的方法、信息安全设备和***。
背景技术
随着互联网技术与电子商务的快速发展,信息安全问题日益突出,因此产生了多种用于保护用户敏感信息的信息安全设备,这些设备配合公钥基础设施(Public Key Infrastructure,PKI)等***,可以有效的保障用户数据交互、身份识别信息、权限管理等多种信息安全操作。
但是,现有的信息安全设备通常只能用于一种功能,若想实现多种功能,需要购买多个信息安全设备,这样会导致使用复杂,携带不方便;同时信息安全设备可支持的功能大多是固定的,不可以升级或增加,若需要使用新增的功能或升级后的功能,用户需要再次购买新的信息安全设备,导致用户的使用成本增加。
发明内容
本发明提供了一种信息安全设备实现多应用的方法、实现多应用的信息安全设备和实现多应用的信息安全***,以至少解决现有技术中信息安全设备不能支持多应用的问题。
根据本发明的一个方面,提供了一种信息安全设备实现多应用的方法,包括:终端将编写的应用程序进行编译转化,得到应用程序的中间码文件;所述终端对所述中间码文件进行安全校验;所述终端保存通过安全校验的中间码文件;所述终端接收信息安全设备发送的应用程序下载请求;所述终端根据所述下载请求获取请求下载的至少两个应用程序的中间码文件;所述终端向所述信息安全设备发送所述至少两个应用程序的中间码文件;所述信息安全设备接收并保存所述至少两个应用程序的中间码文件;所述信息安全设备接收第一执行命令;所述信息安全设备上的中间码解释器执行所述第一执行命令指示的应用程序的中间码文件,其中,所述中间码文件,用于调用所述信息安全设备的应用编程接口API(ApplicationProgramming Interface)对所述信息安全设备的硬件进行控制。
此外,在所述信息安全设备上用于存储所述至少两个应用程序的中间码文件的数据存储空间相互隔离。
此外,在所述信息安全设备接收第一执行命令之前,还包括:所述信息安全设备接收第一激活指令;所述信息安全设备将所述第一激活指令指示的应用程序的中间码文件进行激活;所述信息安全设备上的中间码解释器执行所述第一执行命令指示的应用程序的中间码文件,具体为:所述信息安全设备上的中间码解释器执行所述第一执行命令指示的激活后的应用程序的中间码文件。
此外,在所述信息安全设备上的中间码解释器执行所述第一执行命令指示的中间码文件的过程中,当所述中间码文件产生数据访问请求时,所述方法还包括:所述中间码解释器判断所述中间码文件请求访问的数据是否属于所述中间码文件有权限进行访问的数据;如果所述中间码解释器判断出所述中间码文件请求访问的数据属于所述中间码文件有权限进行访问的数据,则所述中间码解释器允许所述中间码文件执行数据访问,否则,所述中间码解释器拒绝所述中间码文件的数据访问。
根据本发明的另一个方面,提供了一种实现多应用的信息安全设备,包括:发送模块,用于向终端发送应用程序下载请求;接收模块,用于接收所述终端发送的请求下载的至少两个应用程序的中间码文件,所述应用程序的中间码文件由所述终端将编写的应用程序进行编译转化并安全校验后得到;存储模块,用于保存所述至少两个应用程序的中间码文件;所述接收模块,还用于接收第一执行命令;中间码解释器,用于执行所述第一执行命令指示的应用程序的中间码文件,其中,所述中间码文件,用于调用所述信息安全设备的API对所述信息安全设备的硬件进行控制。
此外,所述存储模块中用于存储所述至少两个应用程序的中间码文件的数据存储空间相互隔离。
此外,所述接收模块,还用于接收第一激活指令;所述设备还包括:激活模块,用于将所述第一激活指令指示的应用程序的中间码文件进行激活;所述中间码解释器,具体用于执行所述第一执行命令指示的激活后的应用程序的中间码文件。
此外,所述中间码解释器,还用于判断所述中间码文件请求访问的数据是否属于所述中间码文件有权限进行访问的数据;并在判断出所述中间码文件请求访问的数据属于所述中间码文件有权限进行访问的数据,允许所述中间码文件执行数据访问,否则,拒绝所述中间码文件的数据访问。
根据本发明的再一个方面,提供了一种实现多应用的信息安全***,包括:终端,用于将编写的应用程序进行编译转化,得到应用程序的中间码文件;对所述中间码文件进行安全校验;并保存通过安全校验的中间码文件;以及接收信息安全设备发送的应用程序下载请求;根据所述下载请求获取请求下载的至少两个应用程序的中间码文件;并向所述信息安全设备发送所述至少两个应用程序的中间码文件;所述信息安全设备,用于向所述终端发送所述应用程序下载请求,接收并保存所述至少两个应用程序的中间码文件;并接收第一执行命令;所述信息安全设备上的中间码解释器执行所述第一执行命令指示的应用程序的中间码文件,其中,所述中间码文件,用于调用所述信息安全设备的API对所述信息安全设备的硬件进行控制。
此外,所述信息安全设备上用于存储所述至少两个应用程序的中间码文件的数据存储空间相互隔离。
此外,所述信息安全设备,还用于接收第一激活指令;并将所述第一激活指令指示的应用程序的中间码文件进行激活;所述信息安全设备上的中间码解释器,具体用于执行所述第一执行命令指示的激活后的应用程序的中间码文件。
此外,所述信息安全设备上的中间码解释器,还用于判断所述中间码文件请求访问的数据是否属于所述中间码文件有权限进行访问的数据;并在判断出所述中间码文件请求访问的数据属于所述中间码文件有权限进行访问的数据,则允许所述中间码文件执行数据访问,否则,拒绝所述中间码文件的数据访问。
由上述本发明提供的技术方案可以看出,本发明提供了一种信息安全设备实现多应用的方法、实现多应用的信息安全设备和实现多应用的信息安全***,信息安全设备可以从终端下载应用(或应用程序)对应的中间码文件,使用中间码解释器执行中间码文件,调用***API对硬件进行控制,从而可以在信息安全设备上实现多应用,且应用可以动态更新。出于对***安全性的考虑,将应用程序转化为可执行的中间码文件,利用中间码解释器(位于信息安全设备的操作***内)执行应用程序对应的中间码文件,即在虚拟机上运行应用程序,而不直接操作硬件,通过虚拟机,可以对中间码指令进行较严格的检查和判断,拒绝非法操作(如数组越界、类型不匹配等),还可以使得应用程序同硬件隔离,提升应用程序的可移植性和硬件兼容性。另外,操作***定义了API,便于应用的开发编写和功能拓展,提高应用开发效率。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他附图。
图1为本发明实施例1提供的信息安全设备实现多应用的方法的流程图;
图2为本发明实施例2提供的实现多应用的信息安全设备的结构示意图;
图3为本发明实施例3提供的实现多应用的信息安全***的结构示意图。
具体实施方式
下面结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明的保护范围。此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或数量或位置。
下面将结合附图对本发明实施例作进一步地详细描述。
实施例1
本实施例提供了一种信息安全设备实现多应用的方法,本实施例中,终端可以是个人电脑PC等,信息安全设备可以是智能密钥设备(如USB key,音频key等)。采用本发明实施例提供的方法,信息安全设备除了可以实现签名功能外,还可以实现多种不同的应用。
图1为本发明实施例1提供的信息安全设备实现多应用的方法的流程图,如图1所示,包括以下步骤:
步骤101,终端将编写的应用程序进行编译转化,得到应用程序的中间码文件。
其中,应用程序可以采用高级语言编写,例如,BASIC语言、True BASIC语言、PASCAL语言、FORTRAN语言、C语言或C++语言、Java语言等。可以通过终端侧的工具对应用程序进行编译和转换得到应用程序对应的中间码文件。中间码文件就是可执行的中间码,中间码文件采用介于源程序语言和机器语言之间的类机器语言格式,可由信息安全设备中的中间码解释器解释执行。
例如,应用程序采用Java语言开发,终端采用编译转换工具可以将该采用Java语言开发的应用程序编译转换为可执行的中间码文件,该中间码文件例如是Java字节码。
步骤102,终端对中间码文件进行安全校验。终端对中间码文件进行安全校验,可以保证中间码文件的准确性,保证信息安全设备下载该中间码文件之后,信息安全设备上的中间码解释器可以正常执行该中间码文件,以实现该中间码文件对应的应用程序所支持的功能,增加信息安全设备的安全性。
步骤103,终端保存通过安全校验的中间码文件。
终端可以对多个不同的应用程序均采用上述步骤101-102的处理,以得到该多个应用程序对应的中间码文件。
终端上可以保存有多个应用程序对应的中间码文件,以供信息安全设备下载。
步骤104,终端接收信息安全设备发送的应用程序下载请求。
如果信息安全设备需要下载多个应用程序,可以发送多个下载请求,每个下载请求用于下载一个应用程序;或者,发送一个下载请求用于请求下载多个应用程序。具体的,可以在下载请求中携带待下载的应用程序的标识。
步骤105,终端根据下载请求获取请求下载的至少两个应用程序的中间码文件。
步骤106,终端向信息安全设备发送至少两个应用程序的中间码文件。
步骤107,信息安全设备接收并保存至少两个应用程序的中间码文件。
其中,对于步骤104至步骤107所述的下载应用程序对应的中间码文件的过程,终端可以通过无线通信接口,例如蓝牙接口、NFC接口、红外接口等向信息安全设备发送至少两个应用程序的中间码文件;或者,终端还可以通过有线连接通信接口,例如串口、USB接口、音频接口等向信息安全设备发送至少两个应用程序的中间码文件。信息安全设备中可以设置应用管理器,用于管理应用程序,完成应用下载、删除、更新等操作。更新应用时,可以从终端下载更新后的中间码文件。
需要说明的是,终端也可以在接收到信息安全设备的下载请求后,对编写的应用程序进行编译转化,得到应用程序的中间码文件,并对中间码文件进行安全校验,并在校验通过之后,保存通过校验的中间码文件并将该中间码文件发送给信息安全设备。
步骤108,信息安全设备接收第一执行命令。
其中,第一执行命令可以是用户通过按键输入的指令,其中,按键可以是硬件形式存在的物理按键,触摸屏上显示出的虚拟按键,或者其他形式可以实现按键功能的模块;第一执行命令还可以是由终端发送的。例如,用户可以在信息安全设备上通过按键选择应用程序,或者用户在终端上操作选择应用程序,由终端发送执行命令给信息安全设备。
步骤109,信息安全设备上的中间码解释器执行第一执行命令指示的应用程序的中间码文件,其中,中间码文件用于调用信息安全设备的API对信息安全设备的硬件进行控制。其中,信息安全设备的***API封装了标准信息安全应用***函数,例如,加解密函数,显示函数、按键操作函数和外部通讯函数等,通过使用***API,可以降低应用的开发难度,提升应用开发效率。信息安全设备的硬件可以是按键、显示屏、Flash等。
中间码解释器位于信息安全设备的操作***,中间码解释器执行中间码文件时(即在信息安全设备上运行该中间码文件对应的应用程序),通过调用信息安全设备的***API,实现对信息安全设备硬件的控制,例如,加解密运算、显示、数据存储和外部通讯等操作,在信息安全设备上实现应用的功能。
从上述技术方案可以看出,本实施例中信息安全设备可以从终端下载应用(或应用程序)对应的中间码文件,使用中间码解释器执行中间码文件,调用***API对硬件进行控制,从而可以在信息安全设备上实现多应用,且应用可以动态更新。出于对***安全性的考虑,将应用程序转化为可执行的中间码文件,利用中间码解释器(位于信息安全设备的操作***内)执行应用程序对应的中间码文件,即在虚拟机上运行应用程序,而不直接操作硬件,通过虚拟机,可以对中间码指令进行较严格的检查和判断,拒绝非法操作(如数组越界、类型不匹配等),还可以使得应用程序同硬件隔离,提升应用程序的可移植性和硬件兼容性。另外,操作***定义了API,便于应用的开发编写和功能拓展,提高应用开发效率。
在信息安全设备上用于存储所述至少两个应用程序的中间码文件的数据存储空间相互隔离。信息安全设备上的每个应用都有独立的数据存储空间,可以保障应用与应用之间的数据隔离,提高安全性。另外,信息安全设备可以使用独立的数据存储空间存储操作***与应用,将操作***与应用之间的数据隔离,以进一步提高安全性。
在步骤108中信息安全设备接收第一执行命令之前,还可以包括如下步骤:信息安全设备接收第一激活指令;信息安全设备将第一激活指令指示的应用程序的中间码文件进行激活;信息安全设备上的中间码解释器执行第一执行命令指示的应用程序的中间码文件,具体为:信息安全设备上的中间码解释器执行第一执行命令指示的激活后的应用程序的中间码文件。具体的,用户可以通过选择应用命令激活信息安全设备上的应用,操作***使用应用标识(Application Identifier,AID)来区分将激活的应用。应用激活后,信息安全设备将交由激活的应用接管,由该激活的应用完成相应的安全操作过程。
在信息安全设备上的中间码解释器执行第一执行命令指示的中间码文件的过程中,当中间码文件产生数据访问请求时,上述方法还包括:中间码解释器判断中间码文件请求访问的数据是否属于中间码文件有权限进行访问的数据;如果中间码解释器判断出中间码文件请求访问的数据属于中间码文件有权限进行访问的数据,则中间码解释器允许中间码文件执行数据访问,否则,中间码解释器拒绝中间码文件的数据访问。具体的,中间码解释器判断中间码文件请求访问的数据是否属于中间码文件有权限进行访问的数据,可以通过应用标识来进行判断,其中,有权限进行访问的数据也就是属于应用自身的数据,应用运行时,由中间码解释器检查所访问的数据是否属于应用自身,属于则可访问,否则,该访问将被拒绝并返回错误。这样,可以保证安全性,并且在出错的情况下,及时提示用户进行处理。
下面结合具体的例子进行说明。
以信息安全设备支持签名和动态验证两个应用为例。终端将签名和动态验证两个应用程序经过编译、转换得到各自对应的中间码文件,并进行安全校验,保存通过安全校验的中间码文件,供信息安全设备下载。
信息安全设备向终端发送下载请求,分别下载签名对应的中间码文件和动态验证对应的中间码文件,使用独立的存储区域存储两个应用,并激活应用,等待执行命令以使用相应的应用。
如果用户要使用信息安全设备的签名功能进行网上交易,可以在信息安全设备上选择签名功能对应的应用,信息安全设备上的中间码解释器解释执行该应用对应的中间码文件,调用***API控制硬件。先调用外部通讯函数控制信息安全设备接收交易终端(可以是手机、个人电脑、平板电脑等)发送的交易信息,调用显示函数控制显示屏显示接收到的交易信息,供用户确认,在用户确认之后,调用加密函数控制安全芯片对交易信息进行签名,调用外部通讯函数控制信息安全设备将签名后的数据传输给交易终端,交易终端通过服务器对接收到的数据验证签名,验证通过后,完成交易。
如果用户要使用信息安全设备的动态验证功能完成交易,可以在信息安全设备上选择动态验证功能对应的应用,信息安全设备上的中间码解释器解释执行该应用对应的中间码文件,调用***API控制硬件。先调用外部通讯函数控制信息安全设备接收交易终端(可以是手机、个人电脑、平板电脑等)发送的挑战码或者接收用户通过按键输入的挑战码,调用加密函数控制安全芯片根据挑战码计算动态口令,用户在交易终端上输入动态口令,利用服务器完成验证,进而完成交易。
实施例2
本实施例提供了一种实现多应用的信息安全设备,可以用于实现实施例1所述方法中信息安全设备执行的操作。如图2所示,该信息安全设备包括:
发送模块21,用于向终端发送应用程序下载请求;
接收模块22,用于接收终端发送的请求下载的至少两个应用程序的中间码文件,应用程序的中间码文件由终端将编写的应用程序进行编译转化并安全校验后得到;
存储模块23,连接至接收模块22,用于保存接收模块22接收的至少两个应用程序的中间码文件;
接收模块22,还用于接收第一执行命令;
中间码解释器24,连接至接收模块22,用于执行接收模块22接收的第一执行命令指示的应用程序的中间码文件,其中,中间码文件,用于调用信息安全设备的API对信息安全设备的硬件进行控制。
此外,存储模块23中用于存储至少两个应用程序的中间码文件的数据存储空间相互隔离。信息安全设备上的每个应用都有独立的数据存储空间,可以保障应用与应用之间的数据隔离,提高安全性。另外,信息安全设备可以使用独立的数据存储空间存储操作***与应用,将操作***与应用之间的数据隔离,以进一步提高安全性。
接收模块22,还用于接收第一激活指令;上述信息安全设备还可以包括:激活模块,连接至接收模块22,用于将接收模块22接收的第一激活指令指示的应用程序的中间码文件进行激活;中间码解释器24,具体用于执行第一执行命令指示的激活后的应用程序的中间码文件。
中间码解释器24,还用于判断中间码文件请求访问的数据是否属于中间码文件有权限进行访问的数据;并在判断出中间码文件请求访问的数据属于中间码文件有权限进行访问的数据,允许中间码文件执行数据访问,否则,拒绝中间码文件的数据访问。其中,有权限进行访问的数据也就是属于应用自身的数据,应用运行时,由中间码解释器检查所访问的数据是否属于应用自身,属于则可访问,否则,该访问将被拒绝并返回错误。这样,可以保证安全性,并且在出错的情况下,及时提示用户进行处理。
从上述技术方案可以看出,本实施例中信息安全设备可以从终端下载应用(或应用程序)对应的中间码文件,使用中间码解释器执行中间码文件,调用***API对硬件进行控制,从而可以在信息安全设备上实现多应用,且应用可以动态更新。出于对***安全性的考虑,将应用程序转化为可执行的中间码文件,利用中间码解释器(位于信息安全设备的操作***内)执行应用程序对应的中间码文件,即在虚拟机上运行应用程序,而不直接操作硬件,通过虚拟机,可以对中间码指令进行较严格的检查和判断,拒绝非法操作(如数组越界、类型不匹配等),还可以使得应用程序同硬件隔离,提升应用程序的可移植性和硬件兼容性。另外,操作***定义了API,便于应用的开发编写和功能拓展,提高应用开发效率。
当然,上述模块划分只是一种示意划分,本发明并不局限于此。只要能实现本发明的目的的模块划分,均应属于本发明的保护范围。
实施例3
本实施例提供了一种实现多应用的信息安全***,可以用于实现实施例1所述的信息安全设备实现多应用的方法。如图3所示,该***包括:信息安全设备20和终端30,信息安全设备20可以是如实施例2所述的信息安全设备。
终端30,用于将编写的应用程序进行编译转化,得到应用程序的中间码文件;对中间码文件进行安全校验;并保存通过安全校验的中间码文件;以及接收信息安全设备20发送的应用程序下载请求;根据下载请求获取请求下载的至少两个应用程序的中间码文件;并向信息安全设备20发送至少两个应用程序的中间码文件。其中,信息安全设备20需要下载的应用可以是预先存储在终端中的,并不是每次下载应用,终端都需要重复编写、编译、转化、校验、保存的步骤。
信息安全设备20,用于向终端30发送应用程序下载请求,接收并保存终端30发送的至少两个应用程序的中间码文件;并接收第一执行命令;信息安全设备20上的中间码解释器执行第一执行命令指示的应用程序的中间码文件,其中,中间码文件用于调用信息安全设备20的API对信息安全设备20的硬件进行控制。
此外,信息安全设备20上用于存储至少两个应用程序的中间码文件的数据存储空间相互隔离。信息安全设备上的每个应用都有独立的数据存储空间,可以保障应用与应用之间的数据隔离,提高安全性。另外,信息安全设备可以使用独立的数据存储空间存储操作***与应用,将操作***与应用之间的数据隔离,以进一步提高安全性。
此外,信息安全设备20,还用于接收第一激活指令;并将第一激活指令指示的应用程序的中间码文件进行激活;信息安全设备20上的中间码解释器,具体用于执行第一执行命令指示的激活后的应用程序的中间码文件。
此外,信息安全设备20上的中间码解释器,还用于判断中间码文件请求访问的数据是否属于中间码文件有权限进行访问的数据;并在判断出中间码文件请求访问的数据属于中间码文件有权限进行访问的数据,允许中间码文件执行数据访问,否则,拒绝中间码文件的数据访问。其中,有权限进行访问的数据也就是属于应用自身的数据,应用运行时,由中间码解释器检查所访问的数据是否属于应用自身,属于则可访问,否则,该访问将被拒绝并返回错误。这样,可以保证安全性,并且在出错的情况下,及时提示用户进行处理。
本实施例提供的信息安全设备,可以是智能密钥设备,例如USB key、支持音频接口的key、支持蓝牙接口/红外接口/NFC接口/WIFI的key等等,或者还可以是电子口令牌/动态口令牌,或者还可以是集成key和电子口令牌/动态口令牌的设备。
从上述技术方案可以看出,本实施例中信息安全设备可以从终端下载应用(或应用程序)对应的中间码文件,使用中间码解释器执行中间码文件,调用***API对硬件进行控制,从而可以在信息安全设备上实现多应用,且应用可以动态更新。出于对***安全性的考虑,将应用程序转化为可执行的中间码文件,利用中间码解释器(位于信息安全设备的操作***内)执行应用程序对应的中间码文件,即在虚拟机上运行应用程序,而不直接操作硬件,通过虚拟机,可以对中间码指令进行较严格的检查和判断,拒绝非法操作(如数组越界、类型不匹配等),还可以使得应用程序同硬件隔离,提升应用程序的可移植性和硬件兼容性。另外,操作***定义了API,便于应用的开发编写和功能拓展,提高应用开发效率。
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本发明的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本发明的实施例所属技术领域的技术人员所理解。
应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行***执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。
本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
此外,在本发明各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。
上述提到的存储介质可以是只读存储器,磁盘或光盘等。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
尽管上面已经示出和描述了本发明的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本发明的限制,本领域的普通技术人员在不脱离本发明的原理和宗旨的情况下在本发明的范围内可以对上述实施例进行变化、修改、替换和变型。本发明的范围由所附权利要求及其等同限定。
Claims (12)
1.一种信息安全设备实现多应用的方法,其特征在于,包括:
终端将编写的应用程序进行编译转化,得到应用程序的中间码文件;
所述终端对所述中间码文件进行安全校验;
所述终端保存通过安全校验的中间码文件;
所述终端接收信息安全设备发送的应用程序下载请求;
所述终端根据所述下载请求获取请求下载的至少两个应用程序的中间码文件;
所述终端向所述信息安全设备发送所述至少两个应用程序的中间码文件;
所述信息安全设备接收并保存所述至少两个应用程序的中间码文件;
所述信息安全设备接收第一执行命令;
所述信息安全设备上的中间码解释器执行所述第一执行命令指示的应用程序的中间码文件,其中,所述中间码文件,用于调用所述信息安全设备的应用编程接口API对所述信息安全设备的硬件进行控制。
2.根据权利要求1所述的一种信息安全设备实现多应用的方法,其特征在于,
在所述信息安全设备上用于存储所述至少两个应用程序的中间码文件的数据存储空间相互隔离。
3.根据权利要求1所述的一种信息安全设备实现多应用的方法,其特征在于,在所述信息安全设备接收第一执行命令之前,还包括:
所述信息安全设备接收第一激活指令;
所述信息安全设备将所述第一激活指令指示的应用程序的中间码文件进行激活;
所述信息安全设备上的中间码解释器执行所述第一执行命令指示的应用程序的中间码文件,具体为:所述信息安全设备上的中间码解释器执行所述第一执行命令指示的激活后的应用程序的中间码文件。
4.根据权利要求1所述的一种信息安全设备实现多应用的方法,其特征在于,
在所述信息安全设备上的中间码解释器执行所述第一执行命令指示的中间码文件的过程中,当所述中间码文件产生数据访问请求时,所述方法还包括:
所述中间码解释器判断所述中间码文件请求访问的数据是否属于所述中间码文件有权限进行访问的数据;
如果所述中间码解释器判断出所述中间码文件请求访问的数据属于所述中间码文件有权限进行访问的数据,则所述中间码解释器允许所述中间码文件执行数据访问,否则,所述中间码解释器拒绝所述中间码文件的数据访问。
5.一种实现多应用的信息安全设备,其特征在于,包括:
发送模块,用于向终端发送应用程序下载请求;
接收模块,用于接收所述终端发送的请求下载的至少两个应用程序的中间码文件,所述应用程序的中间码文件由所述终端将编写的应用程序进行编译转化并安全校验后得到;
存储模块,用于保存所述至少两个应用程序的中间码文件;
所述接收模块,还用于接收第一执行命令;
中间码解释器,用于执行所述第一执行命令指示的应用程序的中间码文件,其中,所述中间码文件,用于调用所述信息安全设备的应用编程接口API对所述信息安全设备的硬件进行控制。
6.根据权利要求5所述的一种实现多应用的信息安全设备,其特征在于,
所述存储模块中用于存储所述至少两个应用程序的中间码文件的数据存储空间相互隔离。
7.根据权利要求5所述的一种实现多应用的信息安全设备,其特征在于,
所述接收模块,还用于接收第一激活指令;
所述设备还包括:
激活模块,用于将所述第一激活指令指示的应用程序的中间码文件进行激活;
所述中间码解释器,具体用于执行所述第一执行命令指示的激活后的应用程序的中间码文件。
8.根据权利要求5所述的一种实现多应用的信息安全设备,其特征在于,
所述中间码解释器,还用于判断所述中间码文件请求访问的数据是否属于所述中间码文件有权限进行访问的数据;并在判断出所述中间码文件请求访问的数据属于所述中间码文件有权限进行访问的数据,允许所述中间码文件执行数据访问,否则,拒绝所述中间码文件的数据访问。
9.一种实现多应用的信息安全***,其特征在于,包括:
终端,用于将编写的应用程序进行编译转化,得到应用程序的中间码文件;对所述中间码文件进行安全校验;并保存通过安全校验的中间码文件;以及接收信息安全设备发送的应用程序下载请求;根据所述下载请求获取请求下载的至少两个应用程序的中间码文件;并向所述信息安全设备发送所述至少两个应用程序的中间码文件;
所述信息安全设备,用于向所述终端发送所述应用程序下载请求,接收并保存所述至少两个应用程序的中间码文件;并接收第一执行命令;所述信息安全设备上的中间码解释器执行所述第一执行命令指示的应用程序的中间码文件,其中,所述中间码文件,用于调用所述信息安全设备的应用编程接口API对所述信息安全设备的硬件进行控制。
10.根据权利要求9所述的一种实现多应用的信息安全***,其特征在于,所述信息安全设备上用于存储所述至少两个应用程序的中间码文件的数据存储空间相互隔离。
11.根据权利要求9所述的一种实现多应用的信息安全***,其特征在于,
所述信息安全设备,还用于接收第一激活指令;并将所述第一激活指令指示的应用程序的中间码文件进行激活;
所述信息安全设备上的中间码解释器,具体用于执行所述第一执行命令指示的激活后的应用程序的中间码文件。
12.根据权利要求9所述的一种实现多应用的信息安全***,其特征在于,
所述信息安全设备上的中间码解释器,还用于判断所述中间码文件请求访问的数据是否属于所述中间码文件有权限进行访问的数据;并在判断出所述中间码文件请求访问的数据属于所述中间码文件有权限进行访问的数据,则允许所述中间码文件执行数据访问,否则,拒绝所述中间码文件的数据访问。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410072040.7A CN103793644B (zh) | 2014-02-28 | 2014-02-28 | 信息安全设备实现多应用的方法、信息安全设备和*** |
PCT/CN2015/071356 WO2015127842A1 (zh) | 2014-02-28 | 2015-01-22 | 信息安全设备实现多应用的方法、信息安全设备和*** |
SG11201605738YA SG11201605738YA (en) | 2014-02-28 | 2015-01-22 | Method for information security equipment to realize multiple applications, information security equipment and system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410072040.7A CN103793644B (zh) | 2014-02-28 | 2014-02-28 | 信息安全设备实现多应用的方法、信息安全设备和*** |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103793644A true CN103793644A (zh) | 2014-05-14 |
CN103793644B CN103793644B (zh) | 2017-09-19 |
Family
ID=50669298
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410072040.7A Active CN103793644B (zh) | 2014-02-28 | 2014-02-28 | 信息安全设备实现多应用的方法、信息安全设备和*** |
Country Status (3)
Country | Link |
---|---|
CN (1) | CN103793644B (zh) |
SG (1) | SG11201605738YA (zh) |
WO (1) | WO2015127842A1 (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2015127842A1 (zh) * | 2014-02-28 | 2015-09-03 | 天地融科技股份有限公司 | 信息安全设备实现多应用的方法、信息安全设备和*** |
CN106372463A (zh) * | 2016-08-22 | 2017-02-01 | 北京深思数盾科技股份有限公司 | 中间件保护方法、装置及*** |
CN111125644A (zh) * | 2018-11-01 | 2020-05-08 | 百度在线网络技术(北京)有限公司 | 应用产品的信息隐藏方法和装置 |
CN111641587A (zh) * | 2020-04-27 | 2020-09-08 | 河南省云安大数据安全防护产业技术研究院有限公司 | 物联网设备互联互通的方法、装置 |
CN116418601A (zh) * | 2023-06-09 | 2023-07-11 | 南京信息工程大学 | 一种基于区块链辅助校验的全流程信息安全监控*** |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109831304B (zh) * | 2018-12-26 | 2024-04-02 | 北京握奇智能科技有限公司 | 一种身份认证设备的多应用方法及*** |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100005481A1 (en) * | 2004-12-15 | 2010-01-07 | Nokia Corporation | Method of Maintaining Applications in a Computing Device |
CN101866463A (zh) * | 2009-04-14 | 2010-10-20 | 中兴通讯股份有限公司 | 一种eNFC终端、eNFC智能卡及其通信方法 |
CN102087716A (zh) * | 2011-03-02 | 2011-06-08 | 武汉天喻信息产业股份有限公司 | 一种多应用Java智能卡 |
CN102202242A (zh) * | 2011-05-19 | 2011-09-28 | 广东星海数字家庭产业技术研究院有限公司 | 基于机顶盒浏览器的JavaScript解释器实现方法 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004220567A (ja) * | 2002-12-27 | 2004-08-05 | Masataka Hattori | 電子キャッシュシステム |
US20090193261A1 (en) * | 2008-01-25 | 2009-07-30 | Mediatek Inc. | Apparatus and method for authenticating a flash program |
CN202261385U (zh) * | 2011-11-04 | 2012-05-30 | 中国工商银行股份有限公司 | 一种银行卡交易前置设备的密钥同步*** |
CN103325036B (zh) * | 2012-01-16 | 2018-02-02 | 深圳市可秉资产管理合伙企业(有限合伙) | 通过不安全网络进行安全交易的移动装置 |
CN103793644B (zh) * | 2014-02-28 | 2017-09-19 | 天地融科技股份有限公司 | 信息安全设备实现多应用的方法、信息安全设备和*** |
-
2014
- 2014-02-28 CN CN201410072040.7A patent/CN103793644B/zh active Active
-
2015
- 2015-01-22 SG SG11201605738YA patent/SG11201605738YA/en unknown
- 2015-01-22 WO PCT/CN2015/071356 patent/WO2015127842A1/zh active Application Filing
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100005481A1 (en) * | 2004-12-15 | 2010-01-07 | Nokia Corporation | Method of Maintaining Applications in a Computing Device |
CN101866463A (zh) * | 2009-04-14 | 2010-10-20 | 中兴通讯股份有限公司 | 一种eNFC终端、eNFC智能卡及其通信方法 |
CN102087716A (zh) * | 2011-03-02 | 2011-06-08 | 武汉天喻信息产业股份有限公司 | 一种多应用Java智能卡 |
CN102202242A (zh) * | 2011-05-19 | 2011-09-28 | 广东星海数字家庭产业技术研究院有限公司 | 基于机顶盒浏览器的JavaScript解释器实现方法 |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2015127842A1 (zh) * | 2014-02-28 | 2015-09-03 | 天地融科技股份有限公司 | 信息安全设备实现多应用的方法、信息安全设备和*** |
CN106372463A (zh) * | 2016-08-22 | 2017-02-01 | 北京深思数盾科技股份有限公司 | 中间件保护方法、装置及*** |
CN111125644A (zh) * | 2018-11-01 | 2020-05-08 | 百度在线网络技术(北京)有限公司 | 应用产品的信息隐藏方法和装置 |
CN111641587A (zh) * | 2020-04-27 | 2020-09-08 | 河南省云安大数据安全防护产业技术研究院有限公司 | 物联网设备互联互通的方法、装置 |
CN116418601A (zh) * | 2023-06-09 | 2023-07-11 | 南京信息工程大学 | 一种基于区块链辅助校验的全流程信息安全监控*** |
CN116418601B (zh) * | 2023-06-09 | 2023-08-22 | 南京信息工程大学 | 一种基于区块链辅助校验的全流程信息安全监控*** |
Also Published As
Publication number | Publication date |
---|---|
SG11201605738YA (en) | 2016-08-30 |
CN103793644B (zh) | 2017-09-19 |
WO2015127842A1 (zh) | 2015-09-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103793644A (zh) | 信息安全设备实现多应用的方法、信息安全设备和*** | |
KR102327782B1 (ko) | 전자 장치 및 커널 데이터 접근 방법 | |
CN105531710A (zh) | 授权在目标计算装置上执行操作的方法 | |
CN112558946B (zh) | 一种生成代码的方法、装置、设备和计算机可读存储介质 | |
CN103150514A (zh) | 一种基于移动设备的可信模块及其可信服务方法 | |
CN103713918A (zh) | 软件应用安装***和方法 | |
US11907931B2 (en) | Method and system for managing virtual electronic card, secure chip, terminal and storage medium | |
JP6923582B2 (ja) | 情報処理装置、情報処理方法、およびプログラム | |
JP2018523208A (ja) | オブジェクト指向コンテキストにおける推移問題を軽減するためのデータ監視のための技法 | |
CN104036194A (zh) | 一种应用程序中泄露隐私数据的漏洞检测方法及装置 | |
CN107463407A (zh) | 指纹芯片初始化方法及装置 | |
US10025575B2 (en) | Method for installing security-relevant applications in a security element of a terminal | |
CN103885784A (zh) | 具有安全模块可插拔功能的Android平台构建方法 | |
CN106576239B (zh) | 一种安全单元中内容管理的方法及装置 | |
KR20200025950A (ko) | 디지털 키를 처리하는 전자 디바이스 및 그 동작 방법 | |
CN109145598A (zh) | 脚本文件的病毒检测方法、装置、终端及存储介质 | |
KR102133251B1 (ko) | 애플리케이션 프로그램 보호 방법 및 장치 | |
CN107315610B (zh) | 实现密码功能的方法、装置及计算机可读存储介质 | |
JP5962671B2 (ja) | 情報処理装置、情報処理方法およびコンピュータプログラム | |
CN104657631A (zh) | 应用的渠道信息的处理方法及装置 | |
KR20220074133A (ko) | 시설 관리 서비스 제공 방법 및 장치 | |
CN110046493B (zh) | 一种数据处理方法、装置、设备和机器可读介质 | |
CN108200013B (zh) | 一种基于云端的远程安全访问的方法、装置以及*** | |
JP2020150473A (ja) | eUICCおよびeUICCのプロビジョニング方法 | |
Larke | Provisioning embedded systems with dual-interface NFC tags |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |