Coder Social home page Coder Social logo

digideskio / keyshop Goto Github PK

View Code? Open in Web Editor NEW

This project forked from yahooarchive/keyshop

0.0 1.0 0.0 220 KB

Stub keyserver for the End-to-End extension

Home Page: https://github.com/yahoo/end-to-end

License: Other

Go 99.34% Shell 0.66%

keyshop's Introduction

Keyshop: a stub keyserver for E2E

This is a tiny Golang keyserver stub provided for testing the E2E extension.

I don't anticipate pushing much new code to this branch myself; but I'd happily accept pull requests to make this actually useful (and provide, like, actual security properties).

Before you even think about deploying this accessible on anything but localhost, you MUST do something like

ag 'FIXME|OSS' --go -C4

read the comments, and fix the FIXMEs.

If you want to deploy this in a realistic environment, you may want to privilege-separate the key authority. PRs to support using cloud HSMs would be accepted.

Note: DO NOT deploy this in production using Go 1.4, unless you incorporate the broken-random-safe ECDSA patch here

(It's called keyshop because I have a low opinion of certificate authorities, which this essentially is.)

Building

Install an official tarball or use your platform-of-choice's package manager. Or do the right thing, and build Go from source.

Just run:

go get github.com/yahoo/keyshop/ks/cmd/...

and you'll have three new Go binaries in your $GOPATH/bin. If you are Yahoo-internal, you probably want to clone this repo to its import path. E.g.:

git clone $PARANOIDS_GIT/keyshop-oss.git \
  ${GOPATH}/src/github.com/yahoo/keyshop

Using

Add ${GOPATH}/bin to your path and

cd ${GOPATH}/src/github.com/yahoo/keyshop
genkauth
./scripts/mktls.sh
ks -alsologtostderr -v 4 -log_dir ./data/logs

TODO for open-source version

Well, despite the disclaimer above, I probably will:

  • Add an API spec in some format that can be pretty-printed.
  • Add sanitized test data.
  • Clean up and release the API conformance-test driver (which would then, effectively, be an implementation of a client in Python).

keyshop's People

Contributors

dlg-yahoo avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.