Update syntheticbird_cuprate_arti_2_months.md

This commit is contained in:
SyntheticBird 2025-03-11 13:54:53 +00:00
parent 937f4ac306
commit e1a832a1df

View File

@ -30,33 +30,28 @@ Cuprate is currently in alpha version and a lot of features are planned on the r
I will work for an estimated 2 months, from April to end of May, on Cuprate with the goal of implementing native Tor support into `cuprated` through the `arti-client` crate and other miscellaneous improvements.
At the end of this CCS, testers will be able to:
- Bootstrap Tor network within Cuprate
- Bootstrap Tor network within Cuprate or use Tor system daemon.
- Use Tor for outbound clearnet connections.
- Natively connect to onion monero nodes.
- Generate an onion service for accepting inbound Tor connections.
# Tasks
The set of tasks to complete can be separated into 3 categories:
The planned set of tasks to complete can be found at this Github gist: https://gist.github.com/SyntheticBird45/4c554d3c1e7ae6f8d237d7dd49c2d2f0
### 1. Outbound Tor support for P2P
It is subject to change but overall the required work can be separated into 3 categories:
- Definition of a new `Transport` trait and `TcpTransport`, `TorTransport` implementations.
- Adaptation of current P2P components to this new scheme.
- Definition of a new `NetworkZone` `Tor` for connecting to onion service nodes.
- Adaptation of `cuprated` to parse new config/flags, initialize Tor runtime/boostrap, make `IncomingTxHandler` and Dandelion related services *tor-aware* and capable of relaying on both network.
- Add arguments and configuration for users. (override data directory path, enforce isolated circuits...)
### 1. Alternative network integration into P2P components.
### 2. Inbound Tor support for P2P
Currently, Some P2P components have limited support for alternative network rules. This will require modifying `AddressBook`, `Connector`, `HandshakeBuilder`, `cuprate-dandelion` crate and `cuprated`'s dandelion implementation, and others to be *anonymization-network-aware*. After this work, we will define a new `NetworkZone` called `Tor` to connect to onion monero nodes.
- Implement Onion service generation and launch in `cuprated`.
- Implement P2P incoming connection listener (`--anonymous-inbound` equivalent).
- Add arguments and configuration for users. (enable PoW)
### 2. Implementation of Arti and Tor Daemon support
Implementing `arti-client` inside `cuprated` and `cuprate-p2p{-*}`. Configurations, initialization, bootstrapping and launching onion services if requested. System tor daemon will also be supported.
### 3. Documentation
- Update Architectural book
- Update User book
Update [Architectural book](https://architecture.cuprate.org) and [User book](https://user.cuprate.org/)
# Additional work