Crypt::DH replacement that uses GMP directly


Crypt::DH::GMP is a (somewhat) portable replacement to Crypt::DH, implemented mostly in C.

In the beginning, there was Crypt::DH. However, Crypt::DH suffers from a couple of problems: GMP/Pari libraries are almost always required; Crypt::DH additionally has Math::BigInt in between GMP. Instantiating an object comes with a relatively high cost, and if you make many computations in one go, your program will suffer dramatically because of this.

Crypt::DH::GMP attempts to alleviate these problems by providing a Crypt::DH-compatible layer, which, instead of doing calculations via Math::BigInt, directly works with libgmp in C.

This means that essentially 2 call stacks worth of expensive Perl method calls are eliminated and also only load 1 (Crypt::DH::GMP) module instead of 3 (Crypt::DH + Math::BigInt + Math::BigInt::GMP) is needed.

These add up to a fairly significant increase in performance.

Upload more screenshots

Please help extend the collection of screenshots. Just make a screenshot and upload it here. You don't need to register or anything.

Upload a screenshot

Hint: upload an image here from your clipboard with Ctrl-V


Install this software package

If the package is available for the distribution you are currently using on your computer then install the software by clicking on…

Install libcrypt-dh-gmp-perl