Portrait of Jay Lorch

Jay Lorch

Senior Researcher

About

I’m a Senior Researcher in the Systems Research Group at Microsoft Research.  My research focuses broadly on computer systems, with particular emphasis on distributed systems, trusted computing, privacy, online games, cloud computing, and energy management.

I love projects that involve building systems, and a major interest of mine is achieving fault tolerance in those systems.  I’ve shown how to deal with server failures in SMART and Shroud, trusted-component power failures in TrInc and Memoir, and improperly behaving participants in decentralized systems like GreenUp and FARSITE.  I’m an expert in Paxos and its many variants; having used it in several systems, I know its strengths and weaknesses.

Lately, I’ve discovered the power of trusted computing to solve difficult problems in security and privacy.  The TrInc work showed how a simple trusted device could be leveraged for a great variety of purposes, including efficiently tolerating Byzantine faults, preventing Sybil attacks, preventing BitTorrent under-reporting, and allowing untrusted entities to provide trusted services.  The Shroud system demonstrated how a server can use secure hardware to hide difficult-to-hide information hackers can otherwise glean from access patterns, such as who’s friends with whom and where someone is looking for local information.  And my current project, Ironclad, shows how to use full-system software verification to enable provably justifiable trust in services that run on trusted platforms in the cloud.

Projects

Ironclad

Established: October 2, 2014

An Ironclad App lets a user securely transmit her data to a remote machine with the guarantee that every instruction executed on that machine adheres to a formal abstract specification of the app's behavior. This does more than eliminate implementation…

Zero-Effort Payments

Established: September 16, 2014

Zero-Effort Payments (ZEP) is a seamless mobile computing system designed to accept payments with no effort on the customer’s part beyond a one-time opt-in. With ZEP, customers need not present cards nor operate smartphones to convey their identities. ZEP uses…

Drawbridge

Established: September 19, 2011

Drawbridge is a research prototype of a new form of virtualization for application sandboxing. Drawbridge combines two core technologies: First, a picoprocess, which is a process-based isolation container with a minimal kernel API surface. Second, a library OS, which is…

Dafny: A Language and Program Verifier for Functional Correctness

Established: December 23, 2008

Dafny is a programming language with built-in specification constructs. The Dafny static program verifier can be used to verify the functional correctness of programs. The Dafny programming language is designed to support the static verification of programs. It is imperative,…

Publications

2015

2014

2013

2012

2011

2010

2009

2008

2007

2006

2004

2003

2002

2001

2000

1998

1997

1996

1995

Other

 Professional Activities
  • Program Committee Chair for P2P 2015
  • Program Committee Member for IEEE S&P 2016, NSDI 2016, WWW 2015, FAST 2014, NDSS 2014, HotOS 2013, ICDCS 2013, Eurosys 2011, IPTPS 2008 & 2009, P2P 2012 & 2013, and MMVE 2010 & 2012
  • Treasurer for SOSP 2015
  • Panelist for NSF Expeditions in Computing 2011
  • Registration Chair for SOSP 2009
  • Sponsorships Chair for SOSP 2007