Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
article

Formalizing the safety of Java, the Java virtual machine, and Java card

Published: 01 December 2001 Publication History

Abstract

We review the existing literature on Java safety, emphasizing formal approaches, and the impact of Java safety on small footprint devices such as smartcards. The conclusion is that although a lot of good work has been done, a more concerted effort is needed to build a coherent set of machine-readable formal models of the whole of Java and its implementation. This is a formidable task but we believe it is essential to build trust in Java safety, and thence to achieve ITSEC level 6 or Common Criteria level 7 certification for Java programs.

References

[1]
ABADI, M. 1999. Protection in programminglanguage translations. In Secure Internet Programming: Security Issues for Mobile and Distributed Objects, LNCS 1603, pp. 19-34. Springer-Verlag, Berlin.]]
[2]
ABADI, M., BURROWS, M., LAMPSON,B.,AND PLOTKIN, G. 1993. A calculus for access control in distributed systems. ACM Transactions on Programming Languages and Systems 15, 4 (Sept.), 706-734.]]
[3]
ABRAHAM-MUMM,E.AND DE BOER, F. S. 2000. Proofoutlines for threads in Java. In C. Palamidessi, Ed., 11th Concurrency Theory (CONCUR), LNCS 1877 (University Park, Penn., Aug.), pp. 229-242. Springer-Verlag, Berlin.]]
[4]
ABRIAL, J.-R. 1996. The B-Book: Assigning Programs to Meanings. Cambridge Univ. Press, UK.]]
[5]
AGESEN, O., DETLEFS,D.,AND MOSS, J. E. B. 1998. Garbage collection and local variable typeprecision and liveness in Java virtual machines. In Programming Language Design and Implementation (PLDI) (Montreal, Canada, June.), pp. 269-279. ACM press, New York.]]
[6]
AGESEN, O., FREUND,S.N.,AND MITCHELL,J.C. 1997. Adding type parameterization to the Java(TM) language. In Object- Oriented Programming, Systems, Languages and Applications (OOPSLA), pp. 49-65. ACM SIGPLAN Notices, 32(10).]]
[7]
AHAMAD, M., BAZZI, R., JOHN, R., KOHLI,P.,AND NEIGER, G. 1993. The power of processor consistency. In 5th Annual Symp. on Parallel Algorithms and Architectures (SPAA) (Velen, Germany, June), pp. 251-260. ACM, New York.]]
[8]
ALDRICH, J., CHAMBERS, C., SIRER, E., AND EGGERS,S. 1999. Static analyses for eliminating unnecessary synchronization from Java programs. In A. Cortesi and G. Fil~, Eds., 6th Static Analysis Symp. (SAS), LNCS 1694 (Venice, Italy, Sept.), pp. 19-38. Springer-Verlag, Berlin.]]
[9]
ALVES-FOSS,J.AND LAM, F. S. 1999. Dynamic denotational semantics of Java. In J. Alves-Foss, Ed., Formal Syntax and Semantics of Java, LNCS 1523, pp. 201-240. Springer-Verlag, Berlin.]]
[10]
ANDERSON,T.AND WITTY, R. W. 1978. Safe programming. BIT 18, 1-8.]]
[11]
ANTONIU, G., BOUGE, L., HATCHER, P., MACBETH, M., MCGUIGAN, K., AND NAMYST, R. 2000. Compiling multithreaded Java bytecode for distributed execution. In A. Bode, T. Ludwig, W. Karl, and R. Wism uller, Eds., 6th Int. Euro- Par 2000-Parallel Processing Conf, LNCS 1900 (Munich, Germany, Aug.), pp. 1039-1052. Springer-Verlag, Berlin.]]
[12]
ARIDOR, Y., FACTOR, M., AND TEPERMAN, A. 1999. cJVM: A single system image of a JVM on a cluster. In Parallel Processing (ICPP'99) (Wakamatsu, Japan, Sept.), pp. 21-24. IEEE Computer Society Press, Los Alamitos.]]
[13]
ARIDOR, Y., FACTOR, M., TEPERMAN, A., EILAM,T.,AND SCHUSTER, A. 2000. A high performance cluster JVM presenting a pure single system image. In Conf. Java Grande (San Francisco, June), pp. 168-177. ACM, New York.]]
[14]
ATTALI, I., CAROMEL,D.,AND RUSSO, M. 1998. A formal executable semantics for Java. In OOPSLA'98 Workshop on Formal Underpinnings of Java (FUJ) (Vancouver, Canada, Nov.), pp. Paper 11. Dept. of Computing, Imperial College London.]]
[15]
ATTALI, I., CAROMEL, D., COURBIS, C., HENRIO, L., AND NILSSON, H. 2000. Smart tools for Java cards. In J. Domingo-Ferrer, D. Chan, and A. Watson, Eds., 4th Int. IFIP wg 8.8 Conf. Smart Card Research and Advanced Application (CARDIS) (Bristol, UK, Sept.), pp. 155-174. Kluwer Academic Publishers, Boston.]]
[16]
BALFANZ,D.AND FELTEN, E. W. 1997. A Java filter. Tech. Rep. 567-97 (Sept.), Dept. of Computer Science, Princeton Univ.]]
[17]
BASIN, D., FRIEDRICHS, S., POSEGGA,J.,AND VOGT,H. 1999. Java bytecode verification using model checking. In R. Alur and T. Henzinger, Eds., 11th Computer Aided Verification (CAV ), LNCS 1633 (New Brunswick, NJ), pp. 491-494. Springer- Verlag, Berlin.]]
[18]
BERTELSEN, P. 2000. Dynamic semantics of Java byte code. Future Generation Computer Systems 16, 7 (May), 841-850.]]
[19]
BERTELSEN, P. 1997. Semantics of Java byte code. Tech. Rep. (Mar.), Technical Univ. of Denmark.]]
[20]
BERTELSEN,P.AND ANDERSON, S. 1996. The semantics of a core language derived from Java. Tech. Rep. (Sept.), Technical Univ. of Denmark.]]
[21]
BIEBER, P., CAZIN, J., WIELS, V., ZANON, G., GIRARD,P., AND LANET, J.-L. 1999. Electronic purse applet certification. In S. Schneider and P. Ryan, Eds., Workshop on Secure Architectures and Information Flow (Royal Holloway, London, Dec.). Electronics Notes in Theoretical Computer Science, 32.]]
[22]
BIGLIARDI,G.AND LANEVE, C. 2000. A type system for JVM threads. Tech. Rep. UBLCS-2000-06 (June), University of Bologna.]]
[23]
BOGDA,J.AND H~LZLE, U. 1999. Removing unnecessary synchronizations in Java. In Object-Oriented Programming, Systems, Languages and Applications (OOPSLA) (Denver, Colorado, Dec.), pp. 35-46. ACM-Press, New York.]]
[24]
BORGER,E.AND SCHULTE, W. 1998. Defining the Java virtual machine as platform for provably correct Java compilation. In L. Brim, J. Gruska, and J. Zlatuska, Eds., 23rd Int. Symp. Mathematical Foundations of Computer Science (MFCS) LNCS 1450 (Brno, Czech Republic, Aug.), pp. 17-35. Springer-Verlag, Berlin.]]
[25]
BORGER,E.AND SCHULTE, W. 1999a. Initialization problems for Java. Software Concepts and Tools 20, 4, 175-179.]]
[26]
BORGER,E.AND SCHULTE, W. 1999b. A programmer friendly module definition of the semantics of Java. In J. Alves-Foss Ed., Formal Syntax and Semantics of Java, LNCS 1523, pp. 353-404. Springer-Verlag, Berlin.]]
[27]
BORGER,E.AND SCHULTE, W. 2000a. Modular design for the Java virtual machine architecture. In E. Borger, Ed., Architecture Design and Validation Methods, pp. 297-357. Springer-Verlag, Berlin.]]
[28]
BORGER,E.AND SCHULTE, W. 2000b. A practical method for specification and analysis of exception handling-a Java/JVM case study. IEEE Transactions on Software Engineering 26,9 (Sept.), 872-887.]]
[29]
BORRAS, P., CLEMENT, D., DESPEYROUX, T., INCERPI, J., KAHN, G., LANG,B.,AND PASCUAL, V. 1988. Centaur: The system. In Third Annual Symp. on Software Development Environments (SDE3) (Boston), pp. 14-24. ACM, New York.]]
[30]
BRACHA, G. 1999. A Critique of Security and Dynamic Loading in Java: A Formalization. Sun Java Software.]]
[31]
BRACHA, G., ODERSKY, M., STOUTAMIRE,D.,AND WADLER, P. 1998. GJ: Extending the Java programming language with type parameters. Tech. Rep. (Mar.), Bell Labs, Lucent Technologies.]]
[32]
CARTWRIGHT,R.AND STEELE JR., G. L. 1998. Compatible genericity with run-time types for the Java programming language. In Object- Oriented Programming, Systems, Languages and Applications (OOPSLA) (Vancouver, Canada, Nov.), pp. 201-215. ACM press, New York.]]
[33]
CASSET,L.AND LANET, J.-L. 1999. A formal specification of the Java bytecode semantics using the B method. Technischer Bericht 251 (June), Fernuniversit~t Hagen, Lisbon, Portugal.]]
[34]
CENCIARELLI, P. 1999. Towards a modular denotational semantics of Java. Technischer Bericht 251 (June), Fernuniversit~t Hagen, Lisbon, Portugal.]]
[35]
CENCIARELLI, P., KNAPP, A., REUS,B.,AND WIRSING,M. 1999. An event based structural operational semantics of multi threaded Java. In J. Alves- Foss, Ed., Formal Syntax and Semantics of Java, LNCS1523, pp. 157-200. Springer-Verlag, Berlin.]]
[36]
CHEN,X.AND ALLAN, V. 1998. MultiJav: A distributed shared memory system based on multiple Java virtual machines. In Conference on Parallel and Distributed Processing Techniques and Applications (PDTA'98) (Las Vegas, Nevada, June).]]
[37]
CHEN, Z. 2000. Java Card Technology for Smart Cards: Architecture and Programmer's Guide. Addison Wesley, Reading, Mass.]]
[38]
CHOI, J.-D., GUPTA, M., SERRANO, M., SREEDHAR,V.,AND MIDKIFF, S. 1999. Escape analysis for Java. In Object-Oriented Programming, Systems, Languages and Applications (OOPSLA) (Denver, Colorado, Dec.), pp. 1-19. ACM Press, New York.]]
[39]
COGLIO,A.AND GOLDBERG, A. 2000. Type Safety in the JVM: Some Problems in JDK 1.2.2 and Proposed Solutions. Kestrel Institute, Palo Alto, Calif.]]
[40]
COGLIO, A., GOLDBERG, A., AND QIAN, Z. 1998. Toward a provably-correct implementation of the JVM bytecode verifier. In OOPSLA '98 Workshop on Formal Underpinnings of Java (FUJ) (Vancouver, Canada, Nov.), pp. Paper 6. Dept. of Computing, Imperial College London.]]
[41]
COHEN, R. M. 1997. The defensive Java virtual machine specification version 0.5. Tech. rep. (May), Computational Logic Inc, Austin, Texas.]]
[42]
COHEN, R. M. 1998. Formal underpinnings of Java: Some requirements. In OOPSLA '98 Work-shop on Formal Underpinnings of Java (FUJ) (Vancouver, Canada, Nov.), pp. Paper 1. Dept. of Computing, Imperial College London.]]
[43]
COLBY, C., LEE, P., NECULA,G.C.,BLAU, F., CLINE, K., AND PLESKO, M. 2000. A certifying compilerf for Java. In Programming Language Design fand Implementation (PLDI) (Vancouver, Canada, June), pp. 95-107. ACM, New York.]]
[44]
CORBETT,J.C.,DWYER,M.B.,HATCLIFF, J., LAUBACH, S., PASAREANU,C.S.,ROBBY, AND ZHENG, H. 2000. Bandera: Extracting finite-state models from Java source code. In 22nd International Conference on Software Engineering (Limerick Ireland, June), pp. 439-448. ACM, New York.]]
[45]
COSCIA,E.AND REGGIO, G. 1998a. An operational semantics for Java. Tech. Rep. (Nov.), DISI, Univ. of Genova, Italy.]]
[46]
COSCIA,E.AND REGGIO, G. 1998b. A proposal for a semantics of a subset of multi-threaded 'good' Java programs. In OOPSLA '98 Work-shop on Formal Underpinnings of Java (FUJ) (Vancouver, Canada, Nov.), pp. Paper 10. Dept. of Computing, Imperial College London.]]
[47]
CRARY,K.AND WEIRICH, S. 2000. Resource bound certification. In 27th Principles of Programming Languages (POPL) (Boston, Jan.), pp. 184-198. ACM, New York.]]
[48]
DEAN, D. 1997. The security of static typing with dynamic linking. In 4th Computer and Communications Security (Zurich, Apr.), pp. 18-27. ACM, New York.]]
[49]
DEAN, D., FELTEN,E.W.,AND WALLACH, D. S. 1996. Java security: From HotJava to Netscape and beyond. In Symp. on Security and Privacy (Oakland, Calif., May), pp. 190-200. IEEE Computer Society Press, Los Alamitos, Calif.]]
[50]
DEMARTINI, C., IOSIF, R., AND SISTO, R. 1998. Modeling and validation of Java multithreading applications using SPIN. In 4th Spin Workshop (Paris, France, Nov.).]]
[51]
DENNEY,E.AND JENSEN, T. 2000. Correctness of Java card method lookup via logical relations. In E. Smolka, Ed., 9th European Symp. on Programming (ESOP), LNCS 1782 (Berlin, Mar.), pp. 104-118. Springer-Verlag, Berlin.]]
[52]
DETLEFS, D. L., LEINO,K.R.M.,NELSON,G.,AND SAXE, J. B. 1998. Extended static checking. SRC Research Rep. 159 (Dec), Compaq Systems Research Center, Palo Alto, Calif.]]
[53]
DIEHL, S. 1998. A formal introduction to the compilation of Java. Software-Practice and Experience 28, 3 (Mar.), 297-327.]]
[54]
DROSSOPOULOU, S. 2000. Towards an abstract model of Java dynamic linking and verification. In ACM SIGPLAN Workshop on Types in Compilation (TIC) (Montreal, Canada, Sept.), pp. Paper 19. Computer Science Department, Carnegie Mellon University.]]
[55]
DROSSOPOULOU,S.AND EISENBACH, S. 1997. Java is type safe-Probably. In M. Aksit and S. Matsuoka, Eds., 11th European Conference on Object Oriented Programming, ECOOP, LNCS 1241 (Jyvaskyla, Finland, June), pp. 389-418. Springer-Verlag, Berlin.]]
[56]
DROSSOPOULOU,S.AND EISENBACH, S. 1999. Describing the semantics of Java and proving type soundness. In J. Alves-Foss, Ed., Formal Syntax and Semantics of Java, LNCS 1523, pp. 41-82. Springer-Verlag, Berlin.]]
[57]
DROSSOPOULOU,S.AND VALKEVYCH, T. 2000. Java Exceptions Throw No Surprises. Department of Computing, Imperial College, London.]]
[58]
DROSSOPOULOU, S., EISENBACH,S.,AND WRAGG,D. 1999a. A fragment calculus-Towards a model of separate compilation, linking and binary compatibility. In Logic in Computer Science (LICS) (Trento, Italy, July), pp. 147-156. IEEE Computer Society Press.]]
[59]
DROSSOPOULOU, S., EISENBACH,S.,AND KHURSHID,S. 1999b. Is the Java type system sound? Theory and Practice of Object Systems 5,1,3- 24.]]
[60]
DROSSOPOULOU, S., WRAGG,D.,AND EISENBACH,S. 1998. What is Java binary compatibility? In Object-Oriented Programming, Systems, Languages and Applications (OOPSLA) (Vancouver, Canada, Oct.), pp. 341-361. SIGPLAN Notices 33, 10.]]
[61]
FELLEISEN,M.AND HEIB, R. 1992. The revised report on the yntactic theories of sequential control and state. Theoretical Computer Science 2, 4, 235-271.]]
[62]
FLANAGAN,C.AND FREUND, S. 2000. Type-based race detection for Java. In Programming Language Design and Implementation (PLDI) (Vancouver, Canada, June), pp. 219-232. ACM- Press, New York.]]
[63]
FLATT, M., KRISNAMURTHI,S.,AND FELLEISEN, M. 1999. A programmer's reduction semantics for classes and mixins. In J. Alves-Foss, Ed., Formal Syntax and Semantics of Java, LNCS 1523, pp. 241- 270. Springer-Verlag, Berlin.]]
[64]
FOKKINK,W.J.AND VERHOEF, C. 1998. A conservative look at operational semantics with variable binding. Information and Computation 146,1, 24-54.]]
[65]
FONG,P.W.L.AND CAMERON, R. D. 1998. Proof linking: An architecture for modular verification of dynamically-linked mobile code. In 6th SIGSOFT Int. Symp. on the Foundations of Software Engineering (Orlando, Florida, Nov.), pp. 222-230. ACM press, New York.]]
[66]
FREUND, S. N. 1998. The costs and benefits of Java bytecode subroutines. In OOPSLA '98 Work-shop on Formal Underpinnings of Java (FUJ) (Vancouver, Canada, Nov.), pp. Paper 2. Dept. of Computing, Imperial College London.]]
[67]
FREUND,S.N.AND MITCHELL, J. C. 1998. A type system for object initialization in the Java bytecode language. In Object-Oriented Programming, Systems, Languages and Applications (OOPSLA) (Vancouver, Canada, Oct.), pp. 310-328. ACM Press, New York.]]
[68]
FREUND,S.N.AND MITCHELL, J. C. 1999a. A formal framework for the Java bytecode language and verifier. In Object-Oriented Programming, Systems, Languages and Applications (OOPSLA) (Denver, Colorado, Dec.), pp. 147-166. ACM press, New York.]]
[69]
FREUND,S.N.AND MITCHELL, J. C. 1999b. A type system for object initialization in the Java bytecode language. ACM Transactions on Programming Languages and Systems 21, 6 (Nov.), 1196- 1250.]]
[70]
FRITZINGER,J.S.AND MUELLER, M. 1996. Java Security. Sun Microsystems Inc, Mountain View, Calif.]]
[71]
GAGNON,E.AND HENDREN, L. 1999. Intraprocedural inference of static types. Tech. Rep. 1999-1 (Mar.), Sable Group, McGill University, Montreal, Canada.]]
[72]
GLESNER,S.AND ZIMMERMANN, W. 1998. Using many-sorted natural semantics to specify and generate semantic analysis. In TC2 WG2.4 Working Conference on Systems Implementation 2000: Languages, Methods and Tools, pp. 249- 62. Chapman & Hall, London.]]
[73]
GOLDBERG, A. 1998. A specification of Java loading and bytecode verification. In 5th Conf. Computer and Communications Security (San Francisco, Nov.), pp. 49-58. ACM Press, New York.]]
[74]
GONG, L. 1998. Secure Java class loading. IEEE-Internet- Computing 2, 6 (Nov.), 56-61.]]
[75]
GONTMAKHER,A.AND SCHUSTER, A. 2000. Java consistency: Non-operational characterizations for Java memory behavior. ACM Transactions on Computer Systems 18, 4 (Nov.), 333-386.]]
[76]
GORE, R., POSEGGA, J., SLATER, A., AND VOGT, H. 1998. cardT A P: The first theorem prover on a smart card. In 15th Automated Deduction (CADE), LNCS 1421 (Lindau, Germany, July), pp. 47-50. Springer-Verlag, Berlin.]]
[77]
GOSLING, J., JOY,B.,AND STEELE, G. 1996. The Java Language Specification. Addison Wesley, Reading, Mass.]]
[78]
GOSLING, J., JOY, B., STEELE,G.,AND BRACHA, G. 2000. The Java Language Specification (second ed.). Addison Wesley, Reading, Mass.]]
[79]
GUREVICH, Y. 1995. Evolving algebras 1993: Lipari guide. In E. BORGER, Ed., Specification and Validation Methods, pp. 9-36. Oxford University Press.]]
[80]
HAGIYA,M.AND TOZAWA, A. 1998. On a new method for dataflow analysis of Java virtual machine subroutines. In G. Levi, Ed., Int. Static Analysis Symp. (SAS), LNCS 1503 (Pisa, Italy, Sept.), pp. 17-32. Springer-Verlag, Berlin.]]
[81]
HARTEL, P. H. 1999. LETOS-a lightweight execution tool for operational semantics. Software Practice and Experience 29, 15 (Sept.), 1379- 1416.]]
[82]
HARTEL,P.H.AND DE JONG, E. 2000. A programming and a modelling perspective on the evaluation of Java card implementations. I. Attali and T. Jensen, Eds., 1st Java on Smart Cards: Programming and Security (e-Smart), LNCS 2041 (Cannes, France, Sept.), pp. 52-72. Springer- Verlag, Berlin.]]
[83]
HARTEL, P. H., BUTLER,M.J.,AND LEVY, M. 1999. The operational semantics of a Java secure processor. In J. Alves-Foss, Ed., Formal Syntax and Semantics of Java, LNCS 1523, pp. 313-352. Springer-Verlag, Berlin.]]
[84]
HAVELUND,K.AND PRESSBURGER, T. 2000. Model checking Java programs using pathfinder. Software Tools for Technology Transfer 2, 4, 366-381.]]
[85]
HAYES, B. 1992. Finalization in the collector interface. In Y. Bekkers and J. Cohen, Eds., Memory Management (IWMM), LNCS 637 (St. Malo, France, Sept.), pp. 277-298. Springer-Verlag, Berlin.]]
[86]
HILDERINK, G., BROEKING, J., VERVOORT,W.,AND BAKKERS, A. 1997. Communicating Java threads. In 20th World Occam and Transputer User Group Technical Meeting (Enschede, The Netherlands, Apr.), pp. 48-76. IOS Press, Amsterdam.]]
[87]
HOLZMANN, G. J. 1997. The model checker SPIN. IEEE Transactions on Software Engineering 23, 5, 279-295.]]
[88]
HUISMAN, M. 2001. Reasoning about Java progams in higher order logic with PVS and Isabelle. PhD thesis, Univ. of Nijmegen, The Netherlands.]]
[89]
HUISMAN, M., JACOBS,B.,AND VAN DEN BERG,J. 2001. A case study in class library verification: Java's vector class. Software Tools for Technology Transfer, to appear.]]
[90]
HUMMEL, J., AZAVEDO, A., KOLSON,D.,AND NICOLAU,A. 1997. Annotating the Java bytecodes in support of optimization. Concurrency: Practice and Experience 9, 11 (Nov.), 1003-1016.]]
[91]
IGARASHI,A.AND PIERCE, B. 2000. On inner classes. In E. BERTINO Ed., 14th European Conference on Object Oriented Programming, ECOOP, LNCS 1850 (Sophia Antipolis, France, June), pp. 129- 153. Springer-Verlag, Berlin.]]
[92]
IGARISHI, A., PIERCE,B.,AND WADLER, P. 1999. Featherweight Java: A minimal core calculus for Java and GJ. In Object-Oriented Programming, Systems, Languages and Applications (OOPSLA) (Denver, Colorado, Oct.), pp. 132-146. ACM Press, New York.]]
[93]
ISO/IEC. 1995. 7816-4:1995 Information Technology- Identification Cards-Integrated Circuit(s) Cards with Contacts Part4: Inter-Industry Commands for Interchange. Int. Standards Organization.]]
[94]
ITSEC. 1993. Evaluation Criteria for IT Security Part 3: Assurance of IT Systems (version 1.2 ed.). INFOSEC Central Office, Brussels, Belgium.]]
[95]
JACOBS, B. 2001. A formalisation of Java's exception mechanism. In D. Sands, Ed., 10th European Symp. on Programming (ESOP), LNCS 2028 (Genova, Italy, Apr.), pp. 284-301. Springer-Verlag, Berlin.]]
[96]
JACOBS,B.AND POLL, E. 2000. A monad for basic Java semantics. In T. Rus, Ed., Algebraic Methodology and Software Technology (AMAST), LNCS 1816, pp. 150-164. Springer- Verlag.]]
[97]
JACOBS,B.AND POLL, E. 2001. A logic for the Java modeling language JML. In H. Hussmann, Ed., 4th Fundamental Approaches to Software Engineering (FASE), LNCS 2029 (Genova, Italy, Apr.), pp. 284-299. Springer-Verlag, Berlin.]]
[98]
JACOBS,B.,VAN DEN BERG, J., HUISMAN, M., VAN BERKUM, M., HENSEL,U.,AND TEWS, H. 1998. Reasoning about classes in Java (preliminary report). In Object-Oriented Programming, Systems, Languages and Applications (OOPSLA) (Vancouver, Canada, Oct.), pp. 329-340. ACM Press, New York.]]
[99]
JENSEN, T., METAYER,D.L.,AND THORN, T. 1998. Security and dynamic class loading in Java: A formalization. In Computer Languages, pp. 4-15. IEEE Comput. Soc. Press, Los Alamitos, Calif.]]
[100]
JENSEN, T., METAYER,D.L.,AND THORN, T. 1999. Verification of control flow based security properties. In Symp. on Security and Privacy (Oakland, California, May), pp. 89-103. IEEE Comput. Soc., Los Alamitos, Calif.]]
[101]
JONES, M. 1998. The functions of Java bytecode. In OOPSLA '98 Workshop on Formal Underpinnings of Java (FUJ) (Vancouver, Canada, Nov.), pp. Paper 3. Dept. of Computing, Imperial College London.]]
[102]
KASSAB,L.AND GREENWALD, S. 1998. Towards formalizing the Java security architecture in JDK 1.2. In J.-J. Quisquater, Y. Deswarte, C. Meadows, and D. Gollmann, Eds., European Symp. on Research in Computer Security (ESORICS), LNCS1485 (Louvain-la-Neuve, Belgium, Sept.), pp. 191-207. Springer- Verlag, Berlin.]]
[103]
KAUFMANN,M.AND MOORE, J. S. 1996. ACL2: An industrial strength version of nqthm. In 11th Annual Conf. on Computer Assurance (COMPASS) (Gaithersburg, Md., June), pp.23-34.IEEE Computer Society Press, Los Alamitos, California.]]
[104]
KISTLER,T.AND FRANZ, M. 1996. A tree-based alternative to Java byte-codes. Tech. Rep. 96-58 (Dec.), Depart. of Information and Computer Science, Univ. of California, Irvine.]]
[105]
KLEIN,G.AND NIPKOW, T. 2000. Verified lightweight bytecode verification. In S. Drossopoulkou, S. Eisenbach, B. Jacobs, G. T. Leavens, P. Muller, and A. Poetzsch-Heffter, Eds., ECOOP'2000 Workshop on Formal Techniques for Java Programs (Sophia Antipolis, France, June), pp. 35- 42. Fernuniversitat Hagen.]]
[106]
KNOBLOCK,T.B.AND REHOF, J. 2000. Type elaboration and subtype completion for Java bytecode. In 27th Principles of Programming Languages (POPL) (Boston, Jan.), pp. 228-242. ACM, New York.]]
[107]
KOZEN, D. 1998. Efficient code certification. Tech. Rep. 98-1661 (Jan.), Dept. of Comp. Sci., Cornell Univ., Ithaca, New York.]]
[108]
LANET, J.-L. 2000. Are smart cards the ideal domain for applying formal methods? In International Conference of Z and B Users (ZB), LNCS 1878 (York, UK, Sept.), pp. 363-374. Springer- Verlag, Berlin.]]
[109]
LANET, J.-L. AND REQUET, A. 1998. Formal proof of smart card applets correctness. In J.-J. Quisquater and B. Schneier, Eds., 3rd Smart card research and advanced application (CARDIS), LNCS 1820 (Louvain la Neuve, Belgium, Sept.), pp. 85-97. Springer- Verlag, Berlin.]]
[110]
LEAVENS,G.T.,BAKER,A.L.,AND RUBY, C. 1999. JML: A notation for detailed design. In H. Kilov, B. Rumpe, and I. Simmonds, Eds., Behavioral Specifications of Business and Systems,pp. 175-188. Kluwer Academic, Boston/ Dordrecht/ London.]]
[111]
LEINO,K.R.M.,SAXE,J.B.,AND STATA, R. 1999. Checking Java programs via guarded commands. SRC Research Rep. 1999-002 (May), Compaq Systems Research Center, Palo Alto, Calif.]]
[112]
LIANG,S.AND BRACHA, G. 1998. Dynamic class loading in the Java virtual machine. In Object-Oriented Programming, Systems, Languages and Applications (OOPSLA) (Vancouver, Canada, Oct.), pp. 36-44. SIGPLAN Notices 33, 10.]]
[113]
LINDHOLM,T.AND YELLIN, F. 1996. The Java Virtual Machine Specification. Addison Wesley, Reading, Mass.]]
[114]
MAESSEN, J., ARVIND, AND SHEN, X. 2000. Improving the Java memory model using CRF. In Object- Oriented Programming, Systems, Languages and Applications (OOPSLA) (Minneapolis, Oct.), pp. 1-12. ACM, New York.]]
[115]
MALKHI,D.AND REITER, M. K. 2000. Secure execution of Java applets using a remote playground. IEEE Transactions on Software Engineering 26, 12 (Dec.), 1197-1209.]]
[116]
MANSON,J.AND PUGH, W. 2001. Semantics of multithreaded Java. Tech. Rep. (Jan.), Dept. of Computer Science, University of Maryland.]]
[117]
MCGRAW,G.AND FELTEN, E. W. 1999. Securing Java: Getting Down to Business with Mobile Code (second ed.). John Wiley, Chichester, UK.]]
[118]
MCMILLAN, K. L. 1993. Symbolic Model Checking. Kluwer Academic, Boston.]]
[119]
MONTGOMERY,M.AND KRISHNA, K. 1999. Secure object sharing in Java card. In USENIX Workshop on Smartcard Technology (Smartcard '99) (Chicago), pp. 119-127. USENIX Assoc., Berkeley, Calif.]]
[120]
MOORE, J. S. 1999. Proving theorems about Javalike byte code. In E.-R. Olderog and B. Steffen, Eds., Correct System Design-Recent Insights and Advances, LNCS 1710, pp. 139-162. Springer-Verlag, Berlin.]]
[121]
MOREIRA, J. E., MIDKIFF,S.P.,AND GUPTA, M. 2000. From flop to megaflops: Java for technical computing. ACM Transactions on Programming Languages and Systems 22, 2 (Mar.), 265-295.]]
[122]
MORRISET, G., WALKER, D., CRARY, K., AND GLEW, N. 1999. From system F to typed assembly language. ACM Transactions on Programming Languages and Systems 21, 3 (May), 528-569.]]
[123]
MORRISETT, G., FELLEISEN, M., AND HARPER, R. 1995. Abstract models of memory management. Tech. Rep. CMU-CS-95-110 (Jan.), School of Comp. Sci., Carnegie Mellon Univ.]]
[124]
MORRISETT, G., TARDITI, D., CHENG, P., STONE,C., HARPER, R., AND LEE, P. 1996. The TIL/ ML compiler: Performance and safety through types. In First Annual Workshop on Compiler Support for System Software (Tucson. Ariz., Feb.).]]
[125]
MOTRE, S. 2000. Formal model and implementaion of the Java card dynamic security policy. In Approches Formelles dans l'Assistance au Developpement de Logiciels-AFADL'2000 (Grenoble, France, Jan.).]]
[126]
MYERS, A., BANK,J.,AND LISKOV, B. 1997. Parametrized types for Java. In 24th Principles of Programming Languages (POPL) (Paris, France, Jan.), pp. 132-145. ACM Press, New York.]]
[127]
NCSC. l985. Trusted Computer System Evaluation Criteria (Orange Book). U. S. Dept. of Defense, National Computer Security Center.]]
[128]
NECULA, G. C. 1997. Proof-carrying code. In 24th Principles of Programming Languages (POPL) (Paris, France, Jan.), pp. 106-119. ACM, New York.]]
[129]
NECULA,G.C.AND LEE, P. 1998a. The design and implementation of a certifying compiler. In Programming Language Design and Implementation (PLDI) (Montreal, Canada, June), pp. 333- 344. ACM, New York.]]
[130]
NECULA,G.C.AND LEE, P. 1998b. Efficient representation and validation of proofs. In 13th Logic in Computer Science (LICS) (Indianapo-lis, Indiana, June), pp. 93-104. IEEE Computer Society Press.]]
[131]
NECULA,G.C.AND LEE, P. 1998c. Safe, untrusted agents using proof-carrying code. In G. Vigna, Ed., Mobile Agents and Security, LNCS 1419, pp. 61-91. Springer-Verlag, Berlin.]]
[132]
NECULA,G.C.AND RAHUL, S. P. 2001. Oracle-based checking of untrusted software. In 28th Principles of Programming Languages (POPL) (London, UK, Jan.), pp. 142-154. ACM, New York.]]
[133]
NIELSON,H.R.AND NIELSON, F. 1991. Semantics with Applications: A Formal Introduction. John Wiley, Chichester, UK.]]
[134]
NILSEN, K. 1998. picoPERC: a small-footprint dialect of Java. Dr. Dobb's Journal 23, 3 (Mar.), 50-54.]]
[135]
NIPKOW,T.AND VON OHEIMB, D. 1998. Java light is Type-Safe-Definitely. In 25th Principles of Programming Languages (POPL) (San Diego, Calif., Jan.), pp. 161-170. ACM, New York.]]
[136]
NIPKOW,T.,VON OHEIMB,D.,AND PUSCH, C. 2000. Java: Embedding a programming language in a theorem prover. In F. L. Bauer and R. Steinbruggen, Eds., Foundations of Secure Computation. Proc. Int. Summer School Marktoberdorf, pp. 117-144. IOS Press, Amsterdam.]]
[137]
NIST. 1999. Common Criteria for Information Technology Security Evaluation. U. S. Dept. of Commerce, National Bureau of Standards and Technology.]]
[138]
OCALLAHAN, R. 1999. A simple, comprehensive type system for Java bytecode subroutines. In 26th Principles of Programming Languages (POPL) (San Antonio, Texas, Jan.), pp. 70-78. ACM, New York.]]
[139]
ODERSKY,M.AND WADLER, P. 1997. Pizza into Java: Translating theory into practice. In 24th Principles of Programming Languages (POPL) (Paris, France, Jan.), pp. 146-159. ACM, New York.]]
[140]
OESTREICHER, M. 1999. Transactions in Java card. In 15th Annual Computer Security Applications Conference (ACSAC) (Phoenix, Ariz., Dec.), pp. 291-298. IEEE Comput. Soc., Los Alamitos, Calif.]]
[141]
OESTREICHER,M.AND KRISHNA, K. 1999. Object lifetimes in Java card. In USENIX Workshop on Smartcard Technology (Smartcard '99) (Chicago), pp. 129-37. USENIX Assoc, Berkeley, Calif.]]
[142]
OWRE, S., RUSHBY, J., SHANKAR,N.,AND VON HENKE, F. 1995. Formal verification for faulttolerant architectures: Prolegomena to the design of PVS. IEEE Transactions on Software Engineering 21, 2 (Feb.), 107-125.]]
[143]
PAULSON, L. C. 1994. Isabelle: A Generic Theorem Prover, LNCS 828. Springer-Verlag, New York.]]
[144]
POETZSCH-HEFFTER,A.AND MULLER, P. 1999. A Programming logic for sequential Java. In 8th European Symp. on Programming (ESOP), LNCS 1576, pp. 162-176. Springer-Verlag, Berlin.]]
[145]
POLL, E., VAN DEN BERG,J.,AND JACOBS,B. 2000. Specification of the JavaCard API in JML. In J. Domingo-Ferrer and A. Watson, Eds., Fourth Smart Card Research and Advanced Application Conference (CARDIS) (Bristol, UK, Sept), pp. 135-154. Kluwer Academic Boston/Dordrecht/London.]]
[146]
POLL, E., VAN DEN BERG,J.,AND JACOBS, B. 2001. Formal specification of the JavaCard API in JML: the APDU class. Computer Networks 36, 4(July), 407-421.]]
[147]
POSEGGA,J.AND VOGT, H. 1998. Byte code verification for Java smart cards based on model checking. In J.-J. Quisquater, Y. Deswarte, C. Meadows, and D. Gollmann, Eds., European Symp. on Research in Computer Security (ESORICS), LNCS1485 (Louvain-la-Neuve, Belgium, Sept.), pp. 175-190. Springer- Verlag, Berlin.]]
[148]
PUGH, W. 2000. The Java memory model is fatally flawed. Concurrency: Practice and Experience 12, 1, 1-11.]]
[149]
PUSCH, C. 1998. Formalizing the Java virtual machine in Isabelle/HOL. Tech. Rep. TUM-I9816, Institut fur Informatik, Technische Univ. Munchen.]]
[150]
PUSCH, C. 1999. Proving the soundness of a Java bytecode verifier specification in Isabelle/HOL. In W. Rance-Cleaveland, Ed., 5th Tools and Algorithms for Construction and Analysis of Systems (TACAS), LNCS 1579 (Amsterdam, The Netherlands), pp. 89-103. Springer-Verlag, Berlin.]]
[151]
QIAN, Z. 1999a. A formal specification of Java(tm) virtual machine instructions objects, methods and subroutines. In J. Alves-Foss, Ed., Formal Syntax and Semantics of Java, LNCS 1523,pp. 271-312. Springer-Verlag, Berlin.]]
[152]
QIAN, Z. 1999b. Standard Fixpoint Iteration for Java Bytecode Verification. Kestrel Institute, Palo Alto, Calif.]]
[153]
QIAN, Z., GOLDBERG, A., AND COGLIO, A. 2000. A formal specification of JavaTM class loading. In Object-Oriented Programming, Systems, Languages and Applications (OOPSLA) (Minneapolis, Minnesota, Oct.), pp. 325-336. ACM, New York.]]
[154]
REMY, D. 1989. Records and variants as a natural extension of ML. In 16th Principles of Programming Languages (POPL) (Austin, Texas, Jan.), pp. 77-88. ACM, New York.]]
[155]
REQUET, A. 2000. A B model for ensuring soundness of the Java card virtual machine. In S. Gnesi, I. Schieferdecker, and A. Rennoch, Eds., 5th International ERCIM Workshop on Formal Methods for Industrial Critical Systems (FMICS) (Berlin, Mar.), pp. 29-26. GMD.]]
[156]
ROSE, E. 1998. Towards secure bytecode verification on a Java card. Master's Thesis, DIKU, Univ. of Copenhagen.]]
[157]
ROSE,E.AND ROSE, K. H. 1998. Lightweight bytecode verification. In OOPSLA '98 Work-shop on Formal Underpinnings of Java (FUJ) (Vancouver, Canada, Nov. 1998), pp. Paper 7. Dept. of Computing, Imperial College London.]]
[158]
SARASWAT, V. 1997. Java is not type-safe. Tech. Rep. (Aug.), AT&T Research, Florham Park, New Jersey.]]
[159]
SERRANO, M. 1995. Control flow analysis: A functional languages compilation paradigm. In 10th Symp. on Applied Computing (Nashville, Tenn., Feb.), pp. 118-122. ACM, New York.]]
[160]
SHIN,I.AND MITCHELL, J. C. 1998. Java bytecode modification and applet security. Tech. Rep., Comp. Sci. Dept., Stanford Univ.]]
[161]
SKALKA,C.AND SMITH, S. 2000. Static enforcement of security with types. In 5th SIGPLAN on Functional Programming (ICFP) (Montreal, Canada, Sept.), pp. 34-45. ACM, New York.]]
[162]
SREEDHAR,V.C.,BURKE, M., AND CHOI, J.-D. 2000. A framework for interprocedural analysis and optimization in the presence of dynamic class loading. In Programming Language Design and Implementation (PLDI) (Vancouver, Canada, June), pp. 176-207. ACM, New York.]]
[163]
SRINIVAS,Y.V.AND JULLIG, R. 1995. Specware: Formal support for composing software. In Conf. Mathematics of Program Construction (MPCS), LNCS 947 (Kloster Irsee, Germany, July), pp. 399-422. Springer-Verlag, Berlin.]]
[164]
ST~RK, R. 1998. Foundations of Java-Lecture Notes for Computer Science Students. University of Fribourg, Switzerland.]]
[165]
ST~RK, R., SCHMID,J.,AND B~RGER, E. 2001. Java and the Java Virtual Machine: Definition, Verification, Validation. Springer-Verlag, Berlin.]]
[166]
STATA,R.AND ABADI, M. 1998. A type system for Java bytecode subroutines. In 25th Principles of Programming Languages (POPL) (San Diego, Calif. Jan.), pp. 149-160. ACM, New York.]]
[167]
STATA,R.AND ABADI, M. 1999. A type system for Java bytecode subroutines. ACM Transactions on Programming Languages and Systems 21,1, 90-37.]]
[168]
STEPHENSON, K. 1998. Towards an algebraic specification of the Java virtual machine. In B. Moller and J. V. Tucker, Eds., Prospects for Hardware Foundations. ESPRIT Working Group 8533. NADA-New Hardware Design Methods Survey Chapters, LNCS 1546, pp. 236-277. Springer- Verlag, Berlin.]]
[169]
STILES, G. S. 1998. Safe and verifiable design of multithreaded Java programs with CSP and FDR. In OOPSLA '98 Workshop on Formal Underpinnings of Java (FUJ) (Vancouver, Canada, Nov.), pp. Paper 12. Dept. of Computing, Imperial College London.]]
[170]
SUN. 1999. The K virtual machine (KVM)A white paper. Sun Microsystems Inc., Mountain View, Calif.]]
[171]
SUN. 2000. Connected Limited Devicde Specification Version 1.0, Java Platform 2 Micro Edition. Sun Microsystems Inc., Palo Alto, Calif.]]
[172]
SYME, D. 1999. Proving Java type soundness. In J. Alves-Foss, Ed., Formal Syntax and Semantics of Java, LNCS 1523, pp. 83-118. Springer- Verlag, Berlin.]]
[173]
TAIVALSAARI, A., BUSH,B.,AND SIMON, D. 1999. The spotless system: Implementing a JavaTMSystem for the Palm connected organizer. Tech. Rep. TR-99-73 (Feb.), Sun Microsystems, Inc., Palo Alto, Calif.]]
[174]
TALPIN, J.-P. AND JOUVELOT, P. 1992. Polymorphic type, region and effect inference. J. Functional Programming 2, 3 (July), 245-271.]]
[175]
THORN, T. 1997. Programming languages for mobile code. ACM Computing Surveys 29, 3 (Sept.), 213-239.]]
[176]
TOZAWA,A.AND HAGIYA, M. 1999a. Careful analysis of type spoofing. In C. H. Cap, Ed., JIT '99 Java- Informations- Tage, pp. 290-296. Informatik aktuell, Springer-Verlag.]]
[177]
TOZAWA,A.AND HAGIYA, M. 1999b. Formalization and Analysis of Class Loading in Java. Graduate School of Science, University of Tokyo.]]
[178]
VAN DEN BERG,J.AND JACOBS, B. 2001. The LOOP compiler for Java and JML. In T. Margaria and W. Y., Eds., 7th Tools and Algorithms for the Construction and Analysis of Systems (TACAS), LNCS 2031 (Genova, Italy, Apr.), pp. 299-312. Springer-Verlag, Berlin.]]
[179]
VAN DEN BERG, J., HUISMAN, M., JACOBS,B.,AND POLL,E. 2000a. A type-theoretic memory model for verification of sequential Java programs. In D. Bert and C. Choppy, Eds., Recent Trends in Algebraic Development Techniques, LNCS 1827, pp. 1-21. Springer-Verlag, Berlin.]]
[180]
VAN DEN BERG, J., JACOBS,B.,AND POLL,E. 2000b. Formal specification and verification of JavaCard's application identifier class. I. Attali and T. Jensen, Eds., 1st Java on Smart Cards: Programming and Security (e-smart) LNCS 2041 (Cannes, France, Sept.), pp. 137-150. Springer-Verlag, Berlin.]]
[181]
VOLPANO,D.AND SMITH, G. 1998. Language issues in mobile program security. In G. Vigna, Ed., Mobile Agents and Security, LNCS 1419, pp. 25- 43. Springer-Verlag, Berlin.]]
[182]
VON OHEIMB, D. 2000. Axiomatic semantics for Java light . In S. Drossopoulkou, S. Eisenbach, B. Jacobs, G. T. Leavens, P. Muller, and A. Poetzsch-Heffter, Eds., ECOOP'2000 Work-shop on Formal Techniques for Java Programs (Sophia Antipolis, France, June), pp. 88-95. Fernuniversitat Hagen.]]
[183]
VON OHEIMB,D.AND NIPKOW, T. 1999. Machinechecking the Java specification: Proving type safety. In J. Alves-Foss, Ed., Formal Syntax and Semantics of Java, LNCS 1523, pp. 119-156. Springer-Verlag, Berlin.]]
[184]
WADLER, P. L. 1990. Comprehending monads. In Lisp and Functional Programming (Nice, France, July), pp. 61-78. ACM, New York.]]
[185]
WALLACE, C. 1997. The semantics of the Java programming language: Preliminary version. Tech. Rep. CSE-TR-355-97, University of Michigan EECS Department.]]
[186]
WALLACH, D. S. 1999. A new approach to mobile code security. PhD Thesis, Princeton University.]]
[187]
WALLACH,D.S.AND FELTEN, E. W. 1998. Understanding Java stack inspection. In Symp. on Security and Privacy (Oakland, Calif., May), pp. 52-63. IEEE Computer Society Press, Los Alamitos, Calif.]]
[188]
WAND,M.AND GUTTMAN, J. D. Eds. 1995. VLISP: A Verified Implementation of Scheme. Kluwer, Boston.]]
[189]
WEBB, W. 1999. Embedded Java: An uncertain future. Electrical Design News 44, 10 (May), 89-96.]]
[190]
WELCH, P. H. 1997. Java threads in light of Occam/ CSP. In A. Bakkers, Ed., Parallel Programming and Java, WoTUG 20 (Twente, Netherlands, Apr.), pp. 282-309. Concurrent Systems Engineering Series, IOS Press, Amsterdam.]]
[191]
WHALEY,J. AND RINARD, M. 1999. Compositional pointer and escape analysis for Java programs. In Object-Oriented Programming, Systems, Languages and Applications (OOPSLA) (Denver, Colorado, Dec.), pp. 187-206. ACM Press, New York.]]
[192]
WRIGHT, A. K. 1994. Practical soft typing. PhD Thesis, Rice University, Houston, Texas.]]
[193]
YELLAND, P. 1999. A compositional account of the Java virtual machine. In 26th Principles of Programming Languages (POPL) (San Antonio, Texas, Jan.), pp. 57-69. ACM, New York.]]

