Penguin
Note: You are viewing an old revision of this page. View the current version.

JavaScript is a ProgrammingLanguage with DynamicTyping originally designed by Brendan Eich in 1995 for scripting NetscapeNavigator 2.0. Called !LiveScript? in beta versions, but was renamed and slightly redesigned for marketing reasons in the final release after Netscape licensed Java from Sun?. This has caused no end of confusion as the two languages have nearly nothing in common besides the first four letters of their names.

The language has grown over the years. The standard implementation is called ECMAScript, named after the standardization institute ECMA that it was handed to. Contrary to popular belief, these versions are pretty compatible. The problem many webdesigners were faced with is that the DocumentObjectModel? used to offer access to the HTML document a script belongs to in a browser has varied wildly.

There are many pages on the web about JavaScript, but one of the best is the JavaScript section at Peter-Paul Koch's site.


Signing JavaScript

JavaScript has a relatively strict security model to prevent its use by malicious web content authors. (In practice, of course, the Interpreters in WebBrowsers are plagued with holes.) Some of those restrictions can be lifted, with the user's permission, if JavaScript code is signed.

To sign JavaScript code using Mozilla, you use the signtool. First set your Master Password in Mozilla to something easy insecure as you'll have to put it on the command line. A quick

signtool -d /.mozilla -l

will show you have no signing certificates. Quit Mozilla to generate one
signtool -d /.mozilla -p password -G certname
Now recheck your certificate list and notice that you have a singing certificate
signtool -d /.mozilla -l
Make a new directory, put any script files or HTML files with JavaScript code in it (say, foo.html) and sign the directory contents with this command
signtool -d /.mozilla -p password -k certname -Z foo.jar script_directory
Test that it was signed correctly with
signtool -d /.mozilla -v foo.jar

Referring to it as jar:http://bar.com/baz/foo.jar!/foo.html will now allow unsafe code to execute provided the user has accepted your certificate.

For a really thorough treatise on the subject, see Signed Scripts in Mozilla.


CategoryProgrammingLanguages, CategoryObjectOrientedProgrammingLanguages, CategoryVeryHighLevelProgrammingLanguages