encrypt

package
v0.0.0-...-57b83e3 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 30, 2020 License: Apache-2.0 Imports: 5 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type AESEncryptor

type AESEncryptor struct {
	// contains filtered or unexported fields
}

AESEncryptor uses AES to encrypt or decrypt string

func (*AESEncryptor) Decrypt

func (a *AESEncryptor) Decrypt(ciphertext string) (string, error)

Decrypt ...

func (*AESEncryptor) Encrypt

func (a *AESEncryptor) Encrypt(plaintext string) (string, error)

Encrypt ...

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 Instance

func Instance() Encryptor

Instance ... Get instance of encryptor

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

func (*FileKeyProvider) Get

func (f *FileKeyProvider) Get(params map[string]interface{}) (string, error)

Get returns the key read 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

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL