Page MenuHome GnuPG
Feed Advanced Search

Jan 11 2022

Jakuje added a comment to T5512: Implement service indicators.

This is my draft for the FIPS indicator KDF. I think we do not need to keep the original GCRYCTL_FIPS_SERVICE_INDICATOR if we replace it also in the tests. This will also need some tests and documentation update.

Jan 11 2022, 3:46 PM · Feature Request, FIPS, libgcrypt

Jan 10 2022

Jakuje added a comment to T5512: Implement service indicators.

The previous comment should have come to the T5600. Sorry for the noise.

Jan 10 2022, 4:30 PM · Feature Request, FIPS, libgcrypt
Jakuje updated subscribers of T5600: Provide module name/version API for FIPS 140-3.

Sorry for resurrecting the done task, but I got a message from @pmgdeb who noticed there is mismatch between parenthesis in the --with-fips-module-version help string. The attached patch fixes the issue and add proper help text.

Jan 10 2022, 3:41 PM · libgcrypt, FIPS, Bug Report
Jakuje added a comment to T5512: Implement service indicators.

Sorry for resurrecting the done task, but I got a message from @pmgdeb who noticed there is mismatch between parenthesis in the --with-fips-module-version help string. The attached patch fixes the issue and add proper help text.

Jan 10 2022, 9:34 AM · Feature Request, FIPS, libgcrypt

Jan 4 2022

Jakuje added a comment to T5747: Provide a way to request non-FIPS service in FIPS mode.

Thanks. Looks good to me (both merged changes and the above proposal). In addition to the changes proposed above, we certainly need to update the documentation about this, probably also the FSM diagram.

Jan 4 2022, 12:47 PM · Feature Request, FIPS, libgcrypt

Dec 21 2021

Jakuje added a comment to T5692: New entropy gatherer using the genentropy system call..

We talked today about the renaming the current "linux" entropy module to "oldlinux" would make sense.

Dec 21 2021, 5:13 PM · libgcrypt, FIPS
Jakuje created T5747: Provide a way to request non-FIPS service in FIPS mode.
Dec 21 2021, 4:58 PM · Feature Request, FIPS, libgcrypt

Dec 16 2021

Jakuje added a comment to T5636: Run integrity checks + selftests from library constructor in FIPS.

Thank you. Tested locally that it does what it is supposed to do and all tests passed for me as expected.

Dec 16 2021, 6:43 PM · FIPS, libgcrypt, Bug Report
Jakuje added a comment to T5692: New entropy gatherer using the genentropy system call..

Reading through the changes, the content and usage of the getentropy looks good.

Dec 16 2021, 3:58 PM · libgcrypt, FIPS
Jakuje added a comment to T5706: libgcrypt: random: Remove the feature getting randomness from random daemon.

the random daemon is still part of the configure.ac and the undefined _gcry_daemon_initialize_basics() and _gcry_daemon_randomize() is still used under the USE_RANDOM_DAEMON guard in several places. I think at least the following cases should be removed too (or the configure check to be modified to throw error or warning):

Dec 16 2021, 1:38 PM · libgcrypt

Dec 9 2021

Jakuje created T5726: Setting "compliance de-vs" in gpg.conf with libgcrypt 1.9.0 and newer causes confusing error messages.
Dec 9 2021, 5:33 PM · Not A Bug, libgcrypt, gnupg
Jakuje added a comment to T4894: FIPS: RSA/DSA/ECDSA are missing hashing operation.

It turned out that the new *.inp files are not part of the release tarball, which makes the tests from generated tarball fail. The attached patch should fix this issue.

Dec 9 2021, 5:06 PM · FIPS, libgcrypt, Feature Request

Dec 8 2021

Jakuje added a comment to T5710: FIPS: disable DSA for FIPS.

Sorry for the noise. There were couple of other places which I missed initially and which are covered in the v2 patch which follows:

Dec 8 2021, 1:25 PM · FIPS, libgcrypt
Jakuje added a comment to T5710: FIPS: disable DSA for FIPS.

