{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,10,28]],"date-time":"2025-10-28T00:25:16Z","timestamp":1761611116547,"version":"3.41.0"},"reference-count":58,"publisher":"Springer Science and Business Media LLC","issue":"3-4","license":[{"start":{"date-parts":[[2003,5,1]],"date-time":"2003-05-01T00:00:00Z","timestamp":1051747200000},"content-version":"tdm","delay-in-days":0,"URL":"https:\/\/www.springernature.com\/gp\/researchers\/text-and-data-mining"},{"start":{"date-parts":[[2003,5,1]],"date-time":"2003-05-01T00:00:00Z","timestamp":1051747200000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/www.springernature.com\/gp\/researchers\/text-and-data-mining"}],"content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":["Journal of Automated Reasoning"],"published-print":{"date-parts":[[2003,5]]},"DOI":"10.1023\/a:1025055424017","type":"journal-article","created":{"date-parts":[[2003,9,16]],"date-time":"2003-09-16T22:24:47Z","timestamp":1063751087000},"page":"235-269","source":"Crossref","is-referenced-by-count":82,"title":["Java Bytecode Verification: Algorithms and Formalizations"],"prefix":"10.1007","volume":"30","author":[{"given":"Xavier","family":"Leroy","sequence":"first","affiliation":[]}],"member":"297","reference":[{"key":"5139609_CR1","doi-asserted-by":"crossref","unstructured":"Abadi, M., Banerjee, A., Heintze, N. and Riecke, J. G.: A core calculus of dependency, in 26th Symposium on Principles of Programming Languages, 1999, pp. 147-160.","DOI":"10.1145\/292540.292555"},{"key":"5139609_CR2","unstructured":"Basin, D., Friedrich, S. and Gawkowski, M.: Bytecode verification by model checking, J. Automated Reasoning. Special issue on bytecode verification (this issue)."},{"key":"5139609_CR3","doi-asserted-by":"crossref","unstructured":"Bertot, Y.: Formalizing a JVML verifier for initialization in a theorem prover, in Proc. Computer Aided Verification (CAV'01), Lecture Notes in Comput. Sci. 2102, 2001, pp. 14-24.","DOI":"10.1007\/3-540-44585-4_3"},{"key":"5139609_CR4","unstructured":"Brisset, P.: Vers un v\u00e9rifieur de bytecode Java certifi\u00e9, Seminar given at Ecole Normale Sup\u00e9rieure, Paris, October 2, 1998."},{"key":"5139609_CR5","unstructured":"Brunnstein, K.: Hostile ActiveX Control demonstrated, RISKS Forum\n                  18(82) (1998)."},{"key":"5139609_CR6","unstructured":"Chen, Z.: Java Card Technology for Smart Cards: Architecture and Programmer's Guide, The Java Series, Addison-Wesley, 2000."},{"key":"5139609_CR7","unstructured":"Chugunov, G., \u00c5ke Fredlund, L. and Gurov, D.: Model checking multi-applet Java Card applications, in Smart Card Research and Advanced Applications Conference (CARDIS'02), 2002."},{"key":"5139609_CR8","unstructured":"Coglio, A.: Simple verification technique for complex Java bytecode subroutines, in 4th ECOOP Workshop on Formal Techniques for Java-like Programs, 2002. Extended version available as Kestrel Institute technical report."},{"issue":"2","key":"5139609_CR9","doi-asserted-by":"publisher","first-page":"155","DOI":"10.1002\/cpe.714","volume":"15","author":"A. Coglio","year":"2003","unstructured":"Coglio, A.: Improving the official specification of Java bytecode verification, Concurrency and Computation: Practice and Experience\n                  15(2) (2003), 155-179.","journal-title":"Concurrency and Computation: Practice and Experience"},{"key":"5139609_CR10","unstructured":"Coglio, A., Goldberg, A. and Qian, Z.: Towards a provably-correct implementation of the JVM bytecode verifier, in OOPSLA Workshop on Formal Underpinnings of Java, 1998."},{"key":"5139609_CR11","unstructured":"Cohen, R.: The defensive Java virtual machine specification, Technical Report, Computational Logic Inc., 1997."},{"key":"5139609_CR12","unstructured":"Deville, D. and Grimaud, G.: Building an \u201cimpossible\u201d verifier on a Java Card, in USENIX Workshop on Industrial Experiences with Systems Software (WIESS'02), 2002."},{"key":"5139609_CR13","unstructured":"Freund, S. N. and Mitchell, J. C.: A type system for the Java bytecode language and verifier, J. Automated Reasoning. Special issue on bytecode verification (this issue)."},{"key":"5139609_CR14","doi-asserted-by":"crossref","unstructured":"Freund, S. N. and Mitchell, J. C.: A formal framework for the Java bytecode language and verifier, in Object-Oriented Programming Systems, Languages and Applications 1999, pp. 147-166.","DOI":"10.1145\/320384.320397"},{"issue":"6","key":"5139609_CR15","doi-asserted-by":"publisher","first-page":"1196","DOI":"10.1145\/330643.330646","volume":"21","author":"S. N. Freund","year":"1999","unstructured":"Freund, S. N. and Mitchell, J. C.: A type system for object initialization in the Java bytecode language, ACM Transactions on Programming Languages and Systems\n                  21(6) (1999), 1196-1250.","journal-title":"ACM Transactions on Programming Languages and Systems"},{"key":"5139609_CR16","unstructured":"Frey, A.: On-terminal verifier for JEFF files, Personal communication, 2001."},{"key":"5139609_CR17","doi-asserted-by":"crossref","unstructured":"Goldberg, A.: A specification of Java loading and bytecode verification, in ACM Conference on Computer and Communications Security, 1998, pp. 49-58.","DOI":"10.1145\/288090.288104"},{"key":"5139609_CR18","unstructured":"Gong, L.: Inside Java 2 Platform Security: Architecture, API Design, and Implementation, The Java Series, Addison-Wesley, 1998."},{"key":"5139609_CR19","doi-asserted-by":"crossref","unstructured":"Gosling, J. A.: Java intermediate bytecodes, in Proc. ACM SIGPLAN Workshop on Intermediate Representations, 1995, pp. 111-118.","DOI":"10.1145\/202529.202541"},{"key":"5139609_CR20","doi-asserted-by":"crossref","unstructured":"Hagiya, M. and Tozawa, A.: On a new method for dataflow analysis of Java virtual machine subroutines, in G. Levi (ed.), SAS'98, Lecture Notes in Comput. Sci. 1503, 1998, pp. 17-32.","DOI":"10.1007\/3-540-49727-7_2"},{"issue":"4","key":"5139609_CR21","doi-asserted-by":"publisher","first-page":"517","DOI":"10.1145\/503112.503115","volume":"33","author":"P. H. Hartel","year":"2001","unstructured":"Hartel, P. H. and Moreau, L. A. V.: Formalizing the safety of Java, the Java virtual machine and Java Card, ACM Computing Surveys\n                  33(4) (2001), 517-558.","journal-title":"ACM Computing Surveys"},{"key":"5139609_CR22","doi-asserted-by":"crossref","unstructured":"Heintze, N. and Riecke, J. G.: The SLam calculus: Programming with secrecy and integrity, in 25th Symposium Principles of Programming Languages, 1998, pp. 365-377.","DOI":"10.1145\/268946.268976"},{"key":"5139609_CR23","unstructured":"Henrio, L. and Serpette, B.: A framework for bytecode verifiers: Application to intra-procedural continuations, Research Report, INRIA, 2001."},{"issue":"3","key":"5139609_CR24","doi-asserted-by":"crossref","first-page":"332","DOI":"10.1007\/s100090100047","volume":"3","author":"M. Huisman","year":"2001","unstructured":"Huisman, M., Jacobs, B. and van den Berg, J.: A case study in class library verification: Java's Vector class, Software Tools for Technology Transfer\n                  3(3) (2001), 332-352.","journal-title":"Software Tools for Technology Transfer"},{"key":"5139609_CR25","unstructured":"Jensen, T., Le M\u00e9tayer, D. and Thorn, T.: Verification of control flow based security properties, in IEEE Symposium on Security and Privacy, 1999."},{"key":"5139609_CR26","doi-asserted-by":"crossref","unstructured":"Klein, G.: Verified Java bytecode verification, Ph.D. thesis, Technische Universit\u00e4t M\u00fcnchen, 2003.","DOI":"10.1016\/S0304-3975(02)00869-1"},{"key":"5139609_CR27","doi-asserted-by":"publisher","first-page":"1133","DOI":"10.1002\/cpe.597","volume":"13","author":"G. Klein","year":"2001","unstructured":"Klein, G. and Nipkow, T.: Verified lightweight bytecode verification, Concurrency and Computation: Practice and Experience\n                  13 (2001), 1133-1151.","journal-title":"Concurrency and Computation: Practice and Experience"},{"key":"5139609_CR28","doi-asserted-by":"crossref","unstructured":"Klein, G. and Nipkow, T.: Verified bytecode verifiers, Theoret. Comput. Sci. (2002). To appear.","DOI":"10.1007\/3-540-45315-6_23"},{"key":"5139609_CR29","unstructured":"Klein, G. and Wildmoser, M.: Verified bytecode subroutines, J. Automated Reasoning. Special issue on bytecode verification (this issue)."},{"key":"5139609_CR30","doi-asserted-by":"crossref","unstructured":"Knoblock, T. and Rehof, J.: Type elaboration and subtype completion for Java bytecode, in 27th Symposium Principles of Programming Languages, 2000, pp. 228-242.","DOI":"10.1145\/325694.325725"},{"key":"5139609_CR31","doi-asserted-by":"publisher","first-page":"319","DOI":"10.1002\/spe.438","volume":"32","author":"X. Leroy","year":"2002","unstructured":"Leroy, X.: Bytecode verification for Java smart card, Software Practice & Experience\n                  32 (2002), 319-340.","journal-title":"Software Practice & Experience"},{"key":"5139609_CR32","doi-asserted-by":"crossref","unstructured":"Leroy, X. and Rouaix, F.: Security properties of typed applets, in J. Vitek and C. Jensen (eds.), Secure Internet Programming - Security Issues for Mobile and Distributed Objects, Lecture Notes in Comput. Sci. 1603, Springer-Verlag, 1999, pp. 147-182.","DOI":"10.1007\/3-540-48749-2_7"},{"key":"5139609_CR33","unstructured":"Lindholm, T. and Yellin, F.: The Java Virtual Machine Specification, 2nd edn, The Java Series, Addison-Wesley, 1999."},{"key":"5139609_CR34","unstructured":"McGraw, G. and Felten, E.: Securing Java, Wiley, 1999."},{"key":"5139609_CR35","unstructured":"Muchnick, S. S.: Advanced Compiler Design and Implementation, Morgan Kaufmann, 1997."},{"key":"5139609_CR36","doi-asserted-by":"crossref","unstructured":"Necula, G. C.: Proof-carrying code, in 24th Symposium Principles of Programming Languages, 1997, pp. 106-119.","DOI":"10.1145\/263699.263712"},{"key":"5139609_CR37","doi-asserted-by":"crossref","unstructured":"Nielson, F., Nielson, H. R. and Hankin, C.: Principles of Program Analysis, Springer-Verlag, 1999.","DOI":"10.1007\/978-3-662-03811-6"},{"key":"5139609_CR38","doi-asserted-by":"crossref","unstructured":"Nipkow, T.: Verified bytecode verifiers, in Foundations of Software Science and Computation Structures (FOSSACS'01), Lecture Notes in Comput. Sci. 2030, 2001, pp. 347-363.","DOI":"10.1007\/3-540-45315-6_23"},{"key":"5139609_CR39","doi-asserted-by":"crossref","unstructured":"O'Callahan, R.: A simple, comprehensive type system for Java bytecode subroutines, in 26th Symposium Principles of Programming Languages, 1999, pp. 70-78.","DOI":"10.1145\/292540.292549"},{"key":"5139609_CR40","unstructured":"Posegga, J. and Vogt, H.: Java bytecode verification using model checking, in Workshop Fundamental Underpinnings of Java, 1998."},{"key":"5139609_CR41","doi-asserted-by":"crossref","unstructured":"Pottier, F. and Simonet, V.: Information flow inference for ML, in 29th Symposium Principles of Programming Languages, 2002, pp. 319-330.","DOI":"10.1145\/503272.503302"},{"key":"5139609_CR42","doi-asserted-by":"crossref","unstructured":"Pottier, F., Skalka, C. and Smith, S.: A systematic approach to static access control, in D. Sands (ed.), Proceedings of the 10th European Symposium on Programming (ESOP'01), Lecture Notes in Comput. Sci. 2028, 2001, pp. 30-45.","DOI":"10.1007\/3-540-45309-1_3"},{"key":"5139609_CR43","doi-asserted-by":"crossref","unstructured":"Pusch, C.: Proving the soundness of a Java bytecode verifier specification in Isabelle\/HOL, in W. R. Cleaveland (ed.), TACAS'99, Lecture Notes in Comput. Sci. 1579, 1999, pp. 89-103.","DOI":"10.1007\/3-540-49059-0_7"},{"key":"5139609_CR44","doi-asserted-by":"crossref","unstructured":"Qian, Z.: A formal specification of Java virtual machine instructions for objects, methods and subroutines, in J. Alves-Foss (ed.), Formal Syntax and Semantics of Java, Lecture Notes in Comput. Sci. 1523, Springer-Verlag, 1998.","DOI":"10.1007\/3-540-48737-9_8"},{"issue":"4","key":"5139609_CR45","doi-asserted-by":"publisher","first-page":"638","DOI":"10.1145\/363911.363915","volume":"22","author":"Z. Qian","year":"2000","unstructured":"Qian, Z.: Standard fixpoint iteration for Java bytecode verification, ACM Transactions on Programming Languages and Systems\n                  22(4) (2000), 638-672.","journal-title":"ACM Transactions on Programming Languages and Systems"},{"key":"5139609_CR46","unstructured":"Rose, E.: V\u00e9rification de code d'octet de la machine virtuelle Java: formalisation et implantation, Ph.D. thesis, University Paris 7, 2002."},{"key":"5139609_CR47","unstructured":"Rose, E. and Rose, K.: Lightweight bytecode verification, in OOPSLA Workshop on Formal Underpinnings of Java, 1998."},{"key":"5139609_CR48","doi-asserted-by":"crossref","unstructured":"Schmidt, D. A.: Data flow analysis is model checking of abstract interpretations, in 25th Symposium Principles of Programming Languages, 1998, pp. 38-48.","DOI":"10.1145\/268946.268950"},{"key":"5139609_CR49","doi-asserted-by":"crossref","unstructured":"St\u00e4rk, R., Schmid, J. and B\u00f6rger, E.: Java and the Java Virtual Machine, Springer-Verlag, 2001.","DOI":"10.1007\/978-3-642-59495-3"},{"key":"5139609_CR50","unstructured":"St\u00e4rk, R. F. and Schmid, J.: Completeness of a bytecode verifier and a certifying Java-to-JVM compiler, J. Automated Reasoning. Special issue on bytecode verification (this issue)."},{"issue":"1","key":"5139609_CR51","doi-asserted-by":"publisher","first-page":"90","DOI":"10.1145\/314602.314606","volume":"21","author":"R. Stata","year":"1999","unstructured":"Stata, R. and Abadi, M.: A type system for Java bytecode subroutines, ACM Transactions on Programming Languages and Systems\n                  21(1) (1999), 90-137.","journal-title":"ACM Transactions on Programming Languages and Systems"},{"key":"5139609_CR52","unstructured":"Sun Microsystems: Java 2 platform micro edition technology for creating mobile devices, White paper, http:\/\/java.sun.com\/products\/cldc\/wp\/KVMwp.pdf, 2000."},{"key":"5139609_CR53","unstructured":"Trusted Logic: Off-card bytecode verifier for Java card, 2001. Distributed as part of Sun's Java Card Development Kit."},{"key":"5139609_CR54","doi-asserted-by":"crossref","unstructured":"Vigna, G. (ed.): Mobile Agents and Security, Lecture Notes in Comput. Sci. 1419, Springer-Verlag, 1998.","DOI":"10.1007\/3-540-68671-1"},{"key":"5139609_CR55","doi-asserted-by":"crossref","unstructured":"Volpano, D. and Smith, G.: A type-based approach to program security, in Proceedings of TAPSOFT'97, Colloquium on Formal Approaches in Software Engineering, Lecture Notes in Comput. Sci. 1214, 1997, pp. 607-621.","DOI":"10.1007\/BFb0030629"},{"issue":"3","key":"5139609_CR56","first-page":"1","volume":"4","author":"D. Volpano","year":"1996","unstructured":"Volpano, D., Smith, G. and Irvine, C.: A sound type system for secure flow analysis, J. Computer Security\n                  4(3) (1996), 1-21.","journal-title":"J. Computer Security"},{"key":"5139609_CR57","doi-asserted-by":"crossref","unstructured":"Walker, D.: A type system for expressive security policies, in 27th Symposium Principles of Programming Languages, 2000, pp. 254-267.","DOI":"10.1145\/325694.325728"},{"key":"5139609_CR58","doi-asserted-by":"crossref","unstructured":"Yellin, F.: Low level security in Java, in Proceedings of the Fourth International World Wide Web Conference, 1995, pp. 369-379.","DOI":"10.1145\/3592626.3592656"}],"container-title":["Journal of Automated Reasoning"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/link.springer.com\/content\/pdf\/10.1023\/A:1025055424017.pdf","content-type":"application\/pdf","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/link.springer.com\/article\/10.1023\/A:1025055424017\/fulltext.html","content-type":"text\/html","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/link.springer.com\/content\/pdf\/10.1023\/A:1025055424017.pdf","content-type":"application\/pdf","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,6,5]],"date-time":"2025-06-05T11:46:44Z","timestamp":1749124004000},"score":1,"resource":{"primary":{"URL":"https:\/\/link.springer.com\/10.1023\/A:1025055424017"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2003,5]]},"references-count":58,"journal-issue":{"issue":"3-4","published-print":{"date-parts":[[2003,5]]}},"alternative-id":["5139609"],"URL":"https:\/\/doi.org\/10.1023\/a:1025055424017","relation":{},"ISSN":["0168-7433","1573-0670"],"issn-type":[{"type":"print","value":"0168-7433"},{"type":"electronic","value":"1573-0670"}],"subject":[],"published":{"date-parts":[[2003,5]]}}}