From d4e03f038c596065879d1707761a5da10959c4bb Mon Sep 17 00:00:00 2001 From: Rose Hogenson Date: Fri, 10 Oct 2025 23:51:39 -0700 Subject: Use a separate salt per file Unfortunately this makes the program way slower for multiple files. However, it's a critical bug to reuse salt between files. --- enc/enc.go | 14 ++++---------- 1 file changed, 4 insertions(+), 10 deletions(-) (limited to 'enc/enc.go') diff --git a/enc/enc.go b/enc/enc.go index 180927b..41da776 100644 --- a/enc/enc.go +++ b/enc/enc.go @@ -49,20 +49,14 @@ func enc() error { } password = string(pw) } - salt := make([]byte, sym.SaltSize) - rand.Read(salt) - key, err := sym.HashPassword(password, salt) - if err != nil { - return err - } if len(args) == 0 { if *asciiOutput { - return sym.EncryptBase64(os.Stdout, os.Stdin, key, salt, 0) + return sym.EncryptBase64(os.Stdout, os.Stdin, password) } - return sym.Encrypt(os.Stdout, os.Stdin, key, salt, 0) + return sym.Encrypt(os.Stdout, os.Stdin, password) } - for i, fileName := range args { - if err := sym.EncryptFile(fileName, key, salt, i, *asciiOutput); err != nil { + for _, fileName := range args { + if err := sym.EncryptFile(fileName, password, *asciiOutput); err != nil { return err } } -- cgit v1.3.1