engine

package
v0.0.0-...-c3e263a Latest Latest
Warning

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

Go to latest
Published: Jun 7, 2020 License: BSD-3-Clause, BSD-3-Clause Imports: 46 Imported by: 0

Documentation

Overview

PaperKeyPrimary creates the initial paper backup key for a user. It differs from the PaperKey engine in that it already knows the signing key and it doesn't offer to revoke any devices, plus it uses a different UI call to display the phrase.

PerUserKeyRoll creates a new per-user-key for the active user. This can be the first per-user-key for the user.

PerUserKeyUpgrade creates a per-user-key for the active user if they do not already have one. It adds a per-user-key link to the sigchain and adds the key to the local keyring.

PerUserKeyUpkeep rolls the user's per-user-key if the last PUK was added by a now-revoked device. Does not add a first per-user-key. Use PerUserKeyUpgrade for that. This engine makes up for the fact that after a self-deprovision the latest PUK for a user was generated on the very machine they wanted to deprovision. This will not notice if a device revoked another device but neglected to roll the PUK. No clients should do that.

Index

Constants

This section is empty.

Variables

View Source
var BackgroundIdentifierDefaultSettings = BackgroundIdentifierSettings{
	Enabled:         true,
	WaitClean:       4 * time.Hour,
	WaitHardFailure: 90 * time.Minute,
	WaitSoftFailure: 10 * time.Minute,
	DelaySlot:       3 * time.Minute,
}
View Source
var ErrKeyGenArgNoDefNoCustom = errors.New("invalid args:  NoDefPGPUid set, but no custom PGPUids")
View Source
var PerUserKeyUpgradeBackgroundSettings = BackgroundTaskSettings{
	Start:        30 * time.Second,
	StartStagger: 10 * time.Second,
	WakeUp:       10 * time.Second,
	Interval:     1 * time.Hour,
	Limit:        5 * time.Minute,
}
View Source
var PerUserKeyUpkeepBackgroundSettings = BackgroundTaskSettings{
	Start:        20 * time.Second,
	StartStagger: 20 * time.Second,
	WakeUp:       15 * time.Second,
	Interval:     6 * time.Hour,
	Limit:        5 * time.Minute,
}
View Source
var WalletInitBackgroundSettings = BackgroundTaskSettings{
	Start:        15 * time.Second,
	StartStagger: 30 * time.Second,
	WakeUp:       12 * time.Second,
	Interval:     6 * time.Hour,
	Limit:        5 * time.Minute,
}
View Source
var WalletUpkeepBackgroundSettings = BackgroundTaskSettings{
	Start:        40 * time.Second,
	StartStagger: 20 * time.Second,
	WakeUp:       20 * time.Second,
	Interval:     24 * time.Hour,
	Limit:        10 * time.Minute,
}

Functions

func GetFullName

func GetFullName(m libkb.MetaContext, uid keybase1.UID) (string, error)

func GetMySecretKey

func GetMySecretKey(ctx context.Context, g *libkb.GlobalContext, getSecretUI func() libkb.SecretUI, secretKeyType libkb.SecretKeyType, reason string) (libkb.GenericKey, error)

GetMySecretKey uses ActiveDevice to get a secret key for the current user.

It used to have functionality to load the user and prompt for a passphrase to unlock the keys, but that is outdated now. Either you are logged in and have your device keys cached, or you aren't.

If the key isn't found in the ActiveDevice cache, this will return LoginRequiredError.

func GetPGPExportPassphrase

func GetPGPExportPassphrase(m libkb.MetaContext, ui libkb.SecretUI, desc string) (keybase1.GetPassphraseRes, error)

func LoadScanProofsIgnore

func LoadScanProofsIgnore(filepath string) ([]string, error)

LoadScanProofsIgnore loads an ignore file and returns the list of proofids to ignore.

func NewSaltpackUserKeyfinderAsInterface

NewSaltpackUserKeyfinderAsInterface creates a SaltpackUserKeyfinder engine.

func OutputSignatureSuccess

func OutputSignatureSuccess(m libkb.MetaContext, fingerprint libkb.PGPFingerprint, owner *libkb.User, signatureTime time.Time) error

OutputSignatureSuccess prints the details of a successful verification.

func OutputSignatureSuccessNonKeybase

func OutputSignatureSuccessNonKeybase(m libkb.MetaContext, keyID uint64, signatureTime time.Time) error

OutputSignatureSuccessNonKeybase prints the details of successful signature verification when signing key is not known to keybase.

func PGPCheckMulti

func PGPCheckMulti(me *libkb.User, allowMulti bool) (err error)

func PerUserKeyUpgradeBackgroundRound

func PerUserKeyUpgradeBackgroundRound(m libkb.MetaContext) error

func PerUserKeyUpkeepBackgroundRound

func PerUserKeyUpkeepBackgroundRound(m libkb.MetaContext) error

func ResolveAndCheck

func ResolveAndCheck(m libkb.MetaContext, s string, useTracking bool) (ret keybase1.UserPlusKeysV2, err error)

ResolveAndCheck takes as input a name (joe), social assertion (joe@twitter) or compound assertion (joe+joe@twitter+3883883773222@pgp) and resolves it to a user, verifying the result. Pass into it a MetaContext without any UIs set, since it is meant to run without any UI interaction. Tracking statements are optionally taken into account (see flag). No ID2-specific caching will be used, but the UPAK cache will be used, and busted with ForceRepoll semantics. The output, on success, is a populated UserPlusKeysV2.

func RunEngine2

func RunEngine2(m libkb.MetaContext, e Engine2) (err error)

func SignED25519

func SignED25519(ctx context.Context, g *libkb.GlobalContext, getSecretUI func() libkb.SecretUI, arg keybase1.SignED25519Arg) (ret keybase1.ED25519SignatureInfo, err error)

SignED25519 signs the given message with the current user's private signing key.

func SignED25519ForKBFS

func SignED25519ForKBFS(ctx context.Context, g *libkb.GlobalContext, getSecretUI func() libkb.SecretUI, arg keybase1.SignED25519ForKBFSArg) (
	ret keybase1.ED25519SignatureInfo, err error)

SignED25519ForKBFS signs the given message with the current user's private signing key on behalf of KBFS.

func SignToString

func SignToString(ctx context.Context, g *libkb.GlobalContext, getSecretUI func() libkb.SecretUI, arg keybase1.SignToStringArg) (sig string, err error)

SignToString signs the given message with the current user's private signing key and outputs the serialized NaclSigInfo string.

func UnboxBytes32

func UnboxBytes32(ctx context.Context, g *libkb.GlobalContext, getSecretUI func() libkb.SecretUI, arg keybase1.UnboxBytes32Arg) (bytes32 keybase1.Bytes32, err error)

UnboxBytes32 decrypts the given message with the current user's private encryption key and the given nonce and peer public key.

func UnboxBytes32Any

func UnboxBytes32Any(m libkb.MetaContext, getSecretUI func() libkb.SecretUI, arg keybase1.UnboxBytes32AnyArg) (res keybase1.UnboxAnyRes, err error)

UnboxBytes32Any will decrypt any of the KID, ciphertext, nonce bundles in arg.Bundles. Key preference order: cached device keys, cached paper keys, local device key, user-entered paper key. It returns the KID and bundle index along with the plaintext.

func WalletInitBackgroundRound

func WalletInitBackgroundRound(m libkb.MetaContext) error

func WalletUpkeepBackgroundRound

func WalletUpkeepBackgroundRound(m libkb.MetaContext) error

Types

type AccountDelete

type AccountDelete struct {
	libkb.Contextified
}

AccountDelete is an engine.

func NewAccountDelete

func NewAccountDelete(g *libkb.GlobalContext) *AccountDelete

NewAccountDelete creates a AccountDelete engine.

func (*AccountDelete) Name

func (e *AccountDelete) Name() string

Name is the unique engine name.

func (*AccountDelete) Prereqs

func (e *AccountDelete) Prereqs() Prereqs

Prereqs returns the engine prereqs.

func (*AccountDelete) RequiredUIs

func (e *AccountDelete) RequiredUIs() []libkb.UIKind

RequiredUIs returns the required UIs.

func (*AccountDelete) Run

Run starts the engine.

func (*AccountDelete) SubConsumers

func (e *AccountDelete) SubConsumers() []libkb.UIConsumer

SubConsumers returns the other UI consumers for this engine.

type BackgroundIdentifier

type BackgroundIdentifier struct {
	libkb.Contextified
	sync.Mutex
	// contains filtered or unexported fields
}

func NewBackgroundIdentifier

func NewBackgroundIdentifier(g *libkb.GlobalContext, untilCh chan struct{}) *BackgroundIdentifier

func (*BackgroundIdentifier) Add

func (*BackgroundIdentifier) Name

func (b *BackgroundIdentifier) Name() string

func (*BackgroundIdentifier) Prereqs

func (b *BackgroundIdentifier) Prereqs() Prereqs

GetPrereqs returns the engine prereqs.

func (*BackgroundIdentifier) Remove

func (b *BackgroundIdentifier) Remove(u keybase1.UID)

func (*BackgroundIdentifier) RequiredUIs

func (b *BackgroundIdentifier) RequiredUIs() []libkb.UIKind

func (*BackgroundIdentifier) Run

func (b *BackgroundIdentifier) Run(m libkb.MetaContext) (err error)

func (*BackgroundIdentifier) SetSnooperChannel

func (b *BackgroundIdentifier) SetSnooperChannel(ch chan<- IdentifyJob)

A snooper channel wants to know what's going on and will be notified accordingly.

func (*BackgroundIdentifier) SubConsumers

func (b *BackgroundIdentifier) SubConsumers() []libkb.UIConsumer

type BackgroundIdentifierSettings

type BackgroundIdentifierSettings struct {
	Enabled         bool          // = true
	WaitClean       time.Duration // = 4 * time.Hour
	WaitHardFailure time.Duration // = 90 * time.Minute
	WaitSoftFailure time.Duration // = 10 * time.Minute
	DelaySlot       time.Duration // = 30 * time.Second
}

type BackgroundIdentifierTestArgs

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

type BackgroundTask

type BackgroundTask struct {
	libkb.Contextified
	sync.Mutex
	// contains filtered or unexported fields
}

BackgroundTask is an engine.

func NewBackgroundTask

func NewBackgroundTask(g *libkb.GlobalContext, args *BackgroundTaskArgs) *BackgroundTask

NewBackgroundTask creates a BackgroundTask engine.

func (*BackgroundTask) Name

func (e *BackgroundTask) Name() string

Name is the unique engine name.

func (*BackgroundTask) Prereqs

func (e *BackgroundTask) Prereqs() Prereqs

GetPrereqs returns the engine prereqs.

func (*BackgroundTask) RequiredUIs

func (e *BackgroundTask) RequiredUIs() []libkb.UIKind

RequiredUIs returns the required UIs.

func (*BackgroundTask) Run

func (e *BackgroundTask) Run(m libkb.MetaContext) (err error)

Run starts the engine. Returns immediately, kicks off a background goroutine.

func (*BackgroundTask) Shutdown

func (e *BackgroundTask) Shutdown()

func (*BackgroundTask) SubConsumers

func (e *BackgroundTask) SubConsumers() []libkb.UIConsumer

SubConsumers returns the other UI consumers for this engine.

type BackgroundTaskArgs

type BackgroundTaskArgs struct {
	Name     string
	F        TaskFunc
	Settings BackgroundTaskSettings
	// contains filtered or unexported fields
}

type BackgroundTaskSettings

type BackgroundTaskSettings struct {
	Start        time.Duration // Wait after starting the app
	StartStagger time.Duration // Wait an additional random amount.
	// When waking up on mobile lots of timers will go off at once. We wait an additional
	// delay so as not to add to that herd and slow down the mobile experience when opening the app.
	WakeUp   time.Duration
	Interval time.Duration // Wait between runs
	Limit    time.Duration // Time limit on each round
}

type Bootstrap

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

Bootstrap is an engine.

func NewBootstrap

func NewBootstrap(g *libkb.GlobalContext) *Bootstrap

NewBootstrap creates a Bootstrap engine.

func (*Bootstrap) Name

func (e *Bootstrap) Name() string

Name is the unique engine name.

func (*Bootstrap) Prereqs

func (e *Bootstrap) Prereqs() Prereqs

GetPrereqs returns the engine prereqs.

func (*Bootstrap) RequiredUIs

func (e *Bootstrap) RequiredUIs() []libkb.UIKind

RequiredUIs returns the required UIs.

func (*Bootstrap) Run

func (e *Bootstrap) Run(m libkb.MetaContext) error

Run starts the engine.

func (*Bootstrap) Status

func (e *Bootstrap) Status() keybase1.BootstrapStatus

func (*Bootstrap) SubConsumers

func (e *Bootstrap) SubConsumers() []libkb.UIConsumer

SubConsumers returns the other UI consumers for this engine.

type CheckError

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

func (CheckError) Error

func (e CheckError) Error() string

type CryptocurrencyEngine

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

func (*CryptocurrencyEngine) Name

func (e *CryptocurrencyEngine) Name() string

func (*CryptocurrencyEngine) Prereqs

func (e *CryptocurrencyEngine) Prereqs() Prereqs

func (*CryptocurrencyEngine) RequiredUIs

func (e *CryptocurrencyEngine) RequiredUIs() []libkb.UIKind

func (*CryptocurrencyEngine) Result

func (*CryptocurrencyEngine) Run

func (e *CryptocurrencyEngine) Run(m libkb.MetaContext) (err error)

func (*CryptocurrencyEngine) SubConsumers

func (e *CryptocurrencyEngine) SubConsumers() []libkb.UIConsumer

type DeprovisionEngine

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

XXX: THIS ENGINE DELETES SECRET KEYS. Deleting the wrong secret keys can make you lose all your data forever. Apart from `keybase deprovision`, which shows a ton of SCARY ALL CAPS prompts to the user, we probably never want to use this engine.

func NewDeprovisionEngine

func NewDeprovisionEngine(g *libkb.GlobalContext, username string, doRevoke bool) *DeprovisionEngine

func (*DeprovisionEngine) Name

func (e *DeprovisionEngine) Name() string

func (*DeprovisionEngine) Prereqs

func (e *DeprovisionEngine) Prereqs() Prereqs

