# Blockcerts and Open Badges v2

**URL:** <https://community.blockcerts.org/t/blockcerts-and-open-badges-v2/188>\
**Category:** Technical\
**Created:** [June 27, 2017, 10:54pm UTC](https://community.blockcerts.org/t/blockcerts-and-open-badges-v2/188 "2017-06-27T22:54:29Z")\
**Posts on this page:** 6\
**Page:** 1

<div class="post-metadata">

**Author:** ![kim](https://sea2.discourse-cdn.com/flex016/user_avatar/community.blockcerts.org/kim/32/307_2.png) [@kim](https://community.blockcerts.org/u/kim)\
**Post date:** [June 27, 2017, 10:54pm UTC](https://community.blockcerts.org/t/blockcerts-and-open-badges-v2/188/1 "2017-06-27T22:54:29Z")

</div>

Some updates on Open Badges v2 as it relates to Blockcerts:

## Open Badges Validator 2.0 BETA

Open Badges has a beta verifier for Open Badges v2. It’s a great tool to get a preview of your OB v2 compliance. [IMS Global Open Badges Validator 2.0 BETA](http://badgecheck.herokuapp.com/). Blockcerts v2 is compliant with this checker.

## Badge Baking and Blockcerts

The IMS OB working group is considering requiring issuers to bake their Open Badges. This would be done for portability and for use with badge backpacks.

I added a prototype [obi-baking tool](https://github.com/blockchain-certificates/obi-baking) for baking Blockcerts, based on the [Open Badge baking requirements](https://www.imsglobal.org/sites/default/files/Badges/OBv2p0/baking/index.html). This contains samples and a tool that can bake a Blockcert and extract the metadata from a baked Blockcert. For example:

### Baking

```auto
node index.js -b -i cert-image.png -o baked-blockcert.png -B sample-blockcert.json 

```

### Extracting

```auto
node index.js -x -o baked-blockcert.png 

```

### Help

```auto
node index.js --help 

```

## More about the Blockcerts OBI baking tool

This implementation embeds the entire assertion with signature into a specified png file. Feel free to experiment with this.

Note that the OB Validator will work on the baked image file or the assertion. So for example, you can confirm that the samples in obi-baking tool are valid by either:

- uploading the `baked-blockcert.png` file, or
- pasting the contents of `sample-blockcert.json`

---

<div class="post-metadata">

**Author:** ![aqquadro](https://sea2.discourse-cdn.com/flex016/user_avatar/community.blockcerts.org/aqquadro/32/54_2.png) [@aqquadro](https://community.blockcerts.org/u/aqquadro)\
**Post date:** [July 11, 2017, 9:31pm UTC](https://community.blockcerts.org/t/blockcerts-and-open-badges-v2/188/2 "2017-07-11T21:31:10Z")

</div>

Thank you very much!

I’ve just tested it on a IBM Open Badge received by my friend

edit - the system copy my image and cleanup metadata [original here](https://growingabit.io/obi/70a0b474e807fb15cd3ef24aa5df53856686577679b13dbfeb6d93caf6c15389.baked.png)  
 ![](https://us1.discourse-cdn.com/flex016/uploads/blockcerts/original/1X/56ca7acf05a21d772344b593be55440f44b33b86.png)

If I do all right the baked Badge is this

[https://api.youracclaim.com/v1/obi/badge\_assertions/10fb56ef-2cdd-41be-a029-bad71204d7fe](https://api.youracclaim.com/v1/obi/badge_assertions/10fb56ef-2cdd-41be-a029-bad71204d7fe)

and refer to the following evidence

> **[IBM Blockchain Essentials was issued by IBM to GABRIELE POSCA.](https://www.youracclaim.com/badges/10fb56ef-2cdd-41be-a029-bad71204d7fe)**
>
> This badge earner has developed an understanding of Blockchain principles and practices and how they can be applied within a business environment. They have an understanding of Blockchain and distributed ledger systems, the important concepts and key...

Great!

---

<div class="post-metadata">

**Author:** ![donpresant](https://sea2.discourse-cdn.com/flex016/user_avatar/community.blockcerts.org/donpresant/32/280_2.png) [@donpresant](https://community.blockcerts.org/u/donpresant)\
**Post date:** [December 29, 2017, 10:41pm UTC](https://community.blockcerts.org/t/blockcerts-and-open-badges-v2/188/3 "2017-12-29T22:41:01Z")

</div>

Hi Kim:

Sorry for my ignorance and I can’t really test - is this just the assertion file, or also the badge class and the issuer?  
The example below seems to indicate that it’s just the assertion, a bit like a signed the signed assertion here:

> **[mozilla/openbadges-backpack](https://github.com/mozilla/openbadges-backpack/wiki/Creating-Signed-Assertions)**
>
> Mozilla Open Badges Backpack. Contribute to mozilla/openbadges-backpack development by creating an account on GitHub.

True?

Thanks,  
Don

---

<div class="post-metadata">

**Author:** ![d.hussain](https://avatars.discourse-cdn.com/v4/letter/d/4af34b/32.png) [@d.hussain](https://community.blockcerts.org/u/d.hussain)\
**Post date:** [May 8, 2018, 12:22pm UTC](https://community.blockcerts.org/t/blockcerts-and-open-badges-v2/188/4 "2018-05-08T12:22:52Z")

</div>

Dear @kim,

URL for "IMS Global Open Badges Validator 2.0 beta " is no longer functional.

I tried below link using sample certificates included in cert viewer and it is giving validation errors.

[https://openbadgesvalidator.imsglobal.org/](https://openbadgesvalidator.imsglobal.org/)

Regards,  
Danish

---

<div class="post-metadata">

**Author:** ![d.hussain](https://avatars.discourse-cdn.com/v4/letter/d/4af34b/32.png) [@d.hussain](https://community.blockcerts.org/u/d.hussain)\
**Post date:** [May 9, 2018, 9:17am UTC](https://community.blockcerts.org/t/blockcerts-and-open-badges-v2/188/5 "2018-05-09T09:17:46Z")

</div>

Also when I am trying to upload backed-blockcert.png generated using sample to backpack I am getting beloow error

![image](https://us1.discourse-cdn.com/flex016/uploads/blockcerts/original/1X/d9b0c856c1f61fc565fccd1b515d943fed71ad61.png)

---

<div class="post-metadata">

**Author:** ![Kyle](https://avatars.discourse-cdn.com/v4/letter/k/848f3c/32.png) [@Kyle](https://community.blockcerts.org/u/Kyle)\
**Post date:** [May 28, 2018, 9:26pm UTC](https://community.blockcerts.org/t/blockcerts-and-open-badges-v2/188/6 "2018-05-28T21:26:51Z")

</div>

I’m trying to better understand what BlockCerts does/doesn’t do. Does it currently bake your badge for you? Or No?

I’m wondering how much I need to use something like Badgr in conjunction with Blockcerts to ultimately have an open badge referenced from the blockchain.
