Fermat is, technically speaking, an Open Source P2P (Peer-to-Peer) Platform Stack Framework built on a Plug-ins architecture running on end-user’s devices.
Open Source |
The code can be reviewed and audited by anyone. |
P2P network and decentralized |
Censorship resistant and difficult to attack. |
Platform Stack |
Functionalities are wrapped in categories easy to grasp. |
Plug-in Architecture |
Reuse of components and open so that any developer can participate. |
It runs on end-users devices |
Users have control of their money without the need to trust a third party. |
-
Libraries: Structural components from the system core (low level layers)
-
Desktops: Applications that run on a specific Operating System and present the GUI (graphic user interface)
-
Plug-ins: Components that encapsulate a very specific set of functions, consume services from other components and offer a public interface for the services they provide to other components. They are open and can be developed by the developer community in general.
-
Add-ons: Plug-ins in the low level layers that provide the most sensitive functionalities to the system, and therefore are developed by trusted developers.
Fermat system is built on several overlapping architectural paradigms:
-
At a higher level, it is a peer-to-peer system with asymmetric nodes, meaning that each node, even when having all of the codebase, specializes itself according to the profile of the end user or the way it was configured.
-
Inside each node Fermat features a multi-OS architecture meaning that the lowest level OS-dependent components are wrapped in a way that can be easily replaced when running on a different OS without affecting the rest of the components that consume services from them. The upmost components, the ones facing the end user (GUI) are also OS-dependent. Everything in between is not.
-
At the same time it features a plug-in architecture inserted into a multi-layered structure. These layers are occasionally grouped into Superlayers.
-
These Plug-ins are subdivided into a hierarchy of Platforms. Those Platforms share a common set of layers, and each one adds Actors and Products to the overall functionality of the Fermat system. Inside each Plug-in, you might find a specialized structure and in many cases a database or files belonging to that Plug-in.
-
At a system level, Fermat uses specialized crawlers to collect or sometimes infuse information into nodes in order to recreate a system level consciousness prepared to resist attacks or other relevant issues.
Fermat is a distributed system, that runs on end user’s devices, so it needs to establish a connection between every actor and
every device using it. This is done by creating a P2P network between them, based on the services provided by Fermat P2P Network and
Communication Superlayer.
Fermat nodes are peers to each other, meaning that they are all equal and there are no "special" nodes. All the nodes share the burden of providing all services. The network nodes interconnect to each other only when they need to do so according to the Fermat P2P Protocol. There is no server, no centralized service, and no hierarchy within the network.
Fermat is code-base portable, meaning that the components are written in code that run in different operating systems. So, through Fermat Operating Systems API Superlayer, the components that are specific to a given Operating System, can connect to the rest of Fermat that is OS independent.
Fermat needs to be adaptable, to provide highly component reutilization, and to offer a scalability that match the complexity of the services that are running on it. Therefore the components are set in layers stacking one on top of the other. Each layer groups components that provide a similar functionality, i.e. a communication layer is designed to provide a way to connect one device to another building a "communications channel" using different available technologies (cloud servers, wifi, NFT, etc), and while performing this task, it lets other components from other layers do their specific task, consuming services of this communication layer in a transparent way (without any concern on how the communication is actually being established).
There are certain Layers that provide services at a system-wide scale (see superlayers), but other layers are defined within one platform and serves to provide its set of specific functionalities.
Plug-ins have an outstanding feature: as long as their INTERFACE (i.e. the shape of the interconnection) is known and public, the Plug-in can interact with others, consuming and offering services, INDEPENDENTLY of its inner structure and how it is built. As long as they keep this INTERFACE, they can safely evolve to be more efficient and functioning WITHOUT altering a single service that has been built upon it! Inside Fermat, each Plug-in is given certain specific responsibility within; it lives in a certain layer, and it is allowed to consume services of components on lower layers and to provide services to components of upper layers. Plug-ins participate in high level processes and are programmed in a way to live in an uncontrolled environment (end-user devices) and to coexist with untrusted third party plug-ins as well. With this, Fermat is able to connect and reuse most of the infrastructure deployed by the industry.
A platform consists of a group of components living in different layers interconnected to offer a specific set of services for a discovered niche. i.e. if we address to crypto currency users, we will need a crypto currency wallet for each crypto currency available running on Fermat Crypto Currency Platform. This wallet would operate on the selected crypto network by means of a connection provided to it by the Blockchain Platform, and it will interact with the user by means of a desktop living in the OS specific layers.
Once we have described Fermat’s components and architecture, we will explore in the following chapters, the platforms that implement the foundations (Phase I) of the master plan:
-
Fermat Core Platform
-
Fermat Operating Systems Superlayer
-
Fermat Blockchain Superlayer
-
Fermat P2P Network and Communication Superlayer
-
Fermat Plug-ins Platform
For a cool view of Fermat and its constant growing number of platforms and superlayers visit http://fermat.org We will cover each of the platforms and superlayers from top to bottom and left to right, as they are presented in the visualization.
So, go ahead and enter the "building site" and explore the foundations.