diff --git a/CHANGELOG.md b/CHANGELOG.md index a257c16..ff984c7 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -7,7 +7,7 @@ Cambios notables de la librería Dart. El proyecto usa versionado semántico; mi ### Etapa 2: primitivas y `age` (05-10-2026) - **Primitivas, de código propio.** Son internas: `lib/datekeys.dart` no las exporta. - - SHA-256 con su compresión, y HMAC-SHA256 con los estados interior y exterior de la clave calculados una vez. Sobre ellos, HKDF-SHA256 (RFC 5869) y PBKDF2-HMAC-SHA256 (RFC 8018), cuyas iteraciones son dos compresiones sobre palabras: 600 000 iteraciones tardan 1 s en la VM, frente a unos 3,5 s con el HMAC de `package:crypto`. + - SHA-256 con su compresión, y HMAC-SHA256 con los estados interior y exterior de la clave calculados una vez. Sobre ellos, HKDF-SHA256 (RFC 5869) y PBKDF2-HMAC-SHA256 (RFC 8018), cuyas iteraciones son dos compresiones sobre palabras: 600 000 iteraciones tardan 1,1 s en la VM, frente a unos 3,5 s con el HMAC de `package:crypto`. - scrypt (RFC 7914) con Salsa20/8, con las comprobaciones y los textos de `scrypt.Key` de Go. - ChaCha20, Poly1305 en diez limbs de 13 bits, y ChaCha20-Poly1305 (RFC 8439), con el tag comparado en tiempo constante. - X25519 (RFC 7748) sobre el cuerpo de TweetNaCl en doubles, con clamping y el secreto todo a ceros rechazado con el texto de `crypto/ecdh`. diff --git a/README.md b/README.md index 9f7b671..1ddf0f1 100644 --- a/README.md +++ b/README.md @@ -66,7 +66,7 @@ Las etapas siguientes traen el resto del protocolo en este orden: | X25519, un acuerdo de claves | 1,2 ms | 0,9 ms | | Ed25519 estricto, una verificación | 4,5 ms | 9,4 ms | | ChaCha20-Poly1305, 1 MiB, cifrar o descifrar | 21 ms | 16 ms | -| PBKDF2-HMAC-SHA256, 600 000 iteraciones (§38.1) | 1,0 s | 0,9 s | +| PBKDF2-HMAC-SHA256, 600 000 iteraciones (§38.1) | 1,1 s | 0,9 s | | scrypt con logN 16 y r 8 (§29.12) | 0,55 s | 0,9 s | En la VM, el HMAC de `package:crypto`, que calcula otra vez los estados de la clave en cada llamada, tarda unos 3,5 s en las mismas 600 000 iteraciones.