Label 309 · Código abierto
El ecosistema de Label 309
Un solo estándar abierto y un conjunto completo de implementaciones de referencia. La especificación legible por máquina, los SDK en TypeScript, Python y Rust y una herramienta de línea de comandos se publican todos en abierto: Apache-2.0 para el código y CC-BY-4.0 para la especificación. Úsalos tal cual o crea tu propia implementación: Label 309 es un estándar y cualquiera tiene libertad para implementarlo.
label-309
El estándar
El corpus completo y legible por máquina de la especificación: el estándar en prosa, la gramática CDDL, los registros de algoritmos, los esquemas JSON y los vectores de conformidad con los que se contrasta cada implementación.
SDK de referencia
El mismo estándar, implementado tres veces: para el navegador y Node, para Python y para Rust.
TypeScript
SDK para el navegador y Node.
Un verificador autónomo, un cliente HTTP que no depende de ninguna pasarela y utilidades de fetch. Al instalar el SDK ya vienen incluidas las primitivas criptográficas de catálogo cerrado y la biblioteca de formato sobre las que se apoya, así que tienes toda la pila con una única dependencia.
Instalar
$ npm install @cardanowall/sdk-ts@cardanowall/sdk-ts
Bloques de más bajo nivel
Python
SDK de Python.
Un gemelo idéntico byte a byte del SDK de TypeScript, contrastado con los mismos vectores de prueba canónico-CBOR. Verifica registros, codifica el formato y crea Pruebas de Existencia selladas desde Python.
Instalar
$ pip install cardanowall-sdkcardanowall-sdk
Rust
SDK de Rust.
Un gemelo idéntico byte a byte de los SDK de TypeScript y Python: bloqueante y seguro por defecto, para aplicaciones y servicios nativos. La documentación completa de la API está publicada en docs.rs.
Instalar
$ cargo add cardanowallcardanowall
cardanowall-cli
Línea de comandos
Una herramienta de línea de comandos que no depende de ninguna pasarela y trabaja directamente con la semilla en bruto, construida sobre el SDK de Rust. Verifica registros, gestiona una bandeja de entrada, crea y comprueba pruebas Merkle, firma y envía, todo desde la terminal o desde tu CI.
Instalar
$ cargo install cardanowall-cliBinario: cardanowall
Sin atarse a ninguna pasarela y directa sobre la semilla en bruto.
Comandos
- verify
- inbox-list
- inbox-decrypt
- inbox-sync
- merkle-verify
- merkle-build
- sign
- submit
Idénticos por diseño
Los SDK de TypeScript, Python y Rust son idénticos byte a byte frente a los mismos vectores de prueba canónico-CBOR. Un registro que codifica uno es, bit a bit, el mismo que codificarían los demás, de modo que la verificación nunca depende de qué implementación lo generó.
Crea la tuya
Label 309 no depende de quién lo emita y se verifica por su cuenta: nada en él depende de estas herramientas ni de ningún proveedor en concreto. La especificación es completa y pública, así que cualquiera puede escribir una implementación nueva, en el lenguaje y para la plataforma que quiera, e interoperar con todo lo que ya existe. Es un estándar, no un producto.