Recent

Author Topic: libgcrypt binding for FPC/Lazarus  (Read 2476 times)

kveroneau

  • Full Member
  • ***
  • Posts: 119
libgcrypt binding for FPC/Lazarus
« on: August 19, 2016, 11:11:07 pm »
Does anyone have an example in either a converted unit file or by opening the dynamic .so file to use libgcrypt?

I looked at the Delphi crypt solution, DCPcrypt, but it's hugely lacking in comparsion to say a well established library like libgcrypt.  The AES implementation for example doesn't seem to be fully complete, and doesn't appear to support CBC.  The Github project page doesn't make it sound anymore promising when it comes to compatibility with other AES software.  In the DCPcrypt page it makes mention of this in the Bugs section, and looking at the source code, it only seems to support ECB(which isn't recommended anymore).

Is DCPcrypt still being worked on anymore to say add AES-256-CBC-IV support?  Is there another newer solution being worked on?  Or is using an OS native crypto API the way to go at this point?  I personally think that there should be an easy to use cross-platform Unit file which abstracts the Native Crypto APIs such as libgcrypt/Microsoft Crypto API/etc...

Thaddy

  • Hero Member
  • *****
  • Posts: 14391
  • Sensorship about opinions does not belong here.
Re: libgcrypt binding for FPC/Lazarus
« Reply #1 on: August 20, 2016, 08:54:54 am »
You should simply always use the opensll library  for anything serious. That is a standard in its own right. Although the official FPC headers for openssl are a bit out-dated  and need updating.
Btw: afaik dcpcrypt supports codeblock chaining.
There are many more libraries that either focus on encryption or have encryption as part of a wider scope.
Object Pascal programmers should get rid of their "component fetish" especially with the non-visuals.

 

TinyPortal © 2005-2018