## 5 Concept of the Energy Synchronization Platform
### Market-Side Platform  
The MaP represents the second main part of the ESP. In contrast to the CoP, it is designed as a single multi-sided platform solution, connecting and integrating a variety of CoP, existing energy markets (e.g., balancing power market, electricity exchange), and third-party services (e.g., optimization and forecast services, software providers, energy supplier, aggregators). The MaP, which was co-designed by the participating companies, fosters the monetization of industrial flexibility on power markets in a B2B market setting. The MaP is connected to the CoP via an interface that allows data exchange and should enable automated trading of flexibility in the future. In contrast to the CoP and services, which in principle can occur in an unlimited number on the ESP, only one logical instance of the MaP is provided. Its multi-sided architecture enables direct interactions between two or more distinct sides. Each side is affiliated with the platform [85]. The platform itself consist of various components, such as hardware, software, or service modules with specific arrangements and rules. Figure 4 shows the modular and flexible configuration, featuring two main layers and their respective components. * Runtime layer: This represents the active component of the MaP, which has the necessary interfaces to the outside. On the one hand, the runtime layer is the basis for system-related and domain-specific services; on the other hand, it also implements the routing to the corresponding services and data. * Persistence layer: The persistence layer acts as a scalable data management component and allows writing and reading access from the runtime layer. It represents the passive \"database\" component of the MaP. Within the layers in Figure 4, components define the functionality of the MaP. The key components are highlighted and explained in the following:  
* Portal (access layer): The portal represents the component, which allows users to communicate with the platform through a graphical user interface. Besides basic features, such as registration and login, it provides an input mask for information transfer to other components, API documentation, the possibility to execute test calls, community functionalities (e.g., rating), and the monitoring of offered services. It is connected to the platform services for access management and authentication, as well as the service broker for further access to functionalities. * Service broker: The service broker acts as a central access point for market participants implementing the API gateway, makes inquiries to registries, and forwards the request of the current market participant according to the response from the registries. The core task of the service broker is to establish contact between flexibility providers and their users by integrating supporting services. As the core of the multi-sided architecture, it is also exposed to threats and requires threat protection against cyber attacks, such as distributed denial of service attacks, SQL injections, etc. Moreover, it is the logical instance that regulates access control policies and enforces policies related to subscriber authentication and authorization of access to services. Thus, the service broker uses services of operational components from platform services. * Platform services: The operational functions of the MaP are summarized in platform services. They inherit control and contract services, in order to monitor and maintain the platform, but also oversee the access management, which regulates access to sensitive data according to the respective authorization. In order to monitor the access authorizations, the platform services access the system data containing the log, user, and contract data, market services, the service broker, and the access layer. * Market services: These are the services offered on the MaP by third parties and allow service providers and platform users to analyze what features have been used and what registered users are looking for.