Easy the encrypting and decrypting a dataset.
Our support of Go versions is aligned with Go's version release policy. So we will support a major version of Go until there are two newer major releases.
With a correctly configured Go toolchain:
go get -u github.com/dmalix/secretdata
When encrypting and decrypting a dataset, the secret key is forced hashed to generate a 32-byte key for use with AES-256. The Secret Data library uses AEAD, an encryption mode that provides authenticated encryption of associated data. For a description of the methodology, see https://en.wikipedia.org/wiki/Authenticated_encryption
Create a new Secret Data instance and set a secret key:
secretDataInstance := secretdata.NewSecretData("secret")
Encrypt a dataset:
dataset := []byte("dataset")
encryptedData, err := secretDataInstance.Encrypt(dataset)
if err != nil {
log.Fatal(err)
}
And decrypt a dataset:
decryptedData, err := secretDataInstance.Decrypt(encryptedData)
if err != nil {
log.Fatal(err)
}
If you have found a bug or if you have a feature request, please report them at this repository issues section. Please do not report security vulnerabilities on the public GitHub issue tracker.
If you discover any security related issues, please email dmalix@yahoo.com instead of using the issue tracker.
This project is licensed under the MIT license. See the LICENSE file for more info.