func (*DeprovisionEngine) RequiredUIs

func (e *DeprovisionEngine) RequiredUIs() []libkb.UIKind

func (*DeprovisionEngine) Run

func (e *DeprovisionEngine) Run(m libkb.MetaContext) (err error)

func (*DeprovisionEngine) SubConsumers

func (e *DeprovisionEngine) SubConsumers() []libkb.UIConsumer

type DevList

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

DevList is an engine that gets a list of all the user's devices.

func NewDevList

func NewDevList(g *libkb.GlobalContext) *DevList

NewDevList creates a DevList engine.

func (*DevList) List

func (d *DevList) List() []keybase1.Device

List returns the devices for a user.

func (*DevList) Name

func (d *DevList) Name() string

func (*DevList) Prereqs

func (d *DevList) Prereqs() Prereqs

func (*DevList) RequiredUIs

func (d *DevList) RequiredUIs() []libkb.UIKind

func (*DevList) Run

func (d *DevList) Run(m libkb.MetaContext) (err error)

Run starts the engine.

func (*DevList) SubConsumers

func (d *DevList) SubConsumers() []libkb.UIConsumer

type DeviceAdd

type DeviceAdd struct {
	libkb.Contextified
}

DeviceAdd is an engine.

func NewDeviceAdd

func NewDeviceAdd(g *libkb.GlobalContext) *DeviceAdd

NewDeviceAdd creates a DeviceAdd engine.

func (*DeviceAdd) Name

func (e *DeviceAdd) Name() string

Name is the unique engine name.

func (*DeviceAdd) Prereqs

func (e *DeviceAdd) Prereqs() Prereqs

GetPrereqs returns the engine prereqs.

func (*DeviceAdd) RequiredUIs

func (e *DeviceAdd) RequiredUIs() []libkb.UIKind

RequiredUIs returns the required UIs.

func (*DeviceAdd) Run

func (e *DeviceAdd) Run(m libkb.MetaContext) (err error)

Run starts the engine.

func (*DeviceAdd) SubConsumers

func (e *DeviceAdd) SubConsumers() []libkb.UIConsumer

SubConsumers returns the other UI consumers for this engine.

type DeviceHistory

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

DeviceHistory is an engine.

func NewDeviceHistory

func NewDeviceHistory(g *libkb.GlobalContext, username string) *DeviceHistory

NewDeviceHistory creates a DeviceHistory engine to lookup the device history for username.

func NewDeviceHistorySelf

func NewDeviceHistorySelf(g *libkb.GlobalContext) *DeviceHistory

NewDeviceHistorySelf creates a DeviceHistory engine to lookup the device history of the current user.

func (*DeviceHistory) Devices

func (e *DeviceHistory) Devices() []keybase1.DeviceDetail

func (*DeviceHistory) Name

func (e *DeviceHistory) Name() string

Name is the unique engine name.

func (*DeviceHistory) Prereqs

func (e *DeviceHistory) Prereqs() Prereqs

GetPrereqs returns the engine prereqs.

func (*DeviceHistory) RequiredUIs

func (e *DeviceHistory) RequiredUIs() []libkb.UIKind

RequiredUIs returns the required UIs.

func (*DeviceHistory) Run

Run starts the engine.

func (*DeviceHistory) SubConsumers

func (e *DeviceHistory) SubConsumers() []libkb.UIConsumer

SubConsumers returns the other UI consumers for this engine.

type DeviceKeygen

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

func NewDeviceKeygen

func NewDeviceKeygen(g *libkb.GlobalContext, args *DeviceKeygenArgs) *DeviceKeygen

NewDeviceKeygen creates a DeviceKeygen engine.

func (*DeviceKeygen) EncryptionKey

func (e *DeviceKeygen) EncryptionKey() libkb.NaclDHKeyPair

func (*DeviceKeygen) Name

func (e *DeviceKeygen) Name() string

Name is the unique engine name.

func (*DeviceKeygen) Prereqs

func (e *DeviceKeygen) Prereqs() Prereqs

GetPrereqs returns the engine prereqs.

func (*DeviceKeygen) Push

func (e *DeviceKeygen) Push(m libkb.MetaContext, pargs *DeviceKeygenPushArgs) (err error)

Push pushes the generated keys to the api server and stores the local key security server half on the api server as well.

func (*DeviceKeygen) RequiredUIs

func (e *DeviceKeygen) RequiredUIs() []libkb.UIKind

RequiredUIs returns the required UIs.

func (*DeviceKeygen) Run

func (e *DeviceKeygen) Run(m libkb.MetaContext) (err error)

Run starts the engine.

func (*DeviceKeygen) SigningKey

func (e *DeviceKeygen) SigningKey() libkb.NaclKeyPair

func (*DeviceKeygen) SigningKeyPublic

func (e *DeviceKeygen) SigningKeyPublic() (kbcrypto.NaclSigningKeyPublic, error)

func (*DeviceKeygen) SubConsumers

func (e *DeviceKeygen) SubConsumers() []libkb.UIConsumer

SubConsumers returns the other UI consumers for this engine.

type DeviceKeygenArgs

type DeviceKeygenArgs struct {
	Me              *libkb.User
	DeviceID        keybase1.DeviceID
	DeviceName      string
	DeviceType      string
	Lks             *libkb.LKSec
	IsEldest        bool
	IsSelfProvision bool
	PerUserKeyring  *libkb.PerUserKeyring
	EkReboxer       *ephemeralKeyReboxer
}

type DeviceKeygenPushArgs

type DeviceKeygenPushArgs struct {
	SkipSignerPush bool
	Signer         libkb.GenericKey
	EldestKID      keybase1.KID
	User           *libkb.User // optional
}

DeviceKeygenPushArgs determines how the push will run. There are currently three different paths it can take:

1. this device is the eldest device: pushes eldest signing key, encryption subkey. (IsEldest => true)

