kxco-post-quantum 1.1.2 → 1.1.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/CHANGELOG.md +39 -28
  2. package/package.json +2 -2
package/CHANGELOG.md CHANGED
@@ -1,5 +1,16 @@
1
1
  # Changelog
2
2
 
3
+ ## 1.1.4 — 2026-05-24
4
+
5
+ Maintenance release. No breaking changes.
6
+
7
+
8
+
9
+ ## 1.1.3 — 2026-05-23
10
+
11
+ Maintenance release. No breaking changes.
12
+
13
+
3
14
  All notable changes to this project will be documented in this file.
4
15
 
5
16
  The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
@@ -7,21 +18,21 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
7
18
 
8
19
  ## [Unreleased]
9
20
 
10
- ## [1.1.2] — 2026-05-22
21
+ ## [1.1.2] — 2026-05-22
11
22
 
12
23
  Documentation correction. No code changes; no behaviour changes; no
13
24
  cryptographic surface changes vs `1.1.1`.
14
25
 
15
26
  ### Fixed
16
- - **AUDIT.md** §1 previously cited a 2024 Cure53 audit of
17
- `@noble/post-quantum`. That citation was incorrect — Cure53's 2023
27
+ - **AUDIT.md** §1 previously cited a 2024 Cure53 audit of
28
+ `@noble/post-quantum`. That citation was incorrect — Cure53's 2023
18
29
  NDS-01 audit covered `@noble/ciphers`, `@noble/curves`, and
19
30
  `@noble/hashes` only; the post-quantum package was not in scope. As of
20
31
  2026-05-22, upstream `@noble/post-quantum` has only been self-audited
21
- by its maintainer (v0.6.1, April 2026). AUDIT.md §1 has been rewritten
32
+ by its maintainer (v0.6.1, April 2026). AUDIT.md §1 has been rewritten
22
33
  to reflect the actual upstream audit posture. A correction notice is
23
34
  included at the top of the file. Reviewers who relied on the prior
24
- citation should re-read §1 of AUDIT.md.
35
+ citation should re-read §1 of AUDIT.md.
25
36
  - **CHANGELOG.md** 1.0.0 entry similarly stated "audited by Cure53,
26
37
  2024" alongside the upstream pin. That sentence has been corrected
27
38
  in-place in this release; the substance of the 1.0.0 release is
@@ -34,7 +45,7 @@ fix is a documentation rewrite; affected installs upgrade by pulling
34
45
  1.1.2. If your due-diligence pack referenced AUDIT.md from 1.0.1
35
46
  through 1.1.1, please refresh against 1.1.2.
36
47
 
37
- ## [1.1.1] — 2026-05-21
48
+ ## [1.1.1] — 2026-05-21
38
49
 
39
50
  Operational hardening release. No source-code changes; this is the first
40
51
  release published via **npm Trusted Publishing** rather than a long-lived
@@ -46,7 +57,7 @@ release published via **npm Trusted Publishing** rather than a long-lived
46
57
  workflow's `id-token: write` permission is the entire credential.
47
58
  Registered at https://www.npmjs.com/package/kxco-post-quantum/access
48
59
  binding `org=JackKXCO`, `repo=kxco-post-quantum`, `workflow=publish.yml`.
49
- - Repo-level `NPM_TOKEN` and `NPM_OTP` secrets removed — no long-lived
60
+ - Repo-level `NPM_TOKEN` and `NPM_OTP` secrets removed — no long-lived
50
61
  credentials remain in the publishing path.
51
62
 
52
63
  ### Why this matters
@@ -55,18 +66,18 @@ release published via **npm Trusted Publishing** rather than a long-lived
55
66
  - No more burning recovery codes per release. The publish workflow now
56
67
  runs hands-free on every `v*` tag push.
57
68
 
58
- ## [1.1.0] — 2026-05-21
69
+ ## [1.1.0] — 2026-05-21
59
70
 
60
71
  Same API. Same byte-for-byte outputs (all 29 pinned vectors still match).
61
72
  The package now runs in **browsers** as well as Node.
62
73
 
63
74
  ### Added
64
- - Isomorphic runtime — every module works identically in modern browsers
75
+ - Isomorphic runtime — every module works identically in modern browsers
65
76
  (Chromium, Firefox, Safari) and Node, served from CDNs like esm.sh
66
77
  with zero polyfill burden
67
78
  - `test/browser-smoke.test.js` runs the public API with `globalThis.Buffer`
68
79
  removed, asserts plain `Uint8Array` outputs and a clean hybrid-signing
69
- round trip — proves browser compatibility in CI
80
+ round trip — proves browser compatibility in CI
70
81
 
71
82
  ### Changed
72
83
  - HKDF-SHA-512 now sourced from `@noble/hashes/hkdf` (was `node:crypto`)
@@ -74,7 +85,7 @@ The package now runs in **browsers** as well as Node.
74
85
  - SHA-256 for kid fingerprints now sourced from `@noble/hashes/sha256`
75
86
  (was `node:crypto`)
76
87
  - Constant-time comparisons are portable byte loops (replaces
77
- `node:crypto.timingSafeEqual`) — identical security property,
88
+ `node:crypto.timingSafeEqual`) — identical security property,
78
89
  runs in browsers
79
90
  - Functions return `Buffer` on Node (when `globalThis.Buffer` is defined)
80
91
  and plain `Uint8Array` in browsers. **Backwards compatible** for Node
@@ -90,32 +101,32 @@ The package now runs in **browsers** as well as Node.
90
101
  ### Verification
91
102
  - 9 node tests pass
92
103
  - 6 browser-smoke tests pass
93
- - 29 pinned vectors still match — no cryptographic surface changes,
104
+ - 29 pinned vectors still match — no cryptographic surface changes,
94
105
  bit-for-bit identical to 1.0.3 in Node
95
106
 
96
- ## [1.0.3] — 2026-05-21
107
+ ## [1.0.3] — 2026-05-21
97
108
 
98
109
  First release ships with SLSA Level 2 provenance attestation tied to a
99
110
  public GitHub Actions workflow run. No cryptographic surface changes
100
- vs `1.0.2` — every diff is metadata, types, CI, and hygiene.
111
+ vs `1.0.2` — every diff is metadata, types, CI, and hygiene.
101
112
 
102
113
  ### Added
103
114
  - SLSA Level 2 provenance on every published release via GitHub Actions OIDC
104
115
  (`publishConfig.provenance: true`)
105
- - `.github/workflows/publish.yml` triggered by `v*` tags — runs tests then
116
+ - `.github/workflows/publish.yml` triggered by `v*` tags — runs tests then
106
117
  `npm publish --provenance --access public`
107
118
  - `.github/workflows/ci.yml` matrix over Node 18 / 20 / 22 on every push and PR
108
119
  - Hand-written TypeScript declarations (`.d.ts`) for all six modules; wired
109
120
  into `exports[*].types` so TypeScript consumers get full typings without
110
121
  any build step
111
- - `.github/dependabot.yml` — weekly npm + github-actions ecosystem checks
122
+ - `.github/dependabot.yml` — weekly npm + github-actions ecosystem checks
112
123
  - `sideEffects: false` for tree-shaking
113
124
  - `funding` field in `package.json`
114
125
  - Top-level `"types"` field in `package.json` pointing at `./src/index.d.ts`
115
126
 
116
127
  ### Changed
