Skip to content

"Verifiable Claim" as a concept without a direct data model mapping #66

Closed
@dlongley

Description

I think that "Verifiable Claim" is a concept that does not actually have a direct mapping in our data model, yet we are trying to shoehorn it in. The implementations don't support it. I think we're (mistakenly) trying to say "Here is where the verifiable claim is in the data model" simply because the work is called "Verifiable Claims Data Model".

Instead, we should embrace that "Verifiable Claims" is an overarching concept only. You do not make a claim "verifiable" by putting it into a "Verifiable Claim" or anything of that sort. You do not simply attach a signature to a claim to make it "Verifiable" in our data model.

Instead, you create an "Entity Credential", which includes a number of other important properties (such as the issuer of the credential) and you place one or more claims inside of it. Then the credential is signed, making the entire element verifiable -- a "Verifiable Credential".

We should not have a "Verifiable Claim" in the data model. In my view, we should have: "Claim", "Verifiable Credential", and "Verifiable Profile".

A Claim is simply a statement about a particular subject, the subject having a typically pseudonymous identifier.

A Verifiable Credential includes N Claims, who made those claims, expiry information, revocation information, (so on) and a mechanism (e.g. a digital signature) for verifying authorship. Most of our data model revolves around this.

A Verifiable Profile includes N Claims, which may be backed by M Verifiable Credentials (thus making the Profile verifiable) that can be used to verify the authorship of those Claims, and a mechanism (e.g. a digital signature) for verifying proof of possession of the pseudonymous identifier that links all of the Claims together.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions