annihilation 0.1.0-alpha.2

Pure Rust implementation of Annihilative Keys, cryptographic key/antikey pairs bound by proof-of-work and elliptic curve point relationships.
Documentation

Annihilative Keys in Rust

Crates.io Version Crates.io License docs.rs

Pure Rust implementation of Annihilative Keys.

Documentation

This project contains new and experimental cryptography that has not undergone any review or audit. In the absence of cryptanalysis, use at your own risk.

About

Annihilative Keys provide a novel construction where a pair of cryptographic keys, consisting of a key and antikey, are derived from separate keying materials. An annihilative key consists of:

  • A mined proof-of-work solution, consisting of an identity byte, cryptographic commitment, authenticated body, and constraint parameter.
  • A compressed elliptic curve point on Curve25519.

A key and antikey together form an annihilative pair, bound through computational proof-of-work and an elliptic curve point relationship. A valid pair is capable of producing a symmetric key through annihilation. As long as one half of the pair remains secret, the secrecy of the derived annihilation key is preserved.

Minimum Supported Rust Version

Rust 1.85.1 or higher.

License

Licensed under the MIT License.