CN106778249A - 一种Java程序可信执行环境的构建方法及构建系统 - Google Patents

一种Java程序可信执行环境的构建方法及构建系统 Download PDF

Info

Publication number
CN106778249A
CN106778249A CN201710058962.6A CN201710058962A CN106778249A CN 106778249 A CN106778249 A CN 106778249A CN 201710058962 A CN201710058962 A CN 201710058962A CN 106778249 A CN106778249 A CN 106778249A
Authority
CN
China
Prior art keywords
java
coprocessor
primary processor
application
java 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
Application number
CN201710058962.6A
Other languages
English (en)
Other versions
CN106778249B (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.)
Hunan Wendun Intelligent Chain Technology Co ltd
National University of Defense Technology
Original Assignee
Hunan Wen Shield Information 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 Hunan Wen Shield Information Technology Co Ltd filed Critical Hunan Wen Shield Information Technology Co Ltd
Priority to CN201710058962.6A priority Critical patent/CN106778249B/zh
Publication of CN106778249A publication Critical patent/CN106778249A/zh
Application granted granted Critical
Publication of CN106778249B publication Critical patent/CN106778249B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/52Monitoring 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/53Monitoring 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)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本发明提供了一种Java程序可信执行环境的构建方法,包括步骤:构建协处理器板卡,协处理器板卡连接主板:协处理器板卡包括协处理器芯片、内存芯片和闪存芯片;主板上插有主处理器、TPM芯片,主处理器、协处理器板卡、TPM芯片相互连接;将每个Java应用的安全性需求等级填到Java应用安全性需求等级配置表中:将Java应用名称和散列值写入协处理器板卡闪存芯片的Java应用度量经验表,根据安全等级分开处理。本发明在TPM芯片和协处理器板卡的支持下构建Java可信执行环境,使高安全性Java应用在对用户透明的协处理器中隔离执行,通过TPM芯片对协处理器驱动程序和Java应用程序进行度量与验证,使得执行Java应用的安全性得到大大加强。

Description

