Rendro.Sign (Rendro v0.3.0)

Copy Markdown View Source

Artifact-first signing boundary.

This surface supports two distinct signing seams over rendered artifacts:

  • prepare/2 patches deterministic signature placeholders for lower-level external workflows.
  • sign/2 signs the original unsigned rendered artifact through a narrow optional adapter boundary.

Summary

Types

augment_option()

@type augment_option() :: {:adapter, module()} | {:adapter_opts, keyword() | map()}

augment_options()

@type augment_options() :: [augment_option()]

prepare_option()

@type prepare_option() ::
  {:field, String.t()} | {:reserved_bytes, pos_integer()} | {:adapter, module()}

prepare_options()

@type prepare_options() :: [prepare_option()]

sign_option()

@type sign_option() ::
  {:field, String.t()}
  | {:adapter, module()}
  | {:adapter_opts, keyword() | map()}

sign_options()

@type sign_options() :: [sign_option()]

validate_option()

@type validate_option() :: {:adapter, module()}

validate_options()

@type validate_options() :: [validate_option()]

Functions

augment(artifact, opts)

@spec augment(Rendro.Artifact.t(), augment_options()) ::
  {:ok, Rendro.Artifact.t()} | {:error, Rendro.Error.t()}

prepare(artifact, opts)

@spec prepare(Rendro.Artifact.t(), prepare_options()) ::
  {:ok, Rendro.Artifact.t()} | {:error, Rendro.Error.t()}

redact_augment_opts(opts)

@spec redact_augment_opts(augment_options() | map()) :: map()

redact_opts(opts)

@spec redact_opts(prepare_options() | map()) :: map()

redact_prepare_opts(opts)

@spec redact_prepare_opts(prepare_options() | map()) :: map()

redact_sign_opts(opts)

@spec redact_sign_opts(sign_options() | map()) :: map()

render_signed(doc, render_opts \\ [], sign_opts)

@spec render_signed(Rendro.Document.t(), Rendro.render_options(), sign_options()) ::
  {:ok, Rendro.Artifact.t()} | {:error, Rendro.Error.t()}

sign(artifact, opts)

@spec sign(Rendro.Artifact.t(), sign_options()) ::
  {:ok, Rendro.Artifact.t()} | {:error, Rendro.Error.t()}

validate(artifact, opts \\ [])

@spec validate(Rendro.Artifact.t(), validate_options()) ::
  {:ok, map()} | {:error, Rendro.Error.t()}

validate_trust(artifact, opts \\ [])

@spec validate_trust(Rendro.Artifact.t(), validate_options()) ::
  {:ok, map()} | {:error, Rendro.Error.t()}