Privatix core - software that orchestrates payments, billing, communication with other components for both Agents and Clients.
Privatix core database - used to save state of services and operations.
Privatix GUI - optional graphical user interface for
Privatix core. All essential operations can be made interactively. Alternatively, one can use
Privatix core UI API to programmatically operate the software.
Ethereum node - Ethereum node, that can send transactions and be queried for events. Infura.io is used by default, but any local or remote Ethereum node can be used instead.
Ethereum smart contracts - two smart contracts deployed on Ethereum network. One is used for buying and selling tokens. Second responsible for offering and payments processing.
Tor - component, that is used for anonymous communication between Agent and Client, regarding offering and initial service access bootstrap. It is used to keep IP addresses of Agents and Client in secret. Shipped with Privatix core. Other communication channels maybe added.
PostgreSQL - database engine. Shipped with Privatix core.
Service module is not part of core, but always come together with Privatix core. This module responsible to deliver/consume a service. It communicates with Privatix core via Service API.
Service module - is set of templates and software for single service that automates:
access to service
start and stop of service consumption
UI API - user view and control of services, offerings, servers, balances, etc.
Service API - automation of service provisioning/deprovisioning, access and usage monitoring.