lrs

command module
v0.0.0-...-3fbf41a Latest Latest
Warning

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

Go to latest
Published: Nov 17, 2021 License: GPL-3.0 Imports: 16 Imported by: 0

README

lrs

Implementation of linkable ring signatures using elliptic curve cryptography in Go. This prototype is research code and should not be used with sensitive data. It definitely has bugs!

Getting Started

Installing

To start using linkable ring signatures, install Go 1.14 or above and build:

$ go build
Run all tests
$ go test ./...
Create keys

Before starting you have to generate the signers public and private keys and a folder with public keys. Create key pairs:

$ lrs --gen
Sign a message
$ lrs --sign /path/to/pubkey/dir /path/to/privkey.priv message.txt
Check if signature is valid
$ lrs --verify /path/to/signature.sig
Check if signatures are created by the same private key
$ lrs --link /path/to/signature1.sig /path/to/signature2.sig
Benchmark 1000 public keys
$ lrs --benchmark 1000
Linked ring signature:
Total avg sign time was 0.771589(0.009996)
Total avg verify time was 0.765127(0.013479)
Simple ECC signature:
Total avg sign time was 0.0001766443(0.0001004724)
Total avg verify time was 0.0000000856(0.0000000311)

References

This implementation is based on ring-go and the Monero paper Ring Confidential Transactions

Documentation

The Go Gopher

There is no documentation for this package.

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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