2. this device is a sibling (but we're not in a key exchange scenario): pushes sibkey signing key, encryption subkey. (IsEldest => False, SkipSignerPush => false, Signer != nil, EldestKID != nil)

3. this device is a sibling, but another device pushed the signing key, so skip that part. (IsEldest => False, SkipSignerPush => true, Signer != nil, EldestKID != nil)

The User argument is optional, but it is necessary if the user's sigchain changes between key generation and key push.

type DeviceWrap

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

DeviceWrap is an engine that wraps DeviceRegister and DeviceKeygen.

func NewDeviceWrap

func NewDeviceWrap(g *libkb.GlobalContext, args *DeviceWrapArgs) *DeviceWrap

NewDeviceWrap creates a DeviceWrap engine.

func (*DeviceWrap) DeviceID

func (e *DeviceWrap) DeviceID() keybase1.DeviceID

func (*DeviceWrap) EncryptionKey

func (e *DeviceWrap) EncryptionKey() libkb.NaclDHKeyPair

func (*DeviceWrap) Name

func (e *DeviceWrap) Name() string

Name is the unique engine name.

func (*DeviceWrap) Prereqs

func (e *DeviceWrap) Prereqs() Prereqs

GetPrereqs returns the engine prereqs.

func (*DeviceWrap) RequiredUIs

func (e *DeviceWrap) RequiredUIs() []libkb.UIKind

RequiredUIs returns the required UIs.

func (*DeviceWrap) Run

func (e *DeviceWrap) Run(m libkb.MetaContext) (err error)

Run starts the engine.

func (*DeviceWrap) SigningKey

func (e *DeviceWrap) SigningKey() libkb.GenericKey

func (*DeviceWrap) SubConsumers

func (e *DeviceWrap) SubConsumers() []libkb.UIConsumer

SubConsumers returns the other UI consumers for this engine.

func (*DeviceWrap) SwitchConfigAndActiveDevice

func (e *DeviceWrap) SwitchConfigAndActiveDevice(m libkb.MetaContext) (err error)

SwitchConfigAndActiveDevice changes active device to the one generated by DeviceWrap. It switches UserConfig and sets global ActiveDevice.

type DeviceWrapArgs

type DeviceWrapArgs struct {
	Me              *libkb.User
	DeviceName      string
	DeviceType      string
	Lks             *libkb.LKSec
	IsEldest        bool
	IsSelfProvision bool
	Signer          libkb.GenericKey
	EldestKID       keybase1.KID
	PerUserKeyring  *libkb.PerUserKeyring
	EkReboxer       *ephemeralKeyReboxer
}

type EmailChange

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

EmailChange is an engine that changes a user's email via signed statement.

func NewEmailChange

func NewEmailChange(g *libkb.GlobalContext, a *keybase1.EmailChangeArg) *EmailChange

NewEmailChange creates a new engine for changing a user's email address via signature (and therefore without passphrase required)

func (*EmailChange) Name

func (c *EmailChange) Name() string

Name provides the name of the engine for the engine interface

func (*EmailChange) Prereqs

func (c *EmailChange) Prereqs() Prereqs

Prereqs returns engine prereqs

func (*EmailChange) RequiredUIs

func (c *EmailChange) RequiredUIs() []libkb.UIKind

RequiredUIs returns the required UIs.

func (*EmailChange) Run

func (c *EmailChange) Run(m libkb.MetaContext) (err error)

Run the engine

func (*EmailChange) SubConsumers

func (c *EmailChange) SubConsumers() []libkb.UIConsumer

SubConsumers requires the other UI consumers of this engine

type Engine2

type Engine2 = libkb.Engine2

type FavoriteAdd

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

FavoriteAdd is an engine.

func NewFavoriteAdd

func NewFavoriteAdd(g *libkb.GlobalContext, arg *keybase1.FavoriteAddArg) *FavoriteAdd

NewFavoriteAdd creates a FavoriteAdd engine.

func (*FavoriteAdd) Name

func (e *FavoriteAdd) Name() string

Name is the unique engine name.

func (*FavoriteAdd) Prereqs

func (e *FavoriteAdd) Prereqs() Prereqs

GetPrereqs returns the engine prereqs.

func (*FavoriteAdd) RequiredUIs

func (e *FavoriteAdd) RequiredUIs() []libkb.UIKind

RequiredUIs returns the required UIs.

func (*FavoriteAdd) Run

func (e *FavoriteAdd) Run(m libkb.MetaContext) error

Run starts the engine.

func (*FavoriteAdd) SubConsumers

func (e *FavoriteAdd) SubConsumers() []libkb.UIConsumer

SubConsumers returns the other UI consumers for this engine.

func (*FavoriteAdd) Wait

func (e *FavoriteAdd) Wait()

Wait until the checkInviteNeeded goroutine is done.

func (*FavoriteAdd) WantDelegate

func (e *FavoriteAdd) WantDelegate(kind libkb.UIKind) bool

type FavoriteIgnore

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

FavoriteIgnore is an engine.

func NewFavoriteIgnore

func NewFavoriteIgnore(g *libkb.GlobalContext, arg *keybase1.FavoriteIgnoreArg) *FavoriteIgnore

NewFavoriteIgnore creates a FavoriteIgnore engine.

func (*FavoriteIgnore) Name

func (e *FavoriteIgnore) Name() string

Name is the unique engine name.

func (*FavoriteIgnore) Prereqs

func (e *FavoriteIgnore) Prereqs() Prereqs

GetPrereqs returns the engine prereqs.

func (*FavoriteIgnore) RequiredUIs

func (e *FavoriteIgnore) RequiredUIs() []libkb.UIKind

RequiredUIs returns the required UIs.

func (*FavoriteIgnore) Run

Run starts the engine.

func (*FavoriteIgnore) SubConsumers

func (e *FavoriteIgnore) SubConsumers() []libkb.UIConsumer

SubConsumers returns the other UI consumers for this engine.

type FavoriteList

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

FavoriteList is an engine.

func NewFavoriteList

func NewFavoriteList(g *libkb.GlobalContext) *FavoriteList

NewFavoriteList creates a FavoriteList engine.

func (*FavoriteList) Name

func (e *FavoriteList) Name() string

Name is the unique engine name.

func (*FavoriteList) Prereqs

func (e *FavoriteList) Prereqs() Prereqs

GetPrereqs returns the engine prereqs.

func (*FavoriteList) RequiredUIs

func (e *FavoriteList) RequiredUIs() []libkb.UIKind

RequiredUIs returns the required UIs.

func (*FavoriteList) Result

Favorites returns the list of favorites that Run generated.

func (*FavoriteList) Run

func (e *FavoriteList) Run(m libkb.MetaContext) error

Run starts the engine.

func (*FavoriteList) SubConsumers

func (e *FavoriteList) SubConsumers() []libkb.UIConsumer

SubConsumers returns the other UI consumers for this engine.

type FavoritesAPIResult

type FavoritesAPIResult struct {
	Status    libkb.AppStatus   `json:"status"`
	Favorites []keybase1.Folder `json:"favorites"`
	Ignored   []keybase1.Folder `json:"ignored"`
	New       []keybase1.Folder `json:"new"`
}

func (*FavoritesAPIResult) GetAppStatus

func (f *FavoritesAPIResult) GetAppStatus() *libkb.AppStatus

type GPGExportingError

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

func (GPGExportingError) Error

func (e GPGExportingError) Error() string

type GPGImportKeyArg

type GPGImportKeyArg struct {
	Query                string
	Signer               libkb.GenericKey
	AllowMulti           bool
	SkipImport           bool
	OnlyImport           bool
	HasProvisionedDevice bool
	Me                   *libkb.User
	Lks                  *libkb.LKSec
}

type GPGImportKeyEngine

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

func NewGPGImportKeyEngine

func NewGPGImportKeyEngine(g *libkb.GlobalContext, arg *GPGImportKeyArg) *GPGImportKeyEngine

func (*GPGImportKeyEngine) LastKey

func (e *GPGImportKeyEngine) LastKey() *libkb.PGPKeyBundle

func (*GPGImportKeyEngine) Name

func (e *GPGImportKeyEngine) Name() string

func (*GPGImportKeyEngine) Prereqs

func (e *GPGImportKeyEngine) Prereqs() Prereqs

func (*GPGImportKeyEngine) RequiredUIs

func (e *GPGImportKeyEngine) RequiredUIs() []libkb.UIKind

func (*GPGImportKeyEngine) Run

func (e *GPGImportKeyEngine) Run(m libkb.MetaContext) (err error)

func (*GPGImportKeyEngine) SubConsumers

func (e *GPGImportKeyEngine) SubConsumers() []libkb.UIConsumer

func (*GPGImportKeyEngine) WantsGPG

func (e *GPGImportKeyEngine) WantsGPG(m libkb.MetaContext) (bool, error)

type HasServerKeys

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

HasServerKeys is an engine.

func NewHasServerKeys

func NewHasServerKeys(g *libkb.GlobalContext) *HasServerKeys

NewHasServerKeys creates a HasServerKeys engine.

func (*HasServerKeys) GetResult

func (e *HasServerKeys) GetResult() keybase1.HasServerKeysRes

func (*HasServerKeys) Name

func (e *HasServerKeys) Name() string

Name is the unique engine name.

func (*HasServerKeys) Prereqs

func (e *HasServerKeys) Prereqs() Prereqs

Prereqs returns the engine prereqs.

func (*HasServerKeys) RequiredUIs

func (e *HasServerKeys) RequiredUIs() []libkb.UIKind

RequiredUIs returns the required UIs.

func (*HasServerKeys) Run

Run starts the engine.

func (*HasServerKeys) SubConsumers

func (e *HasServerKeys) SubConsumers() []libkb.UIConsumer

SubConsumers returns the other UI consumers for this engine.

type Identify2TestStats

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

type Identify2WithUID

type Identify2WithUID struct {
	libkb.Contextified

	// If we just resolved a user, then we can plumb this through to loadUser()
	ResolveBody *jsonw.Wrapper
	// contains filtered or unexported fields
}

Identify2WithUID is the Identify engine used in KBFS and as a subroutine of command-line crypto.

func (*Identify2WithUID) CCLCheckCompleted

func (e *Identify2WithUID) CCLCheckCompleted(lcr *libkb.LinkCheckResult)

CCLCheckCompleted is triggered whenever a remote proof check completes. We get these calls as a result of being a "CheckCompletedListener". When each result comes in, we check against our pool of needed remote assertions. If the set is complete, or if one that we need errors, we can unblock the caller.

func (*Identify2WithUID) ConfirmResult

func (e *Identify2WithUID) ConfirmResult() keybase1.ConfirmResult

func (*Identify2WithUID) FullMeUser

func (e *Identify2WithUID) FullMeUser() *libkb.User

func (*Identify2WithUID) FullThemUser

func (e *Identify2WithUID) FullThemUser() *libkb.User

func (*Identify2WithUID) GetIdentifyOutcome

func (e *Identify2WithUID) GetIdentifyOutcome() *libkb.IdentifyOutcome

func (*Identify2WithUID) GetProofSet

func (e *Identify2WithUID) GetProofSet() *libkb.ProofSet

func (*Identify2WithUID) Name

func (e *Identify2WithUID) Name() string

Name is the unique engine name.

func (*Identify2WithUID) Prereqs

func (e *Identify2WithUID) Prereqs() Prereqs

GetPrereqs returns the engine prereqs.

func (*Identify2WithUID) RequiredUIs

func (e *Identify2WithUID) RequiredUIs() []libkb.UIKind

RequiredUIs returns the required UIs.

func (*Identify2WithUID) Result

Result will return (non-nil,nil) on success, and (nil,non-nil) on failure.

func (*Identify2WithUID) Run

func (e *Identify2WithUID) Run(m libkb.MetaContext) (err error)

Run then engine

func (*Identify2WithUID) SetResponsibleGregorItem

func (e *Identify2WithUID) SetResponsibleGregorItem(item gregor.Item)

func (*Identify2WithUID) SubConsumers

func (e *Identify2WithUID) SubConsumers() []libkb.UIConsumer

SubConsumers returns the other UI consumers for this engine.

func (*Identify2WithUID) TrackToken

func (e *Identify2WithUID) TrackToken() keybase1.TrackToken

func (*Identify2WithUID) WantDelegate

func (e *Identify2WithUID) WantDelegate(k libkb.UIKind) bool

type Identify2WithUIDTestArgs

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

type IdentifyJob

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

func NewIdentifyJob

func NewIdentifyJob(uid keybase1.UID, err, lastError error) IdentifyJob

func (IdentifyJob) ErrorChanged

func (ij IdentifyJob) ErrorChanged() bool

func (IdentifyJob) LastError

func (ij IdentifyJob) LastError() error

func (IdentifyJob) ThisError

func (ij IdentifyJob) ThisError() error

func (IdentifyJob) UID

func (ij IdentifyJob) UID() keybase1.UID

type Kex2Provisionee

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

Kex2Provisionee is an engine.

func NewKex2Provisionee

func NewKex2Provisionee(g *libkb.GlobalContext, device *libkb.Device, secret kex2.Secret,
	expectedUID keybase1.UID, salt []byte) *Kex2Provisionee

NewKex2Provisionee creates a Kex2Provisionee engine.

func (*Kex2Provisionee) AddSecret

func (e *Kex2Provisionee) AddSecret(s kex2.Secret)

AddSecret inserts a received secret into the provisionee's secret channel.

func (*Kex2Provisionee) Cancel

func (e *Kex2Provisionee) Cancel()

Cancel cancels the kex2 run if it is running.

func (*Kex2Provisionee) Device

func (e *Kex2Provisionee) Device() *libkb.Device

Device returns the new device struct.

func (*Kex2Provisionee) EncryptionKey

func (e *Kex2Provisionee) EncryptionKey() (libkb.NaclDHKeyPair, error)

func (*Kex2Provisionee) GetLKSec

func (e *Kex2Provisionee) GetLKSec() *libkb.LKSec

func (*Kex2Provisionee) GetLogFactory

func (e *Kex2Provisionee) GetLogFactory() rpc.LogFactory

GetLogFactory implements GetLogFactory in kex2.Provisionee.

func (*Kex2Provisionee) GetName

func (e *Kex2Provisionee) GetName() string

GetName implements libkb.UserBasic interface.

func (*Kex2Provisionee) GetUID

func (e *Kex2Provisionee) GetUID() keybase1.UID

GetUID implements libkb.UserBasic interface.

func (*Kex2Provisionee) HandleDidCounterSign

func (e *Kex2Provisionee) HandleDidCounterSign(_ context.Context, sig []byte) (err error)

HandleDidCounterSign implements HandleDidCounterSign in kex2.Provisionee interface.

func (*Kex2Provisionee) HandleDidCounterSign2

func (e *Kex2Provisionee) HandleDidCounterSign2(_ context.Context, arg keybase1.DidCounterSign2Arg) (err error)

func (*Kex2Provisionee) HandleHello

func (e *Kex2Provisionee) HandleHello(_ context.Context, harg keybase1.HelloArg) (res keybase1.HelloRes, err error)

HandleHello implements HandleHello in kex2.Provisionee.

func (*Kex2Provisionee) HandleHello2

func (e *Kex2Provisionee) HandleHello2(_ context.Context, harg keybase1.Hello2Arg) (res keybase1.Hello2Res, err error)

HandleHello2 implements HandleHello2 in kex2.Provisionee.

func (*Kex2Provisionee) Name

func (e *Kex2Provisionee) Name() string

Name is the unique engine name.

func (*Kex2Provisionee) Prereqs

func (e *Kex2Provisionee) Prereqs() Prereqs

GetPrereqs returns the engine prereqs.

func (*Kex2Provisionee) RequiredUIs

func (e *Kex2Provisionee) RequiredUIs() []libkb.UIKind

RequiredUIs returns the required UIs.

func (*Kex2Provisionee) Run

Run starts the engine.

func (*Kex2Provisionee) SigningKey

func (e *Kex2Provisionee) SigningKey() (libkb.GenericKey, error)

func (*Kex2Provisionee) SubConsumers

func (e *Kex2Provisionee) SubConsumers() []libkb.UIConsumer

SubConsumers returns the other UI consumers for this engine.

func (*Kex2Provisionee) Tokens

func (e *Kex2Provisionee) Tokens() (token, csrf string)

Tokens implements the APITokener interface. This is the only implementer, but it's a pretty unusual case --- the provisioned device is giving us, the provisionee, a session and CSRF token to use for the server.

type Kex2Provisioner

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

Kex2Provisioner is an engine.

func NewKex2Provisioner

func NewKex2Provisioner(g *libkb.GlobalContext, secret kex2.Secret, pps *libkb.PassphraseStream) *Kex2Provisioner

NewKex2Provisioner creates a Kex2Provisioner engine.

func (*Kex2Provisioner) AddSecret

func (e *Kex2Provisioner) AddSecret(s kex2.Secret)

AddSecret inserts a received secret into the provisioner's secret channel.

func (*Kex2Provisioner) CounterSign

func (e *Kex2Provisioner) CounterSign(input keybase1.HelloRes) (sig []byte, err error)

CounterSign implements CounterSign in kex2.Provisioner.

func (*Kex2Provisioner) CounterSign2

func (e *Kex2Provisioner) CounterSign2(input keybase1.Hello2Res) (output keybase1.DidCounterSign2Arg, err error)

CounterSign2 implements CounterSign in kex2.Provisioner.

func (*Kex2Provisioner) GetHello2Arg

func (e *Kex2Provisioner) GetHello2Arg() (arg2 keybase1.Hello2Arg, err error)

GetHello2Arg implements GetHello2Arg in kex2.Provisioner.

func (*Kex2Provisioner) GetHelloArg

func (e *Kex2Provisioner) GetHelloArg() (arg keybase1.HelloArg, err error)

GetHelloArg implements GetHelloArg in kex2.Provisioner.

func (*Kex2Provisioner) GetLogFactory

func (e *Kex2Provisioner) GetLogFactory() rpc.LogFactory

GetLogFactory implements GetLogFactory in kex2.Provisioner.

func (*Kex2Provisioner) Name

func (e *Kex2Provisioner) Name() string

Name is the unique engine name.

func (*Kex2Provisioner) Prereqs

func (e *Kex2Provisioner) Prereqs() Prereqs

GetPrereqs returns the engine prereqs.

func (*Kex2Provisioner) RequiredUIs

func (e *Kex2Provisioner) RequiredUIs() []libkb.UIKind

RequiredUIs returns the required UIs.

func (*Kex2Provisioner) Run

Run starts the provisioner engine.

func (*Kex2Provisioner) SubConsumers

func (e *Kex2Provisioner) SubConsumers() []libkb.UIConsumer

SubConsumers returns the other UI consumers for this engine.

type ListTrackers2Engine

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

func (*ListTrackers2Engine) GetResults

func (*ListTrackers2Engine) Name

func (e *ListTrackers2Engine) Name() string

Name is the unique engine name.

func (*ListTrackers2Engine) Prereqs

func (e *ListTrackers2Engine) Prereqs() Prereqs

GetPrereqs returns the engine prereqs (none).

func (*ListTrackers2Engine) RequiredUIs

func (e *ListTrackers2Engine) RequiredUIs() []libkb.UIKind

func (*ListTrackers2Engine) Run

func (*ListTrackers2Engine) SubConsumers

func (e *ListTrackers2Engine) SubConsumers() []libkb.UIConsumer

type ListTrackersEngine

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

TrackerList is an engine to get a list of user's trackers (other users tracking this user).

func NewListTrackers

func NewListTrackers(g *libkb.GlobalContext, uid keybase1.UID) *ListTrackersEngine

NewListTrackers creates a TrackerList engine for uid.

func NewListTrackersByName

func NewListTrackersByName(username string) *ListTrackersEngine

NewListTrackersByName creates a TrackerList engine that will do a lookup by username.

func NewListTrackersSelf

func NewListTrackersSelf() *ListTrackersEngine

func (*ListTrackersEngine) ExportedList

func (e *ListTrackersEngine) ExportedList() (ret []keybase1.Tracker)

func (*ListTrackersEngine) List

func (e *ListTrackersEngine) List() []libkb.Tracker

List returns the array of trackers for this user.

func (*ListTrackersEngine) Name

func (e *ListTrackersEngine) Name() string

Name is the unique engine name.

func (*ListTrackersEngine) Prereqs

func (e *ListTrackersEngine) Prereqs() Prereqs

GetPrereqs returns the engine prereqs (none).

func (*ListTrackersEngine) RequiredUIs

func (e *ListTrackersEngine) RequiredUIs() []libkb.UIKind

RequiredUIs returns the required UIs.

func (*ListTrackersEngine) Run

Run starts the engine.

func (*ListTrackersEngine) SubConsumers

func (e *ListTrackersEngine) SubConsumers() []libkb.UIConsumer

SubConsumers returns the other UI consumers for this engine.

type ListTrackingEngine

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

func (*ListTrackingEngine) JSONResult

func (e *ListTrackingEngine) JSONResult() string

func (*ListTrackingEngine) Name

func (e *ListTrackingEngine) Name() string

func (*ListTrackingEngine) Prereqs

func (e *ListTrackingEngine) Prereqs() Prereqs

func (*ListTrackingEngine) RequiredUIs

func (e *ListTrackingEngine) RequiredUIs() []libkb.UIKind

func (*ListTrackingEngine) Run

func (e *ListTrackingEngine) Run(m libkb.MetaContext) (err error)

func (*ListTrackingEngine) SubConsumers

func (e *ListTrackingEngine) SubConsumers() []libkb.UIConsumer

func (*ListTrackingEngine) TableResult

func (e *ListTrackingEngine) TableResult() []keybase1.UserSummary

type ListTrackingEngineArg

type ListTrackingEngineArg struct {
	JSON         bool
	Verbose      bool
	Filter       string
	ForAssertion string
}

type Login

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

Login is an engine.

func NewLogin

func NewLogin(g *libkb.GlobalContext, deviceType string, usernameOrEmail string, ct keybase1.ClientType) *Login

NewLogin creates a Login engine. username is optional. deviceType should be libkb.DeviceTypeDesktop or libkb.DeviceTypeMobile.

func (*Login) Name

func (e *Login) Name() string

Name is the unique engine name.

func (*Login) Prereqs

func (e *Login) Prereqs() Prereqs

GetPrereqs returns the engine prereqs.

func (*Login) RequiredUIs

func (e *Login) RequiredUIs() []libkb.UIKind

RequiredUIs returns the required UIs.

func (*Login) Run

func (e *Login) Run(m libkb.MetaContext) (err error)

Run starts the engine.

func (*Login) SubConsumers

func (e *Login) SubConsumers() []libkb.UIConsumer

SubConsumers returns the other UI consumers for this engine.

type LoginOffline

type LoginOffline struct {
	libkb.Contextified
}

func NewLoginOffline

func NewLoginOffline(g *libkb.GlobalContext) *LoginOffline

func (*LoginOffline) Name

func (e *LoginOffline) Name() string

Name is the unique engine name.

func (*LoginOffline) Prereqs

func (e *LoginOffline) Prereqs() Prereqs

Prereqs returns the engine prereqs.

func (*LoginOffline) RequiredUIs

func (e *LoginOffline) RequiredUIs() []libkb.UIKind

RequiredUIs returns the required UIs.

func (*LoginOffline) Run

func (e *LoginOffline) Run(m libkb.MetaContext) error

func (*LoginOffline) SubConsumers

func (e *LoginOffline) SubConsumers() []libkb.UIConsumer

SubConsumers returns the other UI consumers for this engine.

type LoginOneshot

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

"Oneshot login" is a login that works only once, say in an ephemeral context like a docker image. Bootstrap such a session with a paperkey, but the existence of the login won't hit the user's sigchain.

func (*LoginOneshot) Name

func (e *LoginOneshot) Name() string

func (*LoginOneshot) Prereqs

func (e *LoginOneshot) Prereqs() Prereqs

func (*LoginOneshot) RequiredUIs

func (e *LoginOneshot) RequiredUIs() []libkb.UIKind

func (*LoginOneshot) Run

func (e *LoginOneshot) Run(m libkb.MetaContext) (err error)

func (*LoginOneshot) SubConsumers

func (e *LoginOneshot) SubConsumers() []libkb.UIConsumer

type LoginProvisionedDevice

type LoginProvisionedDevice struct {
	libkb.Contextified

	SecretStoreOnly bool // this should only be set by the service on its startup login attempt
	// contains filtered or unexported fields
}

LoginProvisionedDevice is an engine that tries to login using the current device, if there is an existing provisioned device.

func NewLoginProvisionedDevice

func NewLoginProvisionedDevice(g *libkb.GlobalContext, username string) *LoginProvisionedDevice

newLoginCurrentDevice creates a loginProvisionedDevice engine.

func (*LoginProvisionedDevice) Name

func (e *LoginProvisionedDevice) Name() string

Name is the unique engine name.

func (*LoginProvisionedDevice) Prereqs

func (e *LoginProvisionedDevice) Prereqs() Prereqs

GetPrereqs returns the engine prereqs.

func (*LoginProvisionedDevice) RequiredUIs

func (e *LoginProvisionedDevice) RequiredUIs() []libkb.UIKind

RequiredUIs returns the required UIs.

func (*LoginProvisionedDevice) Run

func (*LoginProvisionedDevice) SubConsumers

func (e *LoginProvisionedDevice) SubConsumers() []libkb.UIConsumer

SubConsumers returns the other UI consumers for this engine.

type LoginWithPaperKey

type LoginWithPaperKey struct {
	libkb.Contextified
}

LoginWithPaperKey is an engine.

func NewLoginWithPaperKey

func NewLoginWithPaperKey(g *libkb.GlobalContext) *LoginWithPaperKey

NewLoginWithPaperKey creates a LoginWithPaperKey engine. Uses the paperkey to log in and unlock LKS.

func (*LoginWithPaperKey) Name

func (e *LoginWithPaperKey) Name() string

Name is the unique engine name.

func (*LoginWithPaperKey) Prereqs

func (e *LoginWithPaperKey) Prereqs() Prereqs

GetPrereqs returns the engine prereqs.

func (*LoginWithPaperKey) RequiredUIs

func (e *LoginWithPaperKey) RequiredUIs() []libkb.UIKind

RequiredUIs returns the required UIs.

func (*LoginWithPaperKey) Run

Run starts the engine.

func (*LoginWithPaperKey) SubConsumers

func (e *LoginWithPaperKey) SubConsumers() []libkb.UIConsumer

SubConsumers returns the other UI consumers for this engine.

type LoopbackIdentifyUI

type LoopbackIdentifyUI struct {
	libkb.Contextified
	sync.Mutex
	// contains filtered or unexported fields
}

func (*LoopbackIdentifyUI) Cancel

func (b *LoopbackIdentifyUI) Cancel() error

func (*LoopbackIdentifyUI) Confirm

func (*LoopbackIdentifyUI) Dismiss

func (*LoopbackIdentifyUI) DisplayCryptocurrency

func (b *LoopbackIdentifyUI) DisplayCryptocurrency(c keybase1.Cryptocurrency) error

func (*LoopbackIdentifyUI) DisplayKey

func (b *LoopbackIdentifyUI) DisplayKey(k keybase1.IdentifyKey) error

func (*LoopbackIdentifyUI) DisplayTLFCreateWithInvite

func (b *LoopbackIdentifyUI) DisplayTLFCreateWithInvite(d keybase1.DisplayTLFCreateWithInviteArg) error

func (*LoopbackIdentifyUI) DisplayTrackStatement

func (b *LoopbackIdentifyUI) DisplayTrackStatement(s string) error

func (*LoopbackIdentifyUI) DisplayUserCard

func (b *LoopbackIdentifyUI) DisplayUserCard(c keybase1.UserCard) error

func (*LoopbackIdentifyUI) Finish

func (b *LoopbackIdentifyUI) Finish() error

func (*LoopbackIdentifyUI) FinishSocialProofCheck

func (b *LoopbackIdentifyUI) FinishSocialProofCheck(p keybase1.RemoteProof, l keybase1.LinkCheckResult) error

func (*LoopbackIdentifyUI) FinishWebProofCheck

func (*LoopbackIdentifyUI) LaunchNetworkChecks

func (b *LoopbackIdentifyUI) LaunchNetworkChecks(i *keybase1.Identity, u *keybase1.User) error

func (*LoopbackIdentifyUI) ReportLastTrack

func (b *LoopbackIdentifyUI) ReportLastTrack(s *keybase1.TrackSummary) error

func (*LoopbackIdentifyUI) ReportTrackToken

func (b *LoopbackIdentifyUI) ReportTrackToken(t keybase1.TrackToken) error

func (*LoopbackIdentifyUI) Start

type PGPDecrypt

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

PGPDecrypt decrypts data read from source into sink for the logged in user.

func NewPGPDecrypt

func NewPGPDecrypt(g *libkb.GlobalContext, arg *PGPDecryptArg) *PGPDecrypt

NewPGPDecrypt creates a PGPDecrypt engine.

func (*PGPDecrypt) Name

func (e *PGPDecrypt) Name() string

Name is the unique engine name.

func (*PGPDecrypt) Prereqs

func (e *PGPDecrypt) Prereqs() Prereqs

GetPrereqs returns the engine prereqs.

func (*PGPDecrypt) RequiredUIs

func (e *PGPDecrypt) RequiredUIs() []libkb.UIKind

RequiredUIs returns the required UIs.

func (*PGPDecrypt) Run

func (e *PGPDecrypt) Run(m libkb.MetaContext) (err error)

Run starts the engine.

func (*PGPDecrypt) SignatureStatus

func (e *PGPDecrypt) SignatureStatus() *libkb.SignatureStatus

func (*PGPDecrypt) Signer

func (e *PGPDecrypt) Signer() *libkb.User

func (*PGPDecrypt) SubConsumers

func (e *PGPDecrypt) SubConsumers() []libkb.UIConsumer

SubConsumers returns the other UI consumers for this engine.

type PGPDecryptArg

type PGPDecryptArg struct {
	Source       io.Reader
	Sink         io.WriteCloser
	AssertSigned bool
	SignedBy     string
}

type PGPEncrypt

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

PGPEncrypt encrypts data read from a source into a sink for a set of users. It will track them if necessary.

func NewPGPEncrypt

func NewPGPEncrypt(g *libkb.GlobalContext, arg *PGPEncryptArg) *PGPEncrypt

NewPGPEncrypt creates a PGPEncrypt engine.

func (*PGPEncrypt) Name

func (e *PGPEncrypt) Name() string

Name is the unique engine name.

func (*PGPEncrypt) Prereqs

func (e *PGPEncrypt) Prereqs() Prereqs

GetPrereqs returns the engine prereqs.

func (*PGPEncrypt) RequiredUIs

func (e *PGPEncrypt) RequiredUIs() []libkb.UIKind

RequiredUIs returns the required UIs.

func (*PGPEncrypt) Run

func (e *PGPEncrypt) Run(m libkb.MetaContext) error

Run starts the engine.

func (*PGPEncrypt) SubConsumers

func (e *PGPEncrypt) SubConsumers() []libkb.UIConsumer

SubConsumers returns the other UI consumers for this engine.

type PGPEncryptArg

type PGPEncryptArg struct {
	Recips       []string // user assertions
	Source       io.Reader
	Sink         io.WriteCloser
	NoSign       bool
	NoSelf       bool
	BinaryOutput bool
	KeyQuery     string
}

type PGPImportStubbedError

type PGPImportStubbedError struct {
	KeyIDString string
}

func (PGPImportStubbedError) Error

func (e PGPImportStubbedError) Error() string

type PGPKey

type PGPKey struct {
	KeyFingerprint string `json:"key_fingerprint"`
	Bits           int    `json:"bits"`
	Algo           int    `json:"algo"`
}

func (*PGPKey) Export

func (p *PGPKey) Export() keybase1.PublicKey

type PGPKeyExportEngine

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

func (*PGPKeyExportEngine) Name

func (e *PGPKeyExportEngine) Name() string

func (*PGPKeyExportEngine) Prereqs

func (e *PGPKeyExportEngine) Prereqs() Prereqs

func (*PGPKeyExportEngine) RequiredUIs

func (e *PGPKeyExportEngine) RequiredUIs() []libkb.UIKind

func (*PGPKeyExportEngine) Results

func (e *PGPKeyExportEngine) Results() []keybase1.KeyInfo

func (*PGPKeyExportEngine) Run

func (e *PGPKeyExportEngine) Run(m libkb.MetaContext) (err error)

func (*PGPKeyExportEngine) SubConsumers

func (e *PGPKeyExportEngine) SubConsumers() []libkb.UIConsumer

type PGPKeyGen

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

PGPKeyGen is an engine.

func NewPGPKeyGen

NewPGPKeyGen creates a PGPKeyGen engine.

func (*PGPKeyGen) Name

func (e *PGPKeyGen) Name() string

Name is the unique engine name.

func (*PGPKeyGen) Prereqs

func (e *PGPKeyGen) Prereqs() Prereqs

GetPrereqs returns the engine prereqs.

func (*PGPKeyGen) RequiredUIs

func (e *PGPKeyGen) RequiredUIs() []libkb.UIKind

RequiredUIs returns the required UIs.

func (*PGPKeyGen) Run

func (e *PGPKeyGen) Run(m libkb.MetaContext) error

Run starts the engine.

func (*PGPKeyGen) SubConsumers

func (e *PGPKeyGen) SubConsumers() []libkb.UIConsumer

SubConsumers returns the other UI consumers for this engine.

type PGPKeyImportEngine

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

func NewPGPKeyImportEngineFromBytes

func NewPGPKeyImportEngineFromBytes(g *libkb.GlobalContext, key []byte, pushPrivate bool) (eng *PGPKeyImportEngine, err error)

func (*PGPKeyImportEngine) GetKID

func (e *PGPKeyImportEngine) GetKID() (kid keybase1.KID)

func (*PGPKeyImportEngine) Name

func (e *PGPKeyImportEngine) Name() string

func (*PGPKeyImportEngine) Prereqs

func (e *PGPKeyImportEngine) Prereqs() Prereqs

func (*PGPKeyImportEngine) RequiredUIs

func (e *PGPKeyImportEngine) RequiredUIs() []libkb.UIKind

func (*PGPKeyImportEngine) Run

func (e *PGPKeyImportEngine) Run(m libkb.MetaContext) (err error)

func (*PGPKeyImportEngine) SubConsumers

func (e *PGPKeyImportEngine) SubConsumers() []libkb.UIConsumer

type PGPKeyImportEngineArg

type PGPKeyImportEngineArg struct {
	Gen              *libkb.PGPGenArg
	Pregen           *libkb.PGPKeyBundle
	SigningKey       libkb.GenericKey
	Me               *libkb.User
	Lks              *libkb.LKSec
	NoSave           bool
	PushSecret       bool
	OnlySave         bool
	AllowMulti       bool
	DoExport         bool // export to GPG keychain?
	ExportEncrypted  bool // encrypt secret key before exporting to GPG?
	DoUnlock         bool
	GPGFallback      bool
	PreloadTsec      libkb.Triplesec
	PreloadStreamGen libkb.PassphraseGeneration
}

func ImportPGPKeyImportEngineArg

func ImportPGPKeyImportEngineArg(a keybase1.PGPKeyGenArg) (ret PGPKeyImportEngineArg)

func (*PGPKeyImportEngineArg) Export

func (a *PGPKeyImportEngineArg) Export() (ret keybase1.PGPKeyGenArg)

type PGPKeyfinder

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

PGPKeyfinder is an engine to find PGP Keys for users (loaded by assertions), possibly tracking them if necessary.

func NewPGPKeyfinder

func NewPGPKeyfinder(g *libkb.GlobalContext, arg *PGPKeyfinderArg) *PGPKeyfinder

NewPGPKeyfinder creates a PGPKeyfinder engine.

func (*PGPKeyfinder) Name

func (e *PGPKeyfinder) Name() string

Name is the unique engine name.

func (*PGPKeyfinder) Prereqs

func (e *PGPKeyfinder) Prereqs() Prereqs

GetPrereqs returns the engine prereqs.

func (*PGPKeyfinder) RequiredUIs

func (e *PGPKeyfinder) RequiredUIs() []libkb.UIKind

RequiredUIs returns the required UIs.

func (*PGPKeyfinder) Run

func (e *PGPKeyfinder) Run(m libkb.MetaContext) error

Run starts the engine.

func (*PGPKeyfinder) SubConsumers

func (e *PGPKeyfinder) SubConsumers() []libkb.UIConsumer

SubConsumers returns the other UI consumers for this engine.

func (*PGPKeyfinder) UsersPlusKeys

func (e *PGPKeyfinder) UsersPlusKeys() []*UserPlusKeys

UsersPlusKeys returns the users found while running the engine, plus their pgp keys.

type PGPKeyfinderArg

type PGPKeyfinderArg struct {
	Usernames []string // must be keybase usernames
}

type PGPNotActiveForLocalImport

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

func (PGPNotActiveForLocalImport) Error

type PGPPullEngine

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

func NewPGPPullEngine

func NewPGPPullEngine(g *libkb.GlobalContext, arg *PGPPullEngineArg) *PGPPullEngine

func (*PGPPullEngine) Name

func (e *PGPPullEngine) Name() string

func (*PGPPullEngine) Prereqs

func (e *PGPPullEngine) Prereqs() Prereqs

func (*PGPPullEngine) RequiredUIs

func (e *PGPPullEngine) RequiredUIs() []libkb.UIKind

func (*PGPPullEngine) Run

func (*PGPPullEngine) SubConsumers

func (e *PGPPullEngine) SubConsumers() []libkb.UIConsumer

type PGPPullEngineArg

type PGPPullEngineArg struct {
	UserAsserts []string
}

type PGPPurge

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

PGPPurge is an engine.

func NewPGPPurge

func NewPGPPurge(g *libkb.GlobalContext, arg keybase1.PGPPurgeArg) *PGPPurge

NewPGPPurge creates a PGPPurge engine.

func (*PGPPurge) KeyFiles

func (e *PGPPurge) KeyFiles() []string

KeyFiles returns the filenames of the exported keys.

func (*PGPPurge) Name

func (e *PGPPurge) Name() string

Name is the unique engine name.

func (*PGPPurge) Prereqs

func (e *PGPPurge) Prereqs() Prereqs

GetPrereqs returns the engine prereqs.

func (*PGPPurge) RequiredUIs

func (e *PGPPurge) RequiredUIs() []libkb.UIKind

RequiredUIs returns the required UIs.

func (*PGPPurge) Run

func (e *PGPPurge) Run(m libkb.MetaContext) error

Run starts the engine.

func (*PGPPurge) SubConsumers

func (e *PGPPurge) SubConsumers() []libkb.UIConsumer

SubConsumers returns the other UI consumers for this engine.

type PGPSignArg

type PGPSignArg struct {
	Sink   io.WriteCloser
	Source io.ReadCloser
	Opts   keybase1.PGPSignOptions
}

type PGPSignEngine

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

func NewPGPSignEngine

func NewPGPSignEngine(g *libkb.GlobalContext, arg *PGPSignArg) *PGPSignEngine

func (*PGPSignEngine) Name

func (p *PGPSignEngine) Name() string

func (*PGPSignEngine) Prereqs

func (p *PGPSignEngine) Prereqs() Prereqs

func (*PGPSignEngine) RequiredUIs

func (p *PGPSignEngine) RequiredUIs() []libkb.UIKind

func (*PGPSignEngine) Run

func (p *PGPSignEngine) Run(m libkb.MetaContext) (err error)

func (*PGPSignEngine) SubConsumers

func (p *PGPSignEngine) SubConsumers() []libkb.UIConsumer

type PGPUpdateEngine

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

func NewPGPUpdateEngine

func NewPGPUpdateEngine(g *libkb.GlobalContext, fingerprints []string, all bool) *PGPUpdateEngine

func (*PGPUpdateEngine) Name

func (e *PGPUpdateEngine) Name() string

func (*PGPUpdateEngine) Prereqs

func (e *PGPUpdateEngine) Prereqs() Prereqs

func (*PGPUpdateEngine) RequiredUIs

func (e *PGPUpdateEngine) RequiredUIs() []libkb.UIKind

func (*PGPUpdateEngine) Run

func (*PGPUpdateEngine) SubConsumers

func (e *PGPUpdateEngine) SubConsumers() []libkb.UIConsumer

type PGPVerify

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

PGPVerify is an engine.

func NewPGPVerify

func NewPGPVerify(g *libkb.GlobalContext, arg *PGPVerifyArg) *PGPVerify

NewPGPVerify creates a PGPVerify engine.

func (*PGPVerify) Name

func (e *PGPVerify) Name() string

Name is the unique engine name.

func (*PGPVerify) Prereqs

func (e *PGPVerify) Prereqs() Prereqs

GetPrereqs returns the engine prereqs.

func (*PGPVerify) RequiredUIs

func (e *PGPVerify) RequiredUIs() []libkb.UIKind

RequiredUIs returns the required UIs.

func (*PGPVerify) Run

func (e *PGPVerify) Run(m libkb.MetaContext) error

Run starts the engine.

func (*PGPVerify) SignatureStatus

func (e *PGPVerify) SignatureStatus() *libkb.SignatureStatus

func (*PGPVerify) Signer

func (e *PGPVerify) Signer() *libkb.User

func (*PGPVerify) SubConsumers

func (e *PGPVerify) SubConsumers() []libkb.UIConsumer

SubConsumers returns the other UI consumers for this engine.

type PGPVerifyArg

type PGPVerifyArg struct {
	Source    io.Reader
	Signature []byte
	SignedBy  string
}

type PaperKey

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

PaperKey is an engine.

func NewPaperKey

func NewPaperKey(g *libkb.GlobalContext) *PaperKey

NewPaperKey creates a PaperKey engine.

func (*PaperKey) EncKey

func (e *PaperKey) EncKey() libkb.GenericKey

func (*PaperKey) Name

func (e *PaperKey) Name() string

Name is the unique engine name.

func (*PaperKey) Passphrase

func (e *PaperKey) Passphrase() string

func (*PaperKey) Prereqs

func (e *PaperKey) Prereqs() Prereqs

GetPrereqs returns the engine prereqs.

func (*PaperKey) RequiredUIs

func (e *PaperKey) RequiredUIs() []libkb.UIKind

RequiredUIs returns the required UIs.

func (*PaperKey) Run

func (e *PaperKey) Run(m libkb.MetaContext) error

Run starts the engine.

func (*PaperKey) SigKey

func (e *PaperKey) SigKey() libkb.GenericKey

func (*PaperKey) SubConsumers

func (e *PaperKey) SubConsumers() []libkb.UIConsumer

SubConsumers returns the other UI consumers for this engine.

type PaperKeyGen

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

PaperKeyGen is an engine.

func NewPaperKeyGen

func NewPaperKeyGen(g *libkb.GlobalContext, arg *PaperKeyGenArg) *PaperKeyGen

NewPaperKeyGen creates a PaperKeyGen engine.

func (*PaperKeyGen) DeviceWithKeys

func (e *PaperKeyGen) DeviceWithKeys() *libkb.DeviceWithKeys

func (*PaperKeyGen) EncKey

func (e *PaperKeyGen) EncKey() libkb.NaclDHKeyPair

func (*PaperKeyGen) Name

func (e *PaperKeyGen) Name() string

Name is the unique engine name.

func (*PaperKeyGen) Prereqs

func (e *PaperKeyGen) Prereqs() Prereqs

GetPrereqs returns the engine prereqs.

func (*PaperKeyGen) RequiredUIs

func (e *PaperKeyGen) RequiredUIs() []libkb.UIKind

RequiredUIs returns the required UIs.

func (*PaperKeyGen) Run

func (e *PaperKeyGen) Run(m libkb.MetaContext) error

Run starts the engine.

func (*PaperKeyGen) SigKey

func (e *PaperKeyGen) SigKey() libkb.GenericKey

func (*PaperKeyGen) SubConsumers

func (e *PaperKeyGen) SubConsumers() []libkb.UIConsumer

SubConsumers returns the other UI consumers for this engine.

type PaperKeyGenArg

type PaperKeyGenArg struct {
	Passphrase libkb.PaperKeyPhrase
	SkipPush   bool

	// One of Me or UID is required
	// Me is required if not SkipPush
	Me  *libkb.User
	UID keybase1.UID

	SigningKey     libkb.GenericKey      // optional
	EncryptionKey  libkb.NaclDHKeyPair   // optional
	PerUserKeyring *libkb.PerUserKeyring // optional
}

type PaperKeyPrimary

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

PaperKeyPrimary is an engine.

func NewPaperKeyPrimary

func NewPaperKeyPrimary(g *libkb.GlobalContext, args *PaperKeyPrimaryArgs) *PaperKeyPrimary

NewPaperKeyPrimary creates a PaperKeyPrimary engine.

func (*PaperKeyPrimary) Name

func (e *PaperKeyPrimary) Name() string

Name is the unique engine name.

func (*PaperKeyPrimary) Prereqs

func (e *PaperKeyPrimary) Prereqs() Prereqs

GetPrereqs returns the engine prereqs.

func (*PaperKeyPrimary) RequiredUIs

func (e *PaperKeyPrimary) RequiredUIs() []libkb.UIKind

RequiredUIs returns the required UIs.

func (*PaperKeyPrimary) Run

Run starts the engine.

func (*PaperKeyPrimary) SubConsumers

func (e *PaperKeyPrimary) SubConsumers() []libkb.UIConsumer

SubConsumers returns the other UI consumers for this engine.

type PaperKeyPrimaryArgs

type PaperKeyPrimaryArgs struct {
	SigningKey     libkb.GenericKey
	EncryptionKey  libkb.NaclDHKeyPair
	Me             *libkb.User
	PerUserKeyring *libkb.PerUserKeyring // optional
}

type PaperKeySubmit

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

PaperKeySubmit is an engine.

func NewPaperKeySubmit

func NewPaperKeySubmit(g *libkb.GlobalContext, paperPhrase string) *PaperKeySubmit

NewPaperKeySubmit creates a PaperKeySubmit engine.

func (*PaperKeySubmit) Name

func (e *PaperKeySubmit) Name() string

Name is the unique engine name.

func (*PaperKeySubmit) Prereqs

func (e *PaperKeySubmit) Prereqs() Prereqs

Prereqs returns the engine prereqs.

func (*PaperKeySubmit) RequiredUIs

func (e *PaperKeySubmit) RequiredUIs() []libkb.UIKind

RequiredUIs returns the required UIs.

func (*PaperKeySubmit) Run

Run starts the engine.

func (*PaperKeySubmit) SubConsumers

func (e *PaperKeySubmit) SubConsumers() []libkb.UIConsumer

SubConsumers returns the other UI consumers for this engine.

type PaperProvisionEngine

type PaperProvisionEngine struct {
	libkb.Contextified
	Username   string
	DeviceName string
	PaperKey   string

	User *libkb.User
	// contains filtered or unexported fields
}

func NewPaperProvisionEngine

func NewPaperProvisionEngine(g *libkb.GlobalContext, username, deviceName,
	paperKey string) *PaperProvisionEngine

func (*PaperProvisionEngine) Name

func (e *PaperProvisionEngine) Name() string

func (*PaperProvisionEngine) Prereqs

func (e *PaperProvisionEngine) Prereqs() Prereqs

func (*PaperProvisionEngine) RequiredUIs

func (e *PaperProvisionEngine) RequiredUIs() []libkb.UIKind

func (*PaperProvisionEngine) Result

func (e *PaperProvisionEngine) Result() error

func (*PaperProvisionEngine) Run

func (e *PaperProvisionEngine) Run(m libkb.MetaContext) (err error)

func (*PaperProvisionEngine) SubConsumers

func (e *PaperProvisionEngine) SubConsumers() []libkb.UIConsumer

type PassphraseChange

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

PassphraseChange engine is used for changing the user's passphrase, either by replacement or by force.

func NewPassphraseChange

NewPassphraseChange creates a new engine for changing user passphrases, either if the current passphrase is known, or in "force" mode

func (*PassphraseChange) Name

func (c *PassphraseChange) Name() string

Name provides the name of the engine for the engine interface

func (*PassphraseChange) Prereqs

func (c *PassphraseChange) Prereqs() Prereqs

Prereqs returns engine prereqs

func (*PassphraseChange) RequiredUIs

func (c *PassphraseChange) RequiredUIs() []libkb.UIKind

RequiredUIs returns the required UIs.

func (*PassphraseChange) Run

func (c *PassphraseChange) Run(m libkb.MetaContext) (err error)

Run the engine

func (*PassphraseChange) SubConsumers

func (c *PassphraseChange) SubConsumers() []libkb.UIConsumer

SubConsumers requires the other UI consumers of this engine

type PerUserKeyRoll

type PerUserKeyRoll struct {
	libkb.Contextified

	DidNewKey bool
	// contains filtered or unexported fields
}

PerUserKeyRoll is an engine.

func NewPerUserKeyRoll

func NewPerUserKeyRoll(g *libkb.GlobalContext, args *PerUserKeyRollArgs) *PerUserKeyRoll

NewPerUserKeyRoll creates a PerUserKeyRoll engine.

func (*PerUserKeyRoll) Name

func (e *PerUserKeyRoll) Name() string

Name is the unique engine name.

func (*PerUserKeyRoll) Prereqs

func (e *PerUserKeyRoll) Prereqs() Prereqs

GetPrereqs returns the engine prereqs.

func (*PerUserKeyRoll) RequiredUIs

func (e *PerUserKeyRoll) RequiredUIs() []libkb.UIKind

RequiredUIs returns the required UIs.

func (*PerUserKeyRoll) Run

func (e *PerUserKeyRoll) Run(m libkb.MetaContext) (err error)

Run starts the engine.

func (*PerUserKeyRoll) SubConsumers

func (e *PerUserKeyRoll) SubConsumers() []libkb.UIConsumer

SubConsumers returns the other UI consumers for this engine.

type PerUserKeyRollArgs

type PerUserKeyRollArgs struct {
	Me *libkb.User // optional
}

type PerUserKeyUpgrade

type PerUserKeyUpgrade struct {
	libkb.Contextified

	DidNewKey bool
	// contains filtered or unexported fields
}

PerUserKeyUpgrade is an engine.

func NewPerUserKeyUpgrade

func NewPerUserKeyUpgrade(g *libkb.GlobalContext, args *PerUserKeyUpgradeArgs) *PerUserKeyUpgrade

NewPerUserKeyUpgrade creates a PerUserKeyUpgrade engine.

func (*PerUserKeyUpgrade) Name

func (e *PerUserKeyUpgrade) Name() string

Name is the unique engine name.

func (*PerUserKeyUpgrade) Prereqs

func (e *PerUserKeyUpgrade) Prereqs() Prereqs

GetPrereqs returns the engine prereqs.

func (*PerUserKeyUpgrade) RequiredUIs

func (e *PerUserKeyUpgrade) RequiredUIs() []libkb.UIKind

RequiredUIs returns the required UIs.

func (*PerUserKeyUpgrade) Run

func (e *PerUserKeyUpgrade) Run(m libkb.MetaContext) (err error)

Run starts the engine.

func (*PerUserKeyUpgrade) SubConsumers

func (e *PerUserKeyUpgrade) SubConsumers() []libkb.UIConsumer

SubConsumers returns the other UI consumers for this engine.

type PerUserKeyUpgradeArgs

type PerUserKeyUpgradeArgs struct{}

type PerUserKeyUpgradeBackground

type PerUserKeyUpgradeBackground struct {
	libkb.Contextified
	sync.Mutex
	// contains filtered or unexported fields
}

PerUserKeyUpgradeBackground is an engine.

func NewPerUserKeyUpgradeBackground

func NewPerUserKeyUpgradeBackground(g *libkb.GlobalContext, args *PerUserKeyUpgradeBackgroundArgs) *PerUserKeyUpgradeBackground

NewPerUserKeyUpgradeBackground creates a PerUserKeyUpgradeBackground engine.

func (*PerUserKeyUpgradeBackground) Name

Name is the unique engine name.

func (*PerUserKeyUpgradeBackground) Prereqs

func (e *PerUserKeyUpgradeBackground) Prereqs() Prereqs

GetPrereqs returns the engine prereqs.

func (*PerUserKeyUpgradeBackground) RequiredUIs

func (e *PerUserKeyUpgradeBackground) RequiredUIs() []libkb.UIKind

RequiredUIs returns the required UIs.

func (*PerUserKeyUpgradeBackground) Run

Run starts the engine. Returns immediately, kicks off a background goroutine.

func (*PerUserKeyUpgradeBackground) Shutdown

func (e *PerUserKeyUpgradeBackground) Shutdown()

func (*PerUserKeyUpgradeBackground) SubConsumers

func (e *PerUserKeyUpgradeBackground) SubConsumers() []libkb.UIConsumer

SubConsumers returns the other UI consumers for this engine.

type PerUserKeyUpgradeBackgroundArgs

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

type PerUserKeyUpkeep

type PerUserKeyUpkeep struct {
	libkb.Contextified

	DidRollKey bool
	// contains filtered or unexported fields
}

PerUserKeyUpkeep is an engine.

func NewPerUserKeyUpkeep

func NewPerUserKeyUpkeep(g *libkb.GlobalContext, args *PerUserKeyUpkeepArgs) *PerUserKeyUpkeep

NewPerUserKeyUpkeep creates a PerUserKeyUpkeep engine.

func (*PerUserKeyUpkeep) Name

func (e *PerUserKeyUpkeep) Name() string

Name is the unique engine name.

func (*PerUserKeyUpkeep) Prereqs

func (e *PerUserKeyUpkeep) Prereqs() Prereqs

GetPrereqs returns the engine prereqs.

func (*PerUserKeyUpkeep) RequiredUIs

func (e *PerUserKeyUpkeep) RequiredUIs() []libkb.UIKind

RequiredUIs returns the required UIs.

func (*PerUserKeyUpkeep) Run

func (e *PerUserKeyUpkeep) Run(m libkb.MetaContext) (err error)

Run starts the engine.

func (*PerUserKeyUpkeep) SubConsumers

func (e *PerUserKeyUpkeep) SubConsumers() []libkb.UIConsumer

SubConsumers returns the other UI consumers for this engine.

type PerUserKeyUpkeepArgs

type PerUserKeyUpkeepArgs struct{}

type PerUserKeyUpkeepBackground

type PerUserKeyUpkeepBackground struct {
	libkb.Contextified
	sync.Mutex
	// contains filtered or unexported fields
}

PerUserKeyUpkeepBackground is an engine.

func NewPerUserKeyUpkeepBackground

func NewPerUserKeyUpkeepBackground(g *libkb.GlobalContext, args *PerUserKeyUpkeepBackgroundArgs) *PerUserKeyUpkeepBackground

NewPerUserKeyUpkeepBackground creates a PerUserKeyUpkeepBackground engine.

func (*PerUserKeyUpkeepBackground) Name

Name is the unique engine name.

func (*PerUserKeyUpkeepBackground) Prereqs

func (e *PerUserKeyUpkeepBackground) Prereqs() Prereqs

GetPrereqs returns the engine prereqs.

func (*PerUserKeyUpkeepBackground) RequiredUIs

func (e *PerUserKeyUpkeepBackground) RequiredUIs() []libkb.UIKind

RequiredUIs returns the required UIs.

func (*PerUserKeyUpkeepBackground) Run

Run starts the engine. Returns immediately, kicks off a background goroutine.

func (*PerUserKeyUpkeepBackground) Shutdown

func (e *PerUserKeyUpkeepBackground) Shutdown()

func (*PerUserKeyUpkeepBackground) SubConsumers

func (e *PerUserKeyUpkeepBackground) SubConsumers() []libkb.UIConsumer

SubConsumers returns the other UI consumers for this engine.

type PerUserKeyUpkeepBackgroundArgs

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

type Prereqs

type Prereqs = libkb.EnginePrereqs

type ProfileEdit

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

func (*ProfileEdit) Name

func (e *ProfileEdit) Name() string

Name is the unique engine name.

func (*ProfileEdit) Prereqs

func (e *ProfileEdit) Prereqs() Prereqs

GetPrereqs returns the engine prereqs (none).

func (*ProfileEdit) RequiredUIs

func (e *ProfileEdit) RequiredUIs() []libkb.UIKind

func (*ProfileEdit) Run

func (e *ProfileEdit) Run(m libkb.MetaContext) (err error)

func (*ProfileEdit) SubConsumers

func (e *ProfileEdit) SubConsumers() []libkb.UIConsumer

type Proofs

type Proofs struct {
	Social  SocialProofList `json:"social,omitempty"`
	Web     WebProofList    `json:"web,omitempty"`
	PGPKeys []*PGPKey       `json:"pgp_keys,omitempty"`
}

func (*Proofs) Export

func (p *Proofs) Export() keybase1.Proofs

type Prove

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

Prove is an engine used for proving ownership of remote accounts, like Twitter, GitHub, etc.

func NewProve

func NewProve(g *libkb.GlobalContext, arg *keybase1.StartProofArg) *Prove

NewProve makes a new Prove Engine given an RPC-friendly ProveArg.

func (*Prove) Name

func (p *Prove) Name() string

Name provides the name of this engine for the engine interface contract

func (*Prove) Prereqs

func (p *Prove) Prereqs() Prereqs

GetPrereqs returns the engine prereqs.

func (*Prove) RequiredUIs

func (p *Prove) RequiredUIs() []libkb.UIKind

RequiredUIs returns the required UIs.

func (*Prove) Run

func (p *Prove) Run(m libkb.MetaContext) (err error)

Run runs the Prove engine, performing all steps of the proof process.

func (*Prove) SigID

func (p *Prove) SigID() keybase1.SigID

SigID returns the signature id of the proof posted to the server.

func (*Prove) SubConsumers

func (p *Prove) SubConsumers() []libkb.UIConsumer

SubConsumers returns the other UI consumers for this engine.

type ProveCheck

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

ProveCheck is an engine.

func NewProveCheck

func NewProveCheck(g *libkb.GlobalContext, sigID keybase1.SigID) *ProveCheck

NewProveCheck creates a ProveCheck engine.

func (*ProveCheck) Name

func (e *ProveCheck) Name() string

Name is the unique engine name.

func (*ProveCheck) Prereqs

func (e *ProveCheck) Prereqs() Prereqs

GetPrereqs returns the engine prereqs.

func (*ProveCheck) RequiredUIs

func (e *ProveCheck) RequiredUIs() []libkb.UIKind

RequiredUIs returns the required UIs.

func (*ProveCheck) Results

func (e *ProveCheck) Results() (found bool, status keybase1.ProofStatus, state keybase1.ProofState, proofText string)

func (*ProveCheck) Run

func (e *ProveCheck) Run(m libkb.MetaContext) error

Run starts the engine.

func (*ProveCheck) SubConsumers

func (e *ProveCheck) SubConsumers() []libkb.UIConsumer

SubConsumers returns the other UI consumers for this engine.

type ResolveThenIdentify2

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

func (*ResolveThenIdentify2) ConfirmResult

func (e *ResolveThenIdentify2) ConfirmResult() keybase1.ConfirmResult

func (*ResolveThenIdentify2) GetIdentifyOutcome

func (e *ResolveThenIdentify2) GetIdentifyOutcome() *libkb.IdentifyOutcome

func (*ResolveThenIdentify2) GetProofSet

func (e *ResolveThenIdentify2) GetProofSet() *libkb.ProofSet

func (*ResolveThenIdentify2) Name

func (e *ResolveThenIdentify2) Name() string

Name is the unique engine name.

func (*ResolveThenIdentify2) Prereqs

func (e *ResolveThenIdentify2) Prereqs() Prereqs

GetPrereqs returns the engine prereqs.

func (*ResolveThenIdentify2) RequiredUIs

func (e *ResolveThenIdentify2) RequiredUIs() []libkb.UIKind

RequiredUIs returns the required UIs.

func (*ResolveThenIdentify2) Result

func (*ResolveThenIdentify2) Run

func (e *ResolveThenIdentify2) Run(m libkb.MetaContext) (err error)

func (*ResolveThenIdentify2) SetResponsibleGregorItem

func (e *ResolveThenIdentify2) SetResponsibleGregorItem(item gregor.Item)

func (*ResolveThenIdentify2) SubConsumers

func (e *ResolveThenIdentify2) SubConsumers() []libkb.UIConsumer

SubConsumers returns the other UI consumers for this engine.

func (*ResolveThenIdentify2) TrackToken

func (e *ResolveThenIdentify2) TrackToken() keybase1.TrackToken

type RevokeDeviceEngineArgs

type RevokeDeviceEngineArgs struct {
	ID                   keybase1.DeviceID
	ForceSelf            bool
	ForceLast            bool
	SkipUserEKForTesting bool
}

type RevokeEngine

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

func NewRevokeDeviceEngine

func NewRevokeDeviceEngine(g *libkb.GlobalContext, args RevokeDeviceEngineArgs) *RevokeEngine

func NewRevokeKeyEngine

func NewRevokeKeyEngine(g *libkb.GlobalContext, kid keybase1.KID) *RevokeEngine

func (*RevokeEngine) Name

func (e *RevokeEngine) Name() string

func (*RevokeEngine) Prereqs

func (e *RevokeEngine) Prereqs() Prereqs

func (*RevokeEngine) RequiredUIs

func (e *RevokeEngine) RequiredUIs() []libkb.UIKind

func (*RevokeEngine) Run

func (e *RevokeEngine) Run(m libkb.MetaContext) error

func (*RevokeEngine) SubConsumers

func (e *RevokeEngine) SubConsumers() []libkb.UIConsumer

type RevokeMode

type RevokeMode int
const (
	RevokeKey RevokeMode = iota
	RevokeDevice
)

type RevokeSigsEngine

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

func NewRevokeSigsEngine

func NewRevokeSigsEngine(g *libkb.GlobalContext, sigIDQueries []string) *RevokeSigsEngine

func (*RevokeSigsEngine) Name

func (e *RevokeSigsEngine) Name() string

func (*RevokeSigsEngine) Prereqs

func (e *RevokeSigsEngine) Prereqs() Prereqs

func (*RevokeSigsEngine) RequiredUIs

func (e *RevokeSigsEngine) RequiredUIs() []libkb.UIKind

func (*RevokeSigsEngine) Run

func (*RevokeSigsEngine) SubConsumers

func (e *RevokeSigsEngine) SubConsumers() []libkb.UIConsumer

type SaltpackDecrypt

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

SaltpackDecrypt decrypts data read from a source into a sink.

func NewSaltpackDecrypt

func NewSaltpackDecrypt(arg *SaltpackDecryptArg, pnymResolver saltpack.SymmetricKeyResolver) *SaltpackDecrypt

NewSaltpackDecrypt creates a SaltpackDecrypt engine.

func (*SaltpackDecrypt) MessageInfo

func (*SaltpackDecrypt) Name

func (e *SaltpackDecrypt) Name() string

Name is the unique engine name.

func (*SaltpackDecrypt) Prereqs

func (e *SaltpackDecrypt) Prereqs() Prereqs

GetPrereqs returns the engine prereqs.

func (*SaltpackDecrypt) RequiredUIs

func (e *SaltpackDecrypt) RequiredUIs() []libkb.UIKind

RequiredUIs returns the required UIs.

func (*SaltpackDecrypt) Run

func (e *SaltpackDecrypt) Run(m libkb.MetaContext) (err error)

Run starts the engine.

func (*SaltpackDecrypt) SubConsumers

func (e *SaltpackDecrypt) SubConsumers() []libkb.UIConsumer

SubConsumers returns the other UI consumers for this engine.

type SaltpackDecryptArg

type SaltpackDecryptArg struct {
	Source io.Reader
	Sink   io.WriteCloser
	Opts   keybase1.SaltpackDecryptOptions
}

type SaltpackEncrypt

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

SaltpackEncrypt encrypts data read from a source into a sink for a set of users. It will track them if necessary.

func NewSaltpackEncrypt

NewSaltpackEncrypt creates a SaltpackEncrypt engine.

func (*SaltpackEncrypt) Name

func (e *SaltpackEncrypt) Name() string

Name is the unique engine name.

func (*SaltpackEncrypt) Prereqs

func (e *SaltpackEncrypt) Prereqs() Prereqs

Prereqs returns the engine prereqs.

func (*SaltpackEncrypt) RequiredUIs

func (e *SaltpackEncrypt) RequiredUIs() []libkb.UIKind

RequiredUIs returns the required UIs.

func (*SaltpackEncrypt) Run

func (e *SaltpackEncrypt) Run(m libkb.MetaContext) (err error)

Run starts the engine.

func (*SaltpackEncrypt) SubConsumers

func (e *SaltpackEncrypt) SubConsumers() []libkb.UIConsumer

SubConsumers returns the other UI consumers for this engine.

type SaltpackEncryptArg

type SaltpackEncryptArg struct {
	Opts   keybase1.SaltpackEncryptOptions
	Source io.Reader
	Sink   io.WriteCloser
}

type SaltpackSenderIdentify

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

func (*SaltpackSenderIdentify) Name

func (e *SaltpackSenderIdentify) Name() string

func (*SaltpackSenderIdentify) Prereqs

func (e *SaltpackSenderIdentify) Prereqs() Prereqs

GetPrereqs returns the engine prereqs.

func (*SaltpackSenderIdentify) RequiredUIs

func (e *SaltpackSenderIdentify) RequiredUIs() []libkb.UIKind

RequiredUIs returns the required UIs.

func (*SaltpackSenderIdentify) Result

func (*SaltpackSenderIdentify) Run

func (*SaltpackSenderIdentify) SubConsumers

func (e *SaltpackSenderIdentify) SubConsumers() []libkb.UIConsumer

SubConsumers returns the other UI consumers for this engine.

type SaltpackSenderIdentifyArg

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

type SaltpackSign

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

SaltpackSign is an engine.

func NewSaltpackSign

func NewSaltpackSign(g *libkb.GlobalContext, arg *SaltpackSignArg) *SaltpackSign

NewSaltpackSign creates a SaltpackSign engine.

func (*SaltpackSign) Name

func (e *SaltpackSign) Name() string

Name is the unique engine name.

func (*SaltpackSign) Prereqs

func (e *SaltpackSign) Prereqs() Prereqs

GetPrereqs returns the engine prereqs.

func (*SaltpackSign) RequiredUIs

func (e *SaltpackSign) RequiredUIs() []libkb.UIKind

RequiredUIs returns the required UIs.

func (*SaltpackSign) Run

func (e *SaltpackSign) Run(m libkb.MetaContext) error

Run starts the engine.

func (*SaltpackSign) SubConsumers

func (e *SaltpackSign) SubConsumers() []libkb.UIConsumer

SubConsumers returns the other UI consumers for this engine.

type SaltpackSignArg

type SaltpackSignArg struct {
	Sink   io.WriteCloser
	Source io.ReadCloser
	Opts   keybase1.SaltpackSignOptions
}

type SaltpackUserKeyfinder

type SaltpackUserKeyfinder struct {
	Arg                           libkb.SaltpackRecipientKeyfinderArg
	RecipientEntityKeyMap         map[keybase1.UserOrTeamID]([]keybase1.KID)
	RecipientDeviceAndPaperKeyMap map[keybase1.UID]([]keybase1.KID)
}

SaltpackUserKeyfinder is an engine to find Per User Keys (PUK). Users can also be loaded by assertions, possibly tracking them if necessary. This engine does not find per team keys, which capability is implemented by SaltpackRecipientKeyfinder in the saltpackKeyHelpers package.

func (*SaltpackUserKeyfinder) AddDeviceAndPaperKeys

func (e *SaltpackUserKeyfinder) AddDeviceAndPaperKeys(m libkb.MetaContext, upk *keybase1.UserPlusKeysV2) error

AddPUK returns no error if it adds at least one key (or no paper keys and device keys were requested), otherwise it returns a libkb.NoNaClEncryptionKeyError

func (*SaltpackUserKeyfinder) AddOwnKeysIfNeeded

func (e *SaltpackUserKeyfinder) AddOwnKeysIfNeeded(m libkb.MetaContext) error

func (*SaltpackUserKeyfinder) AddPUK

AddPUK returns no error unless the user has no PUK, in which case it returns a libkb.NoNaClEncryptionKeyError

func (*SaltpackUserKeyfinder) AddUserRecipient

func (e *SaltpackUserKeyfinder) AddUserRecipient(m libkb.MetaContext, upk *keybase1.UserPlusKeysV2) error

func (*SaltpackUserKeyfinder) GetPublicKIDs

func (e *SaltpackUserKeyfinder) GetPublicKIDs() []keybase1.KID

func (*SaltpackUserKeyfinder) GetSymmetricKeys

func (*SaltpackUserKeyfinder) IdentifyUser

func (e *SaltpackUserKeyfinder) IdentifyUser(m libkb.MetaContext, user string) (upk *keybase1.UserPlusKeysV2, err error)

func (*SaltpackUserKeyfinder) Name

func (e *SaltpackUserKeyfinder) Name() string

Name is the unique engine name.

func (*SaltpackUserKeyfinder) Prereqs

func (e *SaltpackUserKeyfinder) Prereqs() Prereqs

Prereqs returns the engine prereqs.

func (*SaltpackUserKeyfinder) RequiredUIs

func (e *SaltpackUserKeyfinder) RequiredUIs() []libkb.UIKind

RequiredUIs returns the required UIs.

func (*SaltpackUserKeyfinder) Run

func (e *SaltpackUserKeyfinder) Run(m libkb.MetaContext) (err error)

func (*SaltpackUserKeyfinder) SubConsumers

func (e *SaltpackUserKeyfinder) SubConsumers() []libkb.UIConsumer

SubConsumers returns the other UI consumers for this engine.

type SaltpackVerify

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

SaltpackVerify is an engine.

func NewSaltpackVerify

func NewSaltpackVerify(g *libkb.GlobalContext, arg *SaltpackVerifyArg) *SaltpackVerify

NewSaltpackVerify creates a SaltpackVerify engine.

func (*SaltpackVerify) Name

func (e *SaltpackVerify) Name() string

Name is the unique engine name.

func (*SaltpackVerify) Prereqs

func (e *SaltpackVerify) Prereqs() Prereqs

Prereqs returns the engine prereqs.

func (*SaltpackVerify) RequiredUIs

func (e *SaltpackVerify) RequiredUIs() []libkb.UIKind

RequiredUIs returns the required UIs.

func (*SaltpackVerify) Run

Run starts the engine.

func (*SaltpackVerify) SubConsumers

func (e *SaltpackVerify) SubConsumers() []libkb.UIConsumer

SubConsumers returns the other UI consumers for this engine.

type SaltpackVerifyArg

type SaltpackVerifyArg struct {
	Sink   io.WriteCloser
	Source io.Reader
	Opts   keybase1.SaltpackVerifyOptions
}

SaltpackVerifyArg are engine args.

type ScanKeys

type ScanKeys struct {
	sync.Mutex // protect keyOwners map
	libkb.MetaContextified
	// contains filtered or unexported fields
}

ScanKeys finds pgp decryption keys in SKB and also if there is one stored on the server. It satisfies the openpgp.KeyRing interface.

It also will find public pgp keys for signature verification.

It is not an engine, but uses an engine and is used by engines, so has to be in the engine package. It is a UIConsumer.

func NewScanKeys

func NewScanKeys(m libkb.MetaContext) (sk *ScanKeys, err error)

NewScanKeys creates a ScanKeys type. If there is a login session, it will load the pgp keys for that user.

func (*ScanKeys) Count

func (s *ScanKeys) Count() int

Count returns the number of local keys available.

func (*ScanKeys) DecryptionKeys

func (s *ScanKeys) DecryptionKeys() []openpgp.Key

DecryptionKeys returns all private keys that are valid for decryption. It is only used if there is no key id in the message.

func (*ScanKeys) KeyOwner

func (s *ScanKeys) KeyOwner(keyID uint64) *libkb.User

KeyOwner returns the owner of the keys found by ScanKeys that were used in KeysById or KeysByIdUsage, indexed by keyID.

func (*ScanKeys) KeyOwnerByEntity

func (s *ScanKeys) KeyOwnerByEntity(entity *openpgp.Entity) *libkb.User

func (*ScanKeys) KeysById

func (s *ScanKeys) KeysById(id uint64, fp []byte) []openpgp.Key

KeysById returns the set of keys that have the given key id. It is only called during decryption by openpgp.

func (*ScanKeys) KeysByIdUsage

func (s *ScanKeys) KeysByIdUsage(id uint64, fp []byte, requiredUsage byte) []openpgp.Key

KeysByIdAndUsage returns the set of public keys with the given id that also meet the key usage given by requiredUsage.

The requiredUsage is expressed as the bitwise-OR of packet.KeyFlag* values.

It is only called during signature verification so therefore requiredUsage will only equal KeyFlagSign, thus only public keys are required. If this ever changes upstream in openpgp, this function will panic.

func (*ScanKeys) Name

func (s *ScanKeys) Name() string

func (*ScanKeys) RequiredUIs

func (s *ScanKeys) RequiredUIs() []libkb.UIKind

func (*ScanKeys) SubConsumers

func (s *ScanKeys) SubConsumers() []libkb.UIConsumer

type ScanProofsCache

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

func LoadScanProofsCache

func LoadScanProofsCache(filepath string) (*ScanProofsCache, error)

func NewScanProofsCache

func NewScanProofsCache() *ScanProofsCache

func (*ScanProofsCache) Get

func (c *ScanProofsCache) Get(sigID string) bool

func (*ScanProofsCache) Save

func (c *ScanProofsCache) Save(filepath string) error

func (*ScanProofsCache) Set

func (c *ScanProofsCache) Set(sigID string)

type ScanProofsCacheData

type ScanProofsCacheData struct {
	// Map from sigid to whether the proof is ok.
	Proofs map[string]bool
}

type ScanProofsEngine

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

func NewScanProofsEngine

func NewScanProofsEngine(infile string, indices string, sigid string, ratelimit int, cachefile string, ignorefile string, g *libkb.GlobalContext) *ScanProofsEngine

func (*ScanProofsEngine) CheckOne

CheckOne checks one proof using two checkers (default, pvl). NOTE: This doesn't make sense anymore because pvl is the default. Returns nil or an error, whether a hint was found, and any more serious error

func (e *ScanProofsEngine) GetRemoteProofChainLink(m libkb.MetaContext, uid keybase1.UID, sigid keybase1.SigID) (libkb.RemoteProofChainLink, error)

func (*ScanProofsEngine) GetSigHint

func (e *ScanProofsEngine) GetSigHint(m libkb.MetaContext, uid keybase1.UID, sigid keybase1.SigID) (*libkb.SigHint, error)

GetSigHint gets the SigHint. This can return (nil, nil) if nothing goes wrong but there is no hint.

func (*ScanProofsEngine) Name

func (e *ScanProofsEngine) Name() string

func (*ScanProofsEngine) ParseIndices

func (e *ScanProofsEngine) ParseIndices(indices string) (start int, end int, reterr error)

func (*ScanProofsEngine) Prereqs

func (e *ScanProofsEngine) Prereqs() Prereqs

func (*ScanProofsEngine) ProcessOne

func (e *ScanProofsEngine) ProcessOne(m libkb.MetaContext, i int, rec map[string]string, cache *ScanProofsCache, ignored []string, tickers ScanProofsTickers) error

func (*ScanProofsEngine) RequiredUIs

func (e *ScanProofsEngine) RequiredUIs() []libkb.UIKind

func (*ScanProofsEngine) Run

func (e *ScanProofsEngine) Run(m libkb.MetaContext) (err error)

func (*ScanProofsEngine) SubConsumers

func (e *ScanProofsEngine) SubConsumers() []libkb.UIConsumer

type ScanProofsTickers

type ScanProofsTickers map[keybase1.ProofType]*time.Ticker

type SearchEngine

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

func NewSearchEngine

func NewSearchEngine(g *libkb.GlobalContext, args SearchEngineArgs) *SearchEngine

func (*SearchEngine) GetResults

func (e *SearchEngine) GetResults() []keybase1.SearchResult

func (*SearchEngine) Name

func (e *SearchEngine) Name() string

func (*SearchEngine) Prereqs

func (e *SearchEngine) Prereqs() Prereqs

func (*SearchEngine) RequiredUIs

func (e *SearchEngine) RequiredUIs() []libkb.UIKind

func (*SearchEngine) Run

func (e *SearchEngine) Run(m libkb.MetaContext) error

func (*SearchEngine) SubConsumers

func (e *SearchEngine) SubConsumers() []libkb.UIConsumer

type SearchEngineArgs

type SearchEngineArgs struct {
	Query     string
	NumWanted int
}

type SecretKeysEngine

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

func NewSecretKeysEngine

func NewSecretKeysEngine(g *libkb.GlobalContext) *SecretKeysEngine

func (*SecretKeysEngine) Name

func (e *SecretKeysEngine) Name() string

func (*SecretKeysEngine) Prereqs

func (e *SecretKeysEngine) Prereqs() Prereqs

func (*SecretKeysEngine) RequiredUIs

func (e *SecretKeysEngine) RequiredUIs() []libkb.UIKind

func (*SecretKeysEngine) Result

func (e *SecretKeysEngine) Result() keybase1.SecretKeys

func (*SecretKeysEngine) Run

func (e *SecretKeysEngine) Run(m libkb.MetaContext) (err error)

func (*SecretKeysEngine) SubConsumers

func (e *SecretKeysEngine) SubConsumers() []libkb.UIConsumer

type SelfProvisionEngine

type SelfProvisionEngine struct {
	libkb.Contextified
	DeviceName string

	User *libkb.User
	// contains filtered or unexported fields
}

func NewSelfProvisionEngine

func NewSelfProvisionEngine(g *libkb.GlobalContext, deviceName string) *SelfProvisionEngine

If a device is cloned, we can provision a new device from the current device to get out of the cloned state.

func (*SelfProvisionEngine) Name

func (e *SelfProvisionEngine) Name() string

func (*SelfProvisionEngine) Prereqs

func (e *SelfProvisionEngine) Prereqs() Prereqs

func (*SelfProvisionEngine) RequiredUIs

func (e *SelfProvisionEngine) RequiredUIs() []libkb.UIKind

func (*SelfProvisionEngine) Result

func (e *SelfProvisionEngine) Result() error

func (*SelfProvisionEngine) Run

func (e *SelfProvisionEngine) Run(m libkb.MetaContext) (err error)

func (*SelfProvisionEngine) SubConsumers

func (e *SelfProvisionEngine) SubConsumers() []libkb.UIConsumer

type SignupEngine

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

func NewSignupEngine

func NewSignupEngine(g *libkb.GlobalContext, arg *SignupEngineRunArg) *SignupEngine

func (*SignupEngine) GetMe

func (s *SignupEngine) GetMe() *libkb.User

func (*SignupEngine) Name

func (s *SignupEngine) Name() string

func (*SignupEngine) Prereqs

func (s *SignupEngine) Prereqs() Prereqs

func (*SignupEngine) RequiredUIs

func (s *SignupEngine) RequiredUIs() []libkb.UIKind

func (*SignupEngine) Run

func (s *SignupEngine) Run(m libkb.MetaContext) (err error)

func (*SignupEngine) SubConsumers

func (s *SignupEngine) SubConsumers() []libkb.UIConsumer

type SignupEngineRunArg

type SignupEngineRunArg struct {
	Username    string
	Email       string
	InviteCode  string
	Passphrase  string
	StoreSecret bool
	DeviceName  string
	DeviceType  keybase1.DeviceType
	SkipGPG     bool
	SkipMail    bool
	SkipPaper   bool
	GenPGPBatch bool // if true, generate and push a pgp key to the server (no interaction)
}

type SignupJoinEngine

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

func NewSignupJoinEngine

func NewSignupJoinEngine(g *libkb.GlobalContext) *SignupJoinEngine

func (*SignupJoinEngine) CheckRegistered

func (s *SignupJoinEngine) CheckRegistered() (err error)

func (*SignupJoinEngine) Init

func (s *SignupJoinEngine) Init() error

func (*SignupJoinEngine) Post

func (*SignupJoinEngine) PostInviteRequest

func (s *SignupJoinEngine) PostInviteRequest(m libkb.MetaContext, arg libkb.InviteRequestArg) error

func (*SignupJoinEngine) Run

func (*SignupJoinEngine) WriteOut

func (s *SignupJoinEngine) WriteOut(m libkb.MetaContext, salt []byte) error

type SignupJoinEngineRunArg

type SignupJoinEngineRunArg struct {
	Username   string
	Email      string
	InviteCode string
	PWHash     []byte
	PWSalt     []byte
	PDPKA5KID  keybase1.KID
	SkipMail   bool
}

type SignupJoinEngineRunRes

type SignupJoinEngineRunRes struct {
	PassphraseOk bool
	PostOk       bool
	WriteOk      bool
	UV           keybase1.UserVersion
	User         *libkb.User
	Err          error
	PpGen        libkb.PassphraseGeneration
}

func (SignupJoinEngineRunRes) Error

func (r SignupJoinEngineRunRes) Error() string

type SigsList

type SigsList struct {
	SigsListArgs

	libkb.Contextified
	// contains filtered or unexported fields
}

SigsList is an engine for the sigs-list command.

func NewSigsList

func NewSigsList(g *libkb.GlobalContext, args SigsListArgs) *SigsList

NewSigsList creates a SigsList engine.

func (*SigsList) JSON

func (e *SigsList) JSON() (string, error)

func (*SigsList) Name

func (e *SigsList) Name() string

Name is the unique engine name.

func (*SigsList) Prereqs

func (e *SigsList) Prereqs() Prereqs

GetPrereqs returns the engine prereqs.

func (*SigsList) RequiredUIs

func (e *SigsList) RequiredUIs() []libkb.UIKind

RequiredUIs returns the required UIs.

func (*SigsList) Run

func (e *SigsList) Run(m libkb.MetaContext) error

Run starts the engine.

func (*SigsList) Sigs

func (e *SigsList) Sigs() []keybase1.Sig

Sigs returns the sig list, after processing.

func (*SigsList) SubConsumers

func (e *SigsList) SubConsumers() []libkb.UIConsumer

SubConsumers returns the other UI consumers for this engine.

type SigsListArgs

type SigsListArgs struct {
	Username string
	Types    map[string]bool
	Filterx  string
	Verbose  bool
	Revoked  bool
}

type SocialProof

type SocialProof struct {
	Service  string `json:"service"`
	Username string `json:"username"`
}

func (SocialProof) Export

func (s SocialProof) Export() keybase1.TrackProof

type SocialProofList

type SocialProofList []SocialProof

func (SocialProofList) Export

func (s SocialProofList) Export() []keybase1.TrackProof

type Summary

type Summary struct {
	UID       keybase1.UID `json:"-"`
	Username  string       `json:"username"`
	Thumbnail string       `json:"thumbnail"`
	IDVersion int          `json:"id_version"`
	FullName  string       `json:"full_name"`
	Bio       string       `json:"bio"`
	Proofs    *Proofs      `json:"remote_proofs,omitempty"`
}

func (Summary) Export

func (s Summary) Export() keybase1.UserSummary

type TaskFunc

type TaskFunc func(m libkb.MetaContext) error

Function to run periodically. The error is logged but otherwise ignored.

type TrackEngine

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

func NewTrackEngine

func NewTrackEngine(g *libkb.GlobalContext, arg *TrackEngineArg) *TrackEngine

NewTrackEngine creates a default TrackEngine for tracking theirName.

func (*TrackEngine) ConfirmResult

func (e *TrackEngine) ConfirmResult() keybase1.ConfirmResult

func (*TrackEngine) Name

func (e *TrackEngine) Name() string

func (*TrackEngine) Prereqs

func (e *TrackEngine) Prereqs() Prereqs

func (*TrackEngine) RequiredUIs

func (e *TrackEngine) RequiredUIs() []libkb.UIKind

func (*TrackEngine) Run

func (e *TrackEngine) Run(m libkb.MetaContext) error

func (*TrackEngine) SubConsumers

func (e *TrackEngine) SubConsumers() []libkb.UIConsumer

func (*TrackEngine) User

func (e *TrackEngine) User() *libkb.User

type TrackEngineArg

type TrackEngineArg struct {
	UserAssertion     string
	Me                *libkb.User
	Options           keybase1.TrackOptions
	ForceRemoteCheck  bool
	AllowSelfIdentify bool
	SigVersion        libkb.SigVersion
}

type TrackList

type TrackList []*libkb.TrackChainLink

func (TrackList) Len

func (tl TrackList) Len() int

func (TrackList) Less

func (tl TrackList) Less(i, j int) bool

func (TrackList) Swap

func (tl TrackList) Swap(i, j int)

type TrackToken

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

TrackToken is an engine.

func NewTrackToken

func NewTrackToken(g *libkb.GlobalContext, arg *TrackTokenArg) *TrackToken

NewTrackToken creates a TrackToken engine.

func (*TrackToken) Name

func (e *TrackToken) Name() string

Name is the unique engine name.

func (*TrackToken) Prereqs

func (e *TrackToken) Prereqs() Prereqs

GetPrereqs returns the engine prereqs.

func (*TrackToken) RequiredUIs

func (e *TrackToken) RequiredUIs() []libkb.UIKind

RequiredUIs returns the required UIs.

func (*TrackToken) Run

func (e *TrackToken) Run(m libkb.MetaContext) (err error)

Run starts the engine.

func (*TrackToken) SubConsumers

func (e *TrackToken) SubConsumers() []libkb.UIConsumer

SubConsumers returns the other UI consumers for this engine.

type TrackTokenArg

type TrackTokenArg struct {
	Token   keybase1.TrackToken
	Me      *libkb.User
	Options keybase1.TrackOptions
}

type UIDelegateWanter

type UIDelegateWanter interface {
	WantDelegate(libkb.UIKind) bool
}

type Unlock

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

Unlock is an engine.

func NewUnlock

func NewUnlock(g *libkb.GlobalContext) *Unlock

NewUnlock creates a Unlock engine.

func NewUnlockWithPassphrase

func NewUnlockWithPassphrase(g *libkb.GlobalContext, passphrase string) *Unlock

NewUnlock creates a Unlock engine.

func (*Unlock) Name

func (e *Unlock) Name() string

Name is the unique engine name.

func (*Unlock) Prereqs

func (e *Unlock) Prereqs() Prereqs

GetPrereqs returns the engine prereqs.

func (*Unlock) RequiredUIs

func (e *Unlock) RequiredUIs() []libkb.UIKind

RequiredUIs returns the required UIs.

func (*Unlock) Run

func (e *Unlock) Run(m libkb.MetaContext) (err error)

Run starts the engine.

func (*Unlock) SubConsumers

func (e *Unlock) SubConsumers() []libkb.UIConsumer

SubConsumers returns the other UI consumers for this engine.

type UntrackEngine

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

func NewUntrackEngine

func NewUntrackEngine(g *libkb.GlobalContext, arg *UntrackEngineArg) *UntrackEngine

NewUntrackEngine creates a default UntrackEngine for tracking theirName.

func (*UntrackEngine) Name

func (e *UntrackEngine) Name() string

func (*UntrackEngine) Prereqs

func (e *UntrackEngine) Prereqs() Prereqs

func (*UntrackEngine) RequiredUIs

func (e *UntrackEngine) RequiredUIs() []libkb.UIKind

func (*UntrackEngine) Run

func (e *UntrackEngine) Run(m libkb.MetaContext) (err error)

func (*UntrackEngine) SubConsumers

func (e *UntrackEngine) SubConsumers() []libkb.UIConsumer

type UntrackEngineArg

type UntrackEngineArg struct {
	Username   libkb.NormalizedUsername
	Me         *libkb.User
	SigVersion libkb.SigVersion
}

type UserConfigEngine

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

func (*UserConfigEngine) Name

func (e *UserConfigEngine) Name() string

func (*UserConfigEngine) Prereqs

func (e *UserConfigEngine) Prereqs() Prereqs

func (*UserConfigEngine) RequiredUIs

func (e *UserConfigEngine) RequiredUIs() []libkb.UIKind

func (*UserConfigEngine) Run

func (e *UserConfigEngine) Run(m libkb.MetaContext) (err error)

func (*UserConfigEngine) SubConsumers

func (e *UserConfigEngine) SubConsumers() []libkb.UIConsumer

type UserConfigEngineArg

type UserConfigEngineArg struct {
	Key   string
	Value string
}

type UserPlusKeys

type UserPlusKeys struct {
	User      *libkb.User
	IsTracked bool
	Keys      []*libkb.PGPKeyBundle
}

type UserSummary

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

func NewUserSummary

func NewUserSummary(g *libkb.GlobalContext, uids []keybase1.UID) *UserSummary

func (*UserSummary) ExportedSummariesList

func (e *UserSummary) ExportedSummariesList() (ret []keybase1.UserSummary)

func (*UserSummary) Name

func (e *UserSummary) Name() string

Name is the unique engine name.

func (*UserSummary) Prereqs

func (e *UserSummary) Prereqs() Prereqs

GetPrereqs returns the engine prereqs (none).

func (*UserSummary) RequiredUIs

func (e *UserSummary) RequiredUIs() []libkb.UIKind

RequiredUIs returns the required UIs.

func (*UserSummary) Run

func (e *UserSummary) Run(m libkb.MetaContext) error

Run starts the engine.

func (*UserSummary) SubConsumers

func (e *UserSummary) SubConsumers() []libkb.UIConsumer

SubConsumers returns the other UI consumers for this engine.

func (*UserSummary) Summaries

func (e *UserSummary) Summaries() map[keybase1.UID]*Summary

func (*UserSummary) SummariesList

func (e *UserSummary) SummariesList() []*Summary

type WalletInitBackground

type WalletInitBackground struct {
	libkb.Contextified
	sync.Mutex
	// contains filtered or unexported fields
}

WalletInitBackground is an engine.

func NewWalletInitBackground

func NewWalletInitBackground(g *libkb.GlobalContext, args *WalletInitBackgroundArgs) *WalletInitBackground

NewWalletInitBackground creates a WalletInitBackground engine.

func (*WalletInitBackground) Name

func (e *WalletInitBackground) Name() string

Name is the unique engine name.

func (*WalletInitBackground) Prereqs

func (e *WalletInitBackground) Prereqs() Prereqs

GetPrereqs returns the engine prereqs.

func (*WalletInitBackground) RequiredUIs

func (e *WalletInitBackground) RequiredUIs() []libkb.UIKind

RequiredUIs returns the required UIs.

func (*WalletInitBackground) Run

func (e *WalletInitBackground) Run(m libkb.MetaContext) (err error)

Run starts the engine. Returns immediately, kicks off a background goroutine.

func (*WalletInitBackground) Shutdown

func (e *WalletInitBackground) Shutdown()

func (*WalletInitBackground) SubConsumers

func (e *WalletInitBackground) SubConsumers() []libkb.UIConsumer

SubConsumers returns the other UI consumers for this engine.

type WalletInitBackgroundArgs

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

type WalletUpkeepBackground

type WalletUpkeepBackground struct {
	libkb.Contextified
	sync.Mutex
	// contains filtered or unexported fields
}

WalletUpkeepBackground is an engine.

func NewWalletUpkeepBackground

func NewWalletUpkeepBackground(g *libkb.GlobalContext, args *WalletUpkeepBackgroundArgs) *WalletUpkeepBackground

NewWalletUpkeepBackground creates a WalletUpkeepBackground engine.

func (*WalletUpkeepBackground) Name

func (e *WalletUpkeepBackground) Name() string

Name is the unique engine name.

func (*WalletUpkeepBackground) Prereqs

func (e *WalletUpkeepBackground) Prereqs() Prereqs

GetPrereqs returns the engine prereqs.

func (*WalletUpkeepBackground) RequiredUIs

func (e *WalletUpkeepBackground) RequiredUIs() []libkb.UIKind

RequiredUIs returns the required UIs.

func (*WalletUpkeepBackground) Run

Run starts the engine. Returns immediately, kicks off a background goroutine.

func (*WalletUpkeepBackground) Shutdown

func (e *WalletUpkeepBackground) Shutdown()

func (*WalletUpkeepBackground) SubConsumers

func (e *WalletUpkeepBackground) SubConsumers() []libkb.UIConsumer

SubConsumers returns the other UI consumers for this engine.

type WalletUpkeepBackgroundArgs

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

type WebProof

type WebProof struct {
	Hostname  string   `json:"hostname"`
	Protocols []string `json:"protocols"`
}

func (WebProof) Export

func (w WebProof) Export() keybase1.WebProof

type WebProofList

type WebProofList []WebProof

func (WebProofList) Export

func (w WebProofList) Export() []keybase1.WebProof

Source Files

Jump to

Keyboard shortcuts

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