From wk at gnupg.org Sat Dec 7 13:06:34 2019 From: wk at gnupg.org (Werner Koch) Date: Sat, 07 Dec 2019 13:06:34 +0100 Subject: [Announce] GnuPG 2.2.19 released Message-ID: <87imms9w6t.fsf@wheatstone.g10code.de> Hello! We are pleased to announce the availability of a new GnuPG release: version 2.2.19. This version fixes a bug introduced with the last release. See below for details. About GnuPG =========== The GNU Privacy Guard (GnuPG, GPG) is a complete and free implementation of the OpenPGP and S/MIME standards. GnuPG allows to encrypt and sign data and communication, features a versatile key management system as well as access modules for public key directories. GnuPG itself is a command line tool with features for easy integration with other applications. The separate library GPGME provides a uniform API to use the GnuPG engine by software written in common programming languages. A wealth of frontend applications and libraries making use of GnuPG are available. As an universal crypto engine GnuPG provides support for S/MIME and Secure Shell in addition to OpenPGP. GnuPG is Free Software (meaning that it respects your freedom). It can be freely used, modified and distributed under the terms of the GNU General Public License. Noteworthy changes in version 2.2.19 ==================================== * gpg: Fix double free when decrypting for hidden recipients. Regression in 2.2.18. [#4762]. * gpg: Use auto-key-locate for encryption even for mail addressed given with angle brackets. [#4726] * gpgsm: Add special case for certain expired intermediate certificates. [#4696] Release-info: https://dev.gnupg.org/T4768 Getting the Software ==================== Please follow the instructions found at or read on: GnuPG 2.2.19 may be downloaded from one of the GnuPG mirror sites or direct from its primary FTP server. The list of mirrors can be found at . Note that GnuPG is not available at ftp.gnu.org. The GnuPG source code compressed using BZIP2 and its OpenPGP signature are available here: https://gnupg.org/ftp/gcrypt/gnupg/gnupg-2.2.19.tar.bz2 (6597k) https://gnupg.org/ftp/gcrypt/gnupg/gnupg-2.2.19.tar.bz2.sig An installer for Windows without any graphical frontend except for a very minimal Pinentry tool is available here: https://gnupg.org/ftp/gcrypt/binary/gnupg-w32-2.2.19_20191207.exe (4140k) https://gnupg.org/ftp/gcrypt/binary/gnupg-w32-2.2.19_20191207.exe.sig The source used to build the Windows installer can be found in the same directory with a ".tar.xz" suffix. A new version of GnuPG's full installer for Windows (aka Gpg4win) featuring several frontends and plugins will be released shortly. Checking the Integrity ====================== In order to check that the version of GnuPG which you are going to install is an original and unmodified one, you can do it in one of the following ways: * If you already have a version of GnuPG installed, you can simply verify the supplied signature. For example to verify the signature of the file gnupg-2.2.19.tar.bz2 you would use this command: gpg --verify gnupg-2.2.19.tar.bz2.sig gnupg-2.2.19.tar.bz2 This checks whether the signature file matches the source file. You should see a message indicating that the signature is good and made by one or more of the release signing keys. Make sure that this is a valid key, either by matching the shown fingerprint against a trustworthy list of valid release signing keys or by checking that the key has been signed by trustworthy other keys. See the end of this mail for information on the signing keys. * If you are not able to use an existing version of GnuPG, you have to verify the SHA-1 checksum. On Unix systems the command to do this is either "sha1sum" or "shasum". Assuming you downloaded the file gnupg-2.2.19.tar.bz2, you run the command like this: sha1sum gnupg-2.2.19.tar.bz2 and check that the output matches the next line: e24a1208ffe69d7436b2f27e99542a85f34d0ac0 gnupg-2.2.19.tar.bz2 fb0eebb29c73c72d0045e3100963dd9a62a188bb gnupg-w32-2.2.19_20191207.tar.xz a2e95e66918ed8e228c75d59feeee3bf6bc42d1d gnupg-w32-2.2.19_20191207.exe Internationalization ==================== This version of GnuPG has support for 26 languages with Chinese (traditional and simplified), Czech, French, German, Japanese, Norwegian, Polish, Russian, and Ukrainian being almost completely translated. Documentation and Support ========================= If you used GnuPG in the past you should read the description of changes and new features at doc/whats-new-in-2.1.txt or online at https://gnupg.org/faq/whats-new-in-2.1.html The file gnupg.info has the complete reference manual of the system. Separate man pages are included as well but they miss some of the details available only in thee manual. The manual is also available online at https://gnupg.org/documentation/manuals/gnupg/ or can be downloaded as PDF at https://gnupg.org/documentation/manuals/gnupg.pdf . You may also want to search the GnuPG mailing list archives or ask on the gnupg-users mailing list for advise on how to solve problems. Most of the new features are around for several years and thus enough public experience is available. https://wiki.gnupg.org has user contributed information around GnuPG and relate software. In case of build problems specific to this release please first check https://dev.gnupg.org/T4768 for updated information. Please consult the archive of the gnupg-users mailing list before reporting a bug: . We suggest to send bug reports for a new release to this list in favor of filing a bug at . If you need commercial support go to or . If you are a developer and you need a certain feature for your project, please do not hesitate to bring it to the gnupg-devel mailing list for discussion. Thanks ====== Maintenance and development of GnuPG is mostly financed by donations. The GnuPG project currently employs two full-time developers and one contractor. They all work exclusively on GnuPG and closely related software like Libgcrypt, GPGME and Gpg4win. We have to thank all the people who helped the GnuPG project, be it testing, coding, translating, suggesting, auditing, administering the servers, spreading the word, and answering questions on the mailing lists. Many thanks to our numerous financial supporters, both corporate and individuals. Without you it would not be possible to keep GnuPG in a good shape and to address all the small and larger requests made by our users. Thanks. Happy hacking, Your GnuPG hackers p.s. This is an announcement only mailing list. Please send replies only to the gnupg-users'at'gnupg.org mailing list. p.p.s List of Release Signing Keys: To guarantee that a downloaded GnuPG version has not been tampered by malicious entities we provide signature files for all tarballs and binary versions. The keys are also signed by the long term keys of their respective owners. Current releases are signed by one or more of these four keys: rsa2048 2011-01-12 [expires: 2019-12-31] Key fingerprint = D869 2123 C406 5DEA 5E0F 3AB5 249B 39D2 4F25 E3B6 Werner Koch (dist sig) rsa2048 2014-10-29 [expires: 2019-12-31] Key fingerprint = 46CC 7308 65BB 5C78 EBAB ADCF 0437 6F3E E085 6959 David Shaw (GnuPG Release Signing Key) rsa2048 2014-10-29 [expires: 2020-10-30] Key fingerprint = 031E C253 6E58 0D8E A286 A9F2 2071 B08A 33BD 3F06 NIIBE Yutaka (GnuPG Release Key) rsa3072 2017-03-17 [expires: 2027-03-15] Key fingerprint = 5B80 C575 4298 F0CB 55D8 ED6A BCEF 7E29 4B09 2E28 Andre Heinecke (Release Signing Key) The keys are available at and in any recently released GnuPG tarball in the file g10/distsigkey.gpg . Note that this mail has been signed by a different key. -- Die Gedanken sind frei. Ausnahmen regelt ein Bundesgesetz. -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 227 bytes Desc: not available URL: -------------- next part -------------- _______________________________________________ Gnupg-announce mailing list Gnupg-announce at gnupg.org http://lists.gnupg.org/mailman/listinfo/gnupg-announce From Jens.Schleusener at fossies.org Sun Dec 8 17:10:16 2019 From: Jens.Schleusener at fossies.org (Fossies Administrator) Date: Sun, 8 Dec 2019 17:10:16 +0100 (CET) Subject: Codespell report for GnuPG 2.2.19 Message-ID: Hi, the FOSS server fossies.org offers a new feature "Source code misspelling reports": https://fossies.org/features.html#codespell Although such reports are normally only generated on request, as Fossies administrator I have just created (for testing purposes) an analysis for the current GnuPG 2.2.19: https://fossies.org/linux/misc/gnupg/codespell.html That version-independent URL should redirect always to the last report (if available), so currently to https://fossies.org/linux/misc/gnupg-2.2.19.tar.bz2/codespell.html Although some obviously wrong matches ("false positives") are already filtered (ignored) please inform me if you find more of them so that I can force a new improved check if applicable. Just for information there are also two supplemental pages https://fossies.org/linux/misc/gnupg/codespell_conf.html showing some used "codespell" configurations and https://fossies.org/linux/misc/gnupg/codespell_fps.html showing all resulting obvious "false positives". Regards Jens -- FOSSIES - The Fresh Open Source Software archive mainly for Internet, Engineering and Science https://fossies.org/ From ilf at zeromail.org Tue Dec 10 02:49:55 2019 From: ilf at zeromail.org (ilf) Date: Tue, 10 Dec 2019 02:49:55 +0100 Subject: [Announce] GnuPG 2.2.18 released In-Reply-To: <20191130070027.GA3555115@zeromail.org> References: <87sgmbacmf.fsf@wheatstone.g10code.de> <20191130070027.GA3555115@zeromail.org> Message-ID: <20191210014955.GA4106446@zeromail.org> This is still present in 2.2.19. Do you disagree? Or should I open an issue to track this? Best ilf: > I run "gpg --check-trustdb --quiet" via cron, but now on every run it > outputs: >> gpg: Note: third-party key signatures using the SHA1 algorithm are >> rejected > man gpg(1) sais: >> -q, --quiet >> Try to be as quiet as possible. > IMHO, gpg should not output that line when used with --quiet. -- ilf If you upload your address book to "the cloud", I don't want to be in it. From jason.franklin at quoininc.com Wed Dec 11 19:00:18 2019 From: jason.franklin at quoininc.com (Franklin, Jason) Date: Wed, 11 Dec 2019 13:00:18 -0500 Subject: Presetting passphrases when using scdaemon Message-ID: <9b56123b-52a9-4b31-f510-54fc7b241468@quoininc.com> Greetings, I am trying to use the gpg-connect-agent tool to preset passphrases for private keys that are stored on a GnuPG smart card. My current workflow to test this process works like this: (the "[...]" is where the passphrase should go as a hex string) $ gpgconf --kill gpg-agent # scdaemon also killed $ gpg-connect-agent # starts gpg-agent and connects > PRESET_PASSPHRASE 73B8E934293926BA494E280D11E8B9EA2926A723 -1 [...] OK > PRESET_PASSPHRASE 671CB3A7B36410552D08BABA2300C27142714DAB -1 [...] OK > PRESET_PASSPHRASE 49773C7DC8414E61642B3BBAE2C8E489AAA3837B -1 [...] OK > PRESET_PASSPHRASE 410D756490AA179AC5D94D3870108CC90C7A3500 -1 [...] OK > /bye $ gpg --encrypt foo # encrypt a file $ gpg -o foo.out -d foo.gpg # decrypt to test access to key from card At this point, I get a pinentry prompt. Having preset the passphrase already, I would have expected that the encrypt/decrypt operations would have worked just fine without requiring me to enter my PIN. Why am I not able to preset passphrases for keys that are stored on the smart card? What am I missing? -- Jason Franklin -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 659 bytes Desc: OpenPGP digital signature URL: From wk at gnupg.org Fri Dec 13 16:08:05 2019 From: wk at gnupg.org (Werner Koch) Date: Fri, 13 Dec 2019 16:08:05 +0100 Subject: Presetting passphrases when using scdaemon In-Reply-To: <9b56123b-52a9-4b31-f510-54fc7b241468@quoininc.com> (Jason Franklin's message of "Wed, 11 Dec 2019 13:00:18 -0500") References: <9b56123b-52a9-4b31-f510-54fc7b241468@quoininc.com> Message-ID: <87r218i7qi.fsf@wheatstone.g10code.de> On Wed, 11 Dec 2019 13:00, Franklin, Jason said: > Why am I not able to preset passphrases for keys that are stored on the > smart card? What am I missing? Right. There is no cache for the PINs of smartcards in GnuPG. What might look like a cache is that a smartcard usually requires the PIN only once and then keeps the key unlocked until the card is powered down or reset. In case you use an OpenPGP card, there is a hack to disable the PIN requirement for a card. You need to put this sequence into the login data (gpg --card-edit): arbitrary data up to a linefeedF=02 It is best to create a file with that data: $ printf "foobar\n\x14F=03\n" >foo.inp Then make sure that the default PIN is set for the card (i.e. 123456) and use: $ gpg --card-edit gpg/card> admin gpg/card> login quit to put the magic spell into the login data object. From now on you should not anymore be asked for the PIN but the default PIN is passed internally to the card. This does not work for the Admin key. Please test this procedure first with a test card so that you don't accidently brick your real on-card keys. The code takes some precautions but it is just too easy to get things wrong. Shalom-Salam, Werner ps. Here is the description of the login hack: /* GnuPG makes special use of the login-data DO, this function parses the login data to store the flags for later use. It may be called at any time and should be called after changing the login-data DO. Everything up to a LF is considered a mailbox or account name. If the first LF is followed by DC4 (0x14) control sequence are expected up to the next LF. Control sequences are separated by FS (0x18) and consist of key=value pairs. There are two keys defined: F= Where FLAGS is a plain hexadecimal number representing flag values. The lsb is here the rightmost bit. Defined flags bits are: Bit 0 = CHV1 and CHV2 are not synchronized Bit 1 = CHV2 has been set to the default PIN of "123456" (this implies that bit 0 is also set). P= Where PINPAD_REQUEST is in the format of: or ,. N for user PIN, M for admin PIN. If M is missing it means M=N. 0 means to force not to use pinpad. */ -- Die Gedanken sind frei. Ausnahmen regelt ein Bundesgesetz. -------------- next part -------------- A non-text attachment was scrubbed... Name: signature.asc Type: application/pgp-signature Size: 227 bytes Desc: not available URL: From faure at kde.org Sun Dec 22 10:11:56 2019 From: faure at kde.org (David Faure) Date: Sun, 22 Dec 2019 10:11:56 +0100 Subject: [PATCH] Add rpath so the Qt libs are found at runtime Message-ID: <2017691.irdbgypaU6@asterixp50> >From 24261594a341d15baca0a19b415be1dab5370f70 Mon Sep 17 00:00:00 2001 From: David Faure Date: Sat, 21 Dec 2019 21:04:35 +0100 Subject: [PATCH] Add rpath so the Qt libs are found at runtime This is necessary when Qt is installed into a custom prefix. --- configure.ac | 1 + m4/qt.m4 | 5 +++++ qt/Makefile.am | 1 + 3 files changed, 7 insertions(+) diff --git a/configure.ac b/configure.ac index 0392203..9daa65d 100644 --- a/configure.ac +++ b/configure.ac @@ -556,6 +556,7 @@ fi AC_SUBST(PINENTRY_QT_CFLAGS) AC_SUBST(PINENTRY_QT_LIBS) +AC_SUBST(PINENTRY_QT_LDFLAGS) AC_SUBST(MOC) dnl If we have come so far, qt pinentry can be build. diff --git a/m4/qt.m4 b/m4/qt.m4 index 35d9ae2..f8ef3f6 100644 --- a/m4/qt.m4 +++ b/m4/qt.m4 @@ -57,6 +57,11 @@ AC_DEFUN([FIND_QT], PINENTRY_QT_CFLAGS="$PINENTRY_QT_CFLAGS -std=c++11" fi + qtlibdir=`"$PKG_CONFIG" --variable libdir Qt5Core` + if test -n "$qtlibdir"; then + PINENTRY_QT_LDFLAGS="$PINENTRY_QT_LDFLAGS -Wl,-rpath \"$qtlibdir\"" + fi + AC_CHECK_TOOL(MOC, moc) AC_MSG_CHECKING([moc version]) mocversion=`$MOC -v 2>&1` diff --git a/qt/Makefile.am b/qt/Makefile.am index 840d0c0..14d9a0f 100644 --- a/qt/Makefile.am +++ b/qt/Makefile.am @@ -41,6 +41,7 @@ AM_CXXFLAGS = $(PINENTRY_QT_CFLAGS) pinentry_qt_LDADD = \ ../pinentry/libpinentry.a $(top_builddir)/secmem/libsecmem.a \ $(COMMON_LIBS) $(PINENTRY_QT_LIBS) $(libcurses) $(LIBCAP) +pinentry_qt_LDFLAGS = $(PINENTRY_QT_LDFLAGS) BUILT_SOURCES = \ pinentryconfirm.moc pinentrydialog.moc pinlineedit.moc -- David Faure, faure at kde.org, http://www.davidfaure.fr Working on KDE Frameworks 5