]>
git.ipfire.org Git - thirdparty/nettle.git/log
Niels Möller [Mon, 30 Nov 2020 14:11:47 +0000 (15:11 +0100)]
Delete name mangling of internal umac symbols
Niels Möller [Mon, 30 Nov 2020 14:03:20 +0000 (15:03 +0100)]
Delete name mangling of internal sha3 symbols
Niels Möller [Mon, 30 Nov 2020 13:55:06 +0000 (14:55 +0100)]
Delete name mangling of internal salsa20 symbols
Niels Möller [Mon, 30 Nov 2020 13:49:17 +0000 (14:49 +0100)]
Delete name mangling of internal poly1305 symbols
Niels Möller [Mon, 30 Nov 2020 13:44:24 +0000 (14:44 +0100)]
Delete name mangling of internal gost symbols
Niels Möller [Mon, 30 Nov 2020 12:44:17 +0000 (13:44 +0100)]
Delete name mangling of internal Chacha symbols
Niels Möller [Mon, 30 Nov 2020 12:06:37 +0000 (13:06 +0100)]
Delete name mangling of internal _nettle_ctr_crypt16 function
Niels Möller [Mon, 30 Nov 2020 12:04:11 +0000 (13:04 +0100)]
Delete name mangling of internal _nettle_dsa_hash function
Niels Möller [Mon, 30 Nov 2020 11:14:40 +0000 (12:14 +0100)]
Delete name mangling of internal Camellia symbols
Niels Möller [Mon, 30 Nov 2020 11:10:48 +0000 (12:10 +0100)]
Delete name mangling of internal AES symbols
Niels Möller [Sat, 28 Nov 2020 14:49:22 +0000 (15:49 +0100)]
ppc: ChangeLog entry for gcm-hash.asm.
Niels Möller [Sat, 28 Nov 2020 14:45:13 +0000 (15:45 +0100)]
Merge branch 'ppc-gcm' into master-updates
Niels Möller [Sat, 28 Nov 2020 13:24:43 +0000 (14:24 +0100)]
ppc: Use vaddcuw instruction.
Niels Möller [Sat, 28 Nov 2020 13:14:41 +0000 (14:14 +0100)]
Add missing #undef for _chacha_crypt_2core.
Niels Möller [Sat, 28 Nov 2020 11:03:54 +0000 (12:03 +0100)]
Simplify ifdefs in gcm-internal.h
Niels Möller [Sat, 28 Nov 2020 10:54:55 +0000 (11:54 +0100)]
Update run-test script with gmp/mini-gmp changes
Niels Möller [Fri, 27 Nov 2020 15:10:32 +0000 (16:10 +0100)]
Merge branch 'ppc-gcm' into 'ppc-gcm'
Suppress warnings in certain configuration and fix x86_64 build
See merge request nettle/nettle!12
mamonet [Fri, 27 Nov 2020 08:55:34 +0000 (10:55 +0200)]
Suppress warnings in certain configuration and fix x86_64 build
Niels Möller [Fri, 27 Nov 2020 07:17:27 +0000 (08:17 +0100)]
ChangeLog entries
Niels Möller [Fri, 27 Nov 2020 07:16:52 +0000 (08:16 +0100)]
Replace one more conftest use of exit with return.
Niels Möller [Fri, 27 Nov 2020 07:08:20 +0000 (08:08 +0100)]
Merge branch 'aberaud/nettle-m4_gmp_prog_cc_for_build_fix'
Niels Möller [Fri, 27 Nov 2020 06:54:59 +0000 (07:54 +0100)]
Merge branch 'briansmith/nettle-master'
Niels Möller [Thu, 26 Nov 2020 19:07:07 +0000 (20:07 +0100)]
ppc: Enable gcm code in fat builds. Based on patch by Mamone Tarsha.
Niels Möller [Wed, 25 Nov 2020 16:25:05 +0000 (17:25 +0100)]
Merge branch 'ppc-gcm' into 'ppc-gcm'
[PowerPC64] Modify register defines in gcm-hash.asm
See merge request nettle/nettle!10
mamonet [Wed, 25 Nov 2020 15:12:05 +0000 (17:12 +0200)]
[PowerPC64] modify register defines in gcm-hash.asm
Niels Möller [Wed, 25 Nov 2020 14:38:47 +0000 (15:38 +0100)]
ppc: Support big-endian for _chacha_2core.
Niels Möller [Tue, 24 Nov 2020 19:55:51 +0000 (20:55 +0100)]
ppc: Enable _chacha_2core in fat builds.
Niels Möller [Mon, 23 Nov 2020 16:25:19 +0000 (17:25 +0100)]
ppc: Implement _chacha_2core.
* powerpc64/p7/chacha-2core.asm: New file.
Niels Möller [Mon, 23 Nov 2020 16:23:17 +0000 (17:23 +0100)]
Prepare for using assembly function _chacha_2core.
* chacha-crypt.c (_chacha_crypt_2core, _chacha_crypt32_2core): New
variants of chacha_crypt, using _chacha_2core to do two blocks at
a time.
* chacha-internal.h (_chacha_2core, _chacha_2core32): Add declarations.
* configure.ac (asm_nettle_optional_list): Add chacha-2core.asm.
Niels Möller [Sat, 14 Nov 2020 16:32:12 +0000 (17:32 +0100)]
Update invert calls for curve25519_eh_to_x and curve448_eh_to_x
Niels Möller [Sat, 14 Nov 2020 16:31:51 +0000 (17:31 +0100)]
Comment fix.
Niels Möller [Sat, 14 Nov 2020 15:54:45 +0000 (16:54 +0100)]
Improve scratch usage in ecc_mod_inv.
* ecc-mod-inv.c (ecc_mod_inv): Use passed in scratch for all
scratch needs, don't use memory after the result area.
* ecc-ecdsa-sign.c (ecc_ecdsa_sign): Update invert call.
* ecc-ecdsa-verify.c (ecc_ecdsa_verify): Likewise.
* ecc-eh-to-a.c (ecc_eh_to_a): Likewise.
* ecc-j-to-a.c (ecc_j_to_a): Likewise.
* ecc-gostdsa-verify.c (ecc_gostdsa_verify): Likewise.
* ecc-internal.h (ECC_MOD_INV_ITCH, ECC_J_TO_A_ITCH)
(ECC_EH_TO_A_ITCH): Update accordingly, but no change in total
scratch need.
Maamoun TK [Sat, 14 Nov 2020 09:13:35 +0000 (10:13 +0100)]
ppc: Fix table offsets in gcm_hash.
Maamoun TK [Sat, 14 Nov 2020 09:11:14 +0000 (10:11 +0100)]
Indentation fixes.
Niels Möller [Fri, 13 Nov 2020 18:59:36 +0000 (19:59 +0100)]
Generalize ECC_J_TO_A_ITCH.
* ecc-internal.h (ECC_J_TO_A_ITCH): Generalize, and take invert
itch as an argument, similarly to ECC_EH_TO_A_ITCH. Updated all
secp and gost curve definitions to use it.
Maamoun TK [Thu, 12 Nov 2020 16:12:04 +0000 (17:12 +0100)]
ppc: Assembly implementation of gcm_hash.
Niels Möller [Wed, 21 Oct 2020 18:28:29 +0000 (20:28 +0200)]
Optimize modular inversion for secp384r1.
* ecc-secp384r1.c (ecc_secp384r1_inv): New function, modular
inverse using powering.
(_nettle_secp_384r1): Analogous updates. Increases signing
performance roughly 15% on x86_64.
Niels Möller [Tue, 20 Oct 2020 20:27:41 +0000 (22:27 +0200)]
Delete ecc_mod_inv_redc
Niels Möller [Tue, 20 Oct 2020 20:20:02 +0000 (22:20 +0200)]
Optimize modular inversion for secp224r1 and secp256r1
* ecc-secp224r1.c (ecc_secp224r1_inv): New function, modular
inverse using powering.
(_nettle_secp_224r1): Analogous updates. Increases signing
performance roughly 17% on x86_64.
* ecc-secp256r1.c (ecc_secp256r1_inv): New function, modular
inverse using powering.
(_nettle_secp_256r1): Analogous updates. Increases signing
performance roughly 6% on x86_64.
Niels Möller [Mon, 19 Oct 2020 18:12:56 +0000 (20:12 +0200)]
Optimize modular inversion for secp521r1.
* ecc-secp521r1.c (ecc_secp521r1_inv): New function, modular
inverse using powering.
(_nettle_secp_521r1): Analogous updates. Increases signing
performance roughly 15% on x86_64.
Maamoun TK [Tue, 10 Nov 2020 17:55:19 +0000 (19:55 +0200)]
"PowerPC" Detect VSX support on AIX and FreeBSD
Niels Möller [Thu, 15 Oct 2020 20:49:24 +0000 (22:49 +0200)]
Optimize modular inversion for secp192r1.
* ecc-secp192r1.c (ecc_secp192r1_inv): New function, modular
inverse using powering.
(_nettle_secp_192r1): Use it for p.invert, and also update
h_to_a_itch. Increases signing performance roughly 25% on x86_64.
Niels Möller [Thu, 15 Oct 2020 20:43:16 +0000 (22:43 +0200)]
ecc-modinv-test.c: Allow invert function to return a non-canonical representation.
Niels Möller [Mon, 9 Nov 2020 18:32:02 +0000 (19:32 +0100)]
Merge branch 'refactor-ecc-mod' into master-updates
Niels Möller [Sun, 8 Nov 2020 21:39:25 +0000 (22:39 +0100)]
Updated itch macros for ecc point multiplication and signatures
Niels Möller [Sun, 8 Nov 2020 20:58:32 +0000 (21:58 +0100)]
Eliminate one mpn_cnd_swap call in ecc_mul_m.
Niels Möller [Sun, 8 Nov 2020 20:48:10 +0000 (21:48 +0100)]
Reduce scratch need for ecc_mul_m
Niels Möller [Sun, 8 Nov 2020 10:53:56 +0000 (11:53 +0100)]
Reduce scratch need for ecc_add_jjj some more
Niels Möller [Sun, 8 Nov 2020 10:38:13 +0000 (11:38 +0100)]
Reduce scratch need for ecc_add_jja
Niels Möller [Sun, 8 Nov 2020 10:17:20 +0000 (11:17 +0100)]
Reduce scratch need for ecc_add_jjj
Niels Möller [Sat, 7 Nov 2020 10:16:35 +0000 (11:16 +0100)]
Merge branch 'ppc-chacha-core'
Niels Möller [Sat, 7 Nov 2020 10:08:40 +0000 (11:08 +0100)]
ppc: Comment instructions for chacha byte swapping.
Niels Möller [Sat, 7 Nov 2020 09:35:02 +0000 (10:35 +0100)]
ppc: Add altivec detection to fat builds
Niels Möller [Fri, 6 Nov 2020 20:54:51 +0000 (21:54 +0100)]
Comment improvement
Niels Möller [Fri, 6 Nov 2020 20:25:56 +0000 (21:25 +0100)]
Reduce scratch need for ecc_curve448_inv and ecc_curve448_sqrt
After these changes, both curve25519 and curve448 need 4*size for
invert and 6*size for sqrt.
Niels Möller [Fri, 6 Nov 2020 20:13:13 +0000 (21:13 +0100)]
Reduce scratch need for ecc_curve25519_sqrt
Niels Möller [Fri, 6 Nov 2020 18:46:32 +0000 (19:46 +0100)]
Delete unneeded copy in ecc_add_jja.
Niels Möller [Thu, 5 Nov 2020 19:37:11 +0000 (20:37 +0100)]
Reduce scratch need for ecc_dup_jj
Niels Möller [Tue, 3 Nov 2020 21:48:11 +0000 (22:48 +0100)]
Reduce scratch need for ecc_add_thh
Niels Möller [Tue, 3 Nov 2020 21:28:57 +0000 (22:28 +0100)]
Reduce scratch need for ecc_dup_th
Niels Möller [Tue, 3 Nov 2020 21:11:23 +0000 (22:11 +0100)]
Reduce scratch need for ecc_add_ehh
Niels Möller [Tue, 3 Nov 2020 20:55:59 +0000 (21:55 +0100)]
Reduce scratch need for ecc_dup_eh.
Niels Möller [Tue, 3 Nov 2020 19:26:34 +0000 (20:26 +0100)]
Stricter requirements for in-place ecc_add_func.
Niels Möller [Tue, 3 Nov 2020 19:07:48 +0000 (20:07 +0100)]
Delete obsolete comment.
Niels Möller [Tue, 3 Nov 2020 19:05:49 +0000 (20:05 +0100)]
Reduce scratch need for ecc_add_th
Niels Möller [Tue, 3 Nov 2020 18:51:31 +0000 (19:51 +0100)]
Reduce scratch need for ecc_add_eh
Niels Möller [Mon, 2 Nov 2020 20:23:46 +0000 (21:23 +0100)]
Reduce scratch need for ecc_curve25519_sqrt
Niels Möller [Mon, 2 Nov 2020 20:13:45 +0000 (21:13 +0100)]
Reduce scratch need for ecc_curve25519_inv
Niels Möller [Sun, 1 Nov 2020 09:22:48 +0000 (10:22 +0100)]
Separate result area for ecc_mod_mul and ecc_mod_sqr.
* ecc-mod-arith.c (ecc_mod_mul, ecc_mod_sqr): Separate argument
for scratch area, reducing required size of result area. Update
all callers to naïvely keep using result in scratch area.
(ecc_mod_pow_2k, ecc_mod_pow_2k_mul): Simplified, also reducing
required size of result area.
Niels Möller [Sun, 1 Nov 2020 09:21:35 +0000 (10:21 +0100)]
testsuite: Show curve bits in test_ecc_point failure message.
Niels Möller [Sat, 31 Oct 2020 09:28:29 +0000 (10:28 +0100)]
Update ChangeLog.
Niels Möller [Sat, 31 Oct 2020 09:26:16 +0000 (10:26 +0100)]
Update ARM mod and redc functions
Niels Möller [Sat, 31 Oct 2020 09:15:46 +0000 (10:15 +0100)]
Extend ecc-redc-test.
Niels Möller [Sat, 31 Oct 2020 09:14:40 +0000 (10:14 +0100)]
Update x86_64 ecc_secp256r1_redc for separate result argument.
Niels Möller [Fri, 30 Oct 2020 19:40:36 +0000 (20:40 +0100)]
Update x86_64 assembly mod functions
Niels Möller [Fri, 30 Oct 2020 14:01:39 +0000 (15:01 +0100)]
Add separate result argument to all mod functions.
* ecc-internal.h (typedef ecc_mod_func): Add separate result
argument. Updated all C implementations and callers.
Niels Möller [Fri, 30 Oct 2020 13:53:21 +0000 (14:53 +0100)]
Delete testcase, it's invalid with 32-bit limbs.
Niels Möller [Thu, 29 Oct 2020 19:32:02 +0000 (20:32 +0100)]
Simplify ecc_mod, and prepare for separate result argument.
* ecc-mod.c (ecc_mod): More unified handling of final carry
folding. Also eliminates a goto statement.
* testsuite/ecc-mod-test.c (test_fixed): Add another test case
Niels Möller [Thu, 29 Oct 2020 19:04:20 +0000 (20:04 +0100)]
blowfish: Add casts to uint32_t.
Avoids undefined behavior, since shifting an 8-bit value left by 24
bits overflows the range of signed int. Reported by Guido Vranken.
Niels Möller [Wed, 28 Oct 2020 20:48:10 +0000 (21:48 +0100)]
Use GMP functions mpn_cnd_add_n, mpn_cnd_sub_n and mpn_cnd_swap.
Niels Möller [Wed, 14 Oct 2020 18:17:08 +0000 (20:17 +0200)]
Shared implementation of ecc_mod_pow_2k and related functions
Niels Möller [Tue, 13 Oct 2020 19:49:34 +0000 (21:49 +0200)]
Merge branch 'invert-with-redc' into master-updates
Maamoun TK [Mon, 28 Sep 2020 17:26:13 +0000 (19:26 +0200)]
ppc: chacha-core big-endian support
Niels Möller [Fri, 25 Sep 2020 19:06:50 +0000 (21:06 +0200)]
ppc: Add powerpc64/p7 to asm_path.
Niels Möller [Fri, 25 Sep 2020 19:05:48 +0000 (21:05 +0200)]
ppc: Assembly implementation of _chacha_core.
Niels Möller [Fri, 25 Sep 2020 18:59:11 +0000 (20:59 +0200)]
Fix bogus email address in ChangeLog.
Niels Möller [Fri, 25 Sep 2020 17:27:02 +0000 (19:27 +0200)]
gcm: Micro optimized gcm_fill, for big and little endian.
Niels Möller [Thu, 24 Sep 2020 17:53:24 +0000 (19:53 +0200)]
Prefer to use ppc register names, if assembler supports it.
Maamoun TK [Sat, 19 Sep 2020 06:02:17 +0000 (09:02 +0300)]
"PowerPC64" Use same register convention in VSR macro
Maamoun TK [Sat, 19 Sep 2020 05:32:29 +0000 (08:32 +0300)]
"PowerPC64" Use explicit register names
This patch is built upon ppc-m4-macrology.patch. Using explicit register
names is working as expected now.
Niels Möller [Mon, 21 Sep 2020 18:07:10 +0000 (20:07 +0200)]
ppc: Add configure test and macros to replace register names.
* aclocal.m4 (GMP_ASM_POWERPC_R_REGISTERS): New configure test,
adapted from corresponding test in GMP's acinlude.m4.
* configure.ac (ASM_PPC_WANT_R_REGISTERS): New substituted
variable. Set using GMP_ASM_POWERPC_R_REGISTERS, when powerpc64
assembly code is enabled.
* config.m4.in: Substituted here.
* powerpc64/machine.m4: Check ASM_PPC_WANT_R_REGISTERS, and
if needed, replace register names like r0, r1, ... with integers.
* Makefile.in (%.asm): Include m4-utils.m4 for preprocessing of .asm
files, and include config.m4 before machine.m4.
Niels Möller [Mon, 21 Sep 2020 17:18:45 +0000 (19:18 +0200)]
M4 utilities, from GMP.
* m4-utils.m4: New file with m4 utilities, copied from GMP's
mpn/asm-defs.m4.
* Makefile.in (DISTFILES): Add m4-utils.m4.
Adrien Béraud [Sun, 20 Sep 2020 17:35:54 +0000 (19:35 +0200)]
m4: follow GMP changes for GMP_PROG_CC_FOR_BUILD
Niels Möller [Tue, 15 Sep 2020 18:38:32 +0000 (20:38 +0200)]
Add missing file blowfish-internal.h to DISTFILES.
Niels Möller [Tue, 15 Sep 2020 18:36:56 +0000 (20:36 +0200)]
ChangeLog entry for m4 quoting change
Niels Möller [Mon, 14 Sep 2020 14:48:53 +0000 (16:48 +0200)]
Use default m4 quote character in asm files, part 5
Update powerpc64 files.
Niels Möller [Mon, 14 Sep 2020 14:44:11 +0000 (16:44 +0200)]
Use default m4 quote character in asm files, part 4
Update sparc files (32 and 64).
Niels Möller [Mon, 14 Sep 2020 14:36:32 +0000 (16:36 +0200)]
Update x86_64/fat/sha256-compress.asm, overlooked in part 1.
Niels Möller [Mon, 14 Sep 2020 14:33:14 +0000 (16:33 +0200)]
Use default m4 quote character in asm files, part 3
Update x86 files.
Niels Möller [Sun, 13 Sep 2020 18:11:09 +0000 (20:11 +0200)]
Use default m4 quote character in asm files, part 2
Update arm files.