Label 309 · Open source

L'ecosistema Label 309

Un unico standard aperto e una dotazione completa di implementazioni di riferimento. La specifica in formato leggibile dalle macchine, gli SDK per TypeScript, Python e Rust e uno strumento da riga di comando: tutto pubblicato allo scoperto, con Apache-2.0 per il codice e CC-BY-4.0 per la specifica. Usali così come sono, oppure scrivi la tua implementazione: Label 309 è uno standard, e chiunque è libero di realizzarlo.

label-309

Lo standard

Il corpus completo della specifica, in formato leggibile dalle macchine: lo standard in prosa, la grammatica CDDL, i registri degli algoritmi, i JSON Schema e i vettori di conformità su cui viene messa alla prova ogni implementazione.

SDK di riferimento

Lo stesso standard, implementato tre volte: per il browser e Node, per Python e per Rust.

TypeScript

SDK per browser e Node.

Un verificatore autonomo, un client HTTP che prescinde dal gateway e funzioni di supporto per il fetch. Installando l'SDK ti porti dietro anche le primitive crittografiche a catalogo chiuso e la libreria del formato wire su cui poggia, così hai l'intero stack in un'unica dipendenza.

Installazione

$ npm install @cardanowall/sdk-ts

@cardanowall/sdk-ts

Python

SDK per Python.

Un gemello identico, byte per byte, dell'SDK per TypeScript, verificato con gli stessi vettori di test CBOR canonico. Verifica i record, codifica il formato wire e costruisci una prova di esistenza sigillata direttamente da Python.

Installazione

$ pip install cardanowall-sdk

cardanowall-sdk

Rust

SDK per Rust.

Un gemello identico, byte per byte, degli SDK per TypeScript e Python: bloccante e sicuro di default, pensato per applicazioni e servizi nativi. La documentazione completa dell'API è su docs.rs.

Installazione

$ cargo add cardanowall

cardanowall

cardanowall-cli

Riga di comando

Uno strumento da riga di comando che prescinde dal gateway e parte dai seed grezzi, costruito sull'SDK per Rust. Verifica i record, gestisci un'inbox, costruisci e controlla le prove Merkle, firma e invia: tutto dal terminale o da una pipeline di CI.

Installazione

$ cargo install cardanowall-cli

Eseguibile: cardanowall

Prescinde dal gateway, parte dai seed grezzi.

Comandi

  • verify
  • inbox-list
  • inbox-decrypt
  • inbox-sync
  • merkle-verify
  • merkle-build
  • sign
  • submit

Identici, per costruzione

Gli SDK per TypeScript, Python e Rust sono identici byte per byte rispetto agli stessi vettori di test CBOR canonico. Un record codificato da uno è bit per bit lo stesso record codificato dagli altri, così la verifica non dipende mai da quale implementazione lo abbia prodotto.

Costruisci la tua

Label 309 prescinde dall'emittente e si verifica in autonomia: non dipende in nulla da questi strumenti né da un singolo fornitore. La specifica è completa e pubblica, perciò chiunque può scrivere una nuova implementazione, in qualsiasi linguaggio e per qualsiasi piattaforma, e farla dialogare con tutto ciò che è già stato rilasciato. È uno standard, non un prodotto.