Google Releases Native Client, Runs Code Natively in Browser

Google has released an early version of Native Client, a framework designed to run portable x86 binaries inside a web browser – in a sandbox. Native Client also includes technologies that allow for easier communication between JavaScript and Native Client executables, which makes it possible for web applications to leverage native code when it comes to processor intensive tasks. This sounds eerily similar to Microsoft’s ActiveX – one of the biggest security failures of the Windows operating system. Google insists, however, that Native Client is much, much more secure.

Google also released a research paper concerning Native Client, and in this paper, they detail the extensive work they have done on making sure Native Client is a safe and secure way of running native code inside your web browser. When comparing it to ActiveX, the paper claims:

Perhaps the most prevalent example of using native code in interactive web pages is Microsoft’s ActiveX. ActiveX controls rely on a trust model to provide security, with controls cryptographically signed using Microsoft’s
proprietary Authenticode system, and only permitted to run once a user has indicated they trust the publisher. This dependency on the user making prudent trust decisions is commonly exploited. ActiveX provides no guarantee that a trusted control is safe, and even when the control itself is not inherently malicious, defects in the control can be exploited, often permitting execution of arbitrary code. In contrast, NaCl is designed to prevent such exploitation, even for flawed NaCl modules.

Native Client is available as a preview release starting today. On a final note, everybody who does not mention Google OS in the comments gets a cookie.

36 Comments

  1. 2008-12-10 8:10 pm
    • 2008-12-10 8:46 pm
    • 2008-12-10 10:12 pm
      • 2008-12-10 10:17 pm
        • 2008-12-11 12:22 am
    • 2008-12-10 10:15 pm
    • 2008-12-10 11:27 pm
  2. 2008-12-10 8:10 pm
    • 2008-12-10 8:23 pm
    • 2008-12-10 8:36 pm
      • 2008-12-10 9:11 pm
      • 2008-12-10 9:15 pm
      • 2008-12-10 9:20 pm
        • 2008-12-10 11:10 pm
          • 2008-12-10 11:35 pm
      • 2008-12-10 10:46 pm
        • 2008-12-10 11:18 pm
        • 2008-12-11 12:24 am
  3. 2008-12-10 8:25 pm
    • 2008-12-10 9:14 pm
  4. 2008-12-10 8:42 pm
    • 2008-12-10 9:37 pm
  5. 2008-12-10 9:24 pm
  6. 2008-12-10 9:43 pm
  7. 2008-12-10 9:54 pm
  8. 2008-12-10 10:10 pm
    • 2008-12-10 11:13 pm
    • 2008-12-10 11:16 pm
  9. 2008-12-10 10:18 pm
    • 2008-12-10 11:15 pm
  10. 2008-12-10 11:10 pm
  11. 2008-12-11 12:12 am
    • 2008-12-11 2:24 am
    • 2008-12-11 4:53 am
  12. 2008-12-11 2:13 am
  13. 2008-12-11 2:39 am