一种虚拟机数据访问方法、存储介质及装置制造方法及图纸

技术编号:35772337 阅读:34 留言:0更新日期:2022-12-01 14:14
本发明专利技术涉及一种虚拟机数据访问方法,包括步骤:为每个应用及运行环境指定专用的ADF,用于存储应用及运行环境创建的对象,且应用的ADF皆放置于运行环境的ADF之内,并通过运行环境提供的本地方法进行当前ADF切换;采用高级语言注解方式指定输出接口,并对注解的输出接口以及实现输出接口的类增加标志位,以通过输出接口方法实现应用间跨防火墙的访问;通过运行环境为应用创建影子数组对象,实现应用和运行环境及应用和应用间的数据共享。本发明专利技术还提供一种存储介质及一种虚拟机数据访问装置,采用本发明专利技术所述的虚拟机数据访问方法、存储介质及装置可在保证防火墙机制的实施的前提下,避免指令执行变慢的问题。免指令执行变慢的问题。免指令执行变慢的问题。

【技术实现步骤摘要】
一种虚拟机数据访问方法、存储介质及装置


[0001]本专利技术属于计算机安全
,具体涉及一种虚拟机数据访问方法、存储介质及装置。

技术介绍

[0002]传统在资源受限的装置如智能卡实现的面向对象的虚拟机,可以硬件独立地执行采用高级语言编写的应用,经过编译、转换为可下载的文件格式,安装到智能卡的运行环境中执行,运行环境需要采用防火墙技术保证应用间、应用和运行环境间隔离。
[0003]应用可以通过运行环境提供的应用编程接口访问访问运行环境提供的特权服务,运行环境在收到外部发送的请求选择指定应用,并选择的应用发送服务请求时,需要具有向指定应用发送消息的权限,即调用应用的特定入口点方法。运行环境有时需要通过应用编程接口向应用转递属于运行环境的对象,并指定应用可以访问这些对象的特定方法的权限,这些运行环境对象称为入口点对象,可以被应用访问的方法称为入口点方法;运行环境还可以提供所谓的全局数组,通过应用编程接口传递到应用,并允许应用访问这些全局数组。
[0004]入口点对象和全局数组防火墙机制,要求每次访问类实例的对象方法的指令时需要检查此对象是否为入口点对象,每次访问数组时需要检查是否是全局数组,如是入口点对象,需要进行上下文切换;尽管这些检查可以保证防火墙机制的实施,也导致了指令执行变慢的问题。

技术实现思路

[0005]针对现有技术中存在的缺陷,本专利技术的目的是提供一种虚拟机数据访问方法、存储介质及装置以在保证应用安全性的同时也提高虚拟机执行指令的速度。
[0006]为达到以上目的,本专利技术采用的技术方案是:一种虚拟机数据访问方法,包括步骤:为每个应用及运行环境指定专用的ADF,用于存储应用及运行环境创建的对象,每个应用只能访问其ADF下的对象,且应用的ADF皆放置于运行环境的ADF之内,并通过运行环境提供的本地方法进行当前ADF切换;采用高级语言注解方式指定输出接口,并对注解的输出接口以及实现输出接口的类增加标志位,虚拟机检查该标志位允许输出接口方法实现应用间跨防火墙的访问,且在调用输出接口方法、方法返回及异常退出时,分别设置输出接口对象所在的ADF或调用方法的ADF为当前ADF;通过运行环境为应用创建影子数组对象,实现应用和运行环境及应用和应用间的数据共享。
[0007]进一步,每个应用创建的对象以内部基本文件方式存储,内部基本文件通过文件标识符访问,每个ADF下内部基本文件的文件标识符唯一。
[0008]进一步,对象包括实例对象和数组对象,实例对象的内容包括创建对象的应用实例信息、对象的定义类信息、对象的实例域信息以及其他辅助信息;数组对象的内容包括创建对象的应用实例信息、数组元素的类型、数组元素个数以及其他辅助信息。
[0009]进一步,所述数组的影子数组和源数组具有相同的成员类型,成员的存储位置也相同,但具有不同的安全访问属性,所述影子数组对象在文件系统的存储位置不同,因而不同的访问权限;只有运行环境具有为应用创建运行环境数组对象的影子数组对象,或将一个应用的数组对象为指定应用创建影子数组对象的特权。
[0010]进一步,运行环境可以访问运行环境ADF下IEF文件以及每个应用的ADF以及应用ADF下的IEF文件,实现运行环境访问所有应用的对象的实例域以及调用所有应用的对象的方法;运行环境调用应用对象的方法时需要切换到应用的ADF,方法正常返回或者异常退出时切换回之前的ADF。
[0011]进一步,运行环境可以将APDU缓冲区字节数组创建影子数组,该数组放置在应用的ADF下,通过应用编程接口的参数方式转递到应用,应用通过该参数调用应用编程接口创建APDU实例,实现应用从缓冲区中读取APDU命令,并将命令的处理结果,以APDU响应返回到运行环境。
[0012]进一步,在运行环境需要抛出指定异常时,通过调用当前应用的回调方法,返回应用拥有的指定的异常对象。
[0013]进一步,应用通过运行环境提供的应用编程接口访问运行环境的服务,应用编程接口的实现通过调用ADF切换本地方法,将当前应用的ADF切换到运行环境的ADF,从而可以执行运行环境的代码。
[0014]本专利技术还提供一种存储介质,所述存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行所述的虚拟机数据访问方法。
[0015]本专利技术还提供一种虚拟机数据访问装置,包括:指定存储模块,用于为每个应用及运行环境指定专用的ADF,用于存储应用及运行环境创建的对象,每个应用只能访问其ADF下的对象,且应用的ADF皆放置于运行环境的ADF之内,并通过运行环境提供的本地方法进行当前ADF切换;注解模块,用于指定输出接口,并对注解的输出接口以及实现输出接口的类增加标志位,虚拟机检查该标志位允许输出接口方法实现应用间跨防火墙的访问,且在调用输出接口方法、方法返回及异常退出时,分别设置输出接口对象所在的ADF或调用方法的ADF为当前ADF;运行环境模块,用于为应用创建运行环境的影子数组对象,实现应用和运行环境间的数据共享机制,并调用指定回调方法,通过参数传递影子数组对象到应用实例对象。
[0016]本专利技术的效果在于:通过为每个应用及运行环境指定专用的ADF,用于存储应用及运行环境创建的对象,并通过影子数组对象实现运行环境和应用、客户应用和提供服务的应用间跨防火墙实现数据共享机制,且在运行环境需要抛出指定异常时,通过调用当前应用的回调方法返回应用拥有的指定的异常对象,从而解决每次访问数组时需要检查是否是全局数组,如是入口点对象,需要进行上下文切换,导致了指令执行变慢的问题。
附图说明
[0017]图1为本专利技术一种虚拟机数据访问方法的步骤流程图;
[0018]图2为基于ADF实现应用对象隔离的原理示意图;
[0019]图3为基于ADF实现应用间隔离、应用和运行环境隔离的防火墙边界示意图;
[0020]图4为对象采用IEF存储的方式示意图;
[0021]图5为文件共享数据的原理示意图;
[0022]图6为运行环境和应用间基于影子数组实现数据共享的原理示意图;
[0023]图7为不同应用间基于影子数组实现数据共享的原理示意图。
具体实施方式
[0024]下面结合附图和具体实施方式对本专利技术作进一步描述。
[0025]如图1

