Copyright (c) 2006-2007 Zeljko Vrba <firstname.lastname@example.org>
Copyright (c) 2006-2017 Alon Bar-Lev <email@example.com>
????-??-?? - Version 0.9.1
2017-08-25 - Version 0.9.0
* Avoid dup of stdin/stdout so that the terminate assuan hack operational
* Introduce gnupg-pkcs11-scd-proxy to allow isolation of the PKCS#11
* Lots of cleanups.
2017-07-15 - Version 0.8.0
* Support multiple tokens via serial numbers by hashing token id into
Implementation changes the card serial number yet again, executing
gpg --card-status should resync.
2017-04-18 - Version 0.7.6
* Add --homedir parameter.
* Rework serial responses for gnupg-2.1.19.
2017-03-01 - Version 0.7.5
* Fix issue with decrypting padded data, thanks to smunaut.
* Catchup with gnupg-2.1 changes which caused inability to support
both gpg and gpgsm. Implementation had to change card serial
number, as a result current keys of gpg will look for the
previous serial card.
emulate-openpgpg option is obsoleted and removed.
in order to assign new card serial number to existing keys.
backup your ~/.gnupg.
delete all PKCS#11 secret keys using:
gpg --delete-secret-keys $KEY then
Then refresh keys using:
In <gnupg-2.1.19 the keys should be re-generated using:
Do not replace keys!
gpg will learn the private keys of the new card and attach to
the existing public keys.
* Support gnupg-2.1 features of using existing keys, keys
should not be explicitly specified in configuration file
2017-01-18 - Version 0.7.4
* Fix gpg change in serialno attribute.
* Sync with gnupg-2.1, thanks to Moritz Bechler.
2011-07-30 -- Version 0.7.3
* Use assuan_sock_init, bug#3382372.
2011-04-09 -- Version 0.7.2
* Some cleanups, thanks to Timo Schulz.
* Sync hashing algorithms for OpenPGP.
2011-03-16 -- Version 0.7.1
* Sync with gnupg-2.0.17.
2010-05-28 -- Version 0.7.0
* Add timegm() replacement, thanks to Lars Silvén.
* Sync with gnupg-2.0.14 commands.
* Need assuan-2.
2008-01-19 -- Version 0.06
* Fixed uninitializied gnutls datum, thank to Volodya
Vaynshteyn for his help.
* Sync with gnupg-2.0.8 assuan usage.
* Some minor fixups.
2007-10-05 -- Version 0.05
* Fixed a change in gnupg protocol for openpgp
emulation, thanks to Nick Kossifidis for testing.
* Added key timestamp on OpenPGP key generation,
thanks to Daniel Benoy for reporting and testing.
2007-06-13 -- Version 0.04
* Build system fixups.
* RPM packaging is available, thank to Eddy Nigg.
* Debian packaging is available, thank to Sandro Wefel.
* Hacks to support for OpenPGP smartcard emulation,
please refer the man page.
2007-01-05 -- Version 0.03
* Fixed some Intel C compiler warnings.
* pkcs11-helper is now external dependency.
* Decrypt support unwrap now, thanks for
Christoph Neerfeld help.
* Configuration file sign-mode was renamed to
2006-10-20 -- Version 0.02
* Added more characters to serialization exclude chars.
People may need to re-learn cards.
* Fixed configure GPG_HOME typeo, thanks to Bob Dunlop.
* Unlike gpg-agent, gnupg-pkcs11-scd supports more than
one token available at the same time. In order to make
gpg-agent happy, gnupg-pkcs11-scd always returns the
same card serial number to gpg-agent.
When unavailable token is requested, gnupg-pkcs11-scd
will use NEEDPIN callback in order to ask for the
When and if gpg-agent will support more than one serial
number or NEEDTOKEN callback, this behavior will be
* Works as single threaded win32 server. Implementing
multi-threaded server forces copy of win32 socket handling
from gnupg, and it is GPLed.
When libassuan will handle sockets we will be able to
* Added system wide configuration file, thanks to Bub Dunlop.
* Some more minor fixes.
2006-10-11 -- Version 0.01
* Initial release.