# Osiris (software)

Osiris Serverless Portal System (usually abbreviated as Osiris sps or Osiris) is a freeware program used to create web portals distributed via peer-to-peer networking (P2P) and autonomous from centralized servers. It is available for Microsoft Windows and Linux operating systems.
Unlike common tools used to publish information on the Internet, such as content management systems, Internet forums or blogs based on a centralized system, the data of an Osiris portal are shared (via P2P) between all its participants. Because all the contents necessary for navigation are replicated on every computer, the portal can be used without a central server. Thus, the portal is always accessible because it is immune to denial of service attacks, Internet service provider limitations (such as traffic shaping and censorship) and hardware failure. In this way, a web portal can be operated at very low costs and free from external control.

## History

Osiris was started by a developer named "Berserker" as an outgrowth of KeyForum. Osiris was written in C++ and designed to be decentralized, indestructible and expand beyond a simple a web forum. "Clodo" joined the project several months later.
Osiris was officially announced on October 2, 2006, after 2 years of development. The team is composed of 2 developers (Clodo & Berserker), two employees (DanielZ and Rei.Andrea) and a group of supporters/beta-testers (many of whom were already on the team KeyForum).
Starting from version 0.12, Osiris has become multi-platform, this was possible by migrating from the Visual Studio to the wxWidgets library.

## Key features

Osiris is the result of a union between peer-to-peer (P2P) technology and web portals.
* It allows anyone to create a web portal for free, without depending on anyone or needing special technical knowledge.
* Allows one to create content anonymously, allowing one to contribute to freedom of expression and speech.
* Osiris offers a full-text search engine that allows searching across all portals' content.
* Low resource utilization: with the increase of users in a portal there is a reduction of the workload on single nodes, as work is distributed among all network nodes.
* Uses P2P infrastructure (based on Kademlia) for the portals distribution, a field where there are few and difficult-to-use alternatives.
* Administration is based on the reputations system, which is a new way to manage users in a distributed system without using central servers.

## Basic concepts

Osiris differs from classic P2P programs in that it is focused on security and distributed data management.

### Security

* The system is anonymous. It is not possible to make an association between a user and their IP address, hence one cannot trace the person who created a content.
* Even with physical access to an Osiris installation it is impossible to trace the actual user without knowing the user's password.
* 2048-bit digital keys guarantee the authenticity of content (digitally signed in order to prevent counterfeiting) and the confidentiality of private messages (encrypted between the sender and recipient).
* To prevent the ISP from intercepting traffic, connections and data transfer to a portal (called alignment), Osiris uses random ports which are cloaked during handshake and encrypted point-to-point via 256-bit AES.
* The P2P distribution allows content to be present in multiple copies as a guarantee of survival in case of hardware failure or nodes off-line.
* As the portals are saved locally, one can read the contents even if one works off-line.

### Reputations system

The Reputations system and the subsequent generation of multiple points of view of a portal is one of the most innovative aspects of the program. Unlike "traditional" systems where the computational work (calculation of statistics, indexing of content, etc.) is always made by a central server, Osiris use a distributed approach, where the majority of the works is made by users of a portal, due to this there may be more distinct points of view of a portal, depending on used account.
Each user is free to give reputation (positive or negative) to another user according to its contribution to the portal, based on these reputations, the system processes the pages by removing the contents of users evaluated negatively (such as spammers) and importing the reputations of users considered positively. This allow the creation of a network of assessments that allows management of a portal. Note that each client processes the data independently on its machine in a process that is called stabilization of the portal.

### Monarchist and anarchists portals

When a user creates an Osiris portal, the user must choose between two systems of moderation, namely "anarchist" and "monarchy". The choice cannot be changed after the portal is created. In an anarchic portal, every user can rate another user and thus influence that user's reputation among all users of the portal. In this way, a portal can be moderated without the use of a central server. The first reputation is always positive and is set to the administrator, the user who publishes the invitation link (digitally signed) to the portal. In a monarchy portal, only the portal administrator and moderators can generate reputations, and delete or promote contents on the portal.

### Isis Gateway

Isis is a web gateway to Osiris portals, written in PHP 5, through which it is possible to browse a portal without installing Osiris.
The particularity of Isis is the management of the workload and the data, which don't lie on the public server that is running Isis, but is managed by the various nodes running Osiris. Isis only forwards web requests from visitors to the nodes that have become available to it, minimizing the use of resources from the server through the load-balancing of requests.
Since it is not technically possible to guarantee anonymity in this type of architecture, all accesses by Isis are read-only. This has the dual objective of ensuring the privacy of users and encourage the use of Osiris to actively participate to a portal.

## Future plans

* Version 0.15 is available on Linux and Windows and a beta version for OS X is available.
* Osiris developers are considering an on-disk data management system called the "survival engine". The system would automatically delete content as needed to keep the database lightweight and improve speed / stability of the portal.
* Optimizations focusing on system alignment and stabilization to make it faster and less resource-intensive.
* On March 18, 2010, Osiris SPS developers announced that they are planning to migrate Osiris SPS into a GPL licensed open source software project in the following months. However, as of 15 September 2013, the source code has not been made available and the 1.x series has not been released.
* On December 10, 2014, Osiris SPS developers have announced 1.0 alpha version and discussed the software design problems. It has been proposed by donator/developer of Osiris to create a Kickstarter funding campaign, because the software design improvements would require a lot of resources.