7所示,本专利技术提供的一种虚拟机数据访问方法,其包括步骤:
[0026]S1,为每个应用及运行环境指定专用的ADF,用于存储应用及运行环境创建的对象,每个应用只能访问其ADF下的对象,且应用的ADF皆放置于运行环境的ADF之内,并通过运行环境提供的本地方法进行当前ADF切换;
[0027]具体的,资源受限设备,比如安全元件可以实现ISO/IEC 7816

4标准中规定的文件系统,用于存储数据,并对文件中内容进行受控访问;安全元件文件系统使用了少数标准化文件结构,基本上有两类文件,第一类是目录文件,称为专用文件(DF),第二类由保存用户数据的本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种虚拟机数据访问方法,其特征在于,包括:为每个应用及运行环境指定专用的ADF,用于存储应用及运行环境创建的对象,每个应用只能访问其ADF下的对象,且应用的ADF皆放置于运行环境的ADF之内,并通过运行环境提供的本地方法进行当前ADF切换;采用高级语言注解方式指定输出接口,并对注解的输出接口以及实现输出接口的类增加标志位,虚拟机检查该标志位允许输出接口方法实现应用间跨防火墙的访问,且在调用输出接口方法、方法返回及异常退出时,分别设置输出接口对象所在的ADF或调用方法的ADF为当前ADF;通过运行环境为应用创建影子数组对象,实现应用和运行环境及应用和应用间的数据共享。2.如权利要求1所述的一种虚拟机数据访问方法,其特征在于:每个应用创建的对象以内部基本文件方式存储,内部基本文件通过文件标识符访问,每个ADF下内部基本文件的文件标识符唯一。3.如权利要求2所述的一种虚拟机数据访问方法,其特征在于:对象包括实例对象和数组对象,实例对象的内容包括创建对象的应用实例信息、对象的定义类信息、对象的实例域信息以及其他辅助信息;数组对象的内容包括创建对象的应用实例信息、数组元素的类型、数组元素个数以及其他辅助信息。4.如权利要求1所述的一种虚拟机数据访问方法,其特征在于:所述数组的影子数组和源数组具有相同的成员类型,成员的存储位置也相同,但具有不同的安全访问属性,所述影子数组对象在文件系统的存储位置不同,因而不同的访问权限;只有运行环境具有为应用创建运行环境数组对象的影子数组对象,或将一个应用的数组对象为指定应用创建影子数组对象的特权。5.如权利要求1所述的一种虚拟机数据访问方法,其特征在于:运行环境可以访问运行环境ADF下IEF文件以及每个应用的ADF以及应用ADF下的IEF文件,实现运行环境访问所有应用的对象的实例域以及调用所有应用的对象的方法;运行环境调用应用对象的方法时需要切换到应用...

【专利技术属性】
技术研发人员:石玉平郑江东王幼君
申请(专利权)人:北京握奇智能科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1