Hi Thomas,
Just so you know who I am, I'm the openssl extension maintainer :-)
I'd like to see your patch integrated into a more generic encryption
function call, where the cipher is passed as a parameter.
So, I don't think we will integrate your patch as-is, but do think
we can implement the same functionality using a function something
like this:
mixed openssl_cipher_encrypt(int cipher, string key, string plaindata);
mixed openssl_cipher_decrypt(int cipher, string key, string cryptdata);
The functions would return false on error or the (de)crypted string
on success.
The ciphers would be registered as constants like this:
OPENSSL_CIPHER_BF_CFB64
OPENSSL_CIPHER_XXXXX
Could you log your patch as a feature request using bugs.php.net so
that I can find it when I get around to implementing this?
If you are able, it would be really, really appreciated if you could
help with the groundwork for this: if you can find out how to do this
generic encryption using C code (it doesn't have to work with PHP; it
can be a small hacked up C program) and post it along with your original
patch, it would help a great deal!
I tend to use the source for the openssl command line program as a guide,
so that's where to check first.
To get the idea of what I talking about we want something like this:
CIPHER_METHOD cipher; // This is a pointer to the cipher method
switch(cipher_number) {
case OPENSSL_CIPHER_BF_CFB64:
cipher = CIPHER_BLOWFISH;
}
CIPHER_Encrypt(cipher, key, data);
So we just need to find out the names and types of the ciphers and
related functions.
Thanks for your contribution!
--Wez.
[Stuff about blowfish encrypt/decrypt was eaten by my MTA]
PS: I've Cc'd this to Derick who is working on a generic encryption
extension for PHP and who might have some comments on the API,
although he is on vacation at the moment.
--
PHP Development Mailing List <http://www.php.net/>
To unsubscribe, visit: http://www.php.net/unsub.php