diaspora.tex 4.6 KB

12345678910111213141516171819
  1. Inspired by a lecture on surveillance in centralized social networks by Eben Moglen on February 5, 2010, the four mathematics students from New York University Grippi, Salzberg, Sofaer and Zhitomirskiy had the idea for diaspora*\cite{diaspora2010kickstarter-pitch}. Diaspora* is a decentralized social network. To its special features count:
  2. \begin{itemize}
  3. \item \textbf{Decentralization}: Everyone can start their own server with the diaspora* software and be part of the network. Alternatively, there are public servers accepting registrations from everyone, so there is no need to set up an own instance of diaspora* to participate in the network.
  4. \item \textbf{Privacy}: By running your own server, the data remains with the user. Furthermore, it is possible to determine which users can see content.
  5. \item \textbf{Open Source}: The source code is disclosed and hosted on GitHub\footnote{https://github.com/diaspora/diaspora}. The transparency created in this way ensures trust in diaspora*.
  6. \end{itemize}
  7. To fund the development of diaspora*, \$ 10,000 should be crowdfunded on Kickstarter\footnote{https://www.kickstarter.com/projects/mbs348/diaspora-the-personally-controlled-do-it-all-distr/description}. The project was very well received, so that after 14 days the target was reached\cite{diaspora2010wemadeit} and in the end a total of \$ 200,641 was donated. In November 2010, the first alpha version of diaspora* was released. One year later there was a big feature update. In May 2012 it was announced that diaspora* should be further developed within the Y Combinator start-up program\cite{diaspora2012y-combinator}. Due to the commercial influence there were fears that diaspora* could lose its independence. In August 2012, the developers announced that diaspora* is henceforth a community project\cite{diaspora2012community-announcement}.
  8. The diaspora* back end is written in Ruby, the front end to the user is a website. A server running diaspora* is called pod. Each pod has its own domain, so users of a pod have a username similar to an e-mail address (for example, username@podname.org). The typical functionalities of a social network (hashtags, @ mentions, likes, comments, private messages) are also shown in diaspora*. What marked a peculiarity at the time of diaspora*'s appearance are so-called aspects. Aspects are groupings of contacts that can be specified as a target audience when posting content. Only the contacts associated with the aspect can see the post.
  9. To stay in contact with friends on other platforms like social networks (Facebook, Twitter) or blogs (tumblr, Wordpress), the initial idea was to connect these platforms. This should work both ways. Posts published on diaspora* should also appear on other platforms at the same time. And posts from the other networks should be viewed in diaspora*. Diaspora* should play the role of a social media hub. Unfortunately, the APIs of some platforms have become increasingly limited as instances of misuse of the interfaces have become public.
  10. The data of the users are unencrypted on a pod, so that someone having access to the database can see them\cite{diasporaXXXXfaq-users}. In order to protect his own data in the best possible way, the operation of a separate diaspora* instance is necessary. The communication between the pods is encrypted with SSL\cite{diasporaXXXXfaq-users}. Furthermore, the exchanged messages are first signed (Salmon Magic Signatures), then symmetrically encrypted with AES-256-CBC\cite{diasporaXXXXmagic-signatures}. The AES key is encrypted with the public key of the recipient and sent together with the encrypted message.
  11. Diaspora* does not use the ActivityPub protocol, but its own diaspora* federation protocol\cite{diasporaXXXXprotocol}. Other platforms such as Friendica\footnote{https://friendi.ca/}, Hubzilla\footnote{https://zotlabs.org/page/hubzilla/hubzilla-project} or Socialhome\footnote{https://socialhome.network/} can also communicate via the diaspora* federation protocol. There is no official API, which makes app development difficult. Diaspora* points out that the website is also usable on mobile devices, so there is no need for a native application\cite{diasporaXXXXfaq-users}.
  12. According to the statistics of the-federation.info\footnote{https://the-federation.info/diaspora} on February 24, 2019, 679723 users were registered on a total of 251 pods. Over the last 12 months, 19591 new users have joined the network. Last month, only 4.4\% of all users were active with 30042 users. However, the numbers are incomplete, as some pods do not share information and there may be more than the 251 listed pods.