@ai-pip/core 0.3.0 → 0.5.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.
- package/CHANGELOG.md +74 -1
- package/README.md +52 -1037
- package/dist/AAL/index.d.ts +4 -4
- package/dist/AAL/index.d.ts.map +1 -1
- package/dist/AAL/index.js +2 -2
- package/dist/AAL/index.js.map +1 -1
- package/dist/AAL/process/buildDecisionReason.d.ts.map +1 -1
- package/dist/AAL/process/buildDecisionReason.js +2 -4
- package/dist/AAL/process/buildDecisionReason.js.map +1 -1
- package/dist/AAL/process/buildRemediationPlan.d.ts +22 -0
- package/dist/AAL/process/buildRemediationPlan.d.ts.map +1 -0
- package/dist/AAL/process/buildRemediationPlan.js +81 -0
- package/dist/AAL/process/buildRemediationPlan.js.map +1 -0
- package/dist/AAL/process/index.d.ts +2 -3
- package/dist/AAL/process/index.d.ts.map +1 -1
- package/dist/AAL/process/index.js +2 -2
- package/dist/AAL/process/index.js.map +1 -1
- package/dist/AAL/process/resolveAgentAction.d.ts.map +1 -1
- package/dist/AAL/process/resolveAgentAction.js +3 -14
- package/dist/AAL/process/resolveAgentAction.js.map +1 -1
- package/dist/AAL/process/validatePolicy.d.ts +20 -0
- package/dist/AAL/process/validatePolicy.d.ts.map +1 -0
- package/dist/AAL/process/validatePolicy.js +40 -0
- package/dist/AAL/process/validatePolicy.js.map +1 -0
- package/dist/AAL/types.d.ts +18 -35
- package/dist/AAL/types.d.ts.map +1 -1
- package/dist/index.d.ts +6 -6
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +4 -4
- package/dist/index.js.map +1 -1
- package/dist/isl/detect/detect.js +19 -19
- package/dist/isl/detect/detect.js.map +1 -1
- package/dist/isl/index.d.ts +2 -0
- package/dist/isl/index.d.ts.map +1 -1
- package/dist/isl/index.js +2 -0
- package/dist/isl/index.js.map +1 -1
- package/dist/isl/process/buildISLResult.d.ts +3 -1
- package/dist/isl/process/buildISLResult.d.ts.map +1 -1
- package/dist/isl/process/buildISLResult.js +3 -1
- package/dist/isl/process/buildISLResult.js.map +1 -1
- package/dist/isl/sanitize.d.ts.map +1 -1
- package/dist/isl/sanitize.js +15 -3
- package/dist/isl/sanitize.js.map +1 -1
- package/dist/isl/tags/index.d.ts +19 -0
- package/dist/isl/tags/index.d.ts.map +1 -0
- package/dist/isl/tags/index.js +17 -0
- package/dist/isl/tags/index.js.map +1 -0
- package/dist/isl/tags/namespace.d.ts +18 -0
- package/dist/isl/tags/namespace.d.ts.map +1 -0
- package/dist/isl/tags/namespace.js +18 -0
- package/dist/isl/tags/namespace.js.map +1 -0
- package/dist/isl/tags/serializer.d.ts +39 -0
- package/dist/isl/tags/serializer.d.ts.map +1 -0
- package/dist/isl/tags/serializer.js +45 -0
- package/dist/isl/tags/serializer.js.map +1 -0
- package/dist/isl/tags/tag-registry.d.ts +15 -0
- package/dist/isl/tags/tag-registry.d.ts.map +1 -0
- package/dist/isl/tags/tag-registry.js +17 -0
- package/dist/isl/tags/tag-registry.js.map +1 -0
- package/dist/isl/tags/threat-tag-type.d.ts +13 -0
- package/dist/isl/tags/threat-tag-type.d.ts.map +1 -0
- package/dist/isl/tags/threat-tag-type.js +9 -0
- package/dist/isl/tags/threat-tag-type.js.map +1 -0
- package/dist/isl/tags/threat-tag.d.ts +32 -0
- package/dist/isl/tags/threat-tag.d.ts.map +1 -0
- package/dist/isl/tags/threat-tag.js +43 -0
- package/dist/isl/tags/threat-tag.js.map +1 -0
- package/dist/isl/types.d.ts +13 -0
- package/dist/isl/types.d.ts.map +1 -1
- package/dist/shared/audit.d.ts +16 -18
- package/dist/shared/audit.d.ts.map +1 -1
- package/dist/shared/audit.js +27 -31
- package/dist/shared/audit.js.map +1 -1
- package/dist/shared/envelope/envelope.d.ts +23 -0
- package/dist/shared/envelope/envelope.d.ts.map +1 -0
- package/dist/{cpe → shared/envelope}/envelope.js +9 -21
- package/dist/shared/envelope/envelope.js.map +1 -0
- package/dist/{cpe → shared/envelope}/exceptions/EnvelopeError.d.ts +1 -1
- package/dist/shared/envelope/exceptions/EnvelopeError.d.ts.map +1 -0
- package/dist/{cpe → shared/envelope}/exceptions/EnvelopeError.js +1 -1
- package/dist/shared/envelope/exceptions/EnvelopeError.js.map +1 -0
- package/dist/shared/envelope/exceptions/index.d.ts +2 -0
- package/dist/shared/envelope/exceptions/index.d.ts.map +1 -0
- package/dist/shared/envelope/exceptions/index.js +2 -0
- package/dist/shared/envelope/exceptions/index.js.map +1 -0
- package/dist/shared/envelope/index.d.ts +18 -0
- package/dist/shared/envelope/index.d.ts.map +1 -0
- package/dist/shared/envelope/index.js +15 -0
- package/dist/shared/envelope/index.js.map +1 -0
- package/dist/shared/envelope/types.d.ts +45 -0
- package/dist/shared/envelope/types.d.ts.map +1 -0
- package/dist/shared/envelope/types.js +10 -0
- package/dist/shared/envelope/types.js.map +1 -0
- package/dist/shared/envelope/value-objects/Metadata.d.ts +27 -0
- package/dist/shared/envelope/value-objects/Metadata.d.ts.map +1 -0
- package/dist/{cpe → shared/envelope}/value-objects/Metadata.js +11 -19
- package/dist/shared/envelope/value-objects/Metadata.js.map +1 -0
- package/dist/shared/envelope/value-objects/Nonce.d.ts +26 -0
- package/dist/shared/envelope/value-objects/Nonce.d.ts.map +1 -0
- package/dist/{cpe → shared/envelope}/value-objects/Nonce.js +11 -17
- package/dist/shared/envelope/value-objects/Nonce.js.map +1 -0
- package/dist/shared/envelope/value-objects/Signature.d.ts +28 -0
- package/dist/shared/envelope/value-objects/Signature.d.ts.map +1 -0
- package/dist/shared/envelope/value-objects/Signature.js +50 -0
- package/dist/shared/envelope/value-objects/Signature.js.map +1 -0
- package/dist/{cpe → shared/envelope}/value-objects/index.d.ts +1 -1
- package/dist/shared/envelope/value-objects/index.d.ts.map +1 -0
- package/dist/{cpe → shared/envelope}/value-objects/index.js +1 -1
- package/dist/shared/envelope/value-objects/index.js.map +1 -0
- package/dist/shared/index.d.ts +1 -1
- package/dist/shared/index.d.ts.map +1 -1
- package/package.json +8 -6
- package/dist/AAL/process/applyRemovalPlan.d.ts +0 -21
- package/dist/AAL/process/applyRemovalPlan.d.ts.map +0 -1
- package/dist/AAL/process/applyRemovalPlan.js +0 -150
- package/dist/AAL/process/applyRemovalPlan.js.map +0 -1
- package/dist/AAL/process/buildRemovalPlan.d.ts +0 -39
- package/dist/AAL/process/buildRemovalPlan.d.ts.map +0 -1
- package/dist/AAL/process/buildRemovalPlan.js +0 -104
- package/dist/AAL/process/buildRemovalPlan.js.map +0 -1
- package/dist/cpe/envelope.d.ts +0 -34
- package/dist/cpe/envelope.d.ts.map +0 -1
- package/dist/cpe/envelope.js.map +0 -1
- package/dist/cpe/exceptions/EnvelopeError.d.ts.map +0 -1
- package/dist/cpe/exceptions/EnvelopeError.js.map +0 -1
- package/dist/cpe/exceptions/index.d.ts +0 -5
- package/dist/cpe/exceptions/index.d.ts.map +0 -1
- package/dist/cpe/exceptions/index.js +0 -5
- package/dist/cpe/exceptions/index.js.map +0 -1
- package/dist/cpe/index.d.ts +0 -24
- package/dist/cpe/index.d.ts.map +0 -1
- package/dist/cpe/index.js +0 -26
- package/dist/cpe/index.js.map +0 -1
- package/dist/cpe/types.d.ts +0 -58
- package/dist/cpe/types.d.ts.map +0 -1
- package/dist/cpe/types.js +0 -5
- package/dist/cpe/types.js.map +0 -1
- package/dist/cpe/utils.d.ts +0 -38
- package/dist/cpe/utils.d.ts.map +0 -1
- package/dist/cpe/utils.js +0 -47
- package/dist/cpe/utils.js.map +0 -1
- package/dist/cpe/value-objects/Metadata.d.ts +0 -32
- package/dist/cpe/value-objects/Metadata.d.ts.map +0 -1
- package/dist/cpe/value-objects/Metadata.js.map +0 -1
- package/dist/cpe/value-objects/Nonce.d.ts +0 -33
- package/dist/cpe/value-objects/Nonce.d.ts.map +0 -1
- package/dist/cpe/value-objects/Nonce.js.map +0 -1
- package/dist/cpe/value-objects/Signature.d.ts +0 -39
- package/dist/cpe/value-objects/Signature.d.ts.map +0 -1
- package/dist/cpe/value-objects/Signature.js +0 -60
- package/dist/cpe/value-objects/Signature.js.map +0 -1
- package/dist/cpe/value-objects/index.d.ts.map +0 -1
- package/dist/cpe/value-objects/index.js.map +0 -1
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"buildRemovalPlan.d.ts","sourceRoot":"","sources":["../../../src/AAL/process/buildRemovalPlan.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAA;AACrD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAA;AAC9C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAA;AACrD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAA;AAGnD;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,oBAAoB,EAAE,SAAS,kBAAkB,EAAE,CAAA;IAC5D,QAAQ,CAAC,YAAY,EAAE,OAAO,CAAA;IAC9B,QAAQ,CAAC,cAAc,EAAE,OAAO,CAAA;CACjC;AA0CD;;;;;;;GAOG;AACH,wBAAgB,gBAAgB,CAC9B,SAAS,EAAE,SAAS,EACpB,MAAM,EAAE,WAAW,GAClB,WAAW,CAoBb;AAWD;;;;;;;GAOG;AACH,wBAAgB,0BAA0B,CACxC,SAAS,EAAE,SAAS,EACpB,MAAM,EAAE,WAAW,GAClB,WAAW,CAmBb"}
|
|
@@ -1,104 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* buildRemovalPlan - Builds a plan for instruction removal
|
|
3
|
-
*
|
|
4
|
-
* @remarks
|
|
5
|
-
* Two entry points:
|
|
6
|
-
* - buildRemovalPlan(islSignal, policy): from signal only; no segmentId (descriptive).
|
|
7
|
-
* - buildRemovalPlanFromResult(islResult, policy): from result; includes segmentId for applyRemovalPlan.
|
|
8
|
-
*/
|
|
9
|
-
function mapDetectionToRemovedInstruction(detection, segmentId) {
|
|
10
|
-
return {
|
|
11
|
-
type: detection.pattern_type,
|
|
12
|
-
pattern: detection.matched_pattern,
|
|
13
|
-
position: detection.position,
|
|
14
|
-
description: `Detected ${detection.pattern_type} pattern with confidence ${detection.confidence.toFixed(3)}`,
|
|
15
|
-
...(segmentId != null && { segmentId })
|
|
16
|
-
};
|
|
17
|
-
}
|
|
18
|
-
const EMPTY_PLAN_DISABLED = Object.freeze({
|
|
19
|
-
instructionsToRemove: Object.freeze([]),
|
|
20
|
-
shouldRemove: false,
|
|
21
|
-
removalEnabled: false
|
|
22
|
-
});
|
|
23
|
-
const EMPTY_PLAN_NO_THREATS = Object.freeze({
|
|
24
|
-
instructionsToRemove: Object.freeze([]),
|
|
25
|
-
shouldRemove: false,
|
|
26
|
-
removalEnabled: true
|
|
27
|
-
});
|
|
28
|
-
function assertPolicyForRemoval(policy) {
|
|
29
|
-
if (policy == null || typeof policy !== 'object') {
|
|
30
|
-
throw new TypeError('AAL buildRemovalPlan: policy must be a non-null object');
|
|
31
|
-
}
|
|
32
|
-
const r = policy.removal;
|
|
33
|
-
if (r == null || typeof r !== 'object' || typeof r.enabled !== 'boolean') {
|
|
34
|
-
throw new TypeError('AAL buildRemovalPlan: policy.removal.enabled must be a boolean');
|
|
35
|
-
}
|
|
36
|
-
}
|
|
37
|
-
function assertISLSignalForRemoval(signal) {
|
|
38
|
-
if (signal == null || typeof signal !== 'object') {
|
|
39
|
-
throw new TypeError('AAL buildRemovalPlan: islSignal must be a non-null object');
|
|
40
|
-
}
|
|
41
|
-
}
|
|
42
|
-
/**
|
|
43
|
-
* Builds a plan for instruction removal from ISL signal (no segment ids).
|
|
44
|
-
* Use when you only have the signal; plan is descriptive. For actionable removal use buildRemovalPlanFromResult.
|
|
45
|
-
*
|
|
46
|
-
* @param islSignal - ISL signal with detections
|
|
47
|
-
* @param policy - Agent policy
|
|
48
|
-
* @returns RemovalPlan with instructions to remove (no segmentId)
|
|
49
|
-
*/
|
|
50
|
-
export function buildRemovalPlan(islSignal, policy) {
|
|
51
|
-
assertPolicyForRemoval(policy);
|
|
52
|
-
assertISLSignalForRemoval(islSignal);
|
|
53
|
-
if (!policy.removal.enabled)
|
|
54
|
-
return EMPTY_PLAN_DISABLED;
|
|
55
|
-
if (!islSignal.hasThreats)
|
|
56
|
-
return EMPTY_PLAN_NO_THREATS;
|
|
57
|
-
const detections = islSignal.piDetection?.detections;
|
|
58
|
-
if (!Array.isArray(detections) || detections.length === 0) {
|
|
59
|
-
return EMPTY_PLAN_NO_THREATS;
|
|
60
|
-
}
|
|
61
|
-
const instructionsToRemove = detections.map((d) => mapDetectionToRemovedInstruction(d));
|
|
62
|
-
return {
|
|
63
|
-
instructionsToRemove: Object.freeze(instructionsToRemove),
|
|
64
|
-
shouldRemove: instructionsToRemove.length > 0,
|
|
65
|
-
removalEnabled: true
|
|
66
|
-
};
|
|
67
|
-
}
|
|
68
|
-
function assertISLResultForRemoval(islResult) {
|
|
69
|
-
if (islResult == null || typeof islResult !== 'object') {
|
|
70
|
-
throw new TypeError('AAL buildRemovalPlanFromResult: islResult must be a non-null object');
|
|
71
|
-
}
|
|
72
|
-
if (!Array.isArray(islResult.segments)) {
|
|
73
|
-
throw new TypeError('AAL buildRemovalPlanFromResult: islResult.segments must be an array');
|
|
74
|
-
}
|
|
75
|
-
}
|
|
76
|
-
/**
|
|
77
|
-
* Builds a plan for instruction removal from ISL result (with segment ids).
|
|
78
|
-
* Use with applyRemovalPlan to produce content with malicious ranges removed.
|
|
79
|
-
*
|
|
80
|
-
* @param islResult - ISL result with segments and per-segment piDetection
|
|
81
|
-
* @param policy - Agent policy
|
|
82
|
-
* @returns RemovalPlan with instructions to remove (segmentId set per instruction)
|
|
83
|
-
*/
|
|
84
|
-
export function buildRemovalPlanFromResult(islResult, policy) {
|
|
85
|
-
assertPolicyForRemoval(policy);
|
|
86
|
-
assertISLResultForRemoval(islResult);
|
|
87
|
-
if (!policy.removal.enabled)
|
|
88
|
-
return EMPTY_PLAN_DISABLED;
|
|
89
|
-
const instructionsToRemove = [];
|
|
90
|
-
for (const segment of islResult.segments) {
|
|
91
|
-
const detections = segment.piDetection?.detections;
|
|
92
|
-
if (!Array.isArray(detections) || detections.length === 0)
|
|
93
|
-
continue;
|
|
94
|
-
for (const d of detections) {
|
|
95
|
-
instructionsToRemove.push(mapDetectionToRemovedInstruction(d, segment.id));
|
|
96
|
-
}
|
|
97
|
-
}
|
|
98
|
-
return {
|
|
99
|
-
instructionsToRemove: Object.freeze(instructionsToRemove),
|
|
100
|
-
shouldRemove: instructionsToRemove.length > 0,
|
|
101
|
-
removalEnabled: true
|
|
102
|
-
};
|
|
103
|
-
}
|
|
104
|
-
//# sourceMappingURL=buildRemovalPlan.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"buildRemovalPlan.js","sourceRoot":"","sources":["../../../src/AAL/process/buildRemovalPlan.ts"],"names":[],"mappings":"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"}
|
package/dist/cpe/envelope.d.ts
DELETED
|
@@ -1,34 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Genera el envoltorio criptográfico (CPEEvelope) - función pura principal de CPE
|
|
3
|
-
*
|
|
4
|
-
* @remarks
|
|
5
|
-
* Esta es la función principal de CPE. Genera un envoltorio criptográfico
|
|
6
|
-
* que garantiza la integridad y autenticidad del prompt procesado.
|
|
7
|
-
*
|
|
8
|
-
* **Funciones:**
|
|
9
|
-
* - Genera metadata de seguridad (timestamp, nonce, versión)
|
|
10
|
-
* - Firma criptográficamente el contenido con HMAC-SHA256
|
|
11
|
-
* - Encapsula el contenido sanitizado con metadata
|
|
12
|
-
* - Preserva el linaje completo para auditoría
|
|
13
|
-
*
|
|
14
|
-
* @param islResult - Resultado de ISL con contenido sanitizado
|
|
15
|
-
* @param secretKey - Clave secreta para HMAC (debe ser proporcionada por el SDK)
|
|
16
|
-
* @returns CPEResult con el envelope criptográfico
|
|
17
|
-
*
|
|
18
|
-
* @throws {EnvelopeError} Si la generación del envelope falla
|
|
19
|
-
*
|
|
20
|
-
* @example
|
|
21
|
-
* ```typescript
|
|
22
|
-
* const cpeResult = envelope(islResult, secretKey)
|
|
23
|
-
*
|
|
24
|
-
* // cpeResult.envelope contiene:
|
|
25
|
-
* // - content: contenido sanitizado serializado
|
|
26
|
-
* // - signature: firma HMAC-SHA256
|
|
27
|
-
* // - metadata: timestamp, nonce, versión
|
|
28
|
-
* // - lineage: linaje completo
|
|
29
|
-
* ```
|
|
30
|
-
*/
|
|
31
|
-
import type { ISLResult } from '../isl/types.js';
|
|
32
|
-
import type { CPEResult } from './types.js';
|
|
33
|
-
export declare function envelope(islResult: ISLResult, secretKey: string): CPEResult;
|
|
34
|
-
//# sourceMappingURL=envelope.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"envelope.d.ts","sourceRoot":"","sources":["../../src/cpe/envelope.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAChD,OAAO,KAAK,EAAc,SAAS,EAAE,MAAM,YAAY,CAAA;AAUvD,wBAAgB,QAAQ,CAAC,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,GAAG,SAAS,CAwE3E"}
|
package/dist/cpe/envelope.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"envelope.js","sourceRoot":"","sources":["../../src/cpe/envelope.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"EnvelopeError.d.ts","sourceRoot":"","sources":["../../../src/cpe/exceptions/EnvelopeError.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,qBAAa,aAAc,SAAQ,KAAK;aACO,KAAK,CAAC,EAAE,KAAK;gBAA9C,OAAO,EAAE,MAAM,EAAkB,KAAK,CAAC,EAAE,KAAK,YAAA;CAK3D"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"EnvelopeError.js","sourceRoot":"","sources":["../../../src/cpe/exceptions/EnvelopeError.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,OAAO,aAAc,SAAQ,KAAK;IACO;IAA7C,YAAY,OAAe,EAAkB,KAAa;QACxD,KAAK,CAAC,OAAO,CAAC,CAAA;QAD6B,UAAK,GAAL,KAAK,CAAQ;QAExD,IAAI,CAAC,IAAI,GAAG,eAAe,CAAA;QAC3B,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,aAAa,CAAC,SAAS,CAAC,CAAA;IACtD,CAAC;CACF"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/cpe/exceptions/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/cpe/exceptions/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA"}
|
package/dist/cpe/index.d.ts
DELETED
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* CPE (Cryptographic Prompt Envelope) - Core Semántico
|
|
3
|
-
*
|
|
4
|
-
* @remarks
|
|
5
|
-
* Este es el core semántico de CPE. Solo contiene:
|
|
6
|
-
* - Funciones puras (sin estado)
|
|
7
|
-
* - Value objects inmutables
|
|
8
|
-
* - Tipos y excepciones
|
|
9
|
-
*
|
|
10
|
-
* **Funciones principales:**
|
|
11
|
-
* - Generación de metadata de seguridad (timestamp, nonce, versión)
|
|
12
|
-
* - Firma criptográfica HMAC-SHA256
|
|
13
|
-
* - Construcción del envelope criptográfico
|
|
14
|
-
* - Preservación del linaje completo
|
|
15
|
-
*/
|
|
16
|
-
export { envelope } from './envelope.js';
|
|
17
|
-
export { createNonce, isValidNonce, equalsNonce } from './value-objects/Nonce.js';
|
|
18
|
-
export type { Nonce } from './value-objects/Nonce.js';
|
|
19
|
-
export { createMetadata, isValidMetadata, CURRENT_PROTOCOL_VERSION } from './value-objects/Metadata.js';
|
|
20
|
-
export { createSignature } from './value-objects/Signature.js';
|
|
21
|
-
export type { SignatureVO } from './value-objects/Signature.js';
|
|
22
|
-
export { EnvelopeError } from './exceptions/EnvelopeError.js';
|
|
23
|
-
export type { ProtocolVersion, Timestamp, NonceValue, SignatureAlgorithm, Signature, CPEMetadata, CPEEvelope, CPEResult } from './types.js';
|
|
24
|
-
//# sourceMappingURL=index.d.ts.map
|
package/dist/cpe/index.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/cpe/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAGH,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AAGxC,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAA;AACjF,YAAY,EAAE,KAAK,EAAE,MAAM,0BAA0B,CAAA;AACrD,OAAO,EAAE,cAAc,EAAE,eAAe,EAAE,wBAAwB,EAAE,MAAM,6BAA6B,CAAA;AACvG,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAA;AAC9D,YAAY,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAA;AAG/D,OAAO,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAA;AAG7D,YAAY,EACV,eAAe,EACf,SAAS,EACT,UAAU,EACV,kBAAkB,EAClB,SAAS,EACT,WAAW,EACX,UAAU,EACV,SAAS,EACV,MAAM,YAAY,CAAA"}
|
package/dist/cpe/index.js
DELETED
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* CPE (Cryptographic Prompt Envelope) - Core Semántico
|
|
3
|
-
*
|
|
4
|
-
* @remarks
|
|
5
|
-
* Este es el core semántico de CPE. Solo contiene:
|
|
6
|
-
* - Funciones puras (sin estado)
|
|
7
|
-
* - Value objects inmutables
|
|
8
|
-
* - Tipos y excepciones
|
|
9
|
-
*
|
|
10
|
-
* **Funciones principales:**
|
|
11
|
-
* - Generación de metadata de seguridad (timestamp, nonce, versión)
|
|
12
|
-
* - Firma criptográfica HMAC-SHA256
|
|
13
|
-
* - Construcción del envelope criptográfico
|
|
14
|
-
* - Preservación del linaje completo
|
|
15
|
-
*/
|
|
16
|
-
// Funciones puras principales
|
|
17
|
-
export { envelope } from './envelope.js';
|
|
18
|
-
// Value objects
|
|
19
|
-
export { createNonce, isValidNonce, equalsNonce } from './value-objects/Nonce.js';
|
|
20
|
-
export { createMetadata, isValidMetadata, CURRENT_PROTOCOL_VERSION } from './value-objects/Metadata.js';
|
|
21
|
-
export { createSignature } from './value-objects/Signature.js';
|
|
22
|
-
// Exceptions
|
|
23
|
-
export { EnvelopeError } from './exceptions/EnvelopeError.js';
|
|
24
|
-
// Serialización y verificación NO son core - van al SDK
|
|
25
|
-
// El core solo define la estructura del envelope, no implementa serialización
|
|
26
|
-
//# sourceMappingURL=index.js.map
|
package/dist/cpe/index.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cpe/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,8BAA8B;AAC9B,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AAExC,gBAAgB;AAChB,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAA;AAEjF,OAAO,EAAE,cAAc,EAAE,eAAe,EAAE,wBAAwB,EAAE,MAAM,6BAA6B,CAAA;AACvG,OAAO,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAA;AAG9D,aAAa;AACb,OAAO,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAA;AAc7D,wDAAwD;AACxD,8EAA8E"}
|
package/dist/cpe/types.d.ts
DELETED
|
@@ -1,58 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Types for CPE (Cryptographic Prompt Envelope) - Core Semántico
|
|
3
|
-
*/
|
|
4
|
-
import type { LineageEntry } from '../csl/value-objects/index.js';
|
|
5
|
-
/**
|
|
6
|
-
* ProtocolVersion - Versión del protocolo AI-PIP
|
|
7
|
-
*/
|
|
8
|
-
export type ProtocolVersion = string;
|
|
9
|
-
/**
|
|
10
|
-
* Timestamp - Timestamp Unix en milisegundos
|
|
11
|
-
*/
|
|
12
|
-
export type Timestamp = number;
|
|
13
|
-
/**
|
|
14
|
-
* NonceValue - Valor único para prevenir ataques de replay (string)
|
|
15
|
-
*/
|
|
16
|
-
export type NonceValue = string;
|
|
17
|
-
/**
|
|
18
|
-
* SignatureAlgorithm - Algoritmo de firma criptográfica
|
|
19
|
-
*/
|
|
20
|
-
export type SignatureAlgorithm = 'HMAC-SHA256';
|
|
21
|
-
/**
|
|
22
|
-
* Signature - Firma criptográfica del envelope
|
|
23
|
-
*/
|
|
24
|
-
export type Signature = string;
|
|
25
|
-
/**
|
|
26
|
-
* CPEMetadata - Metadata de seguridad del envelope
|
|
27
|
-
* Según especificación: timestamp, nonce, protocolVersion, previousSignatures opcionales
|
|
28
|
-
*/
|
|
29
|
-
export interface CPEMetadata {
|
|
30
|
-
readonly timestamp: Timestamp;
|
|
31
|
-
readonly nonce: NonceValue;
|
|
32
|
-
readonly protocolVersion: ProtocolVersion;
|
|
33
|
-
readonly previousSignatures?: {
|
|
34
|
-
readonly csl?: string | undefined;
|
|
35
|
-
readonly isl?: string | undefined;
|
|
36
|
-
} | undefined;
|
|
37
|
-
}
|
|
38
|
-
/**
|
|
39
|
-
* CPEEvelope - Envoltorio criptográfico completo
|
|
40
|
-
* Según especificación: payload, metadata, signature (value + algorithm), lineage
|
|
41
|
-
*/
|
|
42
|
-
export interface CPEEvelope {
|
|
43
|
-
readonly payload: unknown;
|
|
44
|
-
readonly metadata: CPEMetadata;
|
|
45
|
-
readonly signature: {
|
|
46
|
-
readonly value: string;
|
|
47
|
-
readonly algorithm: string;
|
|
48
|
-
};
|
|
49
|
-
readonly lineage: readonly LineageEntry[];
|
|
50
|
-
}
|
|
51
|
-
/**
|
|
52
|
-
* CPEResult - Resultado de la generación del envelope
|
|
53
|
-
*/
|
|
54
|
-
export interface CPEResult {
|
|
55
|
-
readonly envelope: CPEEvelope;
|
|
56
|
-
readonly processingTimeMs?: number;
|
|
57
|
-
}
|
|
58
|
-
//# sourceMappingURL=types.d.ts.map
|
package/dist/cpe/types.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/cpe/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAA;AAEjE;;GAEG;AACH,MAAM,MAAM,eAAe,GAAG,MAAM,CAAA;AAEpC;;GAEG;AACH,MAAM,MAAM,SAAS,GAAG,MAAM,CAAA;AAE9B;;GAEG;AACH,MAAM,MAAM,UAAU,GAAG,MAAM,CAAA;AAE/B;;GAEG;AACH,MAAM,MAAM,kBAAkB,GAAG,aAAa,CAAA;AAE9C;;GAEG;AACH,MAAM,MAAM,SAAS,GAAG,MAAM,CAAA;AAE9B;;;GAGG;AACH,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,SAAS,EAAE,SAAS,CAAA;IAC7B,QAAQ,CAAC,KAAK,EAAE,UAAU,CAAA;IAC1B,QAAQ,CAAC,eAAe,EAAE,eAAe,CAAA;IACzC,QAAQ,CAAC,kBAAkB,CAAC,EAAE;QAC5B,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;QACjC,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;KAClC,GAAG,SAAS,CAAA;CACd;AAED;;;GAGG;AACH,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAA;IACzB,QAAQ,CAAC,QAAQ,EAAE,WAAW,CAAA;IAC9B,QAAQ,CAAC,SAAS,EAAE;QAClB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;QACtB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;KAC3B,CAAA;IACD,QAAQ,CAAC,OAAO,EAAE,SAAS,YAAY,EAAE,CAAA;CAC1C;AAED;;GAEG;AACH,MAAM,WAAW,SAAS;IACxB,QAAQ,CAAC,QAAQ,EAAE,UAAU,CAAA;IAC7B,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAA;CACnC"}
|
package/dist/cpe/types.js
DELETED
package/dist/cpe/types.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/cpe/types.ts"],"names":[],"mappings":"AAAA;;GAEG"}
|
package/dist/cpe/utils.d.ts
DELETED
|
@@ -1,38 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Utilidades puras para CPE
|
|
3
|
-
*/
|
|
4
|
-
/**
|
|
5
|
-
* Serializa el contenido sanitizado de ISL para firma
|
|
6
|
-
*
|
|
7
|
-
* @param segments - Segmentos sanitizados
|
|
8
|
-
* @returns Contenido serializado
|
|
9
|
-
*/
|
|
10
|
-
export declare function serializeContent(segments: readonly {
|
|
11
|
-
readonly sanitizedContent: string;
|
|
12
|
-
}[]): string;
|
|
13
|
-
/**
|
|
14
|
-
* Serializa metadata para firma
|
|
15
|
-
*
|
|
16
|
-
* @param metadata - Metadata a serializar
|
|
17
|
-
* @returns Metadata serializada
|
|
18
|
-
*/
|
|
19
|
-
export declare function serializeMetadata(metadata: {
|
|
20
|
-
readonly timestamp: number;
|
|
21
|
-
readonly nonce: string;
|
|
22
|
-
readonly protocolVersion: string;
|
|
23
|
-
readonly previousSignatures?: {
|
|
24
|
-
readonly csl?: string | undefined;
|
|
25
|
-
readonly isl?: string | undefined;
|
|
26
|
-
} | undefined;
|
|
27
|
-
}): string;
|
|
28
|
-
/**
|
|
29
|
-
* Genera el contenido completo para firma
|
|
30
|
-
* Según spec: contenido procesado + metadata + identificador del algoritmo
|
|
31
|
-
*
|
|
32
|
-
* @param content - Contenido serializado (payload semántico)
|
|
33
|
-
* @param metadata - Metadata serializada
|
|
34
|
-
* @param algorithm - Identificador del algoritmo de firma
|
|
35
|
-
* @returns Contenido completo para firma
|
|
36
|
-
*/
|
|
37
|
-
export declare function generateSignableContent(content: string, metadata: string, algorithm: string): string;
|
|
38
|
-
//# sourceMappingURL=utils.d.ts.map
|
package/dist/cpe/utils.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/cpe/utils.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,SAAS;IAAE,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAA;CAAE,EAAE,GAAG,MAAM,CAInG;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE;IAC1C,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;IAC1B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;IACtB,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAA;IAChC,QAAQ,CAAC,kBAAkB,CAAC,EAAE;QAC5B,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;QACjC,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,SAAS,CAAA;KAClC,GAAG,SAAS,CAAA;CACd,GAAG,MAAM,CAgBT;AAED;;;;;;;;GAQG;AACH,wBAAgB,uBAAuB,CACrC,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,MAAM,GAChB,MAAM,CAER"}
|
package/dist/cpe/utils.js
DELETED
|
@@ -1,47 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Utilidades puras para CPE
|
|
3
|
-
*/
|
|
4
|
-
/**
|
|
5
|
-
* Serializa el contenido sanitizado de ISL para firma
|
|
6
|
-
*
|
|
7
|
-
* @param segments - Segmentos sanitizados
|
|
8
|
-
* @returns Contenido serializado
|
|
9
|
-
*/
|
|
10
|
-
export function serializeContent(segments) {
|
|
11
|
-
return segments
|
|
12
|
-
.map((segment, index) => `[${index}]:${segment.sanitizedContent}`)
|
|
13
|
-
.join('\n');
|
|
14
|
-
}
|
|
15
|
-
/**
|
|
16
|
-
* Serializa metadata para firma
|
|
17
|
-
*
|
|
18
|
-
* @param metadata - Metadata a serializar
|
|
19
|
-
* @returns Metadata serializada
|
|
20
|
-
*/
|
|
21
|
-
export function serializeMetadata(metadata) {
|
|
22
|
-
const parts = [
|
|
23
|
-
`timestamp:${metadata.timestamp}`,
|
|
24
|
-
`nonce:${metadata.nonce}`,
|
|
25
|
-
`version:${metadata.protocolVersion}`,
|
|
26
|
-
];
|
|
27
|
-
if (metadata.previousSignatures?.csl) {
|
|
28
|
-
parts.push(`csl:${metadata.previousSignatures.csl}`);
|
|
29
|
-
}
|
|
30
|
-
if (metadata.previousSignatures?.isl) {
|
|
31
|
-
parts.push(`isl:${metadata.previousSignatures.isl}`);
|
|
32
|
-
}
|
|
33
|
-
return parts.join('|');
|
|
34
|
-
}
|
|
35
|
-
/**
|
|
36
|
-
* Genera el contenido completo para firma
|
|
37
|
-
* Según spec: contenido procesado + metadata + identificador del algoritmo
|
|
38
|
-
*
|
|
39
|
-
* @param content - Contenido serializado (payload semántico)
|
|
40
|
-
* @param metadata - Metadata serializada
|
|
41
|
-
* @param algorithm - Identificador del algoritmo de firma
|
|
42
|
-
* @returns Contenido completo para firma
|
|
43
|
-
*/
|
|
44
|
-
export function generateSignableContent(content, metadata, algorithm) {
|
|
45
|
-
return `${metadata}\n---\n${content}\n---\nalgorithm:${algorithm}`;
|
|
46
|
-
}
|
|
47
|
-
//# sourceMappingURL=utils.js.map
|
package/dist/cpe/utils.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/cpe/utils.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH;;;;;GAKG;AACH,MAAM,UAAU,gBAAgB,CAAC,QAA0D;IACzF,OAAO,QAAQ;SACZ,GAAG,CAAC,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,KAAK,KAAK,OAAO,CAAC,gBAAgB,EAAE,CAAC;SACjE,IAAI,CAAC,IAAI,CAAC,CAAA;AACf,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,iBAAiB,CAAC,QAQjC;IACC,MAAM,KAAK,GAAG;QACZ,aAAa,QAAQ,CAAC,SAAS,EAAE;QACjC,SAAS,QAAQ,CAAC,KAAK,EAAE;QACzB,WAAW,QAAQ,CAAC,eAAe,EAAE;KACtC,CAAA;IAED,IAAI,QAAQ,CAAC,kBAAkB,EAAE,GAAG,EAAE,CAAC;QACrC,KAAK,CAAC,IAAI,CAAC,OAAO,QAAQ,CAAC,kBAAkB,CAAC,GAAG,EAAE,CAAC,CAAA;IACtD,CAAC;IAED,IAAI,QAAQ,CAAC,kBAAkB,EAAE,GAAG,EAAE,CAAC;QACrC,KAAK,CAAC,IAAI,CAAC,OAAO,QAAQ,CAAC,kBAAkB,CAAC,GAAG,EAAE,CAAC,CAAA;IACtD,CAAC;IAED,OAAO,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;AACxB,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,uBAAuB,CACrC,OAAe,EACf,QAAgB,EAChB,SAAiB;IAEjB,OAAO,GAAG,QAAQ,UAAU,OAAO,oBAAoB,SAAS,EAAE,CAAA;AACpE,CAAC"}
|
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* CPEMetadata - Metadata de seguridad del envelope
|
|
3
|
-
* Value Object puro e inmutable
|
|
4
|
-
*/
|
|
5
|
-
import type { CPEMetadata, ProtocolVersion, Timestamp } from '../types.js';
|
|
6
|
-
import type { Nonce as NonceVO } from './Nonce.js';
|
|
7
|
-
/**
|
|
8
|
-
* Versión actual del protocolo
|
|
9
|
-
*/
|
|
10
|
-
export declare const CURRENT_PROTOCOL_VERSION: ProtocolVersion;
|
|
11
|
-
/**
|
|
12
|
-
* Crea metadata de seguridad para el envelope
|
|
13
|
-
* Según especificación: timestamp, nonce, protocolVersion, previousSignatures opcionales
|
|
14
|
-
*
|
|
15
|
-
* @param timestamp - Timestamp Unix en milisegundos
|
|
16
|
-
* @param nonce - Nonce único
|
|
17
|
-
* @param protocolVersion - Versión del protocolo (default: CURRENT_PROTOCOL_VERSION)
|
|
18
|
-
* @param previousSignatures - Firmas opcionales de capas anteriores (csl, isl)
|
|
19
|
-
* @returns CPEMetadata inmutable
|
|
20
|
-
*/
|
|
21
|
-
export declare function createMetadata(timestamp: Timestamp, nonce: NonceVO, protocolVersion?: ProtocolVersion, previousSignatures?: {
|
|
22
|
-
csl?: string;
|
|
23
|
-
isl?: string;
|
|
24
|
-
}): CPEMetadata;
|
|
25
|
-
/**
|
|
26
|
-
* Valida que la metadata sea válida
|
|
27
|
-
*
|
|
28
|
-
* @param metadata - Metadata a validar
|
|
29
|
-
* @returns true si es válida
|
|
30
|
-
*/
|
|
31
|
-
export declare function isValidMetadata(metadata: CPEMetadata): boolean;
|
|
32
|
-
//# sourceMappingURL=Metadata.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Metadata.d.ts","sourceRoot":"","sources":["../../../src/cpe/value-objects/Metadata.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,eAAe,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AAC1E,OAAO,KAAK,EAAE,KAAK,IAAI,OAAO,EAAE,MAAM,YAAY,CAAA;AAElD;;GAEG;AACH,eAAO,MAAM,wBAAwB,EAAE,eAAyB,CAAA;AAEhE;;;;;;;;;GASG;AACH,wBAAgB,cAAc,CAC5B,SAAS,EAAE,SAAS,EACpB,KAAK,EAAE,OAAO,EACd,eAAe,GAAE,eAA0C,EAC3D,kBAAkB,CAAC,EAAE;IACnB,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,GAAG,CAAC,EAAE,MAAM,CAAA;CACb,GACA,WAAW,CA4Bb;AAED;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,QAAQ,EAAE,WAAW,GAAG,OAAO,CAS9D"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Metadata.js","sourceRoot":"","sources":["../../../src/cpe/value-objects/Metadata.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAKH;;GAEG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAoB,OAAO,CAAA;AAEhE;;;;;;;;;GASG;AACH,MAAM,UAAU,cAAc,CAC5B,SAAoB,EACpB,KAAc,EACd,kBAAmC,wBAAwB,EAC3D,kBAGC;IAED,oBAAoB;IACpB,IAAI,SAAS,IAAI,CAAC,EAAE,CAAC;QACnB,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAA;IACxD,CAAC;IAED,8EAA8E;IAC9E,MAAM,kBAAkB,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,EAAE,GAAG,IAAI,CAAA;IACrD,IAAI,SAAS,GAAG,kBAAkB,EAAE,CAAC;QACnC,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAA;IACtD,CAAC;IAED,gCAAgC;IAChC,IAAI,CAAC,eAAe,IAAI,OAAO,eAAe,KAAK,QAAQ,EAAE,CAAC;QAC5D,MAAM,IAAI,KAAK,CAAC,6CAA6C,CAAC,CAAA;IAChE,CAAC;IAED,OAAO,MAAM,CAAC,MAAM,CAAC;QACnB,SAAS;QACT,KAAK,EAAE,KAAK,CAAC,KAAK;QAClB,eAAe;QACf,kBAAkB,EAAE,kBAAkB;YACpC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC;gBACZ,GAAG,EAAE,kBAAkB,CAAC,GAAG,IAAI,SAAS;gBACxC,GAAG,EAAE,kBAAkB,CAAC,GAAG,IAAI,SAAS;aACzC,CAAC;YACJ,CAAC,CAAC,SAAS;KACd,CAAC,CAAA;AACJ,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,eAAe,CAAC,QAAqB;IACnD,IAAI,CAAC;QACH,IAAI,QAAQ,CAAC,SAAS,IAAI,CAAC;YAAE,OAAO,KAAK,CAAA;QACzC,IAAI,CAAC,QAAQ,CAAC,KAAK,IAAI,QAAQ,CAAC,KAAK,CAAC,MAAM,GAAG,EAAE;YAAE,OAAO,KAAK,CAAA;QAC/D,IAAI,CAAC,QAAQ,CAAC,eAAe;YAAE,OAAO,KAAK,CAAA;QAC3C,OAAO,IAAI,CAAA;IACb,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAA;IACd,CAAC;AACH,CAAC"}
|
|
@@ -1,33 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Nonce - Valor único para prevenir ataques de replay
|
|
3
|
-
* Value Object puro e inmutable
|
|
4
|
-
*/
|
|
5
|
-
/**
|
|
6
|
-
* Nonce - Valor único generado aleatoriamente
|
|
7
|
-
*/
|
|
8
|
-
export type Nonce = {
|
|
9
|
-
readonly value: string;
|
|
10
|
-
};
|
|
11
|
-
/**
|
|
12
|
-
* Genera un nonce único
|
|
13
|
-
*
|
|
14
|
-
* @param length - Longitud del nonce en bytes (default: 16)
|
|
15
|
-
* @returns Nonce único
|
|
16
|
-
*/
|
|
17
|
-
export declare function createNonce(length?: number): Nonce;
|
|
18
|
-
/**
|
|
19
|
-
* Valida que un string sea un nonce válido
|
|
20
|
-
*
|
|
21
|
-
* @param value - String a validar
|
|
22
|
-
* @returns true si es un nonce válido
|
|
23
|
-
*/
|
|
24
|
-
export declare function isValidNonce(value: string): boolean;
|
|
25
|
-
/**
|
|
26
|
-
* Compara dos nonces
|
|
27
|
-
*
|
|
28
|
-
* @param nonce1 - Primer nonce
|
|
29
|
-
* @param nonce2 - Segundo nonce
|
|
30
|
-
* @returns true si son iguales
|
|
31
|
-
*/
|
|
32
|
-
export declare function equalsNonce(nonce1: Nonce, nonce2: Nonce): boolean;
|
|
33
|
-
//# sourceMappingURL=Nonce.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Nonce.d.ts","sourceRoot":"","sources":["../../../src/cpe/value-objects/Nonce.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH;;GAEG;AACH,MAAM,MAAM,KAAK,GAAG;IAClB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;CACvB,CAAA;AAED;;;;;GAKG;AACH,wBAAgB,WAAW,CAAC,MAAM,GAAE,MAAW,GAAG,KAAK,CActD;AAED;;;;;GAKG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAEnD;AAED;;;;;;GAMG;AACH,wBAAgB,WAAW,CAAC,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,GAAG,OAAO,CAEjE"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Nonce.js","sourceRoot":"","sources":["../../../src/cpe/value-objects/Nonce.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAA;AASzC;;;;;GAKG;AACH,MAAM,UAAU,WAAW,CAAC,SAAiB,EAAE;IAC7C,IAAI,MAAM,GAAG,CAAC,EAAE,CAAC;QACf,MAAM,IAAI,KAAK,CAAC,uCAAuC,CAAC,CAAA;IAC1D,CAAC;IACD,IAAI,MAAM,GAAG,EAAE,EAAE,CAAC;QAChB,MAAM,IAAI,KAAK,CAAC,uCAAuC,CAAC,CAAA;IAC1D,CAAC;IAED,MAAM,KAAK,GAAG,WAAW,CAAC,MAAM,CAAC,CAAA;IACjC,MAAM,KAAK,GAAG,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAA;IAEnC,OAAO,MAAM,CAAC,MAAM,CAAC;QACnB,KAAK;KACN,CAAC,CAAA;AACJ,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,YAAY,CAAC,KAAa;IACxC,OAAO,qBAAqB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;AAC1C,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,WAAW,CAAC,MAAa,EAAE,MAAa;IACtD,OAAO,MAAM,CAAC,KAAK,KAAK,MAAM,CAAC,KAAK,CAAA;AACtC,CAAC"}
|
|
@@ -1,39 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Signature - Firma criptográfica HMAC-SHA256
|
|
3
|
-
* Value Object puro e inmutable
|
|
4
|
-
*/
|
|
5
|
-
import type { SignatureAlgorithm } from '../types.js';
|
|
6
|
-
/**
|
|
7
|
-
* Signature - Firma criptográfica
|
|
8
|
-
*/
|
|
9
|
-
export type SignatureVO = {
|
|
10
|
-
readonly value: string;
|
|
11
|
-
readonly algorithm: SignatureAlgorithm;
|
|
12
|
-
};
|
|
13
|
-
/**
|
|
14
|
-
* Genera una firma HMAC-SHA256 del contenido
|
|
15
|
-
*
|
|
16
|
-
* @param content - Contenido a firmar
|
|
17
|
-
* @param secretKey - Clave secreta para HMAC
|
|
18
|
-
* @returns Signature inmutable
|
|
19
|
-
*
|
|
20
|
-
* @throws {Error} Si la clave secreta está vacía
|
|
21
|
-
*/
|
|
22
|
-
export declare function createSignature(content: string, secretKey: string): SignatureVO;
|
|
23
|
-
/**
|
|
24
|
-
* Verifica una firma HMAC-SHA256
|
|
25
|
-
*
|
|
26
|
-
* @param content - Contenido original
|
|
27
|
-
* @param signature - Firma a verificar
|
|
28
|
-
* @param secretKey - Clave secreta para HMAC
|
|
29
|
-
* @returns true si la firma es válida
|
|
30
|
-
*/
|
|
31
|
-
export declare function verifySignature(content: string, signature: string, secretKey: string): boolean;
|
|
32
|
-
/**
|
|
33
|
-
* Valida el formato de una firma
|
|
34
|
-
*
|
|
35
|
-
* @param signature - Firma a validar
|
|
36
|
-
* @returns true si el formato es válido
|
|
37
|
-
*/
|
|
38
|
-
export declare function isValidSignatureFormat(signature: string): boolean;
|
|
39
|
-
//# sourceMappingURL=Signature.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Signature.d.ts","sourceRoot":"","sources":["../../../src/cpe/value-objects/Signature.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAA;AAErD;;GAEG;AACH,MAAM,MAAM,WAAW,GAAG;IACxB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;IACtB,QAAQ,CAAC,SAAS,EAAE,kBAAkB,CAAA;CACvC,CAAA;AAED;;;;;;;;GAQG;AACH,wBAAgB,eAAe,CAC7B,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,MAAM,GAChB,WAAW,CAiBb;AAED;;;;;;;GAOG;AACH,wBAAgB,eAAe,CAC7B,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,GAChB,OAAO,CAWT;AAED;;;;;GAKG;AACH,wBAAgB,sBAAsB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAGjE"}
|
|
@@ -1,60 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Signature - Firma criptográfica HMAC-SHA256
|
|
3
|
-
* Value Object puro e inmutable
|
|
4
|
-
*/
|
|
5
|
-
import { createHmac } from 'node:crypto';
|
|
6
|
-
/**
|
|
7
|
-
* Genera una firma HMAC-SHA256 del contenido
|
|
8
|
-
*
|
|
9
|
-
* @param content - Contenido a firmar
|
|
10
|
-
* @param secretKey - Clave secreta para HMAC
|
|
11
|
-
* @returns Signature inmutable
|
|
12
|
-
*
|
|
13
|
-
* @throws {Error} Si la clave secreta está vacía
|
|
14
|
-
*/
|
|
15
|
-
export function createSignature(content, secretKey) {
|
|
16
|
-
if (!secretKey || secretKey.length === 0) {
|
|
17
|
-
throw new Error('Secret key is required for signature generation');
|
|
18
|
-
}
|
|
19
|
-
if (typeof content !== 'string') {
|
|
20
|
-
throw new TypeError('Content must be a string');
|
|
21
|
-
}
|
|
22
|
-
const hmac = createHmac('sha256', secretKey);
|
|
23
|
-
hmac.update(content);
|
|
24
|
-
const signature = hmac.digest('hex');
|
|
25
|
-
return Object.freeze({
|
|
26
|
-
value: signature,
|
|
27
|
-
algorithm: 'HMAC-SHA256',
|
|
28
|
-
});
|
|
29
|
-
}
|
|
30
|
-
/**
|
|
31
|
-
* Verifica una firma HMAC-SHA256
|
|
32
|
-
*
|
|
33
|
-
* @param content - Contenido original
|
|
34
|
-
* @param signature - Firma a verificar
|
|
35
|
-
* @param secretKey - Clave secreta para HMAC
|
|
36
|
-
* @returns true si la firma es válida
|
|
37
|
-
*/
|
|
38
|
-
export function verifySignature(content, signature, secretKey) {
|
|
39
|
-
if (!secretKey || secretKey.length === 0) {
|
|
40
|
-
return false;
|
|
41
|
-
}
|
|
42
|
-
try {
|
|
43
|
-
const expectedSignature = createSignature(content, secretKey);
|
|
44
|
-
return expectedSignature.value === signature;
|
|
45
|
-
}
|
|
46
|
-
catch {
|
|
47
|
-
return false;
|
|
48
|
-
}
|
|
49
|
-
}
|
|
50
|
-
/**
|
|
51
|
-
* Valida el formato de una firma
|
|
52
|
-
*
|
|
53
|
-
* @param signature - Firma a validar
|
|
54
|
-
* @returns true si el formato es válido
|
|
55
|
-
*/
|
|
56
|
-
export function isValidSignatureFormat(signature) {
|
|
57
|
-
// HMAC-SHA256 produce un hash hexadecimal de 64 caracteres
|
|
58
|
-
return /^[a-f0-9]{64}$/i.test(signature);
|
|
59
|
-
}
|
|
60
|
-
//# sourceMappingURL=Signature.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Signature.js","sourceRoot":"","sources":["../../../src/cpe/value-objects/Signature.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AAWxC;;;;;;;;GAQG;AACH,MAAM,UAAU,eAAe,CAC7B,OAAe,EACf,SAAiB;IAEjB,IAAI,CAAC,SAAS,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACzC,MAAM,IAAI,KAAK,CAAC,iDAAiD,CAAC,CAAA;IACpE,CAAC;IAED,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;QAChC,MAAM,IAAI,SAAS,CAAC,0BAA0B,CAAC,CAAA;IACjD,CAAC;IAED,MAAM,IAAI,GAAG,UAAU,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAA;IAC5C,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;IACpB,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;IAEpC,OAAO,MAAM,CAAC,MAAM,CAAC;QACnB,KAAK,EAAE,SAAS;QAChB,SAAS,EAAE,aAAa;KACzB,CAAC,CAAA;AACJ,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,eAAe,CAC7B,OAAe,EACf,SAAiB,EACjB,SAAiB;IAEjB,IAAI,CAAC,SAAS,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACzC,OAAO,KAAK,CAAA;IACd,CAAC;IAED,IAAI,CAAC;QACH,MAAM,iBAAiB,GAAG,eAAe,CAAC,OAAO,EAAE,SAAS,CAAC,CAAA;QAC7D,OAAO,iBAAiB,CAAC,KAAK,KAAK,SAAS,CAAA;IAC9C,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAA;IACd,CAAC;AACH,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,sBAAsB,CAAC,SAAiB;IACtD,2DAA2D;IAC3D,OAAO,iBAAiB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;AAC1C,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/cpe/value-objects/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,YAAY,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AACvC,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,YAAY,CAAA;AACnE,OAAO,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,eAAe,CAAA;AAC/D,YAAY,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAA;AACjD,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAA"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/cpe/value-objects/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,YAAY,CAAA;AACnE,OAAO,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,eAAe,CAAA;AAE/D,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAA"}
|