Categorygithub.com/yahoo/coname
modulepackage
0.0.0-20170609175141-84592ddf8673
Repository: https://github.com/yahoo/coname.git
Documentation: pkg.go.dev

# README

coname Build Status GoDoc

This repository contains a WORK-IN-PROGRESS implementation of an EXPERIMENTAL cooperative keyserver design based on ideas from dename (readme, code, talk) and CONIKS (paper, code). NO STABILITY is offered: things that are very likely going to change include the network protocol, the implementation, the internal interfaces, the import path, and the name. Sometime in the future this implementation might reach feature (and performance) parity with dename, along with a CONIKS-like username privacy layer and high-availability curated namespaces.

development

You need a Golang development environment, a protocol buffer schema parser (protoc) that understands protobuf3 , Go protobuf3 libraries, the gogoprotobuf code generation tool and grpc for Go. On Arch Linux this comes down to pacman -S go, aura -Ak protobuf3, go get github.com/yahoo/coname/... github.com/andres-erbsen/tlstestutil.

disclaimer

As this project includes code (from dename) that I wrote and released as open source when I was employed by Google, here is a little disclaimer that I was asked to attach to the code: This is not a Google project.

# Packages

No description provided by the author
No description provided by the author
Package ed25519 implements the Ed25519 signature algorithm.
No description provided by the author
No description provided by the author
No description provided by the author
Package proto is a generated protocol buffer package.
No description provided by the author
Package vrf implements a verifiable random function using the Edwards form of Curve25519, SHA3 and the Elligator map.

# Functions

No description provided by the author
No description provided by the author
CheckQuorum evaluates whether the quorum requirement want can be satisfied by ratifications of the verifiers in have.
No description provided by the author
No description provided by the author
This is the same as in the CONIKS paper.
Differences from the CONIKS paper: * Add an identifier byte at the beginning to make it impossible for this to collide with leaves or empty branches.
This is the same as in the CONIKS paper: H(k_leaf || nonce || index || depth || value).
ListQuorum inserts all verifiers mentioned in e to out.
No description provided by the author
No description provided by the author
In each byte, the bits are ordered MSB to LSB.
In each byte, the bits are ordered MSB to LSB.
TreeLookup looks up the entry at a particular index in the snapshot.
No description provided by the author
No description provided by the author
VerifyPolicy returns whether, by policy, action is justified by evidence.
VerifySignature returns true iff sig is a valid signature of message by verifier.
VerifyUpdate returns nil iff replacing entry current (nil if none) with next is justified given the evidence in update.

# Constants

No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author

# Structs

No description provided by the author

# Interfaces

No description provided by the author