From 3ab258cde6a4ae5deaf0b4fcc3150d531d462913 Mon Sep 17 00:00:00 2001 From: eyedeekay Date: Sun, 3 Nov 2024 15:53:13 -0500 Subject: [PATCH] Management: add ROADMAP.md --- ROADMAP.md | 41 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 41 insertions(+) create mode 100644 ROADMAP.md diff --git a/ROADMAP.md b/ROADMAP.md new file mode 100644 index 0000000..56af0b4 --- /dev/null +++ b/ROADMAP.md @@ -0,0 +1,41 @@ +# go-i2p Implementation Roadmap + +## Transport Layer (NTCP2) +- Build on existing lib/transport/noise implementation +- Core NTCP2 components: + * Session handshake using noise protocol + * Connection management + * I2NP message transport + +## Reseed System +- SU3 file format implementation: + * Format parsing and validation(Much of this work is done in reseed-tools, may need to be moved here) + * Signature verification system(Much of this work is done in reseed-tools, may need to be moved here) +- Local reseed functionality: + * File-based reseed operations +- Self-signed/Package-pinned X.509 certificate handling for reseed validation + +## NetDb and Database Store +- Database Store message handling: + * Message structure implementation + * Message handling implementation +- NetDb core implementation: + * RouterInfo management + * LeaseSet management + * Lookup system + * Storage interface + * Peer selection logic?(Maybe do something very basic for now like i2pd used to do, and then improve it later, the important part will be interface design at first) + +## Tunnel Implementation +- Tunnel cryptography: + * Key generation and management + * Layered encryption scheme +- Message processing: + * Build request/response handling + * Gateway implementation + * Message forwarding logic + +Notes: +- Excluding legacy protocols (SSU1, NTCP1, elgamal, DSA) +- Leveraging existing noise protocol implementation +- SSU2 is not on this roadmap but is fair game for implementation as soon as NTCP2 is done. We're focused on NTCP2 to get this thing sending I2NP messages. \ No newline at end of file