package bloat import ( "bytes" "fmt" "filippo.io/age" "filippo.io/age/armor" ) func (b *Bloat[T]) encrypt(plain []byte) ([]byte, error) { buf := &bytes.Buffer{} armorWriter := armor.NewWriter(buf) w, err := age.Encrypt(armorWriter, b.Enc.Recipient()) // my wrapper doesn't support multiple recipients yet if err != nil { return []byte{}, err } _, err = w.Write(plain) if err != nil { fmt.Println(err) return []byte{}, err } if err := w.Close(); err != nil { fmt.Println("failed to close") return []byte{}, err } if err := armorWriter.Close(); err != nil { return []byte{}, err } // return armored bytes return buf.Bytes(), err }