Fulcio & Rekor
Fulcio and Rekor are the infrastructure components that power Sigstore’s keyless signing. Fulcio issues certificates, and Rekor maintains a transparency log of all signatures.
Fulcio
Fulcio is a certificate authority (CA) that issues short-lived certificates for code signing based on OIDC authentication.
How Fulcio Works
sequenceDiagram
participant User
participant Cosign
participant OIDC as OIDC Provider
participant Fulcio
participant Rekor
User->>Cosign: Sign image
Cosign->>OIDC: Authenticate
OIDC-->>Cosign: ID Token
Cosign->>Fulcio: Request certificate (with ID token)
Fulcio->>Fulcio: Verify ID token
Fulcio-->>Cosign: Issue certificate
Cosign->>Cosign: Sign image
Cosign->>Rekor: Store signature
Fulcio Features
- OIDC-based - Uses OIDC for identity verification
- Short-lived certificates - Certificates expire quickly
- No key management - Developers don’t manage keys
- Public infrastructure - Free public instance available
Rekor
Rekor is a transparency log that stores signed metadata about artifacts. It provides an immutable, auditable record of all signatures.
How Rekor Works
flowchart TD
A[Cosign Signs Image] --> B[Create Signature Entry]
B --> C[Submit to Rekor]
C --> D[Rekor Stores Entry]
D --> E[Return Entry UUID]
E --> F[Signature Logged]
style A fill:#e1f5ff
style D fill:#fff4e1
style F fill:#e8f5e9
Rekor Features
- Transparency log - Public record of all signatures
- Immutable - Entries cannot be modified
- Queryable - Search for signatures
- Verifiable - Verify log integrity
Using Public Infrastructure
Sigstore provides public instances:
- Fulcio:
https://fulcio.sigstore.dev - Rekor:
https://rekor.sigstore.dev
These are free to use and suitable for most use cases.
Self-Hosted Deployment
Deploy Fulcio
kubectl apply -f https://github.com/sigstore/fulcio/releases/latest/download/fulcio.yaml
Deploy Rekor
kubectl apply -f https://github.com/sigstore/rekor/releases/latest/download/rekor.yaml
Best Practices
- Use public infrastructure - For most use cases, public instances are sufficient
- Self-host for compliance - Deploy your own for strict compliance requirements
- Monitor logs - Keep an eye on Rekor for suspicious activity
- Verify transparency - Regularly verify Rekor log integrity