一种Java程序可信执行环境的构建方法及构建系统
技术领域
本发明涉及建立应用程序可信执行环境的技术领域,特别地,涉及一种针对基于Java语言编写的Java应用程序可信执行环境的构建方法。
背景技术
随着计算机和互联网技术的飞速发展,人类已经进入了“信息时代”。信息系统越来越广泛的应用于政治、经济、教育和军事领域中。然而,系统缺陷、策略漏洞、恶意攻击等问题一直严重威胁着信息系统的安全性。如何有效抵御多种安全威胁,提升信息系统可靠性一直是信息安全领域广泛关注的热点问题。
Java技术利用Java虚拟机(Java Virtual Machine,JVM)实现了平台无关、前端设计语言无关程序设计。这一特性能够有效地为遗留系统的改造接入、异构系统的互连互通提供支持,使得Java技术广泛地应用于各种信息系统构建。IBM、Oracle等知名企业均广泛采用Java技术作为其企业级业务系统构建的核心技术。Google在其云计算服务中部署定制的JVM,为各种采用Python、Java等语言实现的应用提供统一的执行环境。知名手机操作系统Android的核心部分也是基于JVM技术规范实现的Dalvik虚拟机,其应用开发也是采用Java语言。目前,越来越多的软件系统开始直接面向JVM开发,JVM和基于JVM技术规范实现的语言级虚拟机已经成为各种应用运行的基础性平台。随着越来越多的Java应用服务的部署,Java应用程序在软件生命周期中经常遭受到字节码篡改、内存篡改等完整性破坏的威胁。因此,从JVM层次提供有效的信任与安全保障机制具有非常重要的意义。
硬件协处理器技术,长期以来一直被广泛地应用于科学计算领域,主要是为了解决主处理器计算能力不足等问题。最典型的协处理器包括早期的浮点运算协处理器,用于数字信号处理的DSP,以及近年来被大量应用于超级计算机的GPU和最新的英特尔MIC处理器等。这些硬件协处理器通常针对特定的应用进行优化,利用硬件加速特定的运算,使其更加适应某些具体的应用领域。近年来随着信息系统对安全性和可用性要求的不断提升,利用协处理器进行加密解密运算提高系统可用性的需求也越来越强,可信计算组织TCG提出的可信平台模块TPM(Trusted Platform Module,TPM)就是一种安全芯片。协处理器的另外一个优势在于提供良好的隔离性,在协处理器中运行的应用程序相对独立,不受主处理机中的上下文对于构建信息系统的Java应用程序而言,由于共享系统运行环境,应用程序之间的隔离性也是严重影响系统安全的因素,虽然现有的虚拟化技术,包括JVM,都提供了一定程度上的应用隔离能力,但是还是达不到硬件隔离的强度,而针对Java应用及JVM的攻击也越来越多,现有技术难以为Java应用提供一个安全的基础。
协处理器是为了解决中央处理器无法执行或执行效率低下的处理工作而开发的处理器。典型的协处理器包括图形/音频处理芯片、外设接口控制器以及代数运算加速芯片等。在信息安全领域,除了各类密码运算加速协处理器外。TPM也可以看成一种协处理器安全芯片,TPM主要功能是提供关键数据的安全存储、采用哈希算法对二进制数据进行度量验证。可信计算组织依托于TPM提出了可信计算平台的基本思想:以TPM为信任根,建立一条信任链,从信任根到硬件平台、到操作系统、再到应用程序,一级度量认证一级,一级信任一级,最终把这种信任扩展到整个计算机系统,从而确保整个系统的可信。在可信平台中,信任根包括:可信度量根(Root of Trust for Measurement,RTM)、可信存储根(Root ofTrust for Storage,RTS)和可信报告根(Root of Trust for Report,RTR)。可信存储根则由平台配置寄存器(Platform configuration Register,PCR)和存储根密钥(StorageRoot Key,SRK)组成。
在Java技术出现和发展的早期,由于Java程序执行的效率较低,出现了以PicoJava、MicroJava和JOP为代表的一系列Java协处理器,这些协处理器的主要目标定位于提升Java程序的执行效率和性能。随着Java虚拟机技术的进步以及Java即时编译执行技术的成熟,Java程序的执行效率得到了大幅提升,上述Java协处理器也逐渐退出市场。但是,从可信计算平台技术的发展来看,利用协处理器提升计算机系统的安全性具有一定的可行性和应用前景,目前也尚未存在此类产品。
发明内容
本发明目的在于提供一种Java程序可信执行环境的构建方法,以解决Java应用程序在发布、加载以及运行过程中可能面临的Java字节码篡改、内存篡改等完整性破坏的威胁,使得计算机系统的Java程序安全性不够的技术问题。
为实现上述目的,本发明提供了一种Java程序可信执行环境的构建方法,其特征在于,包括步骤:
A、构建协处理器板卡,协处理器板卡设置在主板上:
所述协处理器板卡包括协处理器芯片、均与协处理器芯片连接的内存芯片和闪存芯片;
主板上插有主处理器、TPM芯片,所述主处理器、协处理器板卡、TPM芯片相互连接;
B、配置主处理器上部署的Java应用安全性需求等级和协处理器上的Java应用度量经验表:
将每个Java应用的安全性需求等级填到Java应用安全性需求等级配置表中:
将Java应用名称和散列值写入协处理器板卡闪存芯片中的Java应用度量经验表;
C、当判断Java应用有网络通信需求,且未在主处理器中运行过时,TPM芯片获取该Java应用的度量值;
若度量值与协处理器读取的Java应用度量经验表中存储的该Java应用的Java应用字节码SHA1散列值相等,则将Java应用加载到协处理器运行的删减版Linux操作系统中执行。
优选的,步骤C中,当判断Java应用无网络通信需求,则主处理器直接执行Java应用。
优选的,步骤C中,当判断Java应用有网络通信需求,且在主处理器中运行过时,则主处理器与协处理器同步Java应用运行数据,主处理器通过协处理器驱动程序将运行时数据传输给协处理器板卡上的内存芯片,主处理器终止该Java应用运行并转发请求到协处理器,协处理器中的主控程序读取Java应用字节码,并将Java应用字节码提交给TPM芯片,TPM芯片得到Java应用的度量值;
若度量值与协处理器读取的Java应用度量经验表中存储的该Java应用的Java应用字节码SHA1散列值相等,则将Java应用加载到协处理器运行的删减版Linux操作系统中执行。
优选的,步骤C中,当度量值与协处理器读取的Java应用度量经验表中存储的该Java应用的Java应用字节码SHA1散列值不相等,则向主处理器运行的Linux操作系统报告错误。
优选的,步骤B中,所述Java应用度量经验表有N项,每项有2个域,分别为Java应用名称和Java应用字节码SHA1散列值;
所述Java应用安全性需求等级配置表有N项,每项有2个域,分别为Java应用名称和安全性需求等级,N是Java应用的个数。
优选的,步骤A中,主处理器与TPM芯片相连,主处理器将协处理器驱动程序二进制数据送给TPM芯片,TPM芯片将协处理器驱动程序二进制数据进行计算得到度量值送给主处理器;协处理器板卡与TPM芯片相连,协处理器板卡将Java应用字节码送给TPM芯片进行度量,TPM芯片将度量值送回给协处理器板卡;协处理器板卡与主处理器相连,主处理器向协处理器板卡发送Java应用运行的映像和数据,协处理器板卡向主处理器报告Java应用运行结果。
优选的,步骤C具体还包括步骤:
D1、主处理器运行的Linux操作系统接收Java应用请求;
D2、主处理器运行的Linux操作系统查询Java应用安全性需求等级配置表,若用户请求为低安全性需求应用则主处理器执行Java应用,执行完后转4.11;若为高安全性需求应用则转D3;
D3、主控程序对从主处理器接收的Java应用进行判定,若是在主处理器中运行过的Java应用,则执行D4,若是未在主处理器中运行过的Java应用,则执行D5;
D4、主处理器与协处理器同步Java应用运行数据,主处理器通过协处理器驱动程序将运行时数据传输给协处理器板卡上的内存芯片;主处理器终止该Java应用运行并转发请求到协处理器,由协处理器中的Java应用继续为客户端提供服务;
D5、协处理器中的主控程序读取Java应用字节码,并将Java应用字节码提交给TPM芯片,TPM芯片得到Java应用的度量值;用得到的Java应用的度量值与协处理器读取的Java应用度量经验表中存储的该Java应用的Java应用字节码SHA1散列值进行比对验证,如果不相等,则向主处理器报告错误,转D1;若相等,将Java应用加载到协处理器运行的删减版Linux操作系统中执行。
优选的,所述内存芯片要求具有1GB以上运行内存,闪存芯片要求具有4GB以上固化闪存。
本申请还提供一种Java程序可信执行环境的构建系统,包括相互连接的主处理器、协处理器板卡和TPM芯片,所述协处理器板卡包括协处理器芯片、均与协处理器芯片连接的内存芯片和闪存芯片;
主处理器上存储有Java应用安全性需求等级配置表,Java应用安全性需求包含Java应用名称和安全性需求等级,协处理器上存储有Java应用度量经验表,Java应用度量经验表包含Java应用名称和散列值。
优选的,所述闪存芯片中存有经过删减的仅保留Linux内核的删减版Linux操作系统、主控程序、Java应用度量经验表和Java固化应用程序;删减版Linux操作系统指删减了Linux操作系统中关于用户应用软件、图形用户接口的功能模块,只剩下Linux内核的Linux操作系统。
本发明具有以下有益效果:
本发明在现有可信计算技术的基础上,利用特定的协处理器及协处理器上运行的软、固件系统,实现有高安全性需求的Java应用由主处理器向协处理器的平滑迁移,并在协处理器中实现内存运行时度量与认证,Java应用字节码度量与验证功能,为Java应用提供安全的运行环境和信任保障。
本发明在TPM芯片和协处理器板卡的支持下构建一个Java可信执行环境,使高安全性Java应用在对用户透明的协处理器中隔离执行。通过TPM芯片对协处理器驱动程序和Java应用程序进行度量与验证,保护了协处理器驱动程序和Java应用程序的完整性,使得执行Java应用的安全性得到大大加强。本发明能够较好的满足Java应用的安全与可信需求。
除了上面所描述的目的、特征和优点之外,本发明还有其它的目的、特征和优点。下面将参照图,对本发明作进一步详细的说明。
附图说明
构成本申请的一部分的附图用来提供对本发明的进一步理解,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是本发明优选实施例的总体流程图;
图2是本发明优选实施例的第一步构建Java可信执行环境结构图;
图3是本发明优选实施例的分步流程图。
具体实施方式
以下结合附图对本发明的实施例进行详细说明,但是本发明可以根据权利要求限定和覆盖的多种不同方式实施。
图1是本发明总体流程图;本发明包括以下步骤:
第一步,构建Java程序可信执行环境,Java程序可信执行环境由协处理器板卡、主处理器、TPM芯片组成,协处理器板卡、主处理器、TPM芯片均插在主板上。
内存芯片要求具有1GB以上运行内存,闪存芯片要求具有4GB以上固化闪存。
第二步,配置主处理器上部署的Java应用安全性需求等级。
第三步,配置协处理器上Java应用度量经验表。
第四步,采用Java应用可信执行环境运行Java程序。
具体步骤为:
第一步,构建Java程序可信执行环境,Java程序可信执行环境由协处理器板卡、主处理器、TPM芯片组成,方法是:
1.1利用协处理器芯片、内存芯片和闪存芯片构建协处理器板卡,方法为:协处理器芯片采用x86或arm指令集的协处理器芯片,闪存芯片中存有经过删减的仅保留Linux内核的删减版Linux操作系统、主控程序、Java应用度量经验表和Java固化应用程序;Java应用度量经验表有N项,每项有2个域,分别为Java应用名称和Java应用字节码SHA1散列值;Java应用字节码SHA1散列值是用Java应用的二进制字节码,通过哈希函数SHA1计算得到的值,作为Java应用度量值;协处理器芯片读取闪存芯片中的Java固化应用程序送入内存芯片执行;协处理器板卡通过PCIE接口插在主板上,协处理器通过PCIE接口与主处理器及TPM芯片通信;
删减版Linux操作系统指删减了Linux操作系统中关于用户应用软件、图形用户接口的功能模块,只剩下Linux内核。
1.2主处理器也插在主板上,主处理器上安装有Linux操作系统、协处理器驱动程序和Java应用安全性需求等级配置表;协处理器驱动程序是协处理器板卡上的协处理器芯片的驱动程序;Java应用安全性需求等级配置表是说明每个Java应用的安全性需求等级的表格,有N项,每项有2个域,分别为Java应用名称和安全性需求等级,N是Java应用的个数;
1.3 TPM芯片也插在主板上,主处理器、协处理器板卡、TPM芯片相互连接;主处理器与TPM芯片相连,主处理器将协处理器驱动程序二进制数据送给TPM芯片,TPM芯片将协处理器驱动程序二进制数据进行计算得到度量值送给主处理器;协处理器板卡与TPM芯片相连,协处理器板卡将Java应用字节码送给TPM芯片进行度量,TPM芯片将度量值送回给协处理器板卡;协处理器板卡与主处理器相连,主处理器向协处理器板卡发送Java应用,协处理器板卡向主处理器报告Java应用运行结果;
第二步,配置主处理器上部署的Java应用安全性需求等级,方法为:利用安装在主处理器中的Linux实用工具编辑器配置已部署的Java应用安全性需求等级,将所有Java应用根据是否有网络通信来划分安全性等级需求,有网络通信则定义为高安全性需求,无网络通信的本地Java应用定义为低安全性需求,将每个Java应用的安全性需求等级填到Java应用安全性需求等级配置表中;网络通信指通过数据网、无线网等手段与互联网连接进行数据交换;
第三步,配置协处理器上Java应用度量经验表,方法为:协处理器驱动程序将所有Java应用的字节码传输到协处理器板卡的闪存芯片中,协处理器将Java应用的字节码作为哈希函数SHA1的输入参数,得到SHA1函数值,即Java应用字节码SHA1散列值,将Java应用名称和SHA1散列值写入协处理器板卡闪存芯片中的Java应用度量经验表;
第四步,采用Java应用可信执行环境运行Java程序,过程如下:
4.1 TPM芯片对协处理器驱动程序进行度量,如协处理器驱动程序完整则启动协处理器,转4.2步,若协处理器驱动程序不完整则协处理器启动失败,向主处理器中Linux操作系统报告错误,转4.12;
4.2协处理器从闪存芯片中加载删减版Linux操作系统;
4.3协处理器从闪存芯片中加载主控程序;
4.4主处理器运行的Linux操作系统接收Java应用请求;
4.5主处理器运行的Linux操作系统查询Java应用安全性需求等级配置表,若用户请求为低安全性需求应用则主处理器执行Java应用,执行完后转4.11;若为高安全性需求应用则转4.6;
4.6迁移Java应用:主控程序对从主处理器接收的Java应用进行判定,若是已经在主处理器中运行过的Java应用,则执行4.7,若是未在主处理器中运行过的Java应用,则执行4.8;
4.7对于已在主处理器中运行过的Java应用,执行以下步骤:
4.7.1、将主处理器中已运行的Java应用的映像传输到协处理器;
4.7.2主处理器与协处理器同步Java应用运行数据,主处理器通过协处理器驱动程序将运行时数据传输给协处理器板卡上的内存芯片;
4.7.3、主处理器终止该Java应用运行并转发请求到协处理器,转第4.9步;
4.8对未在主处理器中运行过的Java应用,执行以下步骤:
4.8.1协处理器中的主控程序读取Java应用字节码,并将Java应用字节码提交给TPM芯片,TPM芯片对Java应用字节码进行度量,得到Java应用的度量值;
4.8.2用4.8.1中得到的Java应用的度量值与协处理器读取的Java应用度量经验表中存储的该Java应用的Java应用字节码SHA1散列值进行比对验证,如果不相等,则向主处理器运行的Linux操作系统报告错误,转第4.4步,等待下一个Java应用请求;如果相等,则执行4.9步;
4.9将Java应用加载到协处理器运行的删减版Linux操作系统中执行;
4.10协处理器将执行结果返回给主处理器;
4.11主处理器将运行结果返回给主处理器Linux操作系统,转第4.4步,等待下一个Java应用请求,Java程序可信执行环境一直处于等待、接收、处理Java应用的循环过程中。
本发明在TPM芯片和协处理器板卡的支持下构建了Java可信执行环境,使高安全性Java应用在对用户透明的协处理器中隔离执行。
由此,本申请还提供一种Java程序可信执行环境的构建系统,包括相互连接的主处理器、协处理器板卡和TPM芯片,所述协处理器板卡包括协处理器芯片、均与协处理器芯片连接的内存芯片和闪存芯片;主处理器上存储有Java应用安全性需求等级配置表,Java应用安全性需求包含Java应用名称和安全性需求等级,协处理器上存储有Java应用度量经验表,Java应用度量经验表包含Java应用名称和散列值。
所述闪存芯片中存有经过删减的仅保留Linux内核的删减版Linux操作系统、主控程序、Java应用度量经验表和Java固化应用程序;删减版Linux操作系统指删减了Linux操作系统中关于用户应用软件、图形用户接口的功能模块,只剩下Linux内核的Linux操作系统。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (10)

