-
Notifications
You must be signed in to change notification settings - Fork 143
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
24e83f3
commit bded776
Showing
1 changed file
with
23 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,23 @@ | ||
|
||
# noise_sv2 | ||
|
||
[](https://crates.io/crates/const_sv2) | ||
[](https://docs.rs/const_sv2) | ||
[](https://blog.rust-lang.org/2023/12/28/Rust-1.75.0.html) | ||
[](https://github.com/stratum-mining/stratum/blob/main/LICENSE.md) | ||
[](https://app.codecov.io/gh/stratum-mining/stratum/tree/main/protocols%2Fv2%2Fnoise-sv2) | ||
|
||
`noise_sv2` is primarily intended to secure communication in the Stratum V2 (Sv2) protocol. It handles the necessary Noise handshakes, encrypts outgoing messages, and decrypts incoming responses, ensuring privacy and integrity across the communication link between Sv2 roles. See the [Protocol Security specification](https://github.com/stratum-mining/sv2-spec/blob/main/04-Protocol-Security.md) for more details. | ||
|
||
## Key Capabilities | ||
* **Secure Communication**: Provides encryption and authentication for messages exchanged between different Sv2 roles. | ||
* **Cipher Support**: Includes support for both `AES-GCM` and `ChaCha20-Poly1305`. | ||
* **Handshake Roles**: Implements the `Initiator` and `Responder` roles required by the Noise handshake, allowing both sides of a connection to establish secure communication. | ||
* **Cryptographic Helpers**: Facilitates the management of cryptographic state and encryption operations. | ||
|
||
## Usage | ||
To include this crate in your project, run: | ||
|
||
```bash | ||
cargo add noise_sv2 | ||
``` |