database

package
v1.6.10 Latest Latest
Warning

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

Go to latest
Published: Apr 26, 2024 License: MIT Imports: 11 Imported by: 0

Documentation

Overview

Package database is a key-value database with integrated password encryption functions.

DATABASE ENCRYPTION FORMAT

H(EM) || EM
where
	EM = E(M)
	where
		E - encrypt (cipher-key)
		H - hmac (auth-key)
		M - message bytes

Index

Constants

This section is empty.

Variables

View Source
var (
	ErrOpenDB               = &SDatabaseError{"open database"}
	ErrReadSalt             = &SDatabaseError{"read salt value"}
	ErrReadSaltHash         = &SDatabaseError{"read salt hash"}
	ErrPushSalt             = &SDatabaseError{"push salt value"}
	ErrPushSaltHash         = &SDatabaseError{"push salt hash"}
	ErrInvalidSaltHash      = &SDatabaseError{"invalid salt hash"}
	ErrSetValueDB           = &SDatabaseError{"set value to database"}
	ErrGetValueDB           = &SDatabaseError{"get value from database"}
	ErrDelValueDB           = &SDatabaseError{"del value from database"}
	ErrCloseDB              = &SDatabaseError{"close database"}
	ErrRecoverDB            = &SDatabaseError{"recover database"}
	ErrInvalidEncryptedSize = &SDatabaseError{"invalid encrypted size"}
	ErrInvalidDataHash      = &SDatabaseError{"invalid data hash"}
)

Functions

This section is empty.

Types

type IKVDatabase

type IKVDatabase interface {
	types.ICloser
	GetSettings() ISettings

	Set([]byte, []byte) error
	Get([]byte) ([]byte, error)
	Del([]byte) error
}

func NewKVDatabase

func NewKVDatabase(pSett ISettings) (IKVDatabase, error)

type ISettings

type ISettings interface {
	GetPath() string
	GetWorkSize() uint64
	GetPassword() string
}

func NewSettings

func NewSettings(pSett *SSettings) ISettings

type SDatabaseError added in v1.6.8

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

func (*SDatabaseError) Error added in v1.6.8

func (err *SDatabaseError) Error() string

type SSettings

type SSettings sSettings

Jump to

Keyboard shortcuts

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