Michael Franz

Orcid: 0000-0001-5911-2275

Affiliations:
  • University of California, Irvine, USA


According to our database1, Michael Franz authored at least 161 papers between 1991 and 2024.

Collaborative distances:
  • Dijkstra number2 of four.
  • Erdős number3 of four.

Awards

ACM Fellow

ACM Fellow 2015, "For contributions to just-in-time compilation and optimization and to compiler techniques for computer security.".

IEEE Fellow

IEEE Fellow 2016, "For contributions to just-in-time compilation and to computer security through compiler-generated software diversity".

Timeline

Legend:

Book 
In proceedings 
Article 
PhD thesis 
Dataset
Other 

Links

Online presence:

On csauthors.net:

Bibliography

2024
The Astonishing Evolution of Probabilistic Memory Safety: From Basic Heap-Data Attack Detection Toward Fully Survivable Multivariant Execution.
IEEE Secur. Priv., 2024

Joining Forces for Pathology Diagnostics with AI Assistance: The EMPAIA Initiative.
CoRR, 2024

Polynima: Practical Hybrid Recompilation for Multithreaded Binaries.
Proceedings of the Nineteenth European Conference on Computer Systems, 2024

What You Trace is What You Get: Dynamic Stack-Layout Recovery for Binary Recompilation.
Proceedings of the 29th ACM International Conference on Architectural Support for Programming Languages and Operating Systems, 2024

2023
Method for Using IMU-Based Experimental Motion Data in BVH Format for Musculoskeletal Simulations via OpenSim.
Sensors, 2023

The vendor-agnostic EMPAIA platform for integrating AI applications into digital pathology infrastructures.
Future Gener. Comput. Syst., 2023

A Highly Scalable, Hybrid, Cross-Platform Timing Analysis Framework Providing Accurate Differential Throughput Estimation via Instruction-Level Tracing.
Proceedings of the 31st ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software Engineering, 2023

2022
Anonymization of Whole Slide Images in Histopathology for Research and Education.
CoRR, 2022

DFI: An Interprocedural Value-Flow Analysis Framework that Scales to Large Codebases.
CoRR, 2022

MCAD: Beyond Basic-Block Throughput Estimation Through Differential, Instruction-Level Tracing.
CoRR, 2022

Improving cross-platform binary analysis using representation learning via graph alignment.
Proceedings of the ISSTA '22: 31st ACM SIGSOFT International Symposium on Software Testing and Analysis, Virtual Event, South Korea, July 18, 2022

PKRU-safe: automatically locking down the heap between safe and unsafe languages.
Proceedings of the EuroSys '22: Seventeenth European Conference on Computer Systems, Rennes, France, April 5, 2022

The Ticket Price Matters in Sharding Blockchain.
Proceedings of the Data Privacy Management, Cryptocurrencies and Blockchain Technology, 2022

The EMPAIA Platform: Vendor-neutral integration of AI applications into digital pathology infrastructures.
Proceedings of the 22nd IEEE International Symposium on Cluster, 2022

2021
KALD: Detecting Direct Pointer Disclosure Vulnerabilities.
IEEE Trans. Dependable Secur. Comput., 2021

On the Usability of Authenticity Checks for Hardware Security Tokens.
Proceedings of the 30th USENIX Security Symposium, 2021

dMVX: Secure and Efficient Multi-Variant Execution in a Distributed Setting.
Proceedings of the EuroSec '21: Proceedings of the 14th European Workshop on Systems Security, 2021

StackBERT: Machine Learning Assisted Static Stack Frame Size Recovery on Stripped and Optimized Binaries.
Proceedings of the AISec@CCS 2021: Proceedings of the 14th ACM Workshop on Artificial Intelligence and Security, 2021

Better Keep Cash in Your Boots - Hardware Wallets are the New Single Point of Failure.
Proceedings of the DeFi '21: Proceedings of the 2021 ACM CCS Workshop on Decentralized Finance and Security, 2021

2020
Agamotto: Accelerating Kernel Driver Fuzzing with Lightweight Virtual Machine Checkpoints.
Proceedings of the 29th USENIX Security Symposium, 2020

V0LTpwn: Attacking x86 Processor Integrity from Software.
Proceedings of the 29th USENIX Security Symposium, 2020

NoJITsu: Locking Down JavaScript Engines.
Proceedings of the 27th Annual Network and Distributed System Security Symposium, 2020

BinRec: dynamic binary lifting and recompilation.
Proceedings of the EuroSys '20: Fifteenth EuroSys Conference 2020, 2020

Distributed Heterogeneous N-Variant Execution.
Proceedings of the Detection of Intrusions and Malware, and Vulnerability Assessment, 2020

