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. -- http://mail.python.org/mailman/listinfo/python-list