【24h】

Java Bytecode Verification on Java Cards

机译:Java卡上的Java字节码验证

获取原文
获取原文并翻译 | 示例

摘要

A Java program is usually translated into an intermediate language, known as Java Virtual Machine Language (JVML), which is then executed by a Java Virtual Machine (JVM). Before its execution a JVML program is verified to prevent a wide range of run-time errors. Nowadays, Java applets are available for various kinds of portable devices, including modern Java smart cards. However, Java cards cannot execute the classical verification algorithms, due to their very small amount of working memory. We present a new algorithm to verify a subset of the Java bytecode language, suitable to be executed in low-memory environments, such as Java smart cards. The method is based on abstract interpretation of the language operational semantics. We define an abstract small-step semantics of the language, able to keep information regarding the modifications of data during Java constructs execution. We state the equivalence between our verification algorithm and the "standard" one. Moreover, we discuss the low memory requirements of the algorithm.
机译:通常将Java程序翻译成称为Java虚拟机语言(JVML)的中间语言,然后由Java虚拟机(JVM)执行。在执行JVML程序之前,请先对其进行验证,以防止发生各种运行时错误。如今,Java applet可用于各种便携式设备,包括现代Java智能卡。但是,由于Java卡的工作内存非常小,因此它们无法执行传统的验证算法。我们提出一种新算法来验证Java字节码语言的子集,该子集适用于在低内存环境(例如Java智能卡)中执行。该方法基于对语言操作语义的抽象解释。我们定义了该语言的抽象小步语义,能够保留有关Java构造执行期间数据修改的信息。我们声明了验证算法和“标准”算法之间的等效性。此外,我们讨论了算法的低内存需求。

著录项

相似文献

  • 外文文献
  • 中文文献
  • 专利
获取原文

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号