Release 0.4.0

datekeys-ts 0.4.0 implements spec v0.15 (tag spec-v0.15 of datekeys-go):
the release object, release archives and a release in hand that the clock
does not stop, besides everything 0.3.0 does.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
main v0.4.0
dev 19 hours ago
parent 7446db6084
commit 76504183d3

@ -2,7 +2,9 @@
Cambios notables de la librería TypeScript y de la página. El proyecto usa versionado semántico; mientras sea 0.x, no hay promesa de estabilidad. La sección «Versiones» del [README](README.md) explica qué cubre cada número.
## 0.4.0 — sin publicar
## 0.4.0 — 7 de octubre de 2026
La especificación 0.15, el tag `spec-v0.15` de `datekeys-go`: la recuperación a largo plazo, con el objeto release, los archivos de releases y el release en la mano. El autor la cerró el 7 de octubre de 2026, con el tag `v0.4.0`.
La especificación 0.15, de la rama `v0.15` de `datekeys-go`: el objeto release, el release en la mano y el paso 9.c.

@ -26,18 +26,17 @@ Hay tres números de versión, cada uno con su significado, como en la referenci
`version.test.ts` comprueba que `VERSION` coincide con `package.json` y con su lockfile, y que `SPEC_VERSION` es la versión que nombran los vectores y fixtures compartidos; `vectors.test.ts` exige esa versión a cada fichero. El pie de la página muestra las dos.
En desarrollo está la `0.4.0` (`0.4.0-dev` en `package.json`): la especificación 0.15, el objeto release y el release en la mano (§47.1, §49, §50, §63 pasos 9.c y 10). Lee el objeto release y el JSON de drand con los textos de Go, busca la ronda en un archivo de releases local y abre con un release en la mano aunque el reloj vaya atrasado; `/inspect` acepta el release pegado o en un fichero. Lo que cambia está en el [CHANGELOG](CHANGELOG.md).
La última versión cerrada es la `0.3.0`, del 6 de octubre de 2026, con el tag `v0.3.0`. Cubre:
- la especificación 0.14 (el tag `spec-v0.14` de `datekeys-go`): lee los formatos de cápsula 1 a 3 y escribe el 3, y el 2 solo como generador de vectores (§62.1, regla 1);
La versión actual es la `0.4.0`, del 7 de octubre de 2026, con el tag `v0.4.0`. Cubre:
- la especificación 0.15 (el tag `spec-v0.15` de `datekeys-go`): lee los formatos de cápsula 1 a 3 y escribe el 3, y el 2 solo como generador de vectores (§62.1, regla 1);
- el objeto release y el release en la mano (§47.1, §49, §50, §63 pasos 9.c y 10): lee el objeto release y el JSON de drand con los textos de Go, busca la ronda en un archivo de releases local y abre con un release en la mano aunque el reloj vaya atrasado; `/inspect` acepta el release pegado o en un fichero;
- la firma de autor de `alg` 1, con las claves `dkauthor1…`, y la de `alg` 2 con certificados, y el sello RFC 3161: las evalúa al abrir con los veredictos de Go y las escribe con los enganches del escritor;
- la llave de palabras, la nota pública y el localizador de `datekeys.capsule`, con su sellado, su sobre y la comprobación de la IP a la que resuelve una dirección, NAT64 incluido;
- solo el scheme de Quicknet (`bls-unchained-g1-rfc9380`), el único que admite §12.1 desde la v0.14: un perfil de otro scheme da `ERR_UNKNOWN_PROFILE`;
- solo el scheme de Quicknet (`bls-unchained-g1-rfc9380`), el único que admite §12.1: un perfil de otro scheme da `ERR_UNKNOWN_PROFILE`;
- la inspección de los pasos 1 a 8 y la apertura de los pasos 9 a 18, desde un `Uint8Array` o un `Blob` y hacia memoria o hacia un stream de salida, y las páginas `/inspect` y `/create`;
- todos los vectores y fixtures compartidos de `datekeys-go` en `39b2033` (`spec-v0.14`), `tlock_steps.json` incluido;
- todos los vectores y fixtures compartidos de `datekeys-go` en `fe50885` (`spec-v0.15`);
- navegadores con Web Crypto y Node 20 o posterior.
La `0.2.0`, del mismo día, con el tag `v0.2.0`, cubría lo mismo para la especificación 0.13. La anterior es `0.1.0`, del 29 de septiembre de 2026, con el tag `v0.1.0`: la especificación 0.9, leer los formatos 1 y 2, y la página `/inspect`.
La `0.3.0`, del 6 de octubre de 2026, con el tag `v0.3.0`, cubría la especificación 0.14 sin el objeto release. La `0.2.0`, del mismo día, con el tag `v0.2.0`, cubría lo mismo para la especificación 0.13. La anterior es `0.1.0`, del 29 de septiembre de 2026, con el tag `v0.1.0`: la especificación 0.9, leer los formatos 1 y 2, y la página `/inspect`.
[CHANGELOG.md](CHANGELOG.md) recoge los cambios de cada versión.

4
package-lock.json generated

@ -1,12 +1,12 @@
{
"name": "datekeys-ts",
"version": "0.4.0-dev",
"version": "0.4.0",
"lockfileVersion": 3,
"requires": true,
"packages": {
"": {
"name": "datekeys-ts",
"version": "0.4.0-dev",
"version": "0.4.0",
"license": "Apache-2.0",
"dependencies": {
"@noble/ciphers": "2.4.0",

@ -1,6 +1,6 @@
{
"name": "datekeys-ts",
"version": "0.4.0-dev",
"version": "0.4.0",
"private": true,
"description": "DateKeys in TypeScript: canonical CBOR codec, DKC1/DKK1 parsers, capsule inspector library and its static inspector page; later, browser encryption and decryption.",
"license": "Apache-2.0",

@ -11,7 +11,7 @@
* implements spec 0.14: one drand scheme and the root of trust byte for byte;
* 0.4.0 implements spec 0.15: the release object and a release in hand.
*/
export const VERSION = '0.4.0-dev';
export const VERSION = '0.4.0';
/**
* The version of the DateKeys Protocol Specification that this library

Loading…
Cancel
Save

Powered by TurnKey Linux.