BATMAN (Benchmarking of Asymmetric Tools on Multiple Architectures, Non-Interactively) is a program to collect measurements of public-key systems. It allows a large number of BATs to be systematically measured on a large number of computers. The output of BATMAN is an extensive database of measurements in a form suitable for easy computer processing.
wget http://hyperelliptic.org/ebats/batman-20070214.tar.gz gunzip < batman-20070214.tar.gz | tar -xf - cd batman-20070214Download the available BATs as examples, and move them to the sleepingbats directory:
wget http://hyperelliptic.org/ebats/bats-20070214.tar.gz gunzip < bats-20070214.tar.gz | tar -xf - mv bats/* sleepingbatsDownload m4 1.4.8, GMP 4.2.1, NTL 5.4, and OpenSSL 0.9.8d:
(cd libraries; wget --passive-ftp ftp://ftp.gnu.org/gnu/m4/m4-1.4.8.tar.bz2) (cd libraries; wget --passive-ftp ftp://ftp.gnu.org/gnu/gmp/gmp-4.2.1.tar.bz2) (cd libraries; wget http://www.shoup.net/ntl/ntl-5.4.tar.gz) (cd libraries; wget http://www.openssl.org/source/openssl-0.9.8d.tar.gz)Your BAT is free to call functions from GMP, NTL, and OpenSSL, after an appropriate #include <gmp.h> etc. Other libraries may be integrated into BATMAN upon request.
Choose a name for your BAT; let's say it's Furry, version 1. Create a new directory for your BAT:
mkdir bats/furry-1 cd bats/furry-1Inside your new directory, create the files required by the BAT API, such as sizes.h.
Once you're done writing your BAT, measure it using BATMAN:
cd ../.. ./do./do leaves the resulting measurements in a new file 20070214-hostname. You can monitor the progress of ./do by watching the file 20070214-hostname-notes.
Beware that the ./do script compiles GMP, NTL, and OpenSSL before it begins measurements. This takes 15 minutes on a 2000MHz Athlon 64, and might take much longer on your machine.
Once you're ready to submit your BAT to eBATS, put a tarball of the subdirectory on the web, and send the URL to batsubmission@ebats.cr.yp.to.
To measure all the available BATs, simply download, unpack, and run the BATMAN program, along with GMP, NTL, OpenSSL, and the BATs:
wget http://hyperelliptic.org/ebats/batman-20070214.tar.gz gunzip < batman-20070214.tar.gz | tar -xf - cd batman-20070214 wget http://hyperelliptic.org/ebats/bats-20070214.tar.gz gunzip < bats-20070214.tar.gz | tar -xf - (cd libraries; wget --passive-ftp ftp://ftp.gnu.org/gnu/m4/m4-1.4.8.tar.bz2) (cd libraries; wget --passive-ftp ftp://ftp.gnu.org/gnu/gmp/gmp-4.2.1.tar.bz2) (cd libraries; wget http://www.shoup.net/ntl/ntl-5.4.tar.gz) (cd libraries; wget http://www.openssl.org/source/openssl-0.9.8d.tar.gz) ./doPut the resulting 20070214* files on the web, and send the URLs to batmanresults@ebats.cr.yp.to.