@fedify/fedify 0.11.0-dev.244 → 0.11.0-dev.245

Sign up to get free protection for your applications and to get access to all the features.
package/CHANGES.md CHANGED
@@ -162,6 +162,10 @@ To be released.
162
162
  - Renamed `InboxListenerSetter` interface to `InboxListenerSetters`.
163
163
  - Added `InboxListenerSetters.setSharedKeyDispatcher()` method.
164
164
 
165
+ - Followed up the [change in `eddsa-jcs-2022` specification][eddsa-jcs-2022]
166
+ for Object Integrity Proofs. [[FEP-8b32], [#54]]
167
+
168
+ [eddsa-jcs-2022]: https://codeberg.org/fediverse/fep/pulls/338
165
169
  [#71]: https://github.com/dahlia/fedify/issues/71
166
170
  [#74]: https://github.com/dahlia/fedify/issues/74
167
171
  [#76]: https://github.com/dahlia/fedify/pull/76
package/esm/sig/proof.js CHANGED
@@ -1,10 +1,10 @@
1
1
  import * as dntShim from "../_dnt.shims.js";
2
+ import { Activity, Multikey } from "../vocab/mod.js";
3
+ import { getLogger } from "@logtape/logtape";
2
4
  // @ts-ignore: json-canon is not typed
3
5
  import serialize from "json-canon";
4
6
  import { DataIntegrityProof } from "../vocab/vocab.js";
5
7
  import { fetchKey, validateCryptoKey } from "./key.js";
6
- import { Activity, Multikey } from "../vocab/mod.js";
7
- import { getLogger } from "@logtape/logtape";
8
8
  const logger = getLogger(["fedify", "sig", "proof"]);
9
9
  /**
10
10
  * Creates a proof for the given object.
@@ -32,13 +32,8 @@ export async function createProof(object, privateKey, keyId, { contextLoader, co
32
32
  const msgDigest = await dntShim.crypto.subtle.digest("SHA-256", msgBytes);
33
33
  created ??= dntShim.Temporal.Now.instant();
34
34
  const proofConfig = {
35
- // The below commented out line is needed according to section 3.3.1 of
36
- // the Data Integrity EdDSA Cryptosuites v1.0 spec, the FEP-8b32 spec does
37
- // not reflect this step; however, the FEP-8b32 spec will be updated to
38
- // be consistent with the Data Integrity EdDSA Cryptosuites v1.0 spec
39
- // some time soon. Before that happens, the below line is commented out.
40
- // See also: https://socialhub.activitypub.rocks/t/fep-8b32-object-integrity-proofs/2725/91?u=hongminhee
41
- // "@context": (compactMsg as any)["@context"],
35
+ // deno-lint-ignore no-explicit-any
36
+ "@context": compactMsg["@context"],
42
37
  type: "DataIntegrityProof",
43
38
  cryptosuite: "eddsa-jcs-2022",
44
39
  verificationMethod: keyId.href,
@@ -98,13 +93,8 @@ export async function verifyProof(jsonLd, proof, options = {}) {
98
93
  return null;
99
94
  const publicKeyPromise = fetchKey(proof.verificationMethodId, Multikey, options);
100
95
  const proofConfig = {
101
- // The below commented out line is needed according to section 3.3.1 of
102
- // the Data Integrity EdDSA Cryptosuites v1.0 spec, the FEP-8b32 spec does
103
- // not reflect this step; however, the FEP-8b32 spec will be updated to
104
- // be consistent with the Data Integrity EdDSA Cryptosuites v1.0 spec
105
- // some time soon. Before that happens, the below line is commented out.
106
- // See also: https://socialhub.activitypub.rocks/t/fep-8b32-object-integrity-proofs/2725/91?u=hongminhee
107
- // "@context": (jsonLd as any)["@context"],
96
+ // deno-lint-ignore no-explicit-any
97
+ "@context": jsonLd["@context"],
108
98
  type: "DataIntegrityProof",
109
99
  cryptosuite: proof.cryptosuite,
110
100
  verificationMethod: proof.verificationMethodId.href,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fedify/fedify",
3
- "version": "0.11.0-dev.244+df5e9468",
3
+ "version": "0.11.0-dev.245+3d6cea3b",
4
4
  "description": "An ActivityPub server framework",
5
5
  "keywords": [
6
6
  "ActivityPub",
@@ -1,8 +1,8 @@
1
1
  /// <reference types="node" />
2
2
  import * as dntShim from "../_dnt.shims.js";
3
+ import { Multikey } from "../vocab/mod.js";
3
4
  import type { DocumentLoader } from "../runtime/docloader.js";
4
5
  import { DataIntegrityProof, type Object } from "../vocab/vocab.js";
5
- import { Multikey } from "../vocab/mod.js";
6
6
  /**
7
7
  * Options for {@link createProof}.
8
8
  * @since 0.10.0
@@ -1 +1 @@
1
- {"version":3,"file":"proof.d.ts","sourceRoot":"","sources":["../../src/sig/proof.ts"],"names":[],"mappings":";AAAA,OAAO,KAAK,OAAO,MAAM,kBAAkB,CAAC;AAG5C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAC9D,OAAO,EAAE,kBAAkB,EAAE,KAAK,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAEpE,OAAO,EAAY,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAKrD;;;GAGG;AACH,MAAM,WAAW,kBAAkB;IACjC;;OAEG;IACH,aAAa,CAAC,EAAE,cAAc,CAAC;IAE/B;;OAEG;IACH,OAAO,CAAC,EACJ,MAAM,GACN,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GACtB,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,EAAE,CAAC;IAExC;;;OAGG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC;CACpC;AAED;;;;;;;;;GASG;AACH,wBAAsB,WAAW,CAC/B,MAAM,EAAE,MAAM,EACd,UAAU,EAAE,OAAO,CAAC,SAAS,EAC7B,KAAK,EAAE,GAAG,EACV,EAAE,aAAa,EAAE,OAAO,EAAE,OAAO,EAAE,GAAE,kBAAuB,GAC3D,OAAO,CAAC,kBAAkB,CAAC,CA2C7B;AAED;;;GAGG;AACH,MAAM,WAAW,iBAAkB,SAAQ,kBAAkB;IAC3D;;OAEG;IACH,cAAc,CAAC,EAAE,cAAc,CAAC;CACjC;AAED;;;;;;;;;GASG;AACH,wBAAsB,UAAU,CAAC,CAAC,SAAS,MAAM,EAC/C,MAAM,EAAE,CAAC,EACT,UAAU,EAAE,OAAO,CAAC,SAAS,EAC7B,KAAK,EAAE,GAAG,EACV,OAAO,GAAE,iBAAsB,GAC9B,OAAO,CAAC,CAAC,CAAC,CAOZ;AAED;;;GAGG;AACH,MAAM,WAAW,kBAAkB;IACjC;;OAEG;IACH,aAAa,CAAC,EAAE,cAAc,CAAC;IAE/B;;OAEG;IACH,cAAc,CAAC,EAAE,cAAc,CAAC;CACjC;AAED;;;;;;;;;GASG;AACH,wBAAsB,WAAW,CAC/B,MAAM,EAAE,OAAO,EACf,KAAK,EAAE,kBAAkB,EACzB,OAAO,GAAE,kBAAuB,GAC/B,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC,CAqE1B;AAED;;;GAGG;AACH,MAAM,WAAW,mBAAoB,SAAQ,kBAAkB;CAC9D;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAsB,YAAY,CAAC,CAAC,SAAS,MAAM,EAEjD,GAAG,EAAE,CAAC,KAAK,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC,GAAG;IACjC,UAAU,CAAC,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;CACvE,EACD,MAAM,EAAE,OAAO,EACf,OAAO,GAAE,mBAAwB,GAChC,OAAO,CAAC,CAAC,GAAG,IAAI,CAAC,CA2BnB"}
1
+ {"version":3,"file":"proof.d.ts","sourceRoot":"","sources":["../../src/sig/proof.ts"],"names":[],"mappings":";AAAA,OAAO,KAAK,OAAO,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAY,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAIrD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAC9D,OAAO,EAAE,kBAAkB,EAAE,KAAK,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAKpE;;;GAGG;AACH,MAAM,WAAW,kBAAkB;IACjC;;OAEG;IACH,aAAa,CAAC,EAAE,cAAc,CAAC;IAE/B;;OAEG;IACH,OAAO,CAAC,EACJ,MAAM,GACN,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GACtB,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,EAAE,CAAC;IAExC;;;OAGG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC;CACpC;AAED;;;;;;;;;GASG;AACH,wBAAsB,WAAW,CAC/B,MAAM,EAAE,MAAM,EACd,UAAU,EAAE,OAAO,CAAC,SAAS,EAC7B,KAAK,EAAE,GAAG,EACV,EAAE,aAAa,EAAE,OAAO,EAAE,OAAO,EAAE,GAAE,kBAAuB,GAC3D,OAAO,CAAC,kBAAkB,CAAC,CAsC7B;AAED;;;GAGG;AACH,MAAM,WAAW,iBAAkB,SAAQ,kBAAkB;IAC3D;;OAEG;IACH,cAAc,CAAC,EAAE,cAAc,CAAC;CACjC;AAED;;;;;;;;;GASG;AACH,wBAAsB,UAAU,CAAC,CAAC,SAAS,MAAM,EAC/C,MAAM,EAAE,CAAC,EACT,UAAU,EAAE,OAAO,CAAC,SAAS,EAC7B,KAAK,EAAE,GAAG,EACV,OAAO,GAAE,iBAAsB,GAC9B,OAAO,CAAC,CAAC,CAAC,CAOZ;AAED;;;GAGG;AACH,MAAM,WAAW,kBAAkB;IACjC;;OAEG;IACH,aAAa,CAAC,EAAE,cAAc,CAAC;IAE/B;;OAEG;IACH,cAAc,CAAC,EAAE,cAAc,CAAC;CACjC;AAED;;;;;;;;;GASG;AACH,wBAAsB,WAAW,CAC/B,MAAM,EAAE,OAAO,EACf,KAAK,EAAE,kBAAkB,EACzB,OAAO,GAAE,kBAAuB,GAC/B,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC,CAgE1B;AAED;;;GAGG;AACH,MAAM,WAAW,mBAAoB,SAAQ,kBAAkB;CAC9D;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAsB,YAAY,CAAC,CAAC,SAAS,MAAM,EAEjD,GAAG,EAAE,CAAC,KAAK,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC,GAAG;IACjC,UAAU,CAAC,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;CACvE,EACD,MAAM,EAAE,OAAO,EACf,OAAO,GAAE,mBAAwB,GAChC,OAAO,CAAC,CAAC,GAAG,IAAI,CAAC,CA2BnB"}