summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* fips: remove FIPS_STARTUP_ONLY_TEST_CASE macrotmp-fips-redefinitionDaiki Ueno2020-05-201-9/+2
| | | | | | | | The macro was intended to avoid non-recoverable errors during library initialization, but the code path has been removed in commit 3963518d067a64412bbe0aa9ce5fc33ae729c15f. Signed-off-by: Daiki Ueno <dueno@redhat.com>
* fips: make FIPS140-2 mode enablement logic simplerDaiki Ueno2020-05-203-9/+22
| | | | | | | | | | | | | | Previously, to enable the FIPS140-2 mode, both /etc/system-fips and the fips=1 kernel command line need to be set. While this was designed to be consistent, the convention is not well followed by the other crypto libraries and the former tends to be ignored. This aligns the behavior to the latter, i.e. if fips=1 is set, the library enables the FIPS140-2 mode regardless of the existence of /etc/system-fips. Suggested by Alexander Sosedkin. Signed-off-by: Daiki Ueno <dueno@redhat.com>
* Merge branch 'cert-policies' into 'master'Dmitry Baryshkov2020-05-152-4/+30
|\ | | | | | | | | Decode certificate policies OIDs See merge request gnutls/gnutls!1245
| * output: add Russian security class policiesDmitry Baryshkov2020-05-142-2/+10
| | | | | | | | | | | | | | Add Russian Security Class certificate policies (per draft-deremin-rfc4491-bis). Signed-off-by: Dmitry Baryshkov <dbaryshkov@gmail.com>
| * x509: print certificate policiy namesDmitry Baryshkov2020-05-142-2/+20
| | | | | | | | | | | | | | | | Add ability to print names for several pre-defined Certificate policies. Currently the list is populated with anyPolicy from X.509 and CA/B policies. Signed-off-by: Dmitry Baryshkov <dbaryshkov@gmail.com>
* | Merge branch 'pkcs7-attrs' into 'master'Dmitry Baryshkov2020-05-1419-149/+131
|\ \ | |/ | | | | | | PKCS7 attribute printing update See merge request gnutls/gnutls!1246
| * certtool: use gnutls_pkcs7_print_signature_infoDmitry Baryshkov2020-05-141-81/+7
| | | | | | | | | | | | Use new function to remove code duplication. Signed-off-by: Dmitry Baryshkov <dbaryshkov@gmail.com>
| * pkcs7: add function to display signature informationDmitry Baryshkov2020-05-148-0/+42
| | | | | | | | | | | | | | Basically export print_pkcs7_info() in a way usable by external applications. Signed-off-by: Dmitry Baryshkov <dbaryshkov@gmail.com>
| * pkcs7: decode attribute OIDs when printingDmitry Baryshkov2020-05-149-25/+55
| | | | | | | | | | | | | | Try printing symbolic names for well-known OIDs when printing PKCS7 signature info. Signed-off-by: Dmitry Baryshkov <dbaryshkov@gmail.com>
| * x509: generify oid to str conversionsDmitry Baryshkov2020-05-142-43/+27
| | | | | | | | | | | | | | Make oid to name conversion functions generic enough by allowing caller to specify a pointer to OID table. Signed-off-by: Dmitry Baryshkov <dbaryshkov@gmail.com>
* | Merge branch 'tmp-fips-leftover' into 'master'Daiki Ueno2020-05-141-4/+33
|\ \ | |/ |/| | | | | fips: leftover fixes See merge request gnutls/gnutls!1243
| * nettle: disable RSA blinding in FIPS selfteststmp-fips-leftoverDaiki Ueno2020-05-051-4/+33
| | | | | | | | | | | | | | | | Nettle's RSA signing, encryption and decryption functions still require randomness for blinding, so fallback to use a fixed buffer in selftests where entropy might not be available. Signed-off-by: Daiki Ueno <dueno@redhat.com>
* | Merge branch 'aesni-xts' into 'master'Daiki Ueno2020-05-085-1/+194
|\ \ | | | | | | | | | | | | accelerated: use AES-NI for AES-XTS when available See merge request gnutls/gnutls!1244
| * | accelerated: use AES-NI for AES-XTS when availableAnderson Toshiyuki Sasaki2020-05-074-1/+186
| | | | | | | | | | | | | | | | | | | | | This introduces a wrapper for the CRYPTOGAMS AES-XTS implementation already present in the generated assembly code. Signed-off-by: Anderson Toshiyuki Sasaki <ansasaki@redhat.com>
| * | benchmark: enable AES-XTS cipherAnderson Toshiyuki Sasaki2020-05-061-0/+8
| |/ | | | | | | Signed-off-by: Anderson Toshiyuki Sasaki <ansasaki@redhat.com>
* | Merge branch 'cli-wait-resumption' into 'master'Daiki Ueno2020-05-082-6/+21
|\ \ | |/ |/| | | | | gnutls-cli: Add option to wait longer for resumption data See merge request gnutls/gnutls!1232
| * gnutls-cli: Add option to wait for resumption dataAnderson Toshiyuki Sasaki2020-05-072-6/+21
|/ | | | | | | | | | | | | | This introduces the --waitresumption command line option which makes the client to wait for the resumption data until a ticket is received under TLS1.3. The client will block if no ticket is received. The new option has no effect if the option --resume is not provided. This is useful to force the client to wait for the resumption data when the server takes long to send the ticket, allowing the session resumption to be tested. This is a common scenario in CI systems where the testing machines have limited resources. Signed-off-by: Anderson Toshiyuki Sasaki <ansasaki@redhat.com>
* Merge branch 'tmp-siv' into 'master'Dmitry Baryshkov2020-05-0419-1006/+396
|\ | | | | | | | | | | | | nettle: expose SIV-CMAC through the AEAD interface Closes #974 and #463 See merge request gnutls/gnutls!1238
| * nettle: expose SIV-CMAC through the AEAD interfaceDaiki Ueno2020-05-047-7/+223
| | | | | | | | | | | | | | | | | | This adds a couple of new cipher algorithms GNUTLS_CIPHER_AES_128_SIV and GNUTLS_CIPHER_AES_256_SIV, exposing nettle_siv_cmac_aes{128,256}* functions. Note that they can only used with the AEAD interface and authentication tags are prepended (not appended) to the ciphertext. Signed-off-by: Daiki Ueno <ueno@gnu.org>
| * nettle: vendor in SIV-CMAC implementationDaiki Ueno2020-05-043-1/+32
| | | | | | | | Signed-off-by: Daiki Ueno <ueno@gnu.org>
| * nettle: avoid manual backports of CFB8, CMAC, and XTSDaiki Ueno2020-05-0412-980/+124
| | | | | | | | Signed-off-by: Daiki Ueno <ueno@gnu.org>
| * nettle: rename import-chacha-from-nettle.sh to import-from-nettle.shDaiki Ueno2020-05-044-16/+16
| | | | | | | | | | | | This script will handle other backports except ECC as well. Signed-off-by: Daiki Ueno <ueno@gnu.org>
| * configure.ac: fix broken nettle_cfb8_decrypt detectionDaiki Ueno2020-05-041-3/+2
| | | | | | | | | | | | | | | | | | | | Given the fixed version of the function will be part of Nettle 3.6, use pkg-config --atleast-version instead of a manually comparison of the Nettle version. Fixes #974. Signed-off-by: Daiki Ueno <ueno@gnu.org>
* | Merge branch 'tmp-reproducible-build' into 'master'Tim Rühsen2020-05-043-6/+7
|\ \ | |/ |/| | | | | | | | | New make target 'update-copyright-year' Closes #980 See merge request gnutls/gnutls!1241
| * New make target 'update-copyright-year'tmp-reproducible-buildTim Rühsen2020-05-013-6/+7
| | | | | | | | | | | | | | | | | | | | | | | | We don't want to automatically update the copyright year as this prevents reproducible builds. Instead, 'make update-copyright-year' has to be executed at the start of each new year and the changes have to be pushed. Closes #980 Signed-off-by: Tim Rühsen <tim.ruehsen@gmx.de>
* | Merge branch 'tmp-reproducible-sig-doc' into 'master'Daiki Ueno2020-05-041-3/+6
|\ \ | | | | | | | | | | | | | | | | | | doc: expand GNUTLS_PRIVKEY_FLAG_REPRODUCIBLE description on RSA-PSS [ci skip] Closes #953 See merge request gnutls/gnutls!1242
| * | doc: expand GNUTLS_PRIVKEY_FLAG_REPRODUCIBLE description on RSA-PSS [ci skip]tmp-reproducible-sig-docDaiki Ueno2020-04-301-3/+6
| |/ | | | | | | | | | | | | | | For RSA-PSS, this flag alone doens't fully enable reproducible signatures and the user needs to indicate the fact that a zero-length salt is used through SPKI upon verification. Signed-off-by: Daiki Ueno <ueno@gnu.org>
* | Merge branch 'tmp-nettle-vko' into 'master'Dmitry Baryshkov2020-04-3010-122/+40
|\ \ | |/ |/| | | | | gost: use gostdsa-vko from nettle 3.6rc2 See merge request gnutls/gnutls!1239
| * tests/prime-check: don't include gmp.hDmitry Baryshkov2020-04-301-1/+0
| | | | | | | | | | | | | | | | Do not include gmp.h header, <nettle/bignum.h> conflicts with it in mini-gmp configuration and includes this header on it's own in non-mini-gmp config. Signed-off-by: Dmitry Baryshkov <dbaryshkov@gmail.com>
| * tests/srp: increase timeoutsDmitry Baryshkov2020-04-301-2/+2
| | | | | | | | | | | | | | SRP test times out if running on the GitLab CI with mini-gmp version of Nettle. Increase timeouts to let the test pass. Signed-off-by: Dmitry Baryshkov <dbaryshkov@gmail.com>
| * CI: add nettle-mini-gmp testDmitry Baryshkov2020-04-301-0/+32
| | | | | | | | | | | | | | Wget/Wget2 OSS-Fuzz builders use mini-gmp version of nettle. Check that we do not break them occasionally. Signed-off-by: Dmitry Baryshkov <dbaryshkov@gmail.com>
| * gost: use gostdsa-vko from nettle 3.6rc3Dmitry Baryshkov2020-04-285-118/+3
| | | | | | | | | | | | | | Now as we have upgraded Nettle to 3.6rc3 (which includes gostdsa_vko), use this function from imported nettle sources. Signed-off-by: Dmitry Baryshkov <dbaryshkov@gmail.com>
| * nettle: update imported source to nettle 3.6rc3Dmitry Baryshkov2020-04-283-1/+3
|/ | | | | | | | Update imported nettle version to 3.6rc3. This will bring in updated gmp-glue code and a possiblity to use gostdsa-vko imported from nettle sources. Signed-off-by: Dmitry Baryshkov <dbaryshkov@gmail.com>
* Merge branch 'tmp-ext-name' into 'master'Daiki Ueno2020-04-249-0/+50
|\ | | | | | | | | gnutls_session_ext_register: keep track of extension name See merge request gnutls/gnutls!1224
| * gnutls_session_ext_register: keep track of extension nametmp-ext-nameDaiki Ueno2020-04-213-0/+12
| | | | | | | | | | | | | | | | | | | | | | Previously it discarded the name argument, and that was making the debug output awkward, e.g., running tests/tls-session-ext-register -v: client|<4>| EXT[0x9cdc20]: Preparing extension ((null)/242) for 'client hello' client|<4>| EXT[0x9cdc20]: Preparing extension ((null)/241) for 'client hello' client|<4>| EXT[0x9cdc20]: Sending extension (null)/241 (2 bytes) Signed-off-by: Daiki Ueno <dueno@redhat.com>
| * gnutls_ext_get_name2: new functionDaiki Ueno2020-04-217-0/+38
| | | | | | | | | | | | | | | | This adds a generalized version of gnutls_ext_get_name, which can retrieve the name of the extension, even if it is registered per session. Signed-off-by: Daiki Ueno <dueno@redhat.com>
* | Merge branch 'tmp-check-soname' into 'master'Daiki Ueno2020-04-244-6/+53
|\ \ | | | | | | | | | | | | fips: check library soname during configure See merge request gnutls/gnutls!1231
| * | fips: check library soname during configuretmp-check-sonameDaiki Ueno2020-04-244-6/+53
|/ / | | | | | | | | | | | | | | | | | | | | | | Previously, we hard-coded the sonames of linked libraries for FIPS integrity checking. That required downstream packagers to manually adjust the relevant code in lib/fips.c, when a new interface version of the dependent libraries (nettle, gmp) becomes available and linked to libgnutls. This patch automates that process with the configure script. Signed-off-by: Daiki Ueno <dueno@redhat.com>
* | Merge branch 'tmp-update-gostdsa-vko' into 'master'Dmitry Baryshkov2020-04-214-29/+59
|\ \ | |/ |/| | | | | gost: update gostdsa_vko to follow Nettle See merge request gnutls/gnutls!1237
| * gost: update gostdsa_vko to follow NettleDmitry Baryshkov2020-04-214-29/+59
|/ | | | | | Update gostdsa_vko() following changes going to be accepted into Nettle. Signed-off-by: Dmitry Baryshkov <dbaryshkov@gmail.com>
* Merge branch 'tmp-no-auto-send-ticket' into 'master'Daiki Ueno2020-04-205-4/+326
|\ | | | | | | | | handshake-tls13: add session flag to disable sending session tickets See merge request gnutls/gnutls!1234
| * handshake-tls13: add session flag to disable sending session ticketstmp-no-auto-send-ticketDaiki Ueno2020-04-135-4/+326
| | | | | | | | | | | | | | | | | | While GnuTLS by default implicitly sends NewSessionTicket during handshake, application protocols like QUIC set a clear boundary between "in handshake" and "post handshake", and NST must be sent in the post handshake state. Signed-off-by: Daiki Ueno <dueno@redhat.com>
* | Merge branch 'tmp-fix-ecc-freebsd' into 'master'Dmitry Baryshkov2020-04-191-7/+15
|\ \ | | | | | | | | | | | | build: attempt to fix build issues on FreeBSD See merge request gnutls/gnutls!1236
| * | build: attempt to fix build issues on FreeBSDtmp-fix-ecc-freebsdDmitry Baryshkov2020-04-161-7/+15
| | | | | | | | | | | | | | | | | | | | | BSD sed does not like \n and \0 in string substitution. Workaround this by using sed magic. Signed-off-by: Dmitry Baryshkov <dbaryshkov@gmail.com>
* | | Merge branch 'tmp-xts-ig-a9' into 'master'Daiki Ueno2020-04-191-4/+48
|\ \ \ | |/ / |/| | | | | | | | xts: check key block according to FIPS-140-2 IG A.9 See merge request gnutls/gnutls!1233
| * | xts: check key blocks according to FIPS-140-2 IG A.9tmp-xts-ig-a9Daiki Ueno2020-04-141-4/+48
| | | | | | | | | | | | | | | | | | | | | | | | The implementation guidance suggests that a check of key1 != key2 should be done at any place before the keys are used: https://csrc.nist.gov/CSRC/media/Projects/Cryptographic-Module-Validation-Program/documents/fips140-2/FIPS1402IG.pdf Signed-off-by: Daiki Ueno <dueno@redhat.com>
* | | Merge branch 'no-nettle-internal' into 'master'Dmitry Baryshkov2020-04-1531-5069/+499
|\ \ \ | |/ / |/| | | | | | | | Stop using Nettle and Hogweed internal symbols See merge request gnutls/gnutls!1235
| * | gitlab CI: when calling cppcheck ignore lib/nettle/ecc rather than ↵Dmitry Baryshkov2020-04-152-4/+12
| | | | | | | | | | | | | | | | | | lib/nettle/curve448 Signed-off-by: Dmitry Baryshkov <dbaryshkov@gmail.com>
| * | gitlab-ci: add test for usage of nettle/hogweed internal symbolsDmitry Baryshkov2020-04-141-0/+1
| | | | | | | | | | | | | | | | | | Check that GnuTLS does not depend on Nettle/Hogweed internal symbols. Signed-off-by: Dmitry Baryshkov <dbaryshkov@gmail.com>
| * | nettle: vendor in poly1305 codeDmitry Baryshkov2020-04-142-2/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | Nettle's poly1305 code ended up with internal symbol _poly1305_block in public header. This causes issues on Nettle version changes. Since those symbols are going to become nettle-internal, vendor in relevant source file. Signed-off-by: Dmitry Baryshkov <dbaryshkov@gmail.com>