JAVA Toolkit
| home | contact

Home > Products > Core Crypto Toolkits > ECCelerate™

News Menu

Latest News

Christmas Release


One day before Christmas we have released new versions of our SSL/TLS library iSaSiLk and our XML Security Toolkit IAIK-XSECT!

IAIK-JCE 5.60 and IAIK [CP]AdES 2.4 released!


IAIK-JCE 5.60 introduces a "subsidiary" provider as workaround for fixing a JDK JSSE MessageDigest Cloneable bug. IAIK [CP]AdES 2.4 fixes a bug in the AtsHashIndexv3 ASN.1 representation.


Our Clients


IAIK proudly presents the IAIK ECCelerate™ library for the Java™ platform. It is based on Java 6 technology and offers easy to use elliptic curve cryptography protocols, like ECDSA, ECDH, ECIES and ECMQV (optional), compliant with current standards. As of version 3.0, it also provides support for asymmetric bilinear pairings using Barreto-Naehrig curves. Since version 5.0, ECCelerate™ supports EdDSA and DH based on X25519 and X448. ECCelerate™ is an add-on to the IAIK JCE provider (of version 5.51 or higher), which you have to download and install separately.

 Main Features

  • Written entirely in the Java™ language
  • Compliant with ANSI X9.62-2005 (and legacy support for ANSI X9.62-1998), ANSI X9.63, IEEE P1363a, FIPS 186-4, SEC1 v2.0, SEC2 v2.0, RFC 5639 and ANSSI
  • ECDSA with SHA-1/SHA-2 support according to ANSI X9.62-2005 and BSI TR 03111 v1.11
  • RFC6979 support for ECDSA
  • EdDSA width Curve25519 and Curve448
  • Fast finite field arithmetic in prime fields
  • Fast finite field arithmetic in binary fields. In binary fields we only use polynomial base representation. This is mainly because of the patent situation, but there is no reason to use Gaussian normal bases.
  • Support for elliptic curve arithmetic with affine and several types of projective coordinates (Extended Jacobian, Jacobian, Lopez-Dahab, ...)
  • Comprehensive domain parameter factory (see list of supported parameters)
  • JCE/JCA integration of ECDSA, ECDH (with and without cofactor multiplication, also for X25519/X448), ECIES, EdDSA and ECMQV (optional)
  • ASN.1 encoding of signatures, public and private keys
  • Support for point compression
  • Provides interfaces to IAIK-CMS and IAIK iSaSiLk libraries
  • Optional arithmetic speed-ups enhance performance (Koblitz curves, various optimized scalar multipliers, ...). These are delivered with the add-on due to the vague patent situation.
  • Optional (basic) protection against (remote) timing side-channels
  • Asymmetric pairing (optimal Ate pairing) over Barreto-Naehrig curves (ranging from 160-bit to 638-bit curves)

To get started you should read the Tutorial.

Security Strengths according to NIST SP800-57a (Part 1)

NIST SP-800-57a Part1 Document

 Bits of Security

 Example Algorithm

 Prime Field ||p|| *

 Binary Field m

















 *) by ||p|| is meant the length of the binary expansion of the integer p.

ECCelerate™ Add-On

The ECCelerate™ Add-On holds algorithms that are (assumed to be) subject to patent claims. In case you want to employ our arithmetical optimizations to gain full performance, you must include iaik_eccelerate_addon.jar into your classpath.

Patent Issues

There have been many patents granted and applied for in the field of ECC. This means that this implementation may contain an implementation of an algorithm that is IPR-protected in some country. At this time we are not aware of a specific case, some arithmetical speedups (included in the separate iaik_eccelerate_addon.jar file). If anybody identifies a case of potential patent infringement, we would be grateful if you could inform us about this to enable us dealing with the issue.

Sales and Conditions

 For current prices of the ECCelerate™ library, please see the price list and license conditions.

 To order the product enter webshop.

print    tip a friend
back to previous page back  |  top to the top of the page