Skip to main content

Based on Rekor-Monitor

Project description

Python Rekor Monitor

Usage

  • To fetch the latest checkpoint from the rekor server: python main.py -c or python main.py --checkpoint
  • To verify that a particular log index is included in the transparency log as of now and verify the signature on that artifact stored in the transparency log: python main.py --inclusion <logIndex> --artifact <artifactFilePath>
  • To verify that an older checkpoint is consistent with the latest checkpoint on the rekor server: python main.py --consistency --tree-id <treeID> --tree-size <treeSize> --root-hash <rootHash> Tree ID, tree size and root hash from the older checkpoint.

Flow

  1. Add an artifact to the Rekor transparency log using the cosign tool. Verify that the entry was successfully included in the transparency log.
  2. Verify the consistency of the rekor transparency log, i.e that the new entry that was append only to the log.

Steps

  1. Create an artifact (binary) that will be signed with entry being stored in the rekor log.
  2. Use the cosign tool to sign the artifact using your email id and store the signature and certificate that was used to sign it. (bundle command)
  3. Get checkpoint of the rekor public instance transparency log. "--checkpoint"
  4. a. Verify that the artifact is in the transparency log by getting a merkle proof and verifying it offline (use merkle_proof api) "--inclusion " b. Verify that the artifact signature is correct (use crypto api)
  5. At any point in time, can verify that the consistency of the checkpoint which had our entry added and the latest checkpoint by verifying the consistency proof. Just need the old checkpoint details: tree id, tree size, and root hash. Verifying consistency of a checkpoint till the latest checkpoint.

Required data

  • For consistency verification, you need the old and new checkpoint details (treeSize, rootHash, treeID) and the hashes to generate a merkle proof to show that the old checkpoint exists in the new checkpoint.
  • For inclusion verification, you need the

Global Flags

  • --debug to dump intermediate files and print verbose output

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

python_rekor_monitor-0.1.0-py3-none-any.whl (7.2 kB view details)

Uploaded Python 3

File details

Details for the file python_rekor_monitor-0.1.0-py3-none-any.whl.

File metadata

File hashes

Hashes for python_rekor_monitor-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 3b7ad12d4888cabca7494d45c17f5fcd7048ab71a03dc664256ab6a72b5c74a9
MD5 88fb098bc782f1b9a03e432151aaa7ac
BLAKE2b-256 98bafb83995f79b4945cd42763831cd534b886bca9ec56e6fa32a05a2be36b42

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page