1. Go to this page and download the library: Download k2gl/rekor-client library. Choose the download type require.
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
k2gl / rekor-client example snippets
use K2gl\RekorClient\RekorApiVersion;
use K2gl\RekorClient\RekorClient;
use K2gl\RekorClient\Verifier;
use K2gl\RekorClient\KeyDetails;
$rekor = new RekorClient(
httpClient: $psr18Client,
requestFactory: $psr17Factory,
streamFactory: $psr17Factory,
baseUrl: 'https://rekor.sigstore.dev',
apiVersion: RekorApiVersion::V1,
);
// A hashedrekord entry: the artifact digest, the signature, and the key or
// certificate that signed it.
$entry = $rekor->submitHashedRekord(
digest: $artifactSha256, // raw 32-byte digest
signature: $rawSignature,
verifier: Verifier::certificate($fulcioLeafDer, KeyDetails::PKIX_ECDSA_P256_SHA_256),
);
// $entry is a K2gl\SigstoreBundle\TransparencyLogEntry — drop it straight in:
$json = BundleBuilder::forMessageSignature($messageSignature)
->withCertificate($fulcioLeafDer)
->addTransparencyLogEntry($entry)
->toJson();
use K2gl\RekorClient\LogReader;
$reader = new LogReader(
httpClient: $psr18Client,
requestFactory: $psr17Factory,
baseUrl: 'https://log2025-1.rekor.sigstore.dev',
origin: 'log2025-1.rekor.sigstore.dev', // the checkpoint's first line
publicKeyDer: $logPublicKeyDer, // tlogs[].publicKey.rawBytes in the trusted root
);
$checkpoint = $reader->checkpoint(); // K2gl\SignedNote\Checkpoint: origin, treeSize, rootHash
$entry = $reader->entry(114108965); // TransparencyLogEntry with an inclusion proof
$entries = $reader->entries(from: 114108900, count: 100); // the same, in bulk
Loading please wait ...
Before you can download the PHP files, the dependencies should be resolved. This can take some minutes. Please be patient.