go/

directory
v1.0.12-0 Latest Latest
Warning

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

Go to latest
Published: Feb 15, 2016 License: BSD-3-Clause, BSD-3-Clause

README

Keybase

This repository contains the Keybase core crypto libraries, command-line utility, and local Keybase service. All code is written in the Go Language, making heavy use of Go's OpenPGP and NaCl Library implementation.

Our intended architecture is that keybase runs a local service on Desktop environments, which can be connected to over a local Unix domain sockets on OSX/Linux, and over named pipes on Windows. The persistent service will eventually listen for asynchronous server updates, and will serve several clients, like the command-line utility, the graphical desktop app (see electron), and the Keybase FUSE-mounted file system.

For now, the only client ready for production is the command-line utility.

Status

The Keybase service/client is approaching a release-ready state on OSX and Linux, with Windows shortly behind. Code in this repository is safe to run against either our production site or our staging server.

Install production client

Mac
brew update
brew install keybase
Linux

Download the appropriate package:

Building

cd $GOPATH/src/github.com/keybase/client/go/keybase # assuming a proper $GOPATH
export GO15VENDOREXPERIMENT=1                       # all dependencies are vendored
go install --tags production                        # otherwise it will default to 'devel' mode
export PATH=$PATH:$GOPATH/bin                       # if it's not in your path already

Run the service

keybase service

Or specify a custom home directory (and use -d for debug):

keybase -H ~/Projects/Keybase/dev -d service

Run the client

keybase login
keybase id max

Or you can run the client in "Standalone" Mode

# No service needed, but you'll be repeatedly prompted for your passphrase
keybase --standalone id max

License

Most code is released under the New BSD (3 Clause) License.

Directories

Path Synopsis
Code used to support authentication tokens for arbitrary purposes.
Code used to support authentication tokens for arbitrary purposes.
this command is only for testing purposes this is the list of commands for all versions of the client.
this command is only for testing purposes this is the list of commands for all versions of the client.
encoding
PaperKeyPrimary creates the initial paper backup key for a user.
PaperKeyPrimary creates the initial paper backup key for a user.
Code used in populating JSON objects to generating Keybase-style signatures.
Code used in populating JSON objects to generating Keybase-style signatures.
Package minterm implements minimal terminal functions.
Package minterm implements minimal terminal functions.
Package saltpack is an implementation of the saltpack message format.
Package saltpack is an implementation of the saltpack message format.
basic
Package basic is a basic implementation of a saltpack key/keyring configuration.
Package basic is a basic implementation of a saltpack key/keyring configuration.
tools
zip

Jump to

Keyboard shortcuts

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