This repository provides a Go implementation of the basic and rate-limited Privacy Pass issuance protocols. It is meant for experimental and interop purposes, and not to be used in production. It is expected that changes in the code, repository, and API may occur in the future as the Privacy Pass standard evolves.
To generate test vectors, run:
$ make vectors
This will produce several JSON files:
- anon-origin-id-test-vectors.json: Test vectors for computing the Anonymous Issuer Origin ID value in the rate-limited issuance protocol.
- basic-issuance-test-vectors.json: Test vectors for the private basic issuance protocol (type 0x0001).
- basic-public-issuance-test-vectors.json: Test vectors for the private basic issuance protocol (type 0x0002).
- ed25519-blinding-test-vectors.json: Test vectors for ed25519 key blinding and signing.
- ecdsa-blinding-test-vectors.json: Test vectors for ECDSA key blinding and signing.
- index-test-vectors.json: Test vectors for the client-origin index computation.
- origin-encryption-test-vectors.json: Test vectors for origin name encrpytion.
Examples for generating and verifying the test vectors can be found in the Makefile.