Authors: Julien Vanwambeke, Gaia-X, Functional Architect and Alexis Deprez, Full-stack Developer
The sales season is booming, and you want to find a new washing machine! Perfect timing because you may be able to get a good deal.
You already know the functionalities you expect (express cleaning, high-speed spinning, and why not a dryer combo as well), and even the colour you want to perfectly fit in your place.
You are thus browsing the catalogue from an online web store, but so many products are displayed that you are not able to choose…
Thankfully, the Energy Class, an evaluation of the energy consumption, will help you decide.
But, in the world of Data Economy, what could help you choose the perfect service you need?
In a previous article, you learned how Catalogues can use Gaia-X Credentials to build a chain of trust between participants.
Here, you will discover how Gaia-X is adding soap to the Catalogue gears introducing the concept of trust indexes.
What is a Trust Index?
First, let us start with some definitions.
An index is “a system of numbers used for comparing values of things that change according to each other or a fixed standard” (Cambridge Dictionary).
In the example above, the Energy Class can be considered as an index of energy consumption.
For Gaia-X, trust indexes “are a means to measure trust interoperability across dataspaces and federations adopting and extending the Gaia-X Policy Rules” (Gaia-X Architecture Document).
In other words, Gaia-X is not only building a chain of trust between participants around data exchanges but also providing a list of trust indexes. Each Gaia-X Catalogue can decide to push them in response to the participant browsing it. Each index could thus be part of the service offering selection process by the consumer.
Currently, there are two trust indexes: the veracity index and the transparency index.
So let us go to the Gaia-X Laundry 🧼 and have a detailed look at both!
Veracity is “the quality of being true, honest, or accurate” (Cambridge Dictionary).
For Gaia-X, this index aims to provide an evaluation of the trust chain length and complexity: the fewer intermediates and/or signatures you have between the root and the leaf of a service, the better the index will be (Gaia-X Architecture Document).
The Veracity index is a function of the chains of the public certificates from the issuer to the Trust Anchor, as described by the following formula:
Several chains could be scanned in the process, and for each chain:
- If the first issuer is a trust anchor, then the length of the chain is 1 and its index is 1.
- If there is an intermediate between the issuer and the trust anchor, then the length of the chain is 2, and its index is 0.9.
- If there are two intermediates, then the length is 3 and the chain index is 0.9².
- And soon
For example (and see the schema below):
- The blue chain has a length of 3, thus its index is 0.9².
- The orange chain has a length of 2, thus its index is 0.9.
- The Veracity index for the Verifiable Credential will be: (0.9²+ 0.9)/2 = 0.85
When each chain has been evaluated, we just need to sum all the calculated chain indexes and divide by the number of chains to get the Veracity index of the Verifiable Credential, getting a value between 0 and 1 (1 referring to the maximum veracity possible).
Note that if no Trust Anchor is found on a chain, then its index will be equal to 0.
Converted to Python code, the formula to compute the veracity for a given set of Verifiable Credentials index could be:
Transparency is “the quality of being done in an open way without secrets” (Cambridge Dictionary).
For Gaia-X, this index aims to provide an evaluation of the service description completion: the more information the service provider gives, the better the index will be (Gaia-X Architecture Document).
The transparency index is a function of:
- the number of exposed properties of an object versus all the possible properties of the same object. This ratio is always smaller or equal to 1.
- the shape of the graph formed by the linked claims, measuring its eccentricity and depth.
Now, let us deep into that formula to get some explanations.
First, a verifiable credential is characterised by some properties. But it can also be composed of other resources which are characterised by some additional properties. Using ontologies (if you want to know more about Ontologies, feel free to look at our article about that), we have now a full graph describing the Verifiable credential, its resources and all its properties, organised in different levels or depths.
Then for each level or depth, to evaluate the transparency index, we just need to divide the number of given properties by the number of possible properties.
Because properties of the first levels or depths are more important than the ones from the last levels or depths, we will balance the level index by calling the depth function (now, the first version of this function is quite simple, just using the level to weight).
Finally, we will just have to sum up all the level indexes and divide them by the number of levels or depths.
If every possible property is filled in, then the index will equal to 1 (and if very few properties are filled in, then it will get closer to 0).
For example, in the below schema, and with a depth function just using the level (1/level):
- At level 1 (Verifiable Credential), we have 5/10 = 0.5
- At level 2 (Resource 1 and Resource 2), we have (2+3)/(6+3) with a depth of 1/2 = 0.278
- At level 3 (Resource 3 and Resource 4), we have (3+2)/(8+2) with a depth of 1/3 = 0.167
- The Transparency index thus equals to: (0.5 + 0.278 + 0.167)/3 = 0.315
Note that, as some properties are mandatories, the transparency index will never equal 0 (at least the mandatory properties will be filled in otherwise the Compliance will reject the request).
Helping consumers find the best service offering or data product is a key point in the Data Economy, and it relies mainly on Catalogues. They can easily expose a list of functionalities, or even some filters depending on their own rules.
Gaia-X is helping Catalogue providers to add some trust in the evaluation of service or data product providers, based on standards and code examples describing the so-called Trust Indexes. If a catalogue provider decides to implement the Trust Indexes, it will ease the consumer selection process, adding, thus, value to the entire process.
The list of trust indexes is not finished, always evolving to stick to the market requirements. For example, Gaia-X has already in the pipes two other trust indexes:
- The composability index: evaluation of the capacity of a service to be composed with others.
- The semantic match index: evaluation of the vocabulary used by the service provider – the more standard the vocabulary used is, the better the index will be.
If you want to know more about how Gaia-X is helping to build trustful ecosystems, stay tuned!