borZoi 1.0.2 review

by on

borZoi is a C++ Elliptic Curve Cryptography Library

License: GPL (GNU General Public License)
File size: 591K
Developer: Anthony Mulcahy
0 stars award from

borZoi is a C++ Elliptic Curve Cryptography Library. borZoi implements the following algorithms using elliptic curves defined over finite fields of characteristic 2 (GF2m):

ECDSA (Elliptic Curve Digital Signature Algorithm)
As specified in ANSI X9.62, FIPS 186-2 and IEEE P1363.
ECIES (Elliptic Curve Integrated Encryption Scheme)
As specified in ANSI X9.63 and the IEEE P1363a Draft.
Elliptic Curve Diffie-Hellman Key Agreement Scheme
As specified in ANSI X9.63 and IEEE P1363.

The AES symmetric encryption scheme (NIST AES draft) and SHA-1 hash algorithm (FIPS 180-1) are also included.


borZoi can be built using either an internal math library or Victor Shoup's NTL number theory library which provides better performance. If NTL is used, it must be first downloaded from and installed.

GNU Development Tools:

1) (If NTL is not installed) ./configure
(If NTL is installed) ./configure --enable-ntl
2) make
3) make install

What's New in This Release:
Fixed a bug in the KDF2 function which caused the effective key length to be limited to a maximum of 160 bits.
This problem did not affect the security of ECKAS_DH1 because the key length is set to 128 bits, however the security of the 256 bit symmetric key used in ECIES was reduced to an effective key length of 160 bits.
Corrected the section on KDF2 in the manual so that the oLen parameter refers to the length of the key in bytes not bits.

borZoi 1.0.2 keywords