keri 0.0.0-dev.4c81efa → 0.0.0-dev.5a98abf
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/LICENSE +201 -0
- package/README.md +3 -0
- package/dist/cesr/__main__.d.ts +9 -0
- package/dist/cesr/__main__.js +10 -0
- package/dist/cesr/__main__.js.map +1 -0
- package/dist/cesr/array-utils.d.ts +3 -0
- package/dist/cesr/array-utils.js +29 -0
- package/dist/cesr/array-utils.js.map +1 -0
- package/dist/cesr/attachments-reader.d.ts +10 -0
- package/dist/cesr/attachments-reader.js +281 -0
- package/dist/cesr/attachments-reader.js.map +1 -0
- package/dist/cesr/attachments.d.ts +66 -0
- package/dist/cesr/attachments.js +108 -0
- package/dist/cesr/attachments.js.map +1 -0
- package/dist/cesr/codes.d.ts +1208 -0
- package/dist/cesr/codes.js +309 -0
- package/dist/cesr/codes.js.map +1 -0
- package/dist/cesr/counter.d.ts +114 -0
- package/dist/cesr/counter.js +78 -0
- package/dist/cesr/counter.js.map +1 -0
- package/dist/cesr/frame.d.ts +31 -0
- package/dist/cesr/frame.js +99 -0
- package/dist/cesr/frame.js.map +1 -0
- package/dist/cesr/genus.d.ts +18 -0
- package/dist/cesr/genus.js +57 -0
- package/dist/cesr/genus.js.map +1 -0
- package/dist/cesr/groups/generic-map.d.ts +11 -0
- package/dist/cesr/groups/generic-map.js +51 -0
- package/dist/cesr/groups/generic-map.js.map +1 -0
- package/dist/cesr/indexer.d.ts +68 -0
- package/dist/cesr/indexer.js +171 -0
- package/dist/cesr/indexer.js.map +1 -0
- package/dist/cesr/matter.d.ts +160 -0
- package/dist/cesr/matter.js +301 -0
- package/dist/cesr/matter.js.map +1 -0
- package/dist/cesr/message.d.ts +17 -0
- package/dist/cesr/message.js +81 -0
- package/dist/cesr/message.js.map +1 -0
- package/dist/cesr/parse.d.ts +37 -0
- package/dist/cesr/parse.js +138 -0
- package/dist/cesr/parse.js.map +1 -0
- package/dist/cesr/shifting.d.ts +7 -0
- package/dist/cesr/shifting.js +10 -0
- package/dist/cesr/shifting.js.map +1 -0
- package/dist/cesr/version-string.d.ts +35 -0
- package/dist/cesr/version-string.js +146 -0
- package/dist/cesr/version-string.js.map +1 -0
- package/dist/cli/cli.d.ts +5 -0
- package/dist/cli/cli.js +73 -0
- package/dist/cli/cli.js.map +1 -0
- package/dist/cli/input.d.ts +1 -0
- package/dist/cli/input.js +22 -0
- package/dist/cli/input.js.map +1 -0
- package/dist/cli/node-cli.d.ts +2 -0
- package/dist/cli/node-cli.js +19 -0
- package/dist/cli/node-cli.js.map +1 -0
- package/dist/controller/controller.d.ts +15 -29
- package/dist/controller/controller.js +11 -7
- package/dist/controller/controller.js.map +1 -1
- package/dist/core/credential-event.d.ts +5 -9
- package/dist/core/credential-event.js +1 -1
- package/dist/core/credential-event.js.map +1 -1
- package/dist/core/credential.d.ts +1 -1
- package/dist/core/credential.js +2 -2
- package/dist/core/credential.js.map +1 -1
- package/dist/core/digest.js +3 -3
- package/dist/core/digest.js.map +1 -1
- package/dist/core/endpoint-discovery.d.ts +4 -4
- package/dist/core/endpoint-discovery.js.map +1 -1
- package/dist/core/events.js +2 -2
- package/dist/core/events.js.map +1 -1
- package/dist/core/kawa.d.ts +2 -2
- package/dist/core/kawa.js +7 -37
- package/dist/core/kawa.js.map +1 -1
- package/dist/core/key-event-log.d.ts +12 -6
- package/dist/core/key-event-log.js +13 -11
- package/dist/core/key-event-log.js.map +1 -1
- package/dist/core/key-event.d.ts +7 -9
- package/dist/core/key-event.js +1 -1
- package/dist/core/key-event.js.map +1 -1
- package/dist/core/keys.d.ts +2 -1
- package/dist/core/keys.js +10 -10
- package/dist/core/keys.js.map +1 -1
- package/dist/core/mailbox-client.d.ts +7 -1
- package/dist/core/mailbox-client.js +5 -3
- package/dist/core/mailbox-client.js.map +1 -1
- package/dist/core/main.d.ts +27 -21
- package/dist/core/main.js +14 -12
- package/dist/core/main.js.map +1 -1
- package/dist/core/receipt-event.d.ts +2 -2
- package/dist/core/receipt-event.js +1 -1
- package/dist/core/receipt-event.js.map +1 -1
- package/dist/core/registry-event.d.ts +3 -5
- package/dist/core/registry-event.js +1 -1
- package/dist/core/registry-event.js.map +1 -1
- package/dist/core/routed-event.d.ts +7 -13
- package/dist/core/routed-event.js +1 -1
- package/dist/core/routed-event.js.map +1 -1
- package/dist/core/said.js +9 -6
- package/dist/core/said.js.map +1 -1
- package/dist/core/sign.js +3 -3
- package/dist/core/sign.js.map +1 -1
- package/dist/core/verify.d.ts +11 -2
- package/dist/core/verify.js +30 -11
- package/dist/core/verify.js.map +1 -1
- package/dist/core/witness-client.d.ts +8 -0
- package/dist/core/witness-client.js +39 -0
- package/dist/core/witness-client.js.map +1 -0
- package/dist/encoding/base64.d.ts +4 -0
- package/dist/encoding/base64.js +82 -0
- package/dist/encoding/base64.js.map +1 -0
- package/dist/encoding/main.d.ts +2 -0
- package/dist/encoding/main.js +3 -0
- package/dist/encoding/main.js.map +1 -0
- package/dist/encoding/utf8.d.ts +2 -0
- package/dist/encoding/utf8.js +9 -0
- package/dist/encoding/utf8.js.map +1 -0
- package/dist/main.d.ts +1 -1
- package/dist/main.js +1 -1
- package/dist/main.js.map +1 -1
- package/dist/nodejs-utils/serve.d.ts +5 -0
- package/dist/nodejs-utils/serve.js +77 -0
- package/dist/nodejs-utils/serve.js.map +1 -0
- package/dist/storage/credential-storage.d.ts +8 -0
- package/dist/storage/credential-storage.js +2 -0
- package/dist/storage/credential-storage.js.map +1 -0
- package/dist/storage/key-event-storage.d.ts +10 -0
- package/dist/storage/key-event-storage.js +2 -0
- package/dist/storage/key-event-storage.js.map +1 -0
- package/dist/storage/mailbox-storage.d.ts +4 -0
- package/dist/storage/mailbox-storage.js +2 -0
- package/dist/storage/mailbox-storage.js.map +1 -0
- package/dist/storage/main.d.ts +4 -0
- package/dist/storage/main.js +2 -0
- package/dist/storage/main.js.map +1 -0
- package/dist/storage/private-key-storage.d.ts +5 -0
- package/dist/storage/private-key-storage.js +2 -0
- package/dist/storage/private-key-storage.js.map +1 -0
- package/dist/storage/sqlite/schema.js +25 -19
- package/dist/storage/sqlite/schema.js.map +1 -1
- package/dist/storage/sqlite/storage-sqlite.d.ts +10 -7
- package/dist/storage/sqlite/storage-sqlite.js +10 -8
- package/dist/storage/sqlite/storage-sqlite.js.map +1 -1
- package/dist/witness/main.d.ts +2 -0
- package/dist/witness/main.js +3 -0
- package/dist/witness/main.js.map +1 -0
- package/dist/witness/witness-router.d.ts +2 -0
- package/dist/witness/witness-router.js +103 -0
- package/dist/witness/witness-router.js.map +1 -0
- package/dist/witness/witness.d.ts +24 -0
- package/dist/witness/witness.js +139 -0
- package/dist/witness/witness.js.map +1 -0
- package/package.json +55 -17
package/dist/core/digest.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { blake3 } from "@noble/hashes/blake3.js";
|
|
2
|
-
import {
|
|
2
|
+
import { encodeText, Matter } from "#keri/cesr";
|
|
3
3
|
export function digest(input) {
|
|
4
|
-
const digest =
|
|
5
|
-
return digest
|
|
4
|
+
const digest = Matter.crypto.blake3_256(blake3.create({ dkLen: 32 }).update(new TextEncoder().encode(input)).digest());
|
|
5
|
+
return encodeText(digest);
|
|
6
6
|
}
|
|
7
7
|
//# sourceMappingURL=digest.js.map
|
package/dist/core/digest.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"digest.js","sourceRoot":"","sources":["../../src/core/digest.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAC;AACjD,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"digest.js","sourceRoot":"","sources":["../../src/core/digest.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAC;AACjD,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AAEhD,MAAM,UAAU,MAAM,CAAC,KAAa;IAClC,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,UAAU,CACrC,MAAM,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAC9E,CAAC;IACF,OAAO,UAAU,CAAC,MAAM,CAAC,CAAC;AAC5B,CAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import type { Message } from "cesr";
|
|
2
|
-
import type {
|
|
1
|
+
import type { Message } from "#keri/cesr";
|
|
2
|
+
import type { ReplyEventBody } from "./routed-event.ts";
|
|
3
3
|
export interface EndRoleRecord extends Record<string, unknown> {
|
|
4
4
|
cid: string;
|
|
5
5
|
role: string;
|
|
@@ -16,5 +16,5 @@ export interface Endpoint {
|
|
|
16
16
|
scheme: string;
|
|
17
17
|
role: string;
|
|
18
18
|
}
|
|
19
|
-
export declare function resolveEndRole(replies: Iterable<Message<
|
|
20
|
-
export declare function resolveLocation(replies: Iterable<Message<
|
|
19
|
+
export declare function resolveEndRole(replies: Iterable<Message<ReplyEventBody>>, cid: string, role: string): EndRoleRecord | null;
|
|
20
|
+
export declare function resolveLocation(replies: Iterable<Message<ReplyEventBody>>, eid: string): LocationRecord | null;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"endpoint-discovery.js","sourceRoot":"","sources":["../../src/core/endpoint-discovery.ts"],"names":[],"mappings":"AAsBA,MAAM,UAAU,cAAc,CAC5B,
|
|
1
|
+
{"version":3,"file":"endpoint-discovery.js","sourceRoot":"","sources":["../../src/core/endpoint-discovery.ts"],"names":[],"mappings":"AAsBA,MAAM,UAAU,cAAc,CAC5B,OAA0C,EAC1C,GAAW,EACX,IAAY;IAEZ,6CAA6C;IAC7C,sCAAsC;IACtC,IAAI,QAAQ,GAAyB,IAAI,CAAC;IAE1C,KAAK,MAAM,OAAO,IAAI,OAAO,EAAE,CAAC;QAC9B,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,KAAK,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,KAAK,eAAe,EAAE,CAAC;YACnE,SAAS;QACX,CAAC;QAED,MAAM,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;QAE9B,IACE,OAAO,MAAM,KAAK,QAAQ;YAC1B,MAAM,KAAK,IAAI;YACf,CAAC,CAAC,KAAK,IAAI,MAAM,CAAC;YAClB,OAAO,MAAM,CAAC,GAAG,KAAK,QAAQ;YAC9B,CAAC,CAAC,KAAK,IAAI,MAAM,CAAC;YAClB,OAAO,MAAM,CAAC,GAAG,KAAK,QAAQ;YAC9B,CAAC,CAAC,MAAM,IAAI,MAAM,CAAC;YACnB,OAAO,MAAM,CAAC,IAAI,KAAK,QAAQ,EAC/B,CAAC;YACD,SAAS;QACX,CAAC;QAED,IAAI,MAAM,CAAC,GAAG,KAAK,GAAG,IAAI,MAAM,CAAC,IAAI,KAAK,IAAI,EAAE,CAAC;YAC/C,QAAQ,GAAG;gBACT,GAAG,EAAE,MAAM,CAAC,GAAG;gBACf,IAAI,EAAE,MAAM,CAAC,IAAI;gBACjB,GAAG,EAAE,MAAM,CAAC,GAAG;aAChB,CAAC;QACJ,CAAC;IACH,CAAC;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,OAA0C,EAAE,GAAW;IACrF,6CAA6C;IAC7C,KAAK,MAAM,OAAO,IAAI,OAAO,EAAE,CAAC;QAC9B,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,KAAK,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,KAAK,aAAa,EAAE,CAAC;YACjE,SAAS;QACX,CAAC;QAED,MAAM,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;QAE9B,IACE,OAAO,MAAM,KAAK,QAAQ;YAC1B,MAAM,KAAK,IAAI;YACf,CAAC,CAAC,KAAK,IAAI,MAAM,CAAC;YAClB,OAAO,MAAM,CAAC,GAAG,KAAK,QAAQ;YAC9B,CAAC,CAAC,QAAQ,IAAI,MAAM,CAAC;YACrB,OAAO,MAAM,CAAC,MAAM,KAAK,QAAQ;YACjC,CAAC,CAAC,KAAK,IAAI,MAAM,CAAC;YAClB,OAAO,MAAM,CAAC,GAAG,KAAK,QAAQ,EAC9B,CAAC;YACD,SAAS;QACX,CAAC;QAED,IAAI,CAAC,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;YAC/C,SAAS;QACX,CAAC;QAED,IAAI,MAAM,CAAC,GAAG,KAAK,GAAG,EAAE,CAAC;YACvB,OAAO;gBACL,GAAG,EAAE,MAAM,CAAC,GAAG;gBACf,MAAM,EAAE,MAAM,CAAC,MAAM;gBACrB,GAAG,EAAE,MAAM,CAAC,GAAG;aAChB,CAAC;QACJ,CAAC;IACH,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC"}
|
package/dist/core/events.js
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import { Matter, Message, VersionString } from "cesr";
|
|
1
|
+
import { encodeText, Matter, Message, VersionString } from "#keri/cesr";
|
|
2
2
|
import { saidify } from "./said.js";
|
|
3
3
|
export const DUMMY_VERSION = VersionString.encode({ protocol: "KERI", legacy: true, kind: "JSON" });
|
|
4
4
|
export function formatDate(date) {
|
|
5
5
|
return date.toISOString().replace("Z", "000+00:00");
|
|
6
6
|
}
|
|
7
7
|
export function randomNonce() {
|
|
8
|
-
return Matter.from(Matter.Code.Salt_128, crypto.getRandomValues(new Uint8Array(16)))
|
|
8
|
+
return encodeText(Matter.from(Matter.Code.Salt_128, crypto.getRandomValues(new Uint8Array(16))));
|
|
9
9
|
}
|
|
10
10
|
export function encodeEvent(data, args = {}) {
|
|
11
11
|
const labels = args.labels ?? ["d"];
|
package/dist/core/events.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"events.js","sourceRoot":"","sources":["../../src/core/events.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"events.js","sourceRoot":"","sources":["../../src/core/events.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AACxE,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEpC,MAAM,CAAC,MAAM,aAAa,GAAG,aAAa,CAAC,MAAM,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC;AAEpG,MAAM,UAAU,UAAU,CAAC,IAAU;IACnC,OAAO,IAAI,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC;AACtD,CAAC;AAED,MAAM,UAAU,WAAW;IACzB,OAAO,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,MAAM,CAAC,eAAe,CAAC,IAAI,UAAU,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;AACnG,CAAC;AAQD,MAAM,UAAU,WAAW,CAAoC,IAAO,EAAE,OAAwB,EAAE;IAChG,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,IAAI,CAAC,GAAG,CAAC,CAAC;IACpC,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,IAAI,CAAC,CAAC,KAAK,IAAI,IAAI,CAAC,EAAE,CAAC;YACrB,MAAM,IAAI,KAAK,CAAC,wBAAwB,KAAK,GAAG,CAAC,CAAC;QACpD,CAAC;QAEA,IAAgC,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;IAC5D,CAAC;IAED,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC;QAC1B,CAAC,EAAE,aAAa,CAAC,MAAM,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,IAAI,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,IAAI,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;QACzG,GAAG,IAAI;KACR,CAAC,CAAC;IAEH,MAAM,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;IAC7C,OAAO,MAAM,CAAC;AAChB,CAAC"}
|
package/dist/core/kawa.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Message } from "cesr";
|
|
1
|
+
import { Message } from "#keri/cesr";
|
|
2
2
|
import type { KeyEventBody } from "./key-event.ts";
|
|
3
3
|
export interface WitnessEndpoint {
|
|
4
4
|
aid: string;
|
|
@@ -14,4 +14,4 @@ export interface WitnessEndpoint {
|
|
|
14
14
|
* @param endpoints Pre-resolved endpoints for each witness
|
|
15
15
|
* @returns Indexed witness signatures (wigs)
|
|
16
16
|
*/
|
|
17
|
-
export declare function submitToWitnesses(event: Message<KeyEventBody>, endpoints: WitnessEndpoint[]): Promise<string[]>;
|
|
17
|
+
export declare function submitToWitnesses(event: Message<KeyEventBody>, endpoints: WitnessEndpoint[], fetch?: typeof globalThis.fetch): Promise<string[]>;
|
package/dist/core/kawa.js
CHANGED
|
@@ -1,37 +1,6 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { encodeText, Indexer, Matter, Message } from "#keri/cesr";
|
|
2
2
|
import { MailboxClient } from "./mailbox-client.js";
|
|
3
|
-
import {
|
|
4
|
-
async function receipt(event, witnessUrl) {
|
|
5
|
-
const url = new URL("/receipts", witnessUrl);
|
|
6
|
-
if (url.protocol !== "http:" && url.protocol !== "https:") {
|
|
7
|
-
throw new Error(`Invalid protocol: ${url}`);
|
|
8
|
-
}
|
|
9
|
-
const fetchResponse = await fetch(url, {
|
|
10
|
-
method: "POST",
|
|
11
|
-
body: JSON.stringify(event.body),
|
|
12
|
-
headers: {
|
|
13
|
-
"Content-Type": "application/cesr+json",
|
|
14
|
-
"CESR-ATTACHMENT": event.attachments.text(),
|
|
15
|
-
},
|
|
16
|
-
});
|
|
17
|
-
if (!fetchResponse.ok || !fetchResponse.body) {
|
|
18
|
-
throw new Error(`Failed to submit event to witness: ${fetchResponse.status} ${fetchResponse.statusText}`);
|
|
19
|
-
}
|
|
20
|
-
for await (const incoming of parse(fetchResponse.body)) {
|
|
21
|
-
if (incoming.body.t === "rct" && incoming.body.d === event.body.d) {
|
|
22
|
-
for (const couple of incoming.attachments.NonTransReceiptCouples) {
|
|
23
|
-
const sig = Indexer.convert(Matter.parse(couple.sig), 0).text();
|
|
24
|
-
verifyOrThrow(event.raw, {
|
|
25
|
-
keys: [couple.prefix],
|
|
26
|
-
sigs: [sig],
|
|
27
|
-
threshold: "1",
|
|
28
|
-
});
|
|
29
|
-
}
|
|
30
|
-
return incoming;
|
|
31
|
-
}
|
|
32
|
-
}
|
|
33
|
-
throw new Error(`No receipt returned from ${witnessUrl}`);
|
|
34
|
-
}
|
|
3
|
+
import { WitnessClient } from "./witness-client.js";
|
|
35
4
|
/**
|
|
36
5
|
* KERI Algorithm for Witness Agreement (KAWA).
|
|
37
6
|
*
|
|
@@ -42,7 +11,7 @@ async function receipt(event, witnessUrl) {
|
|
|
42
11
|
* @param endpoints Pre-resolved endpoints for each witness
|
|
43
12
|
* @returns Indexed witness signatures (wigs)
|
|
44
13
|
*/
|
|
45
|
-
export async function submitToWitnesses(event, endpoints) {
|
|
14
|
+
export async function submitToWitnesses(event, endpoints, fetch) {
|
|
46
15
|
// TODO: implement the spec's round-robin approach where receipts collected from
|
|
47
16
|
// earlier witnesses are forwarded to later ones in the same pass, reducing total
|
|
48
17
|
// network exchanges from N+(N×(N-1)) to at most 2×N.
|
|
@@ -50,19 +19,20 @@ export async function submitToWitnesses(event, endpoints) {
|
|
|
50
19
|
const wigs = new Set();
|
|
51
20
|
const wits = endpoints.map((e) => e.aid);
|
|
52
21
|
for (const endpoint of endpoints) {
|
|
53
|
-
const
|
|
22
|
+
const client = new WitnessClient(endpoint.url, fetch);
|
|
23
|
+
const response = await client.receipt(event);
|
|
54
24
|
if (response.attachments.NonTransReceiptCouples.length > 0) {
|
|
55
25
|
const receiptCouple = response.attachments.NonTransReceiptCouples[0];
|
|
56
26
|
const witnessIndex = wits.indexOf(receiptCouple.prefix);
|
|
57
27
|
if (witnessIndex !== -1) {
|
|
58
28
|
const signature = Matter.parse(receiptCouple.sig);
|
|
59
|
-
wigs.add(
|
|
29
|
+
wigs.add(encodeText(Indexer.convert(signature, witnessIndex)));
|
|
60
30
|
}
|
|
61
31
|
}
|
|
62
32
|
receipts[endpoint.aid] = response;
|
|
63
33
|
}
|
|
64
34
|
for (const endpoint of endpoints) {
|
|
65
|
-
const client = new MailboxClient({ id: endpoint.aid, url: endpoint.url });
|
|
35
|
+
const client = new MailboxClient({ id: endpoint.aid, url: endpoint.url, fetch });
|
|
66
36
|
for (const [other, receipt] of Object.entries(receipts)) {
|
|
67
37
|
if (other === endpoint.aid) {
|
|
68
38
|
continue;
|
package/dist/core/kawa.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"kawa.js","sourceRoot":"","sources":["../../src/core/kawa.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"kawa.js","sourceRoot":"","sources":["../../src/core/kawa.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAElE,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAOpD;;;;;;;;;GASG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,KAA4B,EAC5B,SAA4B,EAC5B,KAA+B;IAE/B,gFAAgF;IAChF,iFAAiF;IACjF,qDAAqD;IACrD,MAAM,QAAQ,GAA4B,EAAE,CAAC;IAC7C,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;IAC/B,MAAM,IAAI,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;IAEzC,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;QACjC,MAAM,MAAM,GAAG,IAAI,aAAa,CAAC,QAAQ,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;QACtD,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QAE7C,IAAI,QAAQ,CAAC,WAAW,CAAC,sBAAsB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC3D,MAAM,aAAa,GAAG,QAAQ,CAAC,WAAW,CAAC,sBAAsB,CAAC,CAAC,CAAC,CAAC;YACrE,MAAM,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;YAExD,IAAI,YAAY,KAAK,CAAC,CAAC,EAAE,CAAC;gBACxB,MAAM,SAAS,GAAG,MAAM,CAAC,KAAK,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;gBAClD,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,OAAO,CAAC,OAAO,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC;YACjE,CAAC;QACH,CAAC;QAED,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,QAAQ,CAAC;IACpC,CAAC;IAED,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;QACjC,MAAM,MAAM,GAAG,IAAI,aAAa,CAAC,EAAE,EAAE,EAAE,QAAQ,CAAC,GAAG,EAAE,GAAG,EAAE,QAAQ,CAAC,GAAG,EAAE,KAAK,EAAE,CAAC,CAAC;QAEjF,KAAK,MAAM,CAAC,KAAK,EAAE,OAAO,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;YACxD,IAAI,KAAK,KAAK,QAAQ,CAAC,GAAG,EAAE,CAAC;gBAC3B,SAAS;YACX,CAAC;YAED,MAAM,OAAO,GAAG,IAAI,OAAO,CAAC,OAAO,CAAC,IAAI,EAAE;gBACxC,sBAAsB,EAAE,OAAO,CAAC,WAAW,CAAC,sBAAsB;aACnE,CAAC,CAAC;YAEH,MAAM,MAAM,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;QACpC,CAAC;IACH,CAAC;IAED,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC"}
|
|
@@ -1,13 +1,19 @@
|
|
|
1
|
-
import { Message } from "cesr";
|
|
2
|
-
import type {
|
|
3
|
-
export
|
|
1
|
+
import { Message } from "#keri/cesr";
|
|
2
|
+
import type { InceptEventBody, InteractEventBody, KeyEventBody, KeyState, RotateEventBody } from "./key-event.ts";
|
|
3
|
+
export interface AppendOptions {
|
|
4
|
+
/** Allow appending an event whose controller signatures don't meet the signing threshold. Individual signatures that are present must still be cryptographically valid. */
|
|
5
|
+
allowPartiallySigned?: boolean;
|
|
6
|
+
/** Allow appending an event whose witness signatures don't meet the backer threshold. Individual signatures that are present must still be cryptographically valid. */
|
|
7
|
+
allowPartiallyWitnessed?: boolean;
|
|
8
|
+
}
|
|
9
|
+
export type { InceptEventBody as InceptEvent, InteractEventBody as InteractEvent, KeyState, RotateEventBody as RotateEvent, };
|
|
4
10
|
export declare class KeyEventLog {
|
|
5
11
|
#private;
|
|
6
12
|
private constructor();
|
|
7
13
|
static empty(): KeyEventLog;
|
|
8
|
-
static from(events: Iterable<Message<KeyEventBody
|
|
9
|
-
static parse(stream: AsyncIterable<Uint8Array
|
|
14
|
+
static from(events: Iterable<Message<KeyEventBody>>, options?: AppendOptions): KeyEventLog;
|
|
15
|
+
static parse(stream: AsyncIterable<Uint8Array>, options?: AppendOptions): Promise<KeyEventLog>;
|
|
10
16
|
get state(): KeyState;
|
|
11
17
|
get events(): Message<KeyEventBody>[];
|
|
12
|
-
append(message: Message<KeyEventBody
|
|
18
|
+
append(message: Message<KeyEventBody>, options?: AppendOptions): KeyEventLog;
|
|
13
19
|
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { Message, parse } from "cesr";
|
|
2
|
-
import {
|
|
1
|
+
import { Message, parse } from "#keri/cesr";
|
|
2
|
+
import { verifySignaturesOrThrow, verifyThresholdOrThrow } from "./verify.js";
|
|
3
3
|
export class KeyEventLog {
|
|
4
4
|
#events;
|
|
5
5
|
#state;
|
|
@@ -10,19 +10,19 @@ export class KeyEventLog {
|
|
|
10
10
|
static empty() {
|
|
11
11
|
return new KeyEventLog([], null);
|
|
12
12
|
}
|
|
13
|
-
static from(events) {
|
|
13
|
+
static from(events, options) {
|
|
14
14
|
let log = KeyEventLog.empty();
|
|
15
15
|
for (const event of events) {
|
|
16
|
-
log = log.append(event);
|
|
16
|
+
log = log.append(event, options);
|
|
17
17
|
}
|
|
18
18
|
return log;
|
|
19
19
|
}
|
|
20
|
-
static async parse(stream) {
|
|
20
|
+
static async parse(stream, options) {
|
|
21
21
|
let log = KeyEventLog.empty();
|
|
22
22
|
for await (const message of parse(stream)) {
|
|
23
23
|
// TODO: Verify that the message is a valid KeyEventBody before casting
|
|
24
24
|
if (message.body.t === "icp" || message.body.t === "ixn" || message.body.t === "rot") {
|
|
25
|
-
log = log.append(message);
|
|
25
|
+
log = log.append(message, options);
|
|
26
26
|
}
|
|
27
27
|
}
|
|
28
28
|
return log;
|
|
@@ -36,11 +36,13 @@ export class KeyEventLog {
|
|
|
36
36
|
get events() {
|
|
37
37
|
return this.#events;
|
|
38
38
|
}
|
|
39
|
-
append(message) {
|
|
39
|
+
append(message, options) {
|
|
40
40
|
const sigs = message.attachments.ControllerIdxSigs ?? [];
|
|
41
41
|
const wigs = message.attachments.WitnessIdxSigs ?? [];
|
|
42
42
|
const body = message.body;
|
|
43
43
|
const bodyRaw = new Message(body).raw;
|
|
44
|
+
const verifySigning = options?.allowPartiallySigned ? verifySignaturesOrThrow : verifyThresholdOrThrow;
|
|
45
|
+
const verifyWitness = options?.allowPartiallyWitnessed ? verifySignaturesOrThrow : verifyThresholdOrThrow;
|
|
44
46
|
switch (body.t) {
|
|
45
47
|
case "icp": {
|
|
46
48
|
if (this.#state !== null) {
|
|
@@ -50,13 +52,13 @@ export class KeyEventLog {
|
|
|
50
52
|
if (!icp.k || !Array.isArray(icp.k) || icp.k.length === 0) {
|
|
51
53
|
throw new Error("Inception event must have at least one key");
|
|
52
54
|
}
|
|
53
|
-
|
|
55
|
+
verifySigning(bodyRaw, {
|
|
54
56
|
keys: icp.k,
|
|
55
57
|
threshold: icp.kt,
|
|
56
58
|
sigs,
|
|
57
59
|
});
|
|
58
60
|
if (icp.b && Array.isArray(icp.b) && icp.b.length > 0) {
|
|
59
|
-
|
|
61
|
+
verifyWitness(bodyRaw, {
|
|
60
62
|
keys: icp.b,
|
|
61
63
|
threshold: icp.bt,
|
|
62
64
|
sigs: wigs,
|
|
@@ -70,13 +72,13 @@ export class KeyEventLog {
|
|
|
70
72
|
throw new Error("State must be initialized before applying interact or rotate events");
|
|
71
73
|
}
|
|
72
74
|
const state = this.#state;
|
|
73
|
-
|
|
75
|
+
verifySigning(bodyRaw, {
|
|
74
76
|
keys: state.signingKeys,
|
|
75
77
|
threshold: state.signingThreshold,
|
|
76
78
|
sigs,
|
|
77
79
|
});
|
|
78
80
|
if (state.backers && state.backers.length > 0) {
|
|
79
|
-
|
|
81
|
+
verifyWitness(bodyRaw, {
|
|
80
82
|
keys: state.backers,
|
|
81
83
|
threshold: state.backerThreshold,
|
|
82
84
|
sigs: wigs,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"key-event-log.js","sourceRoot":"","sources":["../../src/core/key-event-log.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"key-event-log.js","sourceRoot":"","sources":["../../src/core/key-event-log.ts"],"names":[],"mappings":"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"}
|
package/dist/core/key-event.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Message } from "cesr";
|
|
1
|
+
import { Message } from "#keri/cesr";
|
|
2
2
|
import type { Threshold } from "./threshold.ts";
|
|
3
3
|
export interface KeyState {
|
|
4
4
|
identifier: string;
|
|
@@ -39,7 +39,7 @@ export interface RotateArgs {
|
|
|
39
39
|
ba?: string[];
|
|
40
40
|
bt?: string;
|
|
41
41
|
}
|
|
42
|
-
export type
|
|
42
|
+
export type InceptEventBody = {
|
|
43
43
|
v: string;
|
|
44
44
|
t: "icp";
|
|
45
45
|
d: string;
|
|
@@ -54,7 +54,7 @@ export type InceptEvent = {
|
|
|
54
54
|
c: string[];
|
|
55
55
|
a: Record<string, unknown>[];
|
|
56
56
|
};
|
|
57
|
-
export type
|
|
57
|
+
export type InteractEventBody = {
|
|
58
58
|
v: string;
|
|
59
59
|
t: "ixn";
|
|
60
60
|
d: string;
|
|
@@ -63,7 +63,7 @@ export type InteractEvent = {
|
|
|
63
63
|
p: string;
|
|
64
64
|
a: Record<string, unknown>[];
|
|
65
65
|
};
|
|
66
|
-
export type
|
|
66
|
+
export type RotateEventBody = {
|
|
67
67
|
v: string;
|
|
68
68
|
t: "rot";
|
|
69
69
|
d: string;
|
|
@@ -89,8 +89,6 @@ export type KeyEventBody = {
|
|
|
89
89
|
[key: string]: unknown;
|
|
90
90
|
};
|
|
91
91
|
export type KeyEvent<T extends KeyEventBody = KeyEventBody> = Message<T>;
|
|
92
|
-
export declare function incept(args: InceptArgs):
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
export declare function interact(state: KeyState, args?: InteractArgs): KeyEvent<InteractEvent>;
|
|
96
|
-
export declare function rotate(state: KeyState, args: RotateArgs): KeyEvent<RotateEvent>;
|
|
92
|
+
export declare function incept(args: InceptArgs): KeyEvent<InceptEventBody>;
|
|
93
|
+
export declare function interact(state: KeyState, args?: InteractArgs): KeyEvent<InteractEventBody>;
|
|
94
|
+
export declare function rotate(state: KeyState, args: RotateArgs): KeyEvent<RotateEventBody>;
|
package/dist/core/key-event.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"key-event.js","sourceRoot":"","sources":["../../src/core/key-event.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"key-event.js","sourceRoot":"","sources":["../../src/core/key-event.ts"],"names":[],"mappings":"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"}
|
package/dist/core/keys.d.ts
CHANGED
|
@@ -4,6 +4,7 @@ export interface KeyPair {
|
|
|
4
4
|
publicKeyDigest: string;
|
|
5
5
|
}
|
|
6
6
|
export interface GenerateKeyPairOptions {
|
|
7
|
+
seed?: string;
|
|
7
8
|
nonTransferable?: boolean;
|
|
8
9
|
}
|
|
9
|
-
export declare function generateKeyPair(
|
|
10
|
+
export declare function generateKeyPair(options?: GenerateKeyPairOptions): KeyPair;
|
package/dist/core/keys.js
CHANGED
|
@@ -1,17 +1,17 @@
|
|
|
1
|
-
import { cesr } from "cesr";
|
|
2
1
|
import { ed25519 } from "@noble/curves/ed25519.js";
|
|
3
2
|
import { blake3 } from "@noble/hashes/blake3.js";
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
3
|
+
import { encodeText, Matter } from "#keri/cesr";
|
|
4
|
+
export function generateKeyPair(options) {
|
|
5
|
+
const privateKey = options?.seed
|
|
6
|
+
? blake3(new TextEncoder().encode(options.seed), { dkLen: 32 })
|
|
7
7
|
: crypto.getRandomValues(new Uint8Array(32));
|
|
8
8
|
const rawPublicKey = ed25519.getPublicKey(privateKey);
|
|
9
|
-
const
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
9
|
+
const code = options?.nonTransferable ? Matter.Code.Ed25519N : Matter.Code.Ed25519;
|
|
10
|
+
const publicKey = encodeText(new Matter({ code, raw: rawPublicKey }));
|
|
11
|
+
const publicKeyDigest = encodeText(new Matter({
|
|
12
|
+
code: Matter.Code.Blake3_256,
|
|
13
|
+
raw: blake3.create({ dkLen: 32 }).update(new TextEncoder().encode(publicKey)).digest(),
|
|
14
|
+
}));
|
|
15
15
|
return { privateKey, publicKey, publicKeyDigest };
|
|
16
16
|
}
|
|
17
17
|
//# sourceMappingURL=keys.js.map
|
package/dist/core/keys.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"keys.js","sourceRoot":"","sources":["../../src/core/keys.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"keys.js","sourceRoot":"","sources":["../../src/core/keys.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,0BAA0B,CAAC;AACnD,OAAO,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAC;AACjD,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AAahD,MAAM,UAAU,eAAe,CAAC,OAAgC;IAC9D,MAAM,UAAU,GAAG,OAAO,EAAE,IAAI;QAC9B,CAAC,CAAC,MAAM,CAAC,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC;QAC/D,CAAC,CAAC,MAAM,CAAC,eAAe,CAAC,IAAI,UAAU,CAAC,EAAE,CAAC,CAAC,CAAC;IAE/C,MAAM,YAAY,GAAG,OAAO,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC;IACtD,MAAM,IAAI,GAAG,OAAO,EAAE,eAAe,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC;IACnF,MAAM,SAAS,GAAG,UAAU,CAAC,IAAI,MAAM,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,YAAY,EAAE,CAAC,CAAC,CAAC;IAEtE,MAAM,eAAe,GAAG,UAAU,CAChC,IAAI,MAAM,CAAC;QACT,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,UAAU;QAC5B,GAAG,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,EAAE;KACvF,CAAC,CACH,CAAC;IAEF,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,eAAe,EAAE,CAAC;AACpD,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { type Message } from "cesr";
|
|
1
|
+
import { type Message } from "#keri/cesr";
|
|
2
2
|
export interface MailboxClientOptions {
|
|
3
3
|
/**
|
|
4
4
|
* The SAID of the mailbox controller.
|
|
@@ -8,8 +8,14 @@ export interface MailboxClientOptions {
|
|
|
8
8
|
* The URL of the mailbox server to send messages to.
|
|
9
9
|
*/
|
|
10
10
|
url: string;
|
|
11
|
+
/**
|
|
12
|
+
* Optional fetch implementation to use for sending messages.
|
|
13
|
+
* Defaults to the global `fetch` function.
|
|
14
|
+
*/
|
|
15
|
+
fetch?: typeof globalThis.fetch;
|
|
11
16
|
}
|
|
12
17
|
export declare class MailboxClient {
|
|
18
|
+
#private;
|
|
13
19
|
readonly url: string;
|
|
14
20
|
readonly id: string;
|
|
15
21
|
constructor(options: MailboxClientOptions);
|
|
@@ -1,20 +1,22 @@
|
|
|
1
|
-
import { parse } from "cesr";
|
|
1
|
+
import { encodeText, parse } from "#keri/cesr";
|
|
2
2
|
export class MailboxClient {
|
|
3
3
|
url;
|
|
4
4
|
id;
|
|
5
|
+
#fetch;
|
|
5
6
|
constructor(options) {
|
|
6
7
|
this.url = options.url;
|
|
7
8
|
this.id = options.id;
|
|
9
|
+
this.#fetch = options.fetch ?? globalThis.fetch;
|
|
8
10
|
}
|
|
9
11
|
async sendMessage(message, signal) {
|
|
10
12
|
const url = new URL("/", this.url);
|
|
11
13
|
const body = JSON.stringify(message.body);
|
|
12
14
|
const headers = {
|
|
13
15
|
"Content-Type": "application/cesr+json",
|
|
14
|
-
"CESR-ATTACHMENT": message.attachments.
|
|
16
|
+
"CESR-ATTACHMENT": encodeText(message.attachments.frames()),
|
|
15
17
|
"CESR-DESTINATION": this.id,
|
|
16
18
|
};
|
|
17
|
-
const response = await fetch(url, {
|
|
19
|
+
const response = await this.#fetch(url, {
|
|
18
20
|
method: "POST",
|
|
19
21
|
body,
|
|
20
22
|
headers,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mailbox-client.js","sourceRoot":"","sources":["../../src/core/mailbox-client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAgB,KAAK,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"mailbox-client.js","sourceRoot":"","sources":["../../src/core/mailbox-client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAgB,KAAK,EAAE,MAAM,YAAY,CAAC;AAoB7D,MAAM,OAAO,aAAa;IACf,GAAG,CAAS;IACZ,EAAE,CAAS;IACX,MAAM,CAA0B;IAEzC,YAAY,OAA6B;QACvC,IAAI,CAAC,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC;QACvB,IAAI,CAAC,EAAE,GAAG,OAAO,CAAC,EAAE,CAAC;QACrB,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,KAAK,IAAI,UAAU,CAAC,KAAK,CAAC;IAClD,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,OAAgB,EAAE,MAAoB;QACtD,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC;QAEnC,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAC1C,MAAM,OAAO,GAAG;YACd,cAAc,EAAE,uBAAuB;YACvC,iBAAiB,EAAE,UAAU,CAAC,OAAO,CAAC,WAAW,CAAC,MAAM,EAAE,CAAC;YAC3D,kBAAkB,EAAE,IAAI,CAAC,EAAE;SAC5B,CAAC;QAEF,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE;YACtC,MAAM,EAAE,MAAM;YACd,IAAI;YACJ,OAAO;YACP,MAAM;SACP,CAAC,CAAC;QAEH,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;YACjB,MAAM,IAAI,KAAK,CAAC,yBAAyB,QAAQ,CAAC,MAAM,IAAI,QAAQ,CAAC,UAAU,EAAE,CAAC,CAAC;QACrF,CAAC;QAED,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;YACnB,OAAO,EAAE,CAAC;QACZ,CAAC;QAED,MAAM,WAAW,GAAG,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;QACzD,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,OAAO,EAAE,CAAC;QACZ,CAAC;QAED,IAAI,WAAW,KAAK,mBAAmB,EAAE,CAAC;YACxC,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;YACzC,OAAO,IAAI,EAAE,CAAC;gBACZ,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,MAAM,MAAM,CAAC,IAAI,EAAE,CAAC;gBAE5C,IAAI,IAAI,EAAE,CAAC;oBACT,MAAM;gBACR,CAAC;gBAED,MAAM,GAAG,GAAG,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;gBAE5C,KAAK,MAAM,IAAI,IAAI,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;oBACnC,IAAI,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;wBAC9B,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;wBAC3B,MAAM,OAAO,GAAG,MAAM,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;wBACnD,MAAM,CAAC,MAAM,CAAC,gCAAgC,CAAC,CAAC;wBAChD,OAAO,OAAO,CAAC;oBACjB,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;QAED,IAAI,WAAW,EAAE,UAAU,CAAC,kBAAkB,CAAC,EAAE,CAAC;YAChD,OAAO,EAAE,CAAC;QACZ,CAAC;QAED,OAAO,MAAM,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC;IACrD,CAAC;CACF"}
|
package/dist/core/main.d.ts
CHANGED
|
@@ -1,30 +1,36 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { receipt } from "./receipt-event.ts";
|
|
3
|
-
import { incept, interact, rotate } from "./key-event.ts";
|
|
4
|
-
import { incept as registry } from "./registry-event.ts";
|
|
1
|
+
import { createCredential } from "./credential.ts";
|
|
5
2
|
import { issue, revoke } from "./credential-event.ts";
|
|
3
|
+
import { digest } from "./digest.ts";
|
|
6
4
|
import { formatDate } from "./events.ts";
|
|
5
|
+
import { incept, interact, rotate } from "./key-event.ts";
|
|
7
6
|
import { generateKeyPair } from "./keys.ts";
|
|
8
|
-
import {
|
|
7
|
+
import { receipt } from "./receipt-event.ts";
|
|
8
|
+
import { incept as registry } from "./registry-event.ts";
|
|
9
|
+
import { exchange, query, reply } from "./routed-event.ts";
|
|
9
10
|
import { sign } from "./sign.ts";
|
|
10
|
-
import {
|
|
11
|
-
|
|
12
|
-
export {
|
|
13
|
-
export { Message, Attachments } from "cesr";
|
|
14
|
-
export type { KeyEvent } from "./key-event.ts";
|
|
15
|
-
export { KeyEventLog } from "./key-event-log.ts";
|
|
16
|
-
export type { KeyState, InceptEvent, InteractEvent, RotateEvent, KeyEventBody } from "./key-event.ts";
|
|
17
|
-
export type { KeyPair } from "./keys.ts";
|
|
18
|
-
export type { RegistryInceptEvent } from "./registry-event.ts";
|
|
19
|
-
export type { IssueEvent, RevokeEvent } from "./credential-event.ts";
|
|
20
|
-
export type { ReplyEvent, ExchangeEvent } from "./routed-event.ts";
|
|
11
|
+
import { verifyThreshold } from "./verify.ts";
|
|
12
|
+
export { Attachments, type AttachmentsInit, type FirstSeenReplayCouple, type Frame, Message, type MessageBody, type NonTransReceiptCouple, type PathedMaterialCouple, type SealSourceCouple, type SealSourceTriple, type TransIdxSigGroup, type TransLastIdxSigGroup, VersionString, } from "#keri/cesr";
|
|
13
|
+
export type { Credential, CredentialBody, CredentialBodyInit, CredentialEdges, CredentialRules, CredentialSubject, } from "./credential.ts";
|
|
21
14
|
export { createCredential } from "./credential.ts";
|
|
22
|
-
export type {
|
|
15
|
+
export type { IssueEventBody as IssueEvent, IssueEventInit, RevokeEventBody as RevokeEvent, RevokeEventInit, } from "./credential-event.ts";
|
|
16
|
+
export type { Endpoint, EndRoleRecord, LocationRecord } from "./endpoint-discovery.ts";
|
|
23
17
|
export { resolveEndRole, resolveLocation } from "./endpoint-discovery.ts";
|
|
24
|
-
export type {
|
|
25
|
-
export type { VerifyResult } from "./verify.ts";
|
|
26
|
-
export { MailboxClient } from "./mailbox-client.ts";
|
|
18
|
+
export type { WitnessEndpoint } from "./kawa.ts";
|
|
27
19
|
export { submitToWitnesses } from "./kawa.ts";
|
|
20
|
+
export type { InceptArgs, InceptEventBody, InteractArgs, InteractEventBody, KeyEvent, KeyEventBody, KeyState, RotateArgs, RotateEventBody, } from "./key-event.ts";
|
|
21
|
+
export { KeyEventLog } from "./key-event-log.ts";
|
|
22
|
+
export type { GenerateKeyPairOptions, KeyPair } from "./keys.ts";
|
|
23
|
+
export { generateKeyPair } from "./keys.ts";
|
|
24
|
+
export type { MailboxClientOptions } from "./mailbox-client.ts";
|
|
25
|
+
export { MailboxClient } from "./mailbox-client.ts";
|
|
26
|
+
export type { ReceiptEventBody, ReceiptEventInit } from "./receipt-event.ts";
|
|
27
|
+
export type { RegistryInceptEventBody, RegistryInceptEventInit } from "./registry-event.ts";
|
|
28
|
+
export type { ExchangeEventBody, ExchangeEventInit, QueryEventBody, QueryEventInit, ReplyEventBody, ReplyEventInit, } from "./routed-event.ts";
|
|
29
|
+
export type { SignOptions } from "./sign.ts";
|
|
30
|
+
export { sign } from "./sign.ts";
|
|
31
|
+
export type { Threshold } from "./threshold.ts";
|
|
32
|
+
export type { VerifyOptions, VerifyResult } from "./verify.ts";
|
|
33
|
+
export { verifySignature } from "./verify.ts";
|
|
28
34
|
export declare const keri: {
|
|
29
35
|
incept: typeof incept;
|
|
30
36
|
interact: typeof interact;
|
|
@@ -39,7 +45,7 @@ export declare const keri: {
|
|
|
39
45
|
receipt: typeof receipt;
|
|
40
46
|
utils: {
|
|
41
47
|
sign: typeof sign;
|
|
42
|
-
|
|
48
|
+
verifyThreshold: typeof verifyThreshold;
|
|
43
49
|
formatDate: typeof formatDate;
|
|
44
50
|
generateKeyPair: typeof generateKeyPair;
|
|
45
51
|
digest: typeof digest;
|
package/dist/core/main.js
CHANGED
|
@@ -1,21 +1,23 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { receipt } from "./receipt-event.js";
|
|
3
|
-
import { incept, interact, rotate } from "./key-event.js";
|
|
4
|
-
import { incept as registry } from "./registry-event.js";
|
|
1
|
+
import { createCredential } from "./credential.js";
|
|
5
2
|
import { issue, revoke } from "./credential-event.js";
|
|
3
|
+
import { digest } from "./digest.js";
|
|
6
4
|
import { formatDate } from "./events.js";
|
|
5
|
+
import { incept, interact, rotate } from "./key-event.js";
|
|
7
6
|
import { generateKeyPair } from "./keys.js";
|
|
8
|
-
import {
|
|
7
|
+
import { receipt } from "./receipt-event.js";
|
|
8
|
+
import { incept as registry } from "./registry-event.js";
|
|
9
|
+
import { exchange, query, reply } from "./routed-event.js";
|
|
9
10
|
import { sign } from "./sign.js";
|
|
10
|
-
import {
|
|
11
|
-
|
|
12
|
-
export { sign } from "./sign.js";
|
|
13
|
-
export { Message, Attachments } from "cesr";
|
|
14
|
-
export { KeyEventLog } from "./key-event-log.js";
|
|
11
|
+
import { verifyThreshold } from "./verify.js";
|
|
12
|
+
export { Attachments, Message, VersionString, } from "#keri/cesr";
|
|
15
13
|
export { createCredential } from "./credential.js";
|
|
16
14
|
export { resolveEndRole, resolveLocation } from "./endpoint-discovery.js";
|
|
17
|
-
export { MailboxClient } from "./mailbox-client.js";
|
|
18
15
|
export { submitToWitnesses } from "./kawa.js";
|
|
16
|
+
export { KeyEventLog } from "./key-event-log.js";
|
|
17
|
+
export { generateKeyPair } from "./keys.js";
|
|
18
|
+
export { MailboxClient } from "./mailbox-client.js";
|
|
19
|
+
export { sign } from "./sign.js";
|
|
20
|
+
export { verifySignature } from "./verify.js";
|
|
19
21
|
export const keri = {
|
|
20
22
|
// Key events
|
|
21
23
|
incept,
|
|
@@ -34,7 +36,7 @@ export const keri = {
|
|
|
34
36
|
receipt,
|
|
35
37
|
utils: {
|
|
36
38
|
sign,
|
|
37
|
-
|
|
39
|
+
verifyThreshold,
|
|
38
40
|
formatDate,
|
|
39
41
|
generateKeyPair,
|
|
40
42
|
digest,
|
package/dist/core/main.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"main.js","sourceRoot":"","sources":["../../src/core/main.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"main.js","sourceRoot":"","sources":["../../src/core/main.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACnD,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AAC1D,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAC5C,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAC7C,OAAO,EAAE,MAAM,IAAI,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAC3D,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAE9C,OAAO,EACL,WAAW,EAIX,OAAO,EAQP,aAAa,GACd,MAAM,YAAY,CAAC;AASpB,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAQnD,OAAO,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAE1E,OAAO,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC;AAY9C,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEjD,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAG5C,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAYpD,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAGjC,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAE9C,MAAM,CAAC,MAAM,IAAI,GAAG;IAClB,aAAa;IACb,MAAM;IACN,QAAQ;IACR,MAAM;IACN,WAAW;IACX,QAAQ;IACR,KAAK;IACL,MAAM;IACN,UAAU,EAAE,gBAAgB;IAC5B,SAAS;IACT,QAAQ;IACR,KAAK;IACL,KAAK;IACL,UAAU;IACV,OAAO;IACP,KAAK,EAAE;QACL,IAAI;QACJ,eAAe;QACf,UAAU;QACV,eAAe;QACf,MAAM;KACP;CACF,CAAC"}
|