@toon-protocol/connector 2.1.0 → 2.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.
- package/dist/btp/inbound-claim-validator.d.ts +4 -1
- package/dist/btp/inbound-claim-validator.d.ts.map +1 -1
- package/dist/btp/inbound-claim-validator.js +23 -3
- package/dist/btp/inbound-claim-validator.js.map +1 -1
- package/dist/config/config-loader.d.ts.map +1 -1
- package/dist/config/config-loader.js +1 -0
- package/dist/config/config-loader.js.map +1 -1
- package/dist/config/types.d.ts +4 -0
- package/dist/config/types.d.ts.map +1 -1
- package/dist/config/types.js.map +1 -1
- package/dist/core/connector-node.d.ts.map +1 -1
- package/dist/core/connector-node.js +23 -4
- package/dist/core/connector-node.js.map +1 -1
- package/dist/core/packet-handler.d.ts +10 -1
- package/dist/core/packet-handler.d.ts.map +1 -1
- package/dist/core/packet-handler.js +67 -2
- package/dist/core/packet-handler.js.map +1 -1
- package/dist/settlement/claim-receiver.d.ts +5 -1
- package/dist/settlement/claim-receiver.d.ts.map +1 -1
- package/dist/settlement/claim-receiver.js +28 -1
- package/dist/settlement/claim-receiver.js.map +1 -1
- package/dist/settlement/per-packet-claim-service.d.ts +6 -1
- package/dist/settlement/per-packet-claim-service.d.ts.map +1 -1
- package/dist/settlement/per-packet-claim-service.js +38 -8
- package/dist/settlement/per-packet-claim-service.js.map +1 -1
- package/dist/settlement/privacy/nip59-claim-wrapper.d.ts +10 -0
- package/dist/settlement/privacy/nip59-claim-wrapper.d.ts.map +1 -1
- package/dist/settlement/privacy/nip59-claim-wrapper.js +110 -2
- package/dist/settlement/privacy/nip59-claim-wrapper.js.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"nip59-claim-wrapper.d.ts","sourceRoot":"","sources":["../../../src/settlement/privacy/nip59-claim-wrapper.ts"],"names":[],"mappings":"AA4BA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAYjE,MAAM,WAAW,YAAY;IAE3B,kBAAkB,EAAE,MAAM,CAAC;IAE3B,gBAAgB,EAAE,MAAM,CAAC;IAEzB,SAAS,EAAE,MAAM,CAAC;IAElB,OAAO,EAAE,KAAK,CAAC;CAChB;AAKD,eAAO,MAAM,0BAA0B;;;;CAI7B,CAAC;AAYX,qBAAa,cAAe,SAAQ,KAAK;IACvC,SAAkB,IAAI,oBAAoB;gBAE9B,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,OAAO,CAAA;KAAE;CAI3D;AAoBD,UAAU,MAAM;IACd,IAAI,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IACtD,IAAI,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IACtD,KAAK,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IACvD,KAAK,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IACvD,KAAK,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAAC;CAClD;AAOD,MAAM,WAAW,wBAAwB;IAEvC,YAAY,EAAE,OAAO,CAAC;IAEtB,MAAM,EAAE,MAAM,CAAC;CAChB;
|
|
1
|
+
{"version":3,"file":"nip59-claim-wrapper.d.ts","sourceRoot":"","sources":["../../../src/settlement/privacy/nip59-claim-wrapper.ts"],"names":[],"mappings":"AA4BA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAYjE,MAAM,WAAW,YAAY;IAE3B,kBAAkB,EAAE,MAAM,CAAC;IAE3B,gBAAgB,EAAE,MAAM,CAAC;IAEzB,SAAS,EAAE,MAAM,CAAC;IAElB,OAAO,EAAE,KAAK,CAAC;CAChB;AAMD,MAAM,WAAW,eAAe;IAE9B,OAAO,EAAE,YAAY,CAAC;IAEtB,kBAAkB,EAAE,UAAU,CAAC;CAChC;AAMD,MAAM,WAAW,iBAAiB;IAEhC,KAAK,EAAE,eAAe,CAAC;IAEvB,mBAAmB,EAAE,UAAU,CAAC;CACjC;AAKD,eAAO,MAAM,0BAA0B;;;;CAI7B,CAAC;AAYX,qBAAa,cAAe,SAAQ,KAAK;IACvC,SAAkB,IAAI,oBAAoB;gBAE9B,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,OAAO,CAAA;KAAE;CAI3D;AAoBD,UAAU,MAAM;IACd,IAAI,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IACtD,IAAI,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IACtD,KAAK,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IACvD,KAAK,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IACvD,KAAK,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAAC;CAClD;AAOD,MAAM,WAAW,wBAAwB;IAEvC,YAAY,EAAE,OAAO,CAAC;IAEtB,MAAM,EAAE,MAAM,CAAC;CAChB;AAmCD,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAU;IACxC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAS;gBAErB,OAAO,EAAE,wBAAwB;IAQ7C,SAAS,IAAI,OAAO;IAYpB,SAAS,CACP,KAAK,EAAE,eAAe,EACtB,gBAAgB,EAAE,UAAU,EAC5B,iBAAiB,EAAE,UAAU,GAC5B,YAAY,GAAG,IAAI;IA0EtB,WAAW,CAAC,YAAY,EAAE,YAAY,EAAE,kBAAkB,EAAE,UAAU,GAAG,eAAe;IA+HxF,sBAAsB,CACpB,KAAK,EAAE,eAAe,EACtB,gBAAgB,EAAE,UAAU,EAC5B,iBAAiB,EAAE,UAAU,GAC5B,eAAe,GAAG,IAAI;IAyFzB,uBAAuB,CACrB,YAAY,EAAE,YAAY,EAC1B,kBAAkB,EAAE,UAAU,GAC7B,iBAAiB;IAwGpB,OAAO,CAAC,YAAY;IAyBpB,OAAO,CAAC,YAAY;IAmBpB,OAAO,CAAC,gBAAgB;IAuBxB,OAAO,CAAC,gBAAgB;IAuBxB,OAAO,CAAC,oBAAoB;IAU5B,OAAO,CAAC,eAAe;IAUvB,OAAO,CAAC,iBAAiB;IAiBzB,OAAO,CAAC,mBAAmB;CAS5B;AAKD,eAAO,MAAM,qBAAqB,0BAAoB,CAAC;AAYvD,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,YAAY,GAAG,MAAM,CAEnE;AASD,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,MAAM,GAAG,YAAY,CAyBlE"}
|
|
@@ -27,6 +27,7 @@ const CHACHA_NONCE_BYTES = 12;
|
|
|
27
27
|
const HKDF_KEY_BYTES = 32;
|
|
28
28
|
const SEAL_HKDF_INFO = 'nip59-seal';
|
|
29
29
|
const GIFTWRAP_HKDF_INFO = 'nip59-giftwrap';
|
|
30
|
+
const CONDITION_HKDF_INFO = 'ilp-condition-preimage';
|
|
30
31
|
class NIP59ClaimWrapper {
|
|
31
32
|
_nip59Enabled;
|
|
32
33
|
_logger;
|
|
@@ -86,7 +87,8 @@ class NIP59ClaimWrapper {
|
|
|
86
87
|
try {
|
|
87
88
|
const ephemeralPubKey = hexToBytes(wrappedClaim.ephemeralPublicKey);
|
|
88
89
|
const encryptedPayload = base64ToBytes(wrappedClaim.encryptedPayload);
|
|
89
|
-
|
|
90
|
+
const giftWrapResult = this._decryptGiftWrap(encryptedPayload, receiverPrivateKey, ephemeralPubKey);
|
|
91
|
+
sealPayloadBytes = giftWrapResult.plaintext;
|
|
90
92
|
}
|
|
91
93
|
catch (err) {
|
|
92
94
|
if (err instanceof NIP59WrapError)
|
|
@@ -142,6 +144,111 @@ class NIP59ClaimWrapper {
|
|
|
142
144
|
throw new NIP59WrapError(`Failed to parse rumor layer: ${err instanceof Error ? err.message : String(err)}`, { cause: err });
|
|
143
145
|
}
|
|
144
146
|
}
|
|
147
|
+
wrapClaimWithCondition(claim, senderPrivateKey, receiverPublicKey) {
|
|
148
|
+
if (!this._nip59Enabled) {
|
|
149
|
+
this._logger.debug({ event: 'nip59_wrap_condition_skip' }, 'NIP-59 wrapping disabled, skipping condition derivation');
|
|
150
|
+
return null;
|
|
151
|
+
}
|
|
152
|
+
try {
|
|
153
|
+
const rumor = JSON.stringify(claim);
|
|
154
|
+
const rumorBytes = (0, utils_1.utf8ToBytes)(rumor);
|
|
155
|
+
const senderPubKey = secp256k1_1.secp256k1.getPublicKey(senderPrivateKey, true);
|
|
156
|
+
const sealCiphertext = this._encryptSeal(rumorBytes, senderPrivateKey, receiverPublicKey, senderPubKey);
|
|
157
|
+
const sealSignature = this._signCiphertext(sealCiphertext, senderPrivateKey);
|
|
158
|
+
const sealPayload = {
|
|
159
|
+
senderPublicKey: Buffer.from(senderPubKey).toString('hex'),
|
|
160
|
+
signature: Buffer.from(sealSignature).toString('base64'),
|
|
161
|
+
sealCiphertext: Buffer.from(sealCiphertext).toString('base64'),
|
|
162
|
+
};
|
|
163
|
+
const sealPayloadBytes = (0, utils_1.utf8ToBytes)(JSON.stringify(sealPayload));
|
|
164
|
+
const ephemeralPrivKey = (0, crypto_1.randomBytes)(32);
|
|
165
|
+
const ephemeralPubKey = secp256k1_1.secp256k1.getPublicKey(ephemeralPrivKey, true);
|
|
166
|
+
const sharedSecret = this._computeSharedSecret(ephemeralPrivKey, receiverPublicKey);
|
|
167
|
+
const giftWrapKey = (0, hkdf_1.hkdf)(sha2_1.sha256, sharedSecret, undefined, GIFTWRAP_HKDF_INFO, HKDF_KEY_BYTES);
|
|
168
|
+
const nonce = (0, crypto_1.randomBytes)(CHACHA_NONCE_BYTES);
|
|
169
|
+
const cipher = (0, chacha_1.chacha20poly1305)(giftWrapKey, nonce);
|
|
170
|
+
const giftWrapCiphertext = cipher.encrypt(sealPayloadBytes);
|
|
171
|
+
const encryptedResult = new Uint8Array(CHACHA_NONCE_BYTES + giftWrapCiphertext.length);
|
|
172
|
+
encryptedResult.set(nonce, 0);
|
|
173
|
+
encryptedResult.set(giftWrapCiphertext, CHACHA_NONCE_BYTES);
|
|
174
|
+
const preimage = (0, hkdf_1.hkdf)(sha2_1.sha256, sharedSecret, undefined, CONDITION_HKDF_INFO, HKDF_KEY_BYTES);
|
|
175
|
+
const executionCondition = (0, sha2_1.sha256)(preimage);
|
|
176
|
+
ephemeralPrivKey.fill(0);
|
|
177
|
+
const wrapped = {
|
|
178
|
+
ephemeralPublicKey: Buffer.from(ephemeralPubKey).toString('hex'),
|
|
179
|
+
encryptedPayload: Buffer.from(encryptedResult).toString('base64'),
|
|
180
|
+
timestamp: this._randomizeTimestamp(),
|
|
181
|
+
version: '1.0',
|
|
182
|
+
};
|
|
183
|
+
this._logger.info({ event: 'nip59_wrap_condition', claimMessageId: claim.messageId }, 'Wrapping claim with NIP-59 Gift Wrap and condition derivation');
|
|
184
|
+
return { wrapped, executionCondition: new Uint8Array(executionCondition) };
|
|
185
|
+
}
|
|
186
|
+
catch (err) {
|
|
187
|
+
throw new NIP59WrapError(`Failed to wrap claim with condition: ${err instanceof Error ? err.message : String(err)}`, { cause: err });
|
|
188
|
+
}
|
|
189
|
+
}
|
|
190
|
+
unwrapClaimWithPreimage(wrappedClaim, receiverPrivateKey) {
|
|
191
|
+
if (!wrappedClaim.ephemeralPublicKey || wrappedClaim.ephemeralPublicKey.length === 0) {
|
|
192
|
+
throw new NIP59WrapError('Invalid wrapped claim: missing ephemeralPublicKey', {
|
|
193
|
+
cause: new Error('Empty ephemeralPublicKey'),
|
|
194
|
+
});
|
|
195
|
+
}
|
|
196
|
+
if (!wrappedClaim.encryptedPayload || wrappedClaim.encryptedPayload.length === 0) {
|
|
197
|
+
throw new NIP59WrapError('Invalid wrapped claim: missing encryptedPayload', {
|
|
198
|
+
cause: new Error('Empty encryptedPayload'),
|
|
199
|
+
});
|
|
200
|
+
}
|
|
201
|
+
let sealPayloadBytes;
|
|
202
|
+
let sharedSecret;
|
|
203
|
+
try {
|
|
204
|
+
const ephemeralPubKey = hexToBytes(wrappedClaim.ephemeralPublicKey);
|
|
205
|
+
const encryptedPayload = base64ToBytes(wrappedClaim.encryptedPayload);
|
|
206
|
+
const giftWrapResult = this._decryptGiftWrap(encryptedPayload, receiverPrivateKey, ephemeralPubKey);
|
|
207
|
+
sealPayloadBytes = giftWrapResult.plaintext;
|
|
208
|
+
sharedSecret = giftWrapResult.sharedSecret;
|
|
209
|
+
}
|
|
210
|
+
catch (err) {
|
|
211
|
+
if (err instanceof NIP59WrapError)
|
|
212
|
+
throw err;
|
|
213
|
+
throw new NIP59WrapError(`Failed to decrypt gift wrap layer: ${err instanceof Error ? err.message : String(err)}`, { cause: err });
|
|
214
|
+
}
|
|
215
|
+
const fulfillmentPreimage = new Uint8Array((0, hkdf_1.hkdf)(sha2_1.sha256, sharedSecret, undefined, CONDITION_HKDF_INFO, HKDF_KEY_BYTES));
|
|
216
|
+
let rumorBytes;
|
|
217
|
+
try {
|
|
218
|
+
const sealPayloadStr = bytesToUtf8(sealPayloadBytes);
|
|
219
|
+
const sealPayload = JSON.parse(sealPayloadStr);
|
|
220
|
+
const senderPubKey = hexToBytes(sealPayload.senderPublicKey);
|
|
221
|
+
const sealSignature = base64ToBytes(sealPayload.signature);
|
|
222
|
+
const sealCiphertext = base64ToBytes(sealPayload.sealCiphertext);
|
|
223
|
+
this._verifyCiphertext(sealCiphertext, sealSignature, senderPubKey);
|
|
224
|
+
rumorBytes = this._decryptSeal(sealCiphertext, receiverPrivateKey, senderPubKey);
|
|
225
|
+
}
|
|
226
|
+
catch (err) {
|
|
227
|
+
if (err instanceof NIP59WrapError)
|
|
228
|
+
throw err;
|
|
229
|
+
throw new NIP59WrapError(`Failed to decrypt seal layer: ${err instanceof Error ? err.message : String(err)}`, { cause: err });
|
|
230
|
+
}
|
|
231
|
+
try {
|
|
232
|
+
const rumorStr = bytesToUtf8(rumorBytes);
|
|
233
|
+
const claim = JSON.parse(rumorStr);
|
|
234
|
+
if (typeof claim !== 'object' ||
|
|
235
|
+
claim === null ||
|
|
236
|
+
typeof claim.version !== 'string' ||
|
|
237
|
+
typeof claim.blockchain !== 'string' ||
|
|
238
|
+
typeof claim.messageId !== 'string' ||
|
|
239
|
+
typeof claim.timestamp !== 'string' ||
|
|
240
|
+
typeof claim.senderId !== 'string') {
|
|
241
|
+
throw new NIP59WrapError('Rumor payload is not a valid BTPClaimMessage: missing required base fields', { cause: new Error('Invalid BTPClaimMessage structure') });
|
|
242
|
+
}
|
|
243
|
+
this._logger.info({ event: 'nip59_unwrap_preimage', claimMessageId: claim.messageId }, 'Successfully unwrapped NIP-59 claim with preimage derivation');
|
|
244
|
+
return { claim, fulfillmentPreimage };
|
|
245
|
+
}
|
|
246
|
+
catch (err) {
|
|
247
|
+
if (err instanceof NIP59WrapError)
|
|
248
|
+
throw err;
|
|
249
|
+
throw new NIP59WrapError(`Failed to parse rumor layer: ${err instanceof Error ? err.message : String(err)}`, { cause: err });
|
|
250
|
+
}
|
|
251
|
+
}
|
|
145
252
|
_encryptSeal(rumorBytes, senderPrivateKey, receiverPublicKey, senderPublicKey) {
|
|
146
253
|
const sharedSecret = this._computeSharedSecret(senderPrivateKey, receiverPublicKey);
|
|
147
254
|
const key = (0, hkdf_1.hkdf)(sha2_1.sha256, sharedSecret, undefined, SEAL_HKDF_INFO, HKDF_KEY_BYTES);
|
|
@@ -178,7 +285,8 @@ class NIP59ClaimWrapper {
|
|
|
178
285
|
const nonce = giftWrapCiphertext.slice(0, CHACHA_NONCE_BYTES);
|
|
179
286
|
const ciphertext = giftWrapCiphertext.slice(CHACHA_NONCE_BYTES);
|
|
180
287
|
const cipher = (0, chacha_1.chacha20poly1305)(key, nonce);
|
|
181
|
-
|
|
288
|
+
const plaintext = cipher.decrypt(ciphertext);
|
|
289
|
+
return { plaintext, sharedSecret };
|
|
182
290
|
}
|
|
183
291
|
_computeSharedSecret(privateKey, publicKey) {
|
|
184
292
|
const sharedPoint = secp256k1_1.secp256k1.getSharedSecret(privateKey, publicKey, true);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"nip59-claim-wrapper.js","sourceRoot":"","sources":["../../../src/settlement/privacy/nip59-claim-wrapper.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"nip59-claim-wrapper.js","sourceRoot":"","sources":["../../../src/settlement/privacy/nip59-claim-wrapper.ts"],"names":[],"mappings":"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"}
|