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...
Saved in:
Main Authors: | , |
---|---|
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 |