Cited By

View all
  • (2023)Evaluación bibliométrica acerca de “Subprocesos con hilos de JAVA”Revista Científica de Informática ENCRIPTAR10.56124/encriptar.v6i11.00036:11(35-52)Online publication date: 31-Dec-2023
  • (2023)A Comprehensive Study of Bugs in Embedded WebAssembly Virtual Machines2023 3rd International Conference on Computer Science, Electronic Information Engineering and Intelligent Control Technology (CEI)10.1109/CEI60616.2023.10528174(901-907)Online publication date: 15-Dec-2023
  • (2019)The What, How, and When of Formal MethodsAdvanced Methodologies and Technologies in Network Architecture, Mobile Computing, and Data Analytics10.4018/978-1-5225-7598-6.ch118(1600-1614)Online publication date: 2019
  • Show More Cited By

Comments

Information & Contributors

Information

Published In

cover image ACM Computing Surveys
ACM Computing Surveys  Volume 33, Issue 4
December 2001
132 pages
ISSN:0360-0300
EISSN:1557-7341
DOI:10.1145/503112
Issue’s Table of Contents
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 01 December 2001
Published in CSUR Volume 33, Issue 4

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. Common criteria
  2. programming

Qualifiers

  • Article

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)30
  • Downloads (Last 6 weeks)5
