@atcute/did-plc 0.1.6 → 0.2.0

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.
@@ -1 +1,2 @@
1
1
  export declare const DISPUTE_WINDOW: number;
2
+ //# sourceMappingURL=constants.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../lib/constants.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,cAAc,QAAY,CAAC"}
package/dist/data.d.ts CHANGED
@@ -1,4 +1,10 @@
1
1
  import * as t from './types.js';
2
+ /**
3
+ * Validate an incoming operation against soft constraints (length limits, counts, duplicates).
4
+ * This should be used when preparing to submit a new operation to plc.directory.
5
+ * Historical operations should only be validated against hard constraints (structure, signatures, hashes).
6
+ */
7
+ export declare const validateIncomingOp: (op: t.CompatibleOperationOrTombstone) => void;
2
8
  /**
3
9
  * Process an indexed entry by validating it and integrating it into the canonical log.
4
10
  */
@@ -30,3 +36,4 @@ export interface DisputeCandidate {
30
36
  * Finds operations that can be disputed by a given key
31
37
  */
32
38
  export declare const getDisputeCandidates: (canonical: t.IndexedEntryWithSigner[], key: t.DidKeyString) => DisputeCandidate[];
39
+ //# sourceMappingURL=data.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"data.d.ts","sourceRoot":"","sources":["../lib/data.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,CAAC,MAAM,YAAY,CAAC;AAehC;;;;GAIG;AACH,eAAO,MAAM,kBAAkB,GAAI,IAAI,CAAC,CAAC,8BAA8B,KAAG,IAiGzE,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,mBAAmB,GAC/B,KAAK,CAAC,CAAC,YAAY,EACnB,WAAW,CAAC,CAAC,sBAAsB,EAAE,EACrC,UAAU,CAAC,CAAC,YAAY,KACtB,OAAO,CAAC;IACV,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,GAAG,EAAE,CAAC,CAAC,sBAAsB,EAAE,CAAC;IAChC,SAAS,EAAE,CAAC,CAAC,sBAAsB,EAAE,CAAC;CACtC,CA+IA,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,sBAAsB,GAClC,KAAK,CAAC,CAAC,YAAY,EACnB,KAAK,CAAC,CAAC,eAAe,KACpB,OAAO,CAAC;IAAE,SAAS,EAAE,CAAC,CAAC,sBAAsB,EAAE,CAAC;IAAC,SAAS,EAAE,CAAC,CAAC,sBAAsB,EAAE,CAAA;CAAE,CAc1F,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,qBAAqB,GAAI,UAAU,CAAC,CAAC,YAAY,EAAE,YAAgB,KAAG,OAGlF,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,sBAAsB,GAClC,MAAM,CAAC,CAAC,sBAAsB,CAAC,CAAC,CAAC,mBAAmB,CAAC,EACrD,UAAU,CAAC,CAAC,sBAAsB,EAClC,KAAK,CAAC,CAAC,YAAY,KACjB,OAWF,CAAC;AAEF,MAAM,WAAW,gBAAgB;IAChC,IAAI,EAAE,CAAC,CAAC,sBAAsB,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC;IACtD,QAAQ,EAAE,CAAC,CAAC,sBAAsB,CAAC;CACnC;AAED;;GAEG;AACH,eAAO,MAAM,oBAAoB,GAAI,WAAW,CAAC,CAAC,sBAAsB,EAAE,EAAE,KAAK,CAAC,CAAC,YAAY,uBAoB9F,CAAC"}
package/dist/data.js CHANGED
@@ -1,11 +1,105 @@
1
1
  import * as CBOR from '@atcute/cbor';
2
2
  import * as CID from '@atcute/cid';
3
+ import { isKeyDid } from '@atcute/identity';
3
4
  import { toBase32 } from '@atcute/multibase';
4
5
  import { toSha256 } from '@atcute/uint8array';
5
6
  import { DISPUTE_WINDOW } from './constants.js';
6
7
  import * as err from './errors.js';
7
8
  import * as t from './types.js';
8
9
  import { isSignedOperationValid, normalizeOp } from './utils.js';
10
+ // soft constraint limits for incoming operations
11
+ const MAX_OP_BYTES = 4000;
12
+ const MAX_AKA_ENTRIES = 10;
13
+ const MAX_AKA_LENGTH = 258; // max handle length (253) plus at:// prefix (5)
14
+ const MAX_ROTATION_ENTRIES = 10;
15
+ const MAX_SERVICE_ENTRIES = 10;
16
+ const MAX_SERVICE_TYPE_LENGTH = 256;
17
+ const MAX_SERVICE_ENDPOINT_LENGTH = 512;
18
+ const MAX_VERIFICATION_METHOD_ENTRIES = 10;
19
+ const MAX_ID_LENGTH = 32;
20
+ const MAX_DID_KEY_LENGTH = 256; // k256 = 57, BLS12-381 = 143
21
+ /**
22
+ * Validate an incoming operation against soft constraints (length limits, counts, duplicates).
23
+ * This should be used when preparing to submit a new operation to plc.directory.
24
+ * Historical operations should only be validated against hard constraints (structure, signatures, hashes).
25
+ */
26
+ export const validateIncomingOp = (op) => {
27
+ // Check CBOR size limit
28
+ const byteLength = CBOR.encode(op).byteLength;
29
+ if (byteLength > MAX_OP_BYTES) {
30
+ throw new Error(`operation too large (${MAX_OP_BYTES} bytes maximum in cbor encoding)`);
31
+ }
32
+ if (op.type === 'plc_tombstone') {
33
+ return;
34
+ }
35
+ op = normalizeOp(op);
36
+ {
37
+ const alsoKnownAs = op.alsoKnownAs;
38
+ if (alsoKnownAs.length > MAX_AKA_ENTRIES) {
39
+ throw new Error(`too many alsoKnownAs entries (max ${MAX_AKA_ENTRIES})`);
40
+ }
41
+ const alsoKnownAsDupe = new Set();
42
+ for (const aka of alsoKnownAs) {
43
+ if (aka.length > MAX_AKA_LENGTH) {
44
+ throw new Error(`alsoKnownAs entry too long (max ${MAX_AKA_LENGTH}): ${aka}`);
45
+ }
46
+ if (alsoKnownAsDupe.has(aka)) {
47
+ throw new Error(`duplicate alsoKnownAs entry: ${aka}`);
48
+ }
49
+ alsoKnownAsDupe.add(aka);
50
+ }
51
+ }
52
+ {
53
+ const rotationKeys = op.rotationKeys;
54
+ if (rotationKeys.length === 0) {
55
+ throw new Error(`missing rotation keys`);
56
+ }
57
+ if (rotationKeys.length > MAX_ROTATION_ENTRIES) {
58
+ throw new Error(`too many rotationKey entries (max ${MAX_ROTATION_ENTRIES})`);
59
+ }
60
+ const rotationKeyDupe = new Set();
61
+ for (const key of rotationKeys) {
62
+ if (rotationKeyDupe.has(key)) {
63
+ throw new Error(`duplicate rotation key: ${key}`);
64
+ }
65
+ rotationKeyDupe.add(key);
66
+ }
67
+ }
68
+ {
69
+ const services = Object.entries(op.services);
70
+ if (services.length > MAX_SERVICE_ENTRIES) {
71
+ throw new Error(`too many service entries (max ${MAX_SERVICE_ENTRIES})`);
72
+ }
73
+ for (const [id, service] of services) {
74
+ if (id.length > MAX_ID_LENGTH) {
75
+ throw new Error(`service id too long (max ${MAX_ID_LENGTH}): ${id}`);
76
+ }
77
+ if (service.type.length > MAX_SERVICE_TYPE_LENGTH) {
78
+ throw new Error(`service type too long (max ${MAX_SERVICE_TYPE_LENGTH})`);
79
+ }
80
+ if (service.endpoint.length > MAX_SERVICE_ENDPOINT_LENGTH) {
81
+ throw new Error(`service endpoint too long (max ${MAX_SERVICE_ENDPOINT_LENGTH})`);
82
+ }
83
+ }
84
+ }
85
+ {
86
+ const verificationMethods = Object.entries(op.verificationMethods);
87
+ if (verificationMethods.length > MAX_VERIFICATION_METHOD_ENTRIES) {
88
+ throw new Error(`too many verification method entries (max ${MAX_VERIFICATION_METHOD_ENTRIES})`);
89
+ }
90
+ for (const [id, key] of verificationMethods) {
91
+ if (id.length > MAX_ID_LENGTH) {
92
+ throw new Error(`verification method id too long (max ${MAX_ID_LENGTH}): ${id}`);
93
+ }
94
+ if (key.length > MAX_DID_KEY_LENGTH) {
95
+ throw new Error(`verification method key too long (max ${MAX_DID_KEY_LENGTH}): ${key}`);
96
+ }
97
+ if (!isKeyDid(key)) {
98
+ throw new Error(`invalid verification method key: ${key}`);
99
+ }
100
+ }
101
+ }
102
+ };
9
103
  /**
10
104
  * Process an indexed entry by validating it and integrating it into the canonical log.
11
105
  */
package/dist/data.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"data.js","sourceRoot":"","sources":["../lib/data.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"data.js","sourceRoot":"","sources":["../lib/data.ts"],"names":[],"mappings":"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"}
package/dist/errors.d.ts CHANGED
@@ -31,3 +31,4 @@ export declare class LateDisputeError extends PlcError {
31
31
  name: string;
32
32
  constructor(operation: t.IndexedEntry, lapsed: number);
33
33
  }
34
+ //# sourceMappingURL=errors.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../lib/errors.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,YAAY,CAAC;AAEhC,qBAAa,QAAS,SAAQ,KAAK;IACzB,IAAI,SAAc;CAC3B;AAED,qBAAa,sBAAuB,SAAQ,QAAQ;IAI3C,SAAS,EAAE,CAAC,CAAC,YAAY;IACzB,MAAM,EAAE,MAAM;IAJb,IAAI,SAA4B;gBAGjC,SAAS,EAAE,CAAC,CAAC,YAAY,EACzB,MAAM,EAAE,MAAM;CAItB;AAED,qBAAa,qBAAsB,SAAQ,QAAQ;IAG/B,SAAS,EAAE,CAAC,CAAC,YAAY;IAFnC,IAAI,SAA2B;gBAErB,SAAS,EAAE,CAAC,CAAC,YAAY;CAG5C;AAED,qBAAa,gBAAiB,SAAQ,QAAQ;IAIrC,SAAS,EAAE,CAAC,CAAC,YAAY;IACzB,QAAQ,EAAE,MAAM;IAJf,IAAI,SAAsB;gBAG3B,SAAS,EAAE,CAAC,CAAC,YAAY,EACzB,QAAQ,EAAE,MAAM;CAIxB;AAED,qBAAa,gBAAiB,SAAQ,QAAQ;IAIrC,SAAS,EAAE,CAAC,CAAC,YAAY;IACzB,GAAG,EAAE,CAAC,CAAC,YAAY;IAJlB,IAAI,SAAsB;gBAG3B,SAAS,EAAE,CAAC,CAAC,YAAY,EACzB,GAAG,EAAE,CAAC,CAAC,YAAY;CAI3B;AAED,qBAAa,gBAAiB,SAAQ,QAAQ;IAIrC,SAAS,EAAE,CAAC,CAAC,YAAY;IACzB,MAAM,EAAE,MAAM;IAJb,IAAI,SAAsB;gBAG3B,SAAS,EAAE,CAAC,CAAC,YAAY,EACzB,MAAM,EAAE,MAAM;CAItB"}
package/dist/index.d.ts CHANGED
@@ -4,3 +4,4 @@ export * from './constants.js';
4
4
  export * from './data.js';
5
5
  export * from './errors.js';
6
6
  export * from './utils.js';
7
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../lib/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,IAAI,MAAM,eAAe,CAAC;AACtC,cAAc,YAAY,CAAC;AAE3B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,WAAW,CAAC;AAC1B,cAAc,aAAa,CAAC;AAC5B,cAAc,YAAY,CAAC"}
@@ -16,3 +16,4 @@ export declare const operationOrTombstone: v.Type<t.OperationOrTombstone>;
16
16
  export declare const operationLog: v.Type<t.OperationLog>;
17
17
  export declare const indexedEntry: v.Type<t.IndexedEntry>;
18
18
  export declare const indexedEntryLog: v.Type<t.IndexedEntryLog>;
19
+ //# sourceMappingURL=typedefs.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"typedefs.d.ts","sourceRoot":"","sources":["../lib/typedefs.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,gBAAgB,CAAC;AAMpC,OAAO,KAAK,CAAC,MAAM,YAAY,CAAC;AAGhC,eAAO,MAAM,YAAY,6BAAmD,CAAC;AAE7E,eAAO,MAAM,sBAAsB,6BAAmD,CAAC;AAEvF,eAAO,MAAM,YAAY,6BAYvB,CAAC;AAuBH,eAAO,MAAM,6BAA6B,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,6BAA6B,CACnD,CAAC;AAEhC,eAAO,MAAM,qBAAqB,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,qBAAqB,CAEhE,CAAC;AAIH,eAAO,MAAM,OAAO,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAGpC,CAAC;AAWH,eAAO,MAAM,iBAAiB,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,iBAAiB,CAAsB,CAAC;AAEjF,eAAO,MAAM,SAAS,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAExC,CAAC;AASH,eAAO,MAAM,iBAAiB,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,iBAAiB,CAAsB,CAAC;AAEjF,eAAO,MAAM,SAAS,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAExC,CAAC;AAIH,eAAO,MAAM,mBAAmB,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,mBAAmB,CAA6C,CAAC;AAE5G,eAAO,MAAM,8BAA8B,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,8BAA8B,CAInF,CAAC;AAEF,eAAO,MAAM,oBAAoB,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,oBAAoB,CAAiC,CAAC;AAElG,eAAO,MAAM,YAAY,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,YAAY,CAET,CAAC;AAYxC,eAAO,MAAM,YAAY,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,YAAY,CAAiB,CAAC;AAElE,eAAO,MAAM,eAAe,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,eAAe,CAEsB,CAAC"}
package/dist/typedefs.js CHANGED
@@ -34,10 +34,8 @@ const _unsignedLegacyCreateOperation = v.object({
34
34
  prev: v.null(),
35
35
  signingKey: didKeyString,
36
36
  recoveryKey: didKeyString,
37
- handle: v.string().assert((input) => input.length <= 256, `handle too long (max 256 characters)`),
38
- service: v
39
- .string()
40
- .assert((input) => input.length <= 512, `service endpoint too long (max 512 characters)`),
37
+ handle: v.string(),
38
+ service: v.string(),
41
39
  });
42
40
  export const unsignedLegacyCreateOperation = _unsignedLegacyCreateOperation;
43
41
  export const legacyCreateOperation = _unsignedLegacyCreateOperation.extend({
@@ -46,92 +44,16 @@ export const legacyCreateOperation = _unsignedLegacyCreateOperation.extend({
46
44
  // #endregion
47
45
  // #region plc_operation
48
46
  export const service = v.object({
49
- type: v.string().assert((input) => input.length <= 256, `service type too long (max 256 characters)`),
50
- endpoint: v
51
- .string()
52
- .assert((input) => input.length <= 512, `service endpoint too long (max 512 characters)`),
47
+ type: v.string(),
48
+ endpoint: v.string(),
53
49
  });
54
50
  const _unsignedOperation = v.object({
55
51
  type: v.literal('plc_operation'),
56
52
  prev: v.string().nullable(),
57
- rotationKeys: v.array(didKeyString).chain((input) => {
58
- const length = input.length;
59
- if (length === 0) {
60
- return v.err(`missing rotation keys`);
61
- }
62
- else if (length > 10) {
63
- return v.err(`too many rotation keys (max 10 keys)`);
64
- }
65
- for (let i = 0; i < length; i++) {
66
- const key = input[i];
67
- for (let j = 0; j < i; j++) {
68
- if (input[j] === key) {
69
- return v.err({
70
- message: `duplicate "${key}" rotation key`,
71
- path: [i],
72
- });
73
- }
74
- }
75
- }
76
- return v.ok(input);
77
- }),
78
- verificationMethods: v.record(permissiveDidKeyString).chain((input) => {
79
- const length = Object.keys(input).length;
80
- if (length > 10) {
81
- return v.err(`too many verification method entries (max 10)`);
82
- }
83
- for (const id in input) {
84
- const key = input[id];
85
- if (id.length > 32) {
86
- return v.err({
87
- message: `verification method id too long (max 32 characters)`,
88
- path: [id],
89
- });
90
- }
91
- if (key.length > 256) {
92
- return v.err({
93
- message: `verification method key too long (max 256 characters)`,
94
- path: [id],
95
- });
96
- }
97
- }
98
- return v.ok(input);
99
- }),
100
- alsoKnownAs: v
101
- .array(v.string().assert((input) => input.length <= 256, `aka entry too long (max 256 characters)`))
102
- .chain((input) => {
103
- const length = input.length;
104
- if (length > 10) {
105
- return v.err(`too many aka entries (max 10)`);
106
- }
107
- for (let i = 0; i < length; i++) {
108
- const aka = input[i];
109
- for (let j = 0; j < i; j++) {
110
- if (input[j] === aka) {
111
- return v.err({
112
- message: `duplicate "${aka}" aka entry`,
113
- path: [i],
114
- });
115
- }
116
- }
117
- }
118
- return v.ok(input);
119
- }),
120
- services: v.record(service).chain((input) => {
121
- const length = Object.keys(input).length;
122
- if (length > 10) {
123
- return v.err(`too many service entries (max 10)`);
124
- }
125
- for (const id in input) {
126
- if (id.length > 32) {
127
- return v.err({
128
- message: `service id too long (max 32 characters)`,
129
- path: [id],
130
- });
131
- }
132
- }
133
- return v.ok(input);
134
- }),
53
+ rotationKeys: v.array(didKeyString),
54
+ verificationMethods: v.record(permissiveDidKeyString),
55
+ alsoKnownAs: v.array(v.string()),
56
+ services: v.record(service),
135
57
  });
136
58
  export const unsignedOperation = _unsignedOperation;
137
59
  export const operation = _unsignedOperation.extend({
@@ -1 +1 @@
1
- {"version":3,"file":"typedefs.js","sourceRoot":"","sources":["../lib/typedefs.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"typedefs.js","sourceRoot":"","sources":["../lib/typedefs.ts"],"names":[],"mappings":"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"}
package/dist/types.d.ts CHANGED
@@ -53,3 +53,4 @@ export type IndexedEntryLog = [
53
53
  genesis: IndexedEntry<CompatibleOperation>,
54
54
  ...IndexedEntry<OperationOrTombstone>[]
55
55
  ];
56
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../lib/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,yBAAyB,CAAC;AAEnD,MAAM,MAAM,YAAY,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC;AAEtC,MAAM,MAAM,YAAY,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC;AAEtC,MAAM,WAAW,6BAA6B;IAC7C,IAAI,EAAE,QAAQ,CAAC;IACf,IAAI,EAAE,IAAI,CAAC;IACX,UAAU,EAAE,YAAY,CAAC;IACzB,WAAW,EAAE,YAAY,CAAC;IAC1B,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,qBAAsB,SAAQ,6BAA6B;IAC3E,GAAG,EAAE,MAAM,CAAC;CACZ;AAED,MAAM,WAAW,OAAO;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,iBAAiB;IACjC,IAAI,EAAE,eAAe,CAAC;IACtB,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,YAAY,EAAE,YAAY,EAAE,CAAC;IAC7B,mBAAmB,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;IAClD,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAClC;AAED,MAAM,WAAW,SAAU,SAAQ,iBAAiB;IACnD,GAAG,EAAE,MAAM,CAAC;CACZ;AAED,MAAM,WAAW,iBAAiB;IACjC,IAAI,EAAE,eAAe,CAAC;IACtB,IAAI,EAAE,MAAM,CAAC;CACb;AAED,MAAM,WAAW,SAAU,SAAQ,iBAAiB;IACnD,GAAG,EAAE,MAAM,CAAC;CACZ;AAED,MAAM,MAAM,mBAAmB,GAAG,SAAS,GAAG,qBAAqB,CAAC;AAEpE,MAAM,MAAM,8BAA8B,GAAG,mBAAmB,GAAG,SAAS,CAAC;AAE7E,MAAM,MAAM,oBAAoB,GAAG,SAAS,GAAG,SAAS,CAAC;AAEzD,MAAM,MAAM,YAAY,GAAG,CAAC,OAAO,EAAE,mBAAmB,EAAE,GAAG,oBAAoB,EAAE,CAAC,CAAC;AAErF,MAAM,WAAW,YAAY,CAAC,CAAC,SAAS,8BAA8B,GAAG,8BAA8B;IACtG,GAAG,EAAE,YAAY,CAAC;IAClB,SAAS,EAAE,CAAC,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,EAAE,OAAO,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,sBAAsB,CACtC,CAAC,SAAS,8BAA8B,GAAG,8BAA8B,CACxE,SAAQ,YAAY,CAAC,CAAC,CAAC;IACxB,cAAc,EAAE,YAAY,EAAE,CAAC;IAC/B,QAAQ,EAAE,YAAY,CAAC;CACvB;AAED,MAAM,MAAM,eAAe,GAAG;IAC7B,OAAO,EAAE,YAAY,CAAC,mBAAmB,CAAC;IAC1C,GAAG,YAAY,CAAC,oBAAoB,CAAC,EAAE;CACvC,CAAC"}
package/dist/utils.d.ts CHANGED
@@ -3,3 +3,4 @@ export declare const wrapHttpPrefix: (str: string) => string;
3
3
  export declare const wrapAtprotoPrefix: (str: string) => string;
4
4
  export declare const normalizeOp: (op: t.CompatibleOperation) => t.Operation;
5
5
  export declare const isSignedOperationValid: (allowedKeys: t.DidKeyString[], op: t.CompatibleOperationOrTombstone) => Promise<t.DidKeyString | null>;
6
+ //# sourceMappingURL=utils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../lib/utils.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,CAAC,MAAM,YAAY,CAAC;AAEhC,eAAO,MAAM,cAAc,GAAI,KAAK,MAAM,KAAG,MAM5C,CAAC;AAEF,eAAO,MAAM,iBAAiB,GAAI,KAAK,MAAM,KAAG,MAQ/C,CAAC;AAEF,eAAO,MAAM,WAAW,GAAI,IAAI,CAAC,CAAC,mBAAmB,KAAG,CAAC,CAAC,SAqBzD,CAAC;AAEF,eAAO,MAAM,sBAAsB,GAClC,aAAa,CAAC,CAAC,YAAY,EAAE,EAC7B,IAAI,CAAC,CAAC,8BAA8B,KAClC,OAAO,CAAC,CAAC,CAAC,YAAY,GAAG,IAAI,CAe/B,CAAC"}
package/lib/data.ts CHANGED
@@ -1,5 +1,6 @@
1
1
  import * as CBOR from '@atcute/cbor';
2
2
  import * as CID from '@atcute/cid';
3
+ import { isKeyDid } from '@atcute/identity';
3
4
  import { toBase32 } from '@atcute/multibase';
4
5
  import { toSha256 } from '@atcute/uint8array';
5
6
 
@@ -8,6 +9,122 @@ import * as err from './errors.js';
8
9
  import * as t from './types.js';
9
10
  import { isSignedOperationValid, normalizeOp } from './utils.js';
10
11
 
12
+ // soft constraint limits for incoming operations
13
+ const MAX_OP_BYTES = 4000;
14
+ const MAX_AKA_ENTRIES = 10;
15
+ const MAX_AKA_LENGTH = 258; // max handle length (253) plus at:// prefix (5)
16
+ const MAX_ROTATION_ENTRIES = 10;
17
+ const MAX_SERVICE_ENTRIES = 10;
18
+ const MAX_SERVICE_TYPE_LENGTH = 256;
19
+ const MAX_SERVICE_ENDPOINT_LENGTH = 512;
20
+ const MAX_VERIFICATION_METHOD_ENTRIES = 10;
21
+ const MAX_ID_LENGTH = 32;
22
+ const MAX_DID_KEY_LENGTH = 256; // k256 = 57, BLS12-381 = 143
23
+
24
+ /**
25
+ * Validate an incoming operation against soft constraints (length limits, counts, duplicates).
26
+ * This should be used when preparing to submit a new operation to plc.directory.
27
+ * Historical operations should only be validated against hard constraints (structure, signatures, hashes).
28
+ */
29
+ export const validateIncomingOp = (op: t.CompatibleOperationOrTombstone): void => {
30
+ // Check CBOR size limit
31
+ const byteLength = CBOR.encode(op).byteLength;
32
+ if (byteLength > MAX_OP_BYTES) {
33
+ throw new Error(`operation too large (${MAX_OP_BYTES} bytes maximum in cbor encoding)`);
34
+ }
35
+
36
+ if (op.type === 'plc_tombstone') {
37
+ return;
38
+ }
39
+
40
+ op = normalizeOp(op);
41
+
42
+ {
43
+ const alsoKnownAs = op.alsoKnownAs;
44
+
45
+ if (alsoKnownAs.length > MAX_AKA_ENTRIES) {
46
+ throw new Error(`too many alsoKnownAs entries (max ${MAX_AKA_ENTRIES})`);
47
+ }
48
+
49
+ const alsoKnownAsDupe = new Set<string>();
50
+ for (const aka of alsoKnownAs) {
51
+ if (aka.length > MAX_AKA_LENGTH) {
52
+ throw new Error(`alsoKnownAs entry too long (max ${MAX_AKA_LENGTH}): ${aka}`);
53
+ }
54
+
55
+ if (alsoKnownAsDupe.has(aka)) {
56
+ throw new Error(`duplicate alsoKnownAs entry: ${aka}`);
57
+ }
58
+
59
+ alsoKnownAsDupe.add(aka);
60
+ }
61
+ }
62
+
63
+ {
64
+ const rotationKeys = op.rotationKeys;
65
+
66
+ if (rotationKeys.length === 0) {
67
+ throw new Error(`missing rotation keys`);
68
+ }
69
+
70
+ if (rotationKeys.length > MAX_ROTATION_ENTRIES) {
71
+ throw new Error(`too many rotationKey entries (max ${MAX_ROTATION_ENTRIES})`);
72
+ }
73
+
74
+ const rotationKeyDupe = new Set<string>();
75
+ for (const key of rotationKeys) {
76
+ if (rotationKeyDupe.has(key)) {
77
+ throw new Error(`duplicate rotation key: ${key}`);
78
+ }
79
+ rotationKeyDupe.add(key);
80
+ }
81
+ }
82
+
83
+ {
84
+ const services = Object.entries(op.services);
85
+
86
+ if (services.length > MAX_SERVICE_ENTRIES) {
87
+ throw new Error(`too many service entries (max ${MAX_SERVICE_ENTRIES})`);
88
+ }
89
+
90
+ for (const [id, service] of services) {
91
+ if (id.length > MAX_ID_LENGTH) {
92
+ throw new Error(`service id too long (max ${MAX_ID_LENGTH}): ${id}`);
93
+ }
94
+
95
+ if (service.type.length > MAX_SERVICE_TYPE_LENGTH) {
96
+ throw new Error(`service type too long (max ${MAX_SERVICE_TYPE_LENGTH})`);
97
+ }
98
+
99
+ if (service.endpoint.length > MAX_SERVICE_ENDPOINT_LENGTH) {
100
+ throw new Error(`service endpoint too long (max ${MAX_SERVICE_ENDPOINT_LENGTH})`);
101
+ }
102
+ }
103
+ }
104
+
105
+ {
106
+ const verificationMethods = Object.entries(op.verificationMethods);
107
+
108
+ if (verificationMethods.length > MAX_VERIFICATION_METHOD_ENTRIES) {
109
+ throw new Error(`too many verification method entries (max ${MAX_VERIFICATION_METHOD_ENTRIES})`);
110
+ }
111
+
112
+ for (const [id, key] of verificationMethods) {
113
+ if (id.length > MAX_ID_LENGTH) {
114
+ throw new Error(`verification method id too long (max ${MAX_ID_LENGTH}): ${id}`);
115
+ }
116
+
117
+ if (key.length > MAX_DID_KEY_LENGTH) {
118
+ throw new Error(`verification method key too long (max ${MAX_DID_KEY_LENGTH}): ${key}`);
119
+ }
120
+
121
+ if (!isKeyDid(key)) {
122
+ throw new Error(`invalid verification method key: ${key}`);
123
+ }
124
+ }
125
+ }
126
+ };
127
+
11
128
  /**
12
129
  * Process an indexed entry by validating it and integrating it into the canonical log.
13
130
  */
package/lib/typedefs.ts CHANGED
@@ -42,10 +42,8 @@ const _unsignedLegacyCreateOperation = v.object({
42
42
  prev: v.null(),
43
43
  signingKey: didKeyString,
44
44
  recoveryKey: didKeyString,
45
- handle: v.string().assert((input) => input.length <= 256, `handle too long (max 256 characters)`),
46
- service: v
47
- .string()
48
- .assert((input) => input.length <= 512, `service endpoint too long (max 512 characters)`),
45
+ handle: v.string(),
46
+ service: v.string(),
49
47
  }) satisfies v.Type<t.UnsignedLegacyCreateOperation>;
50
48
 
51
49
  export const unsignedLegacyCreateOperation: v.Type<t.UnsignedLegacyCreateOperation> =
@@ -58,108 +56,17 @@ export const legacyCreateOperation: v.Type<t.LegacyCreateOperation> = _unsignedL
58
56
 
59
57
  // #region plc_operation
60
58
  export const service: v.Type<t.Service> = v.object({
61
- type: v.string().assert((input) => input.length <= 256, `service type too long (max 256 characters)`),
62
- endpoint: v
63
- .string()
64
- .assert((input) => input.length <= 512, `service endpoint too long (max 512 characters)`),
59
+ type: v.string(),
60
+ endpoint: v.string(),
65
61
  });
66
62
 
67
63
  const _unsignedOperation = v.object({
68
64
  type: v.literal('plc_operation'),
69
65
  prev: v.string().nullable(),
70
- rotationKeys: v.array(didKeyString).chain((input) => {
71
- const length = input.length;
72
-
73
- if (length === 0) {
74
- return v.err(`missing rotation keys`);
75
- } else if (length > 10) {
76
- return v.err(`too many rotation keys (max 10 keys)`);
77
- }
78
-
79
- for (let i = 0; i < length; i++) {
80
- const key = input[i];
81
-
82
- for (let j = 0; j < i; j++) {
83
- if (input[j] === key) {
84
- return v.err({
85
- message: `duplicate "${key}" rotation key`,
86
- path: [i],
87
- });
88
- }
89
- }
90
- }
91
-
92
- return v.ok(input);
93
- }),
94
- verificationMethods: v.record(permissiveDidKeyString).chain((input) => {
95
- const length = Object.keys(input).length;
96
-
97
- if (length > 10) {
98
- return v.err(`too many verification method entries (max 10)`);
99
- }
100
-
101
- for (const id in input) {
102
- const key = input[id];
103
-
104
- if (id.length > 32) {
105
- return v.err({
106
- message: `verification method id too long (max 32 characters)`,
107
- path: [id],
108
- });
109
- }
110
-
111
- if (key.length > 256) {
112
- return v.err({
113
- message: `verification method key too long (max 256 characters)`,
114
- path: [id],
115
- });
116
- }
117
- }
118
-
119
- return v.ok(input);
120
- }),
121
- alsoKnownAs: v
122
- .array(v.string().assert((input) => input.length <= 256, `aka entry too long (max 256 characters)`))
123
- .chain((input) => {
124
- const length = input.length;
125
-
126
- if (length > 10) {
127
- return v.err(`too many aka entries (max 10)`);
128
- }
129
-
130
- for (let i = 0; i < length; i++) {
131
- const aka = input[i];
132
-
133
- for (let j = 0; j < i; j++) {
134
- if (input[j] === aka) {
135
- return v.err({
136
- message: `duplicate "${aka}" aka entry`,
137
- path: [i],
138
- });
139
- }
140
- }
141
- }
142
-
143
- return v.ok(input);
144
- }),
145
- services: v.record(service).chain((input) => {
146
- const length = Object.keys(input).length;
147
-
148
- if (length > 10) {
149
- return v.err(`too many service entries (max 10)`);
150
- }
151
-
152
- for (const id in input) {
153
- if (id.length > 32) {
154
- return v.err({
155
- message: `service id too long (max 32 characters)`,
156
- path: [id],
157
- });
158
- }
159
- }
160
-
161
- return v.ok(input);
162
- }),
66
+ rotationKeys: v.array(didKeyString),
67
+ verificationMethods: v.record(permissiveDidKeyString),
68
+ alsoKnownAs: v.array(v.string()),
69
+ services: v.record(service),
163
70
  }) satisfies v.Type<t.UnsignedOperation>;
164
71
 
165
72
  export const unsignedOperation: v.Type<t.UnsignedOperation> = _unsignedOperation;
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "type": "module",
3
3
  "name": "@atcute/did-plc",
4
- "version": "0.1.6",
4
+ "version": "0.2.0",
5
5
  "description": "validations, type definitions and schemas for did:plc operations",
6
6
  "keywords": [
7
7
  "atproto",
@@ -24,17 +24,17 @@
24
24
  },
25
25
  "sideEffects": false,
26
26
  "devDependencies": {
27
- "@types/bun": "^1.2.15"
27
+ "@types/bun": "^1.3.1"
28
28
  },
29
29
  "dependencies": {
30
- "@badrap/valita": "^0.4.5",
31
- "@atcute/cbor": "^2.2.4",
32
- "@atcute/cid": "^2.2.3",
33
- "@atcute/crypto": "^2.2.3",
34
- "@atcute/identity": "^1.0.3",
35
- "@atcute/lexicons": "^1.0.4",
36
- "@atcute/multibase": "^1.1.4",
37
- "@atcute/uint8array": "^1.0.3"
30
+ "@badrap/valita": "^0.4.6",
31
+ "@atcute/cbor": "^2.2.7",
32
+ "@atcute/cid": "^2.2.6",
33
+ "@atcute/crypto": "^2.2.6",
34
+ "@atcute/identity": "^1.1.1",
35
+ "@atcute/lexicons": "^1.2.2",
36
+ "@atcute/multibase": "^1.1.6",
37
+ "@atcute/uint8array": "^1.0.5"
38
38
  },
39
39
  "scripts": {
40
40
  "build": "tsc --project tsconfig.build.json",