/solid-control

EU Solid Control Home page

Apache License 2.0Apache-2.0

Solid-Control and Solid Wallet

Solid Control (2021-2022)

Solid-Control was a project funded by the European Union Next Generation Internet (NGI) Privacy and Trust Enhancing Technologies (PET) fund. From the official nlnet page:

Solid-Control aims to enhance Tim Berners-Lee's Social Linked Data Project (Solid) with Attribute-Based Access Control.

By extending the Linked Data Platform (LDP) with WebID based authentication and Access Control Lists (ACL), Solid has enabled the emergence of new forms of Hyper-Apps. These apps can follow data from server to server, authenticate when needed and write to the user's Personal Online Data storage (Pod), creating a decentralized social web.

With relation-based access control (friend of a friend, business network, etc.), Solid can be a full alternative to centralized social networks. We also want to allow authentication based on Verifiable Claims such as age. Solid-Control will work on developing the needed logic, verify protocols, write prototype implementations and contribute to the Solid Auth Community groups, which are developing specs for standardization.

The project interacts with several different repositories on GitHub and mailing lists. This repository collects the reports on the activity in the various forums.

Solid Wallet (2022-2023)

Solid Wallet continues the Solid-Control project, and is funded by NGI Assure. From the official nlnet page:

Authorization reasoning, rule-based controls and fluid integration for Solid

Solid Apps display information collected by following linked data across the World Wide Web, writing changes to Solid Personal Online Data Stores (PODs). Following links can land an App on a protected resource somewhere on the Web, accessible only to a select group of actors specified in an associated Web Access Control Resource. Solid Wallet aims to build core libraries to reason over Solid Access Control Rules, limit access to what clients can request, publish keys and sign transactions. The same libraries will also be useable by servers to verify such claims. Finally, we will use these libraries to build a flexible prototype Wallet for Solid apps that run in the browser or server.

Standards based work

The main repositories regarding standard-settings are:

Each milestone points to weekly reports from the panels.

Code repositories and artifacts

Every code repository will produce artifacts stores as snapshots on Sonatype's maven servers and after testing will be released to Maven Central.

  • Reactive-Solid is the server implementation.
  • Banana-RDF is an RDF library for Java and JavaScript in Scala. The Scala-3 branch is available directly at bblfish/banana-rdf. Artifacts are published in
    • fir scala 2.13 and scala 3 in sonatype net/bblfish/rdf
    • todo: publish final artifacts to Maven Central

Additional Code repositories that were created along the way as their final location is still to be decided:

Other repositories being contributed to:

  • bblfish/bobcats is a cryptographic library in Functional Scala(JS) that has forked the typelevel bobcats cryptographic repository. It is used by our implementation of IETF's "Signing HTTP Messages". Artifacts are published

Milestones

For Solid-Control

Reports for Milestones are available in the milestones folder. The milestones are numbered after the original template, but were not always done in the estimated order.

for Solid Wallet