a STREAM & CHAIN Contruction Online Authenticated Encryption package
Online Authenticate Encryption and its nonce reuse misuse resistance
standard library based package to provide "online" authenticated encryption reader / writer facilities using STREAM & CHAIN construction using any cipher.AEAD.
This is WORK IN PROGRESS... reliable code should come shortly as we need it.
The API is still being worked, especially with AD.
STREAM is in, CHAIN is starting.
import (
"github.com/ermites-io/oae/stream"
"github.com/ermites-io/oae/chain"
)
func main() {
..
// STREAM construction
stw, err := stream.NewWriter(w, aead, nonce, ad, 32768) // you get an io.Writer
str, err := stream.NewReader(r, aead, nonce, ad, 32768) // you get an io.Reader
// CHAIN construction