Draft:Hubzilla

From Wikipedia, the free encyclopedia
Jump to navigation Jump to search

Symbol opinion vote.svg Comment: This draft contains too many direct comparisons of Hubzilla against Friendica. These comparisons are blatantly promotional and are not appropriate in Wikipedia. Robert McClenon (talk) 06:45, 15 October 2018 (UTC)

Symbol opinion vote.svg Comment: Still needs any additional amount of in-depth third-party news sources overall. SwisterTwister talk 03:31, 28 March 2016 (UTC)


  • Third-party sources to be used in this article have been collected and are available in the Talk page. Solstag (talk) 23:04, 20 June 2016 (UTC)

Hubzilla (formerly known as Redmatrix) is a modular webserver based operating system which includes technologies for publishing, social media, file sharing, photo sharing, chat and more (including the ability to develop custom modules). These services are accessed and connected across server and administrative boundaries through the communication protocol Zot which provides a high level of privacy and security customization and a nomadic identity for the users. A webserver running Hubzilla is called a "hub". The decentralized network consisting of the total of the hubs - "the grid" - federates with other platforms of the Distributed social network and the Fediverse (Diaspora, Socialhome, Friendica, GNU Social, Mastodon, postActiv, Pleroma, PixelFed, Funkwhale, Plume, GangGo, Aardwolf, Pump.io, PeerTube and others).[1][2][3]

Hubzilla
Original author(s) Mike Macgirvin
Developer(s) Hubzilla community
Initial release 24 December 2015; 2 years ago (2015-12-24)
Stable release
3.6 / 25 July 2018; 2 months ago (2018-07-25)
Written in PHP
Operating system Cross-platform
Platform Apache, Nginx
Type Social software
License MIT License
Website hubzilla.org

Development history[edit]

In 2012, Mike Macgirvin of the Friendica project stepped down[4] and formed an experimental communication platform named Friendica Red. This system existed for exploratory purposes, and was designed based on lessons learned from developing Friendica.

Much of the design concepts for the new platform would be based on ideas about user identity management and privacy permissions. It leverages a unique federation protocol named Zot, which acts as the design successor to Friendica's DFRN protocol. The development's focus shifted away from “social networking” towards providing a range of privacy respecting services (as content management, cloud services, and groupware) that were decentralised, yet highly integrated.[5]

As time went on, Friendica Red was rebranded Redmatrix, before the name Hubzilla was decided on.[6] On December 24th, 2015, Hubzilla 1.0 was officially launched.[7]

Features[edit]

Hubzilla can be defined as a decentralized communication and publishing platform. Any server running Hubzilla is defined as a hub, which can function independently of any other hub in the network.

Nomadic identities[edit]

An identity is called "channel" in Hubzilla. The Zot protocol allows it to be unbound from a single hub. In fact, it can exist as clones on more than one hub and update its current primary location and its content to the decentralised network. This allows the user to move his channel from one hub to an other or to have a backup of it when the current hub goes offline or when another hub provides better services.[8]

Channels connect with each other[edit]

Channels are a core concept for the platform — in short, each channel is an activity stream of objects that can represent a specific action, such as a posting a status or uploading a photo. This stream can show both public and private activities, and a permissions system based on an Access control list determines which users can access a given entry. Each channel also contains a unique Webfinger address, for example https://example.com/channel/bob would be represented as bob@example.com. Ideally a channel relates to a certain topic, but it is up to the channel owner to post whatever information he feels like. However, with the notion of channels, it is possible to segment the information between categories and use different profiles to only make information about a user available to the people the user wants to.[8]

A user is assigned to his first channel upon registration, but he can add as many channels as long as their number is lower than the limit set by the administrator of the hub. Each channel can connect to other channels. Connections can be managed and hidden from both sides. A connection allows the user to interact with posts from other channels as well as to post on the wall of other channels. Private messages and statuses can also be passed back-and-forth from one connected channel to another.

MagicAuth[edit]

