<feed xmlns='http://www.w3.org/2005/Atom'>
<title>gocryptfs/internal/cryptocore, branch aegis</title>
<subtitle>Mirror of gocryptfs source code on Github</subtitle>
<id>http://nuetzlich.net/cgit/gocryptfs/atom?h=aegis</id>
<link rel='self' href='http://nuetzlich.net/cgit/gocryptfs/atom?h=aegis'/>
<link rel='alternate' type='text/html' href='http://nuetzlich.net/cgit/gocryptfs/'/>
<updated>2025-03-12T19:43:23+00:00</updated>
<entry>
<title>Allow 256-bit nonces even if is not useful</title>
<updated>2025-03-12T19:43:23+00:00</updated>
<author>
<name>Frank Denis</name>
</author>
<published>2025-03-12T00:09:42+00:00</published>
<link rel='alternate' type='text/html' href='http://nuetzlich.net/cgit/gocryptfs/commit/?id=11cf965026bff5763f5a425719daa82053cdd8e6'/>
<id>urn:sha1:11cf965026bff5763f5a425719daa82053cdd8e6</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Fix aegis available checks</title>
<updated>2025-03-12T19:43:23+00:00</updated>
<author>
<name>Frank Denis</name>
</author>
<published>2025-03-12T00:05:33+00:00</published>
<link rel='alternate' type='text/html' href='http://nuetzlich.net/cgit/gocryptfs/commit/?id=48c8538a70e7904df0b17685bb2b277fbd92a7ae'/>
<id>urn:sha1:48c8538a70e7904df0b17685bb2b277fbd92a7ae</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Move aegis out of stupidgcm</title>
<updated>2025-03-12T19:43:23+00:00</updated>
<author>
<name>Frank Denis</name>
</author>
<published>2025-03-11T23:54:35+00:00</published>
<link rel='alternate' type='text/html' href='http://nuetzlich.net/cgit/gocryptfs/commit/?id=d5d26d75247d4fcc269cd0494cb85c7e62618c89'/>
<id>urn:sha1:d5d26d75247d4fcc269cd0494cb85c7e62618c89</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Revert a few more things</title>
<updated>2025-03-12T19:43:23+00:00</updated>
<author>
<name>Frank Denis</name>
</author>
<published>2025-03-11T23:44:56+00:00</published>
<link rel='alternate' type='text/html' href='http://nuetzlich.net/cgit/gocryptfs/commit/?id=e3e76e275d8edf294a4a64897f44a5ef0b70bfeb'/>
<id>urn:sha1:e3e76e275d8edf294a4a64897f44a5ef0b70bfeb</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Do what @rfjakob asked me to do</title>
<updated>2025-03-12T19:43:23+00:00</updated>
<author>
<name>Frank Denis</name>
</author>
<published>2025-03-11T23:32:04+00:00</published>
<link rel='alternate' type='text/html' href='http://nuetzlich.net/cgit/gocryptfs/commit/?id=3e852eb354f99fb95b399c68d950298b33ed88ab'/>
<id>urn:sha1:3e852eb354f99fb95b399c68d950298b33ed88ab</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Introduce the EMEKeyLen constant</title>
<updated>2025-03-12T19:43:23+00:00</updated>
<author>
<name>Frank Denis</name>
</author>
<published>2025-02-27T23:06:32+00:00</published>
<link rel='alternate' type='text/html' href='http://nuetzlich.net/cgit/gocryptfs/commit/?id=e9d6fb4b3f16d04fa56a66acad46eafad4f8aba1'/>
<id>urn:sha1:e9d6fb4b3f16d04fa56a66acad46eafad4f8aba1</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Add optional support for AEGIS encryption</title>
<updated>2025-03-12T19:43:23+00:00</updated>
<author>
<name>Frank Denis</name>
</author>
<published>2025-02-25T14:03:50+00:00</published>
<link rel='alternate' type='text/html' href='http://nuetzlich.net/cgit/gocryptfs/commit/?id=779a850e0fb967aac79124c7e18b14706d5f2652'/>
<id>urn:sha1:779a850e0fb967aac79124c7e18b14706d5f2652</id>
<content type='text'>
AEGIS is a new family of authenticated encryption algorithms that offers
stronger security, higher usage limits, and better performance than AES-GCM.

This pull request adds support for a new `-aegis` command-line flag, allowing
AEGIS-128X2 to be used as an alternative to AES-GCM on CPUs with AES acceleration.

It also introduces the ability to use ciphers with different key sizes.