117
128
  - `package.json` `files` allowlist tightened to `["src", "README.md", "LICENSE",
118
- "SECURITY.md", "CHANGELOG.md"]` — locks down what ships to npm
129
+ "SECURITY.md", "CHANGELOG.md"]` — locks down what ships to npm
119
130
  - `package.json` `exports` now declares per-subpath `types` + `import` keys
120
131
  - `SECURITY.md` rewritten in the standard short-form template with explicit
121
132
  in-scope / out-of-scope split delegating primitive bugs upstream to
@@ -126,24 +137,24 @@ vs `1.0.2` — every diff is metadata, types, CI, and hygiene.
126
137
  and a 60-second live-verify quickstart added under the title
127
138
 
128
139
  ### Security
129
- - No cryptographic code changed in this release — every change is metadata,
140
+ - No cryptographic code changed in this release — every change is metadata,
130
141
  types, CI, and documentation. Production behaviour is bit-for-bit identical
131
142
  to `1.0.2`.
132
143
 
133
- ## [1.0.2] — 2026-05-21
144
+ ## [1.0.2] — 2026-05-21
134
145
 
135
146
  ### Changed
136
147
  - Repository URL on the npm package metadata now points to
137
148
  `github.com/JackKXCO/kxco-post-quantum`. No code change.
138
149
 
139
- ## [1.0.1] — 2026-05-21
150
+ ## [1.0.1] — 2026-05-21
140
151
 
141
152
  ### Added
142
- - `AUDIT.md` — self-attested audit posture with roadmap (external audit
153
+ - `AUDIT.md` — self-attested audit posture with roadmap (external audit
143
154
  Q3 2026, public bug bounty Q4 2026, FIPS 140-3 CMVP application 2027)
144
- - `test/vectors.json` — 29 deterministic test vectors pinning every primitive
155
+ - `test/vectors.json` — 29 deterministic test vectors pinning every primitive
145
156
  output bit-for-bit
146
- - `test/run-vectors.js` — runner anyone can use to verify reproducibility
157
+ - `test/run-vectors.js` — runner anyone can use to verify reproducibility
147
158
  - `npm test` runs both the functional tests and vector verification
148
159
  - `npm run test:vectors` for vector check only
149
160
 
@@ -154,12 +165,12 @@ vs `1.0.2` — every diff is metadata, types, CI, and hygiene.
154
165
 
155
166
  No API changes from `1.0.0`.
156
167
 
157
- ## [1.0.0] — 2026-05-21
168
+ ## [1.0.0] — 2026-05-21
158
169
 
159
170
  First stable release. Committed public API surface:
160
171
 
161
- - `mlDsa.keypairFromMaster(master, info?)`, `mlDsa.sign`, `mlDsa.verify`
162
- - `mlKem.keypairFromMaster(master, info?)`, `mlKem.encapsulate`, `mlKem.decapsulate`
172
+ - `mlDsa.keypairFromMaster(master, info—)`, `mlDsa.sign`, `mlDsa.verify`
173
+ - `mlKem.keypairFromMaster(master, info—)`, `mlKem.encapsulate`, `mlKem.decapsulate`
163
174
  - `deriveSeed(master, info, length)`
164
175
  - `fingerprint(publicKey)`, `kidEquals(a, b)`
165
176
  - `webhook.envelope`, `webhook.hmacHex`, `webhook.verifyHmac`,
@@ -172,7 +183,7 @@ Underlying primitives via `@noble/post-quantum@^0.2.1`. See `AUDIT.md` for
172
183
  upstream audit posture (no third-party audit of the PQ package; self-audited
173
184
  by maintainer at v0.6.1, April 2026). ESM-only. Node.js 18+.
174
185
 
175
- ## [0.1.0] — 2026-05-21
186
+ ## [0.1.0] — 2026-05-21
176
187
 
177
188
  Initial pre-release.
178
189
 
@@ -184,4 +195,4 @@ Initial pre-release.
184
195
  [1.0.2]: https://github.com/JackKXCO/kxco-post-quantum/compare/v1.0.1...v1.0.2
185
196
  [1.0.1]: https://github.com/JackKXCO/kxco-post-quantum/compare/v1.0.0...v1.0.1
186
197
  [1.0.0]: https://github.com/JackKXCO/kxco-post-quantum/compare/v0.1.0...v1.0.0
187
- [0.1.0]: https://github.com/JackKXCO/kxco-post-quantum/releases/tag/v0.1.0
198
+ [0.1.0]: https://github.com/JackKXCO/kxco-post-quantum/releases/tag/v0.1.0
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "kxco-post-quantum",
3
- "version": "1.1.2",
3
+ "version": "1.1.4",
4
4
  "description": "Production-tested post-quantum cryptography patterns: deterministic key derivation, hybrid webhook signing, and kid fingerprinting. Built on @noble/post-quantum. Used in production at KXCO.",
5
5
  "keywords": [
6
6
  "post-quantum",
@@ -81,4 +81,4 @@
81
81
  "provenance": true,
82
82
  "access": "public"
83
83
  }
84
- }
84
+ }