PHP's openssl_sign() using M2Crypto?
heikki at osafoundation.org
heikki at osafoundation.org
Mon May 22 13:30:25 EDT 2006
KW wrote:
> The openssl module in PHP basicly does this (C code):
> EVP_SignInit(&md_ctx, EVP_sha1());
> EVP_SignUpdate(&md_ctx, data, data_len);
> EVP_SignFinal(&md_ctx, sigbuf, &siglen, pkey);
>
> Looks like some magic is used to get pkey, I think that's what I'm missing.
> See php_openssl_evp_from_zval() in PHP's ext/openssl/openssl.c.
>
> I've tried the following:
> key = M2Crypto.EVP.load_key(keyfile, lambda x: passphr)
> hmac = M2Crypto.EVP.HMAC(key, 'sha1')
> hmac.update(message)
> hmac.final()
Does this work?:
key = M2Crypto.EVP.load_key(keyfile, lambda x: passphr)
key.sign_init()
key.sign_update(message)
signature = key.final()
> Unfortunately M2Crypto documentation is practically nonexistent..
A lot of the OpenSSL documentation works fine, the names are usually
straight mapping.
More information about the Python-list
mailing list