Page MenuHome GnuPG
Feed Advanced Search

Sep 3 2019

jukivili closed T4530: libgcrypt: POWER SHA-2 Vector Acceleration as Resolved.

PowerPC SHA-256 and SHA-512 implementations with little bit more tuning committed. Most notably, SHA-512 on POWER8 now gives similar performance to OpenSSL:

Sep 3 2019, 9:39 PM · libgcrypt, Feature Request
jukivili closed T4530: libgcrypt: POWER SHA-2 Vector Acceleration, a subtask of T4531: PowerPC performance improvements, as Resolved.
Sep 3 2019, 9:39 PM
jukivili committed rCe19dc973bc8e: Add SHA-256 implementations for POWER8 and POWER9 (authored by jukivili).
Add SHA-256 implementations for POWER8 and POWER9
Sep 3 2019, 9:34 PM
jukivili committed rC93632f1adf57: Add SHA-512 implementations for POWER8 and POWER9 (authored by jukivili).
Add SHA-512 implementations for POWER8 and POWER9
Sep 3 2019, 9:34 PM
jukivili committed rC418179593080: hwf-ppc: add detection for PowerISA 3.00 (authored by jukivili).
hwf-ppc: add detection for PowerISA 3.00
Sep 3 2019, 9:34 PM

Aug 31 2019

jukivili reassigned T4630: libgcrypt: POWER GHASH Vector Acceleration from jukivili to slandden.
Aug 31 2019, 11:13 AM · Feature Request, libgcrypt
jukivili added a comment to T4530: libgcrypt: POWER SHA-2 Vector Acceleration.

Patches send to mailing list:
https://lists.gnupg.org/pipermail/gcrypt-devel/2019-August/004800.html
https://lists.gnupg.org/pipermail/gcrypt-devel/2019-August/004799.html

Aug 31 2019, 2:07 AM · libgcrypt, Feature Request
jukivili closed T4529: libgcrypt: POWER AES Vector Acceleration, a subtask of T4531: PowerPC performance improvements, as Resolved.
Aug 31 2019, 1:38 AM
jukivili closed T4529: libgcrypt: POWER AES Vector Acceleration as Resolved.
Aug 31 2019, 1:38 AM · libgcrypt, Feature Request

Aug 26 2019

jukivili committed rC81d555d34730: rijndael-ppc: add bulk modes for CBC, CFB, CTR and XTS (authored by jukivili).
rijndael-ppc: add bulk modes for CBC, CFB, CTR and XTS
Aug 26 2019, 7:04 PM
jukivili committed rC821602c60c7d: rijndael-ppc: enable PowerPC AES-OCB implemention (authored by jukivili).
rijndael-ppc: enable PowerPC AES-OCB implemention
Aug 26 2019, 7:04 PM
jukivili committed rCbd1367bb6078: rijndael-ppc: add bulk mode for ocb_auth (authored by jukivili).
rijndael-ppc: add bulk mode for ocb_auth
Aug 26 2019, 7:04 PM
jukivili committed rC9dca65ef71b4: rijndael-ppc: add key setup and enable single block PowerPC AES (authored by jukivili).
rijndael-ppc: add key setup and enable single block PowerPC AES
Aug 26 2019, 7:04 PM
jukivili committed rC92f38a619b1c: rijndael/ppc: implement single-block mode, and implement OCB block cipher (authored by slandden).
rijndael/ppc: implement single-block mode, and implement OCB block cipher
Aug 26 2019, 7:04 PM
jukivili committed rCb4a3c76fabfa: hwf: add detection of PowerPC hardware features (authored by slandden).
hwf: add detection of PowerPC hardware features
Aug 26 2019, 7:04 PM
jukivili committed rCcc13336f6289: Register DCO for Shawn Landden (authored by jukivili).
Register DCO for Shawn Landden
Aug 26 2019, 7:04 PM

Aug 25 2019

jukivili claimed T4630: libgcrypt: POWER GHASH Vector Acceleration.

I'll start working on PowerPC GHASH implementation in September after SHA2 is done.

Aug 25 2019, 6:12 PM · Feature Request, libgcrypt
jukivili claimed T4530: libgcrypt: POWER SHA-2 Vector Acceleration.

I'll start working on new PowerPC SHA2 implementations for libgcrypt in coming weeks.

Aug 25 2019, 6:11 PM · libgcrypt, Feature Request
jukivili claimed T4529: libgcrypt: POWER AES Vector Acceleration.

Patches for PowerPC AES acceleration sent to mailing-list, based partly on initial work by Shawn Landden (@slandden): https://lists.gnupg.org/pipermail/gcrypt-devel/2019-August/004788.html

Aug 25 2019, 6:10 PM · libgcrypt, Feature Request

Jul 18 2019

jukivili committed rC320ed4796303: Fix use of AVX instruction in SHA1/SSSE3 assembly (authored by jukivili).
Fix use of AVX instruction in SHA1/SSSE3 assembly
Jul 18 2019, 7:57 PM

Jul 8 2019

jukivili added a comment to D494: rijndael/ppc: re-implement single-block mode, and implement OCB block cipher.
In D494#4450, @slandden wrote:

I will leave these in the main file, as they might benefit from "static", and I do not want to rely on LTO for that.

Jul 8 2019, 9:21 PM
jukivili edited reviewers for D494: rijndael/ppc: re-implement single-block mode, and implement OCB block cipher, added: jukivili; removed: jwilk.
Jul 8 2019, 4:02 PM
jukivili added a comment to D494: rijndael/ppc: re-implement single-block mode, and implement OCB block cipher.

Thanks. I really like this Altivec intrinsic approach. I might reimplement rest of the bulk block cipher functions this way later (if I ever get PPC HW access).

Jul 8 2019, 4:02 PM
jukivili added a task to D490: PowerPC optimized routines for AES and SHA2 using PowerISA 2.07 instructions.: T4530: libgcrypt: POWER SHA-2 Vector Acceleration.
Jul 8 2019, 2:57 PM
jukivili added a revision to T4530: libgcrypt: POWER SHA-2 Vector Acceleration: D490: PowerPC optimized routines for AES and SHA2 using PowerISA 2.07 instructions..
Jul 8 2019, 2:57 PM · libgcrypt, Feature Request
jukivili added a revision to T4529: libgcrypt: POWER AES Vector Acceleration: D490: PowerPC optimized routines for AES and SHA2 using PowerISA 2.07 instructions..
Jul 8 2019, 2:57 PM · libgcrypt, Feature Request
jukivili added a task to D490: PowerPC optimized routines for AES and SHA2 using PowerISA 2.07 instructions.: T4529: libgcrypt: POWER AES Vector Acceleration.
Jul 8 2019, 2:57 PM
jukivili added a task to D493: AES block modes for PPC: T4529: libgcrypt: POWER AES Vector Acceleration.
Jul 8 2019, 2:55 PM
jukivili added revisions to T4529: libgcrypt: POWER AES Vector Acceleration: D493: AES block modes for PPC, D494: rijndael/ppc: re-implement single-block mode, and implement OCB block cipher.
Jul 8 2019, 2:55 PM · libgcrypt, Feature Request
jukivili added a task to D494: rijndael/ppc: re-implement single-block mode, and implement OCB block cipher: T4529: libgcrypt: POWER AES Vector Acceleration.
Jul 8 2019, 2:55 PM
jukivili added a parent task for T4531: PowerPC performance improvements: T4460: libgcrypt performance TODOs.
Jul 8 2019, 2:52 PM
jukivili added a subtask for T4460: libgcrypt performance TODOs: T4531: PowerPC performance improvements.
Jul 8 2019, 2:52 PM · libgcrypt

Jun 21 2019

jukivili added inline comments to rCa658c9ccc2c7: ecc: Improve new ECDH API..
Jun 21 2019, 10:09 AM

Jun 20 2019

jukivili added a comment to T4293: Add dedicated X25519 function to Libcgrypt .

Would it be good to have interface for getting buffer size for different algos in this new interface? ... Similar as 'gcry_md_get_algo_dlen' for digest results.

Jun 20 2019, 11:37 AM · Restricted Project, libgcrypt

Jun 8 2019

jukivili added a comment to D493: AES block modes for PPC.

Have you considered working on bulk CFB-decryption and OCB-enc/dec? Those are the block cipher modes used by GnuPG (OCB is new AEAD mode to be used starting with 2.3).

Jun 8 2019, 3:27 PM

Jun 6 2019

jukivili added a comment to D493: AES block modes for PPC.

I've added few new CTR test vectors to tests/basic.c for checking 32-bit and 64-bit carry overflow cases, rC971d372f512ff6805d5b8b54e9ac1446f3f66643

