Hi,

I would like to propose a new extension for inclusion in PECL.

The name of the extension is crypto. It's an objective wrapper for OpenSSL
crypto library. The license is PHP and it is supported for PHP 5.3+. The
code is available on GitHub:

https://github.com/bukka/php-crypto

I would like to release a devel version 0.1.0 as there will be lots of
addition in the future. The currently implemented and working features are
following:

- Cipher
  - incremental encryption & decryption (context methods)
  - cipher info methods (block size, key and iv length...)
  - flexible setting of cipher algorithm (__callStatic)
  - mode settings
  - authentication (GCM and CCM) - AAD setter & auth tag setter and getter
methods
- Hash
  - increments creation of message digest
  - flexible setting of digest algorithm (__callStatic)
- Message authentication codes
  - HMAC and CMAC as subclasses of Hash
- Rand
 - CSPRNG methods
 - seeding
 - methods for saving and retrieving PRNG status
- Base64
  - incremental updating (context methods)
  - automatic wrapping rows (suitable for encoding and decoding
certificates)
- Exception classes
  - AlgorithmException (for all Cipher and Hash exceptions)
  - Base64Exception

For more details see README on GitHub or examples:
https://github.com/bukka/php-crypto/tree/master/examples

Although the extension is still in development, there are features that
could be already useful. The main such feature is probably authenticated
encryption using GCM. There is an example for it:
https://github.com/bukka/php-crypto/blob/master/examples/gcm.php . Of
course, the features are available in the extension only if they are
available in the installed version of OpenSSL...

I will be more than happy for any feedback!

Thanks

Jakub

Reply via email to