[openssl-users] smartcard/ pkcs11 - 'bad decrypt' error after upgrade from 0.9.8 to 1.0.1
Jan Just Keijser
janjust at nikhef.nl
Fri Nov 11 15:04:00 UTC 2016
Hi,
On 10/11/16 10:49, Pawel Suwinski wrote:
> Hello
>
>
> After openssl upgrade (new OS version, new machine) I get error
> decrypting SMIME messages using Alladin eToken SmardCard (pkcs11
> engine).
>
> On old system (Debian 6.0 Squeeze-LTS)/ machine:
> #v+
> [old]$ openssl version
> OpenSSL 0.9.8g 19 Oct 2007 (Library: OpenSSL 0.9.8o 01 Jun 2010)
>
> [old]$ openssl smime -decrypt -passin pass:XXXX -inform DER -in smime.p7m -engine pkcs11 -inkey id_e3c5 -keyform engine > /dev/null ; echo $?
> engine "pkcs11" set.
> 0
> #v-
>
> Now on the new system (Debian 8.6 Jessie)/ machine I get:
> #v+
> [new]$ openssl version
> OpenSSL 1.0.1t 3 May 2016
> [new]$ openssl smime -decrypt -passin pass:XXXX -inform DER -in smime.p7m -engine pkcs11 -inkey id_e3c5 -keyform engine > /dev/null ; echo $?
> engine "pkcs11" set.
> Error decrypting PKCS#7 structure
> 3073701564:error:06065064:digital envelope
> routines:EVP_DecryptFinal_ex:bad decrypt:evp_enc.c:516:
> 4
> #v-
>
> Of course smime.p7m file and smartcard are the same. Machines differs
> but smartcard reader on the new machine seams to work fine, for
> example I can access smartcard data:
>
> #v+
> [new]$ pkcs11-dump dump /usr/lib/libeTPkcs11.so 0 XXXX | grep -1
>
> CKA_ID:
> e3 c5
> (...)
> #v-
>
>
> Config files are the same with additional pkcs11 engine section
> described in libengine-pkcs11-openssl package docs:
>
> #v+
> # /etc/ssl/openssl.cnf
> (...)
> openssl_conf = openssl_def
>
> [openssl_def]
> engines = engine_section
>
> [engine_section]
> pkcs11 = pkcs11_section
>
> [pkcs11_section]
> engine_id = pkcs11
> dynamic_path = /usr/lib/engines/engine_pkcs11.so
> MODULE_PATH = /usr/lib/libeTPkcs11.so
> init = 0
> (...)
> #v-
>
>
> I will be grateful for any hints why it does not work? Maybe I missed
> something in config file?
>
This has little to do with openssl itself, but I am familiar with such
issues.
I'm using the same token with the same driver on CentOS 6, 7 and Fedora
20/22 without and issues. Your problem could be caused by numerous
incompatibilities:
- which version of opensc is installed
- which version of engine_pkcs11 and libp11 are installed
- which *exact* version of the eTPkcs11 driver are you using?
Keep in mind that for the latest OSes you will need the SafeNet client v9
HTH,
JJK
More information about the openssl-users
mailing list