OB.png

Compare and Contrast: OpenBadges vs Verifiable Credentials

Verifiable credentials are a defined and standardized implementation of digital identity whereas Open Badges is more open-ended.
image
Affinidi
Nov 15, 2021

As we move towards a world of digital identity, many ways of sharing and verifying Personally Identifiable Information are emerging. Two such modes that we’ll talk about today are Open Badges and Verifiable Credentials.

What are Open Badges?

At the most basic level, Open Badges are a format for issuing digital badges and are often associated with certifying educational proficiency, skills, and job-related achievements. It is verifiable, portable, and contain relevant information such as,

  • Date of Issue
  • Date of Expiry
  • Name of the Issuer
  • Name of the Recipient
  • JSON-LD object that describes the qualification or skill
  • Digital Signature
  • Badge Name
  • Badge Criteria
  • Badge Description

Here is an example of Open Badges from IMSGlobal.org { "@context": "https://w3id.org/openbadges/v2", "id": "https://example.org/assertions/123", "type": "Assertion", "recipient": { "type": "email", "identity": "alice@example.org" }, "issuedOn": "2016-12-31T23:59:59+00:00", "verification": { "type": "hosted" }, "badge": { "type": "BadgeClass", "id": "https://example.org/badges/5", "name": "3-D Printmaster", "description": "This badge is awarded for passing the 3-D printing knowledge and safety test.", "image": "https://example.org/badges/5/image", "criteria": { "narrative": "Students are tested on knowledge and safety, both through a paper test and a supervised performance evaluation on live equipment" }, "issuer": { "id": "https://example.org/issuer", "type": "Profile", "name": "Example Maker Society", "url": "https://example.org", "email": "contact@example.org", "verification": { "allowedOrigins": "example.org" } } } }

Breaking this down a bit, there are three major parts in Open badges and they are:

  • Assertions — Representation of a badge that is packaged as a JSON object with a bunch of mandatory and optional properties. In other words, it shares information about a badge belonging to an earner.

  • Badge — This is the actual accomplishment recognized by the issuer. There can be many skills and accomplishments in the same badge.

  • Issuer — Gives information about the entity issuing the badge, typically a university, a company, or a learning center.

Open badges are being increasingly adopted by universities and other micro-credential organizations to issue achievements and skill accomplishments for entities. Typically, these badges are sent to the earners and in turn, the earners can hold and collect these badges, and can share them easily with others when needed.

Here’s how a collection of badges looks like.

badges.png

Source: UNESCO Institute

What are Verifiable Credentials?

Verifiable credentials, or VCs in short, are tamper-proof credentials that can be verified cryptographically. Verifiable Credentials are:

  • Machine readable and verifiable
  • Cryptographically tamper-proof
  • Privacy preserving

You can read about verifiable credentials here.

Here is how a VC looks like { "type": "https://w3c-ccg.github.io/vc-json-schemas/schema/1.0/schema.json", "modelVersion": "1.0", "id": "did:work:MDP8AsFhHzhwUvGNuYkX7T;id=06e126d1-fa44-4882-a243-1e326fbe21db;version=1.0", "name": "PassportCredentialSchema", "author": "did:work:MDP8AsFhHzhwUvGNuYkX7T", "authored": "2018-01-01T00:00:00+00:00", "schema": { "$schema": "http://json-schema.org/draft-07/schema#", "description": "Passport", "type": "object", "properties": { "PassportNumber": { "type": "number", } “DateofIssue": { "type": "date", } “FirstName": { "type": "string", } “LastName": { "type": "string", } }, "required": ["passportNumber", “dateofIssue”, “firstName”, “lastName”], "additionalProperties": false }, "proof": { "created": "2019-09-27T06:26:11Z", "creator": "did:work:MDP8AsFhHzhwUvGNuYkX7T#key-1", "nonce": "0efba23d-2987-4441-998e-23a9d9af79f0", "signatureValue": "2A7ZF9f9TWMdtgn57Y6dP6RQGs52xg2QdjUESZUuf4J9BUnwwWFNL8vFshQAEQF6ZFBXjYLYNU4hzXNKc3R6y6re", "type": "Ed25519VerificationKey2018" } "proof": { "type": "RsaSignature2018", "created": "2020-09-14T21:19:10Z", "proofPurpose": "authentication", "verificationMethod": "did:example:ebfeb1f712ebc6f1c276e12ec21#keys-1",

"challenge": "1f44d55f-f161-4938-a659-f8026467f126",
"domain": "4jt78h47fh47",
"jws": "eyJhbGciOiJSUzI1NiIsImI2NCI6ZmFsc2UsImNyaXQiOlsiYjY0Il19..kTCYt5      XsITJX1CxPCT8yAV-TVIw5WEuts01mq-pQy7UJiN5mgREEMGlv50aqzpqh4Qq_PbChOMqs LfRoPsnsgxD-WUcX16dUOqV0G_zS245-kronKb78cPktb3rk-BuQy72IFLN25DYuNzVBAh
  4vGHSrQyHUGlcTwLtjPAnKb78"

} }

Similarities between Open Badges and Verifiable Credentials

There are many similarities between open badges and verifiable credentials and some of the important ones are:

  • The fundamental idea of both models is to allow the owners of a credential to store it safely in a digital wallet and share it with any entity of their choice. In other words, it gives holders/earners complete control over their credentials/accomplishments.
  • Allow the expression of a cryptographically verifiable claim involving issuers, holders, credentials, and verifiers.
  • Secure and portable
  • Both allow holders to compile and share their information the way they want. For example, a holder can gather different accomplishment and skill badges, combine these visual badges, and send it to the receiver. Likewise, the holder of a verifiable credential can compile all the required VCs into a verifiable presentation and send it to the verifier.

Differences between Open Badges and Verifiable Credentials

On the face of it, both Open badges and verifiable credentials may seem similar, but still, there are many differences between them.

Immutability

Verifiable credentials use the “proof” property to verify that a credential is immutable while the digital signatures prove the identity of issuers and holders

Open badges, by themselves, don’t have this immutable property though digital signatures are present to prove the authenticity of the issuer. Blockcerts, a blockchain implementation of Open badges, uses the timestamps of blockchains to achieve this immutability. But some implementations involving HTTP don’t have this property.

Applications

So far, Open badges have mostly been implemented in the education sector to add credibility to informal education and to endorse specific skills or experience of the holder. It is also used for employment verification to a limited extent.

VCs, on the other hand, have a wide range of applications in real life. Here’s a story of how VCs can be used in real-world situations.

Standard Implementation

The implementation of verifiable credentials has been standardized by w3c.org that advocates the use of Decentralized Identifiers (DIDs) as the URI. Also, digital signatures help to keep these credentials secure and authentic.

Open Badges doesn’t have a standard implementation and it is left to different organizations to use a set of optional properties to create them. Though some mandatory properties must be present, there could be variations in the implementation.

In fact, Open badges have two verification methods,

  • HostedBadge that uses HTTP
  • SignedBadge that uses a JSON Web Signature

Visual Representation

Often, Open Badges are represented as a badge that contains detailed metadata such as the name, issuer, and description. All this information is baked into the image, so any Open Badge-compatible application can display this information. This visual representation is also what makes it highly portable.

In VCs, all information is encrypted and protected by digital signatures, so the information is not readily visible to everyone, except those who have the public keys to verify the authenticity of the issuer and the holder.

Verifiability

Open badges require third-party tools to explicitly verify whether the information contained in it. So, verifying Open badges could entail more resources such as subscription/payment for using the verification tool and dependencies on third-party providers.

VCs, on the other hand, have verifiability built in through digital signatures, so additional tools are required.

Here’s a table that sums up these differences.

OMVC_table.png

In all, VCs are a defined and standardized implementation of digital identity whereas Open Badges is more open-ended where organizations can use HTTP or web signatures to implement them.

But that could change shortly as there are efforts to use the VC specifications to implement Open Badges to make the most of the benefits in both models.

When to Use Open Badges and VCs?

Open Badges are a good choice for universities and learning centers that don’t offer a degree, but still want to formalize the efforts and accomplishments of students. Since the credentials can be baked into a badge, it can be useful when students have a web portfolio or personal websites through which they want to showcase their accomplishments to the world.

Verifiable credentials, on the other hand, are more suited for issuers with authorities who backup a claim made by a holder. For example, when a user claims that he is over 18 years of age, a date of birth VC issued by the local city/county/state validates this claim. Since these are machine verifiable, it can be used across multiple scenarios.

Affinidi provides building blocks for an open and interoperable Self-Sovereign Identity ecosystem. Check out our developer portal for more information.

Get an email whenever Affinidi Publishes!

Subscribe