Skip to content

ObolNetwork/kryptology

 
 

Repository files navigation

Kryptology

Coinbase's advanced cryptography library

Caution

This fork is not maintained actively, it is only used as a way for the Obol team to update critical dependencies on Charon. It will be deprecated soon

Caution

The FROST DKG implementation in this repository might be vulnerable to a DDoS attack, which could potentially disrupt the keys being generated. Charon is immune to that thanks to its defensive programming approach.

Quickstart

Use the latest version of this library:

go get github.com/coinbase/kryptology

Pin a specific release of this library:

go get github.com/coinbase/[email protected]

Documentation

Public documentations can be found at https://pkg.go.dev/github.com/coinbase/kryptology

To access the documentation of the local version, run godoc -http=:6060 and open the following url in your browser.

http://localhost:6060/pkg/github.com/coinbase/kryptology/

Developer Setup

Prerequisites: golang 1.17, make

git clone [email protected]/coinbase/kryptology.git && make 

Components

The following is the list of primitives and protocols that are implemented in this repository.

Curves

The curve abstraction code can be found at pkg/core/curves/curve.go

The curves that implement this abstraction are as follows.

Protocols

The generic protocol interface pkg/core/protocol/protocol.go. This abstraction is currently only used in DKLs18 implementation.

Contributing

  • Versioning: vMajor.Minor.Patch
    • Major revision indicates breaking API change or significant new features
    • Minor revision indicates no API breaking changes and may include significant new features or documentation
    • Patch indicates no API breaking changes and may include only fixes

About

No description, website, or topics provided.

Resources

License

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Go 99.1%
  • Other 0.9%