Direct secure link to the (long) paper about routing in Tor.

Preliminary Results on TOR Routing Protocol

Statistical and Combinatorial Analysis

Éric Filiol, Maxence Delong, and Nicolas J.

ESIEA - Laboratoire de cryptologie et de virologie opérationnelles filiol@esiea.fr

>In this paper, we give the preliminary results of a 4-month study about the TOR routing protocol from a statistical and combinatorial point of view. We have modeled exhaustively all possible routes while taking different parameters into account with the data provided by the TOR foundation only. We have then confronted our theoretical model with the reality on the ground. To do this, we generated thousands of roads on the TOR network and compared the results obtained with those predicted by the theory. A last step of combinatorial analysis has enabled us to identify critical subsets of Onion routers (ORs). We have also managed to extract most of the relay bridges.

#tor #onion #routing #relay #security #privacy #google #censorship #qwant #esiea


Social-Relay 1.5.0 released

This release was done to start sending payloads according to new style #Diaspora protocol requirements. I was under the wrong assumption that Diaspora did not remove any compatibility to receiving payloads the old way in, so this was not previously done. My apologies to #podmins who lost some public content due to this.


#relay #thefederation

social-relay - Public post relay for the Diaspora federated social network protocol

Jason Robinson

Social-Relay version 1.4.0 released

This release adds compatibility with the latest #Diaspora #protocol changes. Also now Social-Relay will verify received payloads to ensure receivers get payloads from only resolvable valid senders.


What is the relay system?

The #relay system handles distribution of public content using the #Diaspora protocol. This helps new nodes get into the network and allows subscribing to hashtags from around the network. This is an unofficial network addition not directly related to the Diaspora protocol or project itself.

If as a #podmin you want to hook up to the relay system, do as follows:

  • Enable your outbound/inbound relay configuration in your Diaspora pod settings or for #Friendica / #Hubzilla check your own settings/documentation on how to do it.
  • Ensure your node is registered at The-Federation.info. The relay system polls this list for nodes to check.
  • Profit within one hour!

Discuss and improve

Let me know if you have ideas for improving the relay system or just questions about it. Contact me here, GitHub issues or via IRC.



  • Accept new style Diaspora public payloads without xml=payload form data.
  • Add profile model. Store remote profile handle + public key for later use, since we don't want to always fetch them.
  • Start validating signatures in sent payloads. This requires fetching remote profiles. Closes #31.

Ping @{David Morley; davidmorley@diasp.org}

social-relay - Public post relay for the Diaspora federated social network protocol

Jason Robinson

Disabled #relay system comment/like relaying until I fix an issue later today hopefully. It looks like due to a mistake in forwarding relayable related content something like 20K payloads of one comment have been queued to the relay network. 10K of those got sent out before I noticed it and disabled the sending. Sorry for any #admins noticing a bit more load on their server than usual. Since all the payloads were just one comment with the same guid, you shouldn't actually have any duplicates.

Ps, periodic reminder at the same time for #podmins. The relay system allows your node to subscribe to public content from around #TheFederation and also distribute your content to subscribers. If you want more content to your node, register your node at The-Federation.info and then enable the relay outbound and/or inbound in your node settings (for example Diaspora).

Any help improving the relay system code or design would be welcome. Get in touch :) The relay system server code is here.

Jason Robinson

Test for #Relay

Socialhome HQ

Test for #relay

Socialhome HQ



Also, testing #relay :P

Jason Robinson

Social-Relay version 1.3.2 released

#diaspora #relay #thefederation

This is a bugfix release which makes content delivery more reliable.



  • Add a longer worker timeout for sending. Seems default 180 seconds is not enough in cases where post will be delivered to a lot of hosts. Allow setting a long timeout, defaulting to 1080 seconds.
  • Refactor sending to not send payload multiple times in the case that multiple entities are found in the payload. In reality this should never happen, since Diaspora payloads have one top level entity only.

Ping @{David Morley ; davidmorley@diasp.org}

social-relay - Public post relay for the Diaspora federated social network protocol

Jason Robinson

Improve #federation on #Diaspora with relay servers

It is not easy to enter federation with a small pod (with only few users), because your pod only receives posts from followed users and your post are sent only on pods where someone follows your pod users.

To improve exchange between your pod and others and I recommend to activate relay server in your config/diaspora.yml. It permits to receive posts from other pods even if you are not following any user on these pods (based on tags). It also publishes all your posts to the relay. To avoid to receive all posts, a good choice is to grab posts with pod user followed tags (see scope parameter).

Bigger pods are encouraged to publish their posts on relays to help small pods (outbound: send: true)

Just share this post with your #podmin to be sure #relay server is enabled on your #pod.

Here is a configuration sample extract from config/diaspora.yml :

  ## Settings related to relays
  relay: ## Section

    ## Relays are applications that exist to push public posts around to
    ## pods which want to subscribe to them but would not otherwise
    ## receive them due to not having direct contact with the remote pods.
    ## See more regarding relays: https://wiki.diasporafoundation.org/Relay_servers_for_public_posts

    outbound: ## Section
      ## Enable this setting to send out public posts from this pod to a relay
      send: true
      ## Change default remote relay url used for sending out here
      url: 'https://relay.iliketoast.net/receive/public'

    inbound: ## Section
      ## Enable this to receive public posts from relays
      subscribe: true

      ## Scope is either 'all' or 'tags' (default).
      ## - 'all', means this pod wants to receive all public posts from a relay
      ## - 'tags', means this pod wants only posts tagged with certain tags
      scope: tags

      ## If scope is 'tags', should we include tags that users on this pod follow?
      ## These are added in addition to 'pod_tags', if set.
      include_user_tags: true

      ## If scope is 'tags', a comma separated list of tags here can be set.
      ## For example "linux,diaspora", to receive posts related to these tags
      pod_tags: "diaspora, podmin"

Some clearer explanation here : https://wiki.diasporafoundation.org/Relay_servers_for_public_posts

Jean-Pierre Morfin