BalloonSaltLen = 8
BalloonHKDFSalt = "keks/pki/encrypted/balloon-blake2b-hkdf"
SNTRUP4591761X25519Salt = "keks/pki/encrypted/sntrup4591761-x25519-hkdf-blake2b"
+
+ BindFdNum = 3 + 1
)
type BalloonCost struct {
if encrypted.Bind == uuid.Nil {
log.Fatalln("unll bind")
}
+ if bindFd := os.NewFile(BindFdNum, "bind"); bindFd != nil {
+ bindFd.WriteString(encrypted.Bind.String() + "\n")
+ bindFd.Close()
+ }
if encrypted.DEM.A != pki.ChaCha20Poly1305 {
log.Fatalln("unsupported DEM:", encrypted.DEM.A)
}
if err != nil {
log.Fatal(err)
}
+ if bindFd := os.NewFile(BindFdNum, "bind"); bindFd != nil {
+ bindFd.WriteString(binding.String() + "\n")
+ bindFd.Close()
+ }
var kems []KEM
cek = make([]byte, chacha20poly1305.KeySize)
_, err = io.ReadFull(rand.Reader, cek)
func usage() {
fmt.Fprintf(os.Stderr, `Usage:
Encrypt to recipient:
- enctool -cer CER [-include-to] [-bind UUID] <DATA >DATA.encrypted
+ enctool -cer CER [-include-to] [-bind UUID] <DATA >DATA.encrypted [4>bind.value]
Encrypt on passphrase:
- enctool -p [-bind UUID] <DATA >DATA.encrypted
+ enctool -p [-bind UUID] <DATA >DATA.encrypted [4>bind.value]
[-balloon-s X] [-balloon-t X] [-balloon-p X]
Decrypt by providing possible KEMs:
- enctool -d [-p] [-prv PRV ...] <DATA.encrypted >DATA
+ enctool -d [-p] [-prv PRV ...] <DATA.encrypted >DATA [4>bind.value]
`)
flag.PrintDefaults()