phalcon/cphalcon — pull request #1759 by sjinks (2014-01-04 15:56:32+00:00)
Title: Phalcon\Security::deriveKey()

Generate a PBKDF2 key derivation of a supplied password

Implementation details:
* uses the native C implementation (faster than used by PHP BTW) if `hash` extension is available during compile time
* otherwise, tries to call `hash_pbkdf2()` if PHP is 5.5.0+
* otherwise, implements PBKDF2 algorithm using `hash_hmac` and loops (my C implementation is based on [this PHP code](https://raw.github.com/rchouinard/hash_pbkdf2-compat/master/src/hash_pbkdf2.php))

Exposed functions:
* Phalcon\Security::deriveKey()
* Phalcon\Security::pbkdf2() — this one is marked as internal because it is used only for testing