1.一种Java程序可信执行环境的构建方法,其特征在于,包括步骤:
A、构建协处理器板卡,协处理器板卡设置在主板上:
所述协处理器板卡包括协处理器芯片、均与协处理器芯片连接的内存芯片和闪存芯片;
主板上插有主处理器、TPM芯片,所述主处理器、协处理器板卡、TPM芯片相互连接;
B、配置主处理器上部署的Java应用安全性需求等级和协处理器上的Java应用度量经验表:
将每个Java应用的安全性需求等级填到Java应用安全性需求等级配置表中:
将Java应用名称和散列值写入协处理器板卡闪存芯片中的Java应用度量经验表;
C、当判断Java应用有网络通信需求,且未在主处理器中运行过时,TPM芯片获取该Java应用的度量值;
若度量值与协处理器读取的Java应用度量经验表中存储的该Java应用的Java应用字节码SHA1散列值相等,则将Java应用加载到协处理器运行的删减版Linux操作系统中执行。
2.根据权利要求1所述的构建方法,其特征在于,步骤C中,当判断Java应用无网络通信需求,则主处理器直接执行Java应用。
3.根据权利要求1所述的构建方法,其特征在于,步骤C中,当判断Java应用有网络通信需求,且在主处理器中运行过时,则主处理器与协处理器同步Java应用运行数据,主处理器通过协处理器驱动程序将运行时数据传输给协处理器板卡上的内存芯片,主处理器终止该Java应用运行并转发请求到协处理器,协处理器中的主控程序读取Java应用字节码,并将Java应用字节码提交给TPM芯片,TPM芯片得到Java应用的度量值;
若度量值与协处理器读取的Java应用度量经验表中存储的该Java应用的Java应用字节码SHA1散列值相等,则将Java应用加载到协处理器运行的删减版Linux操作系统中执行。
4.根据权利要求1所述的构建方法,其特征在于,步骤C中,当度量值与协处理器读取的Java应用度量经验表中存储的该Java应用的Java应用字节码SHA1散列值不相等,则向主处理器运行的Linux操作系统报告错误。
5.根据权利要求1所述的构建方法,其特征在于,步骤B中,所述Java应用度量经验表有N项,每项有2个域,分别为Java应用名称和Java应用字节码SHA1散列值;
所述Java应用安全性需求等级配置表有N项,每项有2个域,分别为Java应用名称和安全性需求等级,N是Java应用的个数。
6.根据权利要求1所述的构建方法,其特征在于,步骤A中,主处理器与TPM芯片相连,主处理器将协处理器驱动程序二进制数据送给TPM芯片,TPM芯片将协处理器驱动程序二进制数据进行计算得到度量值送给主处理器;协处理器板卡与TPM芯片相连,协处理器板卡将Java应用字节码送给TPM芯片进行度量,TPM芯片将度量值送回给协处理器板卡;协处理器板卡与主处理器相连,主处理器向协处理器板卡发送Java应用运行的映像和数据,协处理器板卡向主处理器报告Java应用运行结果。
7.根据权利要求1所述的构建方法,其特征在于,步骤C具体还包括步骤:
D1、主处理器运行的Linux操作系统接收Java应用请求;
D2、主处理器运行的Linux操作系统查询Java应用安全性需求等级配置表,若用户请求为低安全性需求应用则主处理器执行Java应用,执行完后转4.11;若为高安全性需求应用则转D3;
D3、主控程序对从主处理器接收的Java应用进行判定,若是在主处理器中运行过的Java应用,则执行D4,若是未在主处理器中运行过的Java应用,则执行D5;
D4、主处理器与协处理器同步Java应用运行数据,主处理器通过协处理器驱动程序将运行时数据传输给协处理器板卡上的内存芯片;主处理器终止该Java应用运行并转发请求到协处理器,由协处理器中的Java应用继续为客户端提供服务;
D5、协处理器中的主控程序读取Java应用字节码,并将Java应用字节码提交给TPM芯片,TPM芯片得到Java应用的度量值;用得到的Java应用的度量值与协处理器读取的Java应用度量经验表中存储的该Java应用的Java应用字节码SHA1散列值进行比对验证,如果不相等,则向主处理器报告错误,转D1;若相等,将Java应用加载到协处理器运行的删减版Linux操作系统中执行。
8.根据权利要求1所述的构建方法,其特征在于,所述内存芯片要求具有1GB以上运行内存,闪存芯片要求具有4GB以上固化闪存。
9.一种Java程序可信执行环境的构建系统,其特征在于,包括相互连接的主处理器、协处理器板卡和TPM芯片,所述协处理器板卡包括协处理器芯片、均与协处理器芯片连接的内存芯片和闪存芯片;
主处理器上存储有Java应用安全性需求等级配置表,Java应用安全性需求包含Java应用名称和安全性需求等级,协处理器上存储有Java应用度量经验表,Java应用度量经验表包含Java应用名称和散列值。
10.根据权利要求9所述的构建系统,其特征在于,所述闪存芯片中存有经过删减的仅保留Linux内核的删减版Linux操作系统、主控程序、Java应用度量经验表和Java固化应用程序;删减版Linux操作系统指删减了Linux操作系统中关于用户应用软件、图形用户接口的功能模块,只剩下Linux内核的Linux操作系统。
CN201710058962.6A 2017-01-23 2017-01-23 一种Java程序可信执行环境的构建方法及构建系统 Active CN106778249B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710058962.6A CN106778249B (zh) 2017-01-23 2017-01-23 一种Java程序可信执行环境的构建方法及构建系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710058962.6A CN106778249B (zh) 2017-01-23 2017-01-23 一种Java程序可信执行环境的构建方法及构建系统