MagicAuth is a type of in-browser encryption that grants access permissions on remote hubs. It solves the problem of federated social networks which usually are not able to visit each other's profiles and directly interact with it if both people are connected through different servers. Following use-case illustrates the mechanism of the solution:

  1. Bob's channel is on https://example.com/channel/bob, with the channel address of bob@example.com
  2. Bob visits Alice's channel at https://othersite.com/channel/alice, ie, alice@othersite.com
  3. When Bob visits, his browser session performs a cryptographic handshake with Alice's channel
  4. Bob is allowed to comment and like posts on Alice's channel while he is visiting.
  5. Bob will also see private posts meant for him when visiting.
  6. If Alice allows people to make posts on her wall, Bob will be able to do that as well.

Sharing data using the permissions framework[edit]

As a personal publishing system, Hubzilla can be used to share arbitrary data in its own cloud. "Different permissions can be given to the arbitrary data and it supports the WebDAV protocol to upload data to the cloud. This permission system does not only apply to content but also to channels itself. There are a lot of permission when one opens the advanced privacy settings of his channel."[8]

Hubzilla supports the ability to display photos or images uploaded by a channel at once in an overview and to group photos together inside an album. The recent update (version 3.6) features a photo gallery. It supports the CalDAV and CardDAV protocols.

Web pages[edit]

A channel can contain web pages based on a templating system. These are shared using the same permissions framework as described above.

Directories[edit]

With the function called Directories it is possible to search for channels that are located across all hubs and that have chosen to publish his channel to the global directory. [8]

"Both Friendica, GNU social, and RedMatrix provide the ability to search through content that is locally known. This includes information that has been received from a remote hub, which was targeted to one of the users on the local node. However, with RedMatrix the polling message also polls public posts from hubs that it knows. These hubs are discovered when users start to create friendships with remote hosts. Therefore, when the user wants to discover posts from several nodes, it will receive much more remote content when it uses RedMatrix."[8]

OpenID[edit]

Hubzilla is able to function as an OpenID provider, allowing users to log into OpenID-enabled sites with their Hubzilla channels.

The administrator's interface[edit]

From the administrator's interface, users can be blocked or deleted. An administrator is however not able to view or delete a certain post that has been marked private. "Therefore, it is not possible to look from within the admin interface at private posts and hand them over to a federal government."[8] Private messages in Hubzilla are stored, in opposition to Friendica and Diaspora, in an encrypted form on the server.[8]

Efficiency[edit]

Instead of sending a message to every identity even if these identities are located on the same server (as done by Friendica and pump.io), the algorithm used by Hubzilla sends a message to the same server once, which increases the efficiency in using ressources by the message distribution. GNU Social follows the same approach. But, in opposition to GNU Social, Hubzilla is able to postpone the task of fetching the message if, for example, there is a high load on the hub. The remote hub is therefore more in control on how it wants to receive the messages.[8]

Message consistency[edit]

Hubzilla has, the same as Friendica, implemented an extra poller which polls the feeds once a day in case something went haywire during delivery (e.g. when a site was overloaded or when messages were dropped after a few attempts). This extra polling mechanism can fetch some of the messages that would be missed otherwise, but not all of them. The missed messages can still be viewed when one is authenticated on the hub of the author and visits the channel of this author.[8]

Example of use[edit]

The Hospital Municipal Dr. Moyses Deutsch which is a large municipal government-funded general hospital (300 beds) located in the south of São Paulo City (M’Boi Mirim District) implemented and evaluated from July 2014 to July 2015 a Hubzilla based platform that links health providers at a public hospital to 18 primary care units (PCU) to improve communication among health services. The platform has been used in the following ways:

 i. The hospital sends an admission warning and a structured questionnaire on patient’s information to the PCU

 ii. The PCU manager responds with information about the patient

 iii. Hospital nurses enter the information in the patient’s electronic medical record

 iv. The hospital sends the discharge summary to the PCU

The function of Hubzilla in this project was to host private communications among the health providers about their common patients. This shared information which flows through secure channels using the HTTP Secure (HTTPS) protocol ensures that patients’ information can only be accessed by the appropriate health professionals, whose identity is authenticated by their credentials (login and password).[9]

Reception[edit]

A peer-reviewed academic article from IEEE's Computer Based Medical Systems conference describes the use of Hubzilla/RedMatrix as an integration tool among health providers that serve a neighborhood of 600.000 people.[10]

