@sempdev/semp 0.5.2 → 0.5.6

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 (231) hide show
  1. package/dist/brief/address.d.ts +1 -1
  2. package/dist/brief/address.js +1 -1
  3. package/dist/brief/brief.d.ts +1 -1
  4. package/dist/brief/brief.js +1 -1
  5. package/dist/canonical/marshal.d.ts +2 -2
  6. package/dist/canonical/marshal.js +2 -2
  7. package/dist/closure/driver.d.ts +2 -2
  8. package/dist/closure/driver.js +1 -1
  9. package/dist/crypto/aead.d.ts +2 -2
  10. package/dist/crypto/aead.js +2 -2
  11. package/dist/crypto/kdf.d.ts +1 -1
  12. package/dist/crypto/kdf.js +1 -1
  13. package/dist/crypto/mac.d.ts +1 -1
  14. package/dist/crypto/mac.js +1 -1
  15. package/dist/delivery/ack.d.ts +5 -5
  16. package/dist/delivery/ack.js +6 -6
  17. package/dist/delivery/blocklist.d.ts +1 -1
  18. package/dist/delivery/blocklist.js +2 -2
  19. package/dist/delivery/device_sync.d.ts +26 -0
  20. package/dist/delivery/device_sync.d.ts.map +1 -0
  21. package/dist/delivery/device_sync.js +18 -0
  22. package/dist/delivery/device_sync.js.map +1 -0
  23. package/dist/delivery/disposition.d.ts +1 -1
  24. package/dist/delivery/fetch.d.ts +1 -1
  25. package/dist/delivery/fetch.js +1 -1
  26. package/dist/delivery/forwarder.d.ts +9 -1
  27. package/dist/delivery/forwarder.d.ts.map +1 -1
  28. package/dist/delivery/forwarder.js +1 -1
  29. package/dist/delivery/forwarder.js.map +1 -1
  30. package/dist/delivery/inbox.d.ts +2 -2
  31. package/dist/delivery/inbox.js +2 -2
  32. package/dist/delivery/index.d.ts +4 -0
  33. package/dist/delivery/index.d.ts.map +1 -1
  34. package/dist/delivery/index.js +4 -0
  35. package/dist/delivery/index.js.map +1 -1
  36. package/dist/delivery/persistent_silent.d.ts +70 -0
  37. package/dist/delivery/persistent_silent.d.ts.map +1 -0
  38. package/dist/delivery/persistent_silent.js +117 -0
  39. package/dist/delivery/persistent_silent.js.map +1 -0
  40. package/dist/delivery/pipeline.d.ts +4 -4
  41. package/dist/delivery/pipeline.d.ts.map +1 -1
  42. package/dist/delivery/pipeline.js +10 -3
  43. package/dist/delivery/pipeline.js.map +1 -1
  44. package/dist/delivery/policy_state.d.ts +2 -2
  45. package/dist/delivery/policy_state.js +4 -4
  46. package/dist/delivery/receipt.d.ts +3 -3
  47. package/dist/delivery/receipt.js +3 -3
  48. package/dist/delivery/receipt_store.d.ts +1 -1
  49. package/dist/delivery/receipt_store.js +1 -1
  50. package/dist/delivery/retry.d.ts +2 -2
  51. package/dist/delivery/retry.js +2 -2
  52. package/dist/delivery/scheduler.d.ts +1 -1
  53. package/dist/delivery/scheduler.js +1 -1
  54. package/dist/delivery/stage_partition.d.ts +1 -1
  55. package/dist/delivery/stage_partition.js +1 -1
  56. package/dist/delivery/staged_runner.d.ts +1 -1
  57. package/dist/delivery/staged_runner.js +2 -2
  58. package/dist/delivery/status_message.d.ts +75 -0
  59. package/dist/delivery/status_message.d.ts.map +1 -0
  60. package/dist/delivery/status_message.js +109 -0
  61. package/dist/delivery/status_message.js.map +1 -0
  62. package/dist/delivery/upgrade_signal.d.ts +48 -0
  63. package/dist/delivery/upgrade_signal.d.ts.map +1 -0
  64. package/dist/delivery/upgrade_signal.js +48 -0
  65. package/dist/delivery/upgrade_signal.js.map +1 -0
  66. package/dist/discovery/configuration.d.ts +20 -1
  67. package/dist/discovery/configuration.d.ts.map +1 -1
  68. package/dist/discovery/configuration.js.map +1 -1
  69. package/dist/discovery/dns.d.ts +27 -1
  70. package/dist/discovery/dns.d.ts.map +1 -1
  71. package/dist/discovery/dns.js +37 -0
  72. package/dist/discovery/dns.js.map +1 -1
  73. package/dist/discovery/index.d.ts +2 -2
  74. package/dist/discovery/index.d.ts.map +1 -1
  75. package/dist/discovery/index.js +1 -1
  76. package/dist/discovery/index.js.map +1 -1
  77. package/dist/discovery/partition.d.ts +1 -1
  78. package/dist/discovery/partition.js +1 -1
  79. package/dist/discovery/resolver.d.ts +5 -5
  80. package/dist/discovery/resolver.js +5 -5
  81. package/dist/discovery/txt.d.ts +1 -1
  82. package/dist/discovery/txt.js +1 -1
  83. package/dist/enclosure/forwarding.d.ts +1 -1
  84. package/dist/enclosure/forwarding.js +1 -1
  85. package/dist/envelope/buckets.d.ts +2 -2
  86. package/dist/envelope/buckets.js +2 -2
  87. package/dist/envelope/compose.d.ts +2 -2
  88. package/dist/envelope/compose.js +4 -4
  89. package/dist/envelope/encode.d.ts +2 -2
  90. package/dist/envelope/encode.js +3 -3
  91. package/dist/envelope/open_verified.d.ts +1 -1
  92. package/dist/envelope/open_verified.js +1 -1
  93. package/dist/envelope/padding.d.ts +2 -2
  94. package/dist/envelope/padding.js +3 -3
  95. package/dist/envelope/verify.d.ts +1 -1
  96. package/dist/envelope/verify.js +1 -1
  97. package/dist/extensions/index.d.ts +1 -0
  98. package/dist/extensions/index.d.ts.map +1 -1
  99. package/dist/extensions/index.js +1 -0
  100. package/dist/extensions/index.js.map +1 -1
  101. package/dist/extensions/limits.d.ts +2 -2
  102. package/dist/extensions/limits.js +2 -2
  103. package/dist/extensions/validation_failure.d.ts +48 -0
  104. package/dist/extensions/validation_failure.d.ts.map +1 -0
  105. package/dist/extensions/validation_failure.js +25 -0
  106. package/dist/extensions/validation_failure.js.map +1 -0
  107. package/dist/handshake/abort.d.ts +1 -1
  108. package/dist/handshake/abort.js +1 -1
  109. package/dist/handshake/client_state.d.ts +5 -5
  110. package/dist/handshake/client_state.js +5 -5
  111. package/dist/handshake/confirm.d.ts +2 -2
  112. package/dist/handshake/confirm.js +2 -2
  113. package/dist/handshake/driver.d.ts +2 -2
  114. package/dist/handshake/driver.js +1 -1
  115. package/dist/handshake/federation.d.ts +27 -9
  116. package/dist/handshake/federation.d.ts.map +1 -1
  117. package/dist/handshake/federation.js +69 -17
  118. package/dist/handshake/federation.js.map +1 -1
  119. package/dist/handshake/first_contact.d.ts +1 -1
  120. package/dist/handshake/first_contact.js +1 -1
  121. package/dist/handshake/identity.d.ts +1 -1
  122. package/dist/handshake/identity.js +1 -1
  123. package/dist/handshake/index.d.ts +1 -1
  124. package/dist/handshake/index.d.ts.map +1 -1
  125. package/dist/handshake/index.js.map +1 -1
  126. package/dist/handshake/pow.js +1 -1
  127. package/dist/handshake/server_state.d.ts +3 -3
  128. package/dist/handshake/server_state.js +3 -3
  129. package/dist/index.d.ts +1 -1
  130. package/dist/index.js +1 -1
  131. package/dist/keys/compromise.d.ts +2 -2
  132. package/dist/keys/compromise.js +1 -1
  133. package/dist/keys/device_certificate.d.ts +3 -3
  134. package/dist/keys/device_certificate.js +4 -4
  135. package/dist/keys/key_revocation.d.ts +2 -2
  136. package/dist/keys/key_revocation.js +1 -1
  137. package/dist/keys/request.d.ts +17 -3
  138. package/dist/keys/request.d.ts.map +1 -1
  139. package/dist/keys/request.js.map +1 -1
  140. package/dist/keys/sign.d.ts +7 -2
  141. package/dist/keys/sign.d.ts.map +1 -1
  142. package/dist/keys/sign.js +10 -3
  143. package/dist/keys/sign.js.map +1 -1
  144. package/dist/keys/signed.d.ts +3 -3
  145. package/dist/keys/signed.js +3 -3
  146. package/dist/keys/store.js +1 -1
  147. package/dist/largeattachment/crypto.d.ts +1 -1
  148. package/dist/largeattachment/crypto.js +2 -2
  149. package/dist/largeattachment/upload.d.ts +3 -3
  150. package/dist/largeattachment/upload.js +1 -1
  151. package/dist/migration/index.d.ts +1 -1
  152. package/dist/migration/index.d.ts.map +1 -1
  153. package/dist/migration/index.js +1 -1
  154. package/dist/migration/index.js.map +1 -1
  155. package/dist/migration/lockout.d.ts +2 -2
  156. package/dist/migration/lockout.js +2 -2
  157. package/dist/migration/migration.d.ts +6 -4
  158. package/dist/migration/migration.d.ts.map +1 -1
  159. package/dist/migration/migration.js +3 -3
  160. package/dist/migration/migration.js.map +1 -1
  161. package/dist/migration/notice.d.ts +31 -19
  162. package/dist/migration/notice.d.ts.map +1 -1
  163. package/dist/migration/notice.js +37 -71
  164. package/dist/migration/notice.js.map +1 -1
  165. package/dist/migration/orchestrate.d.ts +10 -10
  166. package/dist/migration/orchestrate.d.ts.map +1 -1
  167. package/dist/migration/orchestrate.js +23 -23
  168. package/dist/migration/orchestrate.js.map +1 -1
  169. package/dist/migration/sign.js +9 -9
  170. package/dist/migration/sign.js.map +1 -1
  171. package/dist/migration/types.d.ts +35 -29
  172. package/dist/migration/types.d.ts.map +1 -1
  173. package/dist/migration/types.js +5 -7
  174. package/dist/migration/types.js.map +1 -1
  175. package/dist/recovery/bundle_store.js +1 -1
  176. package/dist/recovery/sign.js +3 -3
  177. package/dist/recovery/types.d.ts +3 -3
  178. package/dist/reputation/abuse_report.d.ts +3 -3
  179. package/dist/reputation/abuse_report.js +2 -2
  180. package/dist/reputation/eligibility.d.ts +44 -0
  181. package/dist/reputation/eligibility.d.ts.map +1 -0
  182. package/dist/reputation/eligibility.js +58 -0
  183. package/dist/reputation/eligibility.js.map +1 -0
  184. package/dist/reputation/evidence.d.ts +47 -0
  185. package/dist/reputation/evidence.d.ts.map +1 -0
  186. package/dist/reputation/evidence.js +117 -0
  187. package/dist/reputation/evidence.js.map +1 -0
  188. package/dist/reputation/gossip_fetch.d.ts +2 -2
  189. package/dist/reputation/gossip_fetch.js +1 -1
  190. package/dist/reputation/index.d.ts +4 -1
  191. package/dist/reputation/index.d.ts.map +1 -1
  192. package/dist/reputation/index.js +4 -1
  193. package/dist/reputation/index.js.map +1 -1
  194. package/dist/reputation/pow.d.ts +1 -1
  195. package/dist/reputation/pow.js +1 -1
  196. package/dist/reputation/references.d.ts +51 -0
  197. package/dist/reputation/references.d.ts.map +1 -0
  198. package/dist/reputation/references.js +95 -0
  199. package/dist/reputation/references.js.map +1 -0
  200. package/dist/reputation/sign.d.ts +1 -1
  201. package/dist/reputation/sign.js +2 -2
  202. package/dist/reputation/types.d.ts +46 -2
  203. package/dist/reputation/types.d.ts.map +1 -1
  204. package/dist/reputation/types.js +14 -0
  205. package/dist/reputation/types.js.map +1 -1
  206. package/dist/reputation/whois.d.ts +1 -1
  207. package/dist/reputation/whois.js +1 -1
  208. package/dist/seal/wrap.d.ts +2 -2
  209. package/dist/seal/wrap.js +4 -4
  210. package/dist/session/dispatcher.d.ts +3 -3
  211. package/dist/session/dispatcher.js +1 -1
  212. package/dist/session/rekey_seal.d.ts +3 -3
  213. package/dist/session/rekey_seal.js +3 -3
  214. package/dist/session/session.d.ts +3 -3
  215. package/dist/session/session.js +3 -3
  216. package/dist/transparency/log.d.ts +1 -1
  217. package/dist/transparency/log.js +2 -2
  218. package/dist/transparency/types.d.ts +2 -2
  219. package/dist/transparency/types.js +1 -1
  220. package/dist/transport/h2.d.ts +33 -12
  221. package/dist/transport/h2.d.ts.map +1 -1
  222. package/dist/transport/h2.js +40 -13
  223. package/dist/transport/h2.js.map +1 -1
  224. package/dist/transport/index.d.ts +1 -1
  225. package/dist/transport/index.d.ts.map +1 -1
  226. package/dist/transport/index.js +1 -1
  227. package/dist/transport/index.js.map +1 -1
  228. package/dist/transport/memory.js +1 -1
  229. package/dist/transport/ws.d.ts +1 -1
  230. package/dist/transport/ws.js +1 -1
  231. package/package.json +1 -1
