Blog

All Blog Posts  |  Next Post  |  Previous Post

TMS Cryptography Pack v5.0 Beta available

Thursday, November 14, 2024

TMS Software Delphi  Components

Version 5.0 beta of the TMS Cryptography Pack
is available for users with an active license on their "My Products" page after login on our website. This is the first 'full Delphi' version of the pack as the core cryptographic algorithms were in previous versions implemented in C, with Delphi classes wrapping them.

This beta version comes with several important changes compared to the previous version:

  • The original C code of the cryptographic algorithms has been ported to Delphi in a straightforward way, keeping the ‘C’ conventions to ensure line to line comparison in debugging (whenever relevant). This low-level code will gradually evolve to better use Delphi concepts, and in some cases reduce redundancies.

  • It is not encouraged to use the low-level cryptographic algorithms, mainly located in ‘XXXCore’ files because the APIs may change over time. It is recommended to use classes from the ‘XXXObj’ files.

  • It also known that some algorithms can be improved from a performance standpoint, especially with the use of different internal data structures and parallel computing (e.g., RSA). Improvements will be made over time.

  • Several algorithms are not yet in TMS CP because of the amount of work required to fully validate them. Namely, Speck and the elliptic curves have not been ported yet. They will be added in futures releases (even if the files are in the library, don't use them yet!)

  • RIPEMD160 has been removed as it is deprecated and not widely used.

  • Several new files have been created to include new features, mainly for PKI features (now and in future releases)

  • Bugs in RSA 4096 (buffer overflow) and the XML canonicalization function have been fixed. However, the XML canonicalization function doesn't address all cases of the standard yet.

  • Some APIs have been changed to ensure better uniformity across cryptographic interfaces and you may have to adjust existing code to take those changes into account, especially with the new ‘inputFormat’ property (see README-FIRST.txt).


The code runs on all platforms, including OSX ARM and is indeed framework independant. However, the C++ version has not been thoroughly tested and may require some fixes.

In the novelties, use of openSSL is no longer required, except for 'legacy algorithms' and to generate PKCS#12 certificates (no longer to parse them). In future releases, new features will be added, including 'quantum resistant' algorithms and more PKI-like features as well as PDF encryption, for instance.

Many warnings that are generated during compilation and installation will go away as the code is completed and improved.

Don't hesitate to report any issue through the product support page or directly by email.

We hope you will enjoy this new version and your feedback and suggestions are welcome.



Bernard




This blog post has not received any comments yet.



Add a new comment

You will receive a confirmation mail with a link to validate your comment, please use a valid email address.
All fields are required.



All Blog Posts  |  Next Post  |  Previous Post