#signature-scheme #elliptic-curve #monero #ristretto

no-std nazgul

A library that implements various ring signature schemes

11 releases (1 stable)

1.0.0 Oct 1, 2023
0.1.10 Oct 25, 2020
0.1.7 Sep 24, 2020
0.1.5 May 31, 2020

#1601 in Cryptography


Used in passring

MIT license

85KB
2K SLoC

Nazgul

A library that implements Ring Signatures. The following schemes have been implemented based on Chapter 3 of Zero to Monero 2.0 (Z2M2):

  • Spontaneous Anonymous Group (SAG) signatures
  • Back’s Linkable Spontaneous Anonymous Group (bLSAG) signatures
  • Multilayer Linkable Spontaneous Anonymous Group (MLSAG) signatures
  • Concise Linkable Spontaneous Anonymous Group (CLSAG) signatures

The following scheme has also been implemented from outside Z2M2:

All blockquotes (except this one) in this documentation are from Z2M2

This library is designed to work with any 512-bit (64 byte output) hashing function. It uses the Ristretto elliptic curve for ease of use and better security.

This library is #![no_std] by default so it is possible to compile this library for embedded devices and WebAssembly but we haven't tried.

Documentation

It is here

Dependencies

~1.5–2.4MB
~51K SLoC