CoDaRR: Continuous Data Space Randomization against Data-Only Attacks.
Proceedings of the ASIA CCS '20: The 15th ACM Asia Conference on Computer and Communications Security, 2020

Adoption Challenges of Code Randomization.
Proceedings of the 7th ACM Workshop on Moving Target Defense, 2020

2019
DMON: A Distributed Heterogeneous N-Variant System.
CoRR, 2019

SoK: Sanitizing for Security.
Proceedings of the 2019 IEEE Symposium on Security and Privacy, 2019

PeriScope: An Effective Probing and Fuzzing Framework for the Hardware-OS Boundary.
Proceedings of the 26th Annual Network and Distributed System Security Symposium, 2019

2018
Making Multivariant Programming Practical and Inexpensive.
IEEE Secur. Priv., 2018

PartiSan: Fast and Flexible Sanitization via Run-Time Partitioning.
Proceedings of the Research in Attacks, Intrusions, and Defenses, 2018

Hardware Assisted Randomization of Data.
Proceedings of the Research in Attacks, Intrusions, and Defenses, 2018

BinRec: Attack Surface Reduction Through Dynamic Binary Recovery.
Proceedings of the 2018 Workshop on Forming an Ecosystem Around Software Transformation, 2018

Accelerating Dynamically-Typed Languages on Heterogeneous Platforms Using Guards Optimization.
Proceedings of the 32nd European Conference on Object-Oriented Programming, 2018

Bytecode Corruption Attacks Are Real - And How to Defend Against Them.
Proceedings of the Detection of Intrusions and Malware, and Vulnerability Assessment, 2018

Diversity and information leaks.
Proceedings of the Continuing Arms Race: Code-Reuse Attacks and Defenses, 2018

2017
Large-Scale Automated Software Diversity - Program Evolution Redux.
IEEE Trans. Dependable Secur. Comput., 2017

Control-Flow Integrity: Precision, Security, and Performance.
ACM Comput. Surv., 2017

Venerable Variadic Vulnerabilities Vanquished.
Proceedings of the 26th USENIX Security Symposium, 2017

Address Oblivious Code Reuse: On the Effectiveness of Leakage Resilient Diversity.
Proceedings of the 24th Annual Network and Distributed System Security Symposium, 2017

Taming Parallelism in a Multi-Variant Execution Environment.
Proceedings of the Twelfth European Conference on Computer Systems, 2017

2016
Thinking Inside the Box: Compartmentalized Garbage Collection.
ACM Trans. Program. Lang. Syst., 2016

Coherent campaigns? Campaign broadcast and social messaging.
Online Inf. Rev., 2016

Secure and Efficient Application Monitoring and Replication.
Proceedings of the 2016 USENIX Annual Technical Conference, 2016

Subversive-C: Abusing and Protecting Dynamic Message Dispatch.
Proceedings of the 2016 USENIX Annual Technical Conference, 2016

Leakage-Resilient Layout Randomization for Mobile Devices.
Proceedings of the 23rd Annual Network and Distributed System Security Symposium, 2016

2015
Automated Software Diversity
Synthesis Lectures on Information Security, Privacy, & Trust, Morgan & Claypool Publishers, ISBN: 978-3-031-02346-0, 2015

OpenLabNotes - An Electronic Laboratory Notebook Extension for OpenLabFramework.
J. Integr. Bioinform., 2015

Automatic Software Diversity.
IEEE Secur. Priv., 2015

repAIrC: A Tool for Ensuring Data Consistency by Means of Active Integrity Constraints.
CoRR, 2015

Readactor: Practical Code Randomization Resilient to Memory Disclosure.
Proceedings of the 2015 IEEE Symposium on Security and Privacy, 2015

An Efficient and Generic Event-based Profiler Framework for Dynamic Languages.
Proceedings of the Principles and Practices of Programming on The Java Platform, 2015

Opaque Control-Flow Integrity.
Proceedings of the 22nd Annual Network and Distributed System Security Symposium, 2015

Thwarting Cache Side-Channel Attacks Through Dynamic Software Diversity.
Proceedings of the 22nd Annual Network and Distributed System Security Symposium, 2015

Safe and efficient hybrid memory management for Java.
Proceedings of the 2015 ACM SIGPLAN International Symposium on Memory Management, 2015

Active Integrity Constraints: From Theory to Implementation.
Proceedings of the Knowledge Discovery, Knowledge Engineering and Knowledge Management, 2015

repAIrC: A Tool for Ensuring Data Consistency.
Proceedings of the KMIS 2015, 2015

