University of Minnesota
Program Analysis for Security
index.php

Native Client (NaCl), part 2

Jason Ansel, Petr Marchenko, Úlfar Erlingsson, Elijah Taylor, Brad Chen, Derek L. Schuff, David Sehr, Cliff L. Biffle, and Bennet Yee. “Language-independent sandboxing of just-in-time compilation and self-modifying code”. In Programming Language Design and Implementation (PLDI), pages 355–366, San Jose, CA, USA, June 2011.
[ACM]

Greg Morrisett, Gang Tan, Joseph Tassarotti, Jean-Baptiste Tristan, and Edward Gan. “RockSalt: better, faster, stronger SFI for the x86”. In Programming Language Design and Implementation (PLDI), pages 395–404, Beijing, China, June 2012.
[ACM]

Question: The market for web browsers is competitive; browser vendors like Google, Microsoft, and Mozilla know that users can switch browsers based on compatibility, features, performance, and security. The first reading on JIT support for NaCl makes the case for using NaCl to protect the JavaScript engine a web browser, which represents a trade-off between security and performance.

Putting yourself in the shoes of a browser vendor like Google with Chrome, how would you go about making this trade-off, when deciding what default browser configuration to ship to your users, assuming that your goal is to maximize your long-term market share?