Reflects downloads up to 15 Oct 2024

Other Metrics

Citations

Cited By

View all
  • (2023)Evaluación bibliométrica acerca de “Subprocesos con hilos de JAVA”Revista Científica de Informática ENCRIPTAR10.56124/encriptar.v6i11.00036:11(35-52)Online publication date: 31-Dec-2023
  • (2023)A Comprehensive Study of Bugs in Embedded WebAssembly Virtual Machines2023 3rd International Conference on Computer Science, Electronic Information Engineering and Intelligent Control Technology (CEI)10.1109/CEI60616.2023.10528174(901-907)Online publication date: 15-Dec-2023
  • (2019)The What, How, and When of Formal MethodsAdvanced Methodologies and Technologies in Network Architecture, Mobile Computing, and Data Analytics10.4018/978-1-5225-7598-6.ch118(1600-1614)Online publication date: 2019
  • (2018)The What, How, and When of Formal MethodsEncyclopedia of Information Science and Technology, Fourth Edition10.4018/978-1-5225-2255-3.ch662(7609-7621)Online publication date: 2018
  • (2018)Mechanising a Type-Safe Model of Multithreaded Java with a Verified CompilerJournal of Automated Reasoning10.1007/s10817-018-9452-x61:1-4(243-332)Online publication date: 1-Jun-2018
  • (2018)A Java Bytecode FormalisationVerified Software. Theories, Tools, and Experiments10.1007/978-3-030-03592-1_8(135-154)Online publication date: 18-Jul-2018
  • (2014)Formal Methods OverviewEncyclopedia of Information Science and Technology, Third Edition10.4018/978-1-4666-5888-2.ch704(7152-7161)Online publication date: 31-Jul-2014
  • (2014)An operational semantics for object-oriented concepts based on the class hierarchyFormal Aspects of Computing10.1007/s00165-012-0259-y26:3(491-535)Online publication date: 1-May-2014
  • (2013)A security vulnerability of Java Card on array access in financial system2013 22nd Wireless and Optical Communication Conference10.1109/WOCC.2013.6676466(707-710)Online publication date: May-2013
  • (2012)Mobile AgentsComputational Complexity10.1007/978-1-4614-1800-9_122(1880-1893)Online publication date: 2012
  • Show More Cited By

View Options

Get Access

Login options

Full Access

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media