From Fine Grained Code Diversity to JIT-ROP to Execute-Only Memory: The Cat and Mouse Game Between Attackers and Defenders Continues.
Proceedings of the Second ACM Workshop on Moving Target Defense, 2015

It's a TRaP: Table Randomization and Protection against Function-Reuse Attacks.
Proceedings of the 22nd ACM SIGSAC Conference on Computer and Communications Security, 2015

Losing Control: On the Effectiveness of Control-Flow Integrity under Stack Attacks.
Proceedings of the 22nd ACM SIGSAC Conference on Computer and Communications Security, 2015

2014
Efficient hosted interpreters on the JVM.
ACM Trans. Archit. Code Optim., 2014

Security through Diversity: Are We There Yet?
IEEE Secur. Priv., 2014

Similarity-based matching meets Malware Diversity.
CoRR, 2014

SoK: Automated Software Diversity.
Proceedings of the 2014 IEEE Symposium on Security and Privacy, 2014

Comparing points-to static analysis with runtime recorded profiling data.
Proceedings of the 2014 International Conference on Principles and Practices of Programming on the Java Platform Virtual Machines, 2014

Accelerating iterators in optimizing AST interpreters.
Proceedings of the 2014 ACM International Conference on Object Oriented Programming Systems Languages & Applications, 2014

Software Profiling Options and Their Effects on Security Based Diversification.
Proceedings of the First ACM Workshop on Moving Target Defense, 2014

2013
Diversifying the Software Stack Using Randomized NOP Insertion.
Proceedings of the Moving Target Defense II, 2013

Information flow tracking meets just-in-time compilation.
ACM Trans. Archit. Code Optim., 2013

Towards Precise and Efficient Information Flow Control in Web Browsers.
Proceedings of the Trust and Trustworthy Computing - 6th International Conference, 2013

First-Class Labels: Using Information Flow to Debug Security Holes.
Proceedings of the Trust and Trustworthy Computing - 6th International Conference, 2013

Efficient interpreter optimizations for the JVM.
Proceedings of the 2013 International Conference on Principles and Practices of Programming on the Java Platform: Virtual Machines, 2013

Booby trapping software.
Proceedings of the New Security Paradigms Workshop, 2013

CrowdFlow: Efficient Information Flow Security.
Proceedings of the Information Security, 16th International Conference, 2013

Profile-guided automated software diversity.
Proceedings of the 2013 IEEE/ACM International Symposium on Code Generation and Optimization, 2013

Librando: transparent code randomization for just-in-time compilers.
Proceedings of the 2013 ACM SIGSAC Conference on Computer and Communications Security, 2013

2012
Microgadgets: Size Does Matter in Turing-Complete Return-Oriented Programming.
Proceedings of the 6th USENIX Workshop on Offensive Technologies, 2012

Fine-grained modularity and reuse of virtual machine components.
Proceedings of the 11th International Conference on Aspect-oriented Software Development, 2012

2011
Compiler-Generated Software Diversity.
Proceedings of the Moving Target Defense, 2011

Runtime Defense against Code Injection Attacks Using Replicated Execution.
IEEE Trans. Dependable Secur. Comput., 2011

"Slimming" a Java virtual machine by way of cold code removal and optimistic partial program loading.
Sci. Comput. Program., 2011

ACM SIGPLAN international workshop on programming language and systems technologies for internet clients: (PLASTIC 2011).
Proceedings of the Companion to the 26th Annual ACM SIGPLAN Conference on Object-Oriented Programming, 2011

Compartmental memory management in a modern web browser.
Proceedings of the 10th International Symposium on Memory Management, 2011

The impact of optional type information on jit compilation of dynamically typed languages.
Proceedings of the 7th Symposium on Dynamic Languages, 2011

2010
Trace-based compilation in execution environments without interpreters.
Proceedings of the 8th International Conference on Principles and Practice of Programming in Java, 2010

E unibus pluram: massive-scale software diversity as a defense mechanism.
Proceedings of the 2010 Workshop on New Security Paradigms, 2010

Decentralized information flow control on a bare-metal JVM.
Proceedings of the 6th Cyber Security and Information Intelligence Research Workshop, 2010

Multi-variant program execution for vulnerability detection and analysis.
Proceedings of the 6th Cyber Security and Information Intelligence Research Workshop, 2010

Linear scan register allocation on SSA form.
Proceedings of the CGO 2010, 2010

2009
Mostly static program partitioning of binary executables.
ACM Trans. Program. Lang. Syst., 2009

The effectiveness of producer-side machine-independent optimizations for mobile code.
Softw. Pract. Exp., 2009

Tracing for web 3.0: trace compilation for the next generation web applications.
Proceedings of the 5th International Conference on Virtual Execution Environments, 2009

