@fedify/fedify 0.11.0-dev.244 → 0.11.0-dev.245
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/CHANGES.md +4 -0
- package/esm/sig/proof.js +6 -16
- package/package.json +1 -1
- package/types/sig/proof.d.ts +1 -1
- package/types/sig/proof.d.ts.map +1 -1
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
|
-
//
|
36
|
-
|
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
|
-
//
|
102
|
-
|
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
package/types/sig/proof.d.ts
CHANGED
@@ -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
|
package/types/sig/proof.d.ts.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"proof.d.ts","sourceRoot":"","sources":["../../src/sig/proof.ts"],"names":[],"mappings":";AAAA,OAAO,KAAK,OAAO,MAAM,kBAAkB,CAAC;
|
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"}
|