 Documentation
      ¶
      Documentation
      ¶
    
    
  
    
  
    Overview ¶
Package key provides a persistence layer for user key.
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
Types ¶
type DAO ¶
type DAO interface {
	SaveKey(key *encryption.Key) error
	GetKey(owner string, KeyID string) (*encryption.Key, error)
	ListKeys(owner string) ([]*encryption.Key, error)
	DeleteKey(owner string, keyID string) error
}
    DAO is a protocol for user key storing
type UserKeyTool ¶
type UserKeyTool interface {
	GetEncrypted(ctx context.Context, keyID string, data []byte) ([]byte, error)
	GetDecrypted(ctx context.Context, keyID string, data []byte) ([]byte, error)
}
    UserKeyTool describes a tool that can encrypt/decrypt data based on user context
func GetUserKeyTool ¶
func GetUserKeyTool(user string, pass []byte) UserKeyTool
GetUserKeyTool creates a keytool based on specified @user and @pass
func MasterKeyTool ¶
func MasterKeyTool(ctx context.Context) (UserKeyTool, error)
MasterKeyTool creates the admin key tool
       Source Files
      ¶
      Source Files
      ¶
    
- dao.go
- sql.go
- tools.go
 Click to show internal directories. 
   Click to hide internal directories.