@@ -2,7 +2,7 @@
2
2
  * Federation handshake (server ↔ server) per HANDSHAKE.md §5.
3
3
  *
4
4
  * Two servers establish a federation session by exchanging four
5
- * messages symmetric in shape to the client handshake but with
5
+ * messages - symmetric in shape to the client handshake but with
6
6
  * domain identity in plaintext on both sides plus a domain-proof
7
7
  * verification step:
8
8
  *
@@ -22,7 +22,7 @@
22
22
  * @module
23
23
  */
24
24
  import { marshal as canonicalMarshal } from "../canonical/index.js";
25
- import { deriveSessionKeysWithResumption, newHKDFSHA512, x25519Agree, x25519PublicKey, } from "../crypto/index.js";
25
+ import { HybridPublicKeySize, deriveSessionKeysWithResumption, hybridDecapsulate, hybridEncapsulate, hybridGenerateKeyPair, newHKDFSHA512, x25519Agree, x25519PublicKey, } from "../crypto/index.js";
26
26
  import { fingerprint, publicKeyFromSeed, sign as ed25519Sign, verify as ed25519Verify, } from "../keys/index.js";
27
27
  import { confirmationHash } from "./confirm.js";
28
28
  import { HandshakeRejectedError } from "./driver.js";
@@ -32,7 +32,7 @@ import { HandshakePrefix, HandshakeVersion, } from "./messages.js";
32
32
  export const FederationMessageType = "SEMP_HANDSHAKE";
33
33
  /**
34
34
  * Permissive verifier that accepts every proof. Tests / single-
35
- * process deployments only production MUST NOT use it.
35
+ * process deployments only - production MUST NOT use it.
36
36
  */
37
37
  export class TrustingDomainVerifier {
38
38
  async verify() {
@@ -42,7 +42,7 @@ export class TrustingDomainVerifier {
42
42
  /**
43
43
  * Decide which of two simultaneously-initiated federation handshakes
44
44
  * proceeds per SESSION.md §2.5.2. Both peers agree on the winner
45
- * without external coordination lexicographic compare provides
45
+ * without external coordination - lexicographic compare provides
46
46
  * exactly this property.
47
47
  *
48
48
  * Returns the winning `session_id` (the one that proceeds).
@@ -54,7 +54,7 @@ export function resolveCollision(idA, idB) {
54
54
  export const acceptAllPolicies = () => null;
55
55
  /**
56
56
  * Stateful federation initiator. Mirror of `semp-go/handshake.Initiator`.
57
- * Single-shot discard after success or error.
57
+ * Single-shot - discard after success or error.
58
58
  */
59
59
  export class FederationInitiator {
60
60
  cfg;
@@ -71,8 +71,9 @@ export class FederationInitiator {
71
71
  resumptionSecret = null;
72
72
  resumeNonce = null;
73
73
  constructor(cfg) {
74
- if (cfg.suite !== "x25519-chacha20-poly1305") {
75
- throw new Error(`handshake: federation initiator only supports baseline suite, got ${cfg.suite}`);
74
+ if (cfg.suite !== "x25519-chacha20-poly1305" &&
75
+ cfg.suite !== "pq-kyber768-x25519") {
76
+ throw new Error(`handshake: federation initiator unknown suite ${JSON.stringify(cfg.suite)}`);
76
77
  }
77
78
  if (cfg.localDomain === "") {
78
79
  throw new Error("handshake: federation initiator empty localDomain");
@@ -101,10 +102,26 @@ export class FederationInitiator {
101
102
  if (this.initCanonical !== null) {
102
103
  throw new Error("handshake: federation initiator init already called");
103
104
  }
104
- if (this.ephPriv === null) {
105
- this.ephPriv = randomBytes(32);
105
+ // Suite branch: baseline generates a 32-byte X25519 ephemeral
106
+ // pub; PQ generates a 1216-byte hybrid (kyberPub || x25519Pub)
107
+ // ephemeral pub. The responder branches symmetrically: baseline
108
+ // ECDH against the responder's X25519 eph pub, PQ hybrid
109
+ // decapsulate against the responder's KEM ciphertext.
110
+ const isPQ = this.cfg.suite === "pq-kyber768-x25519";
111
+ if (isPQ) {
112
+ if (this.cfg.initiatorEphemeralPriv !== undefined) {
113
+ throw new Error("handshake: federation initiator PQ ephemeral pinning not supported");
114
+ }
115
+ const kp = hybridGenerateKeyPair();
116
+ this.ephPriv = kp.secretKey;
117
+ this.ephPub = kp.publicKey;
118
+ }
119
+ else {
120
+ if (this.ephPriv === null) {
121
+ this.ephPriv = randomBytes(32);
122
+ }
123
+ this.ephPub = x25519PublicKey(this.ephPriv);
106
124
  }
107
- this.ephPub = x25519PublicKey(this.ephPriv);
108
125
  if (this.nonce === null) {
109
126
  this.nonce = randomBytes(32);
110
127
  }
@@ -178,7 +195,21 @@ export class FederationInitiator {
178
195
  if (!ed25519Verify(peerDomainPub, innerSig, innerInput)) {
179
196
  throw new Error("handshake: peer inner identity_signature did not verify");
180
197
  }
181
- const shared = x25519Agree(this.ephPriv, serverEphPub);
198
+ // Suite branch: for baseline serverEphPub is a 32-byte X25519
199
+ // pub and we run ECDH; for PQ it's a 1120-byte hybrid KEM
200
+ // ciphertext (kyberCt || responderX25519Pub) and we hybrid-
201
+ // decapsulate against the local hybrid ephemeral private key.
202
+ const isPQ = this.cfg.suite === "pq-kyber768-x25519";
203
+ let shared;
204
+ if (isPQ) {
205
+ if (this.ephPub === null || this.ephPub.length !== HybridPublicKeySize) {
206
+ throw new Error(`handshake: federation PQ ephemeral pub size mismatch (have ${this.ephPub?.length ?? 0}, want ${HybridPublicKeySize})`);
207
+ }
208
+ shared = hybridDecapsulate(serverEphPub, this.ephPriv);
209
+ }
210
+ else {
211
+ shared = x25519Agree(this.ephPriv, serverEphPub);
212
+ }
182
213
  const kdf = newHKDFSHA512();
183
214
  this.sessionKeys = deriveSessionKeysWithResumption(kdf, shared, this.nonce, serverNonce);
184
215
  // Erase ephemeral private once shared secret is in hand.
@@ -374,7 +405,7 @@ export class FederationInitiator {
374
405
  }
375
406
  /**
376
407
  * Stateful federation responder. Mirror of `semp-go/handshake.Responder`.
377
- * Single-shot discard after success or error.
408
+ * Single-shot - discard after success or error.
378
409
  */
379
410
  export class FederationResponder {
380
411
  cfg;
@@ -392,8 +423,9 @@ export class FederationResponder {
392
423
  sessionKeys = null;
393
424
  finalSession = null;
394
425
  constructor(cfg) {
395
- if (cfg.suite !== "x25519-chacha20-poly1305") {
396
- throw new Error(`handshake: federation responder only supports baseline suite, got ${cfg.suite}`);
426
+ if (cfg.suite !== "x25519-chacha20-poly1305" &&
427
+ cfg.suite !== "pq-kyber768-x25519") {
428
+ throw new Error(`handshake: federation responder unknown suite ${JSON.stringify(cfg.suite)}`);
397
429
  }
398
430
  if (cfg.localDomain === "") {
399
431
  throw new Error("handshake: federation responder empty localDomain");
@@ -463,12 +495,32 @@ export class FederationResponder {
463
495
  if (negotiated !== this.cfg.suite) {
464
496
  throw new Error(`handshake: federation negotiated suite ${negotiated} != responder suite ${this.cfg.suite}`);
465
497
  }
466
- this.respEphPriv = this.cfg.responderEphemeralPriv ?? randomBytes(32);
467
- const respEphPub = x25519PublicKey(this.respEphPriv);
498
+ // Suite branch: baseline derives a fresh X25519 keypair and runs
499
+ // ECDH against the initiator's 32-byte X25519 ephemeral pub. PQ
500
+ // hybrid-encapsulates against the initiator's 1216-byte hybrid
501
+ // pub, producing a 1120-byte KEM ciphertext that becomes the
502
+ // wire `server_ephemeral_key.key` and the shared secret. The
503
+ // responder holds no ephemeral private on the PQ path because
504
+ // Encapsulate produces the shared secret directly.
505
+ const isPQ = this.cfg.suite === "pq-kyber768-x25519";
506
+ let respEphPub;
507
+ let shared;
508
+ if (isPQ) {
509
+ if (this.cfg.responderEphemeralPriv !== undefined) {
510
+ throw new Error("handshake: federation responder PQ ephemeral pinning not supported");
511
+ }
512
+ const enc = hybridEncapsulate(clientEphPub);
513
+ respEphPub = enc.ciphertext;
514
+ shared = enc.sharedSecret;
515
+ }
516
+ else {
517
+ this.respEphPriv = this.cfg.responderEphemeralPriv ?? randomBytes(32);
518
+ respEphPub = x25519PublicKey(this.respEphPriv);
519
+ shared = x25519Agree(this.respEphPriv, clientEphPub);
520
+ }
468
521
  const respEphKeyId = fingerprint(respEphPub);
469
522
  this.serverNonce = this.cfg.responderNonce ?? randomBytes(32);
470
523
  this.sessionId = this.cfg.generateSessionId();
471
- const shared = x25519Agree(this.respEphPriv, clientEphPub);
472
524
  const kdf = newHKDFSHA512();
473
525
  this.sessionKeys = deriveSessionKeysWithResumption(kdf, shared, clientNonce, this.serverNonce);
474
526
  // Inner identity proof: sig over eph_pub || server_nonce || client_nonce.
@@ -1 +1 @@
1
- {"version":3,"file":"federation.js","sourceRoot":"","sources":["../../src/handshake/federation.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"federation.js","sourceRoot":"","sources":["../../src/handshake/federation.ts"],"names":[],"mappings":"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"}
@@ -48,7 +48,7 @@ export declare function computeFirstContactPrefix(senderDomain: string, recipien
48
48
  * trailing 32 bytes of the prefix are SHA-256 of the canonical
49
49
  * binding input.
50
50
  *
51
- * Does NOT verify the PoW solution itself pair with
51
+ * Does NOT verify the PoW solution itself - pair with
52
52
  * `verifyChallengeSolution` from {@link "./pow"} for a full check.
53
53
  */
54
54
  export declare function verifyFirstContactBinding(prefix: Uint8Array, senderDomain: string, recipientAddress: string, postmarkId: string): boolean;
@@ -62,7 +62,7 @@ export function computeFirstContactPrefix(senderDomain, recipientAddress, postma
62
62
  * trailing 32 bytes of the prefix are SHA-256 of the canonical
63
63
  * binding input.
64
64
  *
65
- * Does NOT verify the PoW solution itself pair with
65
+ * Does NOT verify the PoW solution itself - pair with
66
66
  * `verifyChallengeSolution` from {@link "./pow"} for a full check.
67
67
  */
68
68
  export function verifyFirstContactBinding(prefix, senderDomain, recipientAddress, postmarkId) {
@@ -2,7 +2,7 @@
2
2
  * Identity-proof composition per HANDSHAKE.md §2.5.
3
3
  *
4
4
  * The client's CONFIRM message carries an encrypted identity-proof
5
- * block a self-contained JSON object proving control of the
5
+ * block - a self-contained JSON object proving control of the
6
6
  * client's long-term identity key, encrypted under the freshly
7
7
  * derived `K_enc_c2s` so a passive observer sees only opaque
8
8
  * ciphertext.
@@ -2,7 +2,7 @@
2
2
  * Identity-proof composition per HANDSHAKE.md §2.5.
3
3
  *
4
4
  * The client's CONFIRM message carries an encrypted identity-proof
5
- * block a self-contained JSON object proving control of the
5
+ * block - a self-contained JSON object proving control of the
6
6
  * client's long-term identity key, encrypted under the freshly
7
7
  * derived `K_enc_c2s` so a passive observer sees only opaque
8
8
  * ciphertext.
@@ -14,7 +14,7 @@ export { type ClientConfig, type ClientSession, type HandshakeSuite, HandshakeRe
14
14
  export { type HandshakeClientConfig, type HandshakeClientSession, HandshakeClient, } from "./client_state.js";
15
15
  export { type HandshakeServerConfig, type HandshakeServerSession, HandshakeServer, HandshakeServerRejectionError, } from "./server_state.js";
16
16
  export { runClientResume, runClientResumeOrFull, } from "./resume_driver.js";
17
- export { type DomainProof, type DomainProofMethod, type DomainVerificationResult, type DomainVerifier, type FederationAcceptance, type FederationAccepted, type FederationConfirm, type FederationEphemeralKey, type FederationInitiatorConfig, type FederationInitiatorSession, type FederationPolicy, type FederationProof, type FederationResponderConfig, type FederationResponderSession, type FederationResponse, type FederationResume, type PolicyAcceptor, type ServerInit, FederationInitiator, FederationMessageType, FederationResponder, TrustingDomainVerifier, acceptAllPolicies, resolveCollision, } from "./federation.js";
17
+ export { type DomainProof, type DomainProofMethod, type DomainVerificationResult, type DomainVerifier, type FederationAcceptance, type FederationAccepted, type FederationConfirm, type FederationEphemeralKey, type FederationInitiatorConfig, type FederationInitiatorSession, type FederationPolicy, type FederationProof, type FederationResponderConfig, type FederationResponderSession, type FederationResponse, type FederationResume, type FederationSuite, type PolicyAcceptor, type ServerInit, FederationInitiator, FederationMessageType, FederationResponder, TrustingDomainVerifier, acceptAllPolicies, resolveCollision, } from "./federation.js";
18
18
  export { type IdentityProofVerdict, type ServerConfig, runServer, } from "./server.js";
19
19
  export { type ComposeIdentityProofInput, type IdentityProofBlock, type OpenIdentityProofInput, IdentityPrefix, composeIdentityProof, openIdentityProof, } from "./identity.js";
20
20
  export { type AcceptedMessage, type BuildAcceptedInput, type BuildConfirmInput, type BuildInitInput, type BuildRejectedInput, type BuildResponseInput, type Capabilities, type ConfirmMessage, type InitMessage, type KeyRef, type Negotiated, type RejectedMessage, type ResponseMessage, type ResumptionTicket, type ServerIdentityProof, HandshakePrefix, HandshakeVersion, buildAccepted, buildConfirm, buildInit, buildRejected, buildResponse, } from "./messages.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/handshake/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAChD,OAAO,EACL,uBAAuB,EACvB,kBAAkB,EAClB,eAAe,EACf,gBAAgB,GACjB,MAAM,UAAU,CAAC;AAClB,OAAO,EACL,2BAA2B,EAC3B,sBAAsB,EACtB,oBAAoB,EACpB,2BAA2B,EAC3B,yBAAyB,EACzB,wBAAwB,EACxB,yBAAyB,GAC1B,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,iBAAiB,EACjB,oBAAoB,EACpB,yBAAyB,EACzB,yBAAyB,EACzB,qBAAqB,GACtB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,qBAAqB,EACrB,oBAAoB,EACpB,kBAAkB,EAClB,kBAAkB,GACnB,MAAM,YAAY,CAAC;AACpB,OAAO,EACL,KAAK,YAAY,EACjB,KAAK,aAAa,EAClB,KAAK,cAAc,EACnB,sBAAsB,EACtB,SAAS,GACV,MAAM,aAAa,CAAC;AACrB,OAAO,EACL,KAAK,qBAAqB,EAC1B,KAAK,sBAAsB,EAC3B,eAAe,GAChB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,KAAK,qBAAqB,EAC1B,KAAK,sBAAsB,EAC3B,eAAe,EACf,6BAA6B,GAC9B,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,eAAe,EACf,qBAAqB,GACtB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,KAAK,WAAW,EAChB,KAAK,iBAAiB,EACtB,KAAK,wBAAwB,EAC7B,KAAK,cAAc,EACnB,KAAK,oBAAoB,EACzB,KAAK,kBAAkB,EACvB,KAAK,iBAAiB,EACtB,KAAK,sBAAsB,EAC3B,KAAK,yBAAyB,EAC9B,KAAK,0BAA0B,EAC/B,KAAK,gBAAgB,EACrB,KAAK,eAAe,EACpB,KAAK,yBAAyB,EAC9B,KAAK,0BAA0B,EAC/B,KAAK,kBAAkB,EACvB,KAAK,gBAAgB,EACrB,KAAK,cAAc,EACnB,KAAK,UAAU,EACf,mBAAmB,EACnB,qBAAqB,EACrB,mBAAmB,EACnB,sBAAsB,EACtB,iBAAiB,EACjB,gBAAgB,GACjB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACL,KAAK,oBAAoB,EACzB,KAAK,YAAY,EACjB,SAAS,GACV,MAAM,aAAa,CAAC;AACrB,OAAO,EACL,KAAK,yBAAyB,EAC9B,KAAK,kBAAkB,EACvB,KAAK,sBAAsB,EAC3B,cAAc,EACd,oBAAoB,EACpB,iBAAiB,GAClB,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,KAAK,eAAe,EACpB,KAAK,kBAAkB,EACvB,KAAK,iBAAiB,EACtB,KAAK,cAAc,EACnB,KAAK,kBAAkB,EACvB,KAAK,kBAAkB,EACvB,KAAK,YAAY,EACjB,KAAK,cAAc,EACnB,KAAK,WAAW,EAChB,KAAK,MAAM,EACX,KAAK,UAAU,EACf,KAAK,eAAe,EACpB,KAAK,eAAe,EACpB,KAAK,gBAAgB,EACrB,KAAK,mBAAmB,EACxB,eAAe,EACf,gBAAgB,EAChB,aAAa,EACb,YAAY,EACZ,SAAS,EACT,aAAa,EACb,aAAa,GACd,MAAM,eAAe,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/handshake/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAChD,OAAO,EACL,uBAAuB,EACvB,kBAAkB,EAClB,eAAe,EACf,gBAAgB,GACjB,MAAM,UAAU,CAAC;AAClB,OAAO,EACL,2BAA2B,EAC3B,sBAAsB,EACtB,oBAAoB,EACpB,2BAA2B,EAC3B,yBAAyB,EACzB,wBAAwB,EACxB,yBAAyB,GAC1B,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,iBAAiB,EACjB,oBAAoB,EACpB,yBAAyB,EACzB,yBAAyB,EACzB,qBAAqB,GACtB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,qBAAqB,EACrB,oBAAoB,EACpB,kBAAkB,EAClB,kBAAkB,GACnB,MAAM,YAAY,CAAC;AACpB,OAAO,EACL,KAAK,YAAY,EACjB,KAAK,aAAa,EAClB,KAAK,cAAc,EACnB,sBAAsB,EACtB,SAAS,GACV,MAAM,aAAa,CAAC;AACrB,OAAO,EACL,KAAK,qBAAqB,EAC1B,KAAK,sBAAsB,EAC3B,eAAe,GAChB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,KAAK,qBAAqB,EAC1B,KAAK,sBAAsB,EAC3B,eAAe,EACf,6BAA6B,GAC9B,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,eAAe,EACf,qBAAqB,GACtB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,KAAK,WAAW,EAChB,KAAK,iBAAiB,EACtB,KAAK,wBAAwB,EAC7B,KAAK,cAAc,EACnB,KAAK,oBAAoB,EACzB,KAAK,kBAAkB,EACvB,KAAK,iBAAiB,EACtB,KAAK,sBAAsB,EAC3B,KAAK,yBAAyB,EAC9B,KAAK,0BAA0B,EAC/B,KAAK,gBAAgB,EACrB,KAAK,eAAe,EACpB,KAAK,yBAAyB,EAC9B,KAAK,0BAA0B,EAC/B,KAAK,kBAAkB,EACvB,KAAK,gBAAgB,EACrB,KAAK,eAAe,EACpB,KAAK,cAAc,EACnB,KAAK,UAAU,EACf,mBAAmB,EACnB,qBAAqB,EACrB,mBAAmB,EACnB,sBAAsB,EACtB,iBAAiB,EACjB,gBAAgB,GACjB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACL,KAAK,oBAAoB,EACzB,KAAK,YAAY,EACjB,SAAS,GACV,MAAM,aAAa,CAAC;AACrB,OAAO,EACL,KAAK,yBAAyB,EAC9B,KAAK,kBAAkB,EACvB,KAAK,sBAAsB,EAC3B,cAAc,EACd,oBAAoB,EACpB,iBAAiB,GAClB,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,KAAK,eAAe,EACpB,KAAK,kBAAkB,EACvB,KAAK,iBAAiB,EACtB,KAAK,cAAc,EACnB,KAAK,kBAAkB,EACvB,KAAK,kBAAkB,EACvB,KAAK,YAAY,EACjB,KAAK,cAAc,EACnB,KAAK,WAAW,EAChB,KAAK,MAAM,EACX,KAAK,UAAU,EACf,KAAK,eAAe,EACpB,KAAK,eAAe,EACpB,KAAK,gBAAgB,EACrB,KAAK,mBAAmB,EACxB,eAAe,EACf,gBAAgB,EAChB,aAAa,EACb,YAAY,EACZ,SAAS,EACT,aAAa,EACb,aAAa,GACd,MAAM,eAAe,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/handshake/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAChD,OAAO,EACL,uBAAuB,EACvB,kBAAkB,EAClB,eAAe,EACf,gBAAgB,GACjB,MAAM,UAAU,CAAC;AAClB,OAAO,EACL,2BAA2B,EAC3B,sBAAsB,EACtB,oBAAoB,EACpB,2BAA2B,EAC3B,yBAAyB,EACzB,wBAAwB,EACxB,yBAAyB,GAC1B,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,iBAAiB,EACjB,oBAAoB,EACpB,yBAAyB,EACzB,yBAAyB,EACzB,qBAAqB,GACtB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,qBAAqB,EACrB,oBAAoB,EACpB,kBAAkB,EAClB,kBAAkB,GACnB,MAAM,YAAY,CAAC;AACpB,OAAO,EAIL,sBAAsB,EACtB,SAAS,GACV,MAAM,aAAa,CAAC;AACrB,OAAO,EAGL,eAAe,GAChB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAGL,eAAe,EACf,6BAA6B,GAC9B,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,eAAe,EACf,qBAAqB,GACtB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAmBL,mBAAmB,EACnB,qBAAqB,EACrB,mBAAmB,EACnB,sBAAsB,EACtB,iBAAiB,EACjB,gBAAgB,GACjB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAGL,SAAS,GACV,MAAM,aAAa,CAAC;AACrB,OAAO,EAIL,cAAc,EACd,oBAAoB,EACpB,iBAAiB,GAClB,MAAM,eAAe,CAAC;AACvB,OAAO,EAgBL,eAAe,EACf,gBAAgB,EAChB,aAAa,EACb,YAAY,EACZ,SAAS,EACT,aAAa,EACb,aAAa,GACd,MAAM,eAAe,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/handshake/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAChD,OAAO,EACL,uBAAuB,EACvB,kBAAkB,EAClB,eAAe,EACf,gBAAgB,GACjB,MAAM,UAAU,CAAC;AAClB,OAAO,EACL,2BAA2B,EAC3B,sBAAsB,EACtB,oBAAoB,EACpB,2BAA2B,EAC3B,yBAAyB,EACzB,wBAAwB,EACxB,yBAAyB,GAC1B,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,iBAAiB,EACjB,oBAAoB,EACpB,yBAAyB,EACzB,yBAAyB,EACzB,qBAAqB,GACtB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,qBAAqB,EACrB,oBAAoB,EACpB,kBAAkB,EAClB,kBAAkB,GACnB,MAAM,YAAY,CAAC;AACpB,OAAO,EAIL,sBAAsB,EACtB,SAAS,GACV,MAAM,aAAa,CAAC;AACrB,OAAO,EAGL,eAAe,GAChB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAGL,eAAe,EACf,6BAA6B,GAC9B,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,eAAe,EACf,qBAAqB,GACtB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAoBL,mBAAmB,EACnB,qBAAqB,EACrB,mBAAmB,EACnB,sBAAsB,EACtB,iBAAiB,EACjB,gBAAgB,GACjB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAGL,SAAS,GACV,MAAM,aAAa,CAAC;AACrB,OAAO,EAIL,cAAc,EACd,oBAAoB,EACpB,iBAAiB,GAClB,MAAM,eAAe,CAAC;AACvB,OAAO,EAgBL,eAAe,EACf,gBAAgB,EAChB,aAAa,EACb,YAAY,EACZ,SAAS,EACT,aAAa,EACb,aAAa,GACd,MAAM,eAAe,CAAC"}
@@ -45,7 +45,7 @@ export function verifyChallengeSolution(prefix, challengeId, nonceB64, claimedHa
45
45
  if (nonceB64 === "") {
46
46
  return new Error("handshake: empty PoW nonce");
47
47
  }
48
- // Nonce must be valid base64 but we accept its bytes as-is in
48
+ // Nonce must be valid base64 - but we accept its bytes as-is in
49
49
  // the preimage (the spec hashes the base64 string, not the
50
50
  // decoded bytes).
51
51
  try {
@@ -3,7 +3,7 @@
3
3
  *
4
4
  * Mirror of `semp-go/handshake.Server`: a state machine the caller
5
5
  * drives over a transport. The class never performs network I/O
6
- * directly the caller moves bytes between this object and the
6
+ * directly - the caller moves bytes between this object and the
7
7
  * underlying transport.
8
8
  *
9
9
  * Lifecycle:
@@ -77,7 +77,7 @@ export declare class HandshakeServerRejectionError extends Error {
77
77
  }
78
78
  /**
79
79
  * Stateful handshake server. One instance handles exactly one
80
- * handshake discard after success or error. Re-using an instance
80
+ * handshake - discard after success or error. Re-using an instance
81
81
  * is a programming error (the state machine is single-shot).
82
82
  */
83
83
  export declare class HandshakeServer {
@@ -96,7 +96,7 @@ export declare class HandshakeServer {
96
96
  /**
97
97
  * Process the client's INIT and produce signed RESPONSE bytes per
98
98
  * §2.2 / §2.3. Throws {@link HandshakeServerRejectionError} on
99
- * suite mismatch the rejection bytes are accessible on the
99
+ * suite mismatch - the rejection bytes are accessible on the
100
100
  * thrown error for the caller to transmit before closing the
101
101
  * transport.
102
102
  */
@@ -3,7 +3,7 @@
3
3
  *
4
4
  * Mirror of `semp-go/handshake.Server`: a state machine the caller
5
5
  * drives over a transport. The class never performs network I/O
6
- * directly the caller moves bytes between this object and the
6
+ * directly - the caller moves bytes between this object and the
7
7
  * underlying transport.
8
8
  *
9
9
  * Lifecycle:
@@ -55,7 +55,7 @@ export class HandshakeServerRejectionError extends Error {
55
55
  }
56
56
  /**
57
57
  * Stateful handshake server. One instance handles exactly one
58
- * handshake discard after success or error. Re-using an instance
58
+ * handshake - discard after success or error. Re-using an instance
59
59
  * is a programming error (the state machine is single-shot).
60
60
  */
61
61
  export class HandshakeServer {
@@ -88,7 +88,7 @@ export class HandshakeServer {
88
88
  /**
89
89
  * Process the client's INIT and produce signed RESPONSE bytes per
90
90
  * §2.2 / §2.3. Throws {@link HandshakeServerRejectionError} on
91
- * suite mismatch the rejection bytes are accessible on the
91
+ * suite mismatch - the rejection bytes are accessible on the
92
92
  * thrown error for the caller to transmit before closing the
93
93
  * transport.
94
94
  */
package/dist/index.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * SEMP: Sealed Envelope Messaging Protocol TypeScript implementation.
2
+ * SEMP: Sealed Envelope Messaging Protocol - TypeScript implementation.
3
3
  *
4
4
  * @see {@link https://github.com/semp-dev/semp-spec}
5
5
  *
package/dist/index.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * SEMP: Sealed Envelope Messaging Protocol TypeScript implementation.
2
+ * SEMP: Sealed Envelope Messaging Protocol - TypeScript implementation.
3
3
  *
4
4
  * @see {@link https://github.com/semp-dev/semp-spec}
5
5
  *
@@ -3,7 +3,7 @@
3
3
  *
4
4
  * Revoking a device with reason `key_compromise` MUST be done in
5
5
  * the same transaction as rotating to a new identity key plus a new
6
- * encryption key the compromised device held the shared identity
6
+ * encryption key - the compromised device held the shared identity
7
7
  * private key, so the adversary holds it too. A partial cascade
8
8
  * (device revoked but identity key not rotated) leaves the account
9
9
  * vulnerable and is a specification violation.
@@ -61,7 +61,7 @@ export interface CompromiseRotationInput {
61
61
  userId: string;
62
62
  /** Device being revoked. */
63
63
  compromisedDeviceId: string;
64
- /** Device producing the cascade recorded as `revoked_by_device_id`. */
64
+ /** Device producing the cascade - recorded as `revoked_by_device_id`. */
65
65
  revokingDeviceId: string;
66
66
  /** 32-byte Ed25519 seed for the prior identity key. */
67
67
  priorIdentitySeed: Uint8Array;
@@ -3,7 +3,7 @@
3
3
  *
4
4
  * Revoking a device with reason `key_compromise` MUST be done in
5
5
  * the same transaction as rotating to a new identity key plus a new
6
- * encryption key the compromised device held the shared identity
6
+ * encryption key - the compromised device held the shared identity
7
7
  * private key, so the adversary holds it too. A partial cascade
8
8
  * (device revoked but identity key not rotated) leaves the account
9
9
  * vulnerable and is a specification violation.
@@ -115,7 +115,7 @@ export interface SignDeviceCertificateResult {
115
115
  * Compute the issuer's signature over the canonical certificate
116
116
  * bytes, then return a copy with `signature.{algorithm,key_id,value}`
117
117
  * populated. Pre-populates the algorithm + key_id BEFORE
118
- * canonicalization so the canonical bytes cover both an attacker
118
+ * canonicalization so the canonical bytes cover both - an attacker
119
119
  * cannot downgrade the signing algorithm or forge a different
120
120
  * issuer fingerprint.
121
121
  */
@@ -124,7 +124,7 @@ export declare function signDeviceCertificate(input: SignDeviceCertificateInput)
124
124
  * Ed25519-verify a certificate's signature under `issuerPub`. Returns
125
125
  * true when the signature verifies. Does NOT cross-check that the
126
126
  * issuer is currently a registered, non-revoked full-access device
127
- * for the account that requires a key directory store and is the
127
+ * for the account - that requires a key directory store and is the
128
128
  * caller's responsibility.
129
129
  */
130
130
  export declare function verifyDeviceCertificate(certificate: DeviceCertificate, issuerPub: Uint8Array): boolean;
@@ -153,7 +153,7 @@ export interface AddressIdentity {
153
153
  }
154
154
  /**
155
155
  * Report whether `matcher` permits sending to `recipient` per
156
- * §10.3.3.1. Does NOT evaluate rate limits the caller applies
156
+ * §10.3.3.1. Does NOT evaluate rate limits - the caller applies
157
157
  * rate-limit tiers separately per §10.3.4.
158
158
  */
159
159
  export declare function scopeAllowsRecipient(matcher: ScopeMatcher, recipient: AddressIdentity): boolean;
@@ -39,7 +39,7 @@ export const MaxDeviceCertificateLifetimeMs = 365 * 24 * 3600 * 1000;
39
39
  * Compute the issuer's signature over the canonical certificate
40
40
  * bytes, then return a copy with `signature.{algorithm,key_id,value}`
41
41
  * populated. Pre-populates the algorithm + key_id BEFORE
42
- * canonicalization so the canonical bytes cover both an attacker
42
+ * canonicalization so the canonical bytes cover both - an attacker
43
43
  * cannot downgrade the signing algorithm or forge a different
44
44
  * issuer fingerprint.
45
45
  */
@@ -71,7 +71,7 @@ export function signDeviceCertificate(input) {
71
71
  * Ed25519-verify a certificate's signature under `issuerPub`. Returns
72
72
  * true when the signature verifies. Does NOT cross-check that the
73
73
  * issuer is currently a registered, non-revoked full-access device
74
- * for the account that requires a key directory store and is the
74
+ * for the account - that requires a key directory store and is the
75
75
  * caller's responsibility.
76
76
  */
77
77
  export function verifyDeviceCertificate(certificate, issuerPub) {
@@ -259,7 +259,7 @@ function validateRateLimits(tiers, path) {
259
259
  }
260
260
  /**
261
261
  * Report whether `matcher` permits sending to `recipient` per
262
- * §10.3.3.1. Does NOT evaluate rate limits the caller applies
262
+ * §10.3.3.1. Does NOT evaluate rate limits - the caller applies
263
263
  * rate-limit tiers separately per §10.3.4.
264
264
  */
265
265
  export function scopeAllowsRecipient(matcher, recipient) {
@@ -273,7 +273,7 @@ export function scopeAllowsRecipient(matcher, recipient) {
273
273
  case "denylist":
274
274
  return !matchAny(matcher.deny ?? [], recipient);
275
275
  default:
276
- // Unknown mode fail closed.
276
+ // Unknown mode - fail closed.
277
277
  return false;
278
278
  }
279
279
  }
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * Per-key revocation primitives per KEY.md §8.
3
3
  *
4
- * The published wire shape is `SEMP_KEY_REVOCATION` a list of
4
+ * The published wire shape is `SEMP_KEY_REVOCATION` - a list of
5
5
  * revoked keys signed by the publishing party (a domain or a user).
6
6
  * The signature uses the `SEMP-REVOCATION:` domain-separation
7
7
  * prefix per ENVELOPE.md §4.3.
@@ -23,7 +23,7 @@ export interface PublicationSignature {
23
23
  value: string;
24
24
  }
25
25
  /**
26
- * Per-key revocation record per §8.4 embedded in a key response
26
+ * Per-key revocation record per §8.4 - embedded in a key response
27
27
  * or in a {@link RevocationPublication}.
28
28
  */
29
29
  export interface Revocation {
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * Per-key revocation primitives per KEY.md §8.
3
3
  *
4
- * The published wire shape is `SEMP_KEY_REVOCATION` a list of
4
+ * The published wire shape is `SEMP_KEY_REVOCATION` - a list of
5
5
  * revoked keys signed by the publishing party (a domain or a user).
6
6
  * The signature uses the `SEMP-REVOCATION:` domain-separation
7
7
  * prefix per ENVELOPE.md §4.3.
@@ -15,8 +15,22 @@ export declare const KeysRequestType = "SEMP_KEYS";
15
15
  export declare const KeysRequestVersion = "1.0.0";
16
16
  /** Step discriminator for SEMP_KEYS messages. */
17
17
  export type KeysRequestStep = "request" | "response";
18
- /** Per-address lookup status per CLIENT.md §5.4.5. */
19
- export type KeysResultStatus = "found" | "not_found" | "error";
18
+ /**
19
+ * Per-address lookup status per draft-gokce-semp-client §6.4. The
20
+ * set mirrors the submission-time status vocabulary so the client
21
+ * can share dispatch logic between key fetch and submission.
22
+ *
23
+ * - "found": the home server returned a current key set.
24
+ * - "not_found": the address is registered with the home server
25
+ * but has no current published key.
26
+ * - "legacy_required": the address belongs to a domain that does
27
+ * not run SEMP; client SHOULD fall back to legacy interop.
28
+ * - "recipient_not_found": no record of the address at the home
29
+ * server.
30
+ * - "error": the lookup failed for a transient or unspecified
31
+ * reason. `error_reason` carries the diagnostic.
32
+ */
33
+ export type KeysResultStatus = "found" | "not_found" | "legacy_required" | "recipient_not_found" | "error";
20
34
  /** A single key record per KEY.md §3 / §10.6. */
21
35
  export interface KeyRecord {
22
36
  algorithm: string;
@@ -53,7 +67,7 @@ export interface KeysRequest {
53
67
  type: typeof KeysRequestType;
54
68
  step: "request";
55
69
  version: string;
56
- /** ULID for the request used to correlate the response. */
70
+ /** ULID for the request - used to correlate the response. */
57
71
  id: string;
58
72
  /** ISO 8601 UTC. */
59
73
  timestamp: string;
@@ -1 +1 @@
1
- {"version":3,"file":"request.d.ts","sourceRoot":"","sources":["../../src/keys/request.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"request.d.ts","sourceRoot":"","sources":["../../src/keys/request.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"request.js","sourceRoot":"","sources":["../../src/keys/request.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"request.js","sourceRoot":"","sources":["../../src/keys/request.ts"],"names":[],"mappings":"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"}