Hubzilla is mentioned on a list of softwares for preventing global data surveillance.[11]

A scientific report published in 2015 says Hubzilla/Redmatrix "is currently most suited to be provided as an alternative to the current centralised social networks and [...] can be provided as a service by hosting providers. It has an efficient message distribution model, enhanced privacy features, and provides an unique feature named nomadic identities. [...] It is currently more mature than some of the other implementations and puts the user back in control of their data."[8]

Hubzilla is the only open-source social network solution whose implementation of privacy is considered "Extensive" in a 2015 peer-reviewed survey paper.[12]

Hubzilla appears as a case and recommendation in the chapter "Tendências democráticas e autoritárias, arquiteturas distribuídas e centralizadas" (freely translated as "Democratic and authoritarian tendencies, distributed and centralized architectures") in the book "Democracia Digital, Comunicação e Política em Redes" (freely translated as "Digital Democracy, Communication and Politics in Networks"), organised by the Digital Culture Laboratory of the Federal University of Paraná, Brazil.[13]

A peer-reviewed academic article (in Portuguese) from the conference of the Latin American Network for Studies of Surveillance, Technology and Society highlights the importance of features unique to Redmatrix/Hubzilla in the struggle to recover privacy and decentralization of the Internet.[14]

See also[edit]

References[edit]

  1. ^ "The Federation".
  2. ^ "Fediverse".
  3. ^ "Instances – Fediverse Network".
  4. ^ Macgirvin, Mike. "Friendica Red - help us". Friendica. Retrieved 21 March 2016.
  5. ^ Tilley, Sean. "Got Zot - Mike Macgirvin on building your own apps and protocols".
  6. ^ "The history of Hubzilla " talkplus". www.talkplus.org.
  7. ^ Macgirvin, Mike. "Hubzilla (1.0) release".
  8. ^ a b c d e f g h i j Miltenburg, Wouter. "Functional breakdown of decentralised social networks" (PDF).
  9. ^ Bracco, Marion Maia; Mafra, Ana Carolina Cintra Nunes; Abdo, Alexandre Hannud; Colugnati, Fernando Antonia Basile; Dalla, Marcello Dala Bernardina; Demarzo, Marcelo Marcos Piva; Abrahamsohn, Ises; Rodrigues, Aline Bacífico; Delgado, Ana Violeta Ferreira de Almeida; dos Parzeres, Glauber Alves; Teixeira Jr, José Carlos; Possa, Silvio (2016). "Implementation of integration strategies between primary care units and a regional general hospital in Brazil to update and connect health care professionals: a quasi-experimental study protocol". Bmc Health Services Research. 16 (1): 380. doi:10.1186/s12913-016-1626-9. PMC 4983016. PMID 27519520.
  10. ^ Abdo, Alexandre Hannud; Delgado, Ana; Mafra, Ana; Nascimento, Tatiane Ocon; Bracco, Mario (2015). Technology Enhanced Integration of Hospital and Primary Care in the M'boi Mirim Neighborhood of São Paulo City. pp. 366–367. doi:10.1109/CBMS.2015.42. ISBN 978-1-4673-6775-2.
  11. ^ "Hubzilla - Projects - PRISM Break".
  12. ^ Islam, Mohammad Badiul; Iannella, Renato; Watson, Jason; Geva, Shlomo (2015). "International Journal of Information Privacy, Security and Integrity (IJIPSI), Vol. 2, No. 2, 2015". International Journal of Information Privacy, Security and Integrity. 2 (2): 102. doi:10.1504/IJIPSI.2015.075438.
  13. ^ da Silva, Sivaldo Pereira; Bragatto, Rachel Callai; Sambaio (orgs.), Rafael Cardoso. "Democracia Digital, Comunicação e Política em Redes " Teoria e prática" (in Portuguese).
  14. ^ Abdo, Alexandre Hannud. "DESCENTRALIZAÇÃO E CRIPTOGRAFIA NO COMBATE À VIGILÂNCIA E CONTROLE (Decentralization and cryptography in combating surveillance and control)" (PDF) (in Portuguese).

External links[edit]

Category:Social networking services Category:Web applications Category:Free software websites Category:Internet services supporting OpenID Category:Software using the GNU AGPL license