<html>
  <head>

    <meta http-equiv="content-type" content="text/html; charset=UTF-8">
  </head>
  <body>
    <p>Hello,</p>
    <p>Edge Vuln Research just dropped the amazing named "Super Duper
      Secure Mode" [1]---an interesting albeit slightly provocative
      statement they make in the announcement is that JITs may not be
      worth it for security-sensitive users, since they account for
      about half the bugs in V8 (Chromium's JS engine) and their new
      research shows that disabling JITs, despite the huge performance
      regressions in traditional JS benchmarks, is rarely noticeable in
      real-life. I don't think tbb is new to clamping down JS (for
      security-sensitive users), but this idea of disabling JITs might
      be interesting to look into*.</p>
    <p>First, taking a step back, recall that modern browsers execute JS
      by converting it into bytecode and then using an interpreter to
      execute, and functions that are "hot" (executed many times) are
      recompiled using a JIT to produce faster code. This is super
      simplified, see [2] for a more technical overview of how this
      works in Firefox.<br>
    </p>
    <p>I think this idea can be used to improve the Tor Browser,</p>
    <ol>
      <li>we can disable JITs in "Safer" mode which would reduce
        usability but improve security; and</li>
      <li>we can enable JS and disable JITs in "Safest" mode which would
        reduce significantly improve usability but degrade security.</li>
    </ol>
    <p>On a more meta note, this wouldn't be hard to implement, Firefox
      has prefs to enable and disable this stuff, and @freddyb's tweet
      [3] seems to confirm this intuition.<br>
    </p>
    <p>What do y'all think?</p>
    <p>Best,<br>
      Sanketh</p>
    <p>*disabling JITs was discussed in the tor issue tracker 4 years
      ago [4] but most of the then concerns (like changing build
      settings) seem to have been resolved and JITs are now enabled
      across the browser (they were not enabled for content back then)
      and so this, I feel, can use fresh eyes.</p>
    <p>[1]:
      <a class="moz-txt-link-freetext" href="https://microsoftedge.github.io/edgevr/posts/Super-Duper-Secure-Mode/">https://microsoftedge.github.io/edgevr/posts/Super-Duper-Secure-Mode/</a><br>
      [2]:
<a class="moz-txt-link-freetext" href="https://hacks.mozilla.org/2020/11/warp-improved-js-performance-in-firefox-83/">https://hacks.mozilla.org/2020/11/warp-improved-js-performance-in-firefox-83/</a><br>
      [3]: <a class="moz-txt-link-freetext" href="https://twitter.com/freddyb/status/1423020386560712705?s=20">https://twitter.com/freddyb/status/1423020386560712705?s=20</a><br>
      [4]: <a class="moz-txt-link-freetext" href="https://gitlab.torproject.org/legacy/trac/-/issues/21011">https://gitlab.torproject.org/legacy/trac/-/issues/21011</a></p>
    <p><br>
    </p>
  </body>
</html>