Publications (2)

Publication Number Publication Date
CN106778249A true CN106778249A (zh) 2017-05-31
CN106778249B CN106778249B (zh) 2020-02-14

Family

ID=58941829

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710058962.6A Active CN106778249B (zh) 2017-01-23 2017-01-23 一种Java程序可信执行环境的构建方法及构建系统

Country Status (1)

Country Link
CN (1) CN106778249B (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112100111A (zh) * 2020-09-15 2020-12-18 济南浪潮高新科技投资发展有限公司 一种多awg板卡的控制方法
CN113312182A (zh) * 2021-07-27 2021-08-27 阿里云计算有限公司 一种云计算节点、文件处理方法及装置
CN114647453A (zh) * 2022-03-01 2022-06-21 芯原微电子(成都)有限公司 多处理器的可信动态启动方法、系统、存储介质及终端
CN115659319A (zh) * 2022-12-15 2023-01-31 成都数默科技有限公司 基于JavaAgent的Java应用防篡改方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101246537A (zh) * 2008-03-28 2008-08-20 兰雨晴 一种基于可信多任务操作系统实现可信计算的方法
CN101790030A (zh) * 2010-03-16 2010-07-28 中山大学 基于Java处理器的数字机顶盒
CN102214277A (zh) * 2010-04-01 2011-10-12 中国科学院计算技术研究所 创建多核处理器虚拟机系统可信环境的方法及装置
CN103177212A (zh) * 2013-03-08 2013-06-26 湘潭大学 一种基于轻量虚拟机监控器的计算机安全输入系统与方法
CN103914646A (zh) * 2013-01-08 2014-07-09 三星电子株式会社 触摸事件处理方法和实现所述方法的便携式设备

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101246537A (zh) * 2008-03-28 2008-08-20 兰雨晴 一种基于可信多任务操作系统实现可信计算的方法
CN101790030A (zh) * 2010-03-16 2010-07-28 中山大学 基于Java处理器的数字机顶盒
CN102214277A (zh) * 2010-04-01 2011-10-12 中国科学院计算技术研究所 创建多核处理器虚拟机系统可信环境的方法及装置
CN103914646A (zh) * 2013-01-08 2014-07-09 三星电子株式会社 触摸事件处理方法和实现所述方法的便携式设备
CN103177212A (zh) * 2013-03-08 2013-06-26 湘潭大学 一种基于轻量虚拟机监控器的计算机安全输入系统与方法

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112100111A (zh) * 2020-09-15 2020-12-18 济南浪潮高新科技投资发展有限公司 一种多awg板卡的控制方法
CN112100111B (zh) * 2020-09-15 2022-04-26 浪潮集团有限公司 一种多awg板卡的控制方法
CN113312182A (zh) * 2021-07-27 2021-08-27 阿里云计算有限公司 一种云计算节点、文件处理方法及装置
CN114647453A (zh) * 2022-03-01 2022-06-21 芯原微电子(成都)有限公司 多处理器的可信动态启动方法、系统、存储介质及终端
CN114647453B (zh) * 2022-03-01 2023-06-09 芯原微电子(成都)有限公司 多处理器的可信动态启动方法、系统、存储介质及终端
CN115659319A (zh) * 2022-12-15 2023-01-31 成都数默科技有限公司 基于JavaAgent的Java应用防篡改方法

Also Published As

Publication number Publication date
CN106778249B (zh) 2020-02-14

Similar Documents

Publication Publication Date Title
US11687654B2 (en) Providing isolation in virtualized systems using trust domains
CN108292337B (zh) 虚拟化环境下安全堡垒区域的可信开启
EP3671515B1 (en) Method and apparatus for trust domain creation and destruction
US9202062B2 (en) Virtual machine validation
US8151262B2 (en) System and method for reporting the trusted state of a virtual machine
US8776245B2 (en) Executing trusted applications with reduced trusted computing base
US7721080B2 (en) Management of option ROM
US20140025961A1 (en) Virtual machine validation
US11157303B2 (en) Detecting bus locking conditions and avoiding bus locks
EP3757859A2 (en) Host-convertible secure enclaves in memory that leverage multi-key total memory encryption with integrity
CN101488173B (zh) 支持零宕机的可信虚拟域启动文件完整性度量的方法
US8019566B2 (en) System and method for efficiently testing cache congruence classes during processor design verification and validation
CN106778249A (zh) 一种Java程序可信执行环境的构建方法及构建系统
CN103177212B (zh) 一种基于轻量虚拟机监控器的计算机安全输入系统与方法
CN107704308B (zh) 虚拟平台vTPM管理系统、信任链构建方法及装置、存储介质
US11630683B2 (en) Low latency launch for trusted execution environments
CN105893234A (zh) 用于软件测试的方法和计算设备
US10223149B2 (en) Implementing device models for virtual machines with reconfigurable hardware
CN113452666A (zh) Ip独立的安全固件加载
EP3640808B1 (en) Split-control of page attributes between virtual machines and a virtual machine monitor
CN113268447A (zh) 计算机架构及其内的访问控制、数据交互及安全启动方法
CN111966470A (zh) 虚拟机监控器的加载方法、装置和电子设备
US20230401316A1 (en) Pre-authorized virtualization engine for dynamic firmware measurement
US11960337B2 (en) Customized thermal and power policies in computers
Fang et al. Research and realization of trusted computing platform based on EFI

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
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20210622

Address after: Room 8, room 84, No.1 yazipu Road, Yuehu street, Kaifu District, Changsha City, Hunan Province 410005

Patentee after: Hunan wendun intelligent Chain Technology Co.,Ltd.

Address before: Room 2807, Fu block, Hunan Fortune Center, no.468, Section 1, Furong Middle Road, Kaifu District, Changsha City, Hunan Province, 410005

Patentee before: HUNAN WENDUN INFORMATION TECHNOLOGY Co.,Ltd.

TR01 Transfer of patent right

Effective date of registration: 20240605

Address after: Room 8, Room 84, No.1 Yazipu Road, Yuehu Street, Kaifu District, Changsha City, Hunan Province, 410201

Patentee after: Hunan wendun intelligent Chain Technology Co.,Ltd.

Country or region after: China

Patentee after: National University of Defense Technology

Address before: Room 8, room 84, No.1 yazipu Road, Yuehu street, Kaifu District, Changsha City, Hunan Province 410005

Patentee before: Hunan wendun intelligent Chain Technology Co.,Ltd.

Country or region before: China