Sudo-Ivan f3d22dfcd4 0.3.1
2024-12-31 15:15:06 -06:00
2024-12-31 14:33:58 -06:00
2024-12-31 14:12:55 -06:00
2024-12-31 15:15:06 -06:00
2024-12-31 15:15:06 -06:00
2024-12-31 17:51:22 +00:00
2024-12-31 14:41:05 -06:00
2024-12-31 15:15:06 -06:00
2024-12-30 01:56:25 -06:00
2024-12-31 14:34:04 -06:00
2024-12-31 15:15:06 -06:00
2024-12-31 15:15:06 -06:00

Reticulum-Go

Reticulum Network implementation in Go.

Aiming for full spec compatibility with the Python version 0.8.8+.

Go 1.23.4

Packages:

  • golang.org/x/crypto

To-Do List

Core Components (In Progress)

  • Basic Configuration System

    • Basic config structure
    • Default settings
    • Config file loading/saving
    • Path management
  • Constants Definition (Testing required)

    • Packet constants
    • MTU constants
    • Header types
    • Additional protocol constants
  • Identity Management (Testing required)

    • Identity creation
    • Key pair generation
    • Identity storage/recall
    • Public key handling
    • Signature verification
    • Hash functions
  • Cryptographic Primitives (Testing required)

    • Ed25519
    • Curve25519
    • AES-GCM
    • SHA-256
    • HKDF
    • Secure random number generation
    • HMAC
  • Packet Handling (In Progress)

    • Packet creation
    • Packet validation
    • Basic proof system
    • Packet encryption
    • Signature verification
    • Testing of packet encrypt/decrypt/sign/proof
  • Transport Layer (In Progress)

    • Path management
    • Basic packet routing
    • Announce handling
    • Link management
    • Resource cleanup
    • Network layer integration
    • Testing announce from go client to python client
    • Testing path finding and caching

Interface Implementation (In Progress)

  • UDP Interface
  • TCP Interface
  • Auto Interface
  • Local Interface (In Progress)
  • I2P Interface
  • Pipe Interface
  • RNode Interface
  • RNode Multiinterface
  • Serial Interface
  • AX25KISS Interface
  • Interface Discovery
  • Interface Modes
    • Full mode
    • Gateway mode
    • Access point mode
    • Roaming mode
    • Boundary mode

Destination System (Testing required)

  • Destination creation
  • Destination types (IN/OUT)
  • Destination aspects
  • Announce implementation
  • Ratchet support
  • Request handlers
  • Link establishment
  • Link teardown
  • Basic packet transfer
  • Encryption/Decryption
  • Identity verification
  • Request/Response handling
  • Session key management
  • Link state tracking

Resource System (Testing required)

  • Resource creation
  • Resource transfer
  • Compression
  • Progress tracking
  • Segmentation
  • Cleanup routines

Compatibility

  • RNS Utilities.
  • Reticulum config.

Testing & Validation

  • Unit tests for all components (Link, Resource, Destination, Identity, Packet, Transport, Interface)
  • Integration tests
  • Cross-client compatibility tests
  • Performance benchmarks
  • Security auditing (When Reticulum is 1.0 / stable)

Documentation

  • API documentation
  • Usage examples

Cleanup

  • Seperate Cryptography from identity.go to their own files.
  • Move constants to their own files.
  • Remove default community interfaces in default config creation after testing.

Other

  • Rate limiting
  • QoS implementation?

Ivans Future Addon Packages

  • Post-quantum cryptographic primitives (separate package)
  • Hardware security module (HSM) support (separate package)
  • Encrypted storage for identities (separate package)
v0.6.0 Latest
2025-12-30 18:41:36 +00:00
Languages
Go 96.3%
JavaScript 3.2%
Nix 0.3%
Dockerfile 0.1%
Shell 0.1%