@charterlabs/rhinestone-sdk 0.1.12 → 0.1.13
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 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../accounts/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,OAAO,EACZ,KAAK,OAAO,EACZ,KAAK,KAAK,EAMV,KAAK,GAAG,EACR,KAAK,YAAY,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../accounts/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -16,6 +16,7 @@ exports.getGuardianSmartAccount = getGuardianSmartAccount;
|
|
|
16
16
|
exports.getPackedSignature = getPackedSignature;
|
|
17
17
|
exports.deployStandaloneWithEoa = deployStandaloneWithEoa;
|
|
18
18
|
const viem_1 = require("viem");
|
|
19
|
+
const p256_1 = require("@noble/curves/p256");
|
|
19
20
|
const execution_1 = require("../execution");
|
|
20
21
|
const smart_session_1 = require("../execution/smart-session");
|
|
21
22
|
const modules_1 = require("../modules");
|
|
@@ -438,11 +439,48 @@ async function signPasskey(validators, chain, hash) {
|
|
|
438
439
|
console.log('signature in the signPasskey', signature);
|
|
439
440
|
const { authenticatorData, clientDataJSON, challengeIndex, typeIndex } = rawWebauthn;
|
|
440
441
|
const usePrecompiled = (0, modules_1.isRip7212SupportedNetwork)(chain);
|
|
442
|
+
// Convert signature to object { r, s } in r||s format using noble p256
|
|
443
|
+
function lowSNormalize(r, s) {
|
|
444
|
+
const n = BigInt('0xFFFFFFFF00000000FFFFFFFFFFFFFFFFBCE6FAADA7179E84F3B9CAC2FC632551');
|
|
445
|
+
if (s > n / 2n)
|
|
446
|
+
return { r, s: n - s };
|
|
447
|
+
return { r, s };
|
|
448
|
+
}
|
|
449
|
+
function toRS(sig) {
|
|
450
|
+
if (typeof sig === 'object' && 'r' in sig && 's' in sig) {
|
|
451
|
+
return lowSNormalize(sig.r, sig.s);
|
|
452
|
+
}
|
|
453
|
+
const bytes = typeof sig === 'string' ? (0, viem_1.hexToBytes)(sig) : sig;
|
|
454
|
+
let compact;
|
|
455
|
+
if (bytes.length > 0 && bytes[0] === 0x30) {
|
|
456
|
+
// DER
|
|
457
|
+
const derSig = p256_1.secp256r1.Signature.fromDER(bytes);
|
|
458
|
+
compact = derSig.toCompactRawBytes(); // 64 bytes r||s
|
|
459
|
+
}
|
|
460
|
+
else if (bytes.length === 64) {
|
|
461
|
+
compact = bytes;
|
|
462
|
+
}
|
|
463
|
+
else if (typeof sig === 'string' && sig.length === 2 + 64 * 2) {
|
|
464
|
+
// Hex r||s
|
|
465
|
+
compact = (0, viem_1.hexToBytes)(sig);
|
|
466
|
+
}
|
|
467
|
+
else {
|
|
468
|
+
// Fallback: treat as r||s if size permits
|
|
469
|
+
compact = bytes;
|
|
470
|
+
}
|
|
471
|
+
const rHex = (0, viem_1.bytesToHex)(compact.slice(0, 32));
|
|
472
|
+
const sHex = (0, viem_1.bytesToHex)(compact.slice(32, 64));
|
|
473
|
+
const r = BigInt(rHex);
|
|
474
|
+
const s = BigInt(sHex);
|
|
475
|
+
return lowSNormalize(r, s);
|
|
476
|
+
}
|
|
477
|
+
const processedSignature = toRS(signature);
|
|
478
|
+
console.log('processedSignature in the signPasskey', processedSignature);
|
|
441
479
|
return (0, modules_1.getWebauthnValidatorSignature)({
|
|
442
480
|
credentialIds,
|
|
443
481
|
usePrecompiled,
|
|
444
482
|
webauthn: { authenticatorData, clientDataJSON, challengeIndex, typeIndex },
|
|
445
|
-
signature,
|
|
483
|
+
signature: processedSignature,
|
|
446
484
|
});
|
|
447
485
|
}
|
|
448
486
|
function is7702(config) {
|