#onion-service #applications #anonymous #secure #protocols #anonymity #peer

gosling

A library for developing fully anonymous, peer-to-peer, metadata-resistant applications using tor onion services

5 releases (3 breaking)

new 0.4.0 Nov 17, 2024
0.3.0 Aug 24, 2024
0.2.0 Jul 5, 2024
0.1.1 Mar 15, 2024
0.1.0 Dec 3, 2023

#1248 in Network programming

Download history 1/week @ 2024-07-29 146/week @ 2024-08-19 23/week @ 2024-08-26 9/week @ 2024-09-16 14/week @ 2024-09-23 4/week @ 2024-09-30 1/week @ 2024-10-07 82/week @ 2024-11-11

82 downloads per month

BSD-3-Clause

410KB
8K SLoC

Gosling

Gosling is a crate which encapsulates connecting to and authenticating with onion-service peers on the Tor Network. The authentication mechanism is based on and improves upon the peer authentication handshake found in Ricochet-Refresh.

Peer-to-peer applications can be built using Gosling with the following features by default:

  • end-to-end encrypted
  • anonymous
  • authenticated
  • metadata-resistant
  • decentralised
  • nat-punching

Through the use of pluggable-transports, applications can also bypass censorship.

The protocol itself is customisable to allow for additional application-specific authorisation.

The problem of peer-discovery is not solved by this crate.

For more details see htps://gosling.technology.

Dependencies

~19–37MB
~592K SLoC