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.