Stream-Based Dynamic Compilation for Object-Oriented Languages.
Proceedings of the Objects, Components, Models and Patterns, 47th International Conference, 2009

Phase detection using trace compilation.
Proceedings of the 7th International Conference on Principles and Practice of Programming in Java, 2009

SlimVM: a small footprint Java virtual machine for connected embedded systems.
Proceedings of the 7th International Conference on Principles and Practice of Programming in Java, 2009

Trace-based just-in-time type specialization for dynamic languages.
Proceedings of the 2009 ACM SIGPLAN Conference on Programming Language Design and Implementation, 2009

Orchestra: intrusion detection using parallel execution and monitoring of program variants in user-space.
Proceedings of the 2009 EuroSys Conference, Nuremberg, Germany, April 1-3, 2009, 2009

Optimization of dynamic languages using hierarchical layering of virtual machines.
Proceedings of the 5th Symposium on Dynamic Languages, 2009

2008
Java bytecode verification via static single assignment form.
ACM Trans. Program. Lang. Syst., 2008

Dynamic Parallelization and Vectorization of Binary Executables on Hierarchical Platforms.
J. Instr. Level Parallelism, 2008

Eliminating Trust From Application Programs By Way Of Software Architecture.
Proceedings of the Software Engineering 2008. Fachtagung des GI-Fachbereichs Softwaretechnik, 2008

Portable execution of legacy binaries on the Java virtual machine.
Proceedings of the 6th International Symposium on Principles and Practice of Programming in Java, 2008

Slim VM: optimistic partial program loading for connected embedded Java virtual machines.
Proceedings of the 6th International Symposium on Principles and Practice of Programming in Java, 2008

Automatic Partitioning of Object-Oriented Programs for Resource-Constrained Mobile Devices with Multiple Distribution Objectives.
Proceedings of the 14th International Conference on Parallel and Distributed Systems, 2008

08441 Final Report - Emerging Uses and Paradigms for Dynamic Binary Translation.
Proceedings of the Emerging Uses and Paradigms for Dynamic Binary Translation, 26.10., 2008

Eliminating the insider threat in software development by combining parallelism, randomization and checkpointing.
Proceedings of the 4th annual workshop on Cyber security and information intelligence research, 2008

Multi-variant Program Execution: Using Multi-core Systems to Defuse Buffer-Overflow Vulnerabilities.
Proceedings of the Second International Conference on Complex, 2008

2007
SSA-based mobile code: Implementation and empirical evaluation.
ACM Trans. Archit. Code Optim., 2007

A new way of estimating compute-boundedness and its application to dynamic voltage scaling.
Int. J. Embed. Syst., 2007

Containing the Ultimate Trojan Horse.
IEEE Secur. Priv., 2007

Automatic generation of machine emulators: Efficient synthesis of robust virtual machines for legacy software migration.
Proceedings of the Software Engineering 2007, 2007

Implementing fast JVM interpreters using Java itself.
Proceedings of the 5th International Symposium on Principles and Practice of Programming in Java, 2007

Fine-Grained Information Flow Analysis and Enforcement in a Java Virtual Machine.
Proceedings of the 23rd Annual Computer Security Applications Conference (ACSAC 2007), 2007

2006
HotpathVM: an effective JIT compiler for resource-constrained devices.
Proceedings of the 2nd International Conference on Virtual Execution Environments, 2006

Dynamic parallelization and mapping of binary executables on hierarchical platforms.
Proceedings of the Third Conference on Computing Frontiers, 2006

OSEK/VDX API for Java.
Proceedings of the 3rd Workshop on Programming Languages and Operating Systems: Linguistic Support for Modern Operating Systems, 2006

2005
Supporting software composition at the programming language level.
Sci. Comput. Program., 2005

A portable virtual machine target for proof-carrying code.
Sci. Comput. Program., 2005

Structural Encoding of Static Single Assignment Form.
Proceedings of the Fourth International Workshop on Compiler Optimization meets Compiler Verification, 2005

Integrated Java Bytecode Verification.
Proceedings of the First International Workshop on Abstract Interpretation of Object-oriented Languages, 2005

Quantifying the Benefits of SSA-Based Mobile Code.
Proceedings of the Fourth International Workshop on Compiler Optimization meets Compiler Verification, 2005

Power reduction techniques for microprocessor systems.
ACM Comput. Surv., 2005

Average case vs. worst case: margins of safety in system design.
Proceedings of the New Security Paradigms Workshop 2005, 2005

A Multilevel Introspective Dynamic Optimization System For Holistic Power-Aware Computing.
Proceedings of the Power-aware Computing Systems, 3.-8. April 2005, 2005

