{"id":13565339,"url":"https://github.com/filip26/iron-verifiable-credentials","last_synced_at":"2025-08-16T07:15:15.138Z","repository":{"id":36994601,"uuid":"492331388","full_name":"filip26/iron-verifiable-credentials","owner":"filip26","description":"A Verifiable Credentials Processor \u0026 API","archived":false,"fork":false,"pushed_at":"2025-07-22T23:47:45.000Z","size":2829,"stargazers_count":17,"open_issues_count":16,"forks_count":7,"subscribers_count":4,"default_branch":"main","last_synced_at":"2025-07-23T01:23:07.867Z","etag":null,"topics":["credentials","credentials-issuer","credentials-verification","java","verifiable-credentials","verifiable-credentials-data-model"],"latest_commit_sha":null,"homepage":"https://iron.apicatalog.com/","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/filip26.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null},"funding":{"github":["filip26"],"patreon":null,"open_collective":null,"ko_fi":null,"tidelift":null,"community_bridge":null,"liberapay":null,"issuehunt":null,"otechie":null,"custom":["https://wise.com/share/filipk558","https://paypal.me/FilipKolarik"]}},"created_at":"2022-05-14T21:45:18.000Z","updated_at":"2025-07-22T23:47:49.000Z","dependencies_parsed_at":"2024-03-18T21:34:55.232Z","dependency_job_id":"94cc34a8-f543-4ab1-9086-3fcab8528cf9","html_url":"https://github.com/filip26/iron-verifiable-credentials","commit_stats":{"total_commits":611,"total_committers":2,"mean_commits":305.5,"dds":"0.14238952536824878","last_synced_commit":"c115fdbe478fdcc334ea3ca742ce64cf90e14326"},"previous_names":[],"tags_count":5,"template":false,"template_full_name":null,"purl":"pkg:github/filip26/iron-verifiable-credentials","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/filip26%2Firon-verifiable-credentials","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/filip26%2Firon-verifiable-credentials/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/filip26%2Firon-verifiable-credentials/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/filip26%2Firon-verifiable-credentials/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/filip26","download_url":"https://codeload.github.com/filip26/iron-verifiable-credentials/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/filip26%2Firon-verifiable-credentials/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":270680201,"owners_count":24627148,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-08-16T02:00:11.002Z","response_time":91,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["credentials","credentials-issuer","credentials-verification","java","verifiable-credentials","verifiable-credentials-data-model"],"created_at":"2024-08-01T13:01:44.965Z","updated_at":"2025-08-16T07:15:15.113Z","avatar_url":"https://github.com/filip26.png","language":"Java","funding_links":["https://github.com/sponsors/filip26","https://wise.com/share/filipk558","https://paypal.me/FilipKolarik"],"categories":["Java"],"sub_categories":[],"readme":"\n\u003e [!IMPORTANT]\n\u003e Your feedback is essential to the improvement of this library. Please share any concerns, primary use cases, areas for enhancement, or challenges you have encountered. Your insights help refine and optimize the library to better meet user needs. Thank you for your time and contributions.\n\n# Iron Verifiable Credentials Processor\n\nAn implementation of the [W3C Verifiable Credentials](https://www.w3.org/TR/vc-data-model/) model and processing in Java.\n\n\u003c!---\n[![Codacy Badge](https://app.codacy.com/project/badge/Grade/806688cdb1d248e8b5cc2a67f6c2f0f8)](https://app.codacy.com/gh/filip26/iron-verifiable-credentials/dashboard?utm_source=gh\u0026utm_medium=referral\u0026utm_content=\u0026utm_campaign=Badge_grade)\n[![Codacy Badge](https://app.codacy.com/project/badge/Coverage/806688cdb1d248e8b5cc2a67f6c2f0f8?branch=main)](https://app.codacy.com/gh/filip26/iron-verifiable-credentials/dashboard?utm_source=gh\u0026utm_medium=referral\u0026utm_content=\u0026utm_campaign=Badge_coverage)\n--\u003e\n[![Java 17 CI](https://github.com/filip26/iron-verifiable-credentials/actions/workflows/java17-build.yml/badge.svg)](https://github.com/filip26/iron-verifiable-credentials/actions/workflows/java17-build.yml)\n[![Security Rating](https://sonarcloud.io/api/project_badges/measure?project=filip26_iron-verifiable-credentials\u0026metric=security_rating)](https://sonarcloud.io/summary/new_code?id=filip26_iron-verifiable-credentials)\n[![Maintainability Rating](https://sonarcloud.io/api/project_badges/measure?project=filip26_iron-verifiable-credentials\u0026metric=sqale_rating)](https://sonarcloud.io/dashboard?id=filip26_iron-verifiable-credentials)\n[![Maven Central](https://img.shields.io/maven-central/v/com.apicatalog/iron-verifiable-credentials.svg?label=Maven%20Central)](https://search.maven.org/search?q=g:com.apicatalog%20AND%20a:iron-verifiable-credentials)\n[![License](https://img.shields.io/badge/License-Apache%202.0-blue.svg)](https://opensource.org/licenses/Apache-2.0)\n\n## Features\n\n* Issuer, Verifier, Holder\n* Signature Suites\n  * [W3C Data Integrity Cryptosuites](https://www.w3.org/TR/vc-data-integrity/)\n    * [ECDSA-SD-2023](https://github.com/filip26/iron-ecdsa-sd-2023) [selective disclosure]\n    * [EdDSA-RDFC-2022](https://github.com/filip26/iron-eddsa-rdfc-2022)\n    * [ECDSA-RDFC-2019](https://github.com/filip26/iron-ecdsa-rdfc-2019) [P-256, P-384]\n    * [BBS-2023](https://github.com/filip26/iron-bbs-cryptosuite-2023) (planned)\n  * [Ed25519Signature2020](https://github.com/filip26/iron-ed25519-cryptosuite-2020)\n  * Have you implemented a signature suite? List it here, open PR.\n* Credentail Status Verification\n  * Bitstring Status List (planned) \n* Data Models\n  * [v2.0](https://w3c.github.io/vc-data-model/)\n  * [v1.1](https://www.w3.org/TR/vc-data-model/)\n\n[Community compatibility dashboard for Verifiable Credentials](https://canivc.com/)\n\n## Usage\n\nThis repository provides common logic and primitives to easily implement a signature suite. It is intended to be used together with a suite, or suites, of your choice, e.g. [ECDSA SD 2023](https://github.com/filip26/iron-ecdsa-sd-2023). Read the suite(s) documentation for specifics.\n\n### Verifier\n\n```javascript\n// create a new verifier instance\nstatic Verifier VERIFIER = Verifier.with(SUITE1, SUITE2, ...)\n    // options\n    .base(...)\n    .loader(...)\n    .useBundledContexts(true|false)\n    .statusValidator(...)\n    .subjectValidator(...)\n    // ...\n    ; \n\ntry {\n  // verify the given input proof(s)\n  var verifiable = VERIFIER.verify(credential|presentation);\n  \n  // or with runtime parameters e.g. domain, challenge, etc.\n  var verifiable = VERIFIER.verify(credential|presentation, parameters);\n  \n  // get verified details\n  verifiable.subject()\n  verifiable.id()\n  verifiable.type()\n  // ...\n  \n} catch (VerificationError | DocumentError e) {\n  ...\n}\n\n```\n\n### Issuer\n\n```javascript\n// create a new issuer instance\nIssuer ISSUER = SUITE.createIssuer(keyPairProvider)\n    // options\n    .base(...)\n    .loader(...)\n    .useBundledContexts(true|false)\n    // ...\n    ; \n\ntry {\n  // issue a new verifiable, i.e. sign the input and add a new proof\n  var verifiable = ISSUER.sign(credential|presentation, proofDraft).compacted();\n  \n} catch (SigningError | DocumentError e) {\n  ...\n}\n```\n\n### Holder\n\n```javascript\n// create a new holder instance\nstatic Holder HOLDER = Holder.with(SUITE1, SUITE2, ...)\n    // options\n    .base(...)\n    .loader(...)\n    .useBundledContexts(true|false)\n    // ...\n    ; \n\ntry {\n  // derive a new signed credentials disclosing selected claims only\n  var verifiable = HOLDER.derive(credential, selectors).compacted();\n\n} catch (SigningError | DocumentError e) {\n  ...\n}\n```\n\n## Documentation\n\n![Verification Data Flow](/doc/iron-vc-signature-verification-data-flow-v1.0.6.png)\n\n![Core Data Model](/doc/iron-vc-core-data-model-v1.0.3.png)\n\n[![javadoc](https://javadoc.io/badge2/com.apicatalog/iron-verifiable-credentials/javadoc.svg)](https://javadoc.io/doc/com.apicatalog/iron-verifiable-credentials)\n\n\n\n## Installation\n\n### Maven\nJava 17+\n\n```xml\n\u003cdependency\u003e\n    \u003cgroupId\u003ecom.apicatalog\u003c/groupId\u003e\n    \u003cartifactId\u003eiron-verifiable-credentials\u003c/artifactId\u003e\n    \u003cversion\u003e0.14.0\u003c/version\u003e\n\u003c/dependency\u003e\n\n```\n\nIron VC SDK for Android is distributed under a commercial license. [Contact](mailto:filip26@gmail.com)\n\n## Contributing\n\nAll PR's welcome!\n\n### Building\n\nFork and clone the project repository.\n\n#### Java 17\n```bash\n\u003e cd iron-verfiable-credentials\n\u003e mvn clean package\n```\n\n## Extensions\n* [Iridium](https://github.com/filip26/iridium-cbor-ld) - A CBOR-based Processor for Linked Data\n* [VC HTTP API \u0026 Service](https://github.com/filip26/iron-vc-api)\n* [LEXREX](https://lexrex.web.app/) - Semantic vocabularies visual builder and manager\n\n## Resources\n\n* [VC Playground](https://vcplayground.org/)\n* [Community compatibility dashboard for Verifiable Credentials](https://canivc.com/)\n* [W3C Verifiable Credentials Data Model v2.0](https://w3c.github.io/vc-data-model/)\n* [W3C Verifiable Credentials Data Model v1.1](https://www.w3.org/TR/vc-data-model/)\n* [W3C Verifiable Credentials Use Cases](https://www.w3.org/TR/vc-use-cases/)\n* [W3C Verifiable Credentials Implementation Guidelines 1.0](https://www.w3.org/TR/vc-imp-guide/)\n* [W3C Decentralized Identifiers (DIDs) v1.0](https://www.w3.org/TR/did-core/)\n* [The did:key Method v0.7](https://w3c-ccg.github.io/did-method-key/)\n\n## Sponsors\n\n\u003ca href=\"https://github.com/digitalbazaar\"\u003e\n  \u003cimg src=\"https://avatars.githubusercontent.com/u/167436?s=200\u0026v=4\" width=\"40\" /\u003e\n\u003c/a\u003e \n\n## Commercial Support\nCommercial support is available at filip26@gmail.com\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffilip26%2Firon-verifiable-credentials","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ffilip26%2Firon-verifiable-credentials","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffilip26%2Firon-verifiable-credentials/lists"}