Skip to content

Delphi-OpenSSL 1.0.42

Choose a tag to compare

@lminuti lminuti released this 06 Jun 08:39
· 4 commits to master since this release

Added

  • New project logo (DelphiOpenSSL.png / DelphiOpenSSL.svg), referenced in the README
  • EVP_EncryptInit_ex and EVP_DecryptInit_ex wrapper functions in OpenSSL.Core.pas, with proper handling for both the Indy OpenSSL headers and the TaurusTLS backend

Changed

  • EVP_GetKeyIV now derives the key and IV using the cipher's actual key_len and iv_len
  • EOpenSSLError is now declared as a proper class (class(Exception))

Fixed

  • IV handling in TEncUtil.Encrypt / TEncUtil.Decrypt: the IV pointer is now determined from EVP_CIPHER_iv_length. A nil IV is passed for ciphers that don't use one (e.g. AES-ECB), and the IV length is validated for ciphers that require one. This fixes incorrect EVP initialization for ECB mode and prevents undefined behavior caused by invalid IV sizes (contributed by Denis Zhadan, #21)
  • Correct key/IV derivation for ciphers that do not use an IV
  • TaurusTLS build fixes