/eccelwrap

A wrapper around the Eccelerate™ library for use with the Cryptimeleon Math library.

Primary LanguageJava

Eccelwrap

Eccelwrap provides a wrapper around the type 2 and 3 bilinear groups based on BN-256 and BN-464 curves offered by the Eccelerate™ library. It is designed to be used with the Cryptimeleon Math library to allow for use of faster bilinear groups compared to the slow ones implemented in the Cryptimeleon Math library.

To use this library, you need to own a valid license for IAIK JCE and the Eccelerate™ add-on. For information on the right license for you, please consult their license page.

Security Disclaimer

WARNING: This library is meant to be used for prototyping and as a research tool only. It has not been sufficiently vetted for use in security-critical production environments. All implementations are to be considered experimental.

Quickstart

To use Eccelwrap, you need to be in posession of a IAIK JCE license as well as the IAIK ECCelerate™ add-on. When you download them, you will receive a JAR file for each. To enable Eccelwrap to access the JARs (they are not available in any existing repositories), you will need to install them to your local Maven repository via the following commands:

mvn install:install-file -Dfile=<JCE_file_name.jar> \
                         -DgroupId=iaik \
                         -DartifactId=jce_full \
                         -Dversion=5.62.0 \
                         -Dpackaging=jar \
                         -DgeneratePom=true

and

mvn install:install-file -Dfile=<ECCelerate_file_name.jar> \
                         -DgroupId=iaik \
                         -DartifactId=eccelerate \
                         -Dversion=6.2.0 \
                         -Dpackaging=jar \
                         -DgeneratePom=true

Insert the location of your JAR files for the -Dfile parameter. Eccelwrap is tested with JCE version 5.62 and ECCelerate™ version 6.02 and the above commands install them using the version strings that are required for Eccelwrap. You can still install other versions of the dependencies using the above commands, but the -Dversion arguments need to be exactly as specified above.

Miscellaneous Information

  • Official Documentation can be found here.
    • The For Contributors area includes information on how to contribute.
  • Eccelwrap adheres to Semantic Versioning.
  • The changelog can be found here.
  • IAIK JCE, Eccelerate™ and its API are licensed under the license found here.
  • Eccelwrap is licensed under Apache License 2.0, see LICENSE file.

Authors

The library was implemented at Paderborn University in the research group "Codes und Cryptography".

All rights to the Eccelerate™ library and its API belong to their respective owners.