ECC-enabled Firefox and SeaMonkey

ECC capabilities are enabled by default in Firefox 2.0 Beta 1. Precompiled binaries for different platforms are available from http://developer.mozilla.org/.

NOTE: This version does not appear to incorporate the patch for Bug 326159 and is, therefore, unable to perform ECC certificate enrollment. Instructions on building ECC enabled versions of Firefox and the SeaMonkey all-in-one Internet application suite are included below.

Testing ECC Ciphers

After obtaining an ECC-capable executable of Firefox or SeaMonkey, you'll need to enable ECC cipher suites manually. Open the URL about:config and type security.ssl3 in the search filter. This will bring up a list of all available cipher suites. Double-click on any cipher to toggle its state. For example, to enable TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA, double-click on security.ssl3.ecdhe_ecdsa_aes128_sha until its boolean entry in the Value column changes to true.

You can use one of the several publicly available servers to test your ECC-enabled client.

Compilation Instructions

These compilations instructions are based on those at the Mozilla Developer Center. Make sure that your system meets the applicable build requirements listed there.

  1. Download an unpack the archive (.tar.gz or .zip file) containing the latest Mozilla CVS tree from http://ftp.mozilla.org/pub/mozilla.org/mozilla/nightly/latest-trunk/.
  2. Update the code to the current version in the CVS repository. The necessary steps are shown below using the syntax for csh/tcsh. Use anonymous as the password for cvs login.
         % setenv CVSROOT :pserver:anonymous@cvs-mirror.mozilla.org:/cvsroot
         % cvs login
         % cvs -z3 update -PA mozilla/client.mk
         % make -f mozilla/client.mk checkout MOZ_CO_FLAGS=-PA
                
  3. Apply any outstanding patches necessary to enable ECC functionality. The main one is the patch associated with bug #326159.
    NOTE: You only need to apply patches that haven't already been checked-in.
  4. Pick one of the following mozconfig files to download
  5. Set up environment variables in preparation for the build.
         % setenv MOZCONFIG /path/.../.../mozconfig-browser
     or
         % setenv MOZCONFIG /path/.../.../mozconfig-suite
                  
         % setenv NSS_ENABLE_ECC 1
         % setenv DEFINES -DNSS_ENABLE_ECC
                
  6. Initiate the build.
         % cd mozilla
         % make -f client.mk build
         % make -C browser-static/browser/installer
                

Questions/Comments: ecc-sunlabs-support "at" sun dot com (Last update: Aug 2, 2006)