Loading…

Combinatorial Validation Testing of Java Card Byte Code Verifiers

We present a technique to fully automate validation of a byte code verifier (BCV) implementation by testing. The technique is based on the use of a finite state machine model of the JVM specifications to systematically explore the set of legal JVM states from which one or more illegal states are imm...

Full description

Saved in:
Bibliographic Details
Main Authors: Calvagna, Andrea, Tramontana, Emiliano
Format: Conference Proceeding
Language:English
Subjects:
Online Access:Request full text
Tags: Add Tag
No Tags, Be the first to tag this record!
cited_by
cites
container_end_page 352
container_issue
container_start_page 347
container_title
container_volume
creator Calvagna, Andrea
Tramontana, Emiliano
description We present a technique to fully automate validation of a byte code verifier (BCV) implementation by testing. The technique is based on the use of a finite state machine model of the JVM specifications to systematically explore the set of legal JVM states from which one or more illegal states are immediately reachable. All possible sequences of instructions bringing to illegal states reachable from each legal state are combinatorially enumerated to generate a suite of tests, consisting of valid Java programs. For tests to stress the BCV type inference algorithm, each test program has been purposely designed with a large number of intertwined execution flows. The illegal state in the instruction sequence is hidden inside one of those paths.
doi_str_mv 10.1109/WETICE.2013.35
format conference_proceeding
fullrecord <record><control><sourceid>ieee_6IE</sourceid><recordid>TN_cdi_ieee_primary_6570641</recordid><sourceformat>XML</sourceformat><sourcesystem>PC</sourcesystem><ieee_id>6570641</ieee_id><sourcerecordid>6570641</sourcerecordid><originalsourceid>FETCH-LOGICAL-i175t-9624bbce91a85d545a84630f88f40206923254bb76543af26051dbe36c9f362e3</originalsourceid><addsrcrecordid>eNotj01LwzAYgIMfYDe9evGSP9CajzdvkuMMnU4GXuo8jnRNJNK1khZh_96Bnp7LwwMPIfecVZwz-_hRNxtXV4JxWUl1QQqBwEvD0V6SBQdtLQOmzBUpuBJQggJ9QxbT9MWYREBdkJUbj20a_Dzm5Hu6833q_JzGgTZhmtPwScdIX_2Pp87njj6d5kDd2AW6CznFFPJ0S66j76dw988leV_XjXspt2_PG7falolrNZcWBbTtIVjujeoUKG8AJYvGRGCCoRVSqLOhUYH0USBTvGuDxIONEkWQS_Lw100hhP13TkefT3tUmp2f5S-BBUkT</addsrcrecordid><sourcetype>Publisher</sourcetype><iscdi>true</iscdi><recordtype>conference_proceeding</recordtype></control><display><type>conference_proceeding</type><title>Combinatorial Validation Testing of Java Card Byte Code Verifiers</title><source>IEEE Electronic Library (IEL) Conference Proceedings</source><creator>Calvagna, Andrea ; Tramontana, Emiliano</creator><creatorcontrib>Calvagna, Andrea ; Tramontana, Emiliano</creatorcontrib><description>We present a technique to fully automate validation of a byte code verifier (BCV) implementation by testing. The technique is based on the use of a finite state machine model of the JVM specifications to systematically explore the set of legal JVM states from which one or more illegal states are immediately reachable. All possible sequences of instructions bringing to illegal states reachable from each legal state are combinatorially enumerated to generate a suite of tests, consisting of valid Java programs. For tests to stress the BCV type inference algorithm, each test program has been purposely designed with a large number of intertwined execution flows. The illegal state in the instruction sequence is hidden inside one of those paths.</description><identifier>ISSN: 1524-4547</identifier><identifier>ISBN: 1479904058</identifier><identifier>ISBN: 9781479904051</identifier><identifier>EISSN: 2641-8169</identifier><identifier>DOI: 10.1109/WETICE.2013.35</identifier><identifier>CODEN: IEEPAD</identifier><language>eng</language><publisher>IEEE</publisher><subject>byte code verification ; Law ; Load modeling ; Optimized production technology ; Registers ; Software engineering ; software testing ; Testing</subject><ispartof>2013 Workshops on Enabling Technologies: Infrastructure for Collaborative Enterprises, 2013, p.347-352</ispartof><woscitedreferencessubscribed>false</woscitedreferencessubscribed></display><links><openurl>$$Topenurl_article</openurl><openurlfulltext>$$Topenurlfull_article</openurlfulltext><thumbnail>$$Tsyndetics_thumb_exl</thumbnail><linktohtml>$$Uhttps://ieeexplore.ieee.org/document/6570641$$EHTML$$P50$$Gieee$$H</linktohtml><link.rule.ids>309,310,776,780,785,786,2052,27902,54530,54895,54907</link.rule.ids><linktorsrc>$$Uhttps://ieeexplore.ieee.org/document/6570641$$EView_record_in_IEEE$$FView_record_in_$$GIEEE</linktorsrc></links><search><creatorcontrib>Calvagna, Andrea</creatorcontrib><creatorcontrib>Tramontana, Emiliano</creatorcontrib><title>Combinatorial Validation Testing of Java Card Byte Code Verifiers</title><title>2013 Workshops on Enabling Technologies: Infrastructure for Collaborative Enterprises</title><addtitle>ENABL</addtitle><description>We present a technique to fully automate validation of a byte code verifier (BCV) implementation by testing. The technique is based on the use of a finite state machine model of the JVM specifications to systematically explore the set of legal JVM states from which one or more illegal states are immediately reachable. All possible sequences of instructions bringing to illegal states reachable from each legal state are combinatorially enumerated to generate a suite of tests, consisting of valid Java programs. For tests to stress the BCV type inference algorithm, each test program has been purposely designed with a large number of intertwined execution flows. The illegal state in the instruction sequence is hidden inside one of those paths.</description><subject>byte code verification</subject><subject>Law</subject><subject>Load modeling</subject><subject>Optimized production technology</subject><subject>Registers</subject><subject>Software engineering</subject><subject>software testing</subject><subject>Testing</subject><issn>1524-4547</issn><issn>2641-8169</issn><isbn>1479904058</isbn><isbn>9781479904051</isbn><fulltext>true</fulltext><rsrctype>conference_proceeding</rsrctype><creationdate>2013</creationdate><recordtype>conference_proceeding</recordtype><sourceid>6IE</sourceid><recordid>eNotj01LwzAYgIMfYDe9evGSP9CajzdvkuMMnU4GXuo8jnRNJNK1khZh_96Bnp7LwwMPIfecVZwz-_hRNxtXV4JxWUl1QQqBwEvD0V6SBQdtLQOmzBUpuBJQggJ9QxbT9MWYREBdkJUbj20a_Dzm5Hu6833q_JzGgTZhmtPwScdIX_2Pp87njj6d5kDd2AW6CznFFPJ0S66j76dw988leV_XjXspt2_PG7falolrNZcWBbTtIVjujeoUKG8AJYvGRGCCoRVSqLOhUYH0USBTvGuDxIONEkWQS_Lw100hhP13TkefT3tUmp2f5S-BBUkT</recordid><startdate>201306</startdate><enddate>201306</enddate><creator>Calvagna, Andrea</creator><creator>Tramontana, Emiliano</creator><general>IEEE</general><scope>6IE</scope><scope>6IL</scope><scope>CBEJK</scope><scope>RIE</scope><scope>RIL</scope></search><sort><creationdate>201306</creationdate><title>Combinatorial Validation Testing of Java Card Byte Code Verifiers</title><author>Calvagna, Andrea ; Tramontana, Emiliano</author></sort><facets><frbrtype>5</frbrtype><frbrgroupid>cdi_FETCH-LOGICAL-i175t-9624bbce91a85d545a84630f88f40206923254bb76543af26051dbe36c9f362e3</frbrgroupid><rsrctype>conference_proceedings</rsrctype><prefilter>conference_proceedings</prefilter><language>eng</language><creationdate>2013</creationdate><topic>byte code verification</topic><topic>Law</topic><topic>Load modeling</topic><topic>Optimized production technology</topic><topic>Registers</topic><topic>Software engineering</topic><topic>software testing</topic><topic>Testing</topic><toplevel>online_resources</toplevel><creatorcontrib>Calvagna, Andrea</creatorcontrib><creatorcontrib>Tramontana, Emiliano</creatorcontrib><collection>IEEE Electronic Library (IEL) Conference Proceedings</collection><collection>IEEE Proceedings Order Plan All Online (POP All Online) 1998-present by volume</collection><collection>IEEE Xplore All Conference Proceedings</collection><collection>IEEE Electronic Library (IEL)</collection><collection>IEEE Proceedings Order Plans (POP All) 1998-Present</collection></facets><delivery><delcategory>Remote Search Resource</delcategory><fulltext>fulltext_linktorsrc</fulltext></delivery><addata><au>Calvagna, Andrea</au><au>Tramontana, Emiliano</au><format>book</format><genre>proceeding</genre><ristype>CONF</ristype><atitle>Combinatorial Validation Testing of Java Card Byte Code Verifiers</atitle><btitle>2013 Workshops on Enabling Technologies: Infrastructure for Collaborative Enterprises</btitle><stitle>ENABL</stitle><date>2013-06</date><risdate>2013</risdate><spage>347</spage><epage>352</epage><pages>347-352</pages><issn>1524-4547</issn><eissn>2641-8169</eissn><isbn>1479904058</isbn><isbn>9781479904051</isbn><coden>IEEPAD</coden><abstract>We present a technique to fully automate validation of a byte code verifier (BCV) implementation by testing. The technique is based on the use of a finite state machine model of the JVM specifications to systematically explore the set of legal JVM states from which one or more illegal states are immediately reachable. All possible sequences of instructions bringing to illegal states reachable from each legal state are combinatorially enumerated to generate a suite of tests, consisting of valid Java programs. For tests to stress the BCV type inference algorithm, each test program has been purposely designed with a large number of intertwined execution flows. The illegal state in the instruction sequence is hidden inside one of those paths.</abstract><pub>IEEE</pub><doi>10.1109/WETICE.2013.35</doi><tpages>6</tpages></addata></record>
fulltext fulltext_linktorsrc
identifier ISSN: 1524-4547
ispartof 2013 Workshops on Enabling Technologies: Infrastructure for Collaborative Enterprises, 2013, p.347-352
issn 1524-4547
2641-8169
language eng
recordid cdi_ieee_primary_6570641
source IEEE Electronic Library (IEL) Conference Proceedings
subjects byte code verification
Law
Load modeling
Optimized production technology
Registers
Software engineering
software testing
Testing
title Combinatorial Validation Testing of Java Card Byte Code Verifiers
url http://sfxeu10.hosted.exlibrisgroup.com/loughborough?ctx_ver=Z39.88-2004&ctx_enc=info:ofi/enc:UTF-8&ctx_tim=2025-01-31T00%3A01%3A25IST&url_ver=Z39.88-2004&url_ctx_fmt=infofi/fmt:kev:mtx:ctx&rfr_id=info:sid/primo.exlibrisgroup.com:primo3-Article-ieee_6IE&rft_val_fmt=info:ofi/fmt:kev:mtx:book&rft.genre=proceeding&rft.atitle=Combinatorial%20Validation%20Testing%20of%20Java%20Card%20Byte%20Code%20Verifiers&rft.btitle=2013%20Workshops%20on%20Enabling%20Technologies:%20Infrastructure%20for%20Collaborative%20Enterprises&rft.au=Calvagna,%20Andrea&rft.date=2013-06&rft.spage=347&rft.epage=352&rft.pages=347-352&rft.issn=1524-4547&rft.eissn=2641-8169&rft.isbn=1479904058&rft.isbn_list=9781479904051&rft.coden=IEEPAD&rft_id=info:doi/10.1109/WETICE.2013.35&rft_dat=%3Cieee_6IE%3E6570641%3C/ieee_6IE%3E%3Cgrp_id%3Ecdi_FETCH-LOGICAL-i175t-9624bbce91a85d545a84630f88f40206923254bb76543af26051dbe36c9f362e3%3C/grp_id%3E%3Coa%3E%3C/oa%3E%3Curl%3E%3C/url%3E&rft_id=info:oai/&rft_id=info:pmid/&rft_ieee_id=6570641&rfr_iscdi=true