Documentation ¶
Index ¶
Constants ¶
View Source
const ( // EncryptHeaderV1 ... EncryptHeaderV1 = "<enc-v1>" // SHA1 is the name of sha1 hash alg SHA1 = "sha1" // SHA256 is the name of sha256 hash alg SHA256 = "sha256" )
Variables ¶
HashAlg used to get correct alg for hash
Functions ¶
func ReversibleDecrypt ¶
ReversibleDecrypt decrypts the str with aes/base64 or base 64 depending on "header"
func ReversibleEncrypt ¶
ReversibleEncrypt encrypts the str with aes/base64
Types ¶
type AESEncryptor ¶
type AESEncryptor struct {
// contains filtered or unexported fields
}
AESEncryptor uses AES to encrypt or decrypt string
type Encryptor ¶
type Encryptor interface { // Encrypt encrypts plaintext Encrypt(string) (string, error) // Decrypt decrypts ciphertext Decrypt(string) (string, error) }
Encryptor encrypts or decrypts a strings
func NewAESEncryptor ¶
func NewAESEncryptor(keyProvider KeyProvider) Encryptor
NewAESEncryptor returns an instance of an AESEncryptor
type FileKeyProvider ¶
type FileKeyProvider struct {
// contains filtered or unexported fields
}
FileKeyProvider reads key from file
type KeyProvider ¶
type KeyProvider interface { // Get returns the key // params can be used to pass parameters in different implements Get(params map[string]interface{}) (string, error) }
KeyProvider provides the key used to encrypt and decrypt attrs
func NewFileKeyProvider ¶
func NewFileKeyProvider(path string) KeyProvider
NewFileKeyProvider returns an instance of FileKeyProvider path: where the key should be read from
type PresetKeyProvider ¶
type PresetKeyProvider struct {
Key string
}
PresetKeyProvider returns the preset key disregarding the parm, this is for testing only
Click to show internal directories.
Click to hide internal directories.