encrypteddb

package
v4.7.1+incompatible Latest Latest
Warning

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

Go to latest
Published: Oct 22, 2019 License: BSD-3-Clause, BSD-3-Clause Imports: 10 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var DefaultSecretUI = func() libkb.SecretUI { return NoSecretUI{} }
View Source
var ErrDecryptionFailed = errors.New("failed to decrypt item")

ErrDecryptionFailed is returned when an encrypteddb box fails to decrypt

Functions

func DecodeBox

func DecodeBox(ctx context.Context, b []byte, getSecretBoxKey KeyFn,
	res interface{}) error

func EncodeBox

func EncodeBox(ctx context.Context, data interface{}, getSecretBoxKey KeyFn) ([]byte, error)

func GetSecretBoxKey

func GetSecretBoxKey(ctx context.Context, g *libkb.GlobalContext, getSecretUI func() libkb.SecretUI,
	reason libkb.EncryptionReason, reasonStr string) (fkey [32]byte, err error)

Types

type DbFn

type DbFn func(g *libkb.GlobalContext) *libkb.JSONLocalDb

type EncryptedDB

type EncryptedDB struct {
	libkb.Contextified
	// contains filtered or unexported fields
}

Handle to a db that encrypts values using nacl secretbox. Does not encrypt keys. Not threadsafe.

func New

func New(g *libkb.GlobalContext, getDB DbFn, getSecretBoxKey KeyFn) *EncryptedDB

func (*EncryptedDB) Delete added in v1.0.33

func (i *EncryptedDB) Delete(ctx context.Context, key libkb.DbKey) error

func (*EncryptedDB) Get

func (i *EncryptedDB) Get(ctx context.Context, key libkb.DbKey, res interface{}) (bool, error)

Get a value Decodes into res Returns (found, err). Res is valid only if (found && err == nil)

func (*EncryptedDB) Put

func (i *EncryptedDB) Put(ctx context.Context, key libkb.DbKey, data interface{}) error

type EncryptedFile

type EncryptedFile struct {
	libkb.Contextified
	// contains filtered or unexported fields
}

func NewFile

func NewFile(g *libkb.GlobalContext, path string, getSecretBoxKey KeyFn) *EncryptedFile

func (*EncryptedFile) Get

func (f *EncryptedFile) Get(ctx context.Context, res interface{}) error

func (*EncryptedFile) Put

func (f *EncryptedFile) Put(ctx context.Context, data interface{}) error

func (*EncryptedFile) Remove

func (f *EncryptedFile) Remove(ctx context.Context) error

type KeyFn

type KeyFn func(context.Context) ([32]byte, error)

type NoSecretUI

type NoSecretUI struct {
}

NoSecretUI is the default SecretUI for GetSecretBoxKey, because we don't expect to do any interactive key unlocking there. GetSecretBoxKey should only be used where device key is present and unlocked.

func (NoSecretUI) GetPassphrase

func (d NoSecretUI) GetPassphrase(pinentry keybase1.GUIEntryArg, terminal *keybase1.SecretEntryArg) (keybase1.GetPassphraseRes, error)

Jump to

Keyboard shortcuts

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