Skip to content

Tor / hidden service / .onion support? #21

@scion-driveway-situation

Description

What is required on the Pyramid side to support running it behind a Hidden Service?
In some initial testing,, we've tried putting it behind a Hidden Service but right away things fail (visiting the .onion variation in Tor Browser with lowest security settings):

  • "Login" action just seems to reload the page,, no helpful errors in the console. Verified the nostr connection widget is connected to an invited account.
    • the same action works fine on the clearnet version
  • The "Browse" feature, when opening Jumble, loads the metadata in the header but Jumble presents this as a relay I'm not a member of. "Request to Join Relay" button,, no notes visible, etc.
    • the same action woks fine on the clearnet version. Jumble loads the same metadata, but shows "Share something on this relay",, loads the notes, etc.

The first issue seems like a Pyramid problem, but the second may only be a Jumble issue (perhaps it should use relay pubkey as Canonical Identity).

Is there a larger issue here with regards to relays advertising multiple URLs for themselves so that clients can display them properly? A NIP-11 extension comes to mind, but that seems difficult to coordinate. Maybe using NIP-66 would be helpful? I'm beyond my depth here on how the problem of a single relay providing clearnet and onion endpoints is handled across nostr,, if at all.. That combined with I'm not sure if there are Pyramid-specific items to handle; Perhaps:

  • Add a settings for alternate_domains, when NIP-11 is requested, check the incoming Host header, if that matches one of ours, return that URL in the response? (self pubkey would stay unchanged. clients could use this information for equivalence)
  • just start adding alternative_urls to NIP-11 responses.... :|

Is there some place where discussion is/has happened on how to best handle this topic of onion relays?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions