sigstore-types 0.2.0

Core types and data structures for Sigstore
Documentation
# sigstore-types

Core types and data structures for [sigstore-rust](https://github.com/sigstore/sigstore-rust).

## Overview

This crate provides the fundamental data types used throughout the sigstore-rust ecosystem. It defines serialization formats for bundles, transparency log entries, checkpoints, DSSE envelopes, and other Sigstore primitives.

This is the base crate with no dependencies on other sigstore crates. All other crates in the workspace depend on `sigstore-types`.

## Features

- **Bundle types**: `Bundle`, `TransparencyLogEntry`, `VerificationMaterial`, `InclusionProof`
- **Checkpoint parsing**: `Checkpoint`, `CheckpointSignature` for signed tree heads
- **DSSE support**: `DsseEnvelope`, `DsseSignature` for Dead Simple Signing Envelope format
- **in-toto types**: `Statement`, `Subject` for attestation predicates
- **Hash types**: `Sha256Hash`, `HashAlgorithm`, `MessageImprint`
- **Encoding helpers**: Base64, hex, DER/PEM encoding newtypes with serde support

## Usage

```rust
use sigstore_types::{Bundle, Checkpoint};

// Parse a Sigstore bundle
let bundle: Bundle = serde_json::from_str(bundle_json)?;

// Parse a checkpoint (signed tree head)
let checkpoint = Checkpoint::from_text(checkpoint_text)?;
```

## Related Crates

This crate is typically used indirectly through the higher-level APIs:

- [`sigstore-verify`]../sigstore-verify - Signature verification
- [`sigstore-sign`]../sigstore-sign - Signature creation

## License

BSD-3-Clause