aboutsummaryrefslogtreecommitdiffstats
path: root/oae.go
diff options
context:
space:
mode:
authorRose Hogenson <rosehogenson@posteo.net>2025-11-10 20:15:38 -0800
committerRose Hogenson <rosehogenson@posteo.net>2025-11-10 20:15:38 -0800
commit4c667e25285b1bac7c2fdc57fe806dcee022d8fd (patch)
tree7580da32bf3b8d750efc2b5e3164584edb16db44 /oae.go
parent3ffa32dc180beaca6e7f9b87e47f02d4f3f03dde (diff)
downloadsym-4c667e25285b1bac7c2fdc57fe806dcee022d8fd.tar.zst
Use cha cha 20 poly 1305
Diffstat (limited to 'oae.go')
-rw-r--r--oae.go14
1 files changed, 6 insertions, 8 deletions
diff --git a/oae.go b/oae.go
index 915b562..bc6135f 100644
--- a/oae.go
+++ b/oae.go
@@ -3,16 +3,17 @@ package main
import (
"bufio"
"bytes"
- "crypto/aes"
"crypto/cipher"
"crypto/rand"
"errors"
"io"
+
+ "golang.org/x/crypto/chacha20poly1305"
)
const (
- nonceSize = 12
- aeadOverhead = 16
+ nonceSize = chacha20poly1305.NonceSize
+ aeadOverhead = chacha20poly1305.Overhead
segmentSize = 1024 * 1024
plaintextSegmentSize = segmentSize - aeadOverhead
@@ -29,11 +30,8 @@ type segmentEncrypter struct {
func (se *segmentEncrypter) initialize(salt []byte) error {
key := hashPassword(se.password, salt)
- block, err := aes.NewCipher(key)
- if err != nil {
- return err
- }
- se.aead, err = cipher.NewGCM(block)
+ var err error
+ se.aead, err = chacha20poly1305.New(key)
return err
}