Documentation ¶
Overview ¶
Code used in populating JSON objects to generating Keybase-style signatures.
A KeyFamily is a group of sibling keys that have equal power for a user. A family can consist of 1 PGP keys, and arbitrarily many NaCl Sibkeys. There also can be some subkeys dangling off for ECDH.
A module for syncing secrets with the server, such as SKB PGP keys, and server-halves of our various secret keys.
A module for syncing trackers from the server
Index ¶
- Constants
- Variables
- func APIBase(un string) string
- func AppDataDir() (string, error)
- func AttachedSign(out io.WriteCloser, signed openpgp.Entity, hints *openpgp.FileHints, ...) (in io.WriteCloser, err error)
- func AttachedSignWrapper(out io.WriteCloser, key PGPKeyBundle, armored bool) (in io.WriteCloser, err error)
- func BtcAddrCheck(s string, opts *BtcOpts) (version int, pkhash []byte, err error)
- func CanEncrypt(key GenericKey) bool
- func CheckKarma(un string) (int, error)
- func CheckPosted(proofID string) (found bool, status keybase1.ProofStatus, err error)
- func CheckPostedViaSigID(sigID keybase1.SigID) (found bool, status keybase1.ProofStatus, err error)
- func CheckUIDAgainstCasedUsername(uid keybase1.UID, username string) (err error)
- func CheckUIDAgainstUsername(uid keybase1.UID, username string) (err error)
- func Cicmp(s1, s2 string) bool
- func ClearStoredSecret(g *GlobalContext, username NormalizedUsername) error
- func CombineErrors(errs ...error) error
- func ComputeSigIDFromSigBody(body []byte) keybase1.SigID
- func Decode58(inp string) (outp []byte, err error)
- func DelegatorAggregator(lctx LoginContext, ds []Delegator) (err error)
- func DeletePrimary() (err error)
- func DisplayTrackArg(sessionID int, stmt string) *keybase1.DisplayTrackStatementArg
- func DrainPipe(rc io.Reader, sink func(string)) error
- func Encode58(inp []byte) string
- func ErrToOk(err error) string
- func ExportErrorAsStatus(e error) (ret *keybase1.Status)
- func ExportPGPIdentity(identity *openpgp.Identity) keybase1.PGPIdentity
- func ExportProofError(pe ProofError) (ret keybase1.ProofResult)
- func ExportRemoteProof(p RemoteProofChainLink) keybase1.RemoteProof
- func ExportTrackDiff(d TrackDiff) (res *keybase1.TrackDiff)
- func ExportTrackSummary(l *TrackLookup, username string) *keybase1.TrackSummary
- func FastByteArrayEq(a, b []byte) bool
- func FileExists(path string) (bool, error)
- func FindBase64Block(s string, pattern []byte, url bool) bool
- func FindBase64Blocks(s string) []string
- func FindBase64Snippets(s string) []string
- func FindFirstBase64Block(s string) string
- func FormatTime(tm time.Time) string
- func GenericKeyEqual(k1, k2 GenericKey) bool
- func GetConfiguredAccounts(g *GlobalContext) ([]keybase1.ConfiguredAccount, error)
- func GetKID(w *jsonw.Wrapper) (kid keybase1.KID, err error)
- func GetLinkIDVoid(w *jsonw.Wrapper, l *LinkID, e *error)
- func GetNodeHashVoid(w *jsonw.Wrapper, nhp *NodeHash, errp *error)
- func GetPGPFingerprintVoid(w *jsonw.Wrapper, p *PGPFingerprint, e *error)
- func GetProxyCAs(out *x509.CertPool, r ConfigReader) (ret *x509.CertPool, err error)
- func GetSigID(w *jsonw.Wrapper, suffix bool) (keybase1.SigID, error)
- func GetTerminalPrompt() string
- func GetUID(w *jsonw.Wrapper) (keybase1.UID, error)
- func GetUIDVoid(w *jsonw.Wrapper, u *keybase1.UID, e *error)
- func GetUsersWithStoredSecrets(g *GlobalContext) ([]string, error)
- func GiveMeAnS(i int) string
- func HasSecretStore() bool
- func HexDecodeQuoted(data []byte) ([]byte, error)
- func ImportStatusAsError(s *keybase1.Status) error
- func IsArmored(buf []byte) bool
- func IsClearsign(p *Peeker) bool
- func IsDirEmpty(dir string) (bool, error)
- func IsEmpty(s string) bool
- func IsIn(needle string, haystack []string, ci bool) bool
- func IsNo(s string) bool
- func IsPGP(key GenericKey) bool
- func IsPGPAlgo(algo AlgoType) bool
- func IsSocketClosedError(e error) bool
- func IsValidHostname(s string) bool
- func IsYes(s string) bool
- func KarmaURL(un string) string
- func KbOpenSig(armored string) ([]byte, error)
- func KeyMatchesQuery(key GenericKey, q string, exact bool) bool
- func KeyProof(arg Delegator) (ret *jsonw.Wrapper, err error)
- func KeybaseEmailAddress(s string) string
- func ListProofCheckers() (proofCheckers []string)
- func LoadUserPlusKeys(g *GlobalContext, uid keybase1.UID, cacheOK bool) (keybase1.UserPlusKeys, error)
- func MakeParentDirs(filename string) error
- func MakeURI(prot string, host string) string
- func MsgpackDecodeAll(data []byte, handle *codec.MsgpackHandle, out interface{}) error
- func NameCmp(n1, n2 string) bool
- func NameTrim(s string) string
- func NewAPIEngines(g *GlobalContext) (*InternalAPIEngine, *ExternalAPIEngine, error)
- func NewCoinbaseChecker(p RemoteProofChainLink) (*CoinbaseChecker, ProofError)
- func NewDNSChecker(p RemoteProofChainLink) (*DNSChecker, ProofError)
- func NewDeviceID() (keybase1.DeviceID, error)
- func NewGithubChecker(p RemoteProofChainLink) (*GithubChecker, ProofError)
- func NewHackerNewsChecker(p RemoteProofChainLink) (*HackerNewsChecker, ProofError)
- func NewLoopbackConnPair() (*LoopbackConn, *LoopbackConn)
- func NewProofChecker(l RemoteProofChainLink) (ProofChecker, ProofError)
- func NewRedditChecker(p RemoteProofChainLink) (*RedditChecker, ProofError)
- func NewRooterChecker(p RemoteProofChainLink) (*RooterChecker, ProofError)
- func NewTwitterChecker(p RemoteProofChainLink) (*TwitterChecker, ProofError)
- func NewTypedChainLink(cl *ChainLink) (ret TypedChainLink, w Warning)
- func NewWebChecker(p RemoteProofChainLink) (*WebChecker, ProofError)
- func OpenLogFile() (name string, file *os.File, err error)
- func OpenSig(armored string) (ret []byte, id keybase1.SigID, err error)
- func PGPDetect(p *Peeker) (armored, clearsign bool)
- func PGPEncrypt(source io.Reader, sink io.WriteCloser, signer *PGPKeyBundle, ...) error
- func PGPEncryptString(input string, signer *PGPKeyBundle, recipients []*PGPKeyBundle) ([]byte, error)
- func PGPKeyRawToArmored(raw []byte, priv bool) (ret string, err error)
- func PGPLookup(g *GlobalContext, id uint64) (username, uid string, err error)
- func PGPLookupFingerprint(g *GlobalContext, fp *PGPFingerprint) (username, uid string, err error)
- func PGPLookupHex(g *GlobalContext, hexID string) (username, uid string, err error)
- func PacketArmoredEncode(p Packetable) (ret string, err error)
- func ParseCA(raw string) (*x509.CertPool, error)
- func ParseDNS(s string) (ret string, err error)
- func ParseGpgIndexStream(stream io.Reader) (ki *GpgKeyIndex, w Warnings, err error)
- func ParseWeb(s string) (hostname string, prot string, err error)
- func PickFirstError(errors ...error) error
- func Pluralize(n int, singular string, plural string, nshow bool) string
- func PosixLineEndings(arg string) string
- func PostDeviceLKS(sr SessionReader, deviceID keybase1.DeviceID, deviceType string, ...) error
- func PostInviteRequest(arg InviteRequestArg) (err error)
- func ProofErrorIsSoft(pe ProofError) bool
- func ProofErrorToState(pe ProofError) keybase1.ProofState
- func RandBytes(length int) ([]byte, error)
- func RandInt() (int, error)
- func RandInt64() (int64, error)
- func RandIntn(n int) int
- func RandString(prefix string, numbytes int) (string, error)
- func RegisterProofCheckHook(s string, h ProofCheckHook)
- func RegisterServiceType(st ServiceType)
- func RegisterSocialNetwork(s string)
- func RemoveLocalTrack(tracker keybase1.UID, trackee keybase1.UID, g *GlobalContext) error
- func RemoveNilErrors(errs []error) []error
- func RunSyncer(s Syncer, uid keybase1.UID, loggedIn bool, sr SessionReader) (err error)
- func SafeWriteToFile(t SafeWriter, mode os.FileMode) error
- func SecWordList(entropy int) ([]string, error)
- func SecureByteArrayEq(a, b []byte) bool
- func ShortCA(raw string) string
- func SigAssertKbPayload(armored string, expected []byte) (sigID keybase1.SigID, err error)
- func SigAssertPGPPayload(armored string, expected []byte) (sigID keybase1.SigID, err error)
- func SigAssertPayload(armored string, expected []byte) (sigID keybase1.SigID, err error)
- func SimpleSign(payload []byte, key PGPKeyBundle) (out string, id keybase1.SigID, err error)
- func SplitHost(joined string) (host string, port int, err error)
- func StoreLocalTrack(tracker keybase1.UID, trackee keybase1.UID, statement *jsonw.Wrapper, ...) error
- func Tablify(writer io.Writer, headings []string, rowfunc func() []string)
- func TempFile(prefix string, mode os.FileMode) (string, *os.File, error)
- func TorParseProxy(s string) (*url.URL, error)
- func TrimCicmp(s1, s2 string) bool
- func UIDFromHex(s string) (keybase1.UID, error)
- func UIDWrapper(uid keybase1.UID) *jsonw.Wrapper
- func Uniquify(inp []string) []string
- func UnixToTimeMappingZero(unixTime int64) time.Time
- func Unquote(data []byte) string
- func UsernameToUID(s string) keybase1.UID
- func UsernameToUIDPreserveCase(s string) keybase1.UID
- func VersionMessage(linefn func(string))
- func VersionString() string
- func WrapError(e error) interface{}
- func XORBytes(dst, a, b []byte) int
- type API
- type APIArg
- type APIError
- type APINetError
- type APIRes
- type APIStatus
- type Account
- func (a *Account) CachedSecretKey(ska SecretKeyArg) (GenericKey, error)
- func (a *Account) ClearCachedSecretKeys()
- func (a *Account) ClearLoginSession()
- func (a *Account) ClearStreamCache()
- func (a *Account) CreateLoginSessionWithSalt(emailOrUsername string, salt []byte) error
- func (a *Account) CreateStreamCache(tsec *triplesec.Cipher, pps *PassphraseStream)
- func (a *Account) CreateStreamCacheViaStretch(passphrase string) error
- func (a *Account) Dump()
- func (a *Account) EnsureUsername(username NormalizedUsername)
- func (a *Account) GetStreamGeneration() (ret PassphraseGeneration)
- func (a *Account) Keyring() (*SKBKeyringFile, error)
- func (a *Account) LoadLoginSession(emailOrUsername string) error
- func (a *Account) LocalSession() *Session
- func (a *Account) LockedLocalSecretKey(ska SecretKeyArg) (*SKB, error)
- func (a *Account) LoggedIn() bool
- func (a *Account) LoggedInAndProvisioined() bool
- func (a *Account) LoggedInLoad() (bool, error)
- func (a *Account) LoggedInProvisionedLoad() (bool, error)
- func (a *Account) LoginSession() *LoginSession
- func (a *Account) Logout() error
- func (a *Account) PassphraseStream() *PassphraseStream
- func (a *Account) PassphraseStreamCache() *PassphraseStreamCache
- func (a *Account) PassphraseStreamRef() *PassphraseStream
- func (a *Account) RunSecretSyncer(uid keybase1.UID) error
- func (a *Account) SaveState(sessionID, csrf string, username NormalizedUsername, uid keybase1.UID, ...) error
- func (a *Account) SaveStateTmp(sessionID, csrf string, username NormalizedUsername, uid keybase1.UID, ...) (filename string, err error)
- func (a *Account) SecretSyncer() *SecretSyncer
- func (a *Account) SetCachedSecretKey(ska SecretKeyArg, key GenericKey) error
- func (a *Account) SetStreamGeneration(gen PassphraseGeneration, nilPPStreamOK bool)
- func (a *Account) Shutdown() error
- func (a *Account) UnloadLocalSession()
- func (a *Account) UserInfo() (uid keybase1.UID, username NormalizedUsername, token string, ...)
- type AlgoType
- type AlreadyRegisteredError
- type AppConfig
- type AppStatusError
- type ApplyFn
- type AssertionAnd
- type AssertionDNS
- type AssertionExpression
- type AssertionFingerprint
- func (a AssertionFingerprint) CollectUrls(v []AssertionURL) []AssertionURL
- func (a AssertionFingerprint) IsFingerprint() bool
- func (a AssertionFingerprint) MatchProof(proof Proof) bool
- func (a AssertionFingerprint) MatchSet(ps ProofSet) bool
- func (a AssertionFingerprint) ToLookup() (key, value string, err error)
- type AssertionHTTP
- type AssertionHTTPS
- type AssertionKeybase
- type AssertionOr
- type AssertionParseError
- type AssertionSocial
- type AssertionUID
- type AssertionURL
- type AssertionURLBase
- func (b AssertionURLBase) CacheKey() string
- func (b AssertionURLBase) Check() error
- func (b AssertionURLBase) CheckHost() (err error)
- func (b AssertionURLBase) GetValue() string
- func (b AssertionURLBase) HasOr() bool
- func (b AssertionURLBase) IsFingerprint() bool
- func (b AssertionURLBase) IsKeybase() bool
- func (b AssertionURLBase) IsSocial() bool
- func (b AssertionURLBase) IsUID() bool
- func (b AssertionURLBase) Keys() []string
- func (b AssertionURLBase) MatchProof(proof Proof) bool
- func (b AssertionURLBase) String() string
- func (b AssertionURLBase) ToKeyValuePair() (string, string)
- func (b AssertionURLBase) ToUID() (ret keybase1.UID)
- type AssertionWeb
- type B
- type BadFingerprintError
- type BadKeyError
- type BadRevocationError
- type BadServiceError
- type BadSigError
- type BadUsernameError
- type Base
- type Base64Finder
- type BaseAPIEngine
- type BaseServiceType
- func (t BaseServiceType) BaseAllStringKeys(st ServiceType) []string
- func (t BaseServiceType) BaseCheckProofForURL(text string, id keybase1.SigID) (err error)
- func (t BaseServiceType) BaseCheckProofTextFull(text string, id keybase1.SigID, sig string) (err error)
- func (t BaseServiceType) BaseCheckProofTextShort(text string, id keybase1.SigID, med bool) error
- func (t BaseServiceType) BaseGetProofType(st ServiceType) string
- func (t BaseServiceType) BasePrimaryStringKeys(st ServiceType) []string
- func (t BaseServiceType) BaseRecheckProofPosting(tryNumber int, status keybase1.ProofStatus) (warning *Markup, err error)
- func (t BaseServiceType) BaseToChecker(st ServiceType, hint string) Checker
- func (t BaseServiceType) BaseToServiceJSON(st ServiceType, un string) *jsonw.Wrapper
- func (t BaseServiceType) FormatProofText(ppr *PostProofRes) (string, error)
- func (t BaseServiceType) GetAPIArgKey() string
- func (t BaseServiceType) LastWriterWins() bool
- func (t BaseServiceType) NormalizeUsername(s string) (string, error)
- func (t BaseServiceType) PreProofCheck(string) (*Markup, error)
- func (t BaseServiceType) PreProofWarning(remotename string) *Markup
- type BtcOpts
- type BucketDict
- type BufferCloser
- type CanceledError
- type ChainLink
- func (c *ChainLink) CheckNameAndID(s NormalizedUsername, i keybase1.UID) error
- func (c *ChainLink) GetCTime() time.Time
- func (c *ChainLink) GetETime() time.Time
- func (c *ChainLink) GetKID() keybase1.KID
- func (c *ChainLink) GetMerkleSeqno() int
- func (c *ChainLink) GetPGPFingerprint() *PGPFingerprint
- func (c *ChainLink) GetPayloadJSON() *jsonw.Wrapper
- func (c *ChainLink) GetPrev() LinkID
- func (c *ChainLink) GetRevocations() []keybase1.SigID
- func (c *ChainLink) GetRevokeKids() []keybase1.KID
- func (c *ChainLink) GetSeqno() Seqno
- func (c *ChainLink) GetSigCheckCache() (cki *ComputedKeyInfos)
- func (c *ChainLink) GetSigID() keybase1.SigID
- func (c *ChainLink) GetUID() keybase1.UID
- func (c *ChainLink) IsBad() (isBad bool, reason string)
- func (c *ChainLink) IsInCurrentFamily(u *User) bool
- func (c *ChainLink) MatchFingerprint(fp PGPFingerprint) bool
- func (c *ChainLink) Pack() error
- func (c *ChainLink) Parent() *SigChain
- func (c *ChainLink) PutSigCheckCache(cki *ComputedKeyInfos)
- func (c *ChainLink) SetParent(parent *SigChain)
- func (c *ChainLink) Store(g *GlobalContext) (didStore bool, err error)
- func (c *ChainLink) ToEldestKID() keybase1.KID
- func (c ChainLink) ToMerkleTriple() *MerkleTriple
- func (c *ChainLink) Typed() TypedChainLink
- func (c *ChainLink) Unpack(trusted bool, selfUID keybase1.UID) (err error)
- func (c *ChainLink) UnpackComputedKeyInfos(jw *jsonw.Wrapper) (err error)
- func (c *ChainLink) UnpackLocal() (err error)
- func (c *ChainLink) UnpackPayloadJSON(tmp *ChainLinkUnpacked) (err error)
- func (c *ChainLink) VerifyHash() error
- func (c *ChainLink) VerifyLink() error
- func (c *ChainLink) VerifyPayload() error
- func (c *ChainLink) VerifySigWithKeyFamily(ckf ComputedKeyFamily) (cached bool, err error)
- type ChainLinkError
- type ChainLinkFingerprintMismatchError
- type ChainLinkKIDMismatchError
- type ChainLinkPrevHashMismatchError
- type ChainLinkUnpacked
- type ChainLinkWrongSeqnoError
- type ChainType
- type CheckMember
- type CheckResult
- type Checker
- type Client
- type ClientConfig
- type CoinbaseChecker
- type CoinbaseServiceType
- func (t CoinbaseServiceType) AllStringKeys() []string
- func (t CoinbaseServiceType) CheckProofText(text string, id keybase1.SigID, sig string) (err error)
- func (t CoinbaseServiceType) CheckUsername(s string) (err error)
- func (t CoinbaseServiceType) DisplayName(un string) string
- func (t CoinbaseServiceType) GetPrompt() string
- func (t CoinbaseServiceType) GetProofType() string
- func (t CoinbaseServiceType) GetTypeName() string
- func (t CoinbaseServiceType) PostInstructions(un string) *Markup
- func (t CoinbaseServiceType) PrimaryStringKeys() []string
- func (t CoinbaseServiceType) RecheckProofPosting(tryNumber int, status keybase1.ProofStatus, _ string) (warning *Markup, err error)
- func (t CoinbaseServiceType) ToChecker() Checker
- func (t CoinbaseServiceType) ToServiceJSON(un string) *jsonw.Wrapper
- type Command
- type CommandLine
- type ComputedKeyFamily
- func (ckf *ComputedKeyFamily) Delegate(tcl TypedChainLink) (err error)
- func (ckf ComputedKeyFamily) Export() []keybase1.PublicKey
- func (ckf ComputedKeyFamily) ExportDeviceKeys() []keybase1.PublicKey
- func (ckf ComputedKeyFamily) FindActiveEncryptionSubkey(kid keybase1.KID) (GenericKey, error)
- func (ckf ComputedKeyFamily) FindActiveSibkey(kid keybase1.KID) (key GenericKey, cki ComputedKeyInfo, err error)
- func (ckf ComputedKeyFamily) FindActiveSibkeyAtTime(kid keybase1.KID, t time.Time) (key GenericKey, cki ComputedKeyInfo, err error)
- func (ckf ComputedKeyFamily) FindKIDFromFingerprint(fp PGPFingerprint) (kid keybase1.KID, err error)
- func (ckf ComputedKeyFamily) FindKeyWithKIDUnsafe(kid keybase1.KID) (GenericKey, error)
- func (ckf ComputedKeyFamily) FindKeybaseName(s string) bool
- func (ckf ComputedKeyFamily) GetActivePGPKeys(sibkey bool) (ret []*PGPKeyBundle)
- func (ckf ComputedKeyFamily) GetAllActiveKeysForDevice(deviceID keybase1.DeviceID) ([]keybase1.KID, error)
- func (ckf ComputedKeyFamily) GetAllActiveKeysWithRoleAtTime(role KeyRole, t time.Time) (ret []GenericKey)
- func (ckf ComputedKeyFamily) GetAllActiveSibkeys() []GenericKey
- func (ckf ComputedKeyFamily) GetAllActiveSibkeysAtTime(t time.Time) []GenericKey
- func (ckf ComputedKeyFamily) GetAllActiveSubkeys() []GenericKey
- func (ckf ComputedKeyFamily) GetAllActiveSubkeysAtTime(t time.Time) (ret []GenericKey)
- func (ckf *ComputedKeyFamily) GetAllDevices() []*Device
- func (ckf *ComputedKeyFamily) GetCurrentDevice(g *GlobalContext) (*Device, error)
- func (ckf *ComputedKeyFamily) GetDeviceForKey(key GenericKey) (*Device, error)
- func (ckf *ComputedKeyFamily) GetEncryptionSubkeyForDevice(did keybase1.DeviceID) (key GenericKey, err error)
- func (ckf ComputedKeyFamily) GetKeyRole(kid keybase1.KID) (ret KeyRole)
- func (ckf ComputedKeyFamily) GetKeyRoleAtTime(kid keybase1.KID, t time.Time) (ret KeyRole)
- func (ckf *ComputedKeyFamily) GetSibkeyForDevice(did keybase1.DeviceID) (key GenericKey, err error)
- func (ckf ComputedKeyFamily) HasActiveKey() bool
- func (ckf ComputedKeyFamily) InsertEldestLink(tcl TypedChainLink, username NormalizedUsername) (err error)
- func (ckf *ComputedKeyFamily) Revoke(tcl TypedChainLink) (err error)
- func (ckf *ComputedKeyFamily) RevokeKid(kid keybase1.KID, tcl TypedChainLink) (err error)
- func (ckf *ComputedKeyFamily) RevokeSig(sig keybase1.SigID, tcl TypedChainLink) (err error)
- func (ckf *ComputedKeyFamily) SetActivePGPHash(kid keybase1.KID, hash string)
- func (ckf *ComputedKeyFamily) UpdateDevices(tcl TypedChainLink) (err error)
- type ComputedKeyInfo
- type ComputedKeyInfos
- func (cki *ComputedKeyInfos) Delegate(kid keybase1.KID, tm *KeybaseTime, sigid keybase1.SigID, ...) (err error)
- func (cki *ComputedKeyInfos) Insert(k keybase1.KID, i *ComputedKeyInfo)
- func (cki ComputedKeyInfos) InsertLocalEldestKey(kid keybase1.KID)
- func (cki ComputedKeyInfos) InsertServerEldestKey(eldestKey GenericKey, un NormalizedUsername) error
- func (cki *ComputedKeyInfos) PaperDevices() []*Device
- func (cki ComputedKeyInfos) ShallowCopy() *ComputedKeyInfos
- type ConfigError
- type ConfigGetter
- type ConfigReader
- type ConfigWriter
- type ConnectionID
- type ConnectionManager
- type Contexitifier
- type Contextified
- type CryptocurrencyChainLink
- type CtimeMismatchError
- type CurrentStatus
- type DNSChecker
- type DNSServiceType
- func (t DNSServiceType) AllStringKeys() []string
- func (t DNSServiceType) CheckProofText(text string, id keybase1.SigID, sig string) (err error)
- func (t DNSServiceType) CheckUsername(s string) error
- func (t DNSServiceType) DisplayName(un string) string
- func (t DNSServiceType) FormatProofText(ppr *PostProofRes) (string, error)
- func (t DNSServiceType) GetAPIArgKey() string
- func (t DNSServiceType) GetPrompt() string
- func (t DNSServiceType) GetProofType() string
- func (t DNSServiceType) GetTypeName() string
- func (t DNSServiceType) LastWriterWins() bool
- func (t DNSServiceType) NormalizeUsername(s string) (string, error)
- func (t DNSServiceType) PostInstructions(un string) *Markup
- func (t DNSServiceType) PrimaryStringKeys() []string
- func (t DNSServiceType) RecheckProofPosting(tryNumber int, status keybase1.ProofStatus, dn string) (warning *Markup, err error)
- func (t DNSServiceType) ToChecker() Checker
- func (t DNSServiceType) ToServiceJSON(un string) *jsonw.Wrapper
- type Darwin
- func (d Darwin) CacheDir() string
- func (d Darwin) ConfigDir() string
- func (d Darwin) DataDir() string
- func (d Darwin) Home(emptyOk bool) string
- func (d Darwin) LogDir() string
- func (d Darwin) Normalize(s string) string
- func (d Darwin) RuntimeDir() string
- func (d Darwin) ServiceSpawnDir() (string, error)
- type DbKey
- type DecryptBadNonceError
- type DecryptBadPacketTypeError
- type DecryptBadSenderError
- type DecryptOpenError
- type DecryptWrongReceiverError
- type DecryptionError
- type DelegationType
- type Delegator
- func (d *Delegator) CheckArgs() (err error)
- func (d Delegator) GetMerkleTriple() MerkleTriple
- func (d Delegator) GetSigningKey() GenericKey
- func (d Delegator) IsEldest() bool
- func (d Delegator) IsSibkeyOrEldest() bool
- func (d *Delegator) LoadSigningKey(lctx LoginContext, ui SecretUI) (err error)
- func (d *Delegator) Run(lctx LoginContext) (err error)
- func (d *Delegator) SignAndPost(lctx LoginContext, jw *jsonw.Wrapper) (err error)
- type Device
- type DeviceChainLink
- type DeviceKey
- type DeviceKeyMap
- type DeviceRequiredError
- type DeviceStatus
- type DeviceTypeSet
- type DumbOutputUI
- type EmptyKeyRing
- type Env
- func (e *Env) GenClientConfigForInternalAPI() (*ClientConfig, error)
- func (e *Env) GenClientConfigForScrapers() (*ClientConfig, error)
- func (e *Env) GetAPIDump() bool
- func (e *Env) GetAPITimeout() time.Duration
- func (e *Env) GetAutoFork() bool
- func (e *Env) GetBool(def bool, flist ...func() (bool, bool)) bool
- func (e *Env) GetBundledCA(host string) string
- func (e *Env) GetCacheDir() string
- func (e *Env) GetCommandLine() CommandLine
- func (e *Env) GetConfig() ConfigReader
- func (e *Env) GetConfigDir() string
- func (e *Env) GetConfigFilename() string
- func (e *Env) GetConfigWriter() ConfigWriter
- func (e *Env) GetDataDir() string
- func (e *Env) GetDbFilename() string
- func (e *Env) GetDebug() bool
- func (e *Env) GetDeviceID() keybase1.DeviceID
- func (e *Env) GetDoLogForward() bool
- func (e *Env) GetDuration(def time.Duration, flist ...func() (time.Duration, bool)) time.Duration
- func (e *Env) GetEmail() string
- func (e *Env) GetEmailOrUsername() string
- func (e *Env) GetGpg() string
- func (e *Env) GetGpgHome() string
- func (e *Env) GetGpgOptions() []string
- func (e *Env) GetHome() string
- func (e *Env) GetInt(def int, flist ...func() (int, bool)) int
- func (e *Env) GetLabel() string
- func (e *Env) GetLocalRPCDebug() string
- func (e *Env) GetLogDir() string
- func (e *Env) GetLogFile() string
- func (e *Env) GetLogFormat() string
- func (e *Env) GetMerkleKIDs() []keybase1.KID
- func (e *Env) GetNegBool(def bool, flist []NegBoolFunc) bool
- func (e *Env) GetNoPinentry() bool
- func (e *Env) GetPidFile() (ret string, err error)
- func (e *Env) GetPinentry() string
- func (e *Env) GetProofCacheLongDur() time.Duration
- func (e *Env) GetProofCacheMediumDur() time.Duration
- func (e *Env) GetProofCacheShortDur() time.Duration
- func (e *Env) GetProofCacheSize() int
- func (e *Env) GetProxy() string
- func (e *Env) GetRunMode() RunMode
- func (e *Env) GetRuntimeDir() string
- func (e *Env) GetSalt() []byte
- func (e *Env) GetScraperTimeout() time.Duration
- func (e *Env) GetSecretKeyringTemplate() string
- func (e *Env) GetServerURI() string
- func (e *Env) GetServiceSpawnDir() (string, error)
- func (e *Env) GetSessionFilename() string
- func (e *Env) GetSocketFile() (ret string, err error)
- func (e *Env) GetSplitLogOutput() bool
- func (e *Env) GetStandalone() bool
- func (e *Env) GetStoredSecretAccessGroup() string
- func (e *Env) GetStoredSecretServiceName() string
- func (e *Env) GetString(flist ...(func() string)) string
- func (e *Env) GetStringList(list ...(func() []string)) []string
- func (e *Env) GetTimers() string
- func (e *Env) GetTorHiddenAddress() string
- func (e *Env) GetTorMode() TorMode
- func (e *Env) GetTorProxy() string
- func (e *Env) GetUID() keybase1.UID
- func (e *Env) GetUserCacheMaxAge() time.Duration
- func (e *Env) GetUsername() NormalizedUsername
- func (e *Env) SetCommandLine(cmd CommandLine)
- func (e *Env) SetConfig(config ConfigReader)
- func (e *Env) SetConfigWriter(writer ConfigWriter)
- type ErrorUnwrapper
- type ExportableError
- type ExportedStream
- type ExportedStreams
- func (s *ExportedStreams) Close(_ context.Context, a keybase1.CloseArg) (err error)
- func (s *ExportedStreams) ExportReader(r io.ReadCloser) keybase1.Stream
- func (s *ExportedStreams) ExportWriter(w io.WriteCloser) keybase1.Stream
- func (s *ExportedStreams) GetReader(st keybase1.Stream) (ret io.ReadCloser, err error)
- func (s *ExportedStreams) GetWriter(st keybase1.Stream) (ret io.WriteCloser, err error)
- func (s *ExportedStreams) Read(_ context.Context, a keybase1.ReadArg) (buf []byte, err error)
- func (s *ExportedStreams) Write(_ context.Context, a keybase1.WriteArg) (n int, err error)
- type ExternalAPI
- type ExternalAPIEngine
- func (api *ExternalAPIEngine) DoRequest(arg APIArg, req *http.Request, restype int) (ar *ExternalAPIRes, hr *ExternalHTMLRes, tr *ExternalTextRes, err error)
- func (api *ExternalAPIEngine) Get(arg APIArg) (res *ExternalAPIRes, err error)
- func (api *ExternalAPIEngine) GetHTML(arg APIArg) (res *ExternalHTMLRes, err error)
- func (api *ExternalAPIEngine) GetText(arg APIArg) (res *ExternalTextRes, err error)
- func (api *ExternalAPIEngine) Post(arg APIArg) (res *ExternalAPIRes, err error)
- func (api *ExternalAPIEngine) PostHTML(arg APIArg) (res *ExternalHTMLRes, err error)
- type ExternalAPIRes
- type ExternalHTMLRes
- type ExternalTextRes
- type FailedAssertionError
- type File
- type FirstErrorPicker
- type FishyMsgpackError
- type GPGKey
- func (g *GPGKey) CanDecrypt() bool
- func (g *GPGKey) CanEncrypt() bool
- func (g *GPGKey) CanSign() bool
- func (g *GPGKey) CheckSecretKey() error
- func (g *GPGKey) DecryptFromString(ciphertext string) (msg []byte, sender keybase1.KID, err error)
- func (g *GPGKey) Encode() (string, error)
- func (g *GPGKey) EncryptToString(plaintext []byte, sender GenericKey) (ciphertext string, err error)
- func (g *GPGKey) GetAlgoType() AlgoType
- func (g *GPGKey) GetFingerprintP() *PGPFingerprint
- func (g *GPGKey) GetKID() keybase1.KID
- func (g *GPGKey) HasSecretKey() bool
- func (g *GPGKey) SignToString(msg []byte) (sig string, id keybase1.SigID, err error)
- func (g *GPGKey) ToLksSKB(lks *LKSec) (*SKB, error)
- func (g *GPGKey) ToServerSKB(gc *GlobalContext, ts *triplesec.Cipher, gen PassphraseGeneration) (*SKB, error)
- func (g *GPGKey) VerboseDescription() string
- func (g *GPGKey) VerifyString(sig string, msg []byte) (id keybase1.SigID, err error)
- func (g *GPGKey) VerifyStringAndExtract(sig string) (msg []byte, id keybase1.SigID, err error)
- type GPGUI
- type GenericChainLink
- func (g *GenericChainLink) BaseToTrackingStatement(state keybase1.ProofState) *jsonw.Wrapper
- func (g *GenericChainLink) GetArmoredSig() string
- func (g *GenericChainLink) GetDelegatedKid() (kid keybase1.KID)
- func (g *GenericChainLink) GetDevice() *Device
- func (g *GenericChainLink) GetPGPFingerprint() *PGPFingerprint
- func (g *GenericChainLink) GetPGPFullHash() string
- func (g *GenericChainLink) GetParentKid() (kid keybase1.KID)
- func (g *GenericChainLink) GetRole() KeyRole
- func (g *GenericChainLink) GetSeqno() Seqno
- func (g *GenericChainLink) GetSigID() keybase1.SigID
- func (g *GenericChainLink) GetUID() keybase1.UID
- func (g *GenericChainLink) GetUsername() string
- func (g *GenericChainLink) IsRevocationIsh() bool
- func (g *GenericChainLink) IsRevoked() bool
- func (g *GenericChainLink) ToDebugString() string
- func (g *GenericChainLink) ToDisplayString() string
- func (g *GenericChainLink) Type() string
- func (g *GenericChainLink) VerifyReverseSig(ckf ComputedKeyFamily) error
- type GenericKey
- type GithubChecker
- type GithubServiceType
- func (t GithubServiceType) AllStringKeys() []string
- func (t GithubServiceType) CheckProofText(text string, id keybase1.SigID, sig string) (err error)
- func (t GithubServiceType) CheckUsername(s string) (err error)
- func (t GithubServiceType) DisplayName(un string) string
- func (t GithubServiceType) GetPrompt() string
- func (t GithubServiceType) GetProofType() string
- func (t GithubServiceType) GetTypeName() string
- func (t GithubServiceType) PostInstructions(un string) *Markup
- func (t GithubServiceType) PrimaryStringKeys() []string
- func (t GithubServiceType) RecheckProofPosting(tryNumber int, status keybase1.ProofStatus, _ string) (warning *Markup, err error)
- func (t GithubServiceType) ToChecker() Checker
- func (t GithubServiceType) ToServiceJSON(un string) *jsonw.Wrapper
- type GlobalContext
- func (g *GlobalContext) BindToSocket() (net.Listener, error)
- func (g *GlobalContext) ConfigReload() error
- func (g *GlobalContext) Configure(line CommandLine, usage Usage) error
- func (g *GlobalContext) ConfigureAPI() error
- func (g *GlobalContext) ConfigureCaches() error
- func (g *GlobalContext) ConfigureCommand(line CommandLine, cmd Command) error
- func (g *GlobalContext) ConfigureConfig() error
- func (g *GlobalContext) ConfigureExportedStreams() error
- func (g *GlobalContext) ConfigureKeyring() error
- func (g *GlobalContext) ConfigureLogging() error
- func (g *GlobalContext) ConfigureMerkleClient() error
- func (g *GlobalContext) ConfigureSocketInfo() (err error)
- func (g *GlobalContext) ConfigureTimers() error
- func (g *GlobalContext) ConfigureUsage(usage Usage) error
- func (g *GlobalContext) GetGpgClient() *GpgCLI
- func (g *GlobalContext) GetMyUID() keybase1.UID
- func (g *GlobalContext) GetSocket(clearError bool) (net.Conn, rpc.Transporter, error)
- func (g *GlobalContext) Init()
- func (g *GlobalContext) LoginState() *LoginState
- func (g *GlobalContext) Logout() error
- func (g *GlobalContext) MakeLoopbackServer() (l net.Listener, err error)
- func (g *GlobalContext) OutputBytes(b []byte)
- func (g *GlobalContext) OutputString(s string)
- func (g *GlobalContext) PushShutdownHook(sh ShutdownHook)
- func (g *GlobalContext) SKBFilenameForUser(un NormalizedUsername) string
- func (g *GlobalContext) SetCommandLine(cmd CommandLine)
- func (g *GlobalContext) SetService()
- func (g *GlobalContext) SetUI(u UI)
- func (g *GlobalContext) SetUIRouter(u UIRouter)
- func (g *GlobalContext) Shutdown() error
- func (g *GlobalContext) StartupMessage()
- type GpgBaseKey
- type GpgCLI
- func (g *GpgCLI) CanExec() (bool, error)
- func (g *GpgCLI) Configure() (err error)
- func (g *GpgCLI) ExportKey(k PGPKeyBundle) (err error)
- func (g *GpgCLI) ImportKey(secret bool, fp PGPFingerprint) (*PGPKeyBundle, error)
- func (g *GpgCLI) Index(secret bool, query string) (ki *GpgKeyIndex, w Warnings, err error)
- func (g *GpgCLI) MakeCmd(args []string) *exec.Cmd
- func (g *GpgCLI) Path() string
- func (g *GpgCLI) Run(arg RunGpgArg) (res RunGpgRes)
- func (g *GpgCLI) Run2(arg RunGpg2Arg) (res RunGpg2Res)
- func (g *GpgCLI) Sign(fp PGPFingerprint, payload []byte) (string, error)
- func (g *GpgCLI) Version() (string, error)
- type GpgCLIArg
- type GpgError
- type GpgFingerprinter
- type GpgIndexElement
- type GpgIndexError
- type GpgIndexLine
- type GpgIndexParser
- func (p *GpgIndexParser) GetLine() (ret *GpgIndexLine, err error)
- func (p *GpgIndexParser) Parse(stream io.Reader) (ki *GpgKeyIndex, err error)
- func (p *GpgIndexParser) ParseElement() (ret GpgIndexElement, err error)
- func (p *GpgIndexParser) ParseKey(l *GpgIndexLine) (ret *GpgPrimaryKey, err error)
- func (p *GpgIndexParser) PutbackLine(line *GpgIndexLine)
- func (p *GpgIndexParser) Warn(w Warning)
- type GpgKeyIndex
- func (ki *GpgKeyIndex) AllFingerprints() []PGPFingerprint
- func (ki *GpgKeyIndex) GetRowFunc() func() []string
- func (ki *GpgKeyIndex) IndexKey(k *GpgPrimaryKey)
- func (ki *GpgKeyIndex) Len() int
- func (ki *GpgKeyIndex) Less(i, j int) bool
- func (ki *GpgKeyIndex) PushElement(e GpgIndexElement)
- func (ki *GpgKeyIndex) Sort()
- func (ki *GpgKeyIndex) Swap(i, j int)
- type GpgPrimaryKey
- func (k *GpgPrimaryKey) AddFingerprint(l *GpgIndexLine) (err error)
- func (k *GpgPrimaryKey) AddLine(l *GpgIndexLine) (err error)
- func (k *GpgPrimaryKey) AddSubkey(l *GpgIndexLine) (err error)
- func (k *GpgPrimaryKey) AddUID(l *GpgIndexLine) (err error)
- func (k *GpgPrimaryKey) GetAllID64s() []string
- func (k *GpgPrimaryKey) GetEmails() []string
- func (k *GpgPrimaryKey) GetFingerprint() *PGPFingerprint
- func (k *GpgPrimaryKey) GetPGPIdentities() []keybase1.PGPIdentity
- func (k *GpgPrimaryKey) IsValid() bool
- func (k *GpgPrimaryKey) Parse(l *GpgIndexLine) error
- func (k *GpgPrimaryKey) ToKey() *GpgPrimaryKey
- func (k *GpgPrimaryKey) ToRow(i int) []string
- type GpgSubKey
- type HTTPArgs
- type HTTPRequest
- type HTTPValue
- type HackerNewsChecker
- func (h *HackerNewsChecker) APIBase() string
- func (h *HackerNewsChecker) APIURL() string
- func (h *HackerNewsChecker) CheckHint(hint SigHint) ProofError
- func (h *HackerNewsChecker) CheckStatus(hint SigHint) ProofError
- func (h *HackerNewsChecker) GetTorError() ProofError
- func (h *HackerNewsChecker) HumanURL() string
- func (h *HackerNewsChecker) KarmaURL() string
- type HackerNewsServiceType
- func (t HackerNewsServiceType) AllStringKeys() []string
- func (t HackerNewsServiceType) CheckProofText(text string, id keybase1.SigID, sig string) (err error)
- func (t HackerNewsServiceType) CheckUsername(s string) (err error)
- func (t HackerNewsServiceType) DisplayName(un string) string
- func (t HackerNewsServiceType) GetPrompt() string
- func (t HackerNewsServiceType) GetProofType() string
- func (t HackerNewsServiceType) GetTypeName() string
- func (t HackerNewsServiceType) NormalizeUsername(s string) (string, error)
- func (t HackerNewsServiceType) PostInstructions(un string) *Markup
- func (t HackerNewsServiceType) PreProofCheck(un string) (markup *Markup, err error)
- func (t HackerNewsServiceType) PrimaryStringKeys() []string
- func (t HackerNewsServiceType) RecheckProofPosting(tryNumber int, status keybase1.ProofStatus, _ string) (warning *Markup, err error)
- func (t HackerNewsServiceType) ToChecker() Checker
- func (t HackerNewsServiceType) ToServiceJSON(un string) *jsonw.Wrapper
- type HashSummer
- type HashingWriteCloser
- type HomeFinder
- type I
- type IdentifyCache
- type IdentifyCacheToken
- type IdentifyOutcome
- func (i *IdentifyOutcome) ActiveProofs() []RemoteProofChainLink
- func (i *IdentifyOutcome) AddProofsToSet(existing *ProofSet)
- func (ir *IdentifyOutcome) Export() *keybase1.IdentifyOutcome
- func (ir IdentifyOutcome) ExportToUncheckedIdentity() *keybase1.Identity
- func (i IdentifyOutcome) GetError() error
- func (i IdentifyOutcome) GetErrorAndWarnings(strict bool) (warnings Warnings, err error)
- func (i IdentifyOutcome) GetErrorLax() (Warnings, error)
- func (i IdentifyOutcome) NumProofFailures() int
- func (i IdentifyOutcome) NumProofSuccesses() int
- func (i IdentifyOutcome) NumRevoked() int
- func (i IdentifyOutcome) NumTrackChanges() int
- func (i IdentifyOutcome) NumTrackFailures() int
- func (i *IdentifyOutcome) ProofChecksSorted() []*LinkCheckResult
- func (i *IdentifyOutcome) TrackSet() *TrackSet
- func (i IdentifyOutcome) TrackStatus() keybase1.TrackStatus
- func (i IdentifyOutcome) TrackingStatement() *jsonw.Wrapper
- type IdentifyState
- func (s *IdentifyState) ComputeKeyDiffs(dhook func(keybase1.IdentifyKey))
- func (s *IdentifyState) ComputeRevokedProofs()
- func (s *IdentifyState) ComputeTrackDiffs()
- func (s *IdentifyState) CreateTrackLookup(t *TrackChainLink)
- func (s *IdentifyState) HasPreviousTrack() bool
- func (s *IdentifyState) InitResultList()
- func (s *IdentifyState) TrackLookup() *TrackLookup
- type IdentifyTimeoutError
- type IdentifyUI
- type Identities
- type Identity
- type IdentityTable
- func (idt *IdentityTable) ActiveCryptocurrency() *CryptocurrencyChainLink
- func (idt *IdentityTable) GetActiveProofsFor(st ServiceType) (ret []RemoteProofChainLink)
- func (idt *IdentityTable) GetRevokedCryptocurrencyForTesting() []CryptocurrencyChainLink
- func (idt *IdentityTable) GetTrackList() (ret []*TrackChainLink)
- func (idt *IdentityTable) GetTrackMap() map[string][]*TrackChainLink
- func (idt *IdentityTable) Identify(is IdentifyState, forceRemoteCheck bool, ui IdentifyUI)
- func (idt *IdentityTable) Len() int
- func (idt *IdentityTable) MarkCheckResult(err ProofError)
- func (idt *IdentityTable) TrackChainLinkFor(username string, uid keybase1.UID) (*TrackChainLink, error)
- func (idt *IdentityTable) VerifySelfSig(s string, uid keybase1.UID) bool
- type InactiveKeyError
- type InsufficientKarmaError
- type InternalAPIEngine
- func (a *InternalAPIEngine) DoRequest(arg APIArg, req *http.Request) (*APIRes, error)
- func (a *InternalAPIEngine) Get(arg APIArg) (*APIRes, error)
- func (a *InternalAPIEngine) GetDecode(arg APIArg, v interface{}) error
- func (a *InternalAPIEngine) GetResp(arg APIArg) (*http.Response, error)
- func (a *InternalAPIEngine) Post(arg APIArg) (*APIRes, error)
- func (a *InternalAPIEngine) PostDecode(arg APIArg, v interface{}) error
- func (a *InternalAPIEngine) PostJSON(arg APIArg) (*APIRes, error)
- func (a *InternalAPIEngine) PostResp(arg APIArg) (*http.Response, error)
- type InternalError
- type InvalidArgumentError
- type InvalidHostnameError
- type InvalidKexPhraseError
- type InviteRequestArg
- type JSONConfigFile
- func (f JSONConfigFile) Check() error
- func (f *JSONConfigFile) DeleteAtPath(p string)
- func (f JSONConfigFile) GetAPITimeout() (time.Duration, bool)
- func (f JSONConfigFile) GetAllUsernames() (current NormalizedUsername, others []NormalizedUsername, err error)
- func (f JSONConfigFile) GetAutoFork() (bool, bool)
- func (f JSONConfigFile) GetBoolAtPath(p string) (ret bool, isSet bool)
- func (f JSONConfigFile) GetBundledCA(host string) (ret string)
- func (f JSONConfigFile) GetConfigFilename() string
- func (f JSONConfigFile) GetDbFilename() string
- func (f JSONConfigFile) GetDebug() (bool, bool)
- func (f JSONConfigFile) GetDeviceID() (ret keybase1.DeviceID)
- func (f JSONConfigFile) GetDurationAtPath(p string) (time.Duration, bool)
- func (f JSONConfigFile) GetFilename() string
- func (f JSONConfigFile) GetGpg() string
- func (f JSONConfigFile) GetGpgHome() (ret string)
- func (f JSONConfigFile) GetGpgOptions() []string
- func (f JSONConfigFile) GetHome() string
- func (f JSONConfigFile) GetIntAtPath(p string) (ret int, isSet bool)
- func (f JSONConfigFile) GetLocalRPCDebug() string
- func (f JSONConfigFile) GetLogFile() string
- func (f JSONConfigFile) GetLogFormat() string
- func (f JSONConfigFile) GetMerkleKIDs() []string
- func (f JSONConfigFile) GetNoPinentry() (bool, bool)
- func (f JSONConfigFile) GetNullAtPath(p string) (isSet bool)
- func (f JSONConfigFile) GetPidFile() string
- func (f JSONConfigFile) GetPinentry() string
- func (f JSONConfigFile) GetProofCacheLongDur() (time.Duration, bool)
- func (f JSONConfigFile) GetProofCacheMediumDur() (time.Duration, bool)
- func (f JSONConfigFile) GetProofCacheShortDur() (time.Duration, bool)
- func (f JSONConfigFile) GetProofCacheSize() (int, bool)
- func (f JSONConfigFile) GetProxy() string
- func (f JSONConfigFile) GetProxyCACerts() (ret []string, err error)
- func (f JSONConfigFile) GetRunMode() (RunMode, error)
- func (f JSONConfigFile) GetSalt() (ret []byte)
- func (f JSONConfigFile) GetScraperTimeout() (time.Duration, bool)
- func (f JSONConfigFile) GetSecretKeyringTemplate() string
- func (f JSONConfigFile) GetSecurityAccessGroupOverride() (bool, bool)
- func (f JSONConfigFile) GetServerURI() string
- func (f JSONConfigFile) GetSessionFilename() string
- func (f JSONConfigFile) GetSocketFile() string
- func (f JSONConfigFile) GetSplitLogOutput() (bool, bool)
- func (f JSONConfigFile) GetStandalone() (bool, bool)
- func (f JSONConfigFile) GetStringAtPath(p string) (ret string, isSet bool)
- func (f JSONConfigFile) GetTimers() string
- func (f JSONConfigFile) GetTopLevelBool(s string) (res, isSet bool)
- func (f JSONConfigFile) GetTopLevelString(s string) (ret string)
- func (f JSONConfigFile) GetTorHiddenAddress() string
- func (f JSONConfigFile) GetTorMode() (ret TorMode, err error)
- func (f JSONConfigFile) GetTorProxy() string
- func (f JSONConfigFile) GetUID() (ret keybase1.UID)
- func (f JSONConfigFile) GetUserCacheMaxAge() (time.Duration, bool)
- func (f JSONConfigFile) GetUserConfig() (*UserConfig, error)
- func (f JSONConfigFile) GetUserConfigForUsername(nu NormalizedUsername) (*UserConfig, error)
- func (f JSONConfigFile) GetUsername() (ret NormalizedUsername)
- func (f *JSONConfigFile) NukeUser(nu NormalizedUsername) error
- func (f *JSONConfigFile) Reset()
- func (f *JSONConfigFile) SetBoolAtPath(p string, v bool) error
- func (f *JSONConfigFile) SetDeviceID(did keybase1.DeviceID) (err error)
- func (f *JSONConfigFile) SetIntAtPath(p string, v int) error
- func (f *JSONConfigFile) SetNullAtPath(p string) (err error)
- func (f *JSONConfigFile) SetStringAtPath(p string, v string) error
- func (f *JSONConfigFile) SetUserConfig(u *UserConfig, overwrite bool) error
- func (f *JSONConfigFile) SwitchUser(nu NormalizedUsername) error
- func (f *JSONConfigFile) Write() error
- type JSONFile
- func (f *JSONFile) Exists() bool
- func (f *JSONFile) GetWrapper() *jsonw.Wrapper
- func (f *JSONFile) Load(warnOnNotFound bool) error
- func (f *JSONFile) MaybeSave(pretty bool, mode os.FileMode) (err error)
- func (f *JSONFile) Nuke() error
- func (f *JSONFile) Save(pretty bool, mode os.FileMode) error
- func (f *JSONFile) SaveTmp(suffix string) (string, error)
- func (f *JSONFile) SwapTmp(filename string) (err error)
- type JSONLocalDb
- func (j *JSONLocalDb) Close() error
- func (j *JSONLocalDb) Delete(id DbKey) error
- func (j *JSONLocalDb) ForceOpen() error
- func (j *JSONLocalDb) Get(id DbKey) (*jsonw.Wrapper, error)
- func (j *JSONLocalDb) GetInto(obj interface{}, id DbKey) (found bool, err error)
- func (j *JSONLocalDb) Lookup(id DbKey) (*jsonw.Wrapper, error)
- func (j *JSONLocalDb) Nuke() (string, error)
- func (j *JSONLocalDb) Open() error
- func (j *JSONLocalDb) Put(id DbKey, aliases []DbKey, val *jsonw.Wrapper) error
- func (j *JSONLocalDb) PutObj(id DbKey, aliases []DbKey, obj interface{}) (err error)
- type JSONPayload
- type Kex2Secret
- type KexRole
- type KexRouter
- type KeyCannotDecryptError
- type KeyCannotEncryptError
- type KeyCannotSignError
- type KeyCannotVerifyError
- type KeyExistsError
- type KeyExpiredError
- type KeyFamily
- type KeyFamilyError
- type KeyGenError
- type KeyRevokedError
- type KeyRole
- type KeySection
- type KeyStatus
- type KeyType
- type KeyUnimplementedError
- type KeyUnlocker
- type KeyVersionError
- type KeybasePacket
- func (p *KeybasePacket) ArmoredEncode() (ret string, err error)
- func (p *KeybasePacket) Encode() ([]byte, error)
- func (p *KeybasePacket) EncodeTo(w io.Writer) error
- func (p *KeybasePacket) HashMe() error
- func (p KeybasePacket) ToNaclSigInfo() (*NaclSigInfo, error)
- func (p KeybasePacket) ToSKB() (*SKB, error)
- type KeybasePacketHash
- type KeybasePackets
- type KeybaseTime
- type KeyringFile
- type Keyrings
- func (k *Keyrings) GetSecretKeyAndSKBWithPrompt(lctx LoginContext, ska SecretKeyArg, secretUI SecretUI, reason string) (key GenericKey, skb *SKB, err error)
- func (k *Keyrings) GetSecretKeyLocked(lctx LoginContext, ska SecretKeyArg) (ret *SKB, which string, err error)
- func (k *Keyrings) GetSecretKeyWithPassphrase(lctx LoginContext, me *User, passphrase string, secretStorer SecretStorer) (key GenericKey, err error)
- func (k *Keyrings) GetSecretKeyWithPrompt(lctx LoginContext, ska SecretKeyArg, secretUI SecretUI, reason string) (key GenericKey, err error)
- func (k *Keyrings) GetSecretKeyWithStoredSecret(lctx LoginContext, ska SecretKeyArg, me *User, secretRetriever SecretRetriever) (key GenericKey, err error)
- func (k *Keyrings) GetSecretKeyWithoutPrompt(lctx LoginContext, ska SecretKeyArg) (key GenericKey, err error)
- func (k *Keyrings) MakeKeyrings(filenames []string, isPublic bool) []*KeyringFile
- type LKSec
- func NewLKSForEncrypt(ui SecretUI, uid keybase1.UID, gc *GlobalContext) (ret *LKSec, err error)
- func NewLKSec(pps *PassphraseStream, uid keybase1.UID, gc *GlobalContext) *LKSec
- func NewLKSecWithClientHalf(clientHalf []byte, ppgen PassphraseGeneration, uid keybase1.UID, ...) *LKSec
- func NewLKSecWithFullSecret(secret []byte, uid keybase1.UID, gc *GlobalContext) *LKSec
- func (s *LKSec) Decrypt(lctx LoginContext, src []byte) (res []byte, gen PassphraseGeneration, err error)
- func (s *LKSec) Encrypt(src []byte) (res []byte, err error)
- func (s *LKSec) EncryptClientHalfRecovery(key GenericKey) (string, error)
- func (s *LKSec) GenerateServerHalf() error
- func (s LKSec) Generation() PassphraseGeneration
- func (s *LKSec) GetSecret(lctx LoginContext) (secret []byte, err error)
- func (s *LKSec) GetServerHalf() []byte
- func (s *LKSec) Load(lctx LoginContext) (err error)
- func (s *LKSec) SetClientHalf(b []byte)
- func (s *LKSec) SetServerHalf(b []byte)
- func (s *LKSec) SetUID(u keybase1.UID)
- type LevelDb
- func (l *LevelDb) Close() error
- func (l *LevelDb) Delete(id DbKey) error
- func (l *LevelDb) ForceOpen() error
- func (l *LevelDb) Get(id DbKey) ([]byte, bool, error)
- func (l *LevelDb) GetFilename() string
- func (l *LevelDb) Lookup(id DbKey) ([]byte, bool, error)
- func (l *LevelDb) Nuke() (string, error)
- func (l *LevelDb) Open() error
- func (l *LevelDb) Put(id DbKey, aliases []DbKey, value []byte) error
- type Lexer
- type LinkCheckResult
- func (l LinkCheckResult) Export() keybase1.LinkCheckResult
- func (l LinkCheckResult) ExportToIdentifyRow(i int) keybase1.IdentifyRow
- func (l LinkCheckResult) GetCached() *CheckResult
- func (l LinkCheckResult) GetDiff() TrackDiff
- func (l LinkCheckResult) GetError() error
- func (l LinkCheckResult) GetHint() *SigHint
- func (l LinkCheckResult) GetPosition() int
- func (l LinkCheckResult) GetTorWarning() bool
- type LinkID
- type LinkType
- type LoadUserArg
- type LocalDb
- type LockPIDFile
- type LockTable
- type LogUI
- type LoggedInError
- type LoggedInWrongUserError
- type LoginContext
- type LoginRequiredError
- type LoginSession
- func (s *LoginSession) Clear() error
- func (s *LoginSession) Dump()
- func (s *LoginSession) ExistsFor(emailOrUsername string) bool
- func (s *LoginSession) Load() error
- func (s *LoginSession) Salt() ([]byte, error)
- func (s *LoginSession) Session() ([]byte, error)
- func (s *LoginSession) SessionEncoded() (string, error)
- type LoginSessionNotFound
- type LoginState
- func (s *LoginState) Account(h acctHandler, name string) error
- func (s *LoginState) AccountDump()
- func (s *LoginState) ExternalFunc(f loginHandler, name string) error
- func (s *LoginState) GetPassphraseStream(ui SecretUI) (pps *PassphraseStream, err error)
- func (s *LoginState) GetPassphraseStreamForUser(ui SecretUI, username string) (pps *PassphraseStream, err error)
- func (s *LoginState) GetVerifiedTriplesec(ui SecretUI) (ret *triplesec.Cipher, gen PassphraseGeneration, err error)
- func (s *LoginState) Keyring(h func(*SKBKeyringFile), name string) error
- func (s *LoginState) LocalSession(h func(*Session), name string) error
- func (s *LoginState) LoggedIn() bool
- func (s *LoginState) LoggedInLoad() (lin bool, err error)
- func (s *LoginState) LoggedInProvisionedLoad() (lin bool, err error)
- func (s *LoginState) LoginSession(h func(*LoginSession), name string) error
- func (s *LoginState) LoginWithKey(lctx LoginContext, user *User, key GenericKey, after afterFn) (err error)
- func (s *LoginState) LoginWithPassphrase(username, passphrase string, storeSecret bool, after afterFn) (err error)
- func (s *LoginState) LoginWithPrompt(username string, loginUI LoginUI, secretUI SecretUI, after afterFn) (err error)
- func (s *LoginState) LoginWithStoredSecret(username string, after afterFn) (err error)
- func (s *LoginState) Logout() error
- func (s *LoginState) PassphraseStream() (*PassphraseStream, error)
- func (s *LoginState) PassphraseStreamCache(h func(*PassphraseStreamCache), name string) error
- func (s *LoginState) PassphraseStreamGeneration() (PassphraseGeneration, error)
- func (s *LoginState) RunSecretSyncer(uid keybase1.UID) error
- func (s *LoginState) SecretSyncer(h func(*SecretSyncer), name string) error
- func (s *LoginState) Shutdown() error
- func (s *LoginState) VerifyPlaintextPassphrase(pp string) (ppStream *PassphraseStream, err error)
- type LoginUI
- type LogoutError
- type LoopbackAddr
- type LoopbackConn
- func (lc *LoopbackConn) Close() (err error)
- func (lc *LoopbackConn) LocalAddr() (addr net.Addr)
- func (lc *LoopbackConn) Read(b []byte) (n int, err error)
- func (lc *LoopbackConn) RemoteAddr() (addr net.Addr)
- func (lc *LoopbackConn) SetDeadline(t time.Time) (err error)
- func (lc *LoopbackConn) SetReadDeadline(t time.Time) (err error)
- func (lc *LoopbackConn) SetWriteDeadline(t time.Time) (err error)
- func (lc *LoopbackConn) Write(b []byte) (n int, err error)
- type LoopbackListener
- type Markup
- type MerkleClashError
- type MerkleClient
- func (mc *MerkleClient) Init() error
- func (mc *MerkleClient) LastRootToSigJSON() (ret *jsonw.Wrapper, err error)
- func (mc *MerkleClient) LastSeqno() Seqno
- func (mc *MerkleClient) LoadRoot() error
- func (mc *MerkleClient) LookupPath(q HTTPArgs) (vp *VerificationPath, err error)
- func (mc *MerkleClient) LookupUser(q HTTPArgs) (u *MerkleUserLeaf, err error)
- func (mc *MerkleClient) VerifyRoot(root *MerkleRoot) error
- type MerkleClientError
- type MerkleNotFoundError
- type MerkleRoot
- type MerkleTriple
- type MerkleUserLeaf
- type MissingDelegationTypeError
- type NaclDHKeyPair
- func GenerateNaclDHKeyPair() (NaclDHKeyPair, error)
- func ImportNaclDHKeyPairFromBytes(pub []byte, priv []byte) (ret NaclDHKeyPair, err error)
- func ImportNaclDHKeyPairFromHex(s string) (ret NaclDHKeyPair, err error)
- func MakeNaclDHKeyPairFromSecret(secret [NaclDHKeySecretSize]byte) (NaclDHKeyPair, error)
- func (k NaclDHKeyPair) CanDecrypt() bool
- func (k NaclDHKeyPair) CanEncrypt() bool
- func (k NaclDHKeyPair) CanSign() bool
- func (k NaclDHKeyPair) CheckSecretKey() error
- func (k NaclDHKeyPair) Decrypt(nei *NaclEncryptionInfo) (plaintext []byte, sender keybase1.KID, err error)
- func (k NaclDHKeyPair) DecryptFromString(ciphertext string) (msg []byte, sender keybase1.KID, err error)
- func (k NaclDHKeyPair) Encode() (string, error)
- func (k NaclDHKeyPair) Encrypt(msg []byte, sender *NaclDHKeyPair) (*NaclEncryptionInfo, error)
- func (k NaclDHKeyPair) EncryptToString(plaintext []byte, sender GenericKey) (string, error)
- func (k NaclDHKeyPair) GetAlgoType() AlgoType
- func (k NaclDHKeyPair) GetFingerprintP() *PGPFingerprint
- func (k NaclDHKeyPair) GetKID() keybase1.KID
- func (k NaclDHKeyPair) HasSecretKey() bool
- func (k NaclDHKeyPair) SignToString(msg []byte) (sig string, id keybase1.SigID, err error)
- func (k NaclDHKeyPair) ToLksSKB(lks *LKSec) (*SKB, error)
- func (k NaclDHKeyPair) ToServerSKB(gc *GlobalContext, t *triplesec.Cipher, gen PassphraseGeneration) (*SKB, error)
- func (k NaclDHKeyPair) ToShortIDString() string
- func (k NaclDHKeyPair) VerboseDescription() string
- func (k NaclDHKeyPair) VerifyString(sig string, msg []byte) (id keybase1.SigID, err error)
- func (k NaclDHKeyPair) VerifyStringAndExtract(sig string) (msg []byte, id keybase1.SigID, err error)
- type NaclDHKeyPrivate
- type NaclDHKeyPublic
- type NaclEncryptionInfo
- type NaclGenerator
- type NaclKeyGen
- func (g *NaclKeyGen) Generate() (err error)
- func (g *NaclKeyGen) GetKeyPair() NaclKeyPair
- func (g *NaclKeyGen) Push(lctx LoginContext, aggregated bool) (d Delegator, err error)
- func (g *NaclKeyGen) SaveLKS(lks *LKSec, lctx LoginContext) error
- func (g *NaclKeyGen) UpdateArg(signer GenericKey, eldestKID keybase1.KID, sibkey bool, user *User)
- type NaclKeyGenArg
- type NaclKeyPair
- type NaclSigInfo
- type NaclSignature
- type NaclSigningKeyPair
- func GenerateNaclSigningKeyPair() (NaclSigningKeyPair, error)
- func ImportNaclSigningKeyPairFromBytes(pub []byte, priv []byte) (ret NaclSigningKeyPair, err error)
- func ImportNaclSigningKeyPairFromHex(s string) (ret NaclSigningKeyPair, err error)
- func MakeNaclSigningKeyPairFromSecret(secret [NaclSigningKeySecretSize]byte) (NaclSigningKeyPair, error)
- func (k NaclSigningKeyPair) CanDecrypt() bool
- func (k NaclSigningKeyPair) CanEncrypt() bool
- func (k NaclSigningKeyPair) CanSign() bool
- func (k NaclSigningKeyPair) CheckSecretKey() error
- func (k NaclSigningKeyPair) DecryptFromString(ciphertext string) (msg []byte, sender keybase1.KID, err error)
- func (k NaclSigningKeyPair) Encode() (string, error)
- func (k NaclSigningKeyPair) EncryptToString(plaintext []byte, sender GenericKey) (ciphertext string, err error)
- func (k NaclSigningKeyPair) GetAlgoType() AlgoType
- func (k NaclSigningKeyPair) GetFingerprintP() *PGPFingerprint
- func (k NaclSigningKeyPair) GetKID() (ret keybase1.KID)
- func (k NaclSigningKeyPair) HasSecretKey() bool
- func (k NaclSigningKeyPair) Sign(msg []byte) (ret *NaclSigInfo, err error)
- func (k NaclSigningKeyPair) SignToString(msg []byte) (sig string, id keybase1.SigID, err error)
- func (k NaclSigningKeyPair) ToLksSKB(lks *LKSec) (*SKB, error)
- func (k NaclSigningKeyPair) ToServerSKB(gc *GlobalContext, t *triplesec.Cipher, gen PassphraseGeneration) (*SKB, error)
- func (k NaclSigningKeyPair) ToShortIDString() string
- func (k NaclSigningKeyPair) VerboseDescription() string
- func (k NaclSigningKeyPair) VerifyString(sig string, msg []byte) (id keybase1.SigID, err error)
- func (k NaclSigningKeyPair) VerifyStringAndExtract(sig string) (msg []byte, id keybase1.SigID, err error)
- type NaclSigningKeyPrivate
- type NaclSigningKeyPublic
- type NamedLock
- type NeedInputError
- type NegBoolFunc
- type NoActiveKeyError
- type NoConfigFile
- type NoConfigWriterError
- type NoDeviceError
- type NoEldestKeyError
- type NoKeyError
- type NoKeyringsError
- type NoPaperKeysError
- type NoSecretKeyError
- type NoSelectedKeyError
- type NoSessionWriterError
- type NoSigChainError
- type NoUIError
- type NoUserConfigError
- type NoUsernameError
- type NodeHash
- type NodeHashLong
- type NodeHashShort
- type NopWriteCloser
- type NormalizedUsername
- type NotConfirmedError
- type NotFoundError
- type NotLatestSubchainError
- type NotProvisionedError
- type NotifyRouter
- func (n *NotifyRouter) AddConnection(xp rpc.Transporter, ch chan error) ConnectionID
- func (n *NotifyRouter) HandleFSActivity(activity keybase1.FSNotification)
- func (n *NotifyRouter) HandleLogout()
- func (n *NotifyRouter) HandleUserChanged(uid keybase1.UID)
- func (n *NotifyRouter) SetChannels(i ConnectionID, nc keybase1.NotificationChannels)
- func (n *NotifyRouter) Shutdown()
- type NullConfiguration
- func (n NullConfiguration) GetAPIDump() (bool, bool)
- func (n NullConfiguration) GetAPITimeout() (time.Duration, bool)
- func (n NullConfiguration) GetAllUsernames() (NormalizedUsername, []NormalizedUsername, error)
- func (n NullConfiguration) GetAutoFork() (bool, bool)
- func (n NullConfiguration) GetBool(string, bool) (bool, bool)
- func (n NullConfiguration) GetBoolAtPath(string) (bool, bool)
- func (n NullConfiguration) GetBundledCA(h string) string
- func (n NullConfiguration) GetConfigFilename() string
- func (n NullConfiguration) GetDbFilename() string
- func (n NullConfiguration) GetDebug() (bool, bool)
- func (n NullConfiguration) GetDeviceID() keybase1.DeviceID
- func (n NullConfiguration) GetEmail() string
- func (n NullConfiguration) GetGString(string) string
- func (n NullConfiguration) GetGpg() string
- func (n NullConfiguration) GetGpgHome() string
- func (n NullConfiguration) GetGpgOptions() []string
- func (n NullConfiguration) GetHome() string
- func (n NullConfiguration) GetIntAtPath(string) (int, bool)
- func (n NullConfiguration) GetLocalRPCDebug() string
- func (n NullConfiguration) GetLogFile() string
- func (n NullConfiguration) GetLogFormat() string
- func (n NullConfiguration) GetMerkleKIDs() []string
- func (n NullConfiguration) GetNoAutoFork() (bool, bool)
- func (n NullConfiguration) GetNoPinentry() (bool, bool)
- func (n NullConfiguration) GetNullAtPath(string) bool
- func (n NullConfiguration) GetPGPFingerprint() *PGPFingerprint
- func (n NullConfiguration) GetPidFile() string
- func (n NullConfiguration) GetPinentry() string
- func (n NullConfiguration) GetProofCacheLongDur() (time.Duration, bool)
- func (n NullConfiguration) GetProofCacheMediumDur() (time.Duration, bool)
- func (n NullConfiguration) GetProofCacheShortDur() (time.Duration, bool)
- func (n NullConfiguration) GetProofCacheSize() (int, bool)
- func (n NullConfiguration) GetProxy() string
- func (n NullConfiguration) GetProxyCACerts() ([]string, error)
- func (n NullConfiguration) GetRunMode() (RunMode, error)
- func (n NullConfiguration) GetSalt() []byte
- func (n NullConfiguration) GetScraperTimeout() (time.Duration, bool)
- func (n NullConfiguration) GetSecretKeyringTemplate() string
- func (n NullConfiguration) GetSecurityAccessGroupOverride() (bool, bool)
- func (n NullConfiguration) GetServerURI() string
- func (n NullConfiguration) GetSessionFilename() string
- func (n NullConfiguration) GetSocketFile() string
- func (n NullConfiguration) GetSplitLogOutput() (bool, bool)
- func (n NullConfiguration) GetStandalone() (bool, bool)
- func (n NullConfiguration) GetString(string) string
- func (n NullConfiguration) GetStringAtPath(string) (string, bool)
- func (n NullConfiguration) GetTimers() string
- func (n NullConfiguration) GetTorHiddenAddress() string
- func (n NullConfiguration) GetTorMode() (TorMode, error)
- func (n NullConfiguration) GetTorProxy() string
- func (n NullConfiguration) GetUID() (ret keybase1.UID)
- func (n NullConfiguration) GetUserCacheMaxAge() (time.Duration, bool)
- func (n NullConfiguration) GetUserConfig() (*UserConfig, error)
- func (n NullConfiguration) GetUserConfigForUsername(s NormalizedUsername) (*UserConfig, error)
- func (n NullConfiguration) GetUsername() NormalizedUsername
- type ObjType
- type PGPFingerprint
- func (p PGPFingerprint) Eq(p2 PGPFingerprint) bool
- func (p PGPFingerprint) GetProofState() keybase1.ProofState
- func (p PGPFingerprint) LastWriterWins() bool
- func (p *PGPFingerprint) Match(q string, exact bool) bool
- func (p PGPFingerprint) String() string
- func (p PGPFingerprint) ToDisplayString(verbose bool) string
- func (p PGPFingerprint) ToIDString() string
- func (p PGPFingerprint) ToKeyID() string
- func (p PGPFingerprint) ToKeyValuePair() (string, string)
- func (p PGPFingerprint) ToQuads() string
- type PGPGenArg
- func (a *PGPGenArg) AddDefaultUID()
- func (a *PGPGenArg) CreatePGPIDs() error
- func (a PGPGenArg) ExportTo(ret *keybase1.PGPKeyGenArg)
- func (a *PGPGenArg) Init() (err error)
- func (a *PGPGenArg) MakeAllIds() error
- func (a *PGPGenArg) PGPUserIDs() ([]*packet.UserId, error)
- func (a *PGPGenArg) PreferredCompression() []uint8
- func (a *PGPGenArg) PreferredHash() []uint8
- func (a *PGPGenArg) PreferredSymmetric() []uint8
- type PGPKeyBundle
- func GeneratePGPKeyBundle(arg PGPGenArg, logUI LogUI) (*PGPKeyBundle, error)
- func GetOneKey(jw *jsonw.Wrapper) (*PGPKeyBundle, error)
- func LoadPGPKeyFromLocalDB(k keybase1.KID, g *GlobalContext) (*PGPKeyBundle, error)
- func NewPGPKeyBundle(entity *openpgp.Entity) *PGPKeyBundle
- func ReadOneKeyFromBytes(b []byte) (*PGPKeyBundle, error)
- func ReadOneKeyFromString(s string) (*PGPKeyBundle, error)
- func ReadPrivateKeyFromString(s string) (*PGPKeyBundle, error)
- func (k *PGPKeyBundle) CanDecrypt() bool
- func (k *PGPKeyBundle) CanEncrypt() bool
- func (k *PGPKeyBundle) CanSign() bool
- func (k *PGPKeyBundle) CheckFingerprint(fp *PGPFingerprint) error
- func (k *PGPKeyBundle) CheckIdentity(kbid Identity) (match bool, ctime int64, etime int64)
- func (k *PGPKeyBundle) CheckSecretKey() (err error)
- func (k *PGPKeyBundle) DecryptFromString(ciphertext string) (msg []byte, sender keybase1.KID, err error)
- func (k PGPKeyBundle) DecryptionKeys() []openpgp.Key
- func (k *PGPKeyBundle) Encode() (ret string, err error)
- func (k *PGPKeyBundle) EncodeToStream(wc io.WriteCloser) (err error)
- func (k *PGPKeyBundle) EncryptToString(plaintext []byte, sender GenericKey) (ciphertext string, err error)
- func (bundle *PGPKeyBundle) Export() keybase1.PublicKey
- func (k *PGPKeyBundle) FindEmail(em string) bool
- func (k *PGPKeyBundle) FindKeybaseUsername(un string) bool
- func (k *PGPKeyBundle) FullHash() (string, error)
- func (k PGPKeyBundle) GetAlgoType() AlgoType
- func (k PGPKeyBundle) GetFingerprint() PGPFingerprint
- func (k PGPKeyBundle) GetFingerprintP() *PGPFingerprint
- func (k *PGPKeyBundle) GetKID() keybase1.KID
- func (k *PGPKeyBundle) GetPGPIdentities() []keybase1.PGPIdentity
- func (k PGPKeyBundle) GetPrimaryUID() string
- func (k *PGPKeyBundle) HasSecretKey() bool
- func (k PGPKeyBundle) HumanDescription() string
- func (k *PGPKeyBundle) IdentityNames() []string
- func (k PGPKeyBundle) KeyDescription() string
- func (k PGPKeyBundle) KeyInfo() (algorithm, kid, creation string)
- func (k PGPKeyBundle) KeysById(id uint64) []openpgp.Key
- func (k PGPKeyBundle) KeysByIdUsage(id uint64, usage byte) []openpgp.Key
- func (k PGPKeyBundle) MatchesKey(key *openpgp.Key) bool
- func (to *PGPKeyBundle) MergeKey(from *PGPKeyBundle)
- func (k *PGPKeyBundle) SignToString(msg []byte) (sig string, id keybase1.SigID, err error)
- func (k *PGPKeyBundle) StoreToLocalDb(g *GlobalContext) error
- func (k *PGPKeyBundle) StripRevocations() (strippedKey *PGPKeyBundle)
- func (key *PGPKeyBundle) ToLksSKB(lks *LKSec) (ret *SKB, err error)
- func (key *PGPKeyBundle) ToServerSKB(gc *GlobalContext, tsec *triplesec.Cipher, gen PassphraseGeneration) (ret *SKB, err error)
- func (k *PGPKeyBundle) Unlock(reason string, secretUI SecretUI) error
- func (k PGPKeyBundle) UsersDescription() []string
- func (k PGPKeyBundle) VerboseDescription() string
- func (k PGPKeyBundle) VerifyString(sig string, msg []byte) (id keybase1.SigID, err error)
- func (k PGPKeyBundle) VerifyStringAndExtract(sig string) (msg []byte, id keybase1.SigID, err error)
- type PGPKeySet
- type PGPNoDecryptionKeyError
- type PGPPullLoggedOutError
- type PGPUpdateChainLink
- type PIDFileLockError
- type Packetable
- type PaperKeyPhrase
- type ParsedSig
- type Parser
- type PassphraseError
- type PassphraseGeneration
- type PassphraseProvisionImpossibleError
- type PassphraseStream
- func (ps *PassphraseStream) Clone() *PassphraseStream
- func (ps PassphraseStream) DHSeed() []byte
- func (ps PassphraseStream) EdDSASeed() []byte
- func (ps PassphraseStream) Export() keybase1.PassphraseStream
- func (ps PassphraseStream) Generation() PassphraseGeneration
- func (ps PassphraseStream) LksClientHalf() []byte
- func (ps PassphraseStream) PWHash() []byte
- func (ps *PassphraseStream) SetGeneration(gen PassphraseGeneration)
- func (ps PassphraseStream) String() string
- type PassphraseStreamCache
- func (s *PassphraseStreamCache) Clear()
- func (s *PassphraseStreamCache) Dump()
- func (s *PassphraseStreamCache) PassphraseStream() *PassphraseStream
- func (s *PassphraseStreamCache) PassphraseStreamRef() *PassphraseStream
- func (s *PassphraseStreamCache) Triplesec() *triplesec.Cipher
- func (s *PassphraseStreamCache) Valid() bool
- type PassphraseStreamCacheReader
- type PathStep
- type PathSteps
- type Peeker
- type PostAuthProofArg
- type PostAuthProofRes
- type PostProofArg
- type PostProofRes
- type PromptArg
- type PromptDefault
- type PromptDescriptor
- type Proof
- type ProofAPIError
- type ProofCache
- type ProofCheckHook
- type ProofChecker
- type ProofError
- type ProofErrorImpl
- type ProofLinkWithState
- type ProofMetadata
- type ProofNotFoundForServiceError
- type ProofNotFoundForUsernameError
- type ProofNotYetAvailableError
- type ProofSet
- type ProtocolDowngradeError
- type ProveUI
- type ProvisionUI
- type PublicKeyList
- type RPCLogFactory
- type RPCLogOptions
- func (r *RPCLogOptions) ClientTrace() bool
- func (r *RPCLogOptions) Profile() bool
- func (r *RPCLogOptions) Reload()
- func (r *RPCLogOptions) ServerTrace() bool
- func (r *RPCLogOptions) ShowAddress() bool
- func (r *RPCLogOptions) ShowArg() bool
- func (r *RPCLogOptions) ShowResult() bool
- func (r *RPCLogOptions) TransportStart() bool
- type RawKeyFamily
- type ReadCloser
- type ReceiverDeviceError
- type RedditChecker
- func (rc *RedditChecker) CheckData(h SigHint, dat *jsonw.Wrapper) ProofError
- func (rc *RedditChecker) CheckHint(h SigHint) ProofError
- func (rc *RedditChecker) CheckStatus(h SigHint) ProofError
- func (rc *RedditChecker) GetTorError() ProofError
- func (rc *RedditChecker) ScreenNameCompare(s1, s2 string) bool
- func (rc *RedditChecker) UnpackData(inp *jsonw.Wrapper) (*jsonw.Wrapper, ProofError)
- type RedditServiceType
- func (t RedditServiceType) AllStringKeys() []string
- func (t RedditServiceType) CheckProofText(text string, id keybase1.SigID, sig string) (err error)
- func (t RedditServiceType) CheckUsername(s string) (err error)
- func (t RedditServiceType) DisplayName(un string) string
- func (t RedditServiceType) FormatProofText(ppr *PostProofRes) (res string, err error)
- func (t RedditServiceType) GetPrompt() string
- func (t RedditServiceType) GetProofType() string
- func (t RedditServiceType) GetTypeName() string
- func (t RedditServiceType) PostInstructions(un string) *Markup
- func (t RedditServiceType) PrimaryStringKeys() []string
- func (t RedditServiceType) RecheckProofPosting(tryNumber int, status keybase1.ProofStatus, _ string) (warning *Markup, err error)
- func (t RedditServiceType) ToChecker() Checker
- func (t RedditServiceType) ToServiceJSON(un string) *jsonw.Wrapper
- type ReloginRequiredError
- type RemoteProofChainLink
- type RemoteProofLinks
- func (r *RemoteProofLinks) Active() []RemoteProofChainLink
- func (r *RemoteProofLinks) AddProofsToSet(existing *ProofSet)
- func (r *RemoteProofLinks) ForService(st ServiceType) []RemoteProofChainLink
- func (r *RemoteProofLinks) Insert(link RemoteProofChainLink, err ProofError)
- func (r *RemoteProofLinks) TrackSet() *TrackSet
- func (r *RemoteProofLinks) TrackingStatement() *jsonw.Wrapper
- type RemoteStream
- type RemoteStreamBuffered
- type ReportingTimer
- type ReportingTimerDummy
- type ReportingTimerReal
- type Requester
- type ResolveCache
- type ResolveResult
- type RetryExhaustedError
- type ReverseSigError
- type RevokeChainLink
- type RooterChecker
- func (rc *RooterChecker) CheckData(h SigHint, dat string) ProofError
- func (rc *RooterChecker) CheckHint(h SigHint) (err ProofError)
- func (rc *RooterChecker) CheckStatus(h SigHint) (perr ProofError)
- func (rc *RooterChecker) GetTorError() ProofError
- func (rc *RooterChecker) ScreenNameCompare(s1, s2 string) bool
- func (rc *RooterChecker) UnpackData(inp *jsonw.Wrapper) (string, ProofError)
- type RooterServiceType
- func (t RooterServiceType) AllStringKeys() []string
- func (t RooterServiceType) CheckProofText(text string, id keybase1.SigID, sig string) (err error)
- func (t RooterServiceType) CheckUsername(s string) (err error)
- func (t RooterServiceType) DisplayName(un string) string
- func (t RooterServiceType) GetPrompt() string
- func (t RooterServiceType) GetProofType() string
- func (t RooterServiceType) GetTypeName() string
- func (t RooterServiceType) NormalizeUsername(s string) (string, error)
- func (t RooterServiceType) PostInstructions(un string) *Markup
- func (t RooterServiceType) PrimaryStringKeys() []string
- func (t RooterServiceType) RecheckProofPosting(tryNumber int, status keybase1.ProofStatus, _ string) (warning *Markup, err error)
- func (t RooterServiceType) ToChecker() Checker
- func (t RooterServiceType) ToServiceJSON(un string) *jsonw.Wrapper
- type RunGpg2Arg
- type RunGpg2Res
- type RunGpgArg
- type RunGpgRes
- type RunMode
- type RunModeGetter
- type S
- type SKB
- func (s *SKB) ArmoredEncode() (ret string, err error)
- func (s *SKB) Dump()
- func (s *SKB) GetPubKey() (key GenericKey, err error)
- func (s *SKB) HumanDescription(owner *User) (string, error)
- func (s *SKB) PromptAndUnlock(lctx LoginContext, reason, which string, secretStore SecretStore, ui SecretUI, ...) (ret GenericKey, err error)
- func (s *SKB) RawUnlockedKey() []byte
- func (s *SKB) ReadKey() (g GenericKey, err error)
- func (s *SKB) SetUID(uid keybase1.UID)
- func (s *SKB) ToPacket() (ret *KeybasePacket, err error)
- func (s *SKB) UnlockNoPrompt(lctx LoginContext, secretStore SecretStore, lksPreload *LKSec) (GenericKey, error)
- func (s *SKB) UnlockSecretKey(lctx LoginContext, passphrase string, tsec *triplesec.Cipher, ...) (key GenericKey, err error)
- func (s *SKB) UnlockWithStoredSecret(secretRetriever SecretRetriever) (ret GenericKey, err error)
- func (s *SKB) VerboseDescription() (ret string, err error)
- type SKBKeyringFile
- func (k SKBKeyringFile) FindSecretKey(kids []keybase1.KID) (ret *SKB)
- func (k SKBKeyringFile) GetFilename() string
- func (k *SKBKeyringFile) HasPGPKeys() bool
- func (k *SKBKeyringFile) Index() (err error)
- func (k *SKBKeyringFile) Load() (err error)
- func (k *SKBKeyringFile) LoadAndIndex() error
- func (k SKBKeyringFile) LookupByFingerprint(fp PGPFingerprint) *SKB
- func (k SKBKeyringFile) LookupByKid(kid keybase1.KID) *SKB
- func (k *SKBKeyringFile) Push(skb *SKB) error
- func (k *SKBKeyringFile) PushAndSave(skb *SKB) error
- func (k *SKBKeyringFile) Save() error
- func (k SKBKeyringFile) SearchWithComputedKeyFamily(ckf *ComputedKeyFamily, ska SecretKeyArg) []*SKB
- func (k SKBKeyringFile) WriteTo(w io.Writer) (int64, error)
- type SKBPriv
- type SafeWriter
- type SecretKeyArg
- type SecretKeyType
- type SecretRetriever
- type SecretStore
- type SecretStoreError
- type SecretStorer
- type SecretSyncer
- func (ss *SecretSyncer) ActiveDevices(includeTypesSet DeviceTypeSet) (DeviceKeyMap, error)
- func (ss *SecretSyncer) AllActiveKeys(ckf *ComputedKeyFamily) []*SKB
- func (ss *SecretSyncer) Clear() error
- func (ss *SecretSyncer) Devices() (DeviceKeyMap, error)
- func (ss *SecretSyncer) DumpPrivateKeys()
- func (ss *SecretSyncer) FindActiveKey(ckf *ComputedKeyFamily) (ret *SKB, err error)
- func (ss *SecretSyncer) FindDevice(id keybase1.DeviceID) (DeviceKey, error)
- func (ss *SecretSyncer) FindPrivateKey(kid string) (ServerPrivateKey, bool)
- func (ss *SecretSyncer) HasActiveDevice(includeTypesSet DeviceTypeSet) (bool, error)
- func (ss *SecretSyncer) HasDevices() bool
- func (ss *SecretSyncer) IsDeviceNameTaken(name string, includeTypesSet DeviceTypeSet) bool
- type SecretUI
- type SelfNotFoundError
- type SelfSigChainLink
- func (s *SelfSigChainLink) CheckDataJSON() *jsonw.Wrapper
- func (s *SelfSigChainLink) ComputeTrackDiff(tl *TrackLookup) TrackDiff
- func (s *SelfSigChainLink) DisplayCheck(ui IdentifyUI, lcr LinkCheckResult)
- func (s *SelfSigChainLink) GetDevice() *Device
- func (s *SelfSigChainLink) GetHostname() string
- func (s *SelfSigChainLink) GetPGPFullHash() string
- func (s *SelfSigChainLink) GetProofType() keybase1.ProofType
- func (s *SelfSigChainLink) GetProtocol() string
- func (s *SelfSigChainLink) GetRemoteUsername() string
- func (s *SelfSigChainLink) LastWriterWins() bool
- func (s *SelfSigChainLink) ParseDevice() (err error)
- func (s *SelfSigChainLink) ProofText() string
- func (s *SelfSigChainLink) TableKey() string
- func (s *SelfSigChainLink) ToDisplayString() string
- func (s *SelfSigChainLink) ToIDString() string
- func (s *SelfSigChainLink) ToKeyValuePair() (string, string)
- func (s *SelfSigChainLink) ToTrackingStatement(keybase1.ProofState) (*jsonw.Wrapper, error)
- func (s *SelfSigChainLink) Type() string
- type SelfTrackError
- type Seqno
- type Server
- type ServerChainError
- type ServerPrivateKey
- type ServerPrivateKeyMap
- type ServerPrivateKeys
- type ServiceBlock
- type ServiceInfo
- type ServiceType
- type Session
- func (s *Session) APIArgs() (token, csrf string)
- func (s *Session) GetCsrf() string
- func (s *Session) GetDictionary() *jsonw.Wrapper
- func (s *Session) GetToken() string
- func (s *Session) GetUID() keybase1.UID
- func (s *Session) GetUsername() *NormalizedUsername
- func (s *Session) HasSessionToken() bool
- func (s *Session) Invalidate()
- func (s *Session) IsLoggedIn() bool
- func (s *Session) IsLoggedInAndProvisioned() bool
- func (s *Session) IsRecent() bool
- func (s *Session) IsValid() bool
- func (s *Session) Load() error
- func (s *Session) Logout() error
- func (s *Session) SetCsrf(t string)
- func (s *Session) SetDeviceProvisioned(devid keybase1.DeviceID) error
- func (s *Session) SetLoggedIn(sessionID, csrfToken string, username NormalizedUsername, uid keybase1.UID, ...) error
- func (s *Session) SetUsername(username NormalizedUsername)
- type SessionReader
- type ShutdownHook
- type SibkeyAlreadyExistsError
- type SibkeyChainLink
- func (s *SibkeyChainLink) GetDelegatedKid() keybase1.KID
- func (s *SibkeyChainLink) GetDevice() *Device
- func (s *SibkeyChainLink) GetPGPFullHash() string
- func (s *SibkeyChainLink) GetRole() KeyRole
- func (s *SibkeyChainLink) ToDisplayString() string
- func (s *SibkeyChainLink) Type() string
- func (s *SibkeyChainLink) VerifyReverseSig(ckf ComputedKeyFamily) (err error)
- type SigChain
- func (sc *SigChain) Bump(mt MerkleTriple)
- func (sc *SigChain) CheckFreshness(srv *MerkleTriple) (current bool, err error)
- func (sc *SigChain) Dump(w io.Writer)
- func (sc SigChain) GetComputedKeyInfos() (cki *ComputedKeyInfos)
- func (sc *SigChain) GetCurrentSubchain(eldest keybase1.KID) (links []*ChainLink, err error)
- func (sc SigChain) GetCurrentTailTriple() (ret *MerkleTriple)
- func (sc SigChain) GetFirstLink() *ChainLink
- func (sc SigChain) GetFutureChainTail() (ret *MerkleTriple)
- func (sc SigChain) GetLastKnownID() (ret LinkID)
- func (sc SigChain) GetLastKnownSeqno() (ret Seqno)
- func (sc SigChain) GetLastLink() *ChainLink
- func (sc SigChain) GetLastLoadedID() (ret LinkID)
- func (sc SigChain) GetLastLoadedSeqno() (ret Seqno)
- func (sc *SigChain) GetLinkFromSeqno(seqno int) *ChainLink
- func (sc *SigChain) GetLinkFromSigID(id keybase1.SigID) *ChainLink
- func (sc SigChain) Len() int
- func (sc *SigChain) LoadFromServer(t *MerkleTriple, selfUID keybase1.UID) (dirtyTail *MerkleTriple, err error)
- func (sc *SigChain) LocalDelegate(kf *KeyFamily, key GenericKey, sigID keybase1.SigID, signingKid keybase1.KID, ...) (err error)
- func (sc *SigChain) Store() (err error)
- func (sc *SigChain) VerifiedChainLinks(fp PGPFingerprint) (ret []*ChainLink)
- func (sc *SigChain) VerifyChain() (err error)
- func (sc *SigChain) VerifySigsAndComputeKeys(eldest keybase1.KID, ckf *ComputedKeyFamily) (cached bool, err error)
- type SigChainLoader
- func (l *SigChainLoader) AccessPreload() (cached bool, err error)
- func (l *SigChainLoader) CheckFreshness() (current bool, err error)
- func (l *SigChainLoader) GetKeyFamily() (err error)
- func (l *SigChainLoader) GetMerkleTriple() (ret *MerkleTriple)
- func (l *SigChainLoader) Load() (ret *SigChain, err error)
- func (l *SigChainLoader) LoadFromServer() (err error)
- func (l *SigChainLoader) LoadLastLinkIDFromStorage() (mt *MerkleTriple, err error)
- func (l *SigChainLoader) LoadLinksFromStorage() (err error)
- func (l *SigChainLoader) MakeSigChain() error
- func (l *SigChainLoader) Store() (err error)
- func (l *SigChainLoader) StoreTail() (err error)
- func (l *SigChainLoader) VerifySigsAndComputeKeys() (err error)
- type SigHint
- type SigHints
- type SignatureStatus
- type SimpleTimer
- type SocialProofChainLink
- func (s *SocialProofChainLink) CheckDataJSON() *jsonw.Wrapper
- func (s *SocialProofChainLink) ComputeTrackDiff(tl *TrackLookup) TrackDiff
- func (s *SocialProofChainLink) DisplayCheck(ui IdentifyUI, lcr LinkCheckResult)
- func (s *SocialProofChainLink) GetHostname() string
- func (s *SocialProofChainLink) GetProofType() keybase1.ProofType
- func (s *SocialProofChainLink) GetProtocol() string
- func (s *SocialProofChainLink) GetRemoteUsername() string
- func (s *SocialProofChainLink) GetService() string
- func (s *SocialProofChainLink) LastWriterWins() bool
- func (s *SocialProofChainLink) ProofText() string
- func (s *SocialProofChainLink) TableKey() string
- func (s *SocialProofChainLink) ToDisplayString() string
- func (s *SocialProofChainLink) ToIDString() string
- func (s *SocialProofChainLink) ToKeyValuePair() (string, string)
- func (s *SocialProofChainLink) ToTrackingStatement(state keybase1.ProofState) (*jsonw.Wrapper, error)
- func (s *SocialProofChainLink) Type() string
- type Socket
- type SocketInfo
- type SocketWrapper
- type SpecialKeyRing
- type StreamExistsError
- type StreamNotFoundError
- type StreamWrongKindError
- type StringWarning
- type StubAPIEngine
- type SubkeyChainLink
- type Syncer
- type TerminalUI
- type TestConfig
- type TestContext
- func (tc *TestContext) Cleanup()
- func (tc TestContext) ClearAllStoredSecrets() error
- func (tc TestContext) Clone() (ret TestContext)
- func (tc *TestContext) GenerateGPGKeyring(ids ...string) error
- func (tc *TestContext) MakePGPKey(id string) (*PGPKeyBundle, error)
- func (tc TestContext) MoveGpgKeyringTo(dst TestContext) error
- func (tc *TestContext) ResetLoginState()
- func (tc *TestContext) SetRuntimeDir(s string)
- type TestLoginUI
- func (t *TestLoginUI) DisplayPaperKeyPhrase(_ context.Context, arg keybase1.DisplayPaperKeyPhraseArg) error
- func (t *TestLoginUI) DisplayPrimaryPaperKey(_ context.Context, arg keybase1.DisplayPrimaryPaperKeyArg) error
- func (t *TestLoginUI) GetEmailOrUsername(_ context.Context, _ int) (string, error)
- func (t *TestLoginUI) PromptRevokePaperKeys(_ context.Context, arg keybase1.PromptRevokePaperKeysArg) (bool, error)
- type TestOutput
- type TestParameters
- type TestSecretUI
- func (t *TestSecretUI) GetKeybasePassphrase(keybase1.GetKeybasePassphraseArg) (keybase1.GetPassphraseRes, error)
- func (t *TestSecretUI) GetNewPassphrase(keybase1.GetNewPassphraseArg) (keybase1.GetPassphraseRes, error)
- func (t *TestSecretUI) GetPaperKeyPassphrase(keybase1.GetPaperKeyPassphraseArg) (string, error)
- func (t *TestSecretUI) GetPassphrase(p keybase1.GUIEntryArg, terminal *keybase1.SecretEntryArg) (keybase1.GetPassphraseRes, error)
- func (t *TestSecretUI) GetSecret(p keybase1.SecretEntryArg, terminal *keybase1.SecretEntryArg) (*keybase1.SecretEntryRes, error)
- type TimeoutError
- type TimerSelector
- type TimerSet
- type Token
- type TooManyKeysError
- type TorMode
- type TorSessionRequiredError
- type TrackChainLink
- func (l *TrackChainLink) GetTrackedKeys() ([]TrackedKey, error)
- func (l *TrackChainLink) GetTrackedUID() (keybase1.UID, error)
- func (l *TrackChainLink) GetTrackedUsername() (string, error)
- func (l TrackChainLink) IsRemote() bool
- func (l *TrackChainLink) IsRevoked() bool
- func (l *TrackChainLink) RemoteKeyProofs() *jsonw.Wrapper
- func (l *TrackChainLink) ToDisplayString() string
- func (l *TrackChainLink) ToServiceBlocks() (ret []*ServiceBlock)
- func (l *TrackChainLink) Type() string
- type TrackDiff
- type TrackDiffClash
- type TrackDiffNew
- type TrackDiffNone
- type TrackDiffRemoteChanged
- type TrackDiffRemoteFail
- type TrackDiffRemoteWorking
- type TrackDiffRevoked
- type TrackDiffUpgraded
- func (t TrackDiffUpgraded) BreaksTracking() bool
- func (t TrackDiffUpgraded) GetCurr() string
- func (t TrackDiffUpgraded) GetPrev() string
- func (t TrackDiffUpgraded) GetTrackDiffType() keybase1.TrackDiffType
- func (t TrackDiffUpgraded) IsSameAsTracked() bool
- func (t TrackDiffUpgraded) ToDisplayMarkup() *Markup
- func (t TrackDiffUpgraded) ToDisplayString() string
- type TrackIDComponent
- type TrackInstructions
- type TrackLookup
- type TrackSet
- type TrackSummary
- type TrackedKey
- type Tracker
- type TrackerSyncer
- type Trackers
- type TwitterChecker
- type TwitterServiceType
- func (t TwitterServiceType) AllStringKeys() []string
- func (t TwitterServiceType) CheckProofText(text string, id keybase1.SigID, sig string) (err error)
- func (t TwitterServiceType) CheckUsername(s string) (err error)
- func (t TwitterServiceType) DisplayName(un string) string
- func (t TwitterServiceType) GetPrompt() string
- func (t TwitterServiceType) GetProofType() string
- func (t TwitterServiceType) GetTypeName() string
- func (t TwitterServiceType) NormalizeUsername(s string) (string, error)
- func (t TwitterServiceType) PostInstructions(un string) *Markup
- func (t TwitterServiceType) PrimaryStringKeys() []string
- func (t TwitterServiceType) RecheckProofPosting(tryNumber int, status keybase1.ProofStatus, _ string) (warning *Markup, err error)
- func (t TwitterServiceType) ToChecker() Checker
- func (t TwitterServiceType) ToServiceJSON(un string) *jsonw.Wrapper
- type TypedChainLink
- type U
- type UHex
- type UI
- type UIConsumer
- type UIDMismatchError
- type UIDelegationUnavailableError
- type UIKind
- type UIRouter
- type UnexpectedKeyError
- type UnknownKeyTypeError
- type UnknownSpecialKIDError
- type UnmarshalError
- type UntrackChainLink
- type UntrackError
- type Usage
- type User
- func LoadMe(arg LoadUserArg) (*User, error)
- func LoadUser(arg LoadUserArg) (ret *User, err error)
- func NewUser(g *GlobalContext, o *jsonw.Wrapper) (*User, error)
- func NewUserFromLocalStorage(g *GlobalContext, o *jsonw.Wrapper) (*User, error)
- func NewUserFromServer(g *GlobalContext, o *jsonw.Wrapper) (*User, error)
- func NewUserThin(name string, uid keybase1.UID) *User
- func (u *User) AllSyncedSecretKeys(lctx LoginContext) (keys []*SKB, err error)
- func (u *User) AuthenticationProof(key GenericKey, session string, ei int) (ret *jsonw.Wrapper, err error)
- func (u *User) BaseProofSet() *ProofSet
- func (u *User) CheckBasicsFreshness(server int64) (current bool, err error)
- func (u *User) CryptocurrencySig(key GenericKey, address string, sigToRevoke keybase1.SigID) (*jsonw.Wrapper, error)
- func (u *User) DeviceNames() ([]string, error)
- func (u *User) Equal(other *User) bool
- func (u *User) Export() *keybase1.User
- func (u *User) FilterActivePGPKeys(sibkey bool, query string) []*PGPKeyBundle
- func (u *User) GetActivePGPFingerprints(sibkey bool) (ret []PGPFingerprint)
- func (u *User) GetActivePGPKIDs(sibkey bool) (ret []keybase1.KID)
- func (u *User) GetActivePGPKeys(sibkey bool) (ret []*PGPKeyBundle)
- func (u *User) GetComputedKeyFamily() (ret *ComputedKeyFamily)
- func (u *User) GetComputedKeyInfos() *ComputedKeyInfos
- func (u *User) GetDevice(id keybase1.DeviceID) (*Device, error)
- func (u *User) GetDeviceSibkey() (GenericKey, error)
- func (u *User) GetDeviceSubkey() (subkey GenericKey, err error)
- func (u *User) GetEldestKID() (ret keybase1.KID)
- func (u *User) GetIDVersion() (int64, error)
- func (u *User) GetKeyFamily() *KeyFamily
- func (u *User) GetName() string
- func (u *User) GetNormalizedName() NormalizedUsername
- func (u *User) GetServerSeqno() (i int, err error)
- func (u *User) GetSigChainLastKnownSeqno() Seqno
- func (u *User) GetSigIDFromSeqno(seqno int) keybase1.SigID
- func (u *User) GetSyncedSecretKey() (ret *SKB, err error)
- func (u *User) GetUID() keybase1.UID
- func (u *User) HasActiveKey() bool
- func (u *User) HasDeviceInCurrentInstall() bool
- func (u *User) IDTable() *IdentityTable
- func (u *User) IsSigIDActive(sigID keybase1.SigID) (bool, error)
- func (u *User) LinkFromSigID(sigID keybase1.SigID) *ChainLink
- func (u *User) LoadSigChains(allKeys bool, f *MerkleUserLeaf, self bool) (err error)
- func (u *User) MakeIDTable() error
- func (u *User) RevokeKeysProof(key GenericKey, kidsToRevoke []keybase1.KID, deviceToDisable keybase1.DeviceID) (*jsonw.Wrapper, error)
- func (u *User) RevokeSigsProof(key GenericKey, sigIDsToRevoke []keybase1.SigID) (*jsonw.Wrapper, error)
- func (u *User) ServiceProof(signingKey GenericKey, typ ServiceType, remotename string) (ret *jsonw.Wrapper, err error)
- func (u *User) SigChainBump(linkID LinkID, sigID keybase1.SigID)
- func (u *User) SigChainBumpMT(mt MerkleTriple)
- func (u *User) SigChainDump(w io.Writer)
- func (u *User) SigningKeyPub() (GenericKey, error)
- func (u *User) Store() error
- func (u *User) StoreSigChain() error
- func (u *User) StoreTopLevel() error
- func (u *User) SyncSecrets() error
- func (u *User) SyncedSecretKey(lctx LoginContext) (ret *SKB, err error)
- func (u *User) ToTrackingStatement(w *jsonw.Wrapper, outcome *IdentifyOutcome) (err error)
- func (u *User) ToTrackingStatementBasics(errp *error) *jsonw.Wrapper
- func (u *User) ToTrackingStatementKey(errp *error) *jsonw.Wrapper
- func (u *User) ToTrackingStatementPGPKeys(errp *error) *jsonw.Wrapper
- func (u *User) ToTrackingStatementSeqTail() *jsonw.Wrapper
- func (u *User) ToUntrackingStatement(w *jsonw.Wrapper) (err error)
- func (u *User) ToUntrackingStatementBasics() *jsonw.Wrapper
- func (u *User) TrackChainLinkFor(username string, uid keybase1.UID) (*TrackChainLink, error)
- func (u *User) TrackStatementJSON(them *User, outcome *IdentifyOutcome) (string, error)
- func (u *User) TrackingProofFor(signingKey GenericKey, u2 *User, outcome *IdentifyOutcome) (ret *jsonw.Wrapper, err error)
- func (u *User) UntrackingProofFor(signingKey GenericKey, u2 *User) (ret *jsonw.Wrapper, err error)
- func (u *User) UpdatePassphraseProof(key GenericKey, pwh string, ppGen PassphraseGeneration) (*jsonw.Wrapper, error)
- func (u *User) VerifySelfSig() error
- func (u *User) VerifySelfSigByKey() (ret bool)
- type UserBasic
- type UserCache
- type UserConfig
- type UserConfigWrapper
- type UserInfo
- type UserNotFoundError
- type VerificationError
- type VerificationPath
- type WaitForItError
- type Warning
- type Warnings
- type WebChecker
- type WebProofChainLink
- func (w *WebProofChainLink) CheckDataJSON() *jsonw.Wrapper
- func (w *WebProofChainLink) ComputeTrackDiff(tl *TrackLookup) (res TrackDiff)
- func (w *WebProofChainLink) DisplayCheck(ui IdentifyUI, lcr LinkCheckResult)
- func (w *WebProofChainLink) GetHostname() string
- func (w *WebProofChainLink) GetProofType() keybase1.ProofType
- func (w *WebProofChainLink) GetProtocol() string
- func (w *WebProofChainLink) GetRemoteUsername() string
- func (w *WebProofChainLink) LastWriterWins() bool
- func (w *WebProofChainLink) ProofText() string
- func (w *WebProofChainLink) TableKey() string
- func (w *WebProofChainLink) ToDisplayString() string
- func (w *WebProofChainLink) ToIDString() string
- func (w *WebProofChainLink) ToKeyValuePair() (string, string)
- func (w *WebProofChainLink) ToTrackingStatement(state keybase1.ProofState) (*jsonw.Wrapper, error)
- func (w *WebProofChainLink) Type() string
- type WebServiceType
- func (t WebServiceType) AllStringKeys() []string
- func (t WebServiceType) CheckProofText(text string, id keybase1.SigID, sig string) (err error)
- func (t WebServiceType) CheckUsername(s string) error
- func (t WebServiceType) DisplayName(un string) string
- func (t WebServiceType) GetAPIArgKey() string
- func (t WebServiceType) GetPrompt() string
- func (t WebServiceType) GetProofType() string
- func (t WebServiceType) GetTypeName() string
- func (t WebServiceType) LastWriterWins() bool
- func (t WebServiceType) MarkupFilenames(un string, mkp *Markup)
- func (t WebServiceType) NormalizeUsername(s string) (ret string, err error)
- func (t WebServiceType) PostInstructions(un string) *Markup
- func (t WebServiceType) PreProofWarning(un string) *Markup
- func (t WebServiceType) PrimaryStringKeys() []string
- func (t WebServiceType) RecheckProofPosting(tryNumber int, status keybase1.ProofStatus, _ string) (warning *Markup, err error)
- func (t WebServiceType) ToChecker() Checker
- func (t WebServiceType) ToServiceJSON(un string) *jsonw.Wrapper
- type WebUnreachableError
- type Win32
- func (w Win32) CacheDir() string
- func (w Win32) ConfigDir() string
- func (w Win32) DataDir() string
- func (w Win32) Home(emptyOk bool) string
- func (w Win32) LogDir() string
- func (w Win32) Normalize(s string) string
- func (w Win32) RuntimeDir() string
- func (w Win32) ServiceSpawnDir() (string, error)
- func (w Win32) Split(s string) []string
- type WrongKeyError
- type WrongKidError
- type WrongSigError
- type XdgPosix
- func (x XdgPosix) CacheDir() string
- func (x XdgPosix) ConfigDir() string
- func (x XdgPosix) DataDir() string
- func (x XdgPosix) Home(emptyOk bool) string
- func (x XdgPosix) LogDir() string
- func (x XdgPosix) Normalize(s string) string
- func (x XdgPosix) RuntimeDir() string
- func (x XdgPosix) ServiceSpawnDir() (ret string, err error)
Constants ¶
const ( XAPIResJSON = iota XAPIResHTML XAPIResText )
const ( NONE = iota OR AND LPAREN RPAREN URL EOF ERROR )
const ( DevelServerURI = "http://localhost:3000" StagingServerURI = "https://stage0.keybase.io" ProductionServerURI = "https://keybase.io" TorServerURI = "http://fncuwbiisyh6ak3i.onion" )
const ( DevelRunMode RunMode = "devel" StagingRunMode = "staging" ProductionRunMode = "prod" RunModeError = "error" NoRunMode = "" )
const ( ConfigFile = "config.json" SessionFile = "session.json" DBFile = "keybase.leveldb" SocketFile = "keybased.sock" PIDFile = "keybased.pid" SecretKeyringTemplate = "secretkeys.%u.mpack" APIVersion = "1.0" APIURIPathPrefix = "/_/api/" + APIVersion DaemonPort = 40933 GoClientID = "keybase.io go client" IdentifyAs = GoClientID + " v" + Version + " " + runtime.GOOS )
const ( PermFile os.FileMode = 0600 PermDir os.FileMode = 0700 UmaskablePermFile os.FileMode = 0666 )
const ( UserCacheMaxAge = 5 * time.Minute PGPFingerprintHexLen = 40 ProofCacheSize = 0x1000 ProofCacheLongDur = 6 * time.Hour ProofCacheMediumDur = 30 * time.Minute ProofCacheShortDur = 1 * time.Minute SigShortIDBytes = 27 )
const ( KeybaseKIDV1 = 1 // Uses SHA-256 KeybaseSignatureV1 = 1 OneYearInSeconds = 24 * 60 * 60 * 365 SigExpireIn = OneYearInSeconds * 16 // 16 years NaclEdDSAExpireIn = OneYearInSeconds * 16 // 16 years NaclDHExpireIn = OneYearInSeconds * 16 // 16 years KeyExpireIn = OneYearInSeconds * 16 // 16 years SubkeyExpireIn = OneYearInSeconds * 16 // 16 years AuthExpireIn = OneYearInSeconds // 1 year )
const ( SCOk = 0 SCLoginRequired = 201 SCBadSession = 202 SCBadLoginPassword = 204 SCNotFound = 205 SCGeneric = 218 SCAlreadyLoggedIn = 235 SCCanceled = 237 SCReloginRequired = 274 SCBadSignupUsernameTaken = 701 SCKeyNotFound = 901 SCKeyInUse = 907 SCKeyBadGen = 913 SCKeyNoSecret = 914 SCKeyBadUIDs = 915 SCKeyNoActive = 916 SCKeyNoSig = 917 SCKeyBadSig = 918 SCKeyBadEldest = 919 SCKeyNoEldest = 920 SCKeyDuplicateUpdate = 921 SCSibkeyAlreadyExists = 922 SCDecryptionKeyNotFound = 924 SCBadTrackSession = 1301 SCDeviceNotFound = 1409 SCDeviceMismatch = 1410 SCDeviceRequired = 1411 SCStreamExists = 1501 SCStreamNotFound = 1502 SCStreamWrongKind = 1503 SCStreamEOF = 1504 SCAPINetworkError = 1601 SCTimeout = 1602 SCProofError = 1701 SCIdentificationExpired = 1702 SCSelfNotFound = 1703 SCBadKexPhrase = 1704 SCNoUIDelegation = 1705 )
Status codes. This list should match keybase/lib/constants.iced.
const ( MerkleTreeNode = 1 MerkleTreeLeaf = 2 )
const ( AuthenticationType LinkType = "auth" CryptocurrencyType = "cryptocurrency" RevokeType = "revoke" TrackType = "track" UntrackType = "untrack" UpdatePassphraseType = "update_passphrase_hash" WebServiceBindingType = "web_service_binding" EldestType DelegationType = "eldest" PGPUpdateType = "pgp_update" SibkeyType = "sibkey" SubkeyType = "subkey" )
const ( SigTypeNone = 0 SigTypeSelfSig = 1 SigTypeRemoteProof = 2 SigTypeTrack = 3 SigTypeUntrack = 4 SigTypeRevoke = 5 SigTypeCryptocurrency = 6 SigTypeAnnouncement = 7 )
const ( KeyTypeNone KeyType = 0 KeyTypeOpenPGPPublic = 1 KeyTypeP3skbPrivate = 2 KeyTypeKbNaclEddsa = 3 KeyTypeKbNaclDH = 4 KeyTypeKbNaclEddsaServerHalf = 5 KeyTypeKbNaclDHServerHalf = 6 )
const ( DeviceStatusNone = 0 DeviceStatusActive = 1 DeviceStatusDefunct = 2 )
const ( DeviceTypeDesktop = "desktop" DeviceTypeMobile = "mobile" DeviceTypePaper = "backup" )
these strings need to match the keys in keybase/lib_public/public_constants.iced -> public_constants.device.type
const ( HTTPDefaultTimeout = 60 * time.Second HTTPPollMaximum = 5 * time.Second )
const ( KeybasePacketV1 = 1 TagP3skb = 513 TagSignature = 514 TagEncryption = 515 )
Packet tags for OpenPGP and also Keybase packets
const ( KIDPGPBase AlgoType = 0x00 KIDPGPRsa = 0x1 KIDPGPElgamal = 0x10 KIDPGPDsa = 0x11 KIDPGPEcdh = 0x12 KIDPGPEcdsa = 0x13 KIDNaclEddsa = 0x20 KIDNaclDH = 0x21 )
const ( HashPGPMd5 = 1 HashPGPSha1 = 2 HashPGPRipemd160 = 3 HashPGPSha256 = 8 HashPGPSha384 = 9 HashPGPSha512 = 10 HashPGPSha224 = 11 )
OpenPGP hash IDs, taken from http://tools.ietf.org/html/rfc4880#section-9.4
const ( RevSimpleDelete = 0 RevFull = 1 RevDated = 2 )
key_revocation_types
const ( KexScryptCost = 32768 KexScryptR = 8 KexScryptP = 1 KexScryptKeylen = 32 KexSessionIDEntropy = 65 // kex doc specifies 65 bits of entropy )
const ( Kex2PhraseEntropy = 88 Kex2ScryptCost = 1 << 17 Kex2ScryptR = 8 Kex2ScryptP = 1 Kex2ScryptKeylen = 32 )
const ( PaperKeyScryptCost = 32768 PaperKeyScryptR = 8 PaperKeyScryptP = 1 PaperKeyScryptKeylen = 128 PaperKeySecretEntropy = 117 PaperKeyIDBits = 22 PaperKeyVersionBits = 4 PaperKeyVersion = 0 )
const ( DBUser = 0x00 DBSig = 0x0f DBLink = 0xe0 DBLocalTrack = 0xe1 DBPGPKey = 0xe3 DBSigHints = 0xe4 DBProofCheck = 0xe5 DBUserSecretKeys = 0xe6 DBSigChainTailPublic = 0xe7 DBSigChainTailSemiprivate = 0xe8 DBSigChainTailEncrypted = 0xe9 DBMerkleRoot = 0xf0 DBTrackers = 0xf1 )
const ( DBLookupUsername = 0x00 DBLookupMerkleRoot = 0x01 )
const ( DeviceIDLen = 16 DeviceIDSuffix = 0x18 )
const ( NodeHashLenLong = sha512.Size // = 64 NodeHashLenShort = sha256.Size // = 32 )
const ( RedditPrefix = "https://www.reddit.com" RedditSub = RedditPrefix + "/r/keybaseproofs" )
const ( TrackStatusNone = 0 TrackStatusTracking = 1 )
const Build = "0"
Build number
const CanonicalHost = "keybase.io"
const DefaultRunMode = DevelRunMode
const DownloadURL = "https://keybase.io/download"
const (
IDSuffixKID = 0x0a
)
const IsBrewBuild = false
const LKSecVersion = 100
const (
LinkIDLen = 32
)
const MinPassphraseLength = 12
const NaclDHKeySecretSize = 32
TODO: Ideally, box would expose how many random bytes it needs.
const NaclDHKeysize = 32
const NaclDHNonceSize = 24
Todo: Ideally, box would specify nonce size
const NaclSigningKeySecretSize = 32
TODO: Ideally, ed25519 would expose how many random bytes it needs.
const (
PGPFingerprintLen = 20
)
const SHA256Code = 8
const (
ServerUpdateLag = time.Minute
)
const (
SigKbEddsa = KIDNaclEddsa
)
const UserSummaryLimit = 500 // max number of user summaries in one request
const Version = "1.0.3"
Version as MAJOR.MINOR.PATCH
Variables ¶
var AllDeviceTypes = DeviceTypeSet{ DeviceTypeDesktop: true, DeviceTypeMobile: true, DeviceTypePaper: true, }
var BundledCAs = map[string]string{
"api.keybase.io": `-----BEGIN CERTIFICATE-----
MIIGmzCCBIOgAwIBAgIJAPzhpcIBaOeNMA0GCSqGSIb3DQEBBQUAMIGPMQswCQYD
VQQGEwJVUzELMAkGA1UECBMCTlkxETAPBgNVBAcTCE5ldyBZb3JrMRQwEgYDVQQK
EwtLZXliYXNlIExMQzEXMBUGA1UECxMOQ2VydCBBdXRob3JpdHkxEzARBgNVBAMT
CmtleWJhc2UuaW8xHDAaBgkqhkiG9w0BCQEWDWNhQGtleWJhc2UuaW8wHhcNMTQw
MTAyMTY0MjMzWhcNMjMxMjMxMTY0MjMzWjCBjzELMAkGA1UEBhMCVVMxCzAJBgNV
BAgTAk5ZMREwDwYDVQQHEwhOZXcgWW9yazEUMBIGA1UEChMLS2V5YmFzZSBMTEMx
FzAVBgNVBAsTDkNlcnQgQXV0aG9yaXR5MRMwEQYDVQQDEwprZXliYXNlLmlvMRww
GgYJKoZIhvcNAQkBFg1jYUBrZXliYXNlLmlvMIICIjANBgkqhkiG9w0BAQEFAAOC
Ag8AMIICCgKCAgEA3sLA6ZG8uOvmlFvFLVIOURmcQrZyMFKbVu9/TeDiemls3w3/
JzVTduD+7KiUi9R7QcCW/V1ZpReTfunm7rfACiJ1fpIkjSQrgsvKDLghIzxIS5FM
I8utet5p6QtuJhaAwmmXn8xX05FvqWNbrcXRdpL4goFdigPsFK2xhTUiWatLMste
oShI7+zmrgkx75LeLMD0bL2uOf87JjOzbY8x2sUIZLGwPoATyG8WS38ey6KkJxRj
AhG3p+OTYEjYSrsAtQA6ImbeDpfSHKOB8HF3nVp//Eb4HEiEsWwBRbQXvAWh3DYL
GukFW0wiO0HVCoWY+bHL/Mqa0NdRGOlLsbL4Z4pLrhqKgSDU8umX9YuNRRaB0P5n
TkzyU6axHqzq990Gep/I62bjsBdYYp+DjSPK43mXRrfWJl2NTcl8xKAyfsOW+9hQ
9vwK0tpSicNxfYuUZs0BhfjSZ/Tc6Z1ERdgUYRiXTtohl+SRA2IgZMloHCllVMNj
EjXhguvHgLAOrcuyhVBupiUQGUHQvkMsr1Uz8VPNDFOJedwucRU2AaR881bknnSb
ds9+zNLsvUFV+BK7Qdnt/WkFpYL78rGwY47msi9Ooddx6fPyeg3qkJGM6cwn/boy
w9lQeleYDq8kyJdixIAxtAskNzRPJ4nDu2izTfByQoM8epwAWboc/gNFObMCAwEA
AaOB9zCB9DAdBgNVHQ4EFgQURqpATOw1gVVrzlqqFKbkfaKXvwowgcQGA1UdIwSB
vDCBuYAURqpATOw1gVVrzlqqFKbkfaKXvwqhgZWkgZIwgY8xCzAJBgNVBAYTAlVT
MQswCQYDVQQIEwJOWTERMA8GA1UEBxMITmV3IFlvcmsxFDASBgNVBAoTC0tleWJh
c2UgTExDMRcwFQYDVQQLEw5DZXJ0IEF1dGhvcml0eTETMBEGA1UEAxMKa2V5YmFz
ZS5pbzEcMBoGCSqGSIb3DQEJARYNY2FAa2V5YmFzZS5pb4IJAPzhpcIBaOeNMAwG
A1UdEwQFMAMBAf8wDQYJKoZIhvcNAQEFBQADggIBAA3Z5FIhulYghMuHdcHYTYWc
7xT5WD4hXQ0WALZs4p5Y+b2Af54o6v1wUE1Au97FORq5CsFXX/kGl/JzzTimeucn
YJwGuXMpilrlHCBAL5/lSQjA7qbYIolQ3SB9ON+LYuF1jKB9k8SqNp7qzucxT3tO
b8ZMDEPNsseC7NE2uwNtcW3yrTh6WZnSqg/jwswiWjHYDdG7U8FjMYlRol3wPux2
PizGbSgiR+ztI2OthxtxNWMrT9XKxNQTpcxOXnLuhiSwqH8PoY17ecP8VPpaa0K6
zym0zSkbroqydazaxcXRk3eSlc02Ktk7HzRzuqQQXhRMkxVnHbFHgGsz03L533pm
mlIEgBMggZkHwNvs1LR7f3v2McdKulDH7Mv8yyfguuQ5Jxxt7RJhUuqSudbEhoaM
6jAJwBkMFxsV2YnyFEd3eZ/qBYPf7TYHhyzmHW6WkSypGqSnXd4gYpJ8o7LxSf4F
inLjxRD+H9Xn1UVXWLM0gaBB7zZcXd2zjMpRsWgezf5IR5vyakJsc7fxzgor3Qeq
Ri6LvdEkhhFVl5rHMQBwNOPngySrq8cs/ikTLTfQVTYXXA4Ba1YyiMOlfaR1LhKw
If1AkUV0tfCTNRZ01EotKSK77+o+k214n+BAu+7mO+9B5Kb7lMFQcuWCHXKYB2Md
cT7Yh09F0QpFUd0ymEfv
-----END CERTIFICATE-----`,
}
var CheckDeviceName = Checker{ F: func(s string) bool { re := regexp.MustCompile(`^[a-zA-Z0-9][ _'a-zA-Z0-9+-]*$`) bad := regexp.MustCompile(` |[ '+_-]$|['+_-][ ]?['+_-]`) return len(s) >= 3 && len(s) <= 64 && re.MatchString(s) && !bad.MatchString(s) }, Hint: "between 3 and 64 characters long", }
var CheckEmail = Checker{ F: func(s string) bool { re := regexp.MustCompile(`^\S+@\S+\.\S+$`) return len(s) > 3 && re.MatchString(s) }, Hint: "must be a valid email address", }
var CheckEmailOrUsername = Checker{ F: func(s string) bool { return CheckEmail.F(s) || CheckUsername.F(s) }, Hint: "valid usernames are 2-12 letters long", }
var CheckInviteCode = Checker{ F: func(s string) bool { return len(s) > 4 }, Hint: "Invite codes are 4 or more characters", }
var CheckNotEmpty = Checker{ F: func(s string) bool { return len(s) > 0 }, Hint: "cannot be empty", }
var CheckPassphraseNew = Checker{ F: func(s string) bool { r := []rune(s) if len(r) > 0 && unicode.IsSpace(r[0]) { return false } return len(s) >= MinPassphraseLength }, Hint: fmt.Sprintf("passphrase must be %d or more characters", MinPassphraseLength), PreserveSpace: true, }
var CheckPassphraseSimple = Checker{ F: func(s string) bool { return len(s) > 0 }, Hint: "passphrase cannot be empty", }
var CheckUsername = Checker{ F: func(s string) bool { re := regexp.MustCompile(`^([a-zA-Z0-9][a-zA-Z0-9_]?)+$`) return len(s) >= 2 && len(s) <= 16 && re.MatchString(s) }, Hint: "between 2 and 16 characters long", }
var CheckYesNo = Checker{ F: func(s string) bool { return IsYes(s) || IsNo(s) }, Hint: "'yes' or 'no'", }
var DefaultDeviceTypes = DeviceTypeSet{ DeviceTypeDesktop: true, DeviceTypeMobile: true, }
var ErrLoginSessionCleared = errors.New("LoginSession already cleared")
var ErrLoginSessionNotLoaded = errors.New("LoginSession not loaded")
var ErrNilUser = errors.New("User is nil")
var MerkleProdKIDs = []string{
"010159baae6c7d43c66adf8fb7bb2b8b4cbe408c062cfc369e693ccb18f85631dbcd0a",
}
var MerkleStagingKIDs = []string{
"0101bed85ce72cc315828367c28b41af585b6b7d95646a62ca829691d70f49184fa70a",
}
var MerkleTestKIDs = []string{
"0101be58b6c82db64f6ccabb05088db443c69f87d5d48857d709ed6f73948dabe67d0a",
}
var PGPArmorHeaders = map[string]string{ "Version": PGPVersion, "Comment": DownloadURL, }
var PGPVersion = "Keybase Go " + Version + " (" + runtime.GOOS + ")"
var ProofErrorDNSOverTor = &ProofErrorImpl{ Status: keybase1.ProofStatus_TOR_SKIPPED, Desc: "DNS proofs aren't reliable over Tor", }
var ProofErrorHTTPOverTor = &ProofErrorImpl{ Status: keybase1.ProofStatus_TOR_SKIPPED, Desc: "HTTP proofs aren't reliable over Tor", }
var PublicChain = &ChainType{ DbType: DBSigChainTailPublic, Private: false, Encrypted: false, GetMerkleTriple: func(u *MerkleUserLeaf) *MerkleTriple { return u.public }, }
var RemoteServiceOrder = []keybase1.ProofType{ keybase1.ProofType_KEYBASE, keybase1.ProofType_TWITTER, keybase1.ProofType_GITHUB, keybase1.ProofType_REDDIT, keybase1.ProofType_COINBASE, keybase1.ProofType_HACKERNEWS, keybase1.ProofType_GENERIC_WEB_SITE, keybase1.ProofType_ROOTER, }
var RemoteServiceTypes = map[string]keybase1.ProofType{ "keybase": keybase1.ProofType_KEYBASE, "twitter": keybase1.ProofType_TWITTER, "github": keybase1.ProofType_GITHUB, "reddit": keybase1.ProofType_REDDIT, "coinbase": keybase1.ProofType_COINBASE, "hackernews": keybase1.ProofType_HACKERNEWS, "https": keybase1.ProofType_GENERIC_WEB_SITE, "http": keybase1.ProofType_GENERIC_WEB_SITE, "dns": keybase1.ProofType_DNS, "rooter": keybase1.ProofType_ROOTER, }
var RunModes = []RunMode{DevelRunMode, StagingRunMode, ProductionRunMode}
var ServerLookup = map[RunMode]string{ DevelRunMode: DevelServerURI, StagingRunMode: StagingServerURI, ProductionRunMode: ProductionServerURI, }
var TorProxy = "localhost:9050"
Functions ¶
func AppDataDir ¶
func AttachedSign ¶
func AttachedSign(out io.WriteCloser, signed openpgp.Entity, hints *openpgp.FileHints, config *packet.Config) (in io.WriteCloser, err error)
AttachedSign is like openpgp.Encrypt (as in p.crypto/openpgp/write.go), but don't encrypt at all, just sign the literal unencrypted data. Unfortunately we need to duplicate some code here that's already in write.go
func AttachedSignWrapper ¶
func AttachedSignWrapper(out io.WriteCloser, key PGPKeyBundle, armored bool) ( in io.WriteCloser, err error)
func BtcAddrCheck ¶
func CanEncrypt ¶
func CanEncrypt(key GenericKey) bool
func CheckKarma ¶
func CheckPosted ¶
func CheckPosted(proofID string) (found bool, status keybase1.ProofStatus, err error)
func CheckPostedViaSigID ¶
func CheckUIDAgainstCasedUsername ¶
CheckUIDAgainstCasedUsername takes the input string, does not convert toLower, and then hashes it to recover a UID. This is a workaround for some users whose UIDs were computed incorrectly.
func CheckUIDAgainstUsername ¶
func ClearStoredSecret ¶
func ClearStoredSecret(g *GlobalContext, username NormalizedUsername) error
func CombineErrors ¶
CombineErrors returns a single error for multiple errors, or nil if none.
func ComputeSigIDFromSigBody ¶
func DelegatorAggregator ¶
func DelegatorAggregator(lctx LoginContext, ds []Delegator) (err error)
Run posts an array of delegations to the server. Keeping this simple as we don't need any state (yet)
func DeletePrimary ¶
func DeletePrimary() (err error)
func DisplayTrackArg ¶
func DisplayTrackArg(sessionID int, stmt string) *keybase1.DisplayTrackStatementArg
func ExportErrorAsStatus ¶
func ExportPGPIdentity ¶
func ExportPGPIdentity(identity *openpgp.Identity) keybase1.PGPIdentity
func ExportProofError ¶
func ExportProofError(pe ProofError) (ret keybase1.ProofResult)
func ExportRemoteProof ¶
func ExportRemoteProof(p RemoteProofChainLink) keybase1.RemoteProof
func ExportTrackDiff ¶
func ExportTrackSummary ¶
func ExportTrackSummary(l *TrackLookup, username string) *keybase1.TrackSummary
func FastByteArrayEq ¶
func FileExists ¶
exists returns whether the given file or directory exists or not
func FindBase64Blocks ¶
func FindBase64Snippets ¶
func FindFirstBase64Block ¶
func FormatTime ¶
func GenericKeyEqual ¶
func GenericKeyEqual(k1, k2 GenericKey) bool
func GetConfiguredAccounts ¶
func GetConfiguredAccounts(g *GlobalContext) ([]keybase1.ConfiguredAccount, error)
func GetPGPFingerprintVoid ¶
func GetPGPFingerprintVoid(w *jsonw.Wrapper, p *PGPFingerprint, e *error)
func GetProxyCAs ¶
func GetTerminalPrompt ¶
func GetTerminalPrompt() string
func GetUsersWithStoredSecrets ¶
func GetUsersWithStoredSecrets(g *GlobalContext) ([]string, error)
func HasSecretStore ¶
func HasSecretStore() bool
func HexDecodeQuoted ¶
func ImportStatusAsError ¶
func IsClearsign ¶
func IsDirEmpty ¶
IsDirEmpty returns whether directory has any files.
func IsPGP ¶
func IsPGP(key GenericKey) bool
func IsSocketClosedError ¶
net.errClosing isn't exported, so do this.. UGLY!
func IsValidHostname ¶
func KeyMatchesQuery ¶
func KeyMatchesQuery(key GenericKey, q string, exact bool) bool
Any valid key matches the empty string.
func KeyProof ¶
arg.Me user is used to get the last known seqno in ProofMetadata. If arg.Me == nil, set arg.LastSeqno.
func KeybaseEmailAddress ¶
func ListProofCheckers ¶
func ListProofCheckers() (proofCheckers []string)
ListProofCheckers returns the supported networks for "keybase prove".
func LoadUserPlusKeys ¶
func LoadUserPlusKeys(g *GlobalContext, uid keybase1.UID, cacheOK bool) (keybase1.UserPlusKeys, error)
func MakeParentDirs ¶
func MakeURI ¶
MakeURI makes a URI string out of the given protocol and host strings, adding necessary punctuation in between.
func MsgpackDecodeAll ¶
func MsgpackDecodeAll(data []byte, handle *codec.MsgpackHandle, out interface{}) error
Decode data into out, but make sure that all bytes in data are used.
func NewAPIEngines ¶
func NewAPIEngines(g *GlobalContext) (*InternalAPIEngine, *ExternalAPIEngine, error)
Make a new InternalApiEngine and a new ExternalApiEngine, which share the same network config (i.e., TOR and Proxy parameters)
func NewCoinbaseChecker ¶
func NewCoinbaseChecker(p RemoteProofChainLink) (*CoinbaseChecker, ProofError)
func NewDNSChecker ¶
func NewDNSChecker(p RemoteProofChainLink) (*DNSChecker, ProofError)
func NewDeviceID ¶
func NewGithubChecker ¶
func NewGithubChecker(p RemoteProofChainLink) (*GithubChecker, ProofError)
func NewHackerNewsChecker ¶
func NewHackerNewsChecker(p RemoteProofChainLink) (*HackerNewsChecker, ProofError)
func NewLoopbackConnPair ¶
func NewLoopbackConnPair() (*LoopbackConn, *LoopbackConn)
NewLoopbackConnPair makes a new loopback connection pair
func NewProofChecker ¶
func NewProofChecker(l RemoteProofChainLink) (ProofChecker, ProofError)
func NewRedditChecker ¶
func NewRedditChecker(p RemoteProofChainLink) (*RedditChecker, ProofError)
func NewRooterChecker ¶
func NewRooterChecker(p RemoteProofChainLink) (*RooterChecker, ProofError)
func NewTwitterChecker ¶
func NewTwitterChecker(p RemoteProofChainLink) (*TwitterChecker, ProofError)
func NewTypedChainLink ¶
func NewTypedChainLink(cl *ChainLink) (ret TypedChainLink, w Warning)
func NewWebChecker ¶
func NewWebChecker(p RemoteProofChainLink) (*WebChecker, ProofError)
func OpenLogFile ¶
OpenLogFile opens the standard Keybase logfile, and returns its name, its File object, or an Error if it didn't work out.
func OpenSig ¶
OpenSig takes an armored PGP or Keybase signature and opens the armor. It will return the body of the signature, the sigID of the body, or an error if it didn't work out.
func PGPEncrypt ¶
func PGPEncrypt(source io.Reader, sink io.WriteCloser, signer *PGPKeyBundle, recipients []*PGPKeyBundle) error
func PGPEncryptString ¶
func PGPEncryptString(input string, signer *PGPKeyBundle, recipients []*PGPKeyBundle) ([]byte, error)
func PGPLookupFingerprint ¶
func PGPLookupFingerprint(g *GlobalContext, fp *PGPFingerprint) (username, uid string, err error)
func PGPLookupHex ¶
func PGPLookupHex(g *GlobalContext, hexID string) (username, uid string, err error)
func PacketArmoredEncode ¶
func PacketArmoredEncode(p Packetable) (ret string, err error)
func ParseGpgIndexStream ¶
func ParseGpgIndexStream(stream io.Reader) (ki *GpgKeyIndex, w Warnings, err error)
func PickFirstError ¶
func Pluralize ¶
Pluralize returns pluralized string with value. For example,
Pluralize(1, "zebra", "zebras", true) => "1 zebra" Pluralize(2, "zebra", "zebras", true) => "2 zebras" Pluralize(2, "zebra", "zebras", false) => "zebras"
func PosixLineEndings ¶
func PostDeviceLKS ¶
func PostDeviceLKS(sr SessionReader, deviceID keybase1.DeviceID, deviceType string, serverHalf []byte, ppGen PassphraseGeneration, clientHalfRecovery string, clientHalfRecoveryKID keybase1.KID) error
func PostInviteRequest ¶
func PostInviteRequest(arg InviteRequestArg) (err error)
func ProofErrorIsSoft ¶
func ProofErrorIsSoft(pe ProofError) bool
func ProofErrorToState ¶
func ProofErrorToState(pe ProofError) keybase1.ProofState
func RandString ¶
RandString returns random (base32) string with prefix.
func RegisterProofCheckHook ¶
func RegisterProofCheckHook(s string, h ProofCheckHook)
func RegisterServiceType ¶
func RegisterServiceType(st ServiceType)
func RegisterSocialNetwork ¶
func RegisterSocialNetwork(s string)
func RemoveLocalTrack ¶
func RemoveNilErrors ¶
RemoveNilErrors returns error slice with ni errors removed.
func SafeWriteToFile ¶
func SafeWriteToFile(t SafeWriter, mode os.FileMode) error
SafeWriteToFile to safely write to a file. Use mode=0 for default permissions.
func SecWordList ¶
SecWordList returns an array of words from secwords. It returns enough words to satisfy the desired entropy.
func SecureByteArrayEq ¶
func SigAssertKbPayload ¶
func SigAssertPGPPayload ¶
func SigAssertPayload ¶
func SimpleSign ¶
SimpleSign signs the given data stream, outputs an armored string which is the attached signature of the input data
func StoreLocalTrack ¶
func UnixToTimeMappingZero ¶
The standard time.Unix() converter interprets 0 as the Unix epoch (1970). But in PGP, an expiry time of zero indicates that a key never expires, and it would be nice to be able to check for that case with Time.IsZero(). This conversion special-cases 0 to be time.Time's zero-value (1 AD), so that we get that nice property.
func UsernameToUID ¶
UsernameToUID works for users created after "Fri Feb 6 19:33:08 EST 2015", with some exceptions, since we didn't ToLower() for all UIDs
func UsernameToUIDPreserveCase ¶
UsernameToUID works for users created after "Fri Feb 6 19:33:08 EST 2015". Some of them had buggy Username -> UID conversions, in which case we need to hash the original case to recover their UID.
func VersionMessage ¶
func VersionMessage(linefn func(string))
Types ¶
type APIArg ¶
type APIArg struct { Endpoint string Args HTTPArgs JSONPayload JSONPayload NeedSession bool SessionR SessionReader HTTPStatus []int AppStatus []string DecodeTo interface{} Contextified // contains filtered or unexported fields }
type APIError ¶
type APINetError ¶
type APINetError struct {
// contains filtered or unexported fields
}
func (APINetError) Error ¶
func (e APINetError) Error() string
func (APINetError) ToStatus ¶
func (e APINetError) ToStatus() (s keybase1.Status)
type Account ¶
type Account struct { Contextified // contains filtered or unexported fields }
func NewAccount ¶
func NewAccount(g *GlobalContext) *Account
func (*Account) CachedSecretKey ¶
func (a *Account) CachedSecretKey(ska SecretKeyArg) (GenericKey, error)
func (*Account) ClearCachedSecretKeys ¶
func (a *Account) ClearCachedSecretKeys()
func (*Account) ClearLoginSession ¶
func (a *Account) ClearLoginSession()
ClearLoginSession clears out any cached login sessions with the account object
func (*Account) ClearStreamCache ¶
func (a *Account) ClearStreamCache()
func (*Account) CreateLoginSessionWithSalt ¶
func (*Account) CreateStreamCache ¶
func (a *Account) CreateStreamCache(tsec *triplesec.Cipher, pps *PassphraseStream)
func (*Account) CreateStreamCacheViaStretch ¶
func (*Account) EnsureUsername ¶
func (a *Account) EnsureUsername(username NormalizedUsername)
func (*Account) GetStreamGeneration ¶
func (a *Account) GetStreamGeneration() (ret PassphraseGeneration)
GetStreamGeneration() gets the generation of the currently cached passphrase stream
func (*Account) Keyring ¶
func (a *Account) Keyring() (*SKBKeyringFile, error)
func (*Account) LoadLoginSession ¶
func (*Account) LocalSession ¶
func (*Account) LockedLocalSecretKey ¶
func (a *Account) LockedLocalSecretKey(ska SecretKeyArg) (*SKB, error)
LockedLocalSecretKey looks in the local keyring to find a key for the given user. Returns non-nil if one was found, and nil otherwise.
func (*Account) LoggedIn ¶
LoggedIn returns true if the user is logged in. It does not try to load the session.
func (*Account) LoggedInAndProvisioined ¶
func (*Account) LoggedInLoad ¶
LoggedInLoad will load and check the session with the api server if necessary.
func (*Account) LoggedInProvisionedLoad ¶
func (*Account) LoginSession ¶
func (a *Account) LoginSession() *LoginSession
func (*Account) PassphraseStream ¶
func (a *Account) PassphraseStream() *PassphraseStream
PassphraseStream returns a copy of the currently cached passphrase stream, or nil if none is there.
func (*Account) PassphraseStreamCache ¶
func (a *Account) PassphraseStreamCache() *PassphraseStreamCache
func (*Account) PassphraseStreamRef ¶
func (a *Account) PassphraseStreamRef() *PassphraseStream
PassphraseStreamRef returns a reference to the actual passphrase stream, or nil if none is there.
func (*Account) SaveState ¶
func (a *Account) SaveState(sessionID, csrf string, username NormalizedUsername, uid keybase1.UID, deviceID keybase1.DeviceID) error
SaveState saves the logins state to memory, and to the user config file.
func (*Account) SaveStateTmp ¶
func (a *Account) SaveStateTmp(sessionID, csrf string, username NormalizedUsername, uid keybase1.UID, deviceID keybase1.DeviceID) (filename string, err error)
SaveStateTmp saves the logins state to memory, and to a temporary config file.
func (*Account) SecretSyncer ¶
func (a *Account) SecretSyncer() *SecretSyncer
func (*Account) SetCachedSecretKey ¶
func (a *Account) SetCachedSecretKey(ska SecretKeyArg, key GenericKey) error
func (*Account) SetStreamGeneration ¶
func (a *Account) SetStreamGeneration(gen PassphraseGeneration, nilPPStreamOK bool)
SetStreamGeneration sets the passphrase generation on the cached stream if it exists, and otherwise will wind up warning of a problem.
func (*Account) UnloadLocalSession ¶
func (a *Account) UnloadLocalSession()
func (*Account) UserInfo ¶
func (a *Account) UserInfo() (uid keybase1.UID, username NormalizedUsername, token string, deviceSubkey, deviceSibkey GenericKey, err error)
type AlreadyRegisteredError ¶
func (AlreadyRegisteredError) Error ¶
func (u AlreadyRegisteredError) Error() string
type AppConfig ¶
type AppConfig struct { NullConfiguration HomeDir string RunMode RunMode Debug bool LocalRPCDebug string ServerURI string SecurityAccessGroupOverride bool }
func (AppConfig) GetLocalRPCDebug ¶
func (AppConfig) GetRunMode ¶
func (AppConfig) GetSecurityAccessGroupOverride ¶
func (AppConfig) GetServerURI ¶
type AppStatusError ¶
func NewAppStatusError ¶
func NewAppStatusError(jw *jsonw.Wrapper) AppStatusError
func (AppStatusError) Error ¶
func (a AppStatusError) Error() string
func (AppStatusError) IsBadField ¶
func (a AppStatusError) IsBadField(s string) bool
func (AppStatusError) ToStatus ¶
func (a AppStatusError) ToStatus() keybase1.Status
type ApplyFn ¶
type ApplyFn func(i ConnectionID, xp rpc.Transporter) bool
ApplyFn can be applied to every connection. It is called with the RPC transporter, and also the connectionID. It should return a bool true to keep going and false to stop.
type AssertionAnd ¶
type AssertionAnd struct {
// contains filtered or unexported fields
}
func NewAssertionAnd ¶
func NewAssertionAnd(left, right AssertionExpression) AssertionAnd
func (AssertionAnd) CollectUrls ¶
func (a AssertionAnd) CollectUrls(v []AssertionURL) []AssertionURL
func (AssertionAnd) HasOr ¶
func (a AssertionAnd) HasOr() bool
func (AssertionAnd) MatchSet ¶
func (a AssertionAnd) MatchSet(ps ProofSet) bool
func (AssertionAnd) String ¶
func (a AssertionAnd) String() string
type AssertionDNS ¶
type AssertionDNS struct{ AssertionURLBase }
func (AssertionDNS) Check ¶
func (a AssertionDNS) Check() (err error)
func (AssertionDNS) CollectUrls ¶
func (a AssertionDNS) CollectUrls(v []AssertionURL) []AssertionURL
func (AssertionDNS) MatchSet ¶
func (a AssertionDNS) MatchSet(ps ProofSet) bool
func (AssertionDNS) ToLookup ¶
func (a AssertionDNS) ToLookup() (key, value string, err error)
type AssertionExpression ¶
type AssertionExpression interface { String() string MatchSet(ps ProofSet) bool HasOr() bool CollectUrls([]AssertionURL) []AssertionURL }
func AssertionParse ¶
func AssertionParse(s string) (AssertionExpression, error)
func AssertionParseAndOnly ¶
func AssertionParseAndOnly(s string) (AssertionExpression, error)
type AssertionFingerprint ¶
type AssertionFingerprint struct{ AssertionURLBase }
func (AssertionFingerprint) CollectUrls ¶
func (a AssertionFingerprint) CollectUrls(v []AssertionURL) []AssertionURL
func (AssertionFingerprint) IsFingerprint ¶
func (a AssertionFingerprint) IsFingerprint() bool
func (AssertionFingerprint) MatchProof ¶
func (a AssertionFingerprint) MatchProof(proof Proof) bool
Fingerprint matching is on the suffixes. If the assertion matches any suffix of the proof, then we're OK
func (AssertionFingerprint) MatchSet ¶
func (a AssertionFingerprint) MatchSet(ps ProofSet) bool
func (AssertionFingerprint) ToLookup ¶
func (a AssertionFingerprint) ToLookup() (key, value string, err error)
type AssertionHTTP ¶
type AssertionHTTP struct{ AssertionURLBase }
func (AssertionHTTP) Check ¶
func (a AssertionHTTP) Check() (err error)
func (AssertionHTTP) CollectUrls ¶
func (a AssertionHTTP) CollectUrls(v []AssertionURL) []AssertionURL
func (AssertionHTTP) Keys ¶
func (a AssertionHTTP) Keys() []string
func (AssertionHTTP) MatchSet ¶
func (a AssertionHTTP) MatchSet(ps ProofSet) bool
func (AssertionHTTP) ToLookup ¶
func (a AssertionHTTP) ToLookup() (key, value string, err error)
type AssertionHTTPS ¶
type AssertionHTTPS struct{ AssertionURLBase }
func (AssertionHTTPS) Check ¶
func (a AssertionHTTPS) Check() (err error)
func (AssertionHTTPS) CollectUrls ¶
func (a AssertionHTTPS) CollectUrls(v []AssertionURL) []AssertionURL
func (AssertionHTTPS) MatchSet ¶
func (a AssertionHTTPS) MatchSet(ps ProofSet) bool
func (AssertionHTTPS) ToLookup ¶
func (a AssertionHTTPS) ToLookup() (key, value string, err error)
type AssertionKeybase ¶
type AssertionKeybase struct{ AssertionURLBase }
func (AssertionKeybase) CollectUrls ¶
func (a AssertionKeybase) CollectUrls(v []AssertionURL) []AssertionURL
func (AssertionKeybase) IsKeybase ¶
func (a AssertionKeybase) IsKeybase() bool
func (AssertionKeybase) MatchSet ¶
func (a AssertionKeybase) MatchSet(ps ProofSet) bool
func (AssertionKeybase) ToLookup ¶
func (a AssertionKeybase) ToLookup() (key, value string, err error)
type AssertionOr ¶
type AssertionOr struct {
// contains filtered or unexported fields
}
func NewAssertionOr ¶
func NewAssertionOr(left, right AssertionExpression) AssertionOr
func (AssertionOr) CollectUrls ¶
func (a AssertionOr) CollectUrls(v []AssertionURL) []AssertionURL
func (AssertionOr) HasOr ¶
func (a AssertionOr) HasOr() bool
func (AssertionOr) MatchSet ¶
func (a AssertionOr) MatchSet(ps ProofSet) bool
func (AssertionOr) String ¶
func (a AssertionOr) String() string
type AssertionParseError ¶
type AssertionParseError struct {
// contains filtered or unexported fields
}
func NewAssertionParseError ¶
func NewAssertionParseError(s string, a ...interface{}) AssertionParseError
func NewNeedInputError ¶
func NewNeedInputError(s string, a ...interface{}) AssertionParseError
func (AssertionParseError) Error ¶
func (e AssertionParseError) Error() string
type AssertionSocial ¶
type AssertionSocial struct{ AssertionURLBase }
func (AssertionSocial) Check ¶
func (a AssertionSocial) Check() (err error)
func (AssertionSocial) CollectUrls ¶
func (a AssertionSocial) CollectUrls(v []AssertionURL) []AssertionURL
func (AssertionSocial) IsSocial ¶
func (a AssertionSocial) IsSocial() bool
func (AssertionSocial) MatchSet ¶
func (a AssertionSocial) MatchSet(ps ProofSet) bool
func (AssertionSocial) ToLookup ¶
func (a AssertionSocial) ToLookup() (key, value string, err error)
type AssertionUID ¶
type AssertionUID struct { AssertionURLBase // contains filtered or unexported fields }
func (AssertionUID) Check ¶
func (a AssertionUID) Check() (err error)
func (AssertionUID) CollectUrls ¶
func (a AssertionUID) CollectUrls(v []AssertionURL) []AssertionURL
func (AssertionUID) IsUID ¶
func (a AssertionUID) IsUID() bool
func (AssertionUID) MatchSet ¶
func (a AssertionUID) MatchSet(ps ProofSet) bool
func (AssertionUID) ToLookup ¶
func (a AssertionUID) ToLookup() (key, value string, err error)
func (AssertionUID) ToUID ¶
func (a AssertionUID) ToUID() keybase1.UID
type AssertionURL ¶
type AssertionURL interface { AssertionExpression Keys() []string Check() error IsKeybase() bool IsUID() bool ToUID() keybase1.UID IsSocial() bool IsFingerprint() bool MatchProof(p Proof) bool ToKeyValuePair() (string, string) CacheKey() string GetValue() string ToLookup() (string, string, error) }
func ParseAssertionURL ¶
func ParseAssertionURL(s string, strict bool) (ret AssertionURL, err error)
func ParseAssertionURLKeyValue ¶
func ParseAssertionURLKeyValue(key, val string, strict bool) (ret AssertionURL, err error)
type AssertionURLBase ¶
type AssertionURLBase struct {
Key, Value string
}
func (AssertionURLBase) CacheKey ¶
func (b AssertionURLBase) CacheKey() string
func (AssertionURLBase) Check ¶
func (b AssertionURLBase) Check() error
func (AssertionURLBase) CheckHost ¶
func (b AssertionURLBase) CheckHost() (err error)
func (AssertionURLBase) GetValue ¶
func (b AssertionURLBase) GetValue() string
func (AssertionURLBase) HasOr ¶
func (b AssertionURLBase) HasOr() bool
func (AssertionURLBase) IsFingerprint ¶
func (b AssertionURLBase) IsFingerprint() bool
func (AssertionURLBase) IsKeybase ¶
func (b AssertionURLBase) IsKeybase() bool
func (AssertionURLBase) IsSocial ¶
func (b AssertionURLBase) IsSocial() bool
func (AssertionURLBase) IsUID ¶
func (b AssertionURLBase) IsUID() bool
func (AssertionURLBase) Keys ¶
func (b AssertionURLBase) Keys() []string
func (AssertionURLBase) MatchProof ¶
func (b AssertionURLBase) MatchProof(proof Proof) bool
func (AssertionURLBase) String ¶
func (b AssertionURLBase) String() string
func (AssertionURLBase) ToKeyValuePair ¶
func (b AssertionURLBase) ToKeyValuePair() (string, string)
func (AssertionURLBase) ToUID ¶
func (b AssertionURLBase) ToUID() (ret keybase1.UID)
type AssertionWeb ¶
type AssertionWeb struct{ AssertionURLBase }
func (AssertionWeb) Check ¶
func (a AssertionWeb) Check() (err error)
func (AssertionWeb) CollectUrls ¶
func (a AssertionWeb) CollectUrls(v []AssertionURL) []AssertionURL
func (AssertionWeb) Keys ¶
func (a AssertionWeb) Keys() []string
func (AssertionWeb) MatchSet ¶
func (a AssertionWeb) MatchSet(ps ProofSet) bool
func (AssertionWeb) ToLookup ¶
func (a AssertionWeb) ToLookup() (key, value string, err error)
type BadFingerprintError ¶
type BadFingerprintError struct {
// contains filtered or unexported fields
}
func (BadFingerprintError) Error ¶
func (b BadFingerprintError) Error() string
type BadKeyError ¶
type BadKeyError struct {
Msg string
}
func (BadKeyError) Error ¶
func (p BadKeyError) Error() string
type BadRevocationError ¶
type BadRevocationError struct {
// contains filtered or unexported fields
}
func (BadRevocationError) Error ¶
func (e BadRevocationError) Error() string
type BadServiceError ¶
type BadServiceError struct {
Service string
}
func (BadServiceError) Error ¶
func (e BadServiceError) Error() string
type BadSigError ¶
type BadSigError struct {
E string
}
func (BadSigError) Error ¶
func (e BadSigError) Error() string
type BadUsernameError ¶
type BadUsernameError struct {
// contains filtered or unexported fields
}
func (BadUsernameError) Error ¶
func (e BadUsernameError) Error() string
type Base64Finder ¶
type Base64Finder struct {
// contains filtered or unexported fields
}
func NewBase64Finder ¶
func NewBase64Finder(i string) *Base64Finder
func (*Base64Finder) Run ¶
func (s *Base64Finder) Run() []string
type BaseAPIEngine ¶
type BaseAPIEngine struct { Contextified // contains filtered or unexported fields }
Shared code across Internal and External APIs
func (*BaseAPIEngine) PrepareGet ¶
func (*BaseAPIEngine) PreparePost ¶
type BaseServiceType ¶
type BaseServiceType struct{}
func (BaseServiceType) BaseAllStringKeys ¶
func (t BaseServiceType) BaseAllStringKeys(st ServiceType) []string
func (BaseServiceType) BaseCheckProofForURL ¶
func (t BaseServiceType) BaseCheckProofForURL(text string, id keybase1.SigID) (err error)
func (BaseServiceType) BaseCheckProofTextFull ¶
func (BaseServiceType) BaseCheckProofTextShort ¶
func (BaseServiceType) BaseGetProofType ¶
func (t BaseServiceType) BaseGetProofType(st ServiceType) string
func (BaseServiceType) BasePrimaryStringKeys ¶
func (t BaseServiceType) BasePrimaryStringKeys(st ServiceType) []string
func (BaseServiceType) BaseRecheckProofPosting ¶
func (t BaseServiceType) BaseRecheckProofPosting(tryNumber int, status keybase1.ProofStatus) (warning *Markup, err error)
func (BaseServiceType) BaseToChecker ¶
func (t BaseServiceType) BaseToChecker(st ServiceType, hint string) Checker
func (BaseServiceType) BaseToServiceJSON ¶
func (t BaseServiceType) BaseToServiceJSON(st ServiceType, un string) *jsonw.Wrapper
func (BaseServiceType) FormatProofText ¶
func (t BaseServiceType) FormatProofText(ppr *PostProofRes) (string, error)
func (BaseServiceType) GetAPIArgKey ¶
func (t BaseServiceType) GetAPIArgKey() string
func (BaseServiceType) LastWriterWins ¶
func (t BaseServiceType) LastWriterWins() bool
func (BaseServiceType) NormalizeUsername ¶
func (t BaseServiceType) NormalizeUsername(s string) (string, error)
func (BaseServiceType) PreProofCheck ¶
func (t BaseServiceType) PreProofCheck(string) (*Markup, error)
func (BaseServiceType) PreProofWarning ¶
func (t BaseServiceType) PreProofWarning(remotename string) *Markup
type BucketDict ¶
type BucketDict struct {
// contains filtered or unexported fields
}
func NewBuckDict ¶
func NewBuckDict() *BucketDict
func (*BucketDict) Add ¶
func (bd *BucketDict) Add(k string, v *GpgPrimaryKey)
func (BucketDict) Get ¶
func (bd BucketDict) Get(k string) []*GpgPrimaryKey
func (BucketDict) Get0Or1 ¶
func (bd BucketDict) Get0Or1(k string) (ret *GpgPrimaryKey, err error)
type BufferCloser ¶
BufferCloser is a Buffer that satisfies the io.Closer interface.
func NewBufferCloser ¶
func NewBufferCloser() *BufferCloser
func (*BufferCloser) Close ¶
func (b *BufferCloser) Close() error
type CanceledError ¶
type CanceledError struct {
M string
}
func (CanceledError) Error ¶
func (c CanceledError) Error() string
func (CanceledError) ToStatus ¶
func (c CanceledError) ToStatus() (s keybase1.Status)
type ChainLink ¶
type ChainLink struct {
// contains filtered or unexported fields
}
func ImportLinkFromServer ¶
func ImportLinkFromStorage ¶
func (*ChainLink) CheckNameAndID ¶
func (c *ChainLink) CheckNameAndID(s NormalizedUsername, i keybase1.UID) error
func (*ChainLink) GetMerkleSeqno ¶
func (*ChainLink) GetPGPFingerprint ¶
func (c *ChainLink) GetPGPFingerprint() *PGPFingerprint
func (*ChainLink) GetPayloadJSON ¶
func (*ChainLink) GetRevocations ¶
func (*ChainLink) GetRevokeKids ¶
func (*ChainLink) GetSigCheckCache ¶
func (c *ChainLink) GetSigCheckCache() (cki *ComputedKeyInfos)
func (*ChainLink) IsBad ¶
Returns whether or not this chain link is bad, and if so, what the reason is.
func (*ChainLink) IsInCurrentFamily ¶
========================================================================= IsInCurrentFamily checks to see if the given chainlink was signed by a key in the current family.
func (*ChainLink) MatchFingerprint ¶
func (c *ChainLink) MatchFingerprint(fp PGPFingerprint) bool
func (*ChainLink) PutSigCheckCache ¶
func (c *ChainLink) PutSigCheckCache(cki *ComputedKeyInfos)
func (*ChainLink) ToEldestKID ¶
func (ChainLink) ToMerkleTriple ¶
func (c ChainLink) ToMerkleTriple() *MerkleTriple
ToLinkSummary converts a ChainLink into a MerkleTriple object.
func (*ChainLink) Typed ¶
func (c *ChainLink) Typed() TypedChainLink
func (*ChainLink) UnpackComputedKeyInfos ¶
func (*ChainLink) UnpackLocal ¶
func (*ChainLink) UnpackPayloadJSON ¶
func (c *ChainLink) UnpackPayloadJSON(tmp *ChainLinkUnpacked) (err error)
func (*ChainLink) VerifyHash ¶
func (*ChainLink) VerifyLink ¶
func (*ChainLink) VerifyPayload ¶
func (*ChainLink) VerifySigWithKeyFamily ¶
func (c *ChainLink) VerifySigWithKeyFamily(ckf ComputedKeyFamily) (cached bool, err error)
type ChainLinkError ¶
type ChainLinkError struct {
// contains filtered or unexported fields
}
func (ChainLinkError) Error ¶
func (c ChainLinkError) Error() string
type ChainLinkFingerprintMismatchError ¶
type ChainLinkFingerprintMismatchError struct {
Msg string
}
func (ChainLinkFingerprintMismatchError) Error ¶
func (e ChainLinkFingerprintMismatchError) Error() string
type ChainLinkKIDMismatchError ¶
type ChainLinkKIDMismatchError struct {
Msg string
}
func (ChainLinkKIDMismatchError) Error ¶
func (e ChainLinkKIDMismatchError) Error() string
type ChainLinkPrevHashMismatchError ¶
type ChainLinkPrevHashMismatchError struct {
Msg string
}
func (ChainLinkPrevHashMismatchError) Error ¶
func (e ChainLinkPrevHashMismatchError) Error() string
type ChainLinkUnpacked ¶
type ChainLinkUnpacked struct {
// contains filtered or unexported fields
}
type ChainLinkWrongSeqnoError ¶
type ChainLinkWrongSeqnoError struct {
Msg string
}
func (ChainLinkWrongSeqnoError) Error ¶
func (e ChainLinkWrongSeqnoError) Error() string
type ChainType ¶
type ChainType struct { DbType ObjType Private bool Encrypted bool GetMerkleTriple func(u *MerkleUserLeaf) *MerkleTriple }
type CheckMember ¶
type CheckMember struct {
Set []string
}
func (CheckMember) Checker ¶
func (c CheckMember) Checker() Checker
type CheckResult ¶
type CheckResult struct { Contextified Status ProofError // Or nil if it was a success Time time.Time // When the last check was }
func NewCheckResult ¶
func NewCheckResult(g *GlobalContext, jw *jsonw.Wrapper) (res *CheckResult, err error)
func NewNowCheckResult ¶
func NewNowCheckResult(g *GlobalContext, pe ProofError) *CheckResult
func (CheckResult) Export ¶
func (cr CheckResult) Export() *keybase1.CheckResult
func (CheckResult) IsFresh ¶
func (cr CheckResult) IsFresh() bool
func (CheckResult) Pack ¶
func (cr CheckResult) Pack() *jsonw.Wrapper
func (CheckResult) ToDisplayString ¶
func (cr CheckResult) ToDisplayString() string
type ClientConfig ¶
type CoinbaseChecker ¶
type CoinbaseChecker struct {
// contains filtered or unexported fields
}
func (*CoinbaseChecker) CheckHint ¶
func (rc *CoinbaseChecker) CheckHint(h SigHint) ProofError
func (*CoinbaseChecker) CheckStatus ¶
func (rc *CoinbaseChecker) CheckStatus(h SigHint) ProofError
func (*CoinbaseChecker) GetTorError ¶
func (rc *CoinbaseChecker) GetTorError() ProofError
func (*CoinbaseChecker) ProfileURL ¶
func (rc *CoinbaseChecker) ProfileURL() string
type CoinbaseServiceType ¶
type CoinbaseServiceType struct{ BaseServiceType }
func (CoinbaseServiceType) AllStringKeys ¶
func (t CoinbaseServiceType) AllStringKeys() []string
func (CoinbaseServiceType) CheckProofText ¶
func (CoinbaseServiceType) CheckUsername ¶
func (t CoinbaseServiceType) CheckUsername(s string) (err error)
func (CoinbaseServiceType) DisplayName ¶
func (t CoinbaseServiceType) DisplayName(un string) string
func (CoinbaseServiceType) GetPrompt ¶
func (t CoinbaseServiceType) GetPrompt() string
func (CoinbaseServiceType) GetProofType ¶
func (t CoinbaseServiceType) GetProofType() string
func (CoinbaseServiceType) GetTypeName ¶
func (t CoinbaseServiceType) GetTypeName() string
func (CoinbaseServiceType) PostInstructions ¶
func (t CoinbaseServiceType) PostInstructions(un string) *Markup
func (CoinbaseServiceType) PrimaryStringKeys ¶
func (t CoinbaseServiceType) PrimaryStringKeys() []string
func (CoinbaseServiceType) RecheckProofPosting ¶
func (t CoinbaseServiceType) RecheckProofPosting(tryNumber int, status keybase1.ProofStatus, _ string) (warning *Markup, err error)
func (CoinbaseServiceType) ToChecker ¶
func (t CoinbaseServiceType) ToChecker() Checker
func (CoinbaseServiceType) ToServiceJSON ¶
func (t CoinbaseServiceType) ToServiceJSON(un string) *jsonw.Wrapper
type CommandLine ¶
type CommandLine interface { GetHome() string GetServerURI() string GetConfigFilename() string GetSessionFilename() string GetDbFilename() string GetDebug() (bool, bool) GetProxy() string GetLogFormat() string GetGpgHome() string GetAPIDump() (bool, bool) GetUserCacheMaxAge() (time.Duration, bool) GetProofCacheSize() (int, bool) GetMerkleKIDs() []string GetPinentry() string GetGpg() string GetGpgOptions() []string GetPGPFingerprint() *PGPFingerprint GetSecretKeyringTemplate() string GetSocketFile() string GetPidFile() string GetStandalone() (bool, bool) GetAutoFork() (bool, bool) GetNoAutoFork() (bool, bool) GetLocalRPCDebug() string GetTimers() string GetSplitLogOutput() (bool, bool) GetLogFile() string GetRunMode() (RunMode, error) GetScraperTimeout() (time.Duration, bool) GetAPITimeout() (time.Duration, bool) GetTorMode() (TorMode, error) GetTorHiddenAddress() string GetTorProxy() string // Lower-level functions GetGString(string) string GetString(string) string GetBool(string, bool) (bool, bool) }
type ComputedKeyFamily ¶
type ComputedKeyFamily struct { Contextified // contains filtered or unexported fields }
ComputedKeyFamily is a joining of two sets of data; the KeyFamily is what the server returned and is not to be trusted; the ComputedKeyInfos is what we compute as a result of playing the user's sigchain forward.
func (*ComputedKeyFamily) Delegate ¶
func (ckf *ComputedKeyFamily) Delegate(tcl TypedChainLink) (err error)
Delegate performs a delegation to the key described in the given TypedChainLink. This maybe be a sub- or sibkey delegation.
func (ComputedKeyFamily) Export ¶
func (ckf ComputedKeyFamily) Export() []keybase1.PublicKey
func (ComputedKeyFamily) ExportDeviceKeys ¶
func (ckf ComputedKeyFamily) ExportDeviceKeys() []keybase1.PublicKey
func (ComputedKeyFamily) FindActiveEncryptionSubkey ¶
func (ckf ComputedKeyFamily) FindActiveEncryptionSubkey(kid keybase1.KID) (GenericKey, error)
FindActiveEncryptionSubkey takes a given KID and finds the corresponding active encryption subkey in the current key family. If for any reason it cannot find the key, it will return an error saying why. Otherwise, it will return the key. In this case either key is non-nil, or err is non-nil.
func (ComputedKeyFamily) FindActiveSibkey ¶
func (ckf ComputedKeyFamily) FindActiveSibkey(kid keybase1.KID) (key GenericKey, cki ComputedKeyInfo, err error)
FindActiveSibkey takes a given KID and finds the corresponding active sibkey in the current key family. If it cannot find the key, or if the key is no longer active (either by revocation, or by expiring), it will return an error saying why. Otherwise, it will return the key. In this case either key is non-nil, or err is non-nil.
func (ComputedKeyFamily) FindActiveSibkeyAtTime ¶
func (ckf ComputedKeyFamily) FindActiveSibkeyAtTime(kid keybase1.KID, t time.Time) (key GenericKey, cki ComputedKeyInfo, err error)
As FindActiveSibkey, but for a specific time. Note that going back in time only affects expiration, not revocation. Thus this function is mainly useful for validating the sigchain, when each delegation and revocation is getting replayed in order.
func (ComputedKeyFamily) FindKIDFromFingerprint ¶
func (ckf ComputedKeyFamily) FindKIDFromFingerprint(fp PGPFingerprint) (kid keybase1.KID, err error)
func (ComputedKeyFamily) FindKeyWithKIDUnsafe ¶
func (ckf ComputedKeyFamily) FindKeyWithKIDUnsafe(kid keybase1.KID) (GenericKey, error)
FindKeyWithKIDUnsafe returns a key given a KID. It doesn't check if the key is expired or revoked, so most callers should use the FindActive* methods.
func (ComputedKeyFamily) FindKeybaseName ¶
func (ckf ComputedKeyFamily) FindKeybaseName(s string) bool
FindKeybaseName looks at all PGP keys in this key family that are active sibkeys to find a key with a signed identity of <name@keybase.io>. IF found return true, and otherwise false.
func (ComputedKeyFamily) GetActivePGPKeys ¶
func (ckf ComputedKeyFamily) GetActivePGPKeys(sibkey bool) (ret []*PGPKeyBundle)
GetActivePGPKeys gets the active PGP keys from the ComputedKeyFamily. If sibkey is False it will return all active PGP keys. Otherwise, it will return only the Sibkeys. Note the keys need to be non-canceled, and non-expired.
func (ComputedKeyFamily) GetAllActiveKeysForDevice ¶
func (ComputedKeyFamily) GetAllActiveKeysWithRoleAtTime ¶
func (ckf ComputedKeyFamily) GetAllActiveKeysWithRoleAtTime(role KeyRole, t time.Time) (ret []GenericKey)
GetAllActiveSibkeys gets all active Sibkeys from given ComputedKeyFamily.
func (ComputedKeyFamily) GetAllActiveSibkeys ¶
func (ckf ComputedKeyFamily) GetAllActiveSibkeys() []GenericKey
GetAllActiveSibkeys gets all active Sibkeys from given ComputedKeyFamily.
func (ComputedKeyFamily) GetAllActiveSibkeysAtTime ¶
func (ckf ComputedKeyFamily) GetAllActiveSibkeysAtTime(t time.Time) []GenericKey
GetAllActiveSibkeys gets all active Sibkeys from given ComputedKeyFamily.
func (ComputedKeyFamily) GetAllActiveSubkeys ¶
func (ckf ComputedKeyFamily) GetAllActiveSubkeys() []GenericKey
func (ComputedKeyFamily) GetAllActiveSubkeysAtTime ¶
func (ckf ComputedKeyFamily) GetAllActiveSubkeysAtTime(t time.Time) (ret []GenericKey)
func (*ComputedKeyFamily) GetAllDevices ¶
func (ckf *ComputedKeyFamily) GetAllDevices() []*Device
func (*ComputedKeyFamily) GetCurrentDevice ¶
func (ckf *ComputedKeyFamily) GetCurrentDevice(g *GlobalContext) (*Device, error)
GetCurrentDevice returns the current device.
func (*ComputedKeyFamily) GetDeviceForKey ¶
func (ckf *ComputedKeyFamily) GetDeviceForKey(key GenericKey) (*Device, error)
GetDeviceForKey gets the device that this key is bound to, if any.
func (*ComputedKeyFamily) GetEncryptionSubkeyForDevice ¶
func (ckf *ComputedKeyFamily) GetEncryptionSubkeyForDevice(did keybase1.DeviceID) (key GenericKey, err error)
GetEncryptionSubkeyForDevice gets the current encryption subkey for the given device. Note that many devices might share an encryption public key but might have different secret keys.
func (ComputedKeyFamily) GetKeyRole ¶
func (ckf ComputedKeyFamily) GetKeyRole(kid keybase1.KID) (ret KeyRole)
GetKeyRole returns the KeyRole (sibkey/subkey/none), taking into account whether the key has been cancelled.
func (ComputedKeyFamily) GetKeyRoleAtTime ¶
GetKeyRoleAtTime returns the KeyRole (sibkey/subkey/none), taking into account whether the key has been cancelled at time t.
func (*ComputedKeyFamily) GetSibkeyForDevice ¶
func (ckf *ComputedKeyFamily) GetSibkeyForDevice(did keybase1.DeviceID) (key GenericKey, err error)
GetSibkeyForDevice gets the current per-device key for the given Device. Will return nil if one isn't found, and set err for a real error. The sibkey should be a signing key, not an encryption key of course.
func (ComputedKeyFamily) HasActiveKey ¶
func (ckf ComputedKeyFamily) HasActiveKey() bool
HasActiveKey returns if the given ComputeKeyFamily has any active keys. The key has to be in the server-given KeyFamily and also in our ComputedKeyFamily. The former check is so that we can handle the case nuked sigchains.
func (ComputedKeyFamily) InsertEldestLink ¶
func (ckf ComputedKeyFamily) InsertEldestLink(tcl TypedChainLink, username NormalizedUsername) (err error)
func (*ComputedKeyFamily) Revoke ¶
func (ckf *ComputedKeyFamily) Revoke(tcl TypedChainLink) (err error)
Revoke examines a TypeChainLink and applies any revocations in the link to the current ComputedKeyInfos.
func (*ComputedKeyFamily) RevokeKid ¶
func (ckf *ComputedKeyFamily) RevokeKid(kid keybase1.KID, tcl TypedChainLink) (err error)
func (*ComputedKeyFamily) RevokeSig ¶
func (ckf *ComputedKeyFamily) RevokeSig(sig keybase1.SigID, tcl TypedChainLink) (err error)
func (*ComputedKeyFamily) SetActivePGPHash ¶
func (ckf *ComputedKeyFamily) SetActivePGPHash(kid keybase1.KID, hash string)
SetPGPHash sets the authoritative version (by hash) of a PGP key
func (*ComputedKeyFamily) UpdateDevices ¶
func (ckf *ComputedKeyFamily) UpdateDevices(tcl TypedChainLink) (err error)
UpdateDevices takes the Device object from the given ChainLink and updates keys to reflects any device changes encoded therein.
type ComputedKeyInfo ¶
type ComputedKeyInfo struct { Status KeyStatus Eldest bool Sibkey bool // These have to be ints so they can be written to disk and read // back in. CTime int64 // In Seconds since the Epoch ETime int64 // In Seconds since the Epoch or 0 if none // For subkeys, the KID of our parent (if valid) Parent keybase1.KID // For sibkeys, the KID of last-added subkey (if valid) Subkey keybase1.KID // Map of SigID -> KID Delegations map[keybase1.SigID]keybase1.KID DelegatedAt *KeybaseTime RevokedAt *KeybaseTime // For PGP keys, the active version of the key. If unspecified, use the // legacy behavior of combining every instance of this key that we got from // the server minus revocations. ActivePGPHash string Contextified }
ComputedKeyInfo is a set of annotations that we apply to a ServerKeyRecord. Everything here has been checked by the client. Each ComputedKeyInfo refers to exactly one ServerKeyInfo.
func NewComputedKeyInfo ¶
func NewComputedKeyInfo(eldest, sibkey bool, status KeyStatus, ctime, etime int64, activePGPHash string) ComputedKeyInfo
func (ComputedKeyInfo) GetCTime ¶
func (cki ComputedKeyInfo) GetCTime() time.Time
func (ComputedKeyInfo) GetETime ¶
func (cki ComputedKeyInfo) GetETime() time.Time
type ComputedKeyInfos ¶
type ComputedKeyInfos struct { // Map of KID to a computed info Infos map[keybase1.KID]*ComputedKeyInfo // Map of a SigID (in binary) to the ComputedKeyInfo describing when the key was // delegated. Sigs map[keybase1.SigID]*ComputedKeyInfo // Map of DeviceID to the most current device object Devices map[keybase1.DeviceID]*Device // Map of KID -> DeviceID KIDToDeviceID map[keybase1.KID]keybase1.DeviceID // contains filtered or unexported fields }
When we play a sigchain forward, it yields ComputedKeyInfos (CKIs). We're going to store CKIs separately from the keys, since the server can clobber the former. We should rewrite CKIs every time we (re)check a user's SigChain
func NewComputedKeyInfos ¶
func NewComputedKeyInfos() *ComputedKeyInfos
func (*ComputedKeyInfos) Delegate ¶
func (cki *ComputedKeyInfos) Delegate(kid keybase1.KID, tm *KeybaseTime, sigid keybase1.SigID, signingKid, parentKID keybase1.KID, pgpHash string, isSibkey bool, ctime, etime time.Time) (err error)
Delegate marks the given ComputedKeyInfos object that the given kid is now delegated, as of time tm, in sigid, as signed by signingKid, etc.
func (*ComputedKeyInfos) Insert ¶
func (cki *ComputedKeyInfos) Insert(k keybase1.KID, i *ComputedKeyInfo)
Insert inserts the given ComputedKeyInfo object 1 or 2 times, depending on if a KID or PGPFingerprint or both are available.
func (ComputedKeyInfos) InsertLocalEldestKey ¶
func (cki ComputedKeyInfos) InsertLocalEldestKey(kid keybase1.KID)
func (ComputedKeyInfos) InsertServerEldestKey ¶
func (cki ComputedKeyInfos) InsertServerEldestKey(eldestKey GenericKey, un NormalizedUsername) error
For use when there are no chain links at all, so all we can do is trust the eldest key that the server reported.
func (*ComputedKeyInfos) PaperDevices ¶
func (cki *ComputedKeyInfos) PaperDevices() []*Device
PaperDevices returns a list of all the paperkey devices.
func (ComputedKeyInfos) ShallowCopy ¶
func (cki ComputedKeyInfos) ShallowCopy() *ComputedKeyInfos
TODO: Figure out whether this needs to be a deep copy. See https://github.com/keybase/client/issues/414 .
type ConfigError ¶
type ConfigError struct {
// contains filtered or unexported fields
}
func (ConfigError) Error ¶
func (c ConfigError) Error() string
type ConfigGetter ¶
type ConfigGetter func() string
type ConfigReader ¶
type ConfigReader interface { GetHome() string GetServerURI() string GetConfigFilename() string GetSessionFilename() string GetDbFilename() string GetDebug() (bool, bool) GetAutoFork() (bool, bool) GetUserConfig() (*UserConfig, error) GetUserConfigForUsername(s NormalizedUsername) (*UserConfig, error) GetProxy() string GetLogFormat() string GetGpgHome() string GetBundledCA(host string) string GetStringAtPath(string) (string, bool) GetBoolAtPath(string) (bool, bool) GetIntAtPath(string) (int, bool) GetNullAtPath(string) bool GetUserCacheMaxAge() (time.Duration, bool) GetProofCacheSize() (int, bool) GetProofCacheLongDur() (time.Duration, bool) GetProofCacheMediumDur() (time.Duration, bool) GetProofCacheShortDur() (time.Duration, bool) GetMerkleKIDs() []string GetPinentry() string GetNoPinentry() (bool, bool) GetGpg() string GetGpgOptions() []string GetSecretKeyringTemplate() string GetSalt() []byte GetSocketFile() string GetPidFile() string GetStandalone() (bool, bool) GetLocalRPCDebug() string GetTimers() string GetDeviceID() keybase1.DeviceID GetUsername() NormalizedUsername GetAllUsernames() (current NormalizedUsername, others []NormalizedUsername, err error) GetUID() keybase1.UID GetProxyCACerts() ([]string, error) GetSplitLogOutput() (bool, bool) GetLogFile() string GetRunMode() (RunMode, error) GetScraperTimeout() (time.Duration, bool) GetAPITimeout() (time.Duration, bool) GetSecurityAccessGroupOverride() (bool, bool) GetTorMode() (TorMode, error) GetTorHiddenAddress() string GetTorProxy() string }
type ConfigWriter ¶
type ConfigWriter interface { SetUserConfig(cfg *UserConfig, overwrite bool) error SwitchUser(un NormalizedUsername) error NukeUser(un NormalizedUsername) error SetDeviceID(keybase1.DeviceID) error SetStringAtPath(string, string) error SetBoolAtPath(string, bool) error SetIntAtPath(string, int) error SetNullAtPath(string) error DeleteAtPath(string) Reset() Write() error SaveTmp(suffix string) (string, error) SwapTmp(filename string) error }
type ConnectionID ¶
type ConnectionID int
ConnectionID is a sequential integer assigned to each RPC connection that this process serves. No IDs are reused.
type ConnectionManager ¶
type ConnectionManager struct {
// contains filtered or unexported fields
}
ConnectionManager manages all connections active for a given service. It can be called from multiple goroutines.
func NewConnectionManager ¶
func NewConnectionManager() *ConnectionManager
NewConnectionManager makes a new ConnectionManager and starts its internal routing loop running.
func (*ConnectionManager) AddConnection ¶
func (c *ConnectionManager) AddConnection(xp rpc.Transporter, closeListener chan error) ConnectionID
AddConnection adds a new connection to the table of Connection object, with a related closeListener. We'll listen for a close on that channel, and when one occurs, we'll remove the connection from the pool.
func (*ConnectionManager) ApplyAll ¶
func (c *ConnectionManager) ApplyAll(f ApplyFn)
ApplyAll applies the given function f to all connections in the table. If you're going to do something blocking, please do it in a GoRoutine, since we're holding the lock for all connections as we do this.
func (*ConnectionManager) LookupConnection ¶
func (c *ConnectionManager) LookupConnection(i ConnectionID) rpc.Transporter
LookupConnection looks up a connection given a connectionID, or returns nil if no such connection was found.
func (*ConnectionManager) Shutdown ¶
func (c *ConnectionManager) Shutdown()
type Contexitifier ¶
type Contexitifier interface {
G() *GlobalContext
}
type Contextified ¶
type Contextified struct {
// contains filtered or unexported fields
}
Contextified objects have explicit references to the GlobalContext, so that G can be swapped out for something else. We're going to incrementally start moving objects over to this system.
func NewContextified ¶
func NewContextified(gc *GlobalContext) Contextified
func (Contextified) G ¶
func (c Contextified) G() *GlobalContext
func (Contextified) GStrict ¶
func (c Contextified) GStrict() *GlobalContext
func (*Contextified) SetGlobalContext ¶
func (c *Contextified) SetGlobalContext(g *GlobalContext)
type CryptocurrencyChainLink ¶
type CryptocurrencyChainLink struct { GenericChainLink // contains filtered or unexported fields }
func ParseCryptocurrencyChainLink ¶
func ParseCryptocurrencyChainLink(b GenericChainLink) ( cl *CryptocurrencyChainLink, err error)
func (CryptocurrencyChainLink) Display ¶
func (c CryptocurrencyChainLink) Display(ui IdentifyUI)
func (CryptocurrencyChainLink) Export ¶
func (c CryptocurrencyChainLink) Export() (ret keybase1.Cryptocurrency)
func (CryptocurrencyChainLink) GetAddress ¶
func (c CryptocurrencyChainLink) GetAddress() string
func (*CryptocurrencyChainLink) ToDisplayString ¶
func (c *CryptocurrencyChainLink) ToDisplayString() string
func (*CryptocurrencyChainLink) Type ¶
func (c *CryptocurrencyChainLink) Type() string
type CtimeMismatchError ¶
type CtimeMismatchError struct {
Msg string
}
func (CtimeMismatchError) Error ¶
func (e CtimeMismatchError) Error() string
type CurrentStatus ¶
func GetCurrentStatus ¶
func GetCurrentStatus(g *GlobalContext) (res CurrentStatus, err error)
func (CurrentStatus) Export ¶
func (c CurrentStatus) Export() (ret keybase1.GetCurrentStatusRes)
type DNSChecker ¶
type DNSChecker struct {
// contains filtered or unexported fields
}
func (*DNSChecker) CheckDomain ¶
func (rc *DNSChecker) CheckDomain(sig string, domain string) ProofError
func (*DNSChecker) CheckHint ¶
func (rc *DNSChecker) CheckHint(h SigHint) ProofError
func (*DNSChecker) CheckStatus ¶
func (rc *DNSChecker) CheckStatus(h SigHint) ProofError
func (*DNSChecker) GetTorError ¶
func (rc *DNSChecker) GetTorError() ProofError
type DNSServiceType ¶
type DNSServiceType struct{ BaseServiceType }
func (DNSServiceType) AllStringKeys ¶
func (t DNSServiceType) AllStringKeys() []string
func (DNSServiceType) CheckProofText ¶
func (DNSServiceType) CheckUsername ¶
func (t DNSServiceType) CheckUsername(s string) error
func (DNSServiceType) DisplayName ¶
func (t DNSServiceType) DisplayName(un string) string
func (DNSServiceType) FormatProofText ¶
func (t DNSServiceType) FormatProofText(ppr *PostProofRes) (string, error)
func (DNSServiceType) GetAPIArgKey ¶
func (t DNSServiceType) GetAPIArgKey() string
func (DNSServiceType) GetPrompt ¶
func (t DNSServiceType) GetPrompt() string
func (DNSServiceType) GetProofType ¶
func (t DNSServiceType) GetProofType() string
func (DNSServiceType) GetTypeName ¶
func (t DNSServiceType) GetTypeName() string
func (DNSServiceType) LastWriterWins ¶
func (t DNSServiceType) LastWriterWins() bool
func (DNSServiceType) NormalizeUsername ¶
func (t DNSServiceType) NormalizeUsername(s string) (string, error)
func (DNSServiceType) PostInstructions ¶
func (t DNSServiceType) PostInstructions(un string) *Markup
func (DNSServiceType) PrimaryStringKeys ¶
func (t DNSServiceType) PrimaryStringKeys() []string
func (DNSServiceType) RecheckProofPosting ¶
func (t DNSServiceType) RecheckProofPosting(tryNumber int, status keybase1.ProofStatus, dn string) (warning *Markup, err error)
func (DNSServiceType) ToChecker ¶
func (t DNSServiceType) ToChecker() Checker
func (DNSServiceType) ToServiceJSON ¶
func (t DNSServiceType) ToServiceJSON(un string) *jsonw.Wrapper
type Darwin ¶
type Darwin struct {
Base
}
func (Darwin) RuntimeDir ¶
func (Darwin) ServiceSpawnDir ¶
type DbKey ¶
func LocalTrackDBKey ¶
type DecryptBadNonceError ¶
type DecryptBadNonceError struct{}
func (DecryptBadNonceError) Error ¶
func (d DecryptBadNonceError) Error() string
type DecryptBadPacketTypeError ¶
type DecryptBadPacketTypeError struct{}
func (DecryptBadPacketTypeError) Error ¶
func (d DecryptBadPacketTypeError) Error() string
type DecryptBadSenderError ¶
type DecryptBadSenderError struct{}
func (DecryptBadSenderError) Error ¶
func (d DecryptBadSenderError) Error() string
type DecryptOpenError ¶
type DecryptOpenError struct{}
func (DecryptOpenError) Error ¶
func (d DecryptOpenError) Error() string
type DecryptWrongReceiverError ¶
type DecryptWrongReceiverError struct{}
func (DecryptWrongReceiverError) Error ¶
func (d DecryptWrongReceiverError) Error() string
type DecryptionError ¶
type DecryptionError struct{}
func (DecryptionError) Error ¶
func (e DecryptionError) Error() string
type DelegationType ¶
type DelegationType LinkType
type Delegator ¶
type Delegator struct { Contextified // Set these fields NewKey GenericKey ExistingKey GenericKey EldestKID keybase1.KID Me *User Expire int Device *Device RevSig string ServerHalf []byte EncodedPrivateKey string Ctime int64 DelegationType DelegationType Aggregated bool // During aggregation we skip some steps (posting, updating some state) // Optional precalculated values used by KeyProof LastSeqno Seqno // kex2 HandleDidCounterSign needs to sign subkey without a user but we know what the last seqno was PrevLinkID LinkID // kex2 HandleDidCounterSign calculates previous link id without a user SigningUser UserBasic // kex2 doesn't have a full user, but does have basic user info // contains filtered or unexported fields }
func (Delegator) GetMerkleTriple ¶
func (d Delegator) GetMerkleTriple() MerkleTriple
GetMerkleTriple gets the new MerkleTriple that came about as a result of performing the key delegation.
func (Delegator) GetSigningKey ¶
func (d Delegator) GetSigningKey() GenericKey
func (Delegator) IsSibkeyOrEldest ¶
func (*Delegator) LoadSigningKey ¶
func (d *Delegator) LoadSigningKey(lctx LoginContext, ui SecretUI) (err error)
LoadSigningKey can be called before Run() to load the signing key into the delegator. This will check the given key first, then a device Key if we have one, and otherwise will leave the signing key unset so that we will set it as the eldest key on upload. lctx can be nil.
func (*Delegator) Run ¶
func (d *Delegator) Run(lctx LoginContext) (err error)
Run the Delegator, performing all necessary internal operations. Return err on failure and nil on success.
func (*Delegator) SignAndPost ¶
func (d *Delegator) SignAndPost(lctx LoginContext, jw *jsonw.Wrapper) (err error)
type Device ¶
type Device struct { ID keybase1.DeviceID `json:"id"` Kid keybase1.KID `json:"kid,omitempty"` Description *string `json:"name,omitempty"` Status *int `json:"status,omitempty"` Type string `json:"type"` }
func NewPaperDevice ¶
NewPaperDevice creates a new paper backup key device
func (*Device) ProtExport ¶
type DeviceChainLink ¶
type DeviceChainLink struct { GenericChainLink // contains filtered or unexported fields }
func ParseDeviceChainLink ¶
func ParseDeviceChainLink(b GenericChainLink) (ret *DeviceChainLink, err error)
func (*DeviceChainLink) GetDevice ¶
func (s *DeviceChainLink) GetDevice() *Device
type DeviceKey ¶
type DeviceKeyMap ¶
type DeviceRequiredError ¶
type DeviceRequiredError struct{}
func (DeviceRequiredError) Error ¶
func (e DeviceRequiredError) Error() string
func (DeviceRequiredError) ToStatus ¶
func (e DeviceRequiredError) ToStatus() keybase1.Status
type DeviceStatus ¶
type DeviceTypeSet ¶
type DumbOutputUI ¶
type EmptyKeyRing ¶
type EmptyKeyRing struct{}
func (EmptyKeyRing) DecryptionKeys ¶
func (k EmptyKeyRing) DecryptionKeys() []openpgp.Key
func (EmptyKeyRing) KeysByIdUsage ¶
func (k EmptyKeyRing) KeysByIdUsage(id uint64, usage byte) []openpgp.Key
type Env ¶
type Env struct { sync.RWMutex Test TestParameters // contains filtered or unexported fields }
func NewEnv ¶
func NewEnv(cmd CommandLine, config ConfigReader) *Env
func (*Env) GenClientConfigForInternalAPI ¶
func (e *Env) GenClientConfigForInternalAPI() (*ClientConfig, error)
GenClientConfigForInternalAPI pulls the information out of the environment configuration, and build a Client config that will be used in all API server requests
func (*Env) GenClientConfigForScrapers ¶
func (e *Env) GenClientConfigForScrapers() (*ClientConfig, error)
func (*Env) GetAPIDump ¶
func (*Env) GetAPITimeout ¶
func (*Env) GetAutoFork ¶
func (*Env) GetBundledCA ¶
func (*Env) GetCacheDir ¶
func (*Env) GetCommandLine ¶
func (e *Env) GetCommandLine() CommandLine
func (*Env) GetConfig ¶
func (e *Env) GetConfig() ConfigReader
func (*Env) GetConfigDir ¶
func (*Env) GetConfigFilename ¶
func (*Env) GetConfigWriter ¶
func (e *Env) GetConfigWriter() ConfigWriter
func (*Env) GetDataDir ¶
func (*Env) GetDbFilename ¶
func (*Env) GetDeviceID ¶
func (*Env) GetDoLogForward ¶
func (*Env) GetDuration ¶
func (*Env) GetEmailOrUsername ¶
func (*Env) GetGpgHome ¶
func (*Env) GetGpgOptions ¶
func (*Env) GetLocalRPCDebug ¶
func (*Env) GetLogFile ¶
func (*Env) GetLogFormat ¶
func (*Env) GetMerkleKIDs ¶
func (*Env) GetNegBool ¶
func (e *Env) GetNegBool(def bool, flist []NegBoolFunc) bool
GetNegBool gets a negatable bool. You can give it a list of functions, and also possible negations for those functions.
func (*Env) GetNoPinentry ¶
func (*Env) GetPidFile ¶
func (*Env) GetPinentry ¶
func (*Env) GetProofCacheLongDur ¶
func (*Env) GetProofCacheMediumDur ¶
func (*Env) GetProofCacheShortDur ¶
func (*Env) GetProofCacheSize ¶
func (*Env) GetRunMode ¶
func (*Env) GetRuntimeDir ¶
func (*Env) GetScraperTimeout ¶
func (*Env) GetSecretKeyringTemplate ¶
func (*Env) GetServerURI ¶
func (*Env) GetServiceSpawnDir ¶
func (*Env) GetSessionFilename ¶
func (*Env) GetSocketFile ¶
func (*Env) GetSplitLogOutput ¶
func (*Env) GetStandalone ¶
func (*Env) GetStoredSecretAccessGroup ¶
func (*Env) GetStoredSecretServiceName ¶
func (*Env) GetStringList ¶
func (*Env) GetTorHiddenAddress ¶
func (*Env) GetTorMode ¶
func (*Env) GetTorProxy ¶
func (*Env) GetUserCacheMaxAge ¶
func (*Env) GetUsername ¶
func (e *Env) GetUsername() NormalizedUsername
func (*Env) SetCommandLine ¶
func (e *Env) SetCommandLine(cmd CommandLine)
func (*Env) SetConfig ¶
func (e *Env) SetConfig(config ConfigReader)
func (*Env) SetConfigWriter ¶
func (e *Env) SetConfigWriter(writer ConfigWriter)
type ErrorUnwrapper ¶
type ErrorUnwrapper struct{}
func (ErrorUnwrapper) MakeArg ¶
func (eu ErrorUnwrapper) MakeArg() interface{}
func (ErrorUnwrapper) UnwrapError ¶
func (eu ErrorUnwrapper) UnwrapError(arg interface{}) (appError error, dispatchError error)
type ExportableError ¶
type ExportedStream ¶
type ExportedStream struct {
// contains filtered or unexported fields
}
func (*ExportedStream) Export ¶
func (s *ExportedStream) Export() keybase1.Stream
type ExportedStreams ¶
func NewExportedStreams ¶
func NewExportedStreams() *ExportedStreams
func (*ExportedStreams) ExportReader ¶
func (s *ExportedStreams) ExportReader(r io.ReadCloser) keybase1.Stream
func (*ExportedStreams) ExportWriter ¶
func (s *ExportedStreams) ExportWriter(w io.WriteCloser) keybase1.Stream
func (*ExportedStreams) GetReader ¶
func (s *ExportedStreams) GetReader(st keybase1.Stream) (ret io.ReadCloser, err error)
func (*ExportedStreams) GetWriter ¶
func (s *ExportedStreams) GetWriter(st keybase1.Stream) (ret io.WriteCloser, err error)
type ExternalAPI ¶
type ExternalAPI interface { Get(APIArg) (*ExternalAPIRes, error) Post(APIArg) (*ExternalAPIRes, error) GetHTML(APIArg) (*ExternalHTMLRes, error) GetText(APIArg) (*ExternalTextRes, error) PostHTML(APIArg) (*ExternalHTMLRes, error) }
type ExternalAPIEngine ¶
type ExternalAPIEngine struct {
BaseAPIEngine
}
func (*ExternalAPIEngine) DoRequest ¶
func (api *ExternalAPIEngine) DoRequest( arg APIArg, req *http.Request, restype int) ( ar *ExternalAPIRes, hr *ExternalHTMLRes, tr *ExternalTextRes, err error)
func (*ExternalAPIEngine) Get ¶
func (api *ExternalAPIEngine) Get(arg APIArg) (res *ExternalAPIRes, err error)
func (*ExternalAPIEngine) GetHTML ¶
func (api *ExternalAPIEngine) GetHTML(arg APIArg) (res *ExternalHTMLRes, err error)
func (*ExternalAPIEngine) GetText ¶
func (api *ExternalAPIEngine) GetText(arg APIArg) (res *ExternalTextRes, err error)
func (*ExternalAPIEngine) Post ¶
func (api *ExternalAPIEngine) Post(arg APIArg) (res *ExternalAPIRes, err error)
func (*ExternalAPIEngine) PostHTML ¶
func (api *ExternalAPIEngine) PostHTML(arg APIArg) (res *ExternalHTMLRes, err error)
type ExternalAPIRes ¶
type ExternalHTMLRes ¶
type ExternalTextRes ¶
type FailedAssertionError ¶
type FailedAssertionError struct {
// contains filtered or unexported fields
}
func (FailedAssertionError) Error ¶
func (u FailedAssertionError) Error() string
type File ¶
type File struct {
// contains filtered or unexported fields
}
File defines a default SafeWriter implementation
type FirstErrorPicker ¶
type FirstErrorPicker struct {
// contains filtered or unexported fields
}
func (*FirstErrorPicker) Error ¶
func (p *FirstErrorPicker) Error() error
func (*FirstErrorPicker) Push ¶
func (p *FirstErrorPicker) Push(e error)
type FishyMsgpackError ¶
type FishyMsgpackError struct {
// contains filtered or unexported fields
}
func (FishyMsgpackError) Error ¶
func (e FishyMsgpackError) Error() string
type GPGKey ¶
type GPGKey struct { Contextified // contains filtered or unexported fields }
GPGKey is a shell around gpg cli commands that implements the GenericKey interface.
func NewGPGKey ¶
func NewGPGKey(g *GlobalContext, fp *PGPFingerprint, kid keybase1.KID) *GPGKey
func (*GPGKey) CanDecrypt ¶
func (*GPGKey) CanEncrypt ¶
func (*GPGKey) CheckSecretKey ¶
func (*GPGKey) DecryptFromString ¶
func (*GPGKey) EncryptToString ¶
func (g *GPGKey) EncryptToString(plaintext []byte, sender GenericKey) (ciphertext string, err error)
func (*GPGKey) GetAlgoType ¶
func (*GPGKey) GetFingerprintP ¶
func (g *GPGKey) GetFingerprintP() *PGPFingerprint
func (*GPGKey) HasSecretKey ¶
func (*GPGKey) SignToString ¶
func (*GPGKey) ToServerSKB ¶
func (g *GPGKey) ToServerSKB(gc *GlobalContext, ts *triplesec.Cipher, gen PassphraseGeneration) (*SKB, error)
func (*GPGKey) VerboseDescription ¶
func (*GPGKey) VerifyString ¶
type GPGUI ¶
type GPGUI interface { keybase1.GpgUiInterface }
type GenericChainLink ¶
type GenericChainLink struct {
*ChainLink
}
func (*GenericChainLink) BaseToTrackingStatement ¶
func (g *GenericChainLink) BaseToTrackingStatement(state keybase1.ProofState) *jsonw.Wrapper
func (*GenericChainLink) GetArmoredSig ¶
func (g *GenericChainLink) GetArmoredSig() string
func (*GenericChainLink) GetDelegatedKid ¶
func (g *GenericChainLink) GetDelegatedKid() (kid keybase1.KID)
func (*GenericChainLink) GetDevice ¶
func (g *GenericChainLink) GetDevice() *Device
func (*GenericChainLink) GetPGPFingerprint ¶
func (g *GenericChainLink) GetPGPFingerprint() *PGPFingerprint
func (*GenericChainLink) GetPGPFullHash ¶
func (g *GenericChainLink) GetPGPFullHash() string
func (*GenericChainLink) GetParentKid ¶
func (g *GenericChainLink) GetParentKid() (kid keybase1.KID)
func (*GenericChainLink) GetRole ¶
func (g *GenericChainLink) GetRole() KeyRole
func (*GenericChainLink) GetSeqno ¶
func (g *GenericChainLink) GetSeqno() Seqno
func (*GenericChainLink) GetSigID ¶
func (g *GenericChainLink) GetSigID() keybase1.SigID
func (*GenericChainLink) GetUID ¶
func (g *GenericChainLink) GetUID() keybase1.UID
func (*GenericChainLink) GetUsername ¶
func (g *GenericChainLink) GetUsername() string
func (*GenericChainLink) IsRevocationIsh ¶
func (g *GenericChainLink) IsRevocationIsh() bool
func (*GenericChainLink) IsRevoked ¶
func (g *GenericChainLink) IsRevoked() bool
func (*GenericChainLink) ToDebugString ¶
func (g *GenericChainLink) ToDebugString() string
func (*GenericChainLink) ToDisplayString ¶
func (g *GenericChainLink) ToDisplayString() string
func (*GenericChainLink) Type ¶
func (g *GenericChainLink) Type() string
func (*GenericChainLink) VerifyReverseSig ¶
func (g *GenericChainLink) VerifyReverseSig(ckf ComputedKeyFamily) error
type GenericKey ¶
type GenericKey interface { GetKID() keybase1.KID GetFingerprintP() *PGPFingerprint GetAlgoType() AlgoType // Sign to an ASCII signature (which includes the message // itself) and return it, along with a derived ID. SignToString(msg []byte) (sig string, id keybase1.SigID, err error) // Verify that the given signature is valid and extracts the // embedded message from it. Also returns the signature ID. VerifyStringAndExtract(sig string) (msg []byte, id keybase1.SigID, err error) // Verify that the given signature is valid and that its // embedded message matches the given one. Also returns the // signature ID. VerifyString(sig string, msg []byte) (id keybase1.SigID, err error) // Encrypt to an ASCII armored encryption; optionally include a sender's // (private) key so that we can provably see who sent the message. EncryptToString(plaintext []byte, sender GenericKey) (ciphertext string, err error) // Decrypt the output of Encrypt above; provide the plaintext and also // the KID of the key that sent the message (if applicable). DecryptFromString(ciphertext string) (msg []byte, sender keybase1.KID, err error) ToServerSKB(gc *GlobalContext, ts *triplesec.Cipher, gen PassphraseGeneration) (*SKB, error) ToLksSKB(lks *LKSec) (*SKB, error) VerboseDescription() string CheckSecretKey() error CanSign() bool CanEncrypt() bool CanDecrypt() bool HasSecretKey() bool Encode() (string, error) // encode public key to string }
func ImportKeypairFromKID ¶
func ImportKeypairFromKID(k keybase1.KID) (key GenericKey, err error)
func NaclVerifyAndExtract ¶
func NaclVerifyAndExtract(s string) (key GenericKey, payload []byte, fullBody []byte, err error)
NaclVerifyAndExtract interprets the given string as a NaCl-signed messaged, in the keybase NaclSigInfo (v1) format. It will check that the signature verified, and if so, will return the key that was used for the verification, the payload of the signature, the full body of the decoded SignInfo, and an error
func ParseGenericKey ¶
func ParseGenericKey(bundle string) (GenericKey, error)
type GithubChecker ¶
type GithubChecker struct {
// contains filtered or unexported fields
}
func (*GithubChecker) CheckHint ¶
func (rc *GithubChecker) CheckHint(h SigHint) ProofError
func (*GithubChecker) CheckStatus ¶
func (rc *GithubChecker) CheckStatus(h SigHint) ProofError
func (*GithubChecker) GetTorError ¶
func (rc *GithubChecker) GetTorError() ProofError
type GithubServiceType ¶
type GithubServiceType struct{ BaseServiceType }
func (GithubServiceType) AllStringKeys ¶
func (t GithubServiceType) AllStringKeys() []string
func (GithubServiceType) CheckProofText ¶
func (GithubServiceType) CheckUsername ¶
func (t GithubServiceType) CheckUsername(s string) (err error)
func (GithubServiceType) DisplayName ¶
func (t GithubServiceType) DisplayName(un string) string
func (GithubServiceType) GetPrompt ¶
func (t GithubServiceType) GetPrompt() string
func (GithubServiceType) GetProofType ¶
func (t GithubServiceType) GetProofType() string
func (GithubServiceType) GetTypeName ¶
func (t GithubServiceType) GetTypeName() string
func (GithubServiceType) PostInstructions ¶
func (t GithubServiceType) PostInstructions(un string) *Markup
func (GithubServiceType) PrimaryStringKeys ¶
func (t GithubServiceType) PrimaryStringKeys() []string
func (GithubServiceType) RecheckProofPosting ¶
func (t GithubServiceType) RecheckProofPosting(tryNumber int, status keybase1.ProofStatus, _ string) (warning *Markup, err error)
func (GithubServiceType) ToChecker ¶
func (t GithubServiceType) ToChecker() Checker
func (GithubServiceType) ToServiceJSON ¶
func (t GithubServiceType) ToServiceJSON(un string) *jsonw.Wrapper
type GlobalContext ¶
type GlobalContext struct { Log logger.Logger // Handles all logging Env *Env // Env variables, cmdline args & config Keyrings *Keyrings // Gpg Keychains holding keys API API // How to make a REST call to the server ResolveCache *ResolveCache // cache of resolve results LocalDb *JSONLocalDb // Local DB for cache MerkleClient *MerkleClient // client for querying server's merkle sig tree XAPI ExternalAPI // for contacting Twitter, Github, etc. Output io.Writer // where 'Stdout'-style output goes ProofCache *ProofCache // where to cache proof results FavoriteCache *favcache.Cache // where to cache favorite folders GpgClient *GpgCLI // A standard GPG-client (optional) ShutdownHooks []ShutdownHook // on shutdown, fire these... SocketInfo Socket // which socket to bind/connect to SocketWrapper *SocketWrapper // only need one connection per LoopbackListener *LoopbackListener // If we're in loopback mode, we'll connect through here XStreams *ExportedStreams // a table of streams we've exported to the daemon (or vice-versa) Timers *TimerSet // Which timers are currently configured on IdentifyCache *IdentifyCache // cache of IdentifyOutcomes UserCache *UserCache // cache of Users UI UI // Interact with the UI Service bool // whether we're in server mode ConnectionManager *ConnectionManager // keep tabs on all active client connections NotifyRouter *NotifyRouter // How to route notifications UIRouter UIRouter // How to route UIs ExitCode keybase1.ExitCode // Value to return to OS on Exit() // contains filtered or unexported fields }
var G *GlobalContext
func NewGlobalContext ¶
func NewGlobalContext() *GlobalContext
func (*GlobalContext) BindToSocket ¶
func (g *GlobalContext) BindToSocket() (net.Listener, error)
func (*GlobalContext) ConfigReload ¶
func (g *GlobalContext) ConfigReload() error
func (*GlobalContext) Configure ¶
func (g *GlobalContext) Configure(line CommandLine, usage Usage) error
func (*GlobalContext) ConfigureAPI ¶
func (g *GlobalContext) ConfigureAPI() error
func (*GlobalContext) ConfigureCaches ¶
func (g *GlobalContext) ConfigureCaches() error
func (*GlobalContext) ConfigureCommand ¶
func (g *GlobalContext) ConfigureCommand(line CommandLine, cmd Command) error
func (*GlobalContext) ConfigureConfig ¶
func (g *GlobalContext) ConfigureConfig() error
func (*GlobalContext) ConfigureExportedStreams ¶
func (g *GlobalContext) ConfigureExportedStreams() error
func (*GlobalContext) ConfigureKeyring ¶
func (g *GlobalContext) ConfigureKeyring() error
func (*GlobalContext) ConfigureLogging ¶
func (g *GlobalContext) ConfigureLogging() error
func (*GlobalContext) ConfigureMerkleClient ¶
func (g *GlobalContext) ConfigureMerkleClient() error
func (*GlobalContext) ConfigureSocketInfo ¶
func (g *GlobalContext) ConfigureSocketInfo() (err error)
func (*GlobalContext) ConfigureTimers ¶
func (g *GlobalContext) ConfigureTimers() error
func (*GlobalContext) ConfigureUsage ¶
func (g *GlobalContext) ConfigureUsage(usage Usage) error
func (*GlobalContext) GetGpgClient ¶
func (g *GlobalContext) GetGpgClient() *GpgCLI
func (*GlobalContext) GetMyUID ¶
func (g *GlobalContext) GetMyUID() keybase1.UID
func (*GlobalContext) GetSocket ¶
func (g *GlobalContext) GetSocket(clearError bool) (net.Conn, rpc.Transporter, error)
func (*GlobalContext) Init ¶
func (g *GlobalContext) Init()
func (*GlobalContext) LoginState ¶
func (g *GlobalContext) LoginState() *LoginState
func (*GlobalContext) Logout ¶
func (g *GlobalContext) Logout() error
func (*GlobalContext) MakeLoopbackServer ¶
func (g *GlobalContext) MakeLoopbackServer() (l net.Listener, err error)
func (*GlobalContext) OutputBytes ¶
func (g *GlobalContext) OutputBytes(b []byte)
func (*GlobalContext) OutputString ¶
func (g *GlobalContext) OutputString(s string)
func (*GlobalContext) PushShutdownHook ¶
func (g *GlobalContext) PushShutdownHook(sh ShutdownHook)
func (*GlobalContext) SKBFilenameForUser ¶
func (g *GlobalContext) SKBFilenameForUser(un NormalizedUsername) string
func (*GlobalContext) SetCommandLine ¶
func (g *GlobalContext) SetCommandLine(cmd CommandLine)
func (*GlobalContext) SetService ¶
func (g *GlobalContext) SetService()
func (*GlobalContext) SetUI ¶
func (g *GlobalContext) SetUI(u UI)
func (*GlobalContext) SetUIRouter ¶
func (g *GlobalContext) SetUIRouter(u UIRouter)
func (*GlobalContext) Shutdown ¶
func (g *GlobalContext) Shutdown() error
Shutdown is called exactly once per-process and does whatever cleanup is necessary to shut down the server.
func (*GlobalContext) StartupMessage ¶
func (g *GlobalContext) StartupMessage()
type GpgBaseKey ¶
type GpgBaseKey struct { Type string Trust string Bits int Algo int ID64 string Created int64 Expires int64 // contains filtered or unexported fields }
func (GpgBaseKey) AlgoString ¶
func (k GpgBaseKey) AlgoString() string
func (GpgBaseKey) CreatedString ¶
func (k GpgBaseKey) CreatedString() string
func (GpgBaseKey) ExpirationString ¶
func (k GpgBaseKey) ExpirationString() string
func (*GpgBaseKey) ParseBase ¶
func (k *GpgBaseKey) ParseBase(line *GpgIndexLine) (err error)
func (*GpgBaseKey) SetFingerprint ¶
func (k *GpgBaseKey) SetFingerprint(pgp *PGPFingerprint)
type GpgCLI ¶
type GpgCLI struct {
// contains filtered or unexported fields
}
func (*GpgCLI) ExportKey ¶
func (g *GpgCLI) ExportKey(k PGPKeyBundle) (err error)
func (*GpgCLI) ImportKey ¶
func (g *GpgCLI) ImportKey(secret bool, fp PGPFingerprint) (*PGPKeyBundle, error)
func (*GpgCLI) Path ¶
Path returns the path of the gpg executable. Path is only available if CanExec() is true.
func (*GpgCLI) Run2 ¶
func (g *GpgCLI) Run2(arg RunGpg2Arg) (res RunGpg2Res)
type GpgError ¶
type GpgError struct {
// contains filtered or unexported fields
}
func ErrorToGpgError ¶
type GpgFingerprinter ¶
type GpgFingerprinter interface {
SetFingerprint(pgp *PGPFingerprint)
}
type GpgIndexElement ¶
type GpgIndexElement interface {
ToKey() *GpgPrimaryKey
}
type GpgIndexError ¶
type GpgIndexError struct {
// contains filtered or unexported fields
}
func ErrorToGpgIndexError ¶
func ErrorToGpgIndexError(l int, e error) GpgIndexError
func (GpgIndexError) Error ¶
func (e GpgIndexError) Error() string
type GpgIndexLine ¶
type GpgIndexLine struct {
// contains filtered or unexported fields
}
func (GpgIndexLine) At ¶
func (g GpgIndexLine) At(i int) string
func (GpgIndexLine) IsNewKey ¶
func (g GpgIndexLine) IsNewKey() bool
func (GpgIndexLine) Len ¶
func (g GpgIndexLine) Len() int
type GpgIndexParser ¶
type GpgIndexParser struct {
// contains filtered or unexported fields
}
func NewGpgIndexParser ¶
func NewGpgIndexParser() *GpgIndexParser
func (*GpgIndexParser) GetLine ¶
func (p *GpgIndexParser) GetLine() (ret *GpgIndexLine, err error)
func (*GpgIndexParser) Parse ¶
func (p *GpgIndexParser) Parse(stream io.Reader) (ki *GpgKeyIndex, err error)
func (*GpgIndexParser) ParseElement ¶
func (p *GpgIndexParser) ParseElement() (ret GpgIndexElement, err error)
func (*GpgIndexParser) ParseKey ¶
func (p *GpgIndexParser) ParseKey(l *GpgIndexLine) (ret *GpgPrimaryKey, err error)
func (*GpgIndexParser) PutbackLine ¶
func (p *GpgIndexParser) PutbackLine(line *GpgIndexLine)
func (*GpgIndexParser) Warn ¶
func (p *GpgIndexParser) Warn(w Warning)
type GpgKeyIndex ¶
type GpgKeyIndex struct { Keys []*GpgPrimaryKey Emails, Fingerprints, ID64s *BucketDict }
func NewGpgKeyIndex ¶
func NewGpgKeyIndex() *GpgKeyIndex
func (*GpgKeyIndex) AllFingerprints ¶
func (ki *GpgKeyIndex) AllFingerprints() []PGPFingerprint
func (*GpgKeyIndex) GetRowFunc ¶
func (ki *GpgKeyIndex) GetRowFunc() func() []string
func (*GpgKeyIndex) IndexKey ¶
func (ki *GpgKeyIndex) IndexKey(k *GpgPrimaryKey)
func (*GpgKeyIndex) Len ¶
func (ki *GpgKeyIndex) Len() int
func (*GpgKeyIndex) Less ¶
func (ki *GpgKeyIndex) Less(i, j int) bool
func (*GpgKeyIndex) PushElement ¶
func (ki *GpgKeyIndex) PushElement(e GpgIndexElement)
func (*GpgKeyIndex) Sort ¶
func (ki *GpgKeyIndex) Sort()
func (*GpgKeyIndex) Swap ¶
func (ki *GpgKeyIndex) Swap(i, j int)
type GpgPrimaryKey ¶
type GpgPrimaryKey struct { GpgBaseKey // contains filtered or unexported fields }
func NewGpgPrimaryKey ¶
func NewGpgPrimaryKey() *GpgPrimaryKey
func ParseGpgPrimaryKey ¶
func ParseGpgPrimaryKey(l *GpgIndexLine) (key *GpgPrimaryKey, err error)
func (*GpgPrimaryKey) AddFingerprint ¶
func (k *GpgPrimaryKey) AddFingerprint(l *GpgIndexLine) (err error)
func (*GpgPrimaryKey) AddLine ¶
func (k *GpgPrimaryKey) AddLine(l *GpgIndexLine) (err error)
func (*GpgPrimaryKey) AddSubkey ¶
func (k *GpgPrimaryKey) AddSubkey(l *GpgIndexLine) (err error)
func (*GpgPrimaryKey) AddUID ¶
func (k *GpgPrimaryKey) AddUID(l *GpgIndexLine) (err error)
func (*GpgPrimaryKey) GetAllID64s ¶
func (k *GpgPrimaryKey) GetAllID64s() []string
func (*GpgPrimaryKey) GetEmails ¶
func (k *GpgPrimaryKey) GetEmails() []string
func (*GpgPrimaryKey) GetFingerprint ¶
func (k *GpgPrimaryKey) GetFingerprint() *PGPFingerprint
func (*GpgPrimaryKey) GetPGPIdentities ¶
func (k *GpgPrimaryKey) GetPGPIdentities() []keybase1.PGPIdentity
func (*GpgPrimaryKey) IsValid ¶
func (k *GpgPrimaryKey) IsValid() bool
func (*GpgPrimaryKey) Parse ¶
func (k *GpgPrimaryKey) Parse(l *GpgIndexLine) error
func (*GpgPrimaryKey) ToKey ¶
func (k *GpgPrimaryKey) ToKey() *GpgPrimaryKey
func (*GpgPrimaryKey) ToRow ¶
func (k *GpgPrimaryKey) ToRow(i int) []string
type GpgSubKey ¶
type GpgSubKey struct {
GpgBaseKey
}
func ParseGpgSubKey ¶
func ParseGpgSubKey(l *GpgIndexLine) (sk *GpgSubKey, err error)
type HTTPArgs ¶
func NewHTTPArgs ¶
func NewHTTPArgs() HTTPArgs
func (HTTPArgs) EncodeToString ¶
type HTTPRequest ¶
type HTTPRequest interface {
SetEnvironment(env Env)
}
type HackerNewsChecker ¶
type HackerNewsChecker struct {
// contains filtered or unexported fields
}
func (*HackerNewsChecker) APIBase ¶
func (h *HackerNewsChecker) APIBase() string
func (*HackerNewsChecker) APIURL ¶
func (h *HackerNewsChecker) APIURL() string
func (*HackerNewsChecker) CheckHint ¶
func (h *HackerNewsChecker) CheckHint(hint SigHint) ProofError
func (*HackerNewsChecker) CheckStatus ¶
func (h *HackerNewsChecker) CheckStatus(hint SigHint) ProofError
func (*HackerNewsChecker) GetTorError ¶
func (h *HackerNewsChecker) GetTorError() ProofError
func (*HackerNewsChecker) HumanURL ¶
func (h *HackerNewsChecker) HumanURL() string
func (*HackerNewsChecker) KarmaURL ¶
func (h *HackerNewsChecker) KarmaURL() string
type HackerNewsServiceType ¶
type HackerNewsServiceType struct{ BaseServiceType }
func (HackerNewsServiceType) AllStringKeys ¶
func (t HackerNewsServiceType) AllStringKeys() []string
func (HackerNewsServiceType) CheckProofText ¶
func (HackerNewsServiceType) CheckUsername ¶
func (t HackerNewsServiceType) CheckUsername(s string) (err error)
func (HackerNewsServiceType) DisplayName ¶
func (t HackerNewsServiceType) DisplayName(un string) string
func (HackerNewsServiceType) GetPrompt ¶
func (t HackerNewsServiceType) GetPrompt() string
func (HackerNewsServiceType) GetProofType ¶
func (t HackerNewsServiceType) GetProofType() string
func (HackerNewsServiceType) GetTypeName ¶
func (t HackerNewsServiceType) GetTypeName() string
func (HackerNewsServiceType) NormalizeUsername ¶
func (t HackerNewsServiceType) NormalizeUsername(s string) (string, error)
HackerNews names are case-sensitive
func (HackerNewsServiceType) PostInstructions ¶
func (t HackerNewsServiceType) PostInstructions(un string) *Markup
func (HackerNewsServiceType) PreProofCheck ¶
func (t HackerNewsServiceType) PreProofCheck(un string) (markup *Markup, err error)
func (HackerNewsServiceType) PrimaryStringKeys ¶
func (t HackerNewsServiceType) PrimaryStringKeys() []string
func (HackerNewsServiceType) RecheckProofPosting ¶
func (t HackerNewsServiceType) RecheckProofPosting(tryNumber int, status keybase1.ProofStatus, _ string) (warning *Markup, err error)
func (HackerNewsServiceType) ToChecker ¶
func (t HackerNewsServiceType) ToChecker() Checker
func (HackerNewsServiceType) ToServiceJSON ¶
func (t HackerNewsServiceType) ToServiceJSON(un string) *jsonw.Wrapper
type HashSummer ¶
type HashSummer func() []byte
func ArmoredAttachedSign ¶
func ArmoredAttachedSign(out io.WriteCloser, signed openpgp.Entity, hints *openpgp.FileHints, config *packet.Config) (in io.WriteCloser, h HashSummer, err error)
type HashingWriteCloser ¶
type HashingWriteCloser struct {
// contains filtered or unexported fields
}
func (HashingWriteCloser) Close ¶
func (h HashingWriteCloser) Close() error
type HomeFinder ¶
type HomeFinder interface { CacheDir() string ConfigDir() string Home(emptyOk bool) string DataDir() string RuntimeDir() string Normalize(s string) string LogDir() string ServiceSpawnDir() (string, error) }
func NewHomeFinder ¶
func NewHomeFinder(appName string, getHome ConfigGetter, osname string, getRunMode RunModeGetter) HomeFinder
type IdentifyCache ¶
type IdentifyCache struct {
// contains filtered or unexported fields
}
func NewIdentifyCache ¶
func NewIdentifyCache() *IdentifyCache
func (*IdentifyCache) Delete ¶
func (c *IdentifyCache) Delete(key IdentifyCacheToken) error
func (*IdentifyCache) Get ¶
func (c *IdentifyCache) Get(key IdentifyCacheToken) (*IdentifyOutcome, error)
func (*IdentifyCache) Insert ¶
func (c *IdentifyCache) Insert(outcome *IdentifyOutcome) (IdentifyCacheToken, error)
func (*IdentifyCache) Shutdown ¶
func (c *IdentifyCache) Shutdown()
type IdentifyCacheToken ¶
type IdentifyCacheToken string
func ImportIdentifyCacheToken ¶
func ImportIdentifyCacheToken(t string) IdentifyCacheToken
func (IdentifyCacheToken) Export ¶
func (t IdentifyCacheToken) Export() string
type IdentifyOutcome ¶
type IdentifyOutcome struct { Username string Error error KeyDiffs []TrackDiff Revoked []TrackDiffRevoked ProofChecks []*LinkCheckResult Warnings []Warning TrackUsed *TrackLookup TrackEqual bool // Whether the track statement was equal to what we saw MeSet bool // whether me was set at the time TrackOptions keybase1.TrackOptions Reason keybase1.IdentifyReason }
func NewIdentifyOutcome ¶
func NewIdentifyOutcome(m bool) *IdentifyOutcome
func (*IdentifyOutcome) ActiveProofs ¶
func (i *IdentifyOutcome) ActiveProofs() []RemoteProofChainLink
func (*IdentifyOutcome) AddProofsToSet ¶
func (i *IdentifyOutcome) AddProofsToSet(existing *ProofSet)
func (*IdentifyOutcome) Export ¶
func (ir *IdentifyOutcome) Export() *keybase1.IdentifyOutcome
func (IdentifyOutcome) ExportToUncheckedIdentity ¶
func (ir IdentifyOutcome) ExportToUncheckedIdentity() *keybase1.Identity
func (IdentifyOutcome) GetError ¶
func (i IdentifyOutcome) GetError() error
func (IdentifyOutcome) GetErrorAndWarnings ¶
func (i IdentifyOutcome) GetErrorAndWarnings(strict bool) (warnings Warnings, err error)
func (IdentifyOutcome) GetErrorLax ¶
func (i IdentifyOutcome) GetErrorLax() (Warnings, error)
func (IdentifyOutcome) NumProofFailures ¶
func (i IdentifyOutcome) NumProofFailures() int
The number of proofs that failed.
func (IdentifyOutcome) NumProofSuccesses ¶
func (i IdentifyOutcome) NumProofSuccesses() int
The number of proofs that actually worked
func (IdentifyOutcome) NumRevoked ¶
func (i IdentifyOutcome) NumRevoked() int
Revoked proofs are those we used to look for but are gone!
func (IdentifyOutcome) NumTrackChanges ¶
func (i IdentifyOutcome) NumTrackChanges() int
A "Track Change" isn't necessary a failure, maybe they upgraded a proof from HTTP to HTTPS. But we still should retrack if we can.
func (IdentifyOutcome) NumTrackFailures ¶
func (i IdentifyOutcome) NumTrackFailures() int
A "Track Failure" is when we previously tracked this user, and some aspect of their proof changed. Like their key changed, or they changed Twitter names
func (*IdentifyOutcome) ProofChecksSorted ¶
func (i *IdentifyOutcome) ProofChecksSorted() []*LinkCheckResult
func (*IdentifyOutcome) TrackSet ¶
func (i *IdentifyOutcome) TrackSet() *TrackSet
func (IdentifyOutcome) TrackStatus ¶
func (i IdentifyOutcome) TrackStatus() keybase1.TrackStatus
func (IdentifyOutcome) TrackingStatement ¶
func (i IdentifyOutcome) TrackingStatement() *jsonw.Wrapper
type IdentifyState ¶
type IdentifyState struct {
// contains filtered or unexported fields
}
func NewIdentifyState ¶
func NewIdentifyState(res *IdentifyOutcome, u *User) IdentifyState
func (*IdentifyState) ComputeKeyDiffs ¶
func (s *IdentifyState) ComputeKeyDiffs(dhook func(keybase1.IdentifyKey))
func (*IdentifyState) ComputeRevokedProofs ¶
func (s *IdentifyState) ComputeRevokedProofs()
func (*IdentifyState) ComputeTrackDiffs ¶
func (s *IdentifyState) ComputeTrackDiffs()
func (*IdentifyState) CreateTrackLookup ¶
func (s *IdentifyState) CreateTrackLookup(t *TrackChainLink)
func (*IdentifyState) HasPreviousTrack ¶
func (s *IdentifyState) HasPreviousTrack() bool
func (*IdentifyState) InitResultList ¶
func (s *IdentifyState) InitResultList()
func (*IdentifyState) TrackLookup ¶
func (s *IdentifyState) TrackLookup() *TrackLookup
type IdentifyTimeoutError ¶
type IdentifyTimeoutError struct{}
func (IdentifyTimeoutError) Error ¶
func (e IdentifyTimeoutError) Error() string
func (IdentifyTimeoutError) ToStatus ¶
func (e IdentifyTimeoutError) ToStatus() keybase1.Status
type IdentifyUI ¶
type IdentifyUI interface { Start(string) FinishWebProofCheck(keybase1.RemoteProof, keybase1.LinkCheckResult) FinishSocialProofCheck(keybase1.RemoteProof, keybase1.LinkCheckResult) Confirm(*keybase1.IdentifyOutcome) (keybase1.ConfirmResult, error) DisplayCryptocurrency(keybase1.Cryptocurrency) DisplayKey(keybase1.IdentifyKey) ReportLastTrack(*keybase1.TrackSummary) LaunchNetworkChecks(*keybase1.Identity, *keybase1.User) DisplayTrackStatement(string) error ReportTrackToken(IdentifyCacheToken) error SetStrict(b bool) Finish() }
type Identities ¶
type Identities []Identity
func ImportPGPIdentities ¶
func ImportPGPIdentities(ids []keybase1.PGPIdentity) (ret Identities)
func (Identities) Export ¶
func (ids Identities) Export() (res []keybase1.PGPIdentity)
type Identity ¶
func ImportPGPIdentity ¶
func ImportPGPIdentity(arg keybase1.PGPIdentity) (ret Identity)
func KeybaseIdentity ¶
func KeybaseIdentity(un NormalizedUsername) Identity
func ParseIdentity ¶
func (Identity) Export ¶
func (id Identity) Export() (ret keybase1.PGPIdentity)
func (Identity) ToPGPUserID ¶
type IdentityTable ¶
type IdentityTable struct { Order []TypedChainLink Contextified // contains filtered or unexported fields }
func NewIdentityTable ¶
func NewIdentityTable(g *GlobalContext, eldest keybase1.KID, sc *SigChain, h *SigHints) (*IdentityTable, error)
func (*IdentityTable) ActiveCryptocurrency ¶
func (idt *IdentityTable) ActiveCryptocurrency() *CryptocurrencyChainLink
func (*IdentityTable) GetActiveProofsFor ¶
func (idt *IdentityTable) GetActiveProofsFor(st ServiceType) (ret []RemoteProofChainLink)
func (*IdentityTable) GetRevokedCryptocurrencyForTesting ¶
func (idt *IdentityTable) GetRevokedCryptocurrencyForTesting() []CryptocurrencyChainLink
func (*IdentityTable) GetTrackList ¶
func (idt *IdentityTable) GetTrackList() (ret []*TrackChainLink)
func (*IdentityTable) GetTrackMap ¶
func (idt *IdentityTable) GetTrackMap() map[string][]*TrackChainLink
func (*IdentityTable) Identify ¶
func (idt *IdentityTable) Identify(is IdentifyState, forceRemoteCheck bool, ui IdentifyUI)
func (*IdentityTable) Len ¶
func (idt *IdentityTable) Len() int
func (*IdentityTable) MarkCheckResult ¶
func (idt *IdentityTable) MarkCheckResult(err ProofError)
func (*IdentityTable) TrackChainLinkFor ¶
func (idt *IdentityTable) TrackChainLinkFor(username string, uid keybase1.UID) (*TrackChainLink, error)
func (*IdentityTable) VerifySelfSig ¶
func (idt *IdentityTable) VerifySelfSig(s string, uid keybase1.UID) bool
type InactiveKeyError ¶
type InactiveKeyError struct {
// contains filtered or unexported fields
}
func (InactiveKeyError) Error ¶
func (i InactiveKeyError) Error() string
type InsufficientKarmaError ¶
type InsufficientKarmaError struct {
// contains filtered or unexported fields
}
func (InsufficientKarmaError) Error ¶
func (e InsufficientKarmaError) Error() string
type InternalAPIEngine ¶
type InternalAPIEngine struct {
BaseAPIEngine
}
func NewInternalAPIEngine ¶
func NewInternalAPIEngine(g *GlobalContext) (*InternalAPIEngine, error)
NewInternalAPIEngine makes an API engine for internally querying the keybase API server
func (*InternalAPIEngine) GetDecode ¶
func (a *InternalAPIEngine) GetDecode(arg APIArg, v interface{}) error
GetDecode performs a GET request and decodes the response via JSON into the value pointed to by v.
func (*InternalAPIEngine) GetResp ¶
func (a *InternalAPIEngine) GetResp(arg APIArg) (*http.Response, error)
GetResp performs a GET request and returns the http response.
func (*InternalAPIEngine) PostDecode ¶
func (a *InternalAPIEngine) PostDecode(arg APIArg, v interface{}) error
type InternalError ¶
type InternalError struct {
Msg string
}
func (InternalError) Error ¶
func (e InternalError) Error() string
type InvalidArgumentError ¶
type InvalidArgumentError struct {
Msg string
}
func (InvalidArgumentError) Error ¶
func (e InvalidArgumentError) Error() string
type InvalidHostnameError ¶
type InvalidHostnameError struct {
// contains filtered or unexported fields
}
func (InvalidHostnameError) Error ¶
func (e InvalidHostnameError) Error() string
type InvalidKexPhraseError ¶
type InvalidKexPhraseError struct{}
func (InvalidKexPhraseError) Error ¶
func (e InvalidKexPhraseError) Error() string
func (InvalidKexPhraseError) ToStatus ¶
func (e InvalidKexPhraseError) ToStatus() keybase1.Status
type InviteRequestArg ¶
type JSONConfigFile ¶
type JSONConfigFile struct { *JSONFile // contains filtered or unexported fields }
func NewJSONConfigFile ¶
func NewJSONConfigFile(g *GlobalContext, s string) *JSONConfigFile
func (JSONConfigFile) Check ¶
func (f JSONConfigFile) Check() error
Check looks inside the JSON file to see if any fields are poorly specified
func (*JSONConfigFile) DeleteAtPath ¶
func (f *JSONConfigFile) DeleteAtPath(p string)
func (JSONConfigFile) GetAPITimeout ¶
func (f JSONConfigFile) GetAPITimeout() (time.Duration, bool)
func (JSONConfigFile) GetAllUsernames ¶
func (f JSONConfigFile) GetAllUsernames() (current NormalizedUsername, others []NormalizedUsername, err error)
func (JSONConfigFile) GetAutoFork ¶
func (f JSONConfigFile) GetAutoFork() (bool, bool)
func (JSONConfigFile) GetBoolAtPath ¶
func (f JSONConfigFile) GetBoolAtPath(p string) (ret bool, isSet bool)
func (JSONConfigFile) GetBundledCA ¶
func (f JSONConfigFile) GetBundledCA(host string) (ret string)
func (JSONConfigFile) GetConfigFilename ¶
func (f JSONConfigFile) GetConfigFilename() string
func (JSONConfigFile) GetDbFilename ¶
func (f JSONConfigFile) GetDbFilename() string
func (JSONConfigFile) GetDebug ¶
func (f JSONConfigFile) GetDebug() (bool, bool)
func (JSONConfigFile) GetDeviceID ¶
func (f JSONConfigFile) GetDeviceID() (ret keybase1.DeviceID)
func (JSONConfigFile) GetDurationAtPath ¶
func (f JSONConfigFile) GetDurationAtPath(p string) (time.Duration, bool)
func (JSONConfigFile) GetFilename ¶
func (f JSONConfigFile) GetFilename() string
func (JSONConfigFile) GetGpg ¶
func (f JSONConfigFile) GetGpg() string
func (JSONConfigFile) GetGpgHome ¶
func (f JSONConfigFile) GetGpgHome() (ret string)
func (JSONConfigFile) GetGpgOptions ¶
func (f JSONConfigFile) GetGpgOptions() []string
func (JSONConfigFile) GetHome ¶
func (f JSONConfigFile) GetHome() string
func (JSONConfigFile) GetIntAtPath ¶
func (f JSONConfigFile) GetIntAtPath(p string) (ret int, isSet bool)
func (JSONConfigFile) GetLocalRPCDebug ¶
func (f JSONConfigFile) GetLocalRPCDebug() string
func (JSONConfigFile) GetLogFile ¶
func (f JSONConfigFile) GetLogFile() string
func (JSONConfigFile) GetLogFormat ¶
func (f JSONConfigFile) GetLogFormat() string
func (JSONConfigFile) GetMerkleKIDs ¶
func (f JSONConfigFile) GetMerkleKIDs() []string
func (JSONConfigFile) GetNoPinentry ¶
func (f JSONConfigFile) GetNoPinentry() (bool, bool)
func (JSONConfigFile) GetNullAtPath ¶
func (f JSONConfigFile) GetNullAtPath(p string) (isSet bool)
func (JSONConfigFile) GetPidFile ¶
func (f JSONConfigFile) GetPidFile() string
func (JSONConfigFile) GetPinentry ¶
func (f JSONConfigFile) GetPinentry() string
func (JSONConfigFile) GetProofCacheLongDur ¶
func (f JSONConfigFile) GetProofCacheLongDur() (time.Duration, bool)
func (JSONConfigFile) GetProofCacheMediumDur ¶
func (f JSONConfigFile) GetProofCacheMediumDur() (time.Duration, bool)
func (JSONConfigFile) GetProofCacheShortDur ¶
func (f JSONConfigFile) GetProofCacheShortDur() (time.Duration, bool)
func (JSONConfigFile) GetProofCacheSize ¶
func (f JSONConfigFile) GetProofCacheSize() (int, bool)
func (JSONConfigFile) GetProxy ¶
func (f JSONConfigFile) GetProxy() string
func (JSONConfigFile) GetProxyCACerts ¶
func (f JSONConfigFile) GetProxyCACerts() (ret []string, err error)
func (JSONConfigFile) GetRunMode ¶
func (f JSONConfigFile) GetRunMode() (RunMode, error)
func (JSONConfigFile) GetSalt ¶
func (f JSONConfigFile) GetSalt() (ret []byte)
func (JSONConfigFile) GetScraperTimeout ¶
func (f JSONConfigFile) GetScraperTimeout() (time.Duration, bool)
func (JSONConfigFile) GetSecretKeyringTemplate ¶
func (f JSONConfigFile) GetSecretKeyringTemplate() string
func (JSONConfigFile) GetSecurityAccessGroupOverride ¶
func (f JSONConfigFile) GetSecurityAccessGroupOverride() (bool, bool)
func (JSONConfigFile) GetServerURI ¶
func (f JSONConfigFile) GetServerURI() string
func (JSONConfigFile) GetSessionFilename ¶
func (f JSONConfigFile) GetSessionFilename() string
func (JSONConfigFile) GetSocketFile ¶
func (f JSONConfigFile) GetSocketFile() string
func (JSONConfigFile) GetSplitLogOutput ¶
func (f JSONConfigFile) GetSplitLogOutput() (bool, bool)
func (JSONConfigFile) GetStandalone ¶
func (f JSONConfigFile) GetStandalone() (bool, bool)
func (JSONConfigFile) GetStringAtPath ¶
func (f JSONConfigFile) GetStringAtPath(p string) (ret string, isSet bool)
func (JSONConfigFile) GetTimers ¶
func (f JSONConfigFile) GetTimers() string
func (JSONConfigFile) GetTopLevelBool ¶
func (f JSONConfigFile) GetTopLevelBool(s string) (res, isSet bool)
func (JSONConfigFile) GetTopLevelString ¶
func (f JSONConfigFile) GetTopLevelString(s string) (ret string)
func (JSONConfigFile) GetTorHiddenAddress ¶
func (f JSONConfigFile) GetTorHiddenAddress() string
func (JSONConfigFile) GetTorMode ¶
func (f JSONConfigFile) GetTorMode() (ret TorMode, err error)
func (JSONConfigFile) GetTorProxy ¶
func (f JSONConfigFile) GetTorProxy() string
func (JSONConfigFile) GetUID ¶
func (f JSONConfigFile) GetUID() (ret keybase1.UID)
func (JSONConfigFile) GetUserCacheMaxAge ¶
func (f JSONConfigFile) GetUserCacheMaxAge() (time.Duration, bool)
func (JSONConfigFile) GetUserConfig ¶
func (f JSONConfigFile) GetUserConfig() (*UserConfig, error)
func (JSONConfigFile) GetUserConfigForUsername ¶
func (f JSONConfigFile) GetUserConfigForUsername(nu NormalizedUsername) (*UserConfig, error)
GetUserConfigForUsername sees if there's a UserConfig object for the given username previously stored.
func (JSONConfigFile) GetUsername ¶
func (f JSONConfigFile) GetUsername() (ret NormalizedUsername)
func (*JSONConfigFile) NukeUser ¶
func (f *JSONConfigFile) NukeUser(nu NormalizedUsername) error
func (*JSONConfigFile) Reset ¶
func (f *JSONConfigFile) Reset()
func (*JSONConfigFile) SetBoolAtPath ¶
func (f *JSONConfigFile) SetBoolAtPath(p string, v bool) error
func (*JSONConfigFile) SetDeviceID ¶
func (f *JSONConfigFile) SetDeviceID(did keybase1.DeviceID) (err error)
SetDeviceID sets the device field of the UserConfig object
func (*JSONConfigFile) SetIntAtPath ¶
func (f *JSONConfigFile) SetIntAtPath(p string, v int) error
func (*JSONConfigFile) SetNullAtPath ¶
func (f *JSONConfigFile) SetNullAtPath(p string) (err error)
func (*JSONConfigFile) SetStringAtPath ¶
func (f *JSONConfigFile) SetStringAtPath(p string, v string) error
func (*JSONConfigFile) SetUserConfig ¶
func (f *JSONConfigFile) SetUserConfig(u *UserConfig, overwrite bool) error
SetUserConfig writes this UserConfig to the config file and updates the currently active UserConfig in memory. If the given UserConfig is nil, then just empty everything out and clear the `current_user` field. Note that we never actually overwrite users.<username>, we just write it if it doesn't already exist, and we update the `current_user` pointer.
func (*JSONConfigFile) SwitchUser ¶
func (f *JSONConfigFile) SwitchUser(nu NormalizedUsername) error
func (*JSONConfigFile) Write ¶
func (f *JSONConfigFile) Write() error
type JSONFile ¶
type JSONFile struct { Contextified // contains filtered or unexported fields }
func NewJSONFile ¶
func NewJSONFile(g *GlobalContext, filename, which string) *JSONFile
func (*JSONFile) GetWrapper ¶
type JSONLocalDb ¶
type JSONLocalDb struct {
// contains filtered or unexported fields
}
func NewJSONLocalDb ¶
func NewJSONLocalDb(e LocalDb) *JSONLocalDb
func (*JSONLocalDb) Close ¶
func (j *JSONLocalDb) Close() error
func (*JSONLocalDb) Delete ¶
func (j *JSONLocalDb) Delete(id DbKey) error
func (*JSONLocalDb) ForceOpen ¶
func (j *JSONLocalDb) ForceOpen() error
func (*JSONLocalDb) GetInto ¶
func (j *JSONLocalDb) GetInto(obj interface{}, id DbKey) (found bool, err error)
func (*JSONLocalDb) Nuke ¶
func (j *JSONLocalDb) Nuke() (string, error)
func (*JSONLocalDb) Open ¶
func (j *JSONLocalDb) Open() error
type JSONPayload ¶
type JSONPayload map[string]interface{}
type Kex2Secret ¶
type Kex2Secret struct {
// contains filtered or unexported fields
}
func NewKex2Secret ¶
func NewKex2Secret() (*Kex2Secret, error)
func NewKex2SecretFromPhrase ¶
func NewKex2SecretFromPhrase(phrase string) (*Kex2Secret, error)
func (*Kex2Secret) Phrase ¶
func (s *Kex2Secret) Phrase() string
func (*Kex2Secret) Secret ¶
func (s *Kex2Secret) Secret() kex2.Secret
type KexRouter ¶
type KexRouter struct {
Contextified
}
KexRouter implements the kex2.MessageRouter interface.
func NewKexRouter ¶
func NewKexRouter(g *GlobalContext) *KexRouter
NewKexRouter creates a contextified KexRouter.
type KeyCannotDecryptError ¶
type KeyCannotDecryptError struct{}
func (KeyCannotDecryptError) Error ¶
func (k KeyCannotDecryptError) Error() string
type KeyCannotEncryptError ¶
type KeyCannotEncryptError struct{}
func (KeyCannotEncryptError) Error ¶
func (k KeyCannotEncryptError) Error() string
type KeyCannotSignError ¶
type KeyCannotSignError struct{}
func (KeyCannotSignError) Error ¶
func (s KeyCannotSignError) Error() string
type KeyCannotVerifyError ¶
type KeyCannotVerifyError struct{}
func (KeyCannotVerifyError) Error ¶
func (k KeyCannotVerifyError) Error() string
type KeyExistsError ¶
type KeyExistsError struct {
Key *PGPFingerprint
}
func (KeyExistsError) Error ¶
func (k KeyExistsError) Error() string
func (KeyExistsError) ToStatus ¶
func (c KeyExistsError) ToStatus() (s keybase1.Status)
type KeyExpiredError ¶
type KeyExpiredError struct {
// contains filtered or unexported fields
}
func (KeyExpiredError) Error ¶
func (r KeyExpiredError) Error() string
type KeyFamily ¶
type KeyFamily struct { AllKIDs map[keybase1.KID]bool // PGP keys have a permissively merged version and individual versions by // hash. See the comment in PGPKeySet.addKey, above, for details. PGPKeySets map[keybase1.KID]*PGPKeySet SingleKeys map[keybase1.KID]GenericKey // Currently just NaCl keys BundlesForTesting []string Contextified // contains filtered or unexported fields }
Once the client downloads a RawKeyFamily, it converts it into a KeyFamily, which has some additional information about Fingerprints and PGP keys
func ParseKeyFamily ¶
ParseKeyFamily takes as input a dictionary from a JSON file and returns a parsed version for manipulation in the program.
func (*KeyFamily) LocalDelegate ¶
func (kf *KeyFamily) LocalDelegate(key GenericKey) (err error)
LocalDelegate performs a local key delegation, without the server's permissions. We'll need to do this when a key is locally generated.
type KeyFamilyError ¶
type KeyFamilyError struct {
Msg string
}
func (KeyFamilyError) Error ¶
func (e KeyFamilyError) Error() string
type KeyGenError ¶
type KeyGenError struct {
Msg string
}
func (KeyGenError) Error ¶
func (e KeyGenError) Error() string
func (KeyGenError) ToStatus ¶
func (e KeyGenError) ToStatus() (s keybase1.Status)
type KeyRevokedError ¶
type KeyRevokedError struct {
// contains filtered or unexported fields
}
func (KeyRevokedError) Error ¶
func (r KeyRevokedError) Error() string
type KeySection ¶
type KeyUnimplementedError ¶
type KeyUnimplementedError struct{}
func (KeyUnimplementedError) Error ¶
func (k KeyUnimplementedError) Error() string
type KeyUnlocker ¶
type KeyUnlocker struct { Tries int Reason string KeyDesc string Which string UseSecretStore bool UI SecretUI Unlocker func(pw string, storeSecret bool) (ret GenericKey, err error) }
func (KeyUnlocker) Run ¶
func (arg KeyUnlocker) Run() (ret GenericKey, err error)
type KeyVersionError ¶
type KeyVersionError struct{}
func (KeyVersionError) Error ¶
func (k KeyVersionError) Error() string
type KeybasePacket ¶
type KeybasePacket struct { Body interface{} `codec:"body"` Hash *KeybasePacketHash `codec:"hash,omitempty"` Tag int `codec:"tag"` Version int `codec:"version"` }
func DecodeArmoredPacket ¶
func DecodeArmoredPacket(s string) (*KeybasePacket, error)
func DecodePacket ¶
func DecodePacket(data []byte) (ret *KeybasePacket, err error)
func (*KeybasePacket) ArmoredEncode ¶
func (p *KeybasePacket) ArmoredEncode() (ret string, err error)
func (*KeybasePacket) Encode ¶
func (p *KeybasePacket) Encode() ([]byte, error)
func (*KeybasePacket) HashMe ¶
func (p *KeybasePacket) HashMe() error
func (KeybasePacket) ToNaclSigInfo ¶
func (p KeybasePacket) ToNaclSigInfo() (*NaclSigInfo, error)
func (KeybasePacket) ToSKB ¶
func (p KeybasePacket) ToSKB() (*SKB, error)
type KeybasePacketHash ¶
type KeybasePackets ¶
type KeybasePackets []*KeybasePacket
func DecodePacketsUnchecked ¶
func DecodePacketsUnchecked(reader io.Reader) (ret KeybasePackets, err error)
DecodePacketsUnchecked decodes an array of packets from `reader`. It does *not* check that the stream was canonical msgpack.
func (KeybasePackets) Encode ¶
func (p KeybasePackets) Encode() ([]byte, error)
func (KeybasePackets) ToListOfSKBs ¶
func (p KeybasePackets) ToListOfSKBs() ([]*SKB, error)
type KeybaseTime ¶
We have two notions of time we can use -- standard UTC which might be screwy (skewy) based upon local clock problems; or MerkleRoot seqno, which is totally ordered and all clients and server ought to agree on it. The issue is that we're not uniformly signing Merkle roots into signatures, especially those generated on the Web site.
func NowAsKeybaseTime ¶
func NowAsKeybaseTime(seqno int) *KeybaseTime
NowAsKeybaseTime makes a representation of now. IF we don't know the MerkleTree chain seqno, just use 0
func TclToKeybaseTime ¶
func TclToKeybaseTime(tcl TypedChainLink) *KeybaseTime
TclToKeybaseTime turns a TypedChainLink into a KeybaseTime tuple, looking inside the chainlink for the Unix wallclock and the global MerkleChain seqno.
type KeyringFile ¶
type KeyringFile struct { Entities openpgp.EntityList Contextified // contains filtered or unexported fields }
func (KeyringFile) GetFilename ¶
func (k KeyringFile) GetFilename() string
func (*KeyringFile) Index ¶
func (k *KeyringFile) Index() error
func (*KeyringFile) Load ¶
func (k *KeyringFile) Load() error
func (*KeyringFile) LoadAndIndex ¶
func (k *KeyringFile) LoadAndIndex() error
func (KeyringFile) Save ¶
func (k KeyringFile) Save() error
type Keyrings ¶
type Keyrings struct {
Contextified
}
func NewKeyrings ¶
func NewKeyrings(g *GlobalContext) *Keyrings
func (*Keyrings) GetSecretKeyAndSKBWithPrompt ¶
func (k *Keyrings) GetSecretKeyAndSKBWithPrompt(lctx LoginContext, ska SecretKeyArg, secretUI SecretUI, reason string) (key GenericKey, skb *SKB, err error)
func (*Keyrings) GetSecretKeyLocked ¶
func (k *Keyrings) GetSecretKeyLocked(lctx LoginContext, ska SecretKeyArg) (ret *SKB, which string, err error)
GetSecretKeyLocked gets a secret key for the current user by first looking for keys synced from the server, and if that fails, tries those in the local Keyring that are also active for the user. In any case, the key will be locked.
func (*Keyrings) GetSecretKeyWithPassphrase ¶
func (k *Keyrings) GetSecretKeyWithPassphrase(lctx LoginContext, me *User, passphrase string, secretStorer SecretStorer) (key GenericKey, err error)
func (*Keyrings) GetSecretKeyWithPrompt ¶
func (k *Keyrings) GetSecretKeyWithPrompt(lctx LoginContext, ska SecretKeyArg, secretUI SecretUI, reason string) (key GenericKey, err error)
TODO: Figure out whether and how to dep-inject the SecretStore.
func (*Keyrings) GetSecretKeyWithStoredSecret ¶
func (k *Keyrings) GetSecretKeyWithStoredSecret(lctx LoginContext, ska SecretKeyArg, me *User, secretRetriever SecretRetriever) (key GenericKey, err error)
func (*Keyrings) GetSecretKeyWithoutPrompt ¶
func (k *Keyrings) GetSecretKeyWithoutPrompt(lctx LoginContext, ska SecretKeyArg) (key GenericKey, err error)
func (*Keyrings) MakeKeyrings ¶
func (k *Keyrings) MakeKeyrings(filenames []string, isPublic bool) []*KeyringFile
type LKSec ¶
type LKSec struct { Contextified // contains filtered or unexported fields }
func NewLKSForEncrypt ¶
NewLKSForEncrypt gets a verified passphrase stream, and returns an LKS that works for encryption.
func NewLKSec ¶
func NewLKSec(pps *PassphraseStream, uid keybase1.UID, gc *GlobalContext) *LKSec
func NewLKSecWithClientHalf ¶
func NewLKSecWithClientHalf(clientHalf []byte, ppgen PassphraseGeneration, uid keybase1.UID, gc *GlobalContext) *LKSec
func NewLKSecWithFullSecret ¶
func NewLKSecWithFullSecret(secret []byte, uid keybase1.UID, gc *GlobalContext) *LKSec
func (*LKSec) Decrypt ¶
func (s *LKSec) Decrypt(lctx LoginContext, src []byte) (res []byte, gen PassphraseGeneration, err error)
func (*LKSec) EncryptClientHalfRecovery ¶
func (s *LKSec) EncryptClientHalfRecovery(key GenericKey) (string, error)
EncryptClientHalfRecovery takes the client half of the LKS secret and ecrypts it for the given key. This is for recovery of passphrases on device recovery operations.
func (*LKSec) GenerateServerHalf ¶
func (LKSec) Generation ¶
func (s LKSec) Generation() PassphraseGeneration
Generation returns the passphrase generation that this local key security object is derived from.
func (*LKSec) GetServerHalf ¶
func (*LKSec) Load ¶
func (s *LKSec) Load(lctx LoginContext) (err error)
func (*LKSec) SetClientHalf ¶
func (*LKSec) SetServerHalf ¶
type LevelDb ¶
type LevelDb struct { sync.Mutex Contextified // contains filtered or unexported fields }
func NewLevelDb ¶
func NewLevelDb(g *GlobalContext) *LevelDb
func (*LevelDb) ForceOpen ¶
ForceOpen opens the leveldb file. This is used in situations where we want to get around the lazy open and make sure we can use it later.
func (*LevelDb) GetFilename ¶
type LinkCheckResult ¶
type LinkCheckResult struct {
// contains filtered or unexported fields
}
func (LinkCheckResult) Export ¶
func (l LinkCheckResult) Export() keybase1.LinkCheckResult
func (LinkCheckResult) ExportToIdentifyRow ¶
func (l LinkCheckResult) ExportToIdentifyRow(i int) keybase1.IdentifyRow
func (LinkCheckResult) GetCached ¶
func (l LinkCheckResult) GetCached() *CheckResult
func (LinkCheckResult) GetDiff ¶
func (l LinkCheckResult) GetDiff() TrackDiff
func (LinkCheckResult) GetError ¶
func (l LinkCheckResult) GetError() error
func (LinkCheckResult) GetHint ¶
func (l LinkCheckResult) GetHint() *SigHint
func (LinkCheckResult) GetPosition ¶
func (l LinkCheckResult) GetPosition() int
func (LinkCheckResult) GetTorWarning ¶
func (l LinkCheckResult) GetTorWarning() bool
type LinkID ¶
type LinkID []byte
func ComputeLinkID ¶
func LinkIDFromHex ¶
func SignJSON ¶
func SignJSON(jw *jsonw.Wrapper, key GenericKey) (out string, id keybase1.SigID, lid LinkID, err error)
SimpleSignJson marshals the given Json structure and then signs it.
func (*LinkID) MarshalJSON ¶
func (*LinkID) UnmarshalJSON ¶
type LoadUserArg ¶
type LoadUserArg struct { UID keybase1.UID Name string // Can also be an assertion like foo@twitter PublicKeyOptional bool NoCacheResult bool // currently ignore Self bool ForceReload bool AllKeys bool LoginContext LoginContext Contextified }
func NewLoadUserArg ¶
func NewLoadUserArg(g *GlobalContext) LoadUserArg
func NewLoadUserByNameArg ¶
func NewLoadUserByNameArg(g *GlobalContext, name string) LoadUserArg
func NewLoadUserForceArg ¶
func NewLoadUserForceArg(g *GlobalContext) LoadUserArg
func NewLoadUserPubOptionalArg ¶
func NewLoadUserPubOptionalArg(g *GlobalContext) LoadUserArg
type LockPIDFile ¶
type LockPIDFile struct {
// contains filtered or unexported fields
}
func NewLockPIDFile ¶
func NewLockPIDFile(s string) *LockPIDFile
func (*LockPIDFile) Close ¶
func (f *LockPIDFile) Close() (err error)
func (*LockPIDFile) Lock ¶
func (f *LockPIDFile) Lock() (err error)
Lock writes the pid to filename after acquiring a lock on the file. When the process exits, the lock will be released.
type LockTable ¶
type LockTable struct {
// contains filtered or unexported fields
}
func NewLockTable ¶
func NewLockTable() *LockTable
type LoggedInError ¶
type LoggedInError struct{}
func (LoggedInError) Error ¶
func (e LoggedInError) Error() string
func (LoggedInError) ToStatus ¶
func (e LoggedInError) ToStatus() (s keybase1.Status)
type LoggedInWrongUserError ¶
type LoggedInWrongUserError struct { ExistingName NormalizedUsername AttemptedName NormalizedUsername }
func (LoggedInWrongUserError) Error ¶
func (e LoggedInWrongUserError) Error() string
func (LoggedInWrongUserError) ToStatus ¶
func (e LoggedInWrongUserError) ToStatus() (s keybase1.Status)
type LoginContext ¶
type LoginContext interface { LoggedInLoad() (bool, error) LoggedInProvisionedLoad() (bool, error) Logout() error CreateStreamCache(tsec *triplesec.Cipher, pps *PassphraseStream) CreateStreamCacheViaStretch(passphrase string) error PassphraseStreamCache() *PassphraseStreamCache ClearStreamCache() SetStreamGeneration(gen PassphraseGeneration, nilPPStreamOK bool) GetStreamGeneration() PassphraseGeneration CreateLoginSessionWithSalt(emailOrUsername string, salt []byte) error LoadLoginSession(emailOrUsername string) error LoginSession() *LoginSession ClearLoginSession() LocalSession() *Session EnsureUsername(username NormalizedUsername) SaveState(sessionID, csrf string, username NormalizedUsername, uid keybase1.UID, deviceID keybase1.DeviceID) error SaveStateTmp(sessionID, csrf string, username NormalizedUsername, uid keybase1.UID, deviceID keybase1.DeviceID) (string, error) Keyring() (*SKBKeyringFile, error) LockedLocalSecretKey(ska SecretKeyArg) (*SKB, error) SecretSyncer() *SecretSyncer RunSecretSyncer(uid keybase1.UID) error CachedSecretKey(ska SecretKeyArg) (GenericKey, error) SetCachedSecretKey(ska SecretKeyArg, key GenericKey) error }
LoginContext is passed to all loginHandler functions. It allows them safe access to various parts of the LoginState during the login process.
type LoginRequiredError ¶
type LoginRequiredError struct {
Context string
}
func (LoginRequiredError) Error ¶
func (e LoginRequiredError) Error() string
func (LoginRequiredError) ToStatus ¶
func (u LoginRequiredError) ToStatus() (s keybase1.Status)
type LoginSession ¶
type LoginSession struct { Contextified // contains filtered or unexported fields }
func NewLoginSession ¶
func NewLoginSession(emailOrUsername string, g *GlobalContext) *LoginSession
func NewLoginSessionWithSalt ¶
func NewLoginSessionWithSalt(emailOrUsername string, salt []byte, g *GlobalContext) *LoginSession
Upon signup, a login session is created with a generated salt.
func (*LoginSession) Clear ¶
func (s *LoginSession) Clear() error
func (*LoginSession) Dump ¶
func (s *LoginSession) Dump()
func (*LoginSession) ExistsFor ¶
func (s *LoginSession) ExistsFor(emailOrUsername string) bool
func (*LoginSession) Load ¶
func (s *LoginSession) Load() error
func (*LoginSession) Salt ¶
func (s *LoginSession) Salt() ([]byte, error)
func (*LoginSession) Session ¶
func (s *LoginSession) Session() ([]byte, error)
func (*LoginSession) SessionEncoded ¶
func (s *LoginSession) SessionEncoded() (string, error)
type LoginSessionNotFound ¶
type LoginSessionNotFound struct {
SessionID int
}
func (LoginSessionNotFound) Error ¶
func (e LoginSessionNotFound) Error() string
type LoginState ¶
type LoginState struct { Contextified // contains filtered or unexported fields }
LoginState controls the state of the current user's login session and associated variables. It also serializes access to the various Login functions and requests for the Account object.
func NewLoginState ¶
func NewLoginState(g *GlobalContext) *LoginState
NewLoginState creates a LoginState and starts the request handler goroutine.
func (*LoginState) Account ¶
func (s *LoginState) Account(h acctHandler, name string) error
Account is a convenience function to allow access to LoginState's Account object. For example:
e.G().LoginState().Account(func (a *Account) { skb = a.LockedLocalSecretKey(ska) }, "LockedLocalSecretKey")
func (*LoginState) AccountDump ¶
func (s *LoginState) AccountDump()
func (*LoginState) ExternalFunc ¶
func (s *LoginState) ExternalFunc(f loginHandler, name string) error
ExternalFunc is for having the LoginState handler call a function outside of LoginState. The current use case is for signup, so that no logins/logouts happen while a signup is happening.
func (*LoginState) GetPassphraseStream ¶
func (s *LoginState) GetPassphraseStream(ui SecretUI) (pps *PassphraseStream, err error)
GetPassphraseStream either returns a cached, verified passphrase stream (maybe from a previous login) or generates a new one via Login. It will return the current Passphrase stream on success or an error on failure.
func (*LoginState) GetPassphraseStreamForUser ¶
func (s *LoginState) GetPassphraseStreamForUser(ui SecretUI, username string) (pps *PassphraseStream, err error)
GetPassphraseStreamForUser either returns a cached, verified passphrase stream (maybe from a previous login) or generates a new one via Login. It will return the current Passphrase stream on success or an error on failure.
func (*LoginState) GetVerifiedTriplesec ¶
func (s *LoginState) GetVerifiedTriplesec(ui SecretUI) (ret *triplesec.Cipher, gen PassphraseGeneration, err error)
GetVerifiedTripleSec either returns a cached, verified Triplesec or generates a new one that's verified via Login.
func (*LoginState) Keyring ¶
func (s *LoginState) Keyring(h func(*SKBKeyringFile), name string) error
func (*LoginState) LocalSession ¶
func (s *LoginState) LocalSession(h func(*Session), name string) error
func (*LoginState) LoggedIn ¶
func (s *LoginState) LoggedIn() bool
func (*LoginState) LoggedInLoad ¶
func (s *LoginState) LoggedInLoad() (lin bool, err error)
func (*LoginState) LoggedInProvisionedLoad ¶
func (s *LoginState) LoggedInProvisionedLoad() (lin bool, err error)
func (*LoginState) LoginSession ¶
func (s *LoginState) LoginSession(h func(*LoginSession), name string) error
func (*LoginState) LoginWithKey ¶
func (s *LoginState) LoginWithKey(lctx LoginContext, user *User, key GenericKey, after afterFn) (err error)
func (*LoginState) LoginWithPassphrase ¶
func (s *LoginState) LoginWithPassphrase(username, passphrase string, storeSecret bool, after afterFn) (err error)
func (*LoginState) LoginWithPrompt ¶
func (s *LoginState) LoginWithPrompt(username string, loginUI LoginUI, secretUI SecretUI, after afterFn) (err error)
func (*LoginState) LoginWithStoredSecret ¶
func (s *LoginState) LoginWithStoredSecret(username string, after afterFn) (err error)
func (*LoginState) Logout ¶
func (s *LoginState) Logout() error
func (*LoginState) PassphraseStream ¶
func (s *LoginState) PassphraseStream() (*PassphraseStream, error)
func (*LoginState) PassphraseStreamCache ¶
func (s *LoginState) PassphraseStreamCache(h func(*PassphraseStreamCache), name string) error
func (*LoginState) PassphraseStreamGeneration ¶
func (s *LoginState) PassphraseStreamGeneration() (PassphraseGeneration, error)
func (*LoginState) RunSecretSyncer ¶
func (s *LoginState) RunSecretSyncer(uid keybase1.UID) error
func (*LoginState) SecretSyncer ¶
func (s *LoginState) SecretSyncer(h func(*SecretSyncer), name string) error
func (*LoginState) Shutdown ¶
func (s *LoginState) Shutdown() error
func (*LoginState) VerifyPlaintextPassphrase ¶
func (s *LoginState) VerifyPlaintextPassphrase(pp string) (ppStream *PassphraseStream, err error)
VerifyPlaintextPassphrase verifies that the supplied plaintext passphrase is indeed the correct passphrase for the logged in user. This is accomplished via a login request. The side effect will be that we'll retrieve the correct generation number of the current passphrase from the server.
type LoginUI ¶
type LoginUI interface { keybase1.LoginUiInterface }
type LogoutError ¶
type LogoutError struct{}
func (LogoutError) Error ¶
func (e LogoutError) Error() string
type LoopbackAddr ¶
type LoopbackAddr struct{}
LoopbackAddr is an address class that implement the net.Addr interface for loopback devices
func (LoopbackAddr) Network ¶
func (la LoopbackAddr) Network() (s string)
Network returns the name of the network
func (LoopbackAddr) String ¶
func (la LoopbackAddr) String() (s string)
String returns the string form of address
type LoopbackConn ¶
type LoopbackConn struct {
// contains filtered or unexported fields
}
LoopbackConn implments the net.Conn interface but is used to loopback from a process to itself. It is goroutine safe.
func (*LoopbackConn) Close ¶
func (lc *LoopbackConn) Close() (err error)
Close closes the connection. Any blocked Read or Write operations will be unblocked and return errors.
func (*LoopbackConn) LocalAddr ¶
func (lc *LoopbackConn) LocalAddr() (addr net.Addr)
LocalAddr returns the local network address.
func (*LoopbackConn) Read ¶
func (lc *LoopbackConn) Read(b []byte) (n int, err error)
Read reads data from the connection.
func (*LoopbackConn) RemoteAddr ¶
func (lc *LoopbackConn) RemoteAddr() (addr net.Addr)
RemoteAddr returns the remote network address.
func (*LoopbackConn) SetDeadline ¶
func (lc *LoopbackConn) SetDeadline(t time.Time) (err error)
SetDeadline sets the read and write deadlines associated with the connection. It is equivalent to calling both SetReadDeadline and SetWriteDeadline.
A deadline is an absolute time after which I/O operations fail with a timeout (see type Error) instead of blocking. The deadline applies to all future I/O, not just the immediately following call to Read or Write.
An idle timeout can be implemented by repeatedly extending the deadline after successful Read or Write calls.
A zero value for t means I/O operations will not time out.
func (*LoopbackConn) SetReadDeadline ¶
func (lc *LoopbackConn) SetReadDeadline(t time.Time) (err error)
SetReadDeadline sets the deadline for future Read calls. A zero value for t means Read will not time out.
func (*LoopbackConn) SetWriteDeadline ¶
func (lc *LoopbackConn) SetWriteDeadline(t time.Time) (err error)
SetWriteDeadline sets the deadline for future Write calls. Even if write times out, it may return n > 0, indicating that some of the data was successfully written. A zero value for t means Write will not time out.
type LoopbackListener ¶
type LoopbackListener struct {
// contains filtered or unexported fields
}
LoopbackListener is a listener that creates new loopback connections. It is goroutine safe.
func NewLoopbackListener ¶
func NewLoopbackListener() *LoopbackListener
NewLoopbackListener creates a new Loopback listener
func (*LoopbackListener) Accept ¶
func (ll *LoopbackListener) Accept() (ret net.Conn, err error)
Accept waits for and returns the next connection to the listener.
func (*LoopbackListener) Addr ¶
func (ll *LoopbackListener) Addr() (addr net.Addr)
Addr returns the listener's network address.
func (*LoopbackListener) Close ¶
func (ll *LoopbackListener) Close() (err error)
Close closes the listener. Any blocked Accept operations will be unblocked and return errors
type MerkleClashError ¶
type MerkleClashError struct {
// contains filtered or unexported fields
}
func (MerkleClashError) Error ¶
func (m MerkleClashError) Error() string
type MerkleClient ¶
type MerkleClient struct { Contextified // protects whole object sync.RWMutex // contains filtered or unexported fields }
func NewMerkleClient ¶
func NewMerkleClient(g *GlobalContext) *MerkleClient
func (*MerkleClient) Init ¶
func (mc *MerkleClient) Init() error
func (*MerkleClient) LastRootToSigJSON ¶
func (mc *MerkleClient) LastRootToSigJSON() (ret *jsonw.Wrapper, err error)
func (*MerkleClient) LastSeqno ¶
func (mc *MerkleClient) LastSeqno() Seqno
func (*MerkleClient) LoadRoot ¶
func (mc *MerkleClient) LoadRoot() error
func (*MerkleClient) LookupPath ¶
func (mc *MerkleClient) LookupPath(q HTTPArgs) (vp *VerificationPath, err error)
func (*MerkleClient) LookupUser ¶
func (mc *MerkleClient) LookupUser(q HTTPArgs) (u *MerkleUserLeaf, err error)
func (*MerkleClient) VerifyRoot ¶
func (mc *MerkleClient) VerifyRoot(root *MerkleRoot) error
type MerkleClientError ¶
type MerkleClientError struct {
// contains filtered or unexported fields
}
func (MerkleClientError) Error ¶
func (m MerkleClientError) Error() string
type MerkleNotFoundError ¶
type MerkleNotFoundError struct {
// contains filtered or unexported fields
}
func (MerkleNotFoundError) Error ¶
func (m MerkleNotFoundError) Error() string
type MerkleRoot ¶
type MerkleRoot struct { Contextified // contains filtered or unexported fields }
func NewMerkleRootFromJSON ¶
func NewMerkleRootFromJSON(jw *jsonw.Wrapper, g *GlobalContext) (ret *MerkleRoot, err error)
func (*MerkleRoot) Store ¶
func (mr *MerkleRoot) Store() error
func (*MerkleRoot) ToJSON ¶
func (mr *MerkleRoot) ToJSON() (jw *jsonw.Wrapper)
func (*MerkleRoot) ToSigJSON ¶
func (mr *MerkleRoot) ToSigJSON() (ret *jsonw.Wrapper)
type MerkleTriple ¶
type MerkleTriple struct { Seqno Seqno `json:"seqno"` LinkID LinkID `json:"id"` SigID keybase1.SigID `json:"sigid,omitempty"` }
func GetMerkleTriple ¶
func GetMerkleTriple(jw *jsonw.Wrapper) (ret *MerkleTriple, err error)
func (MerkleTriple) Less ¶
func (mt1 MerkleTriple) Less(mt2 MerkleTriple) bool
type MerkleUserLeaf ¶
type MerkleUserLeaf struct {
// contains filtered or unexported fields
}
type MissingDelegationTypeError ¶
type MissingDelegationTypeError struct{}
func (MissingDelegationTypeError) Error ¶
func (e MissingDelegationTypeError) Error() string
type NaclDHKeyPair ¶
type NaclDHKeyPair struct { Public NaclDHKeyPublic Private *NaclDHKeyPrivate }
func GenerateNaclDHKeyPair ¶
func GenerateNaclDHKeyPair() (NaclDHKeyPair, error)
func ImportNaclDHKeyPairFromBytes ¶
func ImportNaclDHKeyPairFromBytes(pub []byte, priv []byte) (ret NaclDHKeyPair, err error)
func ImportNaclDHKeyPairFromHex ¶
func ImportNaclDHKeyPairFromHex(s string) (ret NaclDHKeyPair, err error)
func MakeNaclDHKeyPairFromSecret ¶
func MakeNaclDHKeyPairFromSecret(secret [NaclDHKeySecretSize]byte) (NaclDHKeyPair, error)
MakeNaclDHKeyPairFromSecret makes a DH key pair given a secret. Of course, the security of depends entirely on the randomness of the bytes in the secret.
func (NaclDHKeyPair) CanDecrypt ¶
func (k NaclDHKeyPair) CanDecrypt() bool
CanDecrypt returns true if there's a private key available
func (NaclDHKeyPair) CanEncrypt ¶
func (k NaclDHKeyPair) CanEncrypt() bool
CanEncrypt always returns true for an encryption key pair.
func (NaclDHKeyPair) CanSign ¶
func (k NaclDHKeyPair) CanSign() bool
func (NaclDHKeyPair) CheckSecretKey ¶
func (k NaclDHKeyPair) CheckSecretKey() error
func (NaclDHKeyPair) Decrypt ¶
func (k NaclDHKeyPair) Decrypt(nei *NaclEncryptionInfo) (plaintext []byte, sender keybase1.KID, err error)
Decrypt a NaclEncryptionInfo packet, and on success return the plaintext and the KID of the sender (which might be an ephemeral key).
func (NaclDHKeyPair) DecryptFromString ¶
func (k NaclDHKeyPair) DecryptFromString(ciphertext string) (msg []byte, sender keybase1.KID, err error)
DecryptFromString decrypts the output of EncryptToString above, and returns the KID of the other end.
func (NaclDHKeyPair) Encode ¶
func (k NaclDHKeyPair) Encode() (string, error)
func (NaclDHKeyPair) Encrypt ¶
func (k NaclDHKeyPair) Encrypt(msg []byte, sender *NaclDHKeyPair) (*NaclEncryptionInfo, error)
Encrypt a message for the given sender. If sender is nil, an ephemeral keypair will be invented
func (NaclDHKeyPair) EncryptToString ¶
func (k NaclDHKeyPair) EncryptToString(plaintext []byte, sender GenericKey) (string, error)
EncryptToString encrypts the plaintext using DiffieHelman; the this object is the receiver, and the passed sender is optional. If not provided, we'll make up an ephemeral key.
func (NaclDHKeyPair) GetAlgoType ¶
func (k NaclDHKeyPair) GetAlgoType() AlgoType
func (NaclDHKeyPair) GetFingerprintP ¶
func (k NaclDHKeyPair) GetFingerprintP() *PGPFingerprint
func (NaclDHKeyPair) GetKID ¶
func (k NaclDHKeyPair) GetKID() keybase1.KID
func (NaclDHKeyPair) HasSecretKey ¶
func (k NaclDHKeyPair) HasSecretKey() bool
func (NaclDHKeyPair) SignToString ¶
func (NaclDHKeyPair) ToServerSKB ¶
func (k NaclDHKeyPair) ToServerSKB(gc *GlobalContext, t *triplesec.Cipher, gen PassphraseGeneration) (*SKB, error)
func (NaclDHKeyPair) ToShortIDString ¶
func (k NaclDHKeyPair) ToShortIDString() string
func (NaclDHKeyPair) VerboseDescription ¶
func (k NaclDHKeyPair) VerboseDescription() string
func (NaclDHKeyPair) VerifyString ¶
func (NaclDHKeyPair) VerifyStringAndExtract ¶
type NaclDHKeyPrivate ¶
type NaclDHKeyPrivate [NaclDHKeysize]byte
type NaclDHKeyPublic ¶
type NaclDHKeyPublic [NaclDHKeysize]byte
func (NaclDHKeyPublic) GetKID ¶
func (k NaclDHKeyPublic) GetKID() keybase1.KID
type NaclEncryptionInfo ¶
type NaclEncryptionInfo struct { Ciphertext []byte `codec:"ciphertext"` EncryptionType int `codec:"enc_type"` Nonce []byte `codec:"nonce"` Receiver []byte `codec:"receiver_key"` Sender []byte `codec:"sender_key"` }
func (*NaclEncryptionInfo) ToPacket ¶
func (k *NaclEncryptionInfo) ToPacket() (ret *KeybasePacket, err error)
ToPacket implements the Packetable interface.
type NaclGenerator ¶
type NaclGenerator func() (NaclKeyPair, error)
type NaclKeyGen ¶
type NaclKeyGen struct {
// contains filtered or unexported fields
}
func NewNaclKeyGen ¶
func NewNaclKeyGen(arg NaclKeyGenArg) *NaclKeyGen
func (*NaclKeyGen) Generate ¶
func (g *NaclKeyGen) Generate() (err error)
func (*NaclKeyGen) GetKeyPair ¶
func (g *NaclKeyGen) GetKeyPair() NaclKeyPair
func (*NaclKeyGen) Push ¶
func (g *NaclKeyGen) Push(lctx LoginContext, aggregated bool) (d Delegator, err error)
func (*NaclKeyGen) SaveLKS ¶
func (g *NaclKeyGen) SaveLKS(lks *LKSec, lctx LoginContext) error
func (*NaclKeyGen) UpdateArg ¶
func (g *NaclKeyGen) UpdateArg(signer GenericKey, eldestKID keybase1.KID, sibkey bool, user *User)
type NaclKeyGenArg ¶
type NaclKeyGenArg struct { Signer GenericKey // who is going to sign us into the Chain ExpiresIn int Generator NaclGenerator Me *User Sibkey bool ExpireIn int // how long it lasts EldestKeyID keybase1.KID // the eldest KID for this epoch Device *Device RevSig string // optional reverse sig. set to nil for autogenerate. }
type NaclKeyPair ¶
type NaclKeyPair interface { GenericKey }
type NaclSigInfo ¶
type NaclSigInfo struct { Kid []byte `codec:"key"` Payload []byte `codec:"payload,omitempty"` Sig NaclSignature `codec:"sig"` SigType int `codec:"sig_type"` HashType int `codec:"hash_type"` Detached bool `codec:"detached"` }
func (*NaclSigInfo) ArmoredEncode ¶
func (s *NaclSigInfo) ArmoredEncode() (ret string, err error)
func (*NaclSigInfo) ToPacket ¶
func (s *NaclSigInfo) ToPacket() (ret *KeybasePacket, err error)
func (NaclSigInfo) Verify ¶
func (s NaclSigInfo) Verify() (error, *NaclSigningKeyPublic)
type NaclSignature ¶
type NaclSignature [ed25519.SignatureSize]byte
type NaclSigningKeyPair ¶
type NaclSigningKeyPair struct { Public NaclSigningKeyPublic Private *NaclSigningKeyPrivate }
func GenerateNaclSigningKeyPair ¶
func GenerateNaclSigningKeyPair() (NaclSigningKeyPair, error)
func ImportNaclSigningKeyPairFromBytes ¶
func ImportNaclSigningKeyPairFromBytes(pub []byte, priv []byte) (ret NaclSigningKeyPair, err error)
func ImportNaclSigningKeyPairFromHex ¶
func ImportNaclSigningKeyPairFromHex(s string) (ret NaclSigningKeyPair, err error)
func MakeNaclSigningKeyPairFromSecret ¶
func MakeNaclSigningKeyPairFromSecret(secret [NaclSigningKeySecretSize]byte) (NaclSigningKeyPair, error)
MakeNaclSigningKeyPairFromSecret makes a signing key pair given a secret. Of course, the security of depends entirely on the randomness of the bytes in the secret.
func (NaclSigningKeyPair) CanDecrypt ¶
func (k NaclSigningKeyPair) CanDecrypt() bool
CanDecrypt always returns false for a signing key pair.
func (NaclSigningKeyPair) CanEncrypt ¶
func (k NaclSigningKeyPair) CanEncrypt() bool
CanEncrypt always returns false for a signing key pair.
func (NaclSigningKeyPair) CanSign ¶
func (k NaclSigningKeyPair) CanSign() bool
func (NaclSigningKeyPair) CheckSecretKey ¶
func (k NaclSigningKeyPair) CheckSecretKey() error
func (NaclSigningKeyPair) DecryptFromString ¶
func (k NaclSigningKeyPair) DecryptFromString(ciphertext string) (msg []byte, sender keybase1.KID, err error)
DecryptFromString fails for this type of key.
func (NaclSigningKeyPair) Encode ¶
func (k NaclSigningKeyPair) Encode() (string, error)
func (NaclSigningKeyPair) EncryptToString ¶
func (k NaclSigningKeyPair) EncryptToString(plaintext []byte, sender GenericKey) (ciphertext string, err error)
EncryptToString fails for this type of key.
func (NaclSigningKeyPair) GetAlgoType ¶
func (k NaclSigningKeyPair) GetAlgoType() AlgoType
func (NaclSigningKeyPair) GetFingerprintP ¶
func (k NaclSigningKeyPair) GetFingerprintP() *PGPFingerprint
func (NaclSigningKeyPair) GetKID ¶
func (k NaclSigningKeyPair) GetKID() (ret keybase1.KID)
func (NaclSigningKeyPair) HasSecretKey ¶
func (k NaclSigningKeyPair) HasSecretKey() bool
func (NaclSigningKeyPair) Sign ¶
func (k NaclSigningKeyPair) Sign(msg []byte) (ret *NaclSigInfo, err error)
func (NaclSigningKeyPair) SignToString ¶
func (NaclSigningKeyPair) ToServerSKB ¶
func (k NaclSigningKeyPair) ToServerSKB(gc *GlobalContext, t *triplesec.Cipher, gen PassphraseGeneration) (*SKB, error)
NaCl keys are never wrapped for the server.
func (NaclSigningKeyPair) ToShortIDString ¶
func (k NaclSigningKeyPair) ToShortIDString() string
func (NaclSigningKeyPair) VerboseDescription ¶
func (k NaclSigningKeyPair) VerboseDescription() string
func (NaclSigningKeyPair) VerifyString ¶
func (NaclSigningKeyPair) VerifyStringAndExtract ¶
type NaclSigningKeyPrivate ¶
type NaclSigningKeyPrivate [ed25519.PrivateKeySize]byte
func (NaclSigningKeyPrivate) Sign ¶
func (k NaclSigningKeyPrivate) Sign(msg []byte) *NaclSignature
type NaclSigningKeyPublic ¶
type NaclSigningKeyPublic [ed25519.PublicKeySize]byte
func KIDToNaclSigningKeyPublic ¶
func KIDToNaclSigningKeyPublic(bk []byte) *NaclSigningKeyPublic
func (NaclSigningKeyPublic) GetKID ¶
func (k NaclSigningKeyPublic) GetKID() keybase1.KID
func (NaclSigningKeyPublic) Verify ¶
func (k NaclSigningKeyPublic) Verify(msg []byte, sig *NaclSignature) bool
type NeedInputError ¶
type NeedInputError struct {
// contains filtered or unexported fields
}
func (NeedInputError) Error ¶
func (e NeedInputError) Error() string
type NegBoolFunc ¶
type NegBoolFunc struct {
// contains filtered or unexported fields
}
type NoActiveKeyError ¶
type NoActiveKeyError struct {
Username string
}
func (NoActiveKeyError) Error ¶
func (e NoActiveKeyError) Error() string
func (NoActiveKeyError) ToStatus ¶
func (c NoActiveKeyError) ToStatus() (s keybase1.Status)
type NoConfigFile ¶
type NoConfigFile struct{}
func (NoConfigFile) Error ¶
func (n NoConfigFile) Error() string
type NoConfigWriterError ¶
type NoConfigWriterError struct{}
func (NoConfigWriterError) Error ¶
func (e NoConfigWriterError) Error() string
type NoDeviceError ¶
type NoDeviceError struct {
Reason string
}
func (NoDeviceError) Error ¶
func (e NoDeviceError) Error() string
func (NoDeviceError) ToStatus ¶
func (e NoDeviceError) ToStatus() keybase1.Status
type NoEldestKeyError ¶
type NoEldestKeyError struct { }
func (NoEldestKeyError) Error ¶
func (e NoEldestKeyError) Error() string
type NoKeyError ¶
type NoKeyError struct {
Msg string
}
func (NoKeyError) Error ¶
func (u NoKeyError) Error() string
func (NoKeyError) ToStatus ¶
func (e NoKeyError) ToStatus() (s keybase1.Status)
type NoKeyringsError ¶
type NoKeyringsError struct{}
func (NoKeyringsError) Error ¶
func (k NoKeyringsError) Error() string
type NoPaperKeysError ¶
type NoPaperKeysError struct { }
func (NoPaperKeysError) Error ¶
func (u NoPaperKeysError) Error() string
type NoSecretKeyError ¶
type NoSecretKeyError struct { }
func (NoSecretKeyError) Error ¶
func (u NoSecretKeyError) Error() string
func (NoSecretKeyError) ToStatus ¶
func (u NoSecretKeyError) ToStatus() (s keybase1.Status)
type NoSelectedKeyError ¶
type NoSelectedKeyError struct {
// contains filtered or unexported fields
}
func (NoSelectedKeyError) Error ¶
func (n NoSelectedKeyError) Error() string
type NoSessionWriterError ¶
type NoSessionWriterError struct{}
func (NoSessionWriterError) Error ¶
func (e NoSessionWriterError) Error() string
type NoSigChainError ¶
type NoSigChainError struct{}
func (NoSigChainError) Error ¶
func (e NoSigChainError) Error() string
type NoUserConfigError ¶
type NoUserConfigError struct{}
func (NoUserConfigError) Error ¶
func (n NoUserConfigError) Error() string
type NoUsernameError ¶
type NoUsernameError struct{}
func (NoUsernameError) Error ¶
func (e NoUsernameError) Error() string
type NodeHash ¶
type NodeHash interface { Check(s string) bool // Check if the node hashes to this string String() string }
func NodeHashFromHex ¶
type NodeHashLong ¶
type NodeHashLong [NodeHashLenLong]byte
func (NodeHashLong) Check ¶
func (h1 NodeHashLong) Check(s string) bool
func (NodeHashLong) String ¶
func (h1 NodeHashLong) String() string
type NodeHashShort ¶
type NodeHashShort [NodeHashLenShort]byte
func (NodeHashShort) Check ¶
func (h1 NodeHashShort) Check(s string) bool
func (NodeHashShort) String ¶
func (h1 NodeHashShort) String() string
type NopWriteCloser ¶
NopWriteCloser is like an ioutil.NopCloser, but for an io.Writer. TODO: we have two of these in OpenPGP packages alone. This probably needs to be promoted somewhere more common.
From here:
https://code.google.com/p/go/source/browse/openpgp/write.go?repo=crypto&r=1e7a3e301825bf9cb32e0535f3761d62d2d369d1#364
func (NopWriteCloser) Close ¶
func (c NopWriteCloser) Close() error
type NormalizedUsername ¶
type NormalizedUsername string
NormalizedUsername is a username that has been normalized (toLowered) and therefore will compare correctly against other normalized usernames.
func NewNormalizedUsername ¶
func NewNormalizedUsername(s string) NormalizedUsername
NewNormalizedUsername makes a normalized username out of a non-normalized plain string username
func (NormalizedUsername) Eq ¶
func (n NormalizedUsername) Eq(n2 NormalizedUsername) bool
Eq returns true if the given normalized usernames are equal
func (NormalizedUsername) IsNil ¶
func (n NormalizedUsername) IsNil() bool
IsNil returns true if the username is the empty string
func (NormalizedUsername) String ¶
func (n NormalizedUsername) String() string
String returns the normalized username as a string (in lower case)
type NotConfirmedError ¶
type NotConfirmedError struct{}
func (NotConfirmedError) Error ¶
func (e NotConfirmedError) Error() string
type NotFoundError ¶
type NotFoundError struct {
// contains filtered or unexported fields
}
func (NotFoundError) Error ¶
func (e NotFoundError) Error() string
type NotLatestSubchainError ¶
type NotLatestSubchainError struct {
Msg string
}
func (NotLatestSubchainError) Error ¶
func (e NotLatestSubchainError) Error() string
type NotProvisionedError ¶
type NotProvisionedError struct{}
func (NotProvisionedError) Error ¶
func (e NotProvisionedError) Error() string
type NotifyRouter ¶
type NotifyRouter struct { Contextified // contains filtered or unexported fields }
NotifyRouter routes notifications to the various active RPC connections. It's careful only to route to those who are interested
func NewNotifyRouter ¶
func NewNotifyRouter(g *GlobalContext) *NotifyRouter
NewNotifyRouter makes a new notification router; we should only make one of these per process.
func (*NotifyRouter) AddConnection ¶
func (n *NotifyRouter) AddConnection(xp rpc.Transporter, ch chan error) ConnectionID
AddConnection should be called every time there's a new RPC connection established for this server. The caller should pass in the Transporter and also the channel that will get messages when the chanel closes.
func (*NotifyRouter) HandleFSActivity ¶
func (n *NotifyRouter) HandleFSActivity(activity keybase1.FSNotification)
HandleFSActivity is called for any KBFS notification. It will broadcast the messages to all curious listeners.
func (*NotifyRouter) HandleLogout ¶
func (n *NotifyRouter) HandleLogout()
HandleLogout is called whenever the current user logged out. It will broadcast the message to all connections who care about such a mesasge.
func (*NotifyRouter) HandleUserChanged ¶
func (n *NotifyRouter) HandleUserChanged(uid keybase1.UID)
HandleUserChanged is called whenever we know that a given user has changed (and must be cache-busted). It will broadcast the messages to all curious listeners.
func (*NotifyRouter) SetChannels ¶
func (n *NotifyRouter) SetChannels(i ConnectionID, nc keybase1.NotificationChannels)
SetChannels sets which notification channels are interested for the connection with the given connection ID.
func (*NotifyRouter) Shutdown ¶
func (n *NotifyRouter) Shutdown()
type NullConfiguration ¶
type NullConfiguration struct{}
func (NullConfiguration) GetAPIDump ¶
func (n NullConfiguration) GetAPIDump() (bool, bool)
func (NullConfiguration) GetAPITimeout ¶
func (n NullConfiguration) GetAPITimeout() (time.Duration, bool)
func (NullConfiguration) GetAllUsernames ¶
func (n NullConfiguration) GetAllUsernames() (NormalizedUsername, []NormalizedUsername, error)
func (NullConfiguration) GetAutoFork ¶
func (n NullConfiguration) GetAutoFork() (bool, bool)
func (NullConfiguration) GetBoolAtPath ¶
func (n NullConfiguration) GetBoolAtPath(string) (bool, bool)
func (NullConfiguration) GetBundledCA ¶
func (n NullConfiguration) GetBundledCA(h string) string
func (NullConfiguration) GetConfigFilename ¶
func (n NullConfiguration) GetConfigFilename() string
func (NullConfiguration) GetDbFilename ¶
func (n NullConfiguration) GetDbFilename() string
func (NullConfiguration) GetDebug ¶
func (n NullConfiguration) GetDebug() (bool, bool)
func (NullConfiguration) GetDeviceID ¶
func (n NullConfiguration) GetDeviceID() keybase1.DeviceID
func (NullConfiguration) GetEmail ¶
func (n NullConfiguration) GetEmail() string
func (NullConfiguration) GetGString ¶
func (n NullConfiguration) GetGString(string) string
func (NullConfiguration) GetGpg ¶
func (n NullConfiguration) GetGpg() string
func (NullConfiguration) GetGpgHome ¶
func (n NullConfiguration) GetGpgHome() string
func (NullConfiguration) GetGpgOptions ¶
func (n NullConfiguration) GetGpgOptions() []string
func (NullConfiguration) GetHome ¶
func (n NullConfiguration) GetHome() string
func (NullConfiguration) GetIntAtPath ¶
func (n NullConfiguration) GetIntAtPath(string) (int, bool)
func (NullConfiguration) GetLocalRPCDebug ¶
func (n NullConfiguration) GetLocalRPCDebug() string
func (NullConfiguration) GetLogFile ¶
func (n NullConfiguration) GetLogFile() string
func (NullConfiguration) GetLogFormat ¶
func (n NullConfiguration) GetLogFormat() string
func (NullConfiguration) GetMerkleKIDs ¶
func (n NullConfiguration) GetMerkleKIDs() []string
func (NullConfiguration) GetNoAutoFork ¶
func (n NullConfiguration) GetNoAutoFork() (bool, bool)
func (NullConfiguration) GetNoPinentry ¶
func (n NullConfiguration) GetNoPinentry() (bool, bool)
func (NullConfiguration) GetNullAtPath ¶
func (n NullConfiguration) GetNullAtPath(string) bool
func (NullConfiguration) GetPGPFingerprint ¶
func (n NullConfiguration) GetPGPFingerprint() *PGPFingerprint
func (NullConfiguration) GetPidFile ¶
func (n NullConfiguration) GetPidFile() string
func (NullConfiguration) GetPinentry ¶
func (n NullConfiguration) GetPinentry() string
func (NullConfiguration) GetProofCacheLongDur ¶
func (n NullConfiguration) GetProofCacheLongDur() (time.Duration, bool)
func (NullConfiguration) GetProofCacheMediumDur ¶
func (n NullConfiguration) GetProofCacheMediumDur() (time.Duration, bool)
func (NullConfiguration) GetProofCacheShortDur ¶
func (n NullConfiguration) GetProofCacheShortDur() (time.Duration, bool)
func (NullConfiguration) GetProofCacheSize ¶
func (n NullConfiguration) GetProofCacheSize() (int, bool)
func (NullConfiguration) GetProxy ¶
func (n NullConfiguration) GetProxy() string
func (NullConfiguration) GetProxyCACerts ¶
func (n NullConfiguration) GetProxyCACerts() ([]string, error)
func (NullConfiguration) GetRunMode ¶
func (n NullConfiguration) GetRunMode() (RunMode, error)
func (NullConfiguration) GetSalt ¶
func (n NullConfiguration) GetSalt() []byte
func (NullConfiguration) GetScraperTimeout ¶
func (n NullConfiguration) GetScraperTimeout() (time.Duration, bool)
func (NullConfiguration) GetSecretKeyringTemplate ¶
func (n NullConfiguration) GetSecretKeyringTemplate() string
func (NullConfiguration) GetSecurityAccessGroupOverride ¶
func (n NullConfiguration) GetSecurityAccessGroupOverride() (bool, bool)
func (NullConfiguration) GetServerURI ¶
func (n NullConfiguration) GetServerURI() string
func (NullConfiguration) GetSessionFilename ¶
func (n NullConfiguration) GetSessionFilename() string
func (NullConfiguration) GetSocketFile ¶
func (n NullConfiguration) GetSocketFile() string
func (NullConfiguration) GetSplitLogOutput ¶
func (n NullConfiguration) GetSplitLogOutput() (bool, bool)
func (NullConfiguration) GetStandalone ¶
func (n NullConfiguration) GetStandalone() (bool, bool)
func (NullConfiguration) GetString ¶
func (n NullConfiguration) GetString(string) string
func (NullConfiguration) GetStringAtPath ¶
func (n NullConfiguration) GetStringAtPath(string) (string, bool)
func (NullConfiguration) GetTimers ¶
func (n NullConfiguration) GetTimers() string
func (NullConfiguration) GetTorHiddenAddress ¶
func (n NullConfiguration) GetTorHiddenAddress() string
func (NullConfiguration) GetTorMode ¶
func (n NullConfiguration) GetTorMode() (TorMode, error)
func (NullConfiguration) GetTorProxy ¶
func (n NullConfiguration) GetTorProxy() string
func (NullConfiguration) GetUID ¶
func (n NullConfiguration) GetUID() (ret keybase1.UID)
func (NullConfiguration) GetUserCacheMaxAge ¶
func (n NullConfiguration) GetUserCacheMaxAge() (time.Duration, bool)
func (NullConfiguration) GetUserConfig ¶
func (n NullConfiguration) GetUserConfig() (*UserConfig, error)
func (NullConfiguration) GetUserConfigForUsername ¶
func (n NullConfiguration) GetUserConfigForUsername(s NormalizedUsername) (*UserConfig, error)
func (NullConfiguration) GetUsername ¶
func (n NullConfiguration) GetUsername() NormalizedUsername
type PGPFingerprint ¶
type PGPFingerprint [PGPFingerprintLen]byte
func GetPGPFingerprint ¶
func GetPGPFingerprint(w *jsonw.Wrapper) (*PGPFingerprint, error)
func ImportPGPFingerprintSlice ¶
func ImportPGPFingerprintSlice(fp []byte) (ret *PGPFingerprint)
func PGPFingerprintFromHex ¶
func PGPFingerprintFromHex(s string) (*PGPFingerprint, error)
func PGPFingerprintFromHexNoError ¶
func PGPFingerprintFromHexNoError(s string) *PGPFingerprint
func (PGPFingerprint) Eq ¶
func (p PGPFingerprint) Eq(p2 PGPFingerprint) bool
func (PGPFingerprint) GetProofState ¶
func (p PGPFingerprint) GetProofState() keybase1.ProofState
func (PGPFingerprint) LastWriterWins ¶
func (p PGPFingerprint) LastWriterWins() bool
func (PGPFingerprint) String ¶
func (p PGPFingerprint) String() string
func (PGPFingerprint) ToDisplayString ¶
func (p PGPFingerprint) ToDisplayString(verbose bool) string
func (PGPFingerprint) ToIDString ¶
func (p PGPFingerprint) ToIDString() string
func (PGPFingerprint) ToKeyID ¶
func (p PGPFingerprint) ToKeyID() string
func (PGPFingerprint) ToKeyValuePair ¶
func (p PGPFingerprint) ToKeyValuePair() (string, string)
func (PGPFingerprint) ToQuads ¶
func (p PGPFingerprint) ToQuads() string
type PGPGenArg ¶
type PGPGenArg struct { PrimaryBits int SubkeyBits int Ids Identities Config *packet.Config PGPUids []string NoDefPGPUid bool PrimaryLifetime int SubkeyLifetime int }
func ImportKeyGenArg ¶
func ImportKeyGenArg(a keybase1.PGPKeyGenArg) (ret PGPGenArg)
func (*PGPGenArg) AddDefaultUID ¶
func (a *PGPGenArg) AddDefaultUID()
func (*PGPGenArg) CreatePGPIDs ¶
CreateIDs creates identities for KeyGenArg.Ids if none exist. It uses PGPUids to determine the set of Ids. It does not set the default keybase.io uid. AddDefaultUid() does that.
func (PGPGenArg) ExportTo ¶
func (a PGPGenArg) ExportTo(ret *keybase1.PGPKeyGenArg)
func (*PGPGenArg) MakeAllIds ¶
func (*PGPGenArg) PreferredCompression ¶
func (*PGPGenArg) PreferredHash ¶
func (*PGPGenArg) PreferredSymmetric ¶
type PGPKeyBundle ¶
type PGPKeyBundle struct { *openpgp.Entity // We make the (fairly dangerous) assumption that the key will never be // modified. This avoids the issue that encoding an openpgp.Entity is // nondeterministic due to Go's randomized iteration order (so different // exports of the same key may hash differently). // // If you're *sure* that you're creating a PGPKeyBundle from an armored // *public* key, you can prefill this field and Export() will use it. ArmoredPublicKey string }
func GeneratePGPKeyBundle ¶
func GeneratePGPKeyBundle(arg PGPGenArg, logUI LogUI) (*PGPKeyBundle, error)
NewEntity returns an Entity that contains a fresh RSA/RSA keypair with a single identity composed of the given full name, comment and email, any of which may be empty but must not contain any of "()<>\x00". If config is nil, sensible defaults will be used.
Modification of: https://code.google.com/p/go/source/browse/openpgp/keys.go?repo=crypto&r=8fec09c61d5d66f460d227fd1df3473d7e015bc6#456
From golang.com/x/crypto/openpgp/keys.go
func LoadPGPKeyFromLocalDB ¶
func LoadPGPKeyFromLocalDB(k keybase1.KID, g *GlobalContext) (*PGPKeyBundle, error)
func NewPGPKeyBundle ¶
func NewPGPKeyBundle(entity *openpgp.Entity) *PGPKeyBundle
func ReadOneKeyFromBytes ¶
func ReadOneKeyFromBytes(b []byte) (*PGPKeyBundle, error)
func ReadOneKeyFromString ¶
func ReadOneKeyFromString(s string) (*PGPKeyBundle, error)
note: openpgp.ReadArmoredKeyRing only returns the first block. It will never return multiple entities.
func ReadPrivateKeyFromString ¶
func ReadPrivateKeyFromString(s string) (*PGPKeyBundle, error)
ReadPrivateKeyFromString finds the first private key block in s and decodes it into a PGPKeyBundle. It is useful in the case where s contains multiple key blocks and you want the private key block. For example, the result of gpg export.
func (*PGPKeyBundle) CanDecrypt ¶
func (k *PGPKeyBundle) CanDecrypt() bool
CanDecrypt returns false for now, since we haven't implemented PGP encryption of packets for metadata operations
func (*PGPKeyBundle) CanEncrypt ¶
func (k *PGPKeyBundle) CanEncrypt() bool
CanEncrypt returns false for now, since we haven't implemented PGP encryption of packets for metadata operations
func (*PGPKeyBundle) CanSign ¶
func (k *PGPKeyBundle) CanSign() bool
func (*PGPKeyBundle) CheckFingerprint ¶
func (k *PGPKeyBundle) CheckFingerprint(fp *PGPFingerprint) error
func (*PGPKeyBundle) CheckIdentity ¶
func (k *PGPKeyBundle) CheckIdentity(kbid Identity) (match bool, ctime int64, etime int64)
func (*PGPKeyBundle) CheckSecretKey ¶
func (k *PGPKeyBundle) CheckSecretKey() (err error)
func (*PGPKeyBundle) DecryptFromString ¶
func (k *PGPKeyBundle) DecryptFromString(ciphertext string) (msg []byte, sender keybase1.KID, err error)
DecryptFromString fails for this type of key, since we haven't implemented it yet
func (PGPKeyBundle) DecryptionKeys ¶
func (k PGPKeyBundle) DecryptionKeys() []openpgp.Key
func (*PGPKeyBundle) Encode ¶
func (k *PGPKeyBundle) Encode() (ret string, err error)
func (*PGPKeyBundle) EncodeToStream ¶
func (k *PGPKeyBundle) EncodeToStream(wc io.WriteCloser) (err error)
func (*PGPKeyBundle) EncryptToString ¶
func (k *PGPKeyBundle) EncryptToString(plaintext []byte, sender GenericKey) (ciphertext string, err error)
EncryptToString fails for this type of key, since we haven't implemented it yet
func (*PGPKeyBundle) Export ¶
func (bundle *PGPKeyBundle) Export() keybase1.PublicKey
func (*PGPKeyBundle) FindEmail ¶
func (k *PGPKeyBundle) FindEmail(em string) bool
func (*PGPKeyBundle) FindKeybaseUsername ¶
func (k *PGPKeyBundle) FindKeybaseUsername(un string) bool
XXX for now this is OK but probably we need a PGP uid parser as in pgp-utils
func (*PGPKeyBundle) FullHash ¶
func (k *PGPKeyBundle) FullHash() (string, error)
func (PGPKeyBundle) GetAlgoType ¶
func (k PGPKeyBundle) GetAlgoType() AlgoType
func (PGPKeyBundle) GetFingerprint ¶
func (k PGPKeyBundle) GetFingerprint() PGPFingerprint
func (PGPKeyBundle) GetFingerprintP ¶
func (k PGPKeyBundle) GetFingerprintP() *PGPFingerprint
func (*PGPKeyBundle) GetKID ¶
func (k *PGPKeyBundle) GetKID() keybase1.KID
func (*PGPKeyBundle) GetPGPIdentities ¶
func (k *PGPKeyBundle) GetPGPIdentities() []keybase1.PGPIdentity
func (PGPKeyBundle) GetPrimaryUID ¶
func (k PGPKeyBundle) GetPrimaryUID() string
GetPrimaryUID gets the primary UID in the given key bundle, returned in the 'Max K (foo) <bar@baz.com>' convention.
func (*PGPKeyBundle) HasSecretKey ¶
func (k *PGPKeyBundle) HasSecretKey() bool
func (PGPKeyBundle) HumanDescription ¶
func (k PGPKeyBundle) HumanDescription() string
func (*PGPKeyBundle) IdentityNames ¶
func (k *PGPKeyBundle) IdentityNames() []string
func (PGPKeyBundle) KeyDescription ¶
func (k PGPKeyBundle) KeyDescription() string
func (PGPKeyBundle) KeyInfo ¶
func (k PGPKeyBundle) KeyInfo() (algorithm, kid, creation string)
func (PGPKeyBundle) KeysByIdUsage ¶
func (k PGPKeyBundle) KeysByIdUsage(id uint64, usage byte) []openpgp.Key
func (PGPKeyBundle) MatchesKey ¶
func (k PGPKeyBundle) MatchesKey(key *openpgp.Key) bool
func (*PGPKeyBundle) MergeKey ¶
func (to *PGPKeyBundle) MergeKey(from *PGPKeyBundle)
MergeKey adds the identities, revocations, and subkeys of another PGPKeyBundle to this key
func (*PGPKeyBundle) SignToString ¶
func (*PGPKeyBundle) StoreToLocalDb ¶
func (k *PGPKeyBundle) StoreToLocalDb(g *GlobalContext) error
func (*PGPKeyBundle) StripRevocations ¶
func (k *PGPKeyBundle) StripRevocations() (strippedKey *PGPKeyBundle)
StripRevocations returns a copy of the key with revocations removed
func (*PGPKeyBundle) ToServerSKB ¶
func (key *PGPKeyBundle) ToServerSKB(gc *GlobalContext, tsec *triplesec.Cipher, gen PassphraseGeneration) (ret *SKB, err error)
func (PGPKeyBundle) UsersDescription ¶
func (k PGPKeyBundle) UsersDescription() []string
func (PGPKeyBundle) VerboseDescription ¶
func (k PGPKeyBundle) VerboseDescription() string
func (PGPKeyBundle) VerifyString ¶
func (PGPKeyBundle) VerifyStringAndExtract ¶
type PGPKeySet ¶
type PGPKeySet struct { PermissivelyMergedKey *PGPKeyBundle KeysByHash map[string]*PGPKeyBundle }
PGPKeySet represents a collection of versions of a PGP key. It includes a merged version of the key without revocations, and each individual version of the key with revocations intact.
type PGPNoDecryptionKeyError ¶
type PGPNoDecryptionKeyError struct {
Msg string
}
func (PGPNoDecryptionKeyError) Error ¶
func (e PGPNoDecryptionKeyError) Error() string
func (PGPNoDecryptionKeyError) ToStatus ¶
func (e PGPNoDecryptionKeyError) ToStatus() (s keybase1.Status)
type PGPPullLoggedOutError ¶
type PGPPullLoggedOutError struct{}
func (PGPPullLoggedOutError) Error ¶
func (e PGPPullLoggedOutError) Error() string
type PGPUpdateChainLink ¶
type PGPUpdateChainLink struct { GenericChainLink // contains filtered or unexported fields }
PGPUpdateChainLink represents a chain link which marks a new version of a PGP key as current. The KID and a new new full hash are included in the pgp_update section of the body.
func ParsePGPUpdateChainLink ¶
func ParsePGPUpdateChainLink(b GenericChainLink) (ret *PGPUpdateChainLink, err error)
ParsePGPUpdateChainLink creates a PGPUpdateChainLink from a GenericChainLink and verifies that its pgp_update section contains a KID and full_hash
func (*PGPUpdateChainLink) GetPGPFullHash ¶
func (l *PGPUpdateChainLink) GetPGPFullHash() string
func (*PGPUpdateChainLink) ToDisplayString ¶
func (l *PGPUpdateChainLink) ToDisplayString() string
func (*PGPUpdateChainLink) Type ¶
func (l *PGPUpdateChainLink) Type() string
type PIDFileLockError ¶
type PIDFileLockError struct {
Filename string
}
func (PIDFileLockError) Error ¶
func (e PIDFileLockError) Error() string
type Packetable ¶
type Packetable interface {
ToPacket() (*KeybasePacket, error)
}
type PaperKeyPhrase ¶
type PaperKeyPhrase string
PaperKeyPhrase is the string that can generate a paper key. It is versioned and forced to be lowercase. To make a new random phrase, use MakePaperKeyPhrase. To convert a string to a PaperKeyPhrase, use NewPaperKeyPhrase.
func MakePaperKeyPhrase ¶
func MakePaperKeyPhrase(version uint8) (PaperKeyPhrase, error)
MakePaperKeyPhrase creates a new, random paper key phrase for the given version.
func NewPaperKeyPhrase ¶
func NewPaperKeyPhrase(phrase string) PaperKeyPhrase
NewPaperKeyPhrase converts a string into a PaperKeyPhrase.
func (PaperKeyPhrase) Bytes ¶
func (p PaperKeyPhrase) Bytes() []byte
Bytes returns a byte slice of the phrase.
func (PaperKeyPhrase) Prefix ¶
func (p PaperKeyPhrase) Prefix() string
Prefix returns the first two words in the phrase.
func (PaperKeyPhrase) String ¶
func (p PaperKeyPhrase) String() string
String returns a string representation of the phrase.
func (PaperKeyPhrase) Version ¶
func (p PaperKeyPhrase) Version() uint8
Version calculates the phrase version. 0-15 are possible versions.
type ParsedSig ¶
type ParsedSig struct { Block *armor.Block SigBody []byte MD *openpgp.MessageDetails LiteralData []byte }
func PGPOpenSig ¶
func (*ParsedSig) AssertPayload ¶
func (*ParsedSig) Verify ¶
func (ps *ParsedSig) Verify(k PGPKeyBundle) (err error)
type Parser ¶
type Parser struct {
// contains filtered or unexported fields
}
func (*Parser) Parse ¶
func (p *Parser) Parse() AssertionExpression
type PassphraseError ¶
type PassphraseError struct {
Msg string
}
func (PassphraseError) Error ¶
func (p PassphraseError) Error() string
func (PassphraseError) ToStatus ¶
func (p PassphraseError) ToStatus() (s keybase1.Status)
type PassphraseGeneration ¶
type PassphraseGeneration int
PassphraseGeneration represents which generation of the passphrase is currently in use. It's used to guard against race conditions in which the passphrase is changed on one device which the other still has it cached.
type PassphraseProvisionImpossibleError ¶
type PassphraseProvisionImpossibleError struct{}
func (PassphraseProvisionImpossibleError) Error ¶
func (e PassphraseProvisionImpossibleError) Error() string
type PassphraseStream ¶
type PassphraseStream struct {
// contains filtered or unexported fields
}
func NewPassphraseStream ¶
func NewPassphraseStream(s []byte) *PassphraseStream
func StretchPassphrase ¶
func (*PassphraseStream) Clone ¶
func (ps *PassphraseStream) Clone() *PassphraseStream
Clone a passphrase stream and return a copy.
func (PassphraseStream) DHSeed ¶
func (ps PassphraseStream) DHSeed() []byte
func (PassphraseStream) EdDSASeed ¶
func (ps PassphraseStream) EdDSASeed() []byte
func (PassphraseStream) Export ¶
func (ps PassphraseStream) Export() keybase1.PassphraseStream
func (PassphraseStream) Generation ¶
func (ps PassphraseStream) Generation() PassphraseGeneration
Generation returns the generation of this passphrase stream. It is >=0 for valid generation #. If 0, then we assume the passphrase has never been reset.
func (PassphraseStream) LksClientHalf ¶
func (ps PassphraseStream) LksClientHalf() []byte
func (PassphraseStream) PWHash ¶
func (ps PassphraseStream) PWHash() []byte
func (*PassphraseStream) SetGeneration ¶
func (ps *PassphraseStream) SetGeneration(gen PassphraseGeneration)
func (PassphraseStream) String ¶
func (ps PassphraseStream) String() string
type PassphraseStreamCache ¶
type PassphraseStreamCache struct {
// contains filtered or unexported fields
}
func NewPassphraseStreamCache ¶
func NewPassphraseStreamCache(tsec *triplesec.Cipher, ps *PassphraseStream) *PassphraseStreamCache
func (*PassphraseStreamCache) Clear ¶
func (s *PassphraseStreamCache) Clear()
func (*PassphraseStreamCache) Dump ¶
func (s *PassphraseStreamCache) Dump()
func (*PassphraseStreamCache) PassphraseStream ¶
func (s *PassphraseStreamCache) PassphraseStream() *PassphraseStream
PassphraseStream returns a copy of the currently cached passphrase stream, or nil if none exists.
func (*PassphraseStreamCache) PassphraseStreamRef ¶
func (s *PassphraseStreamCache) PassphraseStreamRef() *PassphraseStream
PassphraseStream returns a reference to the currently cached passphrase stream, or nil if none exists.
func (*PassphraseStreamCache) Triplesec ¶
func (s *PassphraseStreamCache) Triplesec() *triplesec.Cipher
func (*PassphraseStreamCache) Valid ¶
func (s *PassphraseStreamCache) Valid() bool
type PassphraseStreamCacheReader ¶
type PassphraseStreamCacheReader interface { Triplesec() *triplesec.Cipher PassphraseStream() *PassphraseStream Valid() bool }
type PostAuthProofArg ¶
type PostAuthProofArg struct {
// contains filtered or unexported fields
}
type PostAuthProofRes ¶
type PostAuthProofRes struct { SessionID string `json:"session"` AuthID string `json:"auth_id"` CSRFToken string `json:"csrf_token"` UIDHex string `json:"uid"` Username string `json:"username"` PPGen int `json:"passphrase_generation"` }
func PostAuthProof ¶
func PostAuthProof(arg PostAuthProofArg) (*PostAuthProofRes, error)
type PostProofArg ¶
type PostProofRes ¶
func PostProof ¶
func PostProof(arg PostProofArg) (*PostProofRes, error)
type PromptDefault ¶
type PromptDefault int
const ( PromptDefaultNo PromptDefault = iota PromptDefaultYes PromptDefaultNeither )
type PromptDescriptor ¶
type PromptDescriptor int
type ProofAPIError ¶
type ProofAPIError struct { ProofErrorImpl // contains filtered or unexported fields }
func NewProofAPIError ¶
func NewProofAPIError(s keybase1.ProofStatus, u string, d string, a ...interface{}) *ProofAPIError
func XapiError ¶
func XapiError(err error, u string) *ProofAPIError
type ProofCache ¶
type ProofCache struct { Contextified sync.RWMutex // contains filtered or unexported fields }
func NewProofCache ¶
func NewProofCache(g *GlobalContext, capac int) *ProofCache
func (*ProofCache) Get ¶
func (pc *ProofCache) Get(sid keybase1.SigID) *CheckResult
func (*ProofCache) Put ¶
func (pc *ProofCache) Put(sid keybase1.SigID, pe ProofError) error
type ProofCheckHook ¶
type ProofCheckHook func(l RemoteProofChainLink) (ProofChecker, ProofError)
type ProofChecker ¶
type ProofChecker interface { CheckHint(h SigHint) ProofError CheckStatus(h SigHint) ProofError GetTorError() ProofError }
type ProofError ¶
type ProofError interface { error GetProofStatus() keybase1.ProofStatus GetDesc() string }
func ImportProofError ¶
func ImportProofError(e keybase1.ProofResult) ProofError
type ProofErrorImpl ¶
type ProofErrorImpl struct { Status keybase1.ProofStatus Desc string }
func NewProofError ¶
func NewProofError(s keybase1.ProofStatus, d string, a ...interface{}) *ProofErrorImpl
func (*ProofErrorImpl) Error ¶
func (e *ProofErrorImpl) Error() string
func (*ProofErrorImpl) GetDesc ¶
func (e *ProofErrorImpl) GetDesc() string
func (*ProofErrorImpl) GetProofStatus ¶
func (e *ProofErrorImpl) GetProofStatus() keybase1.ProofStatus
type ProofLinkWithState ¶
type ProofLinkWithState struct {
// contains filtered or unexported fields
}
ProofLinkWithState contains a RemoteProofChainLink and the proof state. In addition, it satisfies the TrackIdComponent interface.
func (ProofLinkWithState) GetProofState ¶
func (p ProofLinkWithState) GetProofState() keybase1.ProofState
func (ProofLinkWithState) LastWriterWins ¶
func (p ProofLinkWithState) LastWriterWins() bool
func (ProofLinkWithState) ToIDString ¶
func (p ProofLinkWithState) ToIDString() string
func (ProofLinkWithState) ToKeyValuePair ¶
func (p ProofLinkWithState) ToKeyValuePair() (string, string)
type ProofMetadata ¶
type ProofMetadata struct { Me *User SigningUser UserBasic LastSeqno Seqno PrevLinkID LinkID LinkType LinkType SigningKey GenericKey Eldest keybase1.KID CreationTime int64 ExpireIn int IncludePGPHash bool }
func (ProofMetadata) ToJSON ¶
func (arg ProofMetadata) ToJSON(g *GlobalContext) (ret *jsonw.Wrapper, err error)
type ProofNotFoundForServiceError ¶
type ProofNotFoundForServiceError struct {
Service string
}
func (ProofNotFoundForServiceError) Error ¶
func (e ProofNotFoundForServiceError) Error() string
func (ProofNotFoundForServiceError) ToStatus ¶
func (e ProofNotFoundForServiceError) ToStatus() (s keybase1.Status)
type ProofNotFoundForUsernameError ¶
func (ProofNotFoundForUsernameError) Error ¶
func (e ProofNotFoundForUsernameError) Error() string
func (ProofNotFoundForUsernameError) ToStatus ¶
func (e ProofNotFoundForUsernameError) ToStatus() (s keybase1.Status)
type ProofNotYetAvailableError ¶
type ProofNotYetAvailableError struct{}
func (ProofNotYetAvailableError) Error ¶
func (e ProofNotYetAvailableError) Error() string
type ProofSet ¶
type ProofSet struct {
// contains filtered or unexported fields
}
func NewProofSet ¶
type ProtocolDowngradeError ¶
type ProtocolDowngradeError struct {
// contains filtered or unexported fields
}
func (ProtocolDowngradeError) Error ¶
func (h ProtocolDowngradeError) Error() string
type ProveUI ¶
type ProveUI interface { PromptOverwrite(context.Context, keybase1.PromptOverwriteArg) (bool, error) PromptUsername(context.Context, keybase1.PromptUsernameArg) (string, error) OutputPrechecks(context.Context, keybase1.OutputPrechecksArg) error PreProofWarning(context.Context, keybase1.PreProofWarningArg) (bool, error) OutputInstructions(context.Context, keybase1.OutputInstructionsArg) error OkToCheck(context.Context, keybase1.OkToCheckArg) (bool, error) DisplayRecheckWarning(context.Context, keybase1.DisplayRecheckWarningArg) error }
type ProvisionUI ¶
type ProvisionUI interface { keybase1.ProvisionUiInterface }
type PublicKeyList ¶
func (PublicKeyList) Len ¶
func (l PublicKeyList) Len() int
func (PublicKeyList) Less ¶
func (l PublicKeyList) Less(i, j int) bool
func (PublicKeyList) Swap ¶
func (l PublicKeyList) Swap(i, j int)
type RPCLogFactory ¶
type RPCLogFactory struct{}
func NewRPCLogFactory ¶
func NewRPCLogFactory() *RPCLogFactory
func (*RPCLogFactory) NewLog ¶
func (r *RPCLogFactory) NewLog(a net.Addr) rpc.LogInterface
type RPCLogOptions ¶
type RPCLogOptions struct {
// contains filtered or unexported fields
}
func (*RPCLogOptions) ClientTrace ¶
func (r *RPCLogOptions) ClientTrace() bool
func (*RPCLogOptions) Profile ¶
func (r *RPCLogOptions) Profile() bool
func (*RPCLogOptions) Reload ¶
func (r *RPCLogOptions) Reload()
func (*RPCLogOptions) ServerTrace ¶
func (r *RPCLogOptions) ServerTrace() bool
func (*RPCLogOptions) ShowAddress ¶
func (r *RPCLogOptions) ShowAddress() bool
func (*RPCLogOptions) ShowArg ¶
func (r *RPCLogOptions) ShowArg() bool
func (*RPCLogOptions) ShowResult ¶
func (r *RPCLogOptions) ShowResult() bool
func (*RPCLogOptions) TransportStart ¶
func (r *RPCLogOptions) TransportStart() bool
type RawKeyFamily ¶
type RawKeyFamily struct {
AllBundles []string `json:"all_bundles"`
}
As returned by user/lookup.json
type ReadCloser ¶
type ReadCloser struct {
// contains filtered or unexported fields
}
type ReceiverDeviceError ¶
type ReceiverDeviceError struct {
Msg string
}
func NewReceiverDeviceError ¶
func NewReceiverDeviceError(expected, received keybase1.DeviceID) ReceiverDeviceError
func (ReceiverDeviceError) Error ¶
func (e ReceiverDeviceError) Error() string
func (ReceiverDeviceError) ToStatus ¶
func (e ReceiverDeviceError) ToStatus() keybase1.Status
type RedditChecker ¶
type RedditChecker struct {
// contains filtered or unexported fields
}
func (*RedditChecker) CheckData ¶
func (rc *RedditChecker) CheckData(h SigHint, dat *jsonw.Wrapper) ProofError
func (*RedditChecker) CheckHint ¶
func (rc *RedditChecker) CheckHint(h SigHint) ProofError
func (*RedditChecker) CheckStatus ¶
func (rc *RedditChecker) CheckStatus(h SigHint) ProofError
func (*RedditChecker) GetTorError ¶
func (rc *RedditChecker) GetTorError() ProofError
func (*RedditChecker) ScreenNameCompare ¶
func (rc *RedditChecker) ScreenNameCompare(s1, s2 string) bool
func (*RedditChecker) UnpackData ¶
func (rc *RedditChecker) UnpackData(inp *jsonw.Wrapper) (*jsonw.Wrapper, ProofError)
type RedditServiceType ¶
type RedditServiceType struct{ BaseServiceType }
func (RedditServiceType) AllStringKeys ¶
func (t RedditServiceType) AllStringKeys() []string
func (RedditServiceType) CheckProofText ¶
func (RedditServiceType) CheckUsername ¶
func (t RedditServiceType) CheckUsername(s string) (err error)
func (RedditServiceType) DisplayName ¶
func (t RedditServiceType) DisplayName(un string) string
func (RedditServiceType) FormatProofText ¶
func (t RedditServiceType) FormatProofText(ppr *PostProofRes) (res string, err error)
func (RedditServiceType) GetPrompt ¶
func (t RedditServiceType) GetPrompt() string
func (RedditServiceType) GetProofType ¶
func (t RedditServiceType) GetProofType() string
func (RedditServiceType) GetTypeName ¶
func (t RedditServiceType) GetTypeName() string
func (RedditServiceType) PostInstructions ¶
func (t RedditServiceType) PostInstructions(un string) *Markup
func (RedditServiceType) PrimaryStringKeys ¶
func (t RedditServiceType) PrimaryStringKeys() []string
func (RedditServiceType) RecheckProofPosting ¶
func (t RedditServiceType) RecheckProofPosting(tryNumber int, status keybase1.ProofStatus, _ string) (warning *Markup, err error)
func (RedditServiceType) ToChecker ¶
func (t RedditServiceType) ToChecker() Checker
func (RedditServiceType) ToServiceJSON ¶
func (t RedditServiceType) ToServiceJSON(un string) *jsonw.Wrapper
type ReloginRequiredError ¶
type ReloginRequiredError struct{}
func (ReloginRequiredError) Error ¶
func (e ReloginRequiredError) Error() string
func (ReloginRequiredError) ToStatus ¶
func (e ReloginRequiredError) ToStatus() keybase1.Status
type RemoteProofChainLink ¶
type RemoteProofChainLink interface { TypedChainLink TableKey() string LastWriterWins() bool GetRemoteUsername() string GetHostname() string GetProtocol() string DisplayCheck(ui IdentifyUI, lcr LinkCheckResult) ToTrackingStatement(keybase1.ProofState) (*jsonw.Wrapper, error) CheckDataJSON() *jsonw.Wrapper ToIDString() string ToKeyValuePair() (string, string) ComputeTrackDiff(tl *TrackLookup) TrackDiff GetProofType() keybase1.ProofType ProofText() string }
========================================================================= Remote, Web and Social
func ParseWebServiceBinding ¶
func ParseWebServiceBinding(base GenericChainLink) (ret RemoteProofChainLink, e error)
To be used for signatures in a user's signature chain.
type RemoteProofLinks ¶
type RemoteProofLinks struct {
// contains filtered or unexported fields
}
RemoteProofLinks holds a set of RemoteProofChainLinks, organized by service.
func NewRemoteProofLinks ¶
func NewRemoteProofLinks() *RemoteProofLinks
NewRemoteProofLinks creates a new empty collection of proof links.
func (*RemoteProofLinks) Active ¶
func (r *RemoteProofLinks) Active() []RemoteProofChainLink
Active returns all the active proof links, deduplicating any and honoring the LastWriterWins option.
func (*RemoteProofLinks) AddProofsToSet ¶
func (r *RemoteProofLinks) AddProofsToSet(existing *ProofSet)
AddProofsToSet adds the active proofs to an existing ProofSet.
func (*RemoteProofLinks) ForService ¶
func (r *RemoteProofLinks) ForService(st ServiceType) []RemoteProofChainLink
ForService returns all the active proof links for a service.
func (*RemoteProofLinks) Insert ¶
func (r *RemoteProofLinks) Insert(link RemoteProofChainLink, err ProofError)
Insert adds a link to the collection of proof links.
func (*RemoteProofLinks) TrackSet ¶
func (r *RemoteProofLinks) TrackSet() *TrackSet
TrackSet creates a new TrackSet with all the active proofs.
func (*RemoteProofLinks) TrackingStatement ¶
func (r *RemoteProofLinks) TrackingStatement() *jsonw.Wrapper
TrackingStatement generates the remote proofs portions of the tracking statement from the active proofs.
type RemoteStream ¶
type RemoteStream struct { Stream keybase1.Stream Cli *keybase1.StreamUiClient SessionID int }
func (RemoteStream) Close ¶
func (ewc RemoteStream) Close() (err error)
type RemoteStreamBuffered ¶
type RemoteStreamBuffered struct {
// contains filtered or unexported fields
}
func NewRemoteStreamBuffered ¶
func NewRemoteStreamBuffered(s keybase1.Stream, c *keybase1.StreamUiClient, sessionID int) *RemoteStreamBuffered
func (*RemoteStreamBuffered) Close ¶
func (x *RemoteStreamBuffered) Close() error
type ReportingTimer ¶
type ReportingTimer interface {
Report(prefix string)
}
ReportingTimer is an interface shared between ReportingTimerReal and ReportingTimerDummy, to allow for convenient disabling of timer features.
type ReportingTimerDummy ¶
type ReportingTimerDummy struct{}
ReportingTimerDummy fulfills the ReportingTimer interface but doesn't do anything when done.
func (ReportingTimerDummy) Report ¶
func (r ReportingTimerDummy) Report(prefix string)
Report is a noop.
type ReportingTimerReal ¶
type ReportingTimerReal struct { SimpleTimer Contextified }
ReportingTimerReal is a SimpleTimer that reports after the timing measurement is done.
func NewReportingTimerReal ¶
func NewReportingTimerReal(ctx Contextified) *ReportingTimerReal
NewReportingTimerReal returns an initialized reporting timer that actually reports timing information.
func (*ReportingTimerReal) Report ¶
func (r *ReportingTimerReal) Report(prefix string)
Report stops and resets the timer, then logs to Info what the duration was.
type Requester ¶
type Requester interface {
// contains filtered or unexported methods
}
Internal and External APIs both implement these methods, allowing us to share the request-making code below in doRequest
type ResolveCache ¶
func NewResolveCache ¶
func NewResolveCache() *ResolveCache
func (*ResolveCache) Get ¶
func (c *ResolveCache) Get(key string) *ResolveResult
Get returns a ResolveResult, if present in the cache.
func (*ResolveCache) Put ¶
func (c *ResolveCache) Put(key string, res ResolveResult)
Put receives a copy of a ResolveResult, clears out the body to avoid caching data that can go stale, and stores the result.
type ResolveResult ¶
type ResolveResult struct {
// contains filtered or unexported fields
}
func ResolveUID ¶
func ResolveUID(input string) (res ResolveResult)
func ResolveUIDValuePair ¶
func ResolveUIDValuePair(key, value string) (res ResolveResult)
func (*ResolveResult) GetError ¶
func (res *ResolveResult) GetError() error
func (*ResolveResult) GetUID ¶
func (res *ResolveResult) GetUID() keybase1.UID
type RetryExhaustedError ¶
type RetryExhaustedError struct { }
func (RetryExhaustedError) Error ¶
func (e RetryExhaustedError) Error() string
type ReverseSigError ¶
type ReverseSigError struct {
// contains filtered or unexported fields
}
func (ReverseSigError) Error ¶
func (r ReverseSigError) Error() string
type RevokeChainLink ¶
type RevokeChainLink struct { GenericChainLink // contains filtered or unexported fields }
func ParseRevokeChainLink ¶
func ParseRevokeChainLink(b GenericChainLink) (ret *RevokeChainLink, err error)
func (*RevokeChainLink) GetDevice ¶
func (r *RevokeChainLink) GetDevice() *Device
func (*RevokeChainLink) IsRevocationIsh ¶
func (r *RevokeChainLink) IsRevocationIsh() bool
func (*RevokeChainLink) ToDisplayString ¶
func (r *RevokeChainLink) ToDisplayString() string
func (*RevokeChainLink) Type ¶
func (r *RevokeChainLink) Type() string
type RooterChecker ¶
type RooterChecker struct {
// contains filtered or unexported fields
}
func (*RooterChecker) CheckData ¶
func (rc *RooterChecker) CheckData(h SigHint, dat string) ProofError
func (*RooterChecker) CheckHint ¶
func (rc *RooterChecker) CheckHint(h SigHint) (err ProofError)
func (*RooterChecker) CheckStatus ¶
func (rc *RooterChecker) CheckStatus(h SigHint) (perr ProofError)
func (*RooterChecker) GetTorError ¶
func (rc *RooterChecker) GetTorError() ProofError
func (*RooterChecker) ScreenNameCompare ¶
func (rc *RooterChecker) ScreenNameCompare(s1, s2 string) bool
func (*RooterChecker) UnpackData ¶
func (rc *RooterChecker) UnpackData(inp *jsonw.Wrapper) (string, ProofError)
type RooterServiceType ¶
type RooterServiceType struct{ BaseServiceType }
func (RooterServiceType) AllStringKeys ¶
func (t RooterServiceType) AllStringKeys() []string
func (RooterServiceType) CheckProofText ¶
func (RooterServiceType) CheckUsername ¶
func (t RooterServiceType) CheckUsername(s string) (err error)
func (RooterServiceType) DisplayName ¶
func (t RooterServiceType) DisplayName(un string) string
func (RooterServiceType) GetPrompt ¶
func (t RooterServiceType) GetPrompt() string
func (RooterServiceType) GetProofType ¶
func (t RooterServiceType) GetProofType() string
func (RooterServiceType) GetTypeName ¶
func (t RooterServiceType) GetTypeName() string
func (RooterServiceType) NormalizeUsername ¶
func (t RooterServiceType) NormalizeUsername(s string) (string, error)
func (RooterServiceType) PostInstructions ¶
func (t RooterServiceType) PostInstructions(un string) *Markup
func (RooterServiceType) PrimaryStringKeys ¶
func (t RooterServiceType) PrimaryStringKeys() []string
func (RooterServiceType) RecheckProofPosting ¶
func (t RooterServiceType) RecheckProofPosting(tryNumber int, status keybase1.ProofStatus, _ string) (warning *Markup, err error)
func (RooterServiceType) ToChecker ¶
func (t RooterServiceType) ToChecker() Checker
func (RooterServiceType) ToServiceJSON ¶
func (t RooterServiceType) ToServiceJSON(un string) *jsonw.Wrapper
type RunGpg2Res ¶
type RunGpg2Res struct { Stdin io.WriteCloser Stdout io.ReadCloser Stderr io.ReadCloser Wait func() error Err error }
type RunGpgArg ¶
type RunGpgArg struct { Arguments []string Stdin bool Stderr io.WriteCloser Stdout io.WriteCloser }
type RunMode ¶
type RunMode string
func StringToRunMode ¶
StringToRunMode turns a string into a run-mode
type RunModeGetter ¶
type RunModeGetter func() RunMode
type SKB ¶
type SKB struct { Priv SKBPriv `codec:"priv"` Pub []byte `codec:"pub"` Type AlgoType `codec:"type,omitempty"` Contextified sync.Mutex // currently only for uid // contains filtered or unexported fields }
func NewSKB ¶
func NewSKB(gc *GlobalContext) *SKB
func WriteLksSKBToKeyring ¶
func WriteLksSKBToKeyring(k GenericKey, lks *LKSec, lctx LoginContext) (*SKB, error)
func (*SKB) ArmoredEncode ¶
func (*SKB) GetPubKey ¶
func (s *SKB) GetPubKey() (key GenericKey, err error)
func (*SKB) PromptAndUnlock ¶
func (s *SKB) PromptAndUnlock(lctx LoginContext, reason, which string, secretStore SecretStore, ui SecretUI, lksPreload *LKSec, me *User) (ret GenericKey, err error)
func (*SKB) RawUnlockedKey ¶
func (*SKB) ReadKey ¶
func (s *SKB) ReadKey() (g GenericKey, err error)
func (*SKB) ToPacket ¶
func (s *SKB) ToPacket() (ret *KeybasePacket, err error)
func (*SKB) UnlockNoPrompt ¶
func (s *SKB) UnlockNoPrompt(lctx LoginContext, secretStore SecretStore, lksPreload *LKSec) (GenericKey, error)
func (*SKB) UnlockSecretKey ¶
func (s *SKB) UnlockSecretKey(lctx LoginContext, passphrase string, tsec *triplesec.Cipher, pps *PassphraseStream, secretStorer SecretStorer, lksPreload *LKSec) (key GenericKey, err error)
func (*SKB) UnlockWithStoredSecret ¶
func (s *SKB) UnlockWithStoredSecret(secretRetriever SecretRetriever) (ret GenericKey, err error)
func (*SKB) VerboseDescription ¶
type SKBKeyringFile ¶
type SKBKeyringFile struct { Blocks []*SKB // contains filtered or unexported fields }
func LoadSKBKeyring ¶
func LoadSKBKeyring(un NormalizedUsername, g *GlobalContext) (*SKBKeyringFile, error)
func NewSKBKeyringFile ¶
func NewSKBKeyringFile(n string) *SKBKeyringFile
func (SKBKeyringFile) FindSecretKey ¶
func (k SKBKeyringFile) FindSecretKey(kids []keybase1.KID) (ret *SKB)
FindSecretKey will, given a list of KIDs, find the first one in the list that has a corresponding secret key in the keyring file.
func (SKBKeyringFile) GetFilename ¶
func (k SKBKeyringFile) GetFilename() string
func (*SKBKeyringFile) HasPGPKeys ¶
func (k *SKBKeyringFile) HasPGPKeys() bool
func (*SKBKeyringFile) Index ¶
func (k *SKBKeyringFile) Index() (err error)
func (*SKBKeyringFile) Load ¶
func (k *SKBKeyringFile) Load() (err error)
func (*SKBKeyringFile) LoadAndIndex ¶
func (k *SKBKeyringFile) LoadAndIndex() error
func (SKBKeyringFile) LookupByFingerprint ¶
func (k SKBKeyringFile) LookupByFingerprint(fp PGPFingerprint) *SKB
func (SKBKeyringFile) LookupByKid ¶
func (k SKBKeyringFile) LookupByKid(kid keybase1.KID) *SKB
func (*SKBKeyringFile) Push ¶
func (k *SKBKeyringFile) Push(skb *SKB) error
func (*SKBKeyringFile) PushAndSave ¶
func (k *SKBKeyringFile) PushAndSave(skb *SKB) error
func (*SKBKeyringFile) Save ¶
func (k *SKBKeyringFile) Save() error
func (SKBKeyringFile) SearchWithComputedKeyFamily ¶
func (k SKBKeyringFile) SearchWithComputedKeyFamily(ckf *ComputedKeyFamily, ska SecretKeyArg) []*SKB
type SafeWriter ¶
type SecretKeyArg ¶
type SecretKeyArg struct { // Whose keys to use. Must be non-nil. Me *User // The allowed key types. KeyType SecretKeyType // For non-device keys, a string that the key has to match. If // empty, any valid key is allowed. KeyQuery string ExactMatch bool // if set, full equality required }
type SecretKeyType ¶
type SecretKeyType int
const ( // The current device signing key. DeviceSigningKeyType SecretKeyType = iota // The current device encryption key. DeviceEncryptionKeyType // A PGP key (including the synced PGP key, if there is one). PGPKeyType )
func (SecretKeyType) String ¶
func (t SecretKeyType) String() string
type SecretRetriever ¶
type SecretStore ¶
type SecretStore interface { SecretRetriever SecretStorer ClearSecret() error }
func NewSecretStore ¶
func NewSecretStore(g *GlobalContext, username NormalizedUsername) SecretStore
type SecretStoreError ¶
type SecretStoreError struct {
Msg string
}
func (SecretStoreError) Error ¶
func (e SecretStoreError) Error() string
type SecretStorer ¶
type SecretSyncer ¶
type SecretSyncer struct { sync.Mutex Contextified // contains filtered or unexported fields }
func NewSecretSyncer ¶
func NewSecretSyncer(g *GlobalContext) *SecretSyncer
func (*SecretSyncer) ActiveDevices ¶
func (ss *SecretSyncer) ActiveDevices(includeTypesSet DeviceTypeSet) (DeviceKeyMap, error)
ActiveDevices returns all the active desktop and mobile devices.
func (*SecretSyncer) AllActiveKeys ¶
func (ss *SecretSyncer) AllActiveKeys(ckf *ComputedKeyFamily) []*SKB
AllActiveKeys returns all the active synced PGP keys.
func (*SecretSyncer) Clear ¶
func (ss *SecretSyncer) Clear() error
func (*SecretSyncer) Devices ¶
func (ss *SecretSyncer) Devices() (DeviceKeyMap, error)
func (*SecretSyncer) DumpPrivateKeys ¶
func (ss *SecretSyncer) DumpPrivateKeys()
func (*SecretSyncer) FindActiveKey ¶
func (ss *SecretSyncer) FindActiveKey(ckf *ComputedKeyFamily) (ret *SKB, err error)
FindActiveKey examines the synced keys, looking for one that's currently active. Returns ret=nil if none was found.
func (*SecretSyncer) FindDevice ¶
func (ss *SecretSyncer) FindDevice(id keybase1.DeviceID) (DeviceKey, error)
func (*SecretSyncer) FindPrivateKey ¶
func (ss *SecretSyncer) FindPrivateKey(kid string) (ServerPrivateKey, bool)
func (*SecretSyncer) HasActiveDevice ¶
func (ss *SecretSyncer) HasActiveDevice(includeTypesSet DeviceTypeSet) (bool, error)
HasActiveDevice returns true if there is an active desktop or mobile device available.
func (*SecretSyncer) HasDevices ¶
func (ss *SecretSyncer) HasDevices() bool
func (*SecretSyncer) IsDeviceNameTaken ¶
func (ss *SecretSyncer) IsDeviceNameTaken(name string, includeTypesSet DeviceTypeSet) bool
IsDeviceNameTaken returns true if a desktop or mobile device is using a name already.
type SecretUI ¶
type SecretUI interface { GetSecret(pinentry keybase1.SecretEntryArg, terminal *keybase1.SecretEntryArg) (*keybase1.SecretEntryRes, error) GetNewPassphrase(keybase1.GetNewPassphraseArg) (keybase1.GetPassphraseRes, error) GetKeybasePassphrase(keybase1.GetKeybasePassphraseArg) (keybase1.GetPassphraseRes, error) GetPaperKeyPassphrase(keybase1.GetPaperKeyPassphraseArg) (string, error) GetPassphrase(pinentry keybase1.GUIEntryArg, terminal *keybase1.SecretEntryArg) (keybase1.GetPassphraseRes, error) }
type SelfNotFoundError ¶
type SelfNotFoundError struct {
// contains filtered or unexported fields
}
func (SelfNotFoundError) Error ¶
func (e SelfNotFoundError) Error() string
func (SelfNotFoundError) ToStatus ¶
func (e SelfNotFoundError) ToStatus() keybase1.Status
type SelfSigChainLink ¶
type SelfSigChainLink struct { GenericChainLink // contains filtered or unexported fields }
func ParseSelfSigChainLink ¶
func ParseSelfSigChainLink(base GenericChainLink) (ret *SelfSigChainLink, err error)
func (*SelfSigChainLink) CheckDataJSON ¶
func (s *SelfSigChainLink) CheckDataJSON() *jsonw.Wrapper
func (*SelfSigChainLink) ComputeTrackDiff ¶
func (s *SelfSigChainLink) ComputeTrackDiff(tl *TrackLookup) TrackDiff
func (*SelfSigChainLink) DisplayCheck ¶
func (s *SelfSigChainLink) DisplayCheck(ui IdentifyUI, lcr LinkCheckResult)
func (*SelfSigChainLink) GetDevice ¶
func (s *SelfSigChainLink) GetDevice() *Device
func (*SelfSigChainLink) GetHostname ¶
func (s *SelfSigChainLink) GetHostname() string
func (*SelfSigChainLink) GetPGPFullHash ¶
func (s *SelfSigChainLink) GetPGPFullHash() string
func (*SelfSigChainLink) GetProofType ¶
func (s *SelfSigChainLink) GetProofType() keybase1.ProofType
func (*SelfSigChainLink) GetProtocol ¶
func (s *SelfSigChainLink) GetProtocol() string
func (*SelfSigChainLink) GetRemoteUsername ¶
func (s *SelfSigChainLink) GetRemoteUsername() string
func (*SelfSigChainLink) LastWriterWins ¶
func (s *SelfSigChainLink) LastWriterWins() bool
func (*SelfSigChainLink) ParseDevice ¶
func (s *SelfSigChainLink) ParseDevice() (err error)
func (*SelfSigChainLink) ProofText ¶
func (s *SelfSigChainLink) ProofText() string
func (*SelfSigChainLink) TableKey ¶
func (s *SelfSigChainLink) TableKey() string
func (*SelfSigChainLink) ToDisplayString ¶
func (s *SelfSigChainLink) ToDisplayString() string
func (*SelfSigChainLink) ToIDString ¶
func (s *SelfSigChainLink) ToIDString() string
func (*SelfSigChainLink) ToKeyValuePair ¶
func (s *SelfSigChainLink) ToKeyValuePair() (string, string)
func (*SelfSigChainLink) ToTrackingStatement ¶
func (s *SelfSigChainLink) ToTrackingStatement(keybase1.ProofState) (*jsonw.Wrapper, error)
func (*SelfSigChainLink) Type ¶
func (s *SelfSigChainLink) Type() string
type SelfTrackError ¶
type SelfTrackError struct{}
func (SelfTrackError) Error ¶
func (e SelfTrackError) Error() string
type ServerChainError ¶
type ServerChainError struct {
// contains filtered or unexported fields
}
func NewServerChainError ¶
func NewServerChainError(d string, a ...interface{}) ServerChainError
func (ServerChainError) Error ¶
func (e ServerChainError) Error() string
type ServerPrivateKey ¶
type ServerPrivateKey struct { Kid string `json:"kid"` KeyType int `json:"key_type"` Bundle string `json:"bundle"` Mtime int `json:"mtime"` Ctime int `json:"ctime"` KeyBits int `json:"key_bits"` KeyAlgo int `json:"key_algo"` }
func (*ServerPrivateKey) FindActiveKey ¶
func (k *ServerPrivateKey) FindActiveKey(ckf *ComputedKeyFamily) (ret *SKB, err error)
func (ServerPrivateKey) ToSKB ¶
func (k ServerPrivateKey) ToSKB(gc *GlobalContext) (*SKB, error)
type ServerPrivateKeyMap ¶
type ServerPrivateKeyMap map[string]ServerPrivateKey
type ServerPrivateKeys ¶
type ServerPrivateKeys struct { Status APIStatus `json:"status"` Version int `json:"version"` Mtime *int `json:"mtime"` PrivateKeys ServerPrivateKeyMap `json:"private_keys"` // note these are only PGP keys Devices DeviceKeyMap `json:"devices"` }
type ServiceBlock ¶
type ServiceBlock struct {
// contains filtered or unexported fields
}
Can be used to either parse a proof `service` JSON block, or a `remote_key_proof` JSON block in a tracking statement.
func ParseServiceBlock ¶
func ParseServiceBlock(jw *jsonw.Wrapper) (sb *ServiceBlock, err error)
func (ServiceBlock) GetProofState ¶
func (sb ServiceBlock) GetProofState() keybase1.ProofState
func (ServiceBlock) IsSocial ¶
func (sb ServiceBlock) IsSocial() bool
func (ServiceBlock) LastWriterWins ¶
func (sb ServiceBlock) LastWriterWins() bool
func (ServiceBlock) ToIDString ¶
func (sb ServiceBlock) ToIDString() string
func (ServiceBlock) ToKeyValuePair ¶
func (sb ServiceBlock) ToKeyValuePair() (string, string)
type ServiceInfo ¶
type ServiceInfo struct { Version string `json:"version,omitempty"` Label string `json:"label,omitempty"` Pid int `json:"pid,omitempty"` }
ServiceInfo describes runtime info for a service. This is primarily used to detect service updates.
func KeybaseServiceInfo ¶
func KeybaseServiceInfo(g *GlobalContext) ServiceInfo
KeybaseServiceInfo is runtime info for the Keybase service.
func NewServiceInfo ¶
func NewServiceInfo(version string, build string, label string, pid int) ServiceInfo
NewServiceInfo for generating service info for other services (like KBFS).
func WaitForServiceInfoFile ¶
func WaitForServiceInfoFile(path string, pid string, maxAttempts int, wait time.Duration, reason string) (*ServiceInfo, error)
WaitForServiceInfoFile tries to wait for a service info file, which should be written on successful service startup.
func (ServiceInfo) WriteFile ¶
func (s ServiceInfo) WriteFile(path string) error
WriteFile writes service info as JSON in runtimeDir.
type ServiceType ¶
type ServiceType interface { AllStringKeys() []string PrimaryStringKeys() []string CheckUsername(string) error NormalizeUsername(string) (string, error) ToChecker() Checker GetPrompt() string LastWriterWins() bool PreProofCheck(username string) (*Markup, error) PreProofWarning(remotename string) *Markup ToServiceJSON(remotename string) *jsonw.Wrapper PostInstructions(remotename string) *Markup DisplayName(username string) string RecheckProofPosting(tryNumber int, status keybase1.ProofStatus, username string) (warning *Markup, err error) GetProofType() string GetTypeName() string CheckProofText(text string, id keybase1.SigID, sig string) error FormatProofText(*PostProofRes) (string, error) GetAPIArgKey() string }
func GetServiceType ¶
func GetServiceType(s string) ServiceType
type Session ¶
type Session struct { Contextified // contains filtered or unexported fields }
func NewSessionThin ¶
func NewSessionThin(uid keybase1.UID, username NormalizedUsername, token string) *Session
NewSessionThin creates a minimal (thin) session of just the uid and username. Clients of the daemon that use the session protocol need this.
func (*Session) GetDictionary ¶
func (*Session) GetUsername ¶
func (s *Session) GetUsername() *NormalizedUsername
func (*Session) HasSessionToken ¶
func (*Session) Invalidate ¶
func (s *Session) Invalidate()
Invalidate marks the session as invalid and posts a logout notification.
func (*Session) IsLoggedIn ¶
func (*Session) IsLoggedInAndProvisioned ¶
true if user is logged in and has a device fully provisioned
func (*Session) SetDeviceProvisioned ¶
func (*Session) SetLoggedIn ¶
func (*Session) SetUsername ¶
func (s *Session) SetUsername(username NormalizedUsername)
type SessionReader ¶
type ShutdownHook ¶
type ShutdownHook func() error
type SibkeyAlreadyExistsError ¶
type SibkeyAlreadyExistsError struct{}
func (SibkeyAlreadyExistsError) Error ¶
func (e SibkeyAlreadyExistsError) Error() string
func (SibkeyAlreadyExistsError) ToStatus ¶
func (e SibkeyAlreadyExistsError) ToStatus() keybase1.Status
type SibkeyChainLink ¶
type SibkeyChainLink struct { GenericChainLink // contains filtered or unexported fields }
func ParseSibkeyChainLink ¶
func ParseSibkeyChainLink(b GenericChainLink) (ret *SibkeyChainLink, err error)
func (*SibkeyChainLink) GetDelegatedKid ¶
func (s *SibkeyChainLink) GetDelegatedKid() keybase1.KID
func (*SibkeyChainLink) GetDevice ¶
func (s *SibkeyChainLink) GetDevice() *Device
func (*SibkeyChainLink) GetPGPFullHash ¶
func (s *SibkeyChainLink) GetPGPFullHash() string
func (*SibkeyChainLink) GetRole ¶
func (s *SibkeyChainLink) GetRole() KeyRole
func (*SibkeyChainLink) ToDisplayString ¶
func (s *SibkeyChainLink) ToDisplayString() string
func (*SibkeyChainLink) Type ¶
func (s *SibkeyChainLink) Type() string
func (*SibkeyChainLink) VerifyReverseSig ¶
func (s *SibkeyChainLink) VerifyReverseSig(ckf ComputedKeyFamily) (err error)
VerifyReverseSig checks a SibkeyChainLink's reverse signature using the ComputedKeyFamily provided.
type SigChain ¶
type SigChain struct { Contextified // contains filtered or unexported fields }
func (*SigChain) Bump ¶
func (sc *SigChain) Bump(mt MerkleTriple)
func (*SigChain) CheckFreshness ¶
func (sc *SigChain) CheckFreshness(srv *MerkleTriple) (current bool, err error)
func (SigChain) GetComputedKeyInfos ¶
func (sc SigChain) GetComputedKeyInfos() (cki *ComputedKeyInfos)
func (*SigChain) GetCurrentSubchain ¶
GetCurrentSubchain takes the given sigchain and walks backward until it finds the start of the current subchain, returning all the links in the subchain. A new subchain starts in one of three ways (from the perspective of walking from oldest to newest):
- A link has a new eldest key, usually in the form of reporting no eldest_kid of its own and being signed by a KID that's not the previous eldest. Most resets so far take this form.
- A link of type "eldest", regardless of the KIDs involved. We want this to be how everything works in the future.
- One of a set of six hardcoded links that made it in back when we allowed repeating eldest keys without using the "eldest" link type.
func (SigChain) GetCurrentTailTriple ¶
func (sc SigChain) GetCurrentTailTriple() (ret *MerkleTriple)
func (SigChain) GetFirstLink ¶
func (SigChain) GetFutureChainTail ¶
func (sc SigChain) GetFutureChainTail() (ret *MerkleTriple)
func (SigChain) GetLastKnownID ¶
func (SigChain) GetLastKnownSeqno ¶
func (SigChain) GetLastLink ¶
func (SigChain) GetLastLoadedID ¶
func (SigChain) GetLastLoadedSeqno ¶
func (*SigChain) GetLinkFromSeqno ¶
func (*SigChain) GetLinkFromSigID ¶
func (*SigChain) LoadFromServer ¶
func (sc *SigChain) LoadFromServer(t *MerkleTriple, selfUID keybase1.UID) (dirtyTail *MerkleTriple, err error)
func (*SigChain) LocalDelegate ¶
func (*SigChain) VerifiedChainLinks ¶
func (sc *SigChain) VerifiedChainLinks(fp PGPFingerprint) (ret []*ChainLink)
func (*SigChain) VerifyChain ¶
func (*SigChain) VerifySigsAndComputeKeys ¶
type SigChainLoader ¶
type SigChainLoader struct { Contextified // contains filtered or unexported fields }
func (*SigChainLoader) AccessPreload ¶
func (l *SigChainLoader) AccessPreload() (cached bool, err error)
func (*SigChainLoader) CheckFreshness ¶
func (l *SigChainLoader) CheckFreshness() (current bool, err error)
func (*SigChainLoader) GetKeyFamily ¶
func (l *SigChainLoader) GetKeyFamily() (err error)
func (*SigChainLoader) GetMerkleTriple ¶
func (l *SigChainLoader) GetMerkleTriple() (ret *MerkleTriple)
func (*SigChainLoader) Load ¶
func (l *SigChainLoader) Load() (ret *SigChain, err error)
Load is the main entry point into the SigChain loader. It runs through all of the steps to load a chain in from storage, to refresh it against the server, and to verify its integrity.
func (*SigChainLoader) LoadFromServer ¶
func (l *SigChainLoader) LoadFromServer() (err error)
func (*SigChainLoader) LoadLastLinkIDFromStorage ¶
func (l *SigChainLoader) LoadLastLinkIDFromStorage() (mt *MerkleTriple, err error)
func (*SigChainLoader) LoadLinksFromStorage ¶
func (l *SigChainLoader) LoadLinksFromStorage() (err error)
func (*SigChainLoader) MakeSigChain ¶
func (l *SigChainLoader) MakeSigChain() error
func (*SigChainLoader) Store ¶
func (l *SigChainLoader) Store() (err error)
Store a SigChain to local storage as a result of having loaded it. We eagerly write loaded chain links to storage if they verify properly.
func (*SigChainLoader) StoreTail ¶
func (l *SigChainLoader) StoreTail() (err error)
func (*SigChainLoader) VerifySigsAndComputeKeys ¶
func (l *SigChainLoader) VerifySigsAndComputeKeys() (err error)
type SigHint ¶
type SigHint struct {
// contains filtered or unexported fields
}
func (SigHint) GetCheckText ¶
func (SigHint) GetHumanURL ¶
func (SigHint) MarshalToJSON ¶
type SigHints ¶
type SigHints struct { Contextified // contains filtered or unexported fields }
func LoadAndRefreshSigHints ¶
func LoadAndRefreshSigHints(uid keybase1.UID, g *GlobalContext) (sh *SigHints, err error)
func LoadSigHints ¶
func LoadSigHints(uid keybase1.UID, g *GlobalContext) (sh *SigHints, err error)
func NewSigHints ¶
func (SigHints) MarshalToJSON ¶
type SignatureStatus ¶
type SignatureStatus struct { IsSigned bool Verified bool SignatureError error KeyID uint64 Entity *openpgp.Entity SignatureTime time.Time RecipientKeyIDs []uint64 }
func PGPDecrypt ¶
func PGPDecryptWithBundles ¶
func PGPDecryptWithBundles(source io.Reader, sink io.Writer, keys []*PGPKeyBundle) (*SignatureStatus, error)
type SimpleTimer ¶
type SimpleTimer struct {
// contains filtered or unexported fields
}
SimpleTimer keeps track of how long something is taking, like a network API call. Meant to be very simple. It is not meant to be goroutine safe and should only be called from one Goroutine.
func (*SimpleTimer) GetTotal ¶
func (s *SimpleTimer) GetTotal() int64
GetTotal gets the total duration spent in the timer.
func (*SimpleTimer) Start ¶
func (s *SimpleTimer) Start()
Start the timer running, if it's not already started.
func (*SimpleTimer) Stop ¶
func (s *SimpleTimer) Stop() int64
Stop the timer; panic if it hasn't been previously started. Return the total duration spent in the timer.
type SocialProofChainLink ¶
type SocialProofChainLink struct { GenericChainLink // contains filtered or unexported fields }
func NewSocialProofChainLink ¶
func NewSocialProofChainLink(b GenericChainLink, s, u, proofText string) *SocialProofChainLink
func (*SocialProofChainLink) CheckDataJSON ¶
func (s *SocialProofChainLink) CheckDataJSON() *jsonw.Wrapper
func (*SocialProofChainLink) ComputeTrackDiff ¶
func (s *SocialProofChainLink) ComputeTrackDiff(tl *TrackLookup) TrackDiff
func (*SocialProofChainLink) DisplayCheck ¶
func (s *SocialProofChainLink) DisplayCheck(ui IdentifyUI, lcr LinkCheckResult)
func (*SocialProofChainLink) GetHostname ¶
func (s *SocialProofChainLink) GetHostname() string
func (*SocialProofChainLink) GetProofType ¶
func (s *SocialProofChainLink) GetProofType() keybase1.ProofType
func (*SocialProofChainLink) GetProtocol ¶
func (s *SocialProofChainLink) GetProtocol() string
func (*SocialProofChainLink) GetRemoteUsername ¶
func (s *SocialProofChainLink) GetRemoteUsername() string
func (*SocialProofChainLink) GetService ¶
func (s *SocialProofChainLink) GetService() string
func (*SocialProofChainLink) LastWriterWins ¶
func (s *SocialProofChainLink) LastWriterWins() bool
func (*SocialProofChainLink) ProofText ¶
func (s *SocialProofChainLink) ProofText() string
func (*SocialProofChainLink) TableKey ¶
func (s *SocialProofChainLink) TableKey() string
func (*SocialProofChainLink) ToDisplayString ¶
func (s *SocialProofChainLink) ToDisplayString() string
func (*SocialProofChainLink) ToIDString ¶
func (s *SocialProofChainLink) ToIDString() string
func (*SocialProofChainLink) ToKeyValuePair ¶
func (s *SocialProofChainLink) ToKeyValuePair() (string, string)
func (*SocialProofChainLink) ToTrackingStatement ¶
func (s *SocialProofChainLink) ToTrackingStatement(state keybase1.ProofState) (*jsonw.Wrapper, error)
func (*SocialProofChainLink) Type ¶
func (s *SocialProofChainLink) Type() string
type Socket ¶
type Socket interface { BindToSocket() (net.Listener, error) DialSocket() (net.Conn, error) GetFile() string }
NewSocket() (Socket, err) is defined in the various platform-specific socket_*.go files.
func NewSocket ¶
func NewSocket(g *GlobalContext) (ret Socket, err error)
type SocketInfo ¶
type SocketInfo struct { Contextified // contains filtered or unexported fields }
func (SocketInfo) BindToSocket ¶
func (s SocketInfo) BindToSocket() (ret net.Listener, err error)
func (SocketInfo) DialSocket ¶
func (s SocketInfo) DialSocket() (ret net.Conn, err error)
func (SocketInfo) GetFile ¶
func (s SocketInfo) GetFile() string
type SocketWrapper ¶
type SocketWrapper struct {
// contains filtered or unexported fields
}
type SpecialKeyRing ¶
type SpecialKeyRing struct { Contextified // contains filtered or unexported fields }
SpecialKeyRing holds blessed keys, like the one Keybase uses to sign its Merkle Root.
func NewSpecialKeyRing ¶
func NewSpecialKeyRing(v []keybase1.KID, g *GlobalContext) *SpecialKeyRing
NewSpecialKeyRing allocates a new SpecialKeyRing with the given vector of KIDs. For NaCl keys, it will actually import those keys into the Keyring.
func (*SpecialKeyRing) IsValidKID ¶
func (sk *SpecialKeyRing) IsValidKID(kid keybase1.KID) bool
IsValidKID returns if this KID is valid (blessed) according to this Keyring
func (*SpecialKeyRing) Load ¶
func (sk *SpecialKeyRing) Load(kid keybase1.KID) (GenericKey, error)
Load takes a blessed KID and returns, if possible, the GenericKey associated with that KID, for signature verification. If the key isn't found in memory or on disk (in the case of PGP), then it will attempt to fetch the key from the keybase server.
type StreamExistsError ¶
type StreamExistsError struct{}
func (StreamExistsError) Error ¶
func (s StreamExistsError) Error() string
func (StreamExistsError) ToStatus ¶
func (e StreamExistsError) ToStatus(s keybase1.Status)
type StreamNotFoundError ¶
type StreamNotFoundError struct{}
func (StreamNotFoundError) Error ¶
func (s StreamNotFoundError) Error() string
func (StreamNotFoundError) ToStatus ¶
func (e StreamNotFoundError) ToStatus(s keybase1.Status)
type StreamWrongKindError ¶
type StreamWrongKindError struct{}
func (StreamWrongKindError) Error ¶
func (s StreamWrongKindError) Error() string
func (StreamWrongKindError) ToStatus ¶
func (e StreamWrongKindError) ToStatus(s keybase1.Status)
type StringWarning ¶
type StringWarning string
func (StringWarning) Warn ¶
func (s StringWarning) Warn()
func (StringWarning) Warning ¶
func (s StringWarning) Warning() string
type StubAPIEngine ¶
type StubAPIEngine struct {
*ExternalAPIEngine
}
func NewStubAPIEngine ¶
func NewStubAPIEngine() *StubAPIEngine
func (*StubAPIEngine) Get ¶
func (e *StubAPIEngine) Get(arg APIArg) (res *ExternalAPIRes, err error)
func (*StubAPIEngine) GetHTML ¶
func (e *StubAPIEngine) GetHTML(arg APIArg) (res *ExternalHTMLRes, err error)
func (*StubAPIEngine) GetText ¶
func (e *StubAPIEngine) GetText(arg APIArg) (*ExternalTextRes, error)
type SubkeyChainLink ¶
type SubkeyChainLink struct { GenericChainLink // contains filtered or unexported fields }
func ParseSubkeyChainLink ¶
func ParseSubkeyChainLink(b GenericChainLink) (ret *SubkeyChainLink, err error)
func (*SubkeyChainLink) GetDelegatedKid ¶
func (s *SubkeyChainLink) GetDelegatedKid() keybase1.KID
func (*SubkeyChainLink) GetParentKid ¶
func (s *SubkeyChainLink) GetParentKid() keybase1.KID
func (*SubkeyChainLink) GetRole ¶
func (s *SubkeyChainLink) GetRole() KeyRole
func (*SubkeyChainLink) ToDisplayString ¶
func (s *SubkeyChainLink) ToDisplayString() string
func (*SubkeyChainLink) Type ¶
func (s *SubkeyChainLink) Type() string
type Syncer ¶
type Syncer interface { Contexitifier sync.Locker // contains filtered or unexported methods }
type TerminalUI ¶
type TerminalUI interface { OutputWriter() io.Writer Output(string) error Printf(fmt string, args ...interface{}) (int, error) PromptYesNo(PromptDescriptor, string, PromptDefault) (bool, error) Prompt(PromptDescriptor, string) (string, error) PromptPassword(PromptDescriptor, string) (string, error) PromptForConfirmation(prompt string) error }
type TestConfig ¶
type TestConfig struct {
// contains filtered or unexported fields
}
TestConfig tracks libkb config during a test
func (*TestConfig) CleanTest ¶
func (c *TestConfig) CleanTest()
func (*TestConfig) GetConfigFileName ¶
func (c *TestConfig) GetConfigFileName() string
type TestContext ¶
type TestContext struct { G *GlobalContext PrevGlobal *GlobalContext Tp TestParameters // TODO: Rename this to TB. T testing.TB }
func (*TestContext) Cleanup ¶
func (tc *TestContext) Cleanup()
func (TestContext) ClearAllStoredSecrets ¶
func (tc TestContext) ClearAllStoredSecrets() error
func (TestContext) Clone ¶
func (tc TestContext) Clone() (ret TestContext)
func (*TestContext) GenerateGPGKeyring ¶
func (tc *TestContext) GenerateGPGKeyring(ids ...string) error
func (*TestContext) MakePGPKey ¶
func (tc *TestContext) MakePGPKey(id string) (*PGPKeyBundle, error)
func (TestContext) MoveGpgKeyringTo ¶
func (tc TestContext) MoveGpgKeyringTo(dst TestContext) error
func (*TestContext) ResetLoginState ¶
func (tc *TestContext) ResetLoginState()
ResetLoginStateForTest simulates a shutdown and restart (for client state). Used by tests that need to clear out cached login state without logging out.
func (*TestContext) SetRuntimeDir ¶
func (tc *TestContext) SetRuntimeDir(s string)
type TestLoginUI ¶
func (*TestLoginUI) DisplayPaperKeyPhrase ¶
func (t *TestLoginUI) DisplayPaperKeyPhrase(_ context.Context, arg keybase1.DisplayPaperKeyPhraseArg) error
func (*TestLoginUI) DisplayPrimaryPaperKey ¶
func (t *TestLoginUI) DisplayPrimaryPaperKey(_ context.Context, arg keybase1.DisplayPrimaryPaperKeyArg) error
func (*TestLoginUI) GetEmailOrUsername ¶
func (*TestLoginUI) PromptRevokePaperKeys ¶
func (t *TestLoginUI) PromptRevokePaperKeys(_ context.Context, arg keybase1.PromptRevokePaperKeysArg) (bool, error)
type TestOutput ¶
type TestOutput struct {
// contains filtered or unexported fields
}
TestOutput is a mock interface for capturing and testing output
func NewTestOutput ¶
func NewTestOutput(e string, t *testing.T, c *bool) TestOutput
type TestParameters ¶
type TestParameters struct { ConfigFilename string Home string GPGHome string GPGOptions []string Debug bool // Whether we are in Devel Mode Devel bool // If we're in dev mode, the name for this test, with a random // suffix. DevelName string RuntimeDir string }
func (TestParameters) GetDebug ¶
func (tp TestParameters) GetDebug() (bool, bool)
type TestSecretUI ¶
type TestSecretUI struct { Passphrase string BackupPassphrase string StoreSecret bool CalledGetSecret bool CalledGetKBPassphrase bool CalledGetBUPassphrase bool CalledGetNewPassphrase bool CalledGetPassphrase bool }
func (*TestSecretUI) GetKeybasePassphrase ¶
func (t *TestSecretUI) GetKeybasePassphrase(keybase1.GetKeybasePassphraseArg) (keybase1.GetPassphraseRes, error)
func (*TestSecretUI) GetNewPassphrase ¶
func (t *TestSecretUI) GetNewPassphrase(keybase1.GetNewPassphraseArg) (keybase1.GetPassphraseRes, error)
func (*TestSecretUI) GetPaperKeyPassphrase ¶
func (t *TestSecretUI) GetPaperKeyPassphrase(keybase1.GetPaperKeyPassphraseArg) (string, error)
func (*TestSecretUI) GetPassphrase ¶
func (t *TestSecretUI) GetPassphrase(p keybase1.GUIEntryArg, terminal *keybase1.SecretEntryArg) (keybase1.GetPassphraseRes, error)
func (*TestSecretUI) GetSecret ¶
func (t *TestSecretUI) GetSecret(p keybase1.SecretEntryArg, terminal *keybase1.SecretEntryArg) (*keybase1.SecretEntryRes, error)
type TimeoutError ¶
type TimeoutError struct{}
func (TimeoutError) Error ¶
func (e TimeoutError) Error() string
func (TimeoutError) ToStatus ¶
func (e TimeoutError) ToStatus() keybase1.Status
type TimerSelector ¶
type TimerSelector int
TimerSelector allows us to select which timers we want on.
const ( // TimerNone means Timers Disabled TimerNone TimerSelector = 0 // TimerAPI enables API timers TimerAPI TimerSelector = 1 << iota // TimerXAPI enables External API timers TimerXAPI // TimerRPC enables RPC timers TimerRPC )
type TimerSet ¶
type TimerSet struct { Contextified // contains filtered or unexported fields }
TimerSet is the set of currently active timers
func NewTimerSet ¶
func NewTimerSet(g *GlobalContext) *TimerSet
NewTimerSet looks into the given context for configuration information about how to set up timers. It then returns the corresponding TimerSet.
func (TimerSet) Start ¶
func (s TimerSet) Start(sel TimerSelector) ReportingTimer
Start alloates and starts a new timer if the passed TimerSelector is currently enabled. Otherwise, it just returns a Dummy timer.
type TooManyKeysError ¶
type TooManyKeysError struct {
// contains filtered or unexported fields
}
func (TooManyKeysError) Error ¶
func (e TooManyKeysError) Error() string
type TorMode ¶
type TorMode int
func StringToTorMode ¶
func (TorMode) UseCookies ¶
func (TorMode) UseHeaders ¶
func (TorMode) UseSession ¶
type TorSessionRequiredError ¶
type TorSessionRequiredError struct{}
func (TorSessionRequiredError) Error ¶
func (t TorSessionRequiredError) Error() string
type TrackChainLink ¶
type TrackChainLink struct { GenericChainLink // contains filtered or unexported fields }
========================================================================= TrackChainLink
func LocalTrackChainLinkFor ¶
func LocalTrackChainLinkFor(tracker, trackee keybase1.UID, g *GlobalContext) (ret *TrackChainLink, err error)
func ParseTrackChainLink ¶
func ParseTrackChainLink(b GenericChainLink) (ret *TrackChainLink, err error)
func (*TrackChainLink) GetTrackedKeys ¶
func (l *TrackChainLink) GetTrackedKeys() ([]TrackedKey, error)
func (*TrackChainLink) GetTrackedUID ¶
func (l *TrackChainLink) GetTrackedUID() (keybase1.UID, error)
func (*TrackChainLink) GetTrackedUsername ¶
func (l *TrackChainLink) GetTrackedUsername() (string, error)
func (TrackChainLink) IsRemote ¶
func (l TrackChainLink) IsRemote() bool
func (*TrackChainLink) IsRevoked ¶
func (l *TrackChainLink) IsRevoked() bool
func (*TrackChainLink) RemoteKeyProofs ¶
func (l *TrackChainLink) RemoteKeyProofs() *jsonw.Wrapper
func (*TrackChainLink) ToDisplayString ¶
func (l *TrackChainLink) ToDisplayString() string
func (*TrackChainLink) ToServiceBlocks ¶
func (l *TrackChainLink) ToServiceBlocks() (ret []*ServiceBlock)
func (*TrackChainLink) Type ¶
func (l *TrackChainLink) Type() string
type TrackDiff ¶
type TrackDiff interface { BreaksTracking() bool ToDisplayString() string ToDisplayMarkup() *Markup IsSameAsTracked() bool GetTrackDiffType() keybase1.TrackDiffType }
func ComputeRemoteDiff ¶
func ComputeRemoteDiff(tracked, observed keybase1.ProofState) TrackDiff
type TrackDiffClash ¶
type TrackDiffClash struct {
// contains filtered or unexported fields
}
func (TrackDiffClash) BreaksTracking ¶
func (t TrackDiffClash) BreaksTracking() bool
func (TrackDiffClash) GetTrackDiffType ¶
func (t TrackDiffClash) GetTrackDiffType() keybase1.TrackDiffType
func (TrackDiffClash) IsSameAsTracked ¶
func (t TrackDiffClash) IsSameAsTracked() bool
func (TrackDiffClash) ToDisplayMarkup ¶
func (t TrackDiffClash) ToDisplayMarkup() *Markup
func (TrackDiffClash) ToDisplayString ¶
func (t TrackDiffClash) ToDisplayString() string
type TrackDiffNew ¶
type TrackDiffNew struct{}
func (TrackDiffNew) BreaksTracking ¶
func (t TrackDiffNew) BreaksTracking() bool
func (TrackDiffNew) GetTrackDiffType ¶
func (t TrackDiffNew) GetTrackDiffType() keybase1.TrackDiffType
func (TrackDiffNew) IsSameAsTracked ¶
func (t TrackDiffNew) IsSameAsTracked() bool
func (TrackDiffNew) ToDisplayMarkup ¶
func (t TrackDiffNew) ToDisplayMarkup() *Markup
func (TrackDiffNew) ToDisplayString ¶
func (t TrackDiffNew) ToDisplayString() string
type TrackDiffNone ¶
type TrackDiffNone struct{}
func (TrackDiffNone) BreaksTracking ¶
func (t TrackDiffNone) BreaksTracking() bool
func (TrackDiffNone) GetTrackDiffType ¶
func (t TrackDiffNone) GetTrackDiffType() keybase1.TrackDiffType
func (TrackDiffNone) IsSameAsTracked ¶
func (t TrackDiffNone) IsSameAsTracked() bool
func (TrackDiffNone) ToDisplayMarkup ¶
func (t TrackDiffNone) ToDisplayMarkup() *Markup
func (TrackDiffNone) ToDisplayString ¶
func (t TrackDiffNone) ToDisplayString() string
type TrackDiffRemoteChanged ¶
type TrackDiffRemoteChanged struct {
// contains filtered or unexported fields
}
func (TrackDiffRemoteChanged) BreaksTracking ¶
func (t TrackDiffRemoteChanged) BreaksTracking() bool
func (TrackDiffRemoteChanged) GetTrackDiffType ¶
func (t TrackDiffRemoteChanged) GetTrackDiffType() keybase1.TrackDiffType
func (TrackDiffRemoteChanged) IsSameAsTracked ¶
func (t TrackDiffRemoteChanged) IsSameAsTracked() bool
func (TrackDiffRemoteChanged) ToDisplayMarkup ¶
func (t TrackDiffRemoteChanged) ToDisplayMarkup() *Markup
func (TrackDiffRemoteChanged) ToDisplayString ¶
func (t TrackDiffRemoteChanged) ToDisplayString() string
type TrackDiffRemoteFail ¶
type TrackDiffRemoteFail struct {
// contains filtered or unexported fields
}
func (TrackDiffRemoteFail) BreaksTracking ¶
func (t TrackDiffRemoteFail) BreaksTracking() bool
func (TrackDiffRemoteFail) GetTrackDiffType ¶
func (t TrackDiffRemoteFail) GetTrackDiffType() keybase1.TrackDiffType
func (TrackDiffRemoteFail) IsSameAsTracked ¶
func (t TrackDiffRemoteFail) IsSameAsTracked() bool
func (TrackDiffRemoteFail) ToDisplayMarkup ¶
func (t TrackDiffRemoteFail) ToDisplayMarkup() *Markup
func (TrackDiffRemoteFail) ToDisplayString ¶
func (t TrackDiffRemoteFail) ToDisplayString() string
type TrackDiffRemoteWorking ¶
type TrackDiffRemoteWorking struct {
// contains filtered or unexported fields
}
func (TrackDiffRemoteWorking) BreaksTracking ¶
func (t TrackDiffRemoteWorking) BreaksTracking() bool
func (TrackDiffRemoteWorking) GetTrackDiffType ¶
func (t TrackDiffRemoteWorking) GetTrackDiffType() keybase1.TrackDiffType
func (TrackDiffRemoteWorking) IsSameAsTracked ¶
func (t TrackDiffRemoteWorking) IsSameAsTracked() bool
func (TrackDiffRemoteWorking) ToDisplayMarkup ¶
func (t TrackDiffRemoteWorking) ToDisplayMarkup() *Markup
func (TrackDiffRemoteWorking) ToDisplayString ¶
func (t TrackDiffRemoteWorking) ToDisplayString() string
type TrackDiffRevoked ¶
type TrackDiffRevoked struct {
// contains filtered or unexported fields
}
func (TrackDiffRevoked) BreaksTracking ¶
func (t TrackDiffRevoked) BreaksTracking() bool
func (TrackDiffRevoked) GetTrackDiffType ¶
func (t TrackDiffRevoked) GetTrackDiffType() keybase1.TrackDiffType
func (TrackDiffRevoked) IsSameAsTracked ¶
func (t TrackDiffRevoked) IsSameAsTracked() bool
func (TrackDiffRevoked) ToDisplayMarkup ¶
func (t TrackDiffRevoked) ToDisplayMarkup() *Markup
func (TrackDiffRevoked) ToDisplayString ¶
func (t TrackDiffRevoked) ToDisplayString() string
type TrackDiffUpgraded ¶
type TrackDiffUpgraded struct {
// contains filtered or unexported fields
}
func (TrackDiffUpgraded) BreaksTracking ¶
func (t TrackDiffUpgraded) BreaksTracking() bool
func (TrackDiffUpgraded) GetCurr ¶
func (t TrackDiffUpgraded) GetCurr() string
func (TrackDiffUpgraded) GetPrev ¶
func (t TrackDiffUpgraded) GetPrev() string
func (TrackDiffUpgraded) GetTrackDiffType ¶
func (t TrackDiffUpgraded) GetTrackDiffType() keybase1.TrackDiffType
func (TrackDiffUpgraded) IsSameAsTracked ¶
func (t TrackDiffUpgraded) IsSameAsTracked() bool
func (TrackDiffUpgraded) ToDisplayMarkup ¶
func (t TrackDiffUpgraded) ToDisplayMarkup() *Markup
func (TrackDiffUpgraded) ToDisplayString ¶
func (t TrackDiffUpgraded) ToDisplayString() string
type TrackIDComponent ¶
type TrackIDComponent interface { ToIDString() string ToKeyValuePair() (string, string) GetProofState() keybase1.ProofState LastWriterWins() bool }
Can be a ProofLinkWithState, one of the identities listed in a tracking statement, or a PGP Fingerprint!
type TrackInstructions ¶
type TrackLookup ¶
type TrackLookup struct {
// contains filtered or unexported fields
}
func NewTrackLookup ¶
func NewTrackLookup(link *TrackChainLink) *TrackLookup
func (*TrackLookup) GetCTime ¶
func (l *TrackLookup) GetCTime() time.Time
func (TrackLookup) GetProofState ¶
func (l TrackLookup) GetProofState(id string) keybase1.ProofState
func (TrackLookup) GetTrackedKeys ¶
func (l TrackLookup) GetTrackedKeys() []TrackedKey
func (TrackLookup) IsRemote ¶
func (l TrackLookup) IsRemote() bool
func (TrackLookup) ToSummary ¶
func (l TrackLookup) ToSummary() TrackSummary
type TrackSet ¶
type TrackSet struct {
// contains filtered or unexported fields
}
func NewTrackSet ¶
func NewTrackSet() *TrackSet
func (TrackSet) Add ¶
func (ts TrackSet) Add(t TrackIDComponent)
func (TrackSet) GetProofState ¶
func (ts TrackSet) GetProofState(id string) keybase1.ProofState
func (TrackSet) HasMember ¶
func (ts TrackSet) HasMember(t TrackIDComponent) bool
func (TrackSet) Subtract ¶
func (ts TrackSet) Subtract(b TrackSet) (out []TrackIDComponent)
type TrackSummary ¶
type TrackSummary struct {
// contains filtered or unexported fields
}
func ImportTrackSummary ¶
func ImportTrackSummary(s *keybase1.TrackSummary) *TrackSummary
func (TrackSummary) Export ¶
func (s TrackSummary) Export(username string) (ret keybase1.TrackSummary)
func (TrackSummary) GetCTime ¶
func (s TrackSummary) GetCTime() time.Time
func (TrackSummary) IsRemote ¶
func (s TrackSummary) IsRemote() bool
func (TrackSummary) Username ¶
func (s TrackSummary) Username() string
type TrackedKey ¶
type TrackedKey struct { KID keybase1.KID Fingerprint PGPFingerprint }
type TrackerSyncer ¶
type TrackerSyncer struct { // Locks the whole object sync.RWMutex Contextified // contains filtered or unexported fields }
func NewTrackerSyncer ¶
func NewTrackerSyncer(uid keybase1.UID, g *GlobalContext) *TrackerSyncer
func (*TrackerSyncer) Trackers ¶
func (t *TrackerSyncer) Trackers() *Trackers
type TwitterChecker ¶
type TwitterChecker struct {
// contains filtered or unexported fields
}
func (*TwitterChecker) CheckHint ¶
func (rc *TwitterChecker) CheckHint(h SigHint) ProofError
func (*TwitterChecker) CheckStatus ¶
func (rc *TwitterChecker) CheckStatus(h SigHint) ProofError
func (*TwitterChecker) GetTorError ¶
func (rc *TwitterChecker) GetTorError() ProofError
func (*TwitterChecker) ScreenNameCompare ¶
func (rc *TwitterChecker) ScreenNameCompare(s1, s2 string) bool
type TwitterServiceType ¶
type TwitterServiceType struct{ BaseServiceType }
func (TwitterServiceType) AllStringKeys ¶
func (t TwitterServiceType) AllStringKeys() []string
func (TwitterServiceType) CheckProofText ¶
func (TwitterServiceType) CheckUsername ¶
func (t TwitterServiceType) CheckUsername(s string) (err error)
func (TwitterServiceType) DisplayName ¶
func (t TwitterServiceType) DisplayName(un string) string
func (TwitterServiceType) GetPrompt ¶
func (t TwitterServiceType) GetPrompt() string
func (TwitterServiceType) GetProofType ¶
func (t TwitterServiceType) GetProofType() string
func (TwitterServiceType) GetTypeName ¶
func (t TwitterServiceType) GetTypeName() string
func (TwitterServiceType) NormalizeUsername ¶
func (t TwitterServiceType) NormalizeUsername(s string) (string, error)
func (TwitterServiceType) PostInstructions ¶
func (t TwitterServiceType) PostInstructions(un string) *Markup
func (TwitterServiceType) PrimaryStringKeys ¶
func (t TwitterServiceType) PrimaryStringKeys() []string
func (TwitterServiceType) RecheckProofPosting ¶
func (t TwitterServiceType) RecheckProofPosting(tryNumber int, status keybase1.ProofStatus, _ string) (warning *Markup, err error)
func (TwitterServiceType) ToChecker ¶
func (t TwitterServiceType) ToChecker() Checker
func (TwitterServiceType) ToServiceJSON ¶
func (t TwitterServiceType) ToServiceJSON(un string) *jsonw.Wrapper
type TypedChainLink ¶
type TypedChainLink interface { GetRevocations() []keybase1.SigID GetRevokeKids() []keybase1.KID GetSigID() keybase1.SigID GetArmoredSig() string ToDebugString() string Type() string ToDisplayString() string IsRevocationIsh() bool IsRevoked() bool GetRole() KeyRole GetSeqno() Seqno GetCTime() time.Time GetETime() time.Time GetPGPFingerprint() *PGPFingerprint GetPGPFullHash() string GetKID() keybase1.KID IsInCurrentFamily(u *User) bool GetUsername() string GetUID() keybase1.UID GetDelegatedKid() keybase1.KID GetParentKid() keybase1.KID VerifyReverseSig(ckf ComputedKeyFamily) error GetMerkleSeqno() int GetDevice() *Device // contains filtered or unexported methods }
type UI ¶
type UI interface { GetIdentifyUI() IdentifyUI GetIdentifyTrackUI(strict bool) IdentifyUI GetLoginUI() LoginUI GetSecretUI() SecretUI GetTerminalUI() TerminalUI GetDumbOutputUI() DumbOutputUI GetProveUI() ProveUI GetLogUI() LogUI GetGPGUI() GPGUI GetProvisionUI(role KexRole) ProvisionUI Configure() error Shutdown() error }
type UIConsumer ¶
type UIConsumer interface { Name() string RequiredUIs() []UIKind SubConsumers() []UIConsumer }
type UIDMismatchError ¶
type UIDMismatchError struct {
Msg string
}
func (UIDMismatchError) Error ¶
func (u UIDMismatchError) Error() string
type UIDelegationUnavailableError ¶
type UIDelegationUnavailableError struct{}
func (UIDelegationUnavailableError) Error ¶
func (e UIDelegationUnavailableError) Error() string
func (UIDelegationUnavailableError) ToStatus ¶
func (e UIDelegationUnavailableError) ToStatus() keybase1.Status
type UIRouter ¶
type UIRouter interface { SetUI(ConnectionID, UIKind) GetIdentifyUI() (IdentifyUI, error) GetSecretUI() (SecretUI, error) Shutdown() }
type UnexpectedKeyError ¶
type UnexpectedKeyError struct { }
func (UnexpectedKeyError) Error ¶
func (e UnexpectedKeyError) Error() string
type UnknownKeyTypeError ¶
type UnknownKeyTypeError struct {
// contains filtered or unexported fields
}
func (UnknownKeyTypeError) Error ¶
func (e UnknownKeyTypeError) Error() string
type UnknownSpecialKIDError ¶
type UnknownSpecialKIDError struct {
// contains filtered or unexported fields
}
func (UnknownSpecialKIDError) Error ¶
func (u UnknownSpecialKIDError) Error() string
type UnmarshalError ¶
type UnmarshalError struct {
T string
}
func (UnmarshalError) Error ¶
func (u UnmarshalError) Error() string
type UntrackChainLink ¶
type UntrackChainLink struct { GenericChainLink // contains filtered or unexported fields }
func ParseUntrackChainLink ¶
func ParseUntrackChainLink(b GenericChainLink) (ret *UntrackChainLink, err error)
func (*UntrackChainLink) IsRevocationIsh ¶
func (u *UntrackChainLink) IsRevocationIsh() bool
func (*UntrackChainLink) ToDisplayString ¶
func (u *UntrackChainLink) ToDisplayString() string
func (*UntrackChainLink) Type ¶
func (u *UntrackChainLink) Type() string
type UntrackError ¶
type UntrackError struct {
// contains filtered or unexported fields
}
func NewUntrackError ¶
func NewUntrackError(d string, a ...interface{}) UntrackError
func (UntrackError) Error ¶
func (e UntrackError) Error() string
type Usage ¶
func (Usage) UseKeyring ¶
type User ¶
type User struct { Contextified // contains filtered or unexported fields }
func LoadMe ¶
func LoadMe(arg LoadUserArg) (*User, error)
func LoadUser ¶
func LoadUser(arg LoadUserArg) (ret *User, err error)
func NewUserFromLocalStorage ¶
func NewUserFromLocalStorage(g *GlobalContext, o *jsonw.Wrapper) (*User, error)
func NewUserFromServer ¶
func NewUserFromServer(g *GlobalContext, o *jsonw.Wrapper) (*User, error)
func (*User) AllSyncedSecretKeys ¶
func (u *User) AllSyncedSecretKeys(lctx LoginContext) (keys []*SKB, err error)
AllSyncedSecretKeys returns all the PGP key blocks that were synced to API server. LoginContext can be nil if this isn't used while logging in, signing up.
func (*User) AuthenticationProof ¶
func (u *User) AuthenticationProof(key GenericKey, session string, ei int) (ret *jsonw.Wrapper, err error)
AuthenticationProof makes a JSON proof statement for the user that he can sign to prove a log-in to the system. If successful, the server will return with a session token.
func (*User) BaseProofSet ¶
BaseProofSet creates a basic proof set for a user with their keybase and uid proofs and any pgp fingerpring proofs.
func (*User) CheckBasicsFreshness ¶
func (*User) CryptocurrencySig ¶
func (*User) DeviceNames ¶
func (*User) FilterActivePGPKeys ¶
func (u *User) FilterActivePGPKeys(sibkey bool, query string) []*PGPKeyBundle
FilterActivePGPKeys returns the active pgp keys that match query.
func (*User) GetActivePGPFingerprints ¶
func (u *User) GetActivePGPFingerprints(sibkey bool) (ret []PGPFingerprint)
GetActivePGPFingerprints looks into the user's ComputedKeyFamily and returns only the fingerprint of the active PGP keys. If you want only sibkeys, then // specify sibkey=true.
func (*User) GetActivePGPKeys ¶
func (u *User) GetActivePGPKeys(sibkey bool) (ret []*PGPKeyBundle)
GetActivePGPKeys looks into the user's ComputedKeyFamily and returns only the active PGP keys. If you want only sibkeys, then specify sibkey=true.
func (*User) GetComputedKeyFamily ¶
func (u *User) GetComputedKeyFamily() (ret *ComputedKeyFamily)
func (*User) GetComputedKeyInfos ¶
func (u *User) GetComputedKeyInfos() *ComputedKeyInfos
func (*User) GetDeviceSibkey ¶
func (u *User) GetDeviceSibkey() (GenericKey, error)
func (*User) GetDeviceSubkey ¶
func (u *User) GetDeviceSubkey() (subkey GenericKey, err error)
func (*User) GetEldestKID ¶
May return an empty KID
func (*User) GetIDVersion ¶
func (*User) GetKeyFamily ¶
func (*User) GetNormalizedName ¶
func (u *User) GetNormalizedName() NormalizedUsername
func (*User) GetServerSeqno ¶
func (*User) GetSigChainLastKnownSeqno ¶
func (*User) GetSyncedSecretKey ¶
func (*User) HasActiveKey ¶
func (*User) HasDeviceInCurrentInstall ¶
Returns whether or not the current install has an active device sibkey.
func (*User) IDTable ¶
func (u *User) IDTable() *IdentityTable
func (*User) LoadSigChains ¶
func (u *User) LoadSigChains(allKeys bool, f *MerkleUserLeaf, self bool) (err error)
func (*User) MakeIDTable ¶
func (*User) RevokeKeysProof ¶
func (*User) RevokeSigsProof ¶
func (*User) ServiceProof ¶
func (u *User) ServiceProof(signingKey GenericKey, typ ServiceType, remotename string) (ret *jsonw.Wrapper, err error)
func (*User) SigChainBumpMT ¶
func (u *User) SigChainBumpMT(mt MerkleTriple)
func (*User) SigChainDump ¶
func (*User) SigningKeyPub ¶
func (u *User) SigningKeyPub() (GenericKey, error)
func (*User) StoreSigChain ¶
func (*User) StoreTopLevel ¶
func (*User) SyncSecrets ¶
func (*User) SyncedSecretKey ¶
func (u *User) SyncedSecretKey(lctx LoginContext) (ret *SKB, err error)
func (*User) ToTrackingStatement ¶
func (u *User) ToTrackingStatement(w *jsonw.Wrapper, outcome *IdentifyOutcome) (err error)
func (*User) ToTrackingStatementBasics ¶
func (*User) ToTrackingStatementKey ¶
func (*User) ToTrackingStatementPGPKeys ¶
func (*User) ToTrackingStatementSeqTail ¶
func (*User) ToUntrackingStatement ¶
func (*User) ToUntrackingStatementBasics ¶
func (*User) TrackChainLinkFor ¶
func (*User) TrackStatementJSON ¶
func (u *User) TrackStatementJSON(them *User, outcome *IdentifyOutcome) (string, error)
func (*User) TrackingProofFor ¶
func (u *User) TrackingProofFor(signingKey GenericKey, u2 *User, outcome *IdentifyOutcome) (ret *jsonw.Wrapper, err error)
func (*User) UntrackingProofFor ¶
func (*User) UpdatePassphraseProof ¶
func (u *User) UpdatePassphraseProof(key GenericKey, pwh string, ppGen PassphraseGeneration) (*jsonw.Wrapper, error)
func (*User) VerifySelfSig ¶
func (*User) VerifySelfSigByKey ¶
type UserCache ¶
type UserCache struct {
// contains filtered or unexported fields
}
UserCache stores User objects in memory for a fixed amount of time.
func NewUserCache ¶
NewUserCache creates a UserCache and sets the object max age to maxAge. Once a user is inserted, after maxAge duration passes, the user will be removed from the cache.
func (*UserCache) Get ¶
Get returns a user object. If none exists for uid, it will return NotFoundError.
type UserConfig ¶
type UserConfig struct { ID string `json:"id"` Name NormalizedUsername `json:"name"` Salt string `json:"salt"` Device *string `json:"device"` // contains filtered or unexported fields }
func ImportUserConfigFromJSONWrapper ¶
func ImportUserConfigFromJSONWrapper(jw *jsonw.Wrapper) (ret *UserConfig, err error)
func NewUserConfig ¶
func NewUserConfig(id keybase1.UID, name NormalizedUsername, salt []byte, dev keybase1.DeviceID) *UserConfig
func (UserConfig) GetDeviceID ¶
func (u UserConfig) GetDeviceID() keybase1.DeviceID
func (UserConfig) GetSalt ¶
func (u UserConfig) GetSalt() []byte
func (UserConfig) GetUID ¶
func (u UserConfig) GetUID() keybase1.UID
func (UserConfig) GetUsername ¶
func (u UserConfig) GetUsername() NormalizedUsername
func (*UserConfig) Import ¶
func (u *UserConfig) Import() (err error)
func (*UserConfig) SetDevice ¶
func (u *UserConfig) SetDevice(d keybase1.DeviceID)
type UserConfigWrapper ¶
type UserNotFoundError ¶
type UserNotFoundError struct {
// contains filtered or unexported fields
}
func (UserNotFoundError) Error ¶
func (u UserNotFoundError) Error() string
type VerificationError ¶
type VerificationError struct{}
func (VerificationError) Error ¶
func (v VerificationError) Error() string
type VerificationPath ¶
type VerificationPath struct { Contextified // contains filtered or unexported fields }
func (*VerificationPath) VerifyUser ¶
func (vp *VerificationPath) VerifyUser() (user *MerkleUserLeaf, err error)
func (*VerificationPath) VerifyUsername ¶
func (vp *VerificationPath) VerifyUsername() (username string, err error)
type WaitForItError ¶
type WaitForItError struct{}
func (WaitForItError) Error ¶
func (e WaitForItError) Error() string
type Warnings ¶
type Warnings struct {
// contains filtered or unexported fields
}
func ImportWarnings ¶
type WebChecker ¶
type WebChecker struct {
// contains filtered or unexported fields
}
func (*WebChecker) CheckHint ¶
func (rc *WebChecker) CheckHint(h SigHint) ProofError
func (*WebChecker) CheckStatus ¶
func (rc *WebChecker) CheckStatus(h SigHint) ProofError
func (*WebChecker) GetTorError ¶
func (rc *WebChecker) GetTorError() ProofError
type WebProofChainLink ¶
type WebProofChainLink struct { GenericChainLink // contains filtered or unexported fields }
func NewWebProofChainLink ¶
func NewWebProofChainLink(b GenericChainLink, p, h, proofText string) *WebProofChainLink
func (*WebProofChainLink) CheckDataJSON ¶
func (w *WebProofChainLink) CheckDataJSON() *jsonw.Wrapper
func (*WebProofChainLink) ComputeTrackDiff ¶
func (w *WebProofChainLink) ComputeTrackDiff(tl *TrackLookup) (res TrackDiff)
func (*WebProofChainLink) DisplayCheck ¶
func (w *WebProofChainLink) DisplayCheck(ui IdentifyUI, lcr LinkCheckResult)
func (*WebProofChainLink) GetHostname ¶
func (w *WebProofChainLink) GetHostname() string
func (*WebProofChainLink) GetProofType ¶
func (w *WebProofChainLink) GetProofType() keybase1.ProofType
func (*WebProofChainLink) GetProtocol ¶
func (w *WebProofChainLink) GetProtocol() string
func (*WebProofChainLink) GetRemoteUsername ¶
func (w *WebProofChainLink) GetRemoteUsername() string
func (*WebProofChainLink) LastWriterWins ¶
func (w *WebProofChainLink) LastWriterWins() bool
func (*WebProofChainLink) ProofText ¶
func (w *WebProofChainLink) ProofText() string
func (*WebProofChainLink) TableKey ¶
func (w *WebProofChainLink) TableKey() string
func (*WebProofChainLink) ToDisplayString ¶
func (w *WebProofChainLink) ToDisplayString() string
func (*WebProofChainLink) ToIDString ¶
func (w *WebProofChainLink) ToIDString() string
func (*WebProofChainLink) ToKeyValuePair ¶
func (w *WebProofChainLink) ToKeyValuePair() (string, string)
func (*WebProofChainLink) ToTrackingStatement ¶
func (w *WebProofChainLink) ToTrackingStatement(state keybase1.ProofState) (*jsonw.Wrapper, error)
func (*WebProofChainLink) Type ¶
func (w *WebProofChainLink) Type() string
type WebServiceType ¶
type WebServiceType struct{ BaseServiceType }
func (WebServiceType) AllStringKeys ¶
func (t WebServiceType) AllStringKeys() []string
func (WebServiceType) CheckProofText ¶
func (WebServiceType) CheckUsername ¶
func (t WebServiceType) CheckUsername(s string) error
func (WebServiceType) DisplayName ¶
func (t WebServiceType) DisplayName(un string) string
func (WebServiceType) GetAPIArgKey ¶
func (t WebServiceType) GetAPIArgKey() string
func (WebServiceType) GetPrompt ¶
func (t WebServiceType) GetPrompt() string
func (WebServiceType) GetProofType ¶
func (t WebServiceType) GetProofType() string
func (WebServiceType) GetTypeName ¶
func (t WebServiceType) GetTypeName() string
func (WebServiceType) LastWriterWins ¶
func (t WebServiceType) LastWriterWins() bool
func (WebServiceType) MarkupFilenames ¶
func (t WebServiceType) MarkupFilenames(un string, mkp *Markup)
func (WebServiceType) NormalizeUsername ¶
func (t WebServiceType) NormalizeUsername(s string) (ret string, err error)
func (WebServiceType) PostInstructions ¶
func (t WebServiceType) PostInstructions(un string) *Markup
func (WebServiceType) PreProofWarning ¶
func (t WebServiceType) PreProofWarning(un string) *Markup
func (WebServiceType) PrimaryStringKeys ¶
func (t WebServiceType) PrimaryStringKeys() []string
func (WebServiceType) RecheckProofPosting ¶
func (t WebServiceType) RecheckProofPosting(tryNumber int, status keybase1.ProofStatus, _ string) (warning *Markup, err error)
func (WebServiceType) ToChecker ¶
func (t WebServiceType) ToChecker() Checker
func (WebServiceType) ToServiceJSON ¶
func (t WebServiceType) ToServiceJSON(un string) *jsonw.Wrapper
type WebUnreachableError ¶
type WebUnreachableError struct {
// contains filtered or unexported fields
}
func (WebUnreachableError) Error ¶
func (h WebUnreachableError) Error() string
type WrongKeyError ¶
type WrongKeyError struct {
// contains filtered or unexported fields
}
func (WrongKeyError) Error ¶
func (e WrongKeyError) Error() string
type WrongKidError ¶
type WrongKidError struct {
// contains filtered or unexported fields
}
func (WrongKidError) Error ¶
func (w WrongKidError) Error() string
type WrongSigError ¶
type WrongSigError struct {
// contains filtered or unexported fields
}
func (WrongSigError) Error ¶
func (e WrongSigError) Error() string
type XdgPosix ¶
type XdgPosix struct {
Base
}
func (XdgPosix) RuntimeDir ¶
func (XdgPosix) ServiceSpawnDir ¶
Source Files ¶
- account.go
- api.go
- api_stub.go
- assertion.go
- assertion_parser.go
- base58.go
- base64_finder.go
- btc.go
- buf.go
- ca.go
- chain_link.go
- checkers.go
- client.go
- config.go
- connmgr.go
- constants.go
- constants_devel.go
- constants_nonbrew.go
- db.go
- delegatekey.go
- delegatekeyaggregator.go
- device.go
- env.go
- errors.go
- file.go
- flock.go
- flock_nix.go
- generickey.go
- globals.go
- gpg_cli.go
- gpg_index.go
- gpg_key.go
- home.go
- http.go
- id_table.go
- identify_cache.go
- identify_outcome.go
- identify_state.go
- identity.go
- interfaces.go
- json.go
- kbpackets.go
- kbsig.go
- kex2_router.go
- kex2_secret.go
- keyfamily.go
- keylock.go
- keymerge.go
- keyring.go
- kid.go
- leveldb.go
- lksec.go
- loaduser.go
- locktab.go
- login_session.go
- login_state.go
- loopback.go
- markup.go
- merkle_client.go
- naclgen.go
- naclwrap.go
- notify_router.go
- paperkey_phrase.go
- passphrase_stream.go
- passphrase_stream_cache.go
- peeker.go
- pgp_dec.go
- pgp_enc.go
- pgp_gen.go
- pgp_key.go
- pgp_lookup.go
- post.go
- proof_cache.go
- proof_checkers.go
- proof_checkers_devel.go
- proof_support_coinbase.go
- proof_support_dns.go
- proof_support_github.go
- proof_support_hackernews.go
- proof_support_reddit.go
- proof_support_rooter.go
- proof_support_twitter.go
- proof_support_web.go
- proxyca.go
- remote_proof_links.go
- resolve.go
- rpc_exim.go
- rpc_log.go
- runmode.go
- secret_store.go
- secret_store_none.go
- secwords.go
- service_info.go
- services.go
- session.go
- sig.go
- sig_chain.go
- sig_hints.go
- sign.go
- skb.go
- socket.go
- socket_nix.go
- special_keys.go
- status.go
- stream.go
- sync_secret.go
- sync_trackers.go
- syncer.go
- tablify.go
- test_common.go
- timer.go
- tmpfile.go
- tor.go
- track.go
- uid.go
- uigroup.go
- upgrade_instructions.go
- user.go
- user_cache.go
- userconfig.go
- util.go
- util_nix.go
- version.go
- warning.go