Link-Time Bytecode Quickening for Java Card Virtual Machines Without Method-Component Expansion: A Formal and Analytical Study

Java Card virtual machines execute from non-volatile memory in secure elements, where repeated reference indirection adds latency to frequently executed instructions. This paper proposes link-time bytecode quickening for the statically resolvable invocation and static-field instructions: after the ordinary installation-time validation and symbolic resolution, the linker rewrites each selected three-byte instruction in place into an implementation-private direct-address form of the same length, an aligned opcode family carrying the three most significant bits, and the two operand bytes carrying the remaining sixteen bits of a 19-bit logical byte address, which covers 512 KiB above a platform constant. The eight opcode families are verified as available on four editions of the Java Card Virtual Machine Specification and are implemented in our Java Card operating system. A small-step operational semantics presents the standard and the quickened form of each instruction as two rules sharing one effect function, so that correctness reduces to address round-trip, address agreement at link time and per-family refinement obligations; single-step and execution equivalence are proved under explicit linker-correctness, address-stability, address-range and opcode-separation assumptions, and Method-component length and control-flow offsets are preserved. A parametric execution-cost model, instantiated on measured instruction profiles of two EMV applets, Visa VSDC 2.9.2 and the Mastercard M/Chip Advance applet, gives a modeled interpreter-time reduction of 7 to 11 percent relative to the standard implementation in the field. CAP-file input and application source code are preserved; a modified linker and interpreter are required, and invokevirtual and invokeinterface are excluded, since their targets are selected at execution time and cannot be bound by the linker.

Authors

Institutions

Publication Details

Journal
Computers
Published
2026-09-22
DOI
https://doi.org/10.3390/computers15100643
Primary Topic
Security and Verification in Computing
Type
article
Field-Weighted Citation Impact
0.00
Controls
|||
ALL TIME
JAN
FEB
MAR
APR
MAY
JUN
JUL
AUG
SEP
article

Link-Time Bytecode Quickening for Java Card Virtual Machines Without Method-Component Expansion: A Formal and Analytical Study

Alp Sardag, Abdullah Sardağ
Computers
Security and Verification in Computing
article

Link-Time Bytecode Quickening for Java Card Virtual Machines Without Method-Component Expansion: A Formal and Analytical Study

Alp Sardag, Abdullah Sardağ
article en

Abstract

Java Card virtual machines execute from non-volatile memory in secure elements, where repeated reference indirection adds latency to frequently executed instructions. This paper proposes link-time bytecode quickening for the statically resolvable invocation and static-field instructions: after the ordinary installation-time validation and symbolic resolution, the linker rewrites each selected three-byte instruction in place into an implementation-private direct-address form of the same length, an aligned opcode family carrying the three most significant bits, and the two operand bytes carrying the remaining sixteen bits of a 19-bit logical byte address, which covers 512 KiB above a platform constant. The eight opcode families are verified as available on four editions of the Java Card Virtual Machine Specification and are implemented in our Java Card operating system. A small-step operational semantics presents the standard and the quickened form of each instruction as two rules sharing one effect function, so that correctness reduces to address round-trip, address agreement at link time and per-family refinement obligations; single-step and execution equivalence are proved under explicit linker-correctness, address-stability, address-range and opcode-separation assumptions, and Method-component length and control-flow offsets are preserved. A parametric execution-cost model, instantiated on measured instruction profiles of two EMV applets, Visa VSDC 2.9.2 and the Mastercard M/Chip Advance applet, gives a modeled interpreter-time reduction of 7 to 11 percent relative to the standard implementation in the field. CAP-file input and application source code are preserved; a modified linker and interpreter are required, and invokevirtual and invokeinterface are excluded, since their targets are selected at execution time and cannot be bound by the linker.

ComputersVol. 15(10)
Üsküdar University (TR), Turkish Society of Hematology (TR)
Openalex Percentile: Top 8%
Security and Verification in Computing
AI Navigator

Ask Laika to Summarize, Analyze, and Connect papers live on the map.

Summarize Papers & Methodologies

Extract key findings, datasets, and comparative methods across publications.

Benchmark Rankings & Visual Analytics

Rank top research institutions, authors, funders, topics, and journals by Field-Weighted Citation Impact (FWCI) and paper volume with instant charts.

Connect Distant Disciplines

Bridge topological clusters on the map to find hidden collaborative intersections.