cyphergraphy 0.3.0

Implementation-independent abstractions for main cryptographic algorithms (part of cyphernet suite)
Documentation
# Cyphergraphy: Implementation-independent abstractions for main cryptographic algorithms

![Build](https://github.com/Cyphernet-DAO/rust-cyphernet/workflows/Build/badge.svg)
![Tests](https://github.com/Cyphernet-DAO/rust-cyphernet/workflows/Tests/badge.svg)
![Lints](https://github.com/Cyphernet-DAO/rust-cyphernet/workflows/Lints/badge.svg)
[![codecov](https://codecov.io/gh/Cyphernet-DAO/rust-cyphernet/branch/master/graph/badge.svg)](https://codecov.io/gh/Cyphernet-DAO/rust-cyphernet)

[![crates.io](https://img.shields.io/crates/v/cyphergraphy)](https://crates.io/crates/cyphergraphy)
[![Docs](https://docs.rs/cyphergraphy/badge.svg)](https://docs.rs/cyphergraphy)
[![Apache-2 licensed](https://img.shields.io/crates/l/cyphergraphy)](./LICENSE)


## Overview

Implementation-independent abstractions for main cryptographic algorithms used 
for end-to-end encryption and authorization:
- Algorithms based on Edwards curves:
  - ECDH with X25519 scheme using Curve25519 keys
  - EdDSA signatures with Ed25519 sheme using Edwards25519 keys
- Algorithms based on NSA Secp256k1 curve:
  - ECDH with normal Secp256k1 keys
  - ECDSA signatures with normal Secp256k1 keys
  - Schnorr signatures with BIP340 scheme and x-only public keys
- Digest algorithms with a unified API
  - SHA2: SHA256 & SHA512
  - SHA3: SHA3-256 & SHA3-512
  - Blake3

The library is a part of [rust cyphernet suite](https://github.com/Cyphernet-DAO/rust-cyphernet)
and used by other libraries of the suite for handling internet addresses.


## Manifest

```yaml
Name: cyphergraphy
Type: Library
Kind: Free software
License: Apache-2.0
Language: Rust
Compiler: 1.65
Author: Maxim Orlovsky
Maintained: Cyphernet DAO, Switzerland
Maintainers:
  Maxim Orlovsky:
    GitHub: @dr-orlovsky
    GPG: EAE730CEC0C663763F028A5860094BAF18A26EC9
    SSH: BoSGFzbyOKC7Jm28MJElFboGepihCpHop60nS8OoG/A
    EMail: dr@orlovsky.ch
  Alexis Sellier:
    GitHub: @cloudhead
    SSH: iTDjRHSIaoL8dpHbQ0mv+y0IQqPufGl2hQwk4TbXFlw
```


## Documentation

API reference documentation for the library can be accessed at
<https://docs.rs/cyphergraphy/>.


## Licensing

The libraries are distributed on the terms of Apache 2.0 opensource license.
See [LICENCE](LICENSE) file for the license details.