Metadata-Version: 2.4
Name: vc-jwt-decoder
Version: 1.8.2
Summary: Decode, verify and inspect W3C Verifiable Credential / Presentation tokens (VC-JWT, VP-JWT, COSE) from the command line or as a library
Project-URL: Homepage, https://gitlab.com/riphixel/vc-jwt-decoder
Project-URL: Repository, https://gitlab.com/riphixel/vc-jwt-decoder
Project-URL: Issues, https://gitlab.com/riphixel/vc-jwt-decoder/-/issues
Project-URL: Changelog, https://gitlab.com/riphixel/vc-jwt-decoder/-/releases
Author-email: Pierre Gronlier <pierre@gronlier.fr>
License-Expression: MIT
License-File: LICENSE
Keywords: cli,cose,decoder,did,jwt,vc-jwt,verifiable-credentials,verifiable-presentations,vp-jwt
Classifier: Environment :: Console
Classifier: Intended Audience :: Developers
Classifier: Topic :: Security :: Cryptography
Classifier: Topic :: Utilities
Classifier: Typing :: Typed
Requires-Python: >=3.12
Requires-Dist: cbor2>=6.1.2
Requires-Dist: httpx>=0.28.1
Requires-Dist: jwcrypto>=1.5.7
Requires-Dist: py-multibase>=2.0.0
Requires-Dist: py-multicodec>=1.0.0
Requires-Dist: rdflib>=7.6.0
Provides-Extra: cli
Requires-Dist: rich>=14.3.3; extra == 'cli'
Description-Content-Type: text/markdown

# VC JWT Decoder (CLI)

[![pipeline status](https://gitlab.com/riphixel/vc-jwt-decoder/badges/main/pipeline.svg)](https://gitlab.com/riphixel/vc-jwt-decoder/-/commits/main)
[![coverage report](https://gitlab.com/riphixel/vc-jwt-decoder/badges/main/coverage.svg)](https://gitlab.com/riphixel/vc-jwt-decoder/-/commits/main)
 [![Latest Release](https://gitlab.com/riphixel/vc-jwt-decoder/-/badges/release.svg)](https://gitlab.com/riphixel/vc-jwt-decoder/-/releases)

Features:

- [X] decode VC JWT
- [X] decode VP JWT
- [X] decode VP JWT with encapsulated VC
- [X] decode COSE JWT
- [X] support did:web signature verification
- [X] support did:wba signature verification
- [X] support did:key signature verification. Supports `ed25519-pub`,  `secp256k1-pub`, `p256-pub`, `p384-pub`
- [ ] support did:jwk signature verification
- [ ] support did:dns signature verification
- [X] support OpenID Connect signature verification
- [ ] support reading attachement from PDFs
- [X] export data as RDF. Supports `.json-ld`, `.xml`, `.trix`, `.ttl`, `.trig`, `.nt`, `.n3`

## Install

```shell
pip install vc-jwt-decoder      # as a library (no CLI)
pip install vc-jwt-decoder[cli] # as a command line tool
```

## Usage

```shell
vc-jwt-decoder <token_file>
```

[![demo](https://asciinema.lab.gronlier.fr/a/bht2YzrV2qYZMSJK.svg)](https://asciinema.lab.gronlier.fr/a/bht2YzrV2qYZMSJK)

Example:

```shell
wget -q https://gitlab.com/cde-public/credentials/-/raw/main/participants/participant_vc_cispe_vc_urn:cde:v5:c92e611f-e97e-40e9-8ee6-31e7c60e6892.jwt -O - | vc-jwt-decoder
```

## Development

### Local testing

```shell
uv build
uv run pytest -v
```

### Local CI

For local CI with [gitlab-ci-local](https://github.com/firecow/gitlab-ci-local)

```shell
gitlab-ci-local
```
