Skip to content

About

Reproducible, implementation-neutral qualification and benchmarking of PDF signing solutions [WIP]

Resources

Contributing

Stars

0 stars

Watchers

0 watching

Forks

Repository files navigation

pdf-signing-qualification

Reproducible, implementation-neutral qualification and benchmarking of PDF signing solutions. [WIP]

Purpose

Unit and golden tests inside a signing library show that it behaves as its authors expect. They do not show that its output is accepted by independent tools, across PDFs from many generators, or how it performs on a known population of documents. This repository provides that evidence:

  • Traceable inputs. Public PDFs are acquired from their upstream projects by URL, revision and SHA-256. They are never copied into this repository.
  • Independent verdicts. Signed outputs are judged by independent validators, not by the implementation's own success result.
  • Qualification before performance. Timing is only compared over inputs that every compared implementation signed and that were independently validated.

The method is described in the RFC Reproducible PDF signing qualification and benchmarking.

Any signing solution can be qualified

Implementations are integrated through adapters. An adapter runs one signing solution, in any language or as an external process, against the same inputs and scenarios, and the same validators judge every output. The implementations under test are signerphp/pdf-signer and JSignPdf, run through jsignpdf-php; other solutions are qualified by adding an adapter, without changes to the inputs or validators.

Getting started

Requirements: Docker with Compose.

docker compose build
docker compose run --rm app composer install
docker compose run --rm sandbox composer check

To run the pilot over the selected sample and get its summary:

bin/pilot

See AGENTS.md for the repository layout and workflow, and CONTRIBUTING.md for the fixture policy.

License

MIT

About

Reproducible, implementation-neutral qualification and benchmarking of PDF signing solutions [WIP]

Resources

Contributing

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages