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