Dynamic Taint Propagation for Java.
Proceedings of the 21st Annual Computer Security Applications Conference (ACSAC 2005), 2005

2004
Symmetric behavior-based trust: a new paradigm for internet computing.
Proceedings of the New Security Paradigms Workshop 2004, 2004

Awarded Best Paper! Semantic Remote Attestation - Virtual Machine Directed Approach to Trusted Computing.
Proceedings of the 3rd Virtual Machine Research and Technology Symposium, 2004

Interpreting programs in static single assignment form.
Proceedings of the 2004 Workshop on Interpreters, Virtual Machines and Emulators, 2004

Efficiently Verifiable Escape Analysis.
Proceedings of the ECOOP 2004, 2004

2003
Continuous program optimization: A case study.
ACM Trans. Program. Lang. Syst., 2003

Effiziente Codegenerierung für mobilen Code.
Inform. Spektrum, 2003

Code Annotation for Safe and Efficient Dynamic Object Resolution.
Proceedings of the Compiler Optimization Meets Compiler Verification, 2003

Safe Code - It's Not Just for Applets Anymore.
Proceedings of the Modular Programming Languages, Joint Modular Languages Conference, 2003

A portable Virtual Machine target for Proof-Carrying Code.
Proceedings of the 2003 Workshop on Interpreters, Virtual Machines and Emulators, 2003

2002
Towards trusted systems from the ground up.
Proceedings of the 10th ACM SIGOPS European Workshop, Saint-Emilion, France, July 1, 2002, 2002

Efficient online optimization by utilizing offline analysis and the safeTSA representation.
Proceedings of the naugural International Symposium on Principles and Practice of Programming in Java, 2002

The source is the proof.
Proceedings of the 2002 Workshop on New Security Paradigms, 2002

2001
Towards Language-Agnostic Mobile Code.
Proceedings of the First International Workshop on Multi-Language Infrastructure and Interoperability, 2001

Continuous Program Optimization: Design and Evaluation.
IEEE Trans. Computers, 2001

SafeTSA: A Type Safe and Referentially Secure Mobile-Code Representation Based on Static Single Assignment Form.
Proceedings of the 2001 ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI), 2001

2000
Automated data-member layout of help objects to improve memory-hierarchy performance.
ACM Trans. Program. Lang. Syst., 2000

Stand-Alone Messages: A Step Towards Component-Oriented Programming Languages.
Proceedings of the Modular Programming Languages, Joint Modular Languages Conference, 2000

Oberon - The Overlooked Jewel.
Proceedings of the School of Niklaus Wirth, "The Art of Simplicity", 2000

1999
A Tree-Based Alternative to Java Byte-Codes.
Int. J. Parallel Program., 1999

Perpetual Adaptation of Software to Hardware: An Extensible Architecture for Providing Code Optimization as a Central System Service
CoRR, 1999

Towards language support for component-oriented real-time programming.
Proceedings of the Fifth International Workshop on Object-Oriented Real-Time Dependable Systems, 1999

1998
The Java Virtual Machine: A Passing Fad?
IEEE Softw., 1998

Open Standards Beyond Java: On the Future of Mobile Code for the Internet.
J. Univers. Comput. Sci., 1998

Java - Anmerkungen eines Wirth-Schülers.
Inform. Spektrum, 1998

1997
The Programming Language Lagoona - A Fresh Look at Object-Orientation.
Softw. Concepts Tools, 1997

Dynamic Linking of Software Components.
Computer, 1997

Slim Binaries.
Commun. ACM, 1997

Beyond Java: An Infrastructure for High-Performance Mobile Code on the World Wide Web.
Proceedings of WebNet 97, 1997

Run-Time Code Generation as a Central System Service.
Proceedings of The Sixth Workshop on Hot Topics in Operating Systems, 1997

1996
Adaptive Compression of Syntax Trees and Iterative Dynamic Code Optimization: Two Basic Technologies for Mobile Object Systems.
Proceedings of the Mobile Object Systems, 1996

1995
Protocol Extension: A Technique for Structuring Large Extensible Software-Systems.
Softw. Concepts Tools, 1995

The Oberon System Family.
Softw. Pract. Exp., 1995

1994
Technological Steps toward a Software Component Industry.
Proceedings of the Programming Languages and System Architectures, 1994

1993
The Case for Universal Symbol Files.
Struct. Program., 1993

Emulating an Operating System on Top of Another.
Softw. Pract. Exp., 1993

1991
The rewards of generating true 32-bit code.
ACM SIGPLAN Notices, 1991


  Loading...