It turns out together with rCe96980022e5e some tests are failing in FIPS mode. The attached patch should handle the failures.

Dec 8 2021, 12:39 PM · FIPS, libgcrypt

Dec 7 2021

Jakuje renamed T5720: The libgpg-error is using old inet_addr() unconditionally from The libgpg-error is using old inet_pton() unconditionally to The libgpg-error is using old inet_addr() unconditionally.
Dec 7 2021, 12:12 PM · gpgrt, Bug Report

Dec 6 2021

Jakuje created T5720: The libgpg-error is using old inet_addr() unconditionally.
Dec 6 2021, 8:54 PM · gpgrt, Bug Report
Jakuje added a comment to T4894: FIPS: RSA/DSA/ECDSA are missing hashing operation.

I have just a note about this issue, that it would be helpful to exercise this new API in some tests. Right now, only the old API is tested.

Dec 6 2021, 12:38 PM · FIPS, libgcrypt, Feature Request
Jakuje added a comment to T5512: Implement service indicators.

It turns out that the asymmetric key operations are not yet properly enforced with the .disabled flag. While the other key crypto usually has some "open" api, where this can be simply captured, the pubkey API has several entry points and the "test_algo" is not enough to check for disabled key types.

Dec 6 2021, 11:56 AM · Feature Request, FIPS, libgcrypt
Jakuje added a comment to T5636: Run integrity checks + selftests from library constructor in FIPS.

Thank you. My local tests (in emulated fips mode and normal mode) do not show any errors with current master branch.

Dec 6 2021, 11:03 AM · FIPS, libgcrypt, Bug Report

Dec 3 2021

Jakuje added a comment to T5645: RSA/DSA keygen modification for FIPS/ACVP testing.

Thanks. I did some git archeology and found the first mention of this in the following commit in 2011 without much details:

Dec 3 2021, 10:21 AM · libgcrypt, FIPS, Bug Report

Dec 2 2021

Jakuje added a comment to T5645: RSA/DSA keygen modification for FIPS/ACVP testing.

Let me get back to this once more as one of the parts for RSA was initially missed:

diff -up libgcrypt-1.8.4/cipher/rsa.c.fips-keygen libgcrypt-1.8.4/cipher/rsa.c
--- libgcrypt-1.8.4/cipher/rsa.c.fips-keygen	2017-11-23 19:16:58.000000000 +0100
+++ libgcrypt-1.8.4/cipher/rsa.c	2019-02-12 14:29:25.630513971 +0100
@@ -696,7 +696,7 @@ generate_x931 (RSA_secret_key *sk, unsig
Dec 2 2021, 4:34 PM · libgcrypt, FIPS, Bug Report
Jakuje created T5714: tests: Do not run tests for algorithms that are not built-in.
Dec 2 2021, 2:21 PM · libgcrypt, Bug Report
Jakuje added a comment to T5523: jitter entropy RNG update.

I went through some more testing and noticed one missing file in the release tarball, that prevents building libgcrypt now. Should be fixed with the attached patch.

Dec 2 2021, 12:32 PM · FIPS, libgcrypt
Jakuje added a comment to T5636: Run integrity checks + selftests from library constructor in FIPS.

I did go through a bit more testing too and the selftests still initialize and use the secure memory (and the t-secmem fails in FIPS mode if we invoke selftests from constructor). Now from run_random_selftests() -> _gcry_random_selftest() -> drbg_healthcheck() -> _gcry_rngdrbg_healthcheck_one(). So this means that we either need to de-initialize secure memory after the constructor selftests or prevent its initialization as I suggested in some of the previous comments.

Dec 2 2021, 12:29 PM · FIPS, libgcrypt, Bug Report

Nov 26 2021

Jakuje added a comment to T5512: Implement service indicators.

I do not like the idea of using the get_config interface for this. It should be easily usable by applications to check for single cipher/mode so int/bool return values would be preferred against the string ones (which are now used in the get_config). I am not sure if getting all the configuration in one string blob would be any use (except for some auditing) either.

Nov 26 2021, 12:22 PM · Feature Request, FIPS, libgcrypt

Nov 23 2021

Jakuje added a comment to T5393: gnupg coverity static analysis reports.

(forgot to upload the patch to the last comment)

Nov 23 2021, 3:59 PM · gnupg (gpg23), Bug Report
Jakuje added a comment to T5393: gnupg coverity static analysis reports.

I am fine with either way. The memcmp variant is probably cleaner to make sure all works as expected in all cases.

Nov 23 2021, 3:59 PM · gnupg (gpg23), Bug Report
Jakuje added a comment to T5636: Run integrity checks + selftests from library constructor in FIPS.

Thank you. Extending the semantics of GCRYCTL_CLOSE_RANDOM_DEVICE sounds good to me. I think the deinit functions were created initially especially not to change the semantics of existing code using GCRYCTL_CLOSE_RANDOM_DEVICE, but I agree that it will probably not be an issue.

Nov 23 2021, 9:59 AM · FIPS, libgcrypt, Bug Report

Nov 16 2021

Jakuje added a comment to T5512: Implement service indicators.

With just implicit indicators, we would have to block all non-approved cipher modes and kdfs including the OCB mode and skcrypt, which would probably make gnupg2 unusable in FIPS mode, which is not our intention.

Nov 16 2021, 1:10 PM · Feature Request, FIPS, libgcrypt

Nov 11 2021

Jakuje added a comment to T5636: Run integrity checks + selftests from library constructor in FIPS.

I just wanted to add one more note that i just found out that the tests --disable-hwf or gcry_control GCRYCTL_DISABLE_HWF have no effect in case the global_init() is called from constructor.

Nov 11 2021, 12:08 PM · FIPS, libgcrypt, Bug Report

Nov 8 2021

Jakuje added a comment to T5512: Implement service indicators.

Thank you for merging the important parts of the patches and implementing similar stuff for DSA. You are right that DSA is supported in the 140-3 specs so it is fine to keep it enabled with the keylength constraints.

Nov 8 2021, 9:02 AM · Feature Request, FIPS, libgcrypt

Nov 5 2021

Jakuje added a comment to T5512: Implement service indicators.

Implicit indicators mean that we need to go through the all algorithms and verify that they work if they have approved key sizes/parameters and do not work when they do not.

Nov 5 2021, 2:27 PM · Feature Request, FIPS, libgcrypt

Nov 3 2021

Jakuje added a comment to T5523: jitter entropy RNG update.

If I read it right, the version 3.1.0 adds the pthread requirement. Using 3.0.2 should be fine for us.

Nov 3 2021, 2:39 PM · FIPS, libgcrypt

Nov 2 2021

Jakuje added a comment to T5636: Run integrity checks + selftests from library constructor in FIPS.

The most of the stuff about boot blocking was discussed in the bug https://bugzilla.redhat.com/show_bug.cgi?id=1569393 (private). There were some bugs in our patches, but also some issue in the kernel that locked the boot process (in FIPS mode).

Nov 2 2021, 9:12 PM · FIPS, libgcrypt, Bug Report

Oct 27 2021

Jakuje closed T5669: Run continuous random test in FIPS mode as Invalid.

OK. Sorry for the noise. I got a clarification that the test is no longer needed so closing this issue.

Oct 27 2021, 11:48 AM · libgcrypt, FIPS, Bug Report

Oct 25 2021

Jakuje added a comment to T5669: Run continuous random test in FIPS mode.

From the FIPS Certs draft for RHEL 8.5, I have the following sentence:

Oct 25 2021, 3:04 PM · libgcrypt, FIPS, Bug Report

Oct 21 2021

Jakuje added a comment to T5636: Run integrity checks + selftests from library constructor in FIPS.

Fair enough. Unfortunately, the separation is not completely clear from the dist git history, so please, excuse any inaccuracies I will provide here. I will try to reference particular bugs so we can get back to them if needed:

Oct 21 2021, 10:06 PM · FIPS, libgcrypt, Bug Report
Jakuje created T5669: Run continuous random test in FIPS mode.
Oct 21 2021, 9:08 PM · libgcrypt, FIPS, Bug Report

Oct 20 2021

Jakuje added a comment to T5665: libgcrypt : Restrict message digest use for FIPS 140-3.

At this moment, we agreed on keeping the current behavior and not allowing the SHA1 for verification either. But we might need to revisit that in the future if this will cause issues. Or we might go the way of switching the service to non-fips if needed, rather than creating some more middle ground.

Oct 20 2021, 4:20 PM · FIPS, Bug Report, libgcrypt
Jakuje added a comment to T5665: libgcrypt : Restrict message digest use for FIPS 140-3.

Thank you for having a look into that. The change looks fine, but I need to get some clarification about what "Legacy use" means for "Digital signature verification" in the Table 8 of https://nvlpubs.nist.gov/nistpubs/SpecialPublications/NIST.SP.800-131Ar2.pdf

Oct 20 2021, 10:34 AM · FIPS, Bug Report, libgcrypt

Oct 19 2021

Jakuje added a comment to T5433: libgcrypt: Do not use SHA1 by default.

Sorry, I was wrong. We don't need any changes.

When using gcry_pk_hash_sign and gcry_pk_hash_verify, approved digest algos are guaranteed when FIPS enabled.

Yes, it's a user of the function who supplies HD (handle for hash). (I had wrong assumption HD could be with non-approved digest algo.) But it is needed for the user to enable the HD and to feed message beforehand. At that stage, non-approved digest algo must fail.

Oct 19 2021, 11:54 AM · FIPS, libgcrypt, Bug Report

Oct 14 2021

Jakuje added a comment to T5617: fips: Check library integrity before running selftests.

OK, let us start discussion by applying the patch first.

I have wondered if introducing another state in FSM would be needed, because:

Oct 14 2021, 6:58 PM · FIPS, libgcrypt, Bug Report

Oct 8 2021

Jakuje added a comment to T5645: RSA/DSA keygen modification for FIPS/ACVP testing.

sorry for a confusion. We do not plan to certify DSA so disregard the second part of the patch.

Oct 8 2021, 4:17 PM · libgcrypt, FIPS, Bug Report
Jakuje created T5645: RSA/DSA keygen modification for FIPS/ACVP testing.
Oct 8 2021, 11:05 AM · libgcrypt, FIPS, Bug Report

Oct 6 2021

Jakuje updated the task description for T5636: Run integrity checks + selftests from library constructor in FIPS.
Oct 6 2021, 4:47 PM · FIPS, libgcrypt, Bug Report

Oct 4 2021

Jakuje created T5636: Run integrity checks + selftests from library constructor in FIPS.
Oct 4 2021, 4:10 PM · FIPS, libgcrypt, Bug Report

Sep 29 2021

Jakuje added a comment to T2385: support more than 1024 fds..

Hi, was there any update on this? I found the following bug [0] in libgcrypt, which we solved [1] with using poll ages ago.

Sep 29 2021, 6:13 PM · gpgrt, Feature Request, gpgme

Sep 24 2021

Jakuje added a comment to T5550: Fix check_binary_integrity.

Thanks. This looks good to me.

Sep 24 2021, 9:30 AM · FIPS, libgcrypt

Sep 22 2021

Jakuje added a comment to T5550: Fix check_binary_integrity.

I tried to generate a tarball from master and I failed to build the hmac256 binary because the hmac256.h was not packaged into the dist tarball in master. If hmac256 should be standalone binary, I propose it should not need have a separate header file:

Sep 22 2021, 4:53 PM · FIPS, libgcrypt
Jakuje created T5617: fips: Check library integrity before running selftests.
Sep 22 2021, 4:37 PM · FIPS, libgcrypt, Bug Report

Sep 17 2021

Jakuje added a comment to T5600: Provide module name/version API for FIPS 140-3.

I have a draft, which results in the following "API" of the name-version:

Sep 17 2021, 6:13 PM · libgcrypt, FIPS, Bug Report
Jakuje added a comment to T5244: libgcrypt: Restrict MD5 use.

I had in my mind something like this:

Sep 17 2021, 3:36 PM · Bug Report, FIPS, libgcrypt

Sep 16 2021

Jakuje added a comment to T5393: gnupg coverity static analysis reports.

We ran the coverity again with the new 2.3.1 release and there are couple of new stuff that I probably missed in the initial review.

Sep 16 2021, 3:36 PM · gnupg (gpg23), Bug Report
Jakuje added a comment to T4894: FIPS: RSA/DSA/ECDSA are missing hashing operation.

Thank you. On the first sight, it looks reasonable, but I would like to experiment with it a bit to see all use cases are covered.

Sep 16 2021, 11:52 AM · FIPS, libgcrypt, Feature Request
Jakuje added a comment to T5520: Fix tests in FIPS mode.

Thanks. I think we are good here. If we will decide to pursuate the brainpool switch, I will open a new issue.

Sep 16 2021, 11:07 AM · FIPS, libgcrypt, Bug Report

Sep 15 2021

Jakuje created T5600: Provide module name/version API for FIPS 140-3.
Sep 15 2021, 4:34 PM · libgcrypt, FIPS, Bug Report
Jakuje added a comment to T5520: Fix tests in FIPS mode.

Oh, my bad. I probably used wrong git command. Uploaded now the patches themselves:

Sep 15 2021, 9:51 AM · FIPS, libgcrypt, Bug Report

Sep 13 2021

Jakuje added a comment to T5520: Fix tests in FIPS mode.

I have one more patch set to improve FIPS testing in test/curves.c. In the past, it was basically skipped altogether in FIPS mode. This implements more fine-grained selection of what is being tested. This is the first part.

Sep 13 2021, 8:53 AM · FIPS, libgcrypt, Bug Report

Sep 6 2021

Jakuje added a comment to T5576: New set of API for public key cryptography.

I added couple of minor comments. I hope they went into somewhere.

Sep 6 2021, 2:58 PM · libgcrypt, Feature Request
Jakuje added a comment to T5520: Fix tests in FIPS mode.

looks good to me. Tested now with master 47e425e07995454573e28c13c08229d2f8a75642 and all tests pass for me in and out of FIPS mode as well as in the "soft" one.

Sep 6 2021, 1:08 PM · FIPS, libgcrypt, Bug Report

Aug 23 2021

Jakuje added a comment to T5523: jitter entropy RNG update.

We should update jitterentropy to 3.0.2 or newer, which should be easier to get through certification, if we will go this way. From FIPS perspective, we should be fine with either going through getrandom only or with jitter entropy, but the bottom-line was that we should probably keep both as we do now.

Aug 23 2021, 12:46 PM · FIPS, libgcrypt
Jakuje added a comment to T5244: libgcrypt: Restrict MD5 use.

From Stephan I got the following response to the allocation handler use case

Aug 23 2021, 12:00 PM · Bug Report, FIPS, libgcrypt

Aug 19 2021

Jakuje added a comment to T5550: Fix check_binary_integrity.

We have the same patch (including the hmac key and we use the switch. The reasoning on our side was to be compatible with fipscheck, but it is no longer used since last year and we use just the hmac256 tool:

Aug 19 2021, 12:52 PM · FIPS, libgcrypt

Aug 18 2021

Jakuje added a comment to T5244: libgcrypt: Restrict MD5 use.

Right. The clarification is that SHA1 itself (for non-security and non-signature use) is still allowed in FIPS mode. But it is not allowed to be used as part of signature schemes of the new API in FIPS mode. The old API, which allows raw signatures without digests, should just fail in FIPS mode too. And the FIPS-compatible gnupg should use the new API too (it would be good to think about this when putting it together).

Aug 18 2021, 7:46 PM · Bug Report, FIPS, libgcrypt
Jakuje added a comment to T5523: jitter entropy RNG update.

For Linux and FIPS, we should be actually fine with using /dev/random or getrandom().

Aug 18 2021, 7:24 PM · FIPS, libgcrypt
Jakuje added a comment to T5540: Update fipsdrv and cavs_driver.pl.

The CAVS driver can be safely removed. The certification goes through the ACVP these days so it does not make sense to keep this.

Aug 18 2021, 12:46 PM · FIPS, libgcrypt
Jakuje created T5559: libksba: possible NULL pointer dereference.
Aug 18 2021, 11:35 AM · libksba, Bug Report

Aug 16 2021

Jakuje added a comment to T5244: libgcrypt: Restrict MD5 use.

I went a bit back to the history to figure out what is the enforced and soft fips mode as it was initially not completely clear to me. For the record, I used the following bug from 9 years ago:

Aug 16 2021, 7:11 PM · Bug Report, FIPS, libgcrypt
Jakuje added a comment to T5520: Fix tests in FIPS mode.

Tested the master on (faked) FIPS and non-FIPS Fedora and I created couple of more changes for master to work in FIPS mode:

Aug 16 2021, 4:16 PM · FIPS, libgcrypt, Bug Report

Aug 5 2021

Jakuje created T5548: pinentry default timeout does not match documentation.
Aug 5 2021, 9:31 AM · Documentation, pinentry, Bug Report

Aug 3 2021

Jakuje added a comment to T4894: FIPS: RSA/DSA/ECDSA are missing hashing operation.

In RHEL, we do not have anything about PCT so the PCT requirement is not completely clear to me: https://git.centos.org/rpms/libgcrypt/blob/c8s/f/SOURCES

Aug 3 2021, 1:33 PM · FIPS, libgcrypt, Feature Request

Jul 13 2021

Jakuje added a comment to T5520: Fix tests in FIPS mode.

I went through the patches above + what I suggested in previous comments, tested everything against both upstream and libgcrypt in Fedora in FIPS mode. There were slight differences, some cases were already fixed in master, some needed to upstream some of our changes, but the result is 10 patches working in both FIPS and non-fips mode, hopefully enough annotated. If not, please, ask for clarifications.

Jul 13 2021, 11:25 PM · FIPS, libgcrypt, Bug Report

Jul 12 2021

Jakuje added a comment to T5512: Implement service indicators.

I went through the OpenSSL drafts. The module boundary in OpenSSL will be separate fips.so object and only non-deprecated functions of OpenSSL 3.0 will be FIPS compliant. There is a global state, that will allow only approved algorithms and modes and there will be API to query the FIPS mode status using OSSL_PARAM_get* functions, but we still have some unknowns so I hope we will know more on the next meeting.

Jul 12 2021, 3:42 PM · Feature Request, FIPS, libgcrypt

Jul 8 2021

Jakuje added a comment to T4873: Enable AES GCM in FIPS mode.

I have couple of references from libssh:

Jul 8 2021, 2:57 PM · FIPS, libgcrypt, Feature Request
Jakuje added a comment to T5521: Use of conscious language.

There is no point in questioning whether a couple of words change racism or any other human problems of these days. It will not.

Jul 8 2021, 10:38 AM · gnupg24, Won't Fix, Feature Request, gnupg (gpg23), libgcrypt
Jakuje added a comment to T5520: Fix tests in FIPS mode.

I was so far testing with changes on top of our patches.

Jul 8 2021, 10:26 AM · FIPS, libgcrypt, Bug Report
Jakuje added a comment to T4873: Enable AES GCM in FIPS mode.

Right. The AES-GCM was not allowed in FIPS mode until recently and I think now it is acceptable only for certain protocols (TLS, SSH), which guarantee that the IV is handled "correctly". As mentioned by gniibe, the requirements is that one should not be able to set IV to any specific value. The IV should be incremented automatically inside of the library (with some mask length + some generator configuration), somehow similarly as it is done with openssl, which would probably requite a new API in libgcrypt.

Jul 8 2021, 10:09 AM · FIPS, libgcrypt, Feature Request

Jul 7 2021

Jakuje created T5521: Use of conscious language.
Jul 7 2021, 5:00 PM · gnupg24, Won't Fix, Feature Request, gnupg (gpg23), libgcrypt
Jakuje added a comment to T5520: Fix tests in FIPS mode.

Thank you for checking and for revised patch. I tested your patch and it works fine for the basic test up until this failure with the crcalgo:

basic: algo 316, crcalgo: 3, gcry_md_open failed: Invalid digest algorithm
basic: algo 317, crcalgo: 3, gcry_md_open failed: Invalid digest algorithm

These are GCRY_MD_SHAKE128 and GCRY_MD_SHAKE256, but the md used here is actually GCRY_MD_RMD160 which is hardcoded and not allowed in FIPS.

Jul 7 2021, 3:15 PM · FIPS, libgcrypt, Bug Report

Jul 6 2021

Jakuje created T5520: Fix tests in FIPS mode.
Jul 6 2021, 12:03 PM · FIPS, libgcrypt, Bug Report

Jun 28 2021

Jakuje created T5512: Implement service indicators.
Jun 28 2021, 12:28 PM · Feature Request, FIPS, libgcrypt

Jun 24 2021

Jakuje created T5508: Allow hardware optimizations in FIPS.
Jun 24 2021, 8:04 PM · FIPS, libgcrypt, Bug Report

Jun 16 2021

Jakuje added a comment to T4894: FIPS: RSA/DSA/ECDSA are missing hashing operation.

In an email from @werner couple days back, I got a suggestion that we could use hashing tied to the context, rather than this one-shot call tied only to digests. I circled back this suggestion to Stephan and he confirmed that it should be fine from the FIPS point of view so I am posting the suggested API here too:

ctx = gcry_pk_new (someflags)
md = gcry_md_open (...)
gcry_ctx_set_md (md);
gcry_pk_sign_ext (ctx, result, data, skey)
[...]
gcry_ctx_release (ctx);
Jun 16 2021, 10:52 AM · FIPS, libgcrypt, Feature Request

May 24 2021

Jakuje created T5449: gnupg: Do not use SHA1 by default.
May 24 2021, 4:46 PM · gnupg24, gnupg (gpg23), Bug Report
Jakuje renamed T5433: libgcrypt: Do not use SHA1 by default from Do not use SHA1 by default to libgcrypt: Do not use SHA1 by default.
May 24 2021, 4:38 PM · FIPS, libgcrypt, Bug Report
Jakuje added a comment to T5393: gnupg coverity static analysis reports.

Thank you. I checked what was missing and all looks good. But do not understand why the last gpgsplit xfree was not applied. We are leaving a block where this variable is dynamically allocated so even without error we need to free it.

May 24 2021, 4:36 PM · gnupg (gpg23), Bug Report

May 11 2021

Jakuje created T5434: gpg-agent should not use MD5 fingerprint for ssh keys.
May 11 2021, 2:30 PM · gnupg, Bug Report
Jakuje created T5433: libgcrypt: Do not use SHA1 by default.
May 11 2021, 1:58 PM · FIPS, libgcrypt, Bug Report

May 3 2021

Jakuje added a comment to T1333: GPGSM rejects OCSP responder cert without keyUsage.

Thank you for taking time to look into that. There are couple of issues in the CAcert bug tracker talking about the same issue but if, (I see right), the certs still miss the usage flags:

May 3 2021, 3:07 PM · Bug Report, gnupg
Jakuje updated subscribers of T1333: GPGSM rejects OCSP responder cert without keyUsage.

Any chance looking into this @werner?

May 3 2021, 10:29 AM · Bug Report, gnupg

Apr 28 2021

Jakuje added a comment to T5244: libgcrypt: Restrict MD5 use.

The patch references the following bug:

Apr 28 2021, 5:45 PM · Bug Report, FIPS, libgcrypt

Apr 20 2021

Jakuje added a comment to T5395: libksba coverity static analysis reports.

I can't see null pointer de-reference (you claimed) in [4/5].
Could you please elaborate?

Apr 20 2021, 9:16 AM · libksba, Bug Report

Apr 15 2021

Jakuje added a comment to T5384: pinentry coverity static analysis reports.

I hope last amendment is the following, which can happen if the tty can be opened only for reading but not for writing:

--- a/tty/pinentry-tty.c
+++ b/tty/pinentry-tty.c
@@ -583,7 +583,8 @@ tty_cmd_handler (pinentry_t pinentry)
   if (pinentry->ttyname)
     {
       fclose (ttyfi);
-      fclose (ttyfo);
+      if (ttyfo)
+        fclose (ttyfo);
     }
Apr 15 2021, 11:43 AM · pinentry, Bug Report

Apr 14 2021

Jakuje reopened T5384: pinentry coverity static analysis reports as "Open".

Thank you for applying the provided changes!

Apr 14 2021, 5:44 PM · pinentry, Bug Report
Jakuje created T5395: libksba coverity static analysis reports.
Apr 14 2021, 10:46 AM · libksba, Bug Report

Apr 13 2021

Jakuje added a comment to T5393: gnupg coverity static analysis reports.

Regarding the identical branches thing: This is on purpose. The function works closely together with another one which will then BUG() out. @Jakuje: If you know some meta comment to attribute this, please let me know.

Apr 13 2021, 9:05 PM · gnupg (gpg23), Bug Report
Jakuje added a comment to T5393: gnupg coverity static analysis reports.

There is couple of issues that I did not want to propose a patch for, but might require some attention:

Error: IDENTICAL_BRANCHES (CWE-398): [#def28] [important]
gnupg-2.3.0/common/tlv-builder.c:353: identical_branches: The same code is executed regardless of whether "tag < 31" is true, because the 'then' and 'else' branches are identical. Should one of the branches be modified, or the entire 'if' statement replaced?
#  351|     (void)constructed;  /* Not used, but passed for uniformity of such calls.  */
#  352|   
#  353|->   if (tag < 0x1f)
#  354|       {
#  355|         buflen++;

There are also couple of reports about the function default_homedir(), which is supposed to return const char * but in reality, it sometimes allocates memory while callers do not expect it so they do not free:

Error: RESOURCE_LEAK (CWE-772): [#def11]
gnupg-2.2.27/common/homedir.c:477: alloc_fn: Storage is returned from allocation function "default_homedir".
gnupg-2.2.27/common/homedir.c:477: var_assign: Assigning: "newdir" = storage returned from "default_homedir()".
gnupg-2.2.27/common/homedir.c:488: noescape: Resource "newdir" is not freed or pointed-to in "make_absfilename".
gnupg-2.2.27/common/homedir.c:490: leaked_storage: Returning without freeing "newdir" leaks the storage that it points to.
#  488|     the_gnupg_homedir = make_absfilename (newdir, NULL);;
#  489|     xfree (tmp);
#  490|-> }
#  491|   
#  492|
Apr 13 2021, 6:47 PM · gnupg (gpg23), Bug Report
Jakuje added a comment to T5393: gnupg coverity static analysis reports.

Thank you. The initial run was against olderer version of gnupg (and had one issue in g10/keyedit.c -- see the new patch with fixup). Now I ran it against the version 2.3 and there are couple of more issues to be fixed (rebased on top of already applied changes and the previous commits).

Apr 13 2021, 3:44 PM · gnupg (gpg23), Bug Report

Apr 12 2021

Jakuje added a comment to T5389: gnupg 2.3 missing libassuan include directory in CFLAGS for several targets.

(FYI I did not notice any other errors with 2.3 so far)

Apr 12 2021, 6:25 PM · gnupg (gpg23), Bug Report
Jakuje created T5393: gnupg coverity static analysis reports.
Apr 12 2021, 5:59 PM · gnupg (gpg23), Bug Report