Skip to content

red_directory

friendica edited this page Aug 5, 2012 · 1 revision

The Red Directory

Perhaps the easiest way to describe the Red Directory at a high level is to provide a comparison to the current Friendica Global Directory.

The Friendica Global Directory consists of two levels - a site directory, and a single Global Directory. Permissions are granted by members to appear in either or both. The Global Directory is a single instance running at dir.friendica.com, and communicates by xml messages and scraping profiles to obtain information.

The Red Directory does not have two levels. It is a single, replicated global directory which can be mirrored anywhere. It communicates and replicates using zot.

A site may choose any directory mirror to use as a directory source, and may provide fallback to other directories if communications with their chosen mirror become problematic.

A site may choose to be "off the grid" and use no directory mirror. Red will provide a local service running from known address book information to provide a pseudo-mirror in this case. This will have identical functionality to the global mirrors but will not replicate.

Censorship

The most problematic aspect of a global directory is the ability to flag indecent/adult profile information. The Red Directory will attempt some novel solutions in this regard by providing a web of trust. Anybody may censor a profile entry using facilities with the Red Directory search interface. This will unconditionally block the entry from their view on a personal level and without question.

This information will also be sent to the nearest mirror. An accumulation of block messages will lead to the entry being blocked at the directory level. The number required cannot be a fixed number, as this would make the system open to manipulation.

Additionally, a mirror may indicate a trust level with other directories, and only block an entry if there is consensus amongst its peer group. Finally, a "block" does not remove or even block an entry from being displayed in the directory. It adds an "offensive" weighting to the entry. Individuals can set a weighting on a personal level of entries that they are comfortable viewing. The more peers which flag an entry, the higher the weighting.

The manager of each directory can therefore choose whether to trust other mirrors with block information.

This combination should prevent both overly zealous individuals and also rogue mirrors from being able to influence the democratic process, while providing any person the ability to block something which is uncomfortable to them personally.

Zot Directory Update Messages

There are still some communication details to be worked out, but the best model at the moment is to provide a single zot_uid to be used for directory information. The zot_uid is the exact string "Directory".

Being a zot_uid means it can be initiated from any location. Since the directory contains only public information, the messages will not use encryption and not require key verification.

As work on this sub-sytem progresses, we may find it necessary to verify message sources. If this happens, the mechanism will be altered such that each Zot directory sender will provide their own key, rather than use a common shared key.

Clone this wiki locally