More information on AEGIS is available here:
- https://cfrg.github.io/draft-irtf-cfrg-aegis-aead/draft-irtf-cfrg-aegis-aead.html
- https://github.com/cfrg/draft-irtf-cfrg-aegis-aead

gocryptfs -speed speed on Apple M1:

AES-GCM-256-OpenSSL              3718.79 MB/s
AES-GCM-256-Go                   5083.43 MB/s   (selected in auto mode)
AES-SIV-512-Go                    625.20 MB/s
XChaCha20-Poly1305-OpenSSL       1358.63 MB/s   (selected in auto mode)
XChaCha20-Poly1305-Go             832.11 MB/s
Aegis128X2-Go                   11818.73 MB/s

gocryptfs -speed speed on AMD Zen 4:

AES-GCM-256-OpenSSL              5215.86 MB/s
AES-GCM-256-Go                   6918.01 MB/s   (selected in auto mode)
AES-SIV-512-Go                    449.61 MB/s
XChaCha20-Poly1305-OpenSSL       2643.48 MB/s
XChaCha20-Poly1305-Go            3727.46 MB/s   (selected in auto mode)
Aegis128X2-Go                   28109.92 MB/s
</content>
</entry>
<entry>
<title>make format</title>
<updated>2022-08-28T09:11:36+00:00</updated>
<author>
<name>Jakob Unterwurzacher</name>
</author>
<published>2022-08-28T09:11:36+00:00</published>
<link rel='alternate' type='text/html' href='http://nuetzlich.net/cgit/gocryptfs/commit/?id=003a7fa2e53ac15d2c94a34102ae12b69b23c586'/>
<id>urn:sha1:003a7fa2e53ac15d2c94a34102ae12b69b23c586</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Fix typos</title>
<updated>2022-06-26T08:59:06+00:00</updated>
<author>
<name>Yuta Hayashibe</name>
</author>
<published>2022-05-04T09:06:20+00:00</published>
<link rel='alternate' type='text/html' href='http://nuetzlich.net/cgit/gocryptfs/commit/?id=e9ecff7f07aeb1efe0edec7b4b050ce3c0ef75f8'/>
<id>urn:sha1:e9ecff7f07aeb1efe0edec7b4b050ce3c0ef75f8</id>
<content type='text'>
</content>
</entry>
<entry>
<title>cryptocore: simplify declarations</title>
<updated>2021-09-28T16:35:37+00:00</updated>
<author>
<name>Jakob Unterwurzacher</name>
</author>
<published>2021-09-28T16:35:37+00:00</published>
<link rel='alternate' type='text/html' href='http://nuetzlich.net/cgit/gocryptfs/commit/?id=75cace05684df3afa1f2519ec59f73fcdfac25f5'/>
<id>urn:sha1:75cace05684df3afa1f2519ec59f73fcdfac25f5</id>
<content type='text'>
Reported by codacity:

internal/cryptocore/cryptocore.go
Minor icon MINOR
Code Style
should omit type AEADTypeEnum from declaration of var BackendAESSIV; it will be inferred from the right-hand side
var BackendAESSIV AEADTypeEnum = AEADTypeEnum{"AES-SIV-512", "Go", siv_aead.NonceSize}
Minor icon MINOR
Code Style
should omit type AEADTypeEnum from declaration of var BackendXChaCha20Poly1305; it will be inferred from the right-hand side
var BackendXChaCha20Poly1305 AEADTypeEnum = AEADTypeEnum{"XChaCha20-Poly1305", "Go", chacha20poly1305.NonceSizeX}
Minor icon MINOR
Code Style
should omit type AEADTypeEnum from declaration of var BackendXChaCha20Poly1305OpenSSL; it will be inferred from the right-hand side
var BackendXChaCha20Poly1305OpenSSL AEADTypeEnum = AEADTypeEnum{"XChaCha20-Poly1305", "OpenSSL", chacha20poly1305.NonceSizeX}
Found 2 possible new issues
internal/cryptocore/cryptocore.go
Minor icon MINOR
Code Style
should omit type AEADTypeEnum from declaration of var BackendOpenSSL; it will be inferred from the right-hand side
var BackendOpenSSL AEADTypeEnum = AEADTypeEnum{"AES-GCM-256", "OpenSSL", 16}
Minor icon MINOR
Code Style
should omit type AEADTypeEnum from declaration of var BackendGoGCM; it will be inferred from the right-hand side
var BackendGoGCM AEADTypeEnum = AEADTypeEnum{"AES-GCM-256", "Go", 16}
</content>
</entry>
</feed>
