Jakob Unterwurzacher
|
003a7fa2e5
|
make format
|
2022-08-28 11:11:36 +02:00 |
|
Abirdcfly
|
702a2e19cc
|
fix minor unreachable code caused by t.Fatal
Signed-off-by: Abirdcfly <fp544037857@gmail.com>
|
2022-08-15 14:24:18 +02:00 |
|
Jakob Unterwurzacher
|
d598536709
|
stupidgcm: unexport stupidGCM struct
No need to have it exported.
|
2021-09-07 18:15:04 +02:00 |
|
Jakob Unterwurzacher
|
3a80db953d
|
stupidgcm: allow zero-length input data
We used to panic in this case because it is useless.
But Go stdlib supports it, so we should as well.
|
2021-09-07 18:15:04 +02:00 |
|
Jakob Unterwurzacher
|
39b1070506
|
stupidgcm: add testConcurrency
Verifies that we don't corrupt data when called concurrently.
|
2021-09-07 18:14:05 +02:00 |
|
Jakob Unterwurzacher
|
6a0206897c
|
stupidgcm: add BenchmarkCCall
gocryptfs/internal/stupidgcm$ go test -bench .
goos: linux
goarch: amd64
pkg: github.com/rfjakob/gocryptfs/v2/internal/stupidgcm
cpu: Intel(R) Core(TM) i5-3470 CPU @ 3.20GHz
BenchmarkCCall-4 15864030 78.60 ns/op
PASS
ok github.com/rfjakob/gocryptfs/v2/internal/stupidgcm 1.898s
|
2021-09-07 18:14:05 +02:00 |
|
Jakob Unterwurzacher
|
e2ec048a09
|
stupidgcm: introduce stupidAEADCommon and use for both chacha & gcm
Nice deduplication and brings the GCM decrypt speed up to par.
internal/speed$ benchstat old new
name old time/op new time/op delta
StupidGCM-4 4.71µs ± 0% 4.66µs ± 0% -0.99% (p=0.008 n=5+5)
StupidGCMDecrypt-4 5.77µs ± 1% 4.51µs ± 0% -21.80% (p=0.008 n=5+5)
name old speed new speed delta
StupidGCM-4 870MB/s ± 0% 879MB/s ± 0% +1.01% (p=0.008 n=5+5)
StupidGCMDecrypt-4 710MB/s ± 1% 908MB/s ± 0% +27.87% (p=0.008 n=5+5)
|
2021-09-07 18:14:05 +02:00 |
|
Jakob Unterwurzacher
|
4017e4b22c
|
stupidgcm: add stupidXchacha20poly1305
Implementation copied from
32db794688/chacha20poly1305/xchacha20poly1305.go
|
2021-09-07 18:14:05 +02:00 |
|
Jakob Unterwurzacher
|
5df7ee815d
|
stupidgcm: stupidChacha20poly1305: use byte array for key
Follow what golang.org/x/crypto/chacha20poly1305 does
for easier integration in the next commit.
|
2021-09-07 18:13:54 +02:00 |
|
Jakob Unterwurzacher
|
3ba74ac4fc
|
stupidgcm: add testWipe test
After looking at the cover profile, this was the only untested
code except panic cases.
|
2021-09-02 10:17:01 +02:00 |
|
Jakob Unterwurzacher
|
961b8ca438
|
stupidgcm: deduplicate tests 2/2
Deduplicate the cipher setup that was identical
for all tests for each cipher.
|
2021-09-02 10:04:38 +02:00 |
|
Jakob Unterwurzacher
|
676a4ceb87
|
stupidgcm: deduplicate tests 1/2
Pull the code shared between chacha and gcm into
generic functions.
|
2021-09-02 09:57:20 +02:00 |
|