Skip to content
GitLab
Projects Groups Snippets
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in
  • T Tor Specifications
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 136
    • Issues 136
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 9
    • Merge requests 9
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Monitor
    • Monitor
    • Incidents
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • The Tor Project
  • Core
  • Tor Specifications
  • Issues
  • #64
Closed
Open
Issue created Sep 20, 2021 by cheako@cheako

Interoperation with libp2p?

Note: I'm not part of the libp2p team, I just enjoy working on stuff exactly like this. Thinking out loud: NAT traversal can use a rendezvous node, hidden services are an intriguing option. An evolution to this is for libp2p streams to carry tor frames, and is trivial to add to libp2p. I understand that many applications may want preferential treatment, and I'm not arguing that libp2p is somehow more deserving.

There are two wants I believe would benefit libp2p. This first is to be able to advertise libp2p network in the directory, a 16bit network ID would be sufficient(where about 16 networks could be advertised). The second is to be able to send tor frames that unwrap to libp2p frames once they reach a node advertising being part of a libp2p network or networks(by way of using masking bits). I feel the second could be accomplished with hidden service, but it feels more natural to want an RPC.

Thanks.

To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information
Assignee
Assign to
Time tracking