Referencia Zigspire-zig (SDK consumido)

zig/src/jwt.zig

Declaraciones públicas de zig/src/jwt.zig (spire-zig (SDK consumido)).

ImplementadoSin versión del tren todavía· generada desde apps/docs/generated/zig/spire.json

Página generada desde spire@spire-0.2.0-XvnrRek1BgCX4Bh8miuITCQgkn0FqeQrYYE3goFfDcQd (zig/src/root.zig). No se edita a mano: bun run docs:gen la regenera y bun run docs:check falla si difiere.

Verificación del actor (dec-0119 §5.2): el sobre lleva el access JWT del usuario, no un claim del emisor. Formato de dec-0113 §1: JWS compacto, alg: EdDSA (Ed25519), typ: at+jwt, kid = thumbprint RFC 7638; claims iss, aud (styx), sub, sid, iat, exp, jti.

Parser de entrada no confiable (dec-0117 I5): todo acotado en la pila, sin unreachable, sin reservas en el heap (JSON sobre un FixedBufferAllocator de tamaño fijo).

jwt.MAX_TOKEN_LEN

const · línea 16

pub const MAX_TOKEN_LEN: usize = 8192

Sin ///.

jwt.MAX_HEADER_JSON

const · línea 17

pub const MAX_HEADER_JSON: usize = 512

Sin ///.

jwt.MAX_CLAIMS_JSON

const · línea 18

pub const MAX_CLAIMS_JSON: usize = 4096

Sin ///.

jwt.MAX_KEYS

const · línea 19

pub const MAX_KEYS: usize = 4

Sin ///.

jwt.MAX_STR

const · línea 20

pub const MAX_STR: usize = 256

Sin ///.

jwt.Error

const · línea 22

pub const Error = error{ Malformed, UnsupportedAlgorithm, WrongType, UnknownKey, BadSignature, WrongIssuer, WrongAudience, Expired, NotYetValid, MissingClaim, }

Sin ///.

jwt.Actor

type · línea 37

pub const Actor = struct

Lo que el receptor sabe del actor tras verificar. Copias fijas: no dependen del buffer del sobre.

jwt.Actor.sub

fn · línea 44

pub fn sub(a: *const Actor) []const u8

Sin ///.

jwt.Actor.sid

fn · línea 47

pub fn sid(a: *const Actor) []const u8

Sin ///.

jwt.thumbprint

fn · línea 58

pub fn thumbprint(public_key: [32]u8) [43]u8

Thumbprint RFC 7638 de una clave OKP/Ed25519, en base64url sin padding.

jwt.Verifier

type · línea 70

pub const Verifier = struct

Sin ///.

jwt.Verifier.addKey

fn · línea 77

pub fn addKey(self: *Verifier, raw: [32]u8) error{ WeakPublicKey, TooManyKeys }!void

Sin ///.

jwt.Verifier.verify

fn · línea 84

pub fn verify(self: *const Verifier, token: []const u8, now_s: i64) Error!Actor

Sin ///.

jwt.testing

type · línea 196

pub const testing = struct

Sin ///.

jwt.testing.mint

fn · línea 197

pub fn mint(buf: []u8, kp: Ed25519.KeyPair, claims_json: []const u8, typ: []const u8) ![]const u8

Sin ///.