Jun 6 2019, 7:57 PM
jukivili committed rCa4c561aab101: GCM: move look-up table to .data section and unshare between processes (authored by jukivili).
GCM: move look-up table to .data section and unshare between processes
Jun 6 2019, 6:28 PM
jukivili committed rC971d372f512f: tests/basic: add CTR mode carry overflow test vectors (authored by jukivili).
tests/basic: add CTR mode carry overflow test vectors
Jun 6 2019, 6:28 PM
jukivili committed rCdaedbbb5541c: AES: move look-up tables to .data section and unshare between processes (authored by jukivili).
AES: move look-up tables to .data section and unshare between processes
Jun 6 2019, 6:28 PM

Jun 5 2019

jukivili added a comment to D493: AES block modes for PPC.

ECB is not bulk optimized in libgcrypt. I've send patches to add this in past but this was rejected on grounds that ECB is insecure and should not be used.

Jun 5 2019, 8:07 AM

May 24 2019

jukivili added a comment to D491: Support for PowerPC's AES acceleration..

Consider using tests/bench-slope to get cycles/byte results so they can be compared with https://github.com/dot-asm/cryptogams/blob/master/ppc/aesp8-ppc.pl#L34

May 24 2019, 8:44 AM

May 19 2019

jukivili committed rCc6ffa216976d: cipher/Makefile.am: add '-fcoverage-*' to instrumentation munging (authored by jukivili).
cipher/Makefile.am: add '-fcoverage-*' to instrumentation munging
May 19 2019, 1:41 PM

May 16 2019

jukivili committed rCdad94696d9c4: md: fix UBSAN warning (authored by jukivili).
md: fix UBSAN warning
May 16 2019, 5:13 PM
jukivili committed rC3c7ff6bd1c40: tests/basic: fix signed interger overflow (authored by jukivili).
tests/basic: fix signed interger overflow
May 16 2019, 5:13 PM
jukivili committed rCd24dae4538db: Disable instrumentation on mixed Intel SSE C/assembly implementations (authored by jukivili).
Disable instrumentation on mixed Intel SSE C/assembly implementations
May 16 2019, 5:13 PM
jukivili committed rCbe567cb5dd62: tests: do not use GCC variadic macro extension for xgcry_control (authored by jukivili).
tests: do not use GCC variadic macro extension for xgcry_control
May 16 2019, 5:13 PM

May 14 2019

jukivili added a comment to T4499: Asan finding in libgcrypt.

I've prepared patch for statically defining mpiutil contants, but I can leave it out and not push to master.

May 14 2019, 6:38 PM · libgcrypt

May 12 2019

jukivili added a comment to T4499: Asan finding in libgcrypt.

That type of variadic macro is GCC extension, see https://gcc.gnu.org/onlinedocs/cpp/Variadic-Macros.html

May 12 2019, 6:45 PM · libgcrypt

May 11 2019

jukivili added a comment to T4499: Asan finding in libgcrypt.

Maybe cleaner option for mpi/mpiutil.c would be to statically allocate the constants

May 11 2019, 1:27 PM · libgcrypt

May 10 2019

jukivili committed rC34e9306a66b4: tests/basic: mark CFB and CFB8 as stream block cipher modes (authored by jukivili).
tests/basic: mark CFB and CFB8 as stream block cipher modes
May 10 2019, 10:44 PM
jukivili committed rC15592cd52f54: Fix message digest final function for MD4, MD5 and RMD160 (authored by jukivili).
Fix message digest final function for MD4, MD5 and RMD160
May 10 2019, 10:44 PM

May 7 2019

jukivili updated the task description for T4460: libgcrypt performance TODOs.
May 7 2019, 8:15 PM · libgcrypt
jukivili added a comment to T4460: libgcrypt performance TODOs.

SPARC T4 has crypto instruction set for AES, GCM, SHA1, SHA256, SHA512, Camellia and DES, that can be used from user-space too.

May 7 2019, 8:14 PM · libgcrypt

May 6 2019

jukivili updated the task description for T4460: libgcrypt performance TODOs.
May 6 2019, 9:14 PM · libgcrypt
jukivili updated the task description for T4460: libgcrypt performance TODOs.
May 6 2019, 9:12 PM · libgcrypt
jukivili updated the task description for T4460: libgcrypt performance TODOs.
May 6 2019, 9:12 PM · libgcrypt
jukivili created T4486: Add AEAD mode AES-SIV to libgcrypt (RFC 5297) in the S1 Public space.
May 6 2019, 9:06 PM · Feature Request, libgcrypt
jukivili created T4485: Add AEAD mode AES-GCM-SIV to libgcrypt (RFC 8452) in the S1 Public space.
May 6 2019, 9:03 PM · Feature Request, libgcrypt
jukivili committed rCda6cd4fea30f: Fix carry overflow in Stribog in 512-bit addition (authored by lumag).
Fix carry overflow in Stribog in 512-bit addition
May 6 2019, 8:43 PM

May 1 2019

jukivili abandoned D476: [libgcrypt] NetBSD support explicit_memset.

This change has been pushed to repository.

May 1 2019, 3:24 PM
jukivili abandoned D477: Add support for explicit_memset.

This change has been pushed to repository.

May 1 2019, 3:24 PM · libgcrypt
jukivili committed rC71b0eb3fb75d: Add support for explicit_memset (authored by jukivili).
Add support for explicit_memset
May 1 2019, 12:18 PM
jukivili committed rC78b1047eded8: Fix CFI_PUSH/CFI_POP redefine build warning with AMD64 MPI (authored by jukivili).
Fix CFI_PUSH/CFI_POP redefine build warning with AMD64 MPI
May 1 2019, 12:18 PM
jukivili committed rCa6e7c411e5f6: Enable four block aggregated GCM Intel PCLMUL implementation on i386 (authored by jukivili).
Enable four block aggregated GCM Intel PCLMUL implementation on i386
May 1 2019, 12:18 PM
jukivili committed rC1374254c2904: Prefetch GCM look-up tables (authored by jukivili).
Prefetch GCM look-up tables
May 1 2019, 12:18 PM
jukivili committed rCecd02cdd61e8: Optimizations for generic table-based GCM implementations (authored by jukivili).
Optimizations for generic table-based GCM implementations
May 1 2019, 12:18 PM
jukivili committed rCaf5f3fb08674: Optimizations for GCM Intel/PCLMUL implementation (authored by jukivili).
Optimizations for GCM Intel/PCLMUL implementation
May 1 2019, 12:18 PM
jukivili committed rCb9be297bb8eb: Move data pointer macro for 64-bit ARM assembly to common header (authored by jukivili).
Move data pointer macro for 64-bit ARM assembly to common header
May 1 2019, 12:18 PM
jukivili committed rC5a2a96a63517: Add CFI unwind assembly directives for 64-bit ARM assembly (authored by jukivili).
Add CFI unwind assembly directives for 64-bit ARM assembly
May 1 2019, 12:18 PM
jukivili committed rC14c8a593ede4: Add 64-bit ARMv8/CE PMULL implementation of CRC (authored by jukivili).
Add 64-bit ARMv8/CE PMULL implementation of CRC
May 1 2019, 12:18 PM

Apr 28 2019

jukivili commandeered D476: [libgcrypt] NetBSD support explicit_memset.

Email did not get through (should use plain old text email), so I prepared patch myself. See D477, https://dev.gnupg.org/D477

Apr 28 2019, 8:38 AM
jukivili updated the summary of D477: Add support for explicit_memset.
Apr 28 2019, 8:36 AM · libgcrypt
jukivili updated the summary of D477: Add support for explicit_memset.
Apr 28 2019, 8:36 AM · libgcrypt
jukivili created D477: Add support for explicit_memset.
Apr 28 2019, 8:35 AM · libgcrypt

Apr 22 2019

jukivili committed rCb878a986f3ab: mpi: make stack unwinding work at i386 mpi functions (authored by jukivili).
mpi: make stack unwinding work at i386 mpi functions
Apr 22 2019, 9:15 PM
jukivili committed rC0bd18e8bf7d6: hwf-x86: make stack unwinding work at i386 cpuid functions (authored by jukivili).
hwf-x86: make stack unwinding work at i386 cpuid functions
Apr 22 2019, 9:15 PM
jukivili committed rC3546599e5578: Limit and document Blowfish key lengths to 8-576 bits (authored by jukivili).
Limit and document Blowfish key lengths to 8-576 bits
Apr 22 2019, 9:15 PM
jukivili committed rC0903b215ef5a: twofish-amd64: do not use xchg instruction (authored by jukivili).
twofish-amd64: do not use xchg instruction
Apr 22 2019, 9:15 PM
jukivili committed rCd11ae95d05dc: Add CFI unwind assembly directives for AMD64 assembly (authored by jukivili).
Add CFI unwind assembly directives for AMD64 assembly
Apr 22 2019, 9:15 PM

Apr 17 2019

jukivili added a comment to D476: [libgcrypt] NetBSD support explicit_memset.

I'm not actually sure how workflow should be on the 'patches' interface at dev.gnupg.org.

Apr 17 2019, 6:48 PM

Apr 14 2019

jukivili created T4460: libgcrypt performance TODOs in the S1 Public space.
Apr 14 2019, 2:14 PM · libgcrypt

Apr 9 2019

jukivili committed rC2ffc689d4757: Use FreeBSD's elf_aux_info for detecting ARM HW features (authored by jukivili).
Use FreeBSD's elf_aux_info for detecting ARM HW features
Apr 9 2019, 9:07 PM
jukivili committed rC478581c5107a: Tune SHA-512/AVX2 and SHA-256/AVX2 implementations (authored by jukivili).
Tune SHA-512/AVX2 and SHA-256/AVX2 implementations
Apr 9 2019, 9:07 PM
jukivili committed rC6812a2c5bd2d: Use getauxval system function for detecting ARM HW features (authored by jukivili).
Use getauxval system function for detecting ARM HW features
Apr 9 2019, 9:07 PM
jukivili committed rC04a6c3c7482d: Disable SM3 in FIPS mode (authored by jukivili).
Disable SM3 in FIPS mode
Apr 9 2019, 9:07 PM

Apr 8 2019

jukivili added a comment to D476: [libgcrypt] NetBSD support explicit_memset.

_gcry_fast_wipememory2 should be changed to always just use explicit_memset when available:

Apr 8 2019, 8:13 PM

Apr 7 2019

jukivili committed rCa3683b6f6231: Add SHA512/224 and SHA512/256 algorithms (authored by jukivili).
Add SHA512/224 and SHA512/256 algorithms
Apr 7 2019, 9:32 AM
jukivili committed rCe76cd0e2b1f6: Optimizations for digest final functions (authored by jukivili).
Optimizations for digest final functions
Apr 7 2019, 9:32 AM
jukivili committed rCc6055aaccac8: Remove extra buffer flush at begining of digest final functions (authored by jukivili).
Remove extra buffer flush at begining of digest final functions
Apr 7 2019, 9:32 AM
jukivili committed rCc54b1c96c644: tests/basic: add hash test for small block sizes (authored by jukivili).
tests/basic: add hash test for small block sizes
Apr 7 2019, 9:32 AM
jukivili committed rC74ef3ecbf94e: Burn stack in transform functions for SHA2 AMD64 implementations (authored by jukivili).
Burn stack in transform functions for SHA2 AMD64 implementations
Apr 7 2019, 9:32 AM
jukivili committed rCf3d4bd90662f: Burn stack in transform functions for SHA1 AMD64 implementations (authored by jukivili).
Burn stack in transform functions for SHA1 AMD64 implementations
Apr 7 2019, 9:32 AM
jukivili committed rCb982900bfe64: Add AVX2/BMI2 implementation of SHA1 (authored by jukivili).
Add AVX2/BMI2 implementation of SHA1
Apr 7 2019, 9:32 AM

Apr 3 2019

jukivili added a comment to T3786: Unexpectedly slow decryption for AEAD (and CFB).

This is largely solved.

Apr 3 2019, 9:33 PM · gnupg (gpg23), Bug Report

Apr 1 2019

jukivili placed T4425: libgcrypt relocation error on aarch64 up for grabs.

I think commit https://git.gnupg.org/cgi-bin/gitweb.cgi?p=libgcrypt.git;a=commit;h=09c27280cc09798d15369b3a143036b7ab5ddd69 should be backported to 1.8 branch of libgcrypt.

Apr 1 2019, 9:16 PM · asm, libgcrypt, Bug Report

Mar 31 2019

jukivili committed rCced7508c857c: blowfish: add three rounds parallel handling to generic C implementation (authored by jukivili).
blowfish: add three rounds parallel handling to generic C implementation
Mar 31 2019, 9:13 PM
jukivili committed rC4ec566b3689e: cast5: add three rounds parallel handling to generic C implementation (authored by jukivili).
cast5: add three rounds parallel handling to generic C implementation
Mar 31 2019, 9:13 PM
jukivili committed rC8a0e68be1020: cast5: read Kr four blocks at time and shift for current round (authored by jukivili).
cast5: read Kr four blocks at time and shift for current round
Mar 31 2019, 9:13 PM
jukivili committed rC0fe918fa897c: Add helper function for adding value to cipher block (authored by jukivili).
Add helper function for adding value to cipher block
Mar 31 2019, 9:13 PM

Mar 30 2019

jukivili committed rCefd700e31dc8: Optimize OCB set_key and set_nonce (authored by jukivili).
Optimize OCB set_key and set_nonce
Mar 30 2019, 5:02 PM