Core Framework Encryption Service + Proxy server - with a Cryptonote twist
This commit introduces a streaming API to the `trix` package, making it more memory-efficient for large payloads. - Adds `EncodeTo(io.Writer)` and `DecodeFrom(io.Reader)` functions to handle streaming data. - Refactors the existing `Encode` and `Decode` functions to be wrappers around the new streaming API, ensuring backward compatibility. - Adds a specific `ErrInvalidHeaderLength` error to the `Decode` function to provide better error feedback. - Includes a comprehensive set of "Good, Bad, Ugly" tests for the new streaming functionality, including tests for failing readers and writers. |
||
|---|---|---|
| .dataset | ||
| .github | ||
| .run | ||
| docs | ||
| examples | ||
| pkg | ||
| vault | ||
| .gitignore | ||
| DISCLAIMER.md | ||
| go.mod | ||
| go.sum | ||
| go.work | ||
| LICENCE | ||
| README.md | ||
| Taskfile.yml | ||
Enchantrix
Enchantrix is a Go-based encryption library for the Core framework, designed to provide a secure and easy-to-use framework for handling sensitive data in Web3 applications. It will feature Poly-ChaCha stream proxying and a custom .trix file format for encrypted data.
Test-Driven Development
This project follows a strict Test-Driven Development (TDD) methodology. All new functionality must be accompanied by a comprehensive suite of tests.
Getting Started
To get started with Enchantrix, you'll need to have Go installed. You can then run the tests using the following command:
go test ./...