## 2 State-of-the-Art
### Matchmaking Solutions Using AI
(2018) present a possible solution for representation heterogeneity and access control. The authors focus on data that is available from multiple sources and introduce a unified data ontology to normalize different forms of data description. They then extend context-aware role-based access control (CAAC) models with a unified set of context-sensitive access control policies to manage data access. While the paper does not focus on decentralized storage per se or on blockchain, it does have the merit of standardizing access control policies for different data sources. In ([PERSON] et al., 2018) the authors use argumentation-based agents to model data access interfaces. The focus of the paper is on solving data sharing, access control, and privacy protection in Internet-of-Things (IoT) environments and smart applications. IoT data are categorized into private and public, and agents are divided into internal and external. The authors then expand category-based access control meta-models and emergency policies and introduce two argumentation schemes:  
* An argumentation scheme for data access control, which allows access control management for internal data requests;
* An argumentation scheme for access-category assignment, which allows access control for external data requests. Agents process these schemes in argumentation-based reasoning patterns and decide whether or not to allow access to the requested data. Aside from handling multiple data sources, the authors also address the issue of multiple authentication solutions. An ontology-based access control (OBAC) model is presented in ([PERSON] et al., 2018). The authors address secure access to FAIR (findability, accessibility, interoperability, and reusability) data and consider three categories of information: the data itself, associated metadata expressing FAIR information, and additional metadata about the users. Target metadata are represented as a knowledge graph used to describe semantic relationships between the concepts (categories) expressed by the actual data. OBAC allows implementation of role and context dependent access policies based on these knowledge graphs. If authorized, users received access to data described by the current category stratum (i.e., graph neighbors of the same \"parent\" node) and to all the \"parents\" included on the path generated by the same \"parent\" category (i.e., the origin major concept for the current graph path). The proof-of-concept presented by the authors is agnostic to the actual location of the data (e.g., a Web API or a classic database) through these metadata categories describing the data. [PERSON] et al. (2018) focus on cloud computing and data access control. The authors introduce SA-ODAC (security-aware mechanism and ontology-based data access control) as a potential solution to control access rights over data stored in such open, decentralized, and distributed systems. The proposed model is composed of two distinct operational components: secure awareness techniques (SAT) and an ontology-based data access control (ODAC) module. ODAC is employed to handle data access control based on role and permission policies. SAT operates on the cloud level and encompasses the componentsrequired to encrypt and decrypt data and handle encryption key management. Through SAT, the authors ensure that sensitive data are encrypted before being transmitted to the cloud for storage and decrypted by authorized clients. The scenario is similar to the one required by SPARK-IT to store project proposals in IPFS. The challenges of decentralized data access control (DDAC) over consortium blockchains are addressed in [22]. Blockchains do not employ centralized data administration, unlike traditional, centralized database systems. Participants in such public networks have limited or no control over access control policies since the ledger data are replicated to all the nodes in the network. Consequently, participants must keep confidential data outside the ledger or encrypt data before storing it.