#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

#1293 in Network programming

Download history 164/week @ 2024-08-24 5/week @ 2024-08-31 9/week @ 2024-09-14 13/week @ 2024-09-21 5/week @ 2024-09-28 1/week @ 2024-10-05 110/week @ 2024-11-16

111 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
~593K SLoC