Re: [caplet] Re: Growing ADsafe for larger apps?
On Thu, May 27, 2010 at 5:05 PM, adam.kumpf <adam.kumpf@...> wrote:--
Mark and Mike,
This is really a great discussion -- thanks for detailing out the current state of ECMA Script 5, SES, and the overall feel of where things are going.
I'm particularly intrigued by the SES sketch < http://code.google.com/p/es-lab/source/browse/trunk/src/ses/ > work going on as it seems like a concrete step (although understandably ahead of it's needed conforming ES5 implementation) toward what SES can be.
I think showcasing the potential of what POLA/SES ECMA Script enables is an important step to getting more people excited (and subsequently more development energy and development perspectives).
What would it take to get an example together that uses initSES.js to sandbox a a couple of apps on a webpage? Could it work (at least for the most part) as ES5 Strict stands now?Hi Adam, we are tracking the ES5 implementations in progress atUnfortunately, though all of these are advancing rapidly, none of the browser-based ones have all that's needed to run initSES.js. In particular, the core of SES's security rests on Object.freeze and on the static scoping and defensible encapsulation provided by strict mode. None of the browser-based implementations provide either of these yet. But I expect they're coming soon.
For example, just having two simple text input boxes of ES5 Strict/SES code that is then dynamically loaded into subsequent divs on a webpage. Ideally, it would demonstrate limited communication between the divs while keeping private information inaccessible to the other (perhaps using the purse example, showing POLA in use). The viewer would then be invited to try to "scam the bank" by hacking the script in any way that choose.
The banking example is a bit dry, but perhaps with a little finessing it (or something like it) could be a compelling demo to get more people on-board and involved in making SES happen. I'm in awe of the potential of what the web can become as sites become un-siloed via the concepts behind SES. I think you guys are on to something really big here...This would indeed be a very cool demo! While we're waiting for SES, you can do everything you suggest above with Caja <http://code.google.com/p/google-caja/>. Please try, and please post any questions you may have or issues you run into to <https://groups.google.com/group/google-caja-discuss>. (You need to subscribe before you can post.) Thanks.