Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/cloudflare/privacypass-ts

A TypeScript Library for the Privacy Pass Issuance Protocol
https://github.com/cloudflare/privacypass-ts

blindrsa cryptography privacy-pass token typescript voprf

Last synced: 3 months ago
JSON representation

A TypeScript Library for the Privacy Pass Issuance Protocol

Awesome Lists containing this project

README

        

[![NPM](https://img.shields.io/npm/v/@cloudflare/privacypass-ts?style=plastic)](https://www.npmjs.com/package/@cloudflare/privacypass-ts) [![NPM](https://img.shields.io/npm/l/@cloudflare/privacypass-ts?style=plastic)](LICENSE.txt)

[![NPM](https://nodei.co/npm/@cloudflare/privacypass-ts.png)](https://www.npmjs.com/package/@cloudflare/privacypass-ts)

# privacypass-ts: A TypeScript Library for the Privacy Pass Issuance Protocol

**Specification:** Compliant with IETF [draft-ietf-privacypass-protocol](https://datatracker.ietf.org/doc/draft-ietf-privacypass-protocol/), [draft-hendrickson-privacypass-public-metadata-03](https://datatracker.ietf.org/doc/draft-hendrickson-privacypass-public-metadata/) and tests vectors match with draft [v11](https://datatracker.ietf.org/doc/draft-ietf-privacypass-protocol/11/).

**Support:**
- Public-Verifiable tokens (Blind-RSA)
- Public-Verifiable tokens with Metadata (Partially-Blind-RSA)
- Private-Verifiable tokens (VOPRF)

**Usage:**

We provide examples in the [examples folder](examples).

### Limitations

- Public-Verifiable tokens with Metadata verification is not supported in browser environments. This is due to @cloudflare/blindrsa-ts [not supporting them](https://github.com/cloudflare/blindrsa-ts?tab=readme-ov-file#platform-specific-configuration).

### Development

| Task | NPM scripts |
|-----------------|----------------------|
| Installing | `$ npm ci` |
| Building | `$ npm run build` |
| Unit Tests | `$ npm run test` |
| Examples | `$ npm run examples` |
| Benchmarking | `$ npm run bench` |
| Code Linting | `$ npm run lint` |
| Code Formatting | `$ npm run format` |

### License

The project is licensed under the [Apache-2.0](LICENSE.txt) License.