proof

package
v0.5.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 2, 2026 License: MIT Imports: 5 Imported by: 0

Documentation

Overview

Package proof composes vector-backed Encrypted Spaces proof primitives into Workflow-facing verification policies.

Index

Constants

This section is empty.

Variables

View Source
var (
	ErrProofRejected   = errors.New("proof rejected")
	ErrStaleCheckpoint = errors.New("stale checkpoint")
)

Functions

This section is empty.

Types

type CheckpointProof

type CheckpointProof struct {
	Checkpoint       keytrans.Checkpoint
	PreviousTreeSize uint64
}

type MembershipProof

type MembershipProof struct {
	GroupID      string
	MemberID     string
	Issuer       string
	ExpiresAt    int64
	ProofDigest  string
	UpstreamPath string
}

type OperationEvidence

type OperationEvidence struct {
	SpaceID         operationlog.SpaceID         `json:"space_id"`
	OperationID     operationlog.OperationID     `json:"operation_id"`
	Sequence        uint64                       `json:"sequence"`
	Digest          string                       `json:"digest"`
	KeyEpoch        operationlog.KeyEpoch        `json:"key_epoch"`
	MembershipEpoch operationlog.MembershipEpoch `json:"membership_epoch"`
	CiphertextSize  int                          `json:"ciphertext_size"`
	Reports         []Report                     `json:"reports"`
}

func NewOperationEvidence

func NewOperationEvidence(commitment operationlog.OperationCommitment, reports []Report) OperationEvidence

type Policy

type Policy struct{}

func VectorPolicy

func VectorPolicy() Policy

func (Policy) VerifyCheckpoint

func (Policy) VerifyCheckpoint(proof CheckpointProof) (Report, error)

func (Policy) VerifyMembership

func (Policy) VerifyMembership(proof MembershipProof) (Report, error)

func (Policy) VerifyOperationCommitment

func (Policy) VerifyOperationCommitment(operation operationlog.EncryptedOperation, commitment operationlog.OperationCommitment) (Report, error)

type Report

type Report struct {
	Domain          string `json:"domain"`
	Accepted        bool   `json:"accepted"`
	ProductionReady bool   `json:"production_ready"`
	UpstreamPath    string `json:"upstream_path,omitempty"`
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL