libsecp256k1 v0.4.0: New Ellswift Module

“This release adds a new ellswift module that implements ElligatorSwift encoding for public keys and x-only Diffie-Hellman key exchange for them.”

What’s new

Added

New module ellswift implements ElligatorSwift encoding for public keys and x-only Diffie-Hellman key exchange for them. ElligatorSwift permits representing secp256k1 public keys as 64-byte arrays which cannot be distinguished from uniformly random. See:Header file include/secp256k1_ellswift.h which defines the new API.Document doc/ellswift.md which explains the mathematical background of the scheme.The paper on which the scheme is based.We now test the library with unreleased development snapshots of GCC and Clang. This gives us an early chance to catch miscompilations and constant-time issues introduced by the compiler (such as those that led to the previous two releases).

Fixed

Fixed symbol visibility in Windows DLL builds, where three internal library symbols were wrongly exported.

Changed

When consuming libsecp256k1 as a static library on Windows, the user must now define the SECP256K1_STATIC macro before including secp256k1.h.

GitHub Repo

Leave a Reply

Your email address will not be published. Required fields are marked *