@frequency-chain/ethereum-utils 1.17.0 → 1.17.1
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/browser/frequency-ethereum-utils.esm.min.js +43 -2
- package/browser/frequency-ethereum-utils.umd.min.js +43 -2
- package/cjs/signature.definitions.js +14 -1
- package/cjs/signature.js +31 -0
- package/esm/signature.definitions.js +13 -0
- package/esm/signature.js +30 -1
- package/index.d.ts +8 -0
- package/package.json +1 -1
- package/payloads.d.ts +6 -1
- package/signature.d.ts +16 -1
- package/signature.definitions.d.ts +11 -0
|
@@ -19492,6 +19492,18 @@ const AUTHORIZED_KEY_DATA_DEFINITION = {
|
|
|
19492
19492
|
},
|
|
19493
19493
|
],
|
|
19494
19494
|
};
|
|
19495
|
+
const RECOVERY_COMMITMENT_PAYLOAD_DEFINITION = {
|
|
19496
|
+
RecoveryCommitmentPayload: [
|
|
19497
|
+
{
|
|
19498
|
+
name: 'recoveryCommitment',
|
|
19499
|
+
type: 'bytes',
|
|
19500
|
+
},
|
|
19501
|
+
{
|
|
19502
|
+
name: 'expiration',
|
|
19503
|
+
type: 'uint32',
|
|
19504
|
+
},
|
|
19505
|
+
],
|
|
19506
|
+
};
|
|
19495
19507
|
const CLAIM_HANDLE_PAYLOAD_DEFINITION = {
|
|
19496
19508
|
ClaimHandlePayload: [
|
|
19497
19509
|
{
|
|
@@ -19596,7 +19608,7 @@ const SIWF_SIGNED_REQUEST_PAYLOAD_DEFINITION = {
|
|
|
19596
19608
|
type: 'string',
|
|
19597
19609
|
},
|
|
19598
19610
|
],
|
|
19599
|
-
};var signatureDefinitions=/*#__PURE__*/Object.freeze({__proto__:null,ADD_KEY_DATA_DEFINITION:ADD_KEY_DATA_DEFINITION,ADD_PROVIDER_DEFINITION:ADD_PROVIDER_DEFINITION,AUTHORIZED_KEY_DATA_DEFINITION:AUTHORIZED_KEY_DATA_DEFINITION,CLAIM_HANDLE_PAYLOAD_DEFINITION:CLAIM_HANDLE_PAYLOAD_DEFINITION,EIP712_DOMAIN_DEFINITION:EIP712_DOMAIN_DEFINITION,EIP712_DOMAIN_MAINNET:EIP712_DOMAIN_MAINNET,EIP712_DOMAIN_TESTNET:EIP712_DOMAIN_TESTNET,ITEMIZED_SIGNATURE_PAYLOAD_DEFINITION_V2:ITEMIZED_SIGNATURE_PAYLOAD_DEFINITION_V2,PAGINATED_DELETE_SIGNATURE_PAYLOAD_DEFINITION_V2:PAGINATED_DELETE_SIGNATURE_PAYLOAD_DEFINITION_V2,PAGINATED_UPSERT_SIGNATURE_PAYLOAD_DEFINITION_V2:PAGINATED_UPSERT_SIGNATURE_PAYLOAD_DEFINITION_V2,PASSKEY_PUBLIC_KEY_DEFINITION:PASSKEY_PUBLIC_KEY_DEFINITION,SIWF_SIGNED_REQUEST_PAYLOAD_DEFINITION:SIWF_SIGNED_REQUEST_PAYLOAD_DEFINITION});/**
|
|
19611
|
+
};var signatureDefinitions=/*#__PURE__*/Object.freeze({__proto__:null,ADD_KEY_DATA_DEFINITION:ADD_KEY_DATA_DEFINITION,ADD_PROVIDER_DEFINITION:ADD_PROVIDER_DEFINITION,AUTHORIZED_KEY_DATA_DEFINITION:AUTHORIZED_KEY_DATA_DEFINITION,CLAIM_HANDLE_PAYLOAD_DEFINITION:CLAIM_HANDLE_PAYLOAD_DEFINITION,EIP712_DOMAIN_DEFINITION:EIP712_DOMAIN_DEFINITION,EIP712_DOMAIN_MAINNET:EIP712_DOMAIN_MAINNET,EIP712_DOMAIN_TESTNET:EIP712_DOMAIN_TESTNET,ITEMIZED_SIGNATURE_PAYLOAD_DEFINITION_V2:ITEMIZED_SIGNATURE_PAYLOAD_DEFINITION_V2,PAGINATED_DELETE_SIGNATURE_PAYLOAD_DEFINITION_V2:PAGINATED_DELETE_SIGNATURE_PAYLOAD_DEFINITION_V2,PAGINATED_UPSERT_SIGNATURE_PAYLOAD_DEFINITION_V2:PAGINATED_UPSERT_SIGNATURE_PAYLOAD_DEFINITION_V2,PASSKEY_PUBLIC_KEY_DEFINITION:PASSKEY_PUBLIC_KEY_DEFINITION,RECOVERY_COMMITMENT_PAYLOAD_DEFINITION:RECOVERY_COMMITMENT_PAYLOAD_DEFINITION,SIWF_SIGNED_REQUEST_PAYLOAD_DEFINITION:SIWF_SIGNED_REQUEST_PAYLOAD_DEFINITION});/**
|
|
19600
19612
|
* Signing EIP-712 or ERC-191 compatible signature based on payload
|
|
19601
19613
|
* @param secretKey
|
|
19602
19614
|
* @param payload
|
|
@@ -19653,6 +19665,7 @@ function normalizePayload(payload) {
|
|
|
19653
19665
|
case 'PasskeyPublicKey':
|
|
19654
19666
|
case 'ClaimHandlePayload':
|
|
19655
19667
|
case 'AddProvider':
|
|
19668
|
+
case 'RecoveryCommitmentPayload':
|
|
19656
19669
|
case 'SiwfLoginRequestPayload':
|
|
19657
19670
|
break;
|
|
19658
19671
|
case 'AddKeyData':
|
|
@@ -19691,6 +19704,7 @@ function getTypesFor(payloadType) {
|
|
|
19691
19704
|
AddKeyData: ADD_KEY_DATA_DEFINITION,
|
|
19692
19705
|
AuthorizedKeyData: AUTHORIZED_KEY_DATA_DEFINITION,
|
|
19693
19706
|
AddProvider: ADD_PROVIDER_DEFINITION,
|
|
19707
|
+
RecoveryCommitmentPayload: RECOVERY_COMMITMENT_PAYLOAD_DEFINITION,
|
|
19694
19708
|
// offchain signatures
|
|
19695
19709
|
SiwfSignedRequestPayload: SIWF_SIGNED_REQUEST_PAYLOAD_DEFINITION,
|
|
19696
19710
|
};
|
|
@@ -19766,6 +19780,21 @@ function createAddProvider(authorizedMsaId, schemaIds, expirationBlock) {
|
|
|
19766
19780
|
expiration: expirationBlock,
|
|
19767
19781
|
};
|
|
19768
19782
|
}
|
|
19783
|
+
/**
|
|
19784
|
+
* Build a RecoveryCommitmentPayload for signature.
|
|
19785
|
+
*
|
|
19786
|
+
* @param recoveryCommitment The recovery commitment data as a HexString
|
|
19787
|
+
* @param expirationBlock Block number after which this payload is invalid
|
|
19788
|
+
*/
|
|
19789
|
+
function createRecoveryCommitmentPayload(recoveryCommitment, expirationBlock) {
|
|
19790
|
+
assert(isHexString(recoveryCommitment), 'recoveryCommitment should be a valid hex string');
|
|
19791
|
+
assert(isValidUint32(expirationBlock), 'expiration should be a valid uint32');
|
|
19792
|
+
return {
|
|
19793
|
+
type: 'RecoveryCommitmentPayload',
|
|
19794
|
+
recoveryCommitment: recoveryCommitment,
|
|
19795
|
+
expiration: expirationBlock,
|
|
19796
|
+
};
|
|
19797
|
+
}
|
|
19769
19798
|
/**
|
|
19770
19799
|
* Build a ClaimHandlePayload for signature.
|
|
19771
19800
|
*
|
|
@@ -19938,6 +19967,18 @@ function getEip712BrowserRequestAddProvider(authorizedMsaId, schemaIds, expirati
|
|
|
19938
19967
|
const normalized = normalizePayload(message);
|
|
19939
19968
|
return createEip712Payload(ADD_PROVIDER_DEFINITION, message.type, domain, normalized);
|
|
19940
19969
|
}
|
|
19970
|
+
/**
|
|
19971
|
+
* Returns the EIP-712 browser request for a RecoveryCommitmentPayload for signing.
|
|
19972
|
+
*
|
|
19973
|
+
* @param recoveryCommitment The recovery commitment data as a Uint8Array
|
|
19974
|
+
* @param expirationBlock Block number after which this payload is invalid
|
|
19975
|
+
* @param domain
|
|
19976
|
+
*/
|
|
19977
|
+
function getEip712BrowserRequestRecoveryCommitmentPayload(recoveryCommitment, expirationBlock, domain = EIP712_DOMAIN_MAINNET) {
|
|
19978
|
+
const message = createRecoveryCommitmentPayload(recoveryCommitment, expirationBlock);
|
|
19979
|
+
const normalized = normalizePayload(message);
|
|
19980
|
+
return createEip712Payload(RECOVERY_COMMITMENT_PAYLOAD_DEFINITION, message.type, domain, normalized);
|
|
19981
|
+
}
|
|
19941
19982
|
/**
|
|
19942
19983
|
* Returns the EIP-712 browser request for a PaginatedUpsertSignaturePayloadV2 for signing.
|
|
19943
19984
|
*
|
|
@@ -20073,4 +20114,4 @@ function prefixEthereumTags(hexPayload) {
|
|
|
20073
20114
|
const wrapped = `\x19Ethereum Signed Message:\n${hexPayload.length}${hexPayload}`;
|
|
20074
20115
|
const buffer = Buffer.from(wrapped, 'utf-8');
|
|
20075
20116
|
return new Uint8Array(buffer.buffer, buffer.byteOffset, buffer.length);
|
|
20076
|
-
}var signature=/*#__PURE__*/Object.freeze({__proto__:null,createAddKeyData:createAddKeyData,createAddProvider:createAddProvider,createAuthorizedKeyData:createAuthorizedKeyData,createClaimHandlePayload:createClaimHandlePayload,createItemizedAddAction:createItemizedAddAction,createItemizedDeleteAction:createItemizedDeleteAction,createItemizedSignaturePayloadV2:createItemizedSignaturePayloadV2,createPaginatedDeleteSignaturePayloadV2:createPaginatedDeleteSignaturePayloadV2,createPaginatedUpsertSignaturePayloadV2:createPaginatedUpsertSignaturePayloadV2,createPasskeyPublicKey:createPasskeyPublicKey,createSiwfLoginRequestPayload:createSiwfLoginRequestPayload,createSiwfSignedRequestPayload:createSiwfSignedRequestPayload,getEip712BrowserRequestAddKeyData:getEip712BrowserRequestAddKeyData,getEip712BrowserRequestAddProvider:getEip712BrowserRequestAddProvider,getEip712BrowserRequestAuthorizedKeyData:getEip712BrowserRequestAuthorizedKeyData,getEip712BrowserRequestClaimHandlePayload:getEip712BrowserRequestClaimHandlePayload,getEip712BrowserRequestItemizedSignaturePayloadV2:getEip712BrowserRequestItemizedSignaturePayloadV2,getEip712BrowserRequestPaginatedDeleteSignaturePayloadV2:getEip712BrowserRequestPaginatedDeleteSignaturePayloadV2,getEip712BrowserRequestPaginatedUpsertSignaturePayloadV2:getEip712BrowserRequestPaginatedUpsertSignaturePayloadV2,getEip712BrowserRequestPasskeyPublicKey:getEip712BrowserRequestPasskeyPublicKey,getEip712BrowserRequestSiwfSignedRequestPayload:getEip712BrowserRequestSiwfSignedRequestPayload,getEthereumMessageSigner:getEthereumMessageSigner,getEthereumRegularSigner:getEthereumRegularSigner,sign:sign,verifySignature:verifySignature});var index = { ...payloads, ...address, ...signatureDefinitions, ...signature };export{ADD_KEY_DATA_DEFINITION,ADD_PROVIDER_DEFINITION,AUTHORIZED_KEY_DATA_DEFINITION,CLAIM_HANDLE_PAYLOAD_DEFINITION,EIP712_DOMAIN_DEFINITION,EIP712_DOMAIN_MAINNET,EIP712_DOMAIN_TESTNET,ITEMIZED_SIGNATURE_PAYLOAD_DEFINITION_V2,PAGINATED_DELETE_SIGNATURE_PAYLOAD_DEFINITION_V2,PAGINATED_UPSERT_SIGNATURE_PAYLOAD_DEFINITION_V2,PASSKEY_PUBLIC_KEY_DEFINITION,SIWF_SIGNED_REQUEST_PAYLOAD_DEFINITION,createAddKeyData,createAddProvider,createAuthorizedKeyData,createClaimHandlePayload,createItemizedAddAction,createItemizedDeleteAction,createItemizedSignaturePayloadV2,createPaginatedDeleteSignaturePayloadV2,createPaginatedUpsertSignaturePayloadV2,createPasskeyPublicKey,createRandomKey,createSiwfLoginRequestPayload,createSiwfSignedRequestPayload,index as default,ethereumAddressToKeyringPair,getAccountId20MultiAddress,getEip712BrowserRequestAddKeyData,getEip712BrowserRequestAddProvider,getEip712BrowserRequestAuthorizedKeyData,getEip712BrowserRequestClaimHandlePayload,getEip712BrowserRequestItemizedSignaturePayloadV2,getEip712BrowserRequestPaginatedDeleteSignaturePayloadV2,getEip712BrowserRequestPaginatedUpsertSignaturePayloadV2,getEip712BrowserRequestPasskeyPublicKey,getEip712BrowserRequestSiwfSignedRequestPayload,getEthereumMessageSigner,getEthereumRegularSigner,getKeyringPairFromSecp256k1PrivateKey,getSS58AccountFromEthereumAccount,getUnifiedAddress,getUnifiedPublicKey,reverseUnifiedAddressToEthereumAddress,sign,verifySignature};
|
|
20117
|
+
}var signature=/*#__PURE__*/Object.freeze({__proto__:null,createAddKeyData:createAddKeyData,createAddProvider:createAddProvider,createAuthorizedKeyData:createAuthorizedKeyData,createClaimHandlePayload:createClaimHandlePayload,createItemizedAddAction:createItemizedAddAction,createItemizedDeleteAction:createItemizedDeleteAction,createItemizedSignaturePayloadV2:createItemizedSignaturePayloadV2,createPaginatedDeleteSignaturePayloadV2:createPaginatedDeleteSignaturePayloadV2,createPaginatedUpsertSignaturePayloadV2:createPaginatedUpsertSignaturePayloadV2,createPasskeyPublicKey:createPasskeyPublicKey,createRecoveryCommitmentPayload:createRecoveryCommitmentPayload,createSiwfLoginRequestPayload:createSiwfLoginRequestPayload,createSiwfSignedRequestPayload:createSiwfSignedRequestPayload,getEip712BrowserRequestAddKeyData:getEip712BrowserRequestAddKeyData,getEip712BrowserRequestAddProvider:getEip712BrowserRequestAddProvider,getEip712BrowserRequestAuthorizedKeyData:getEip712BrowserRequestAuthorizedKeyData,getEip712BrowserRequestClaimHandlePayload:getEip712BrowserRequestClaimHandlePayload,getEip712BrowserRequestItemizedSignaturePayloadV2:getEip712BrowserRequestItemizedSignaturePayloadV2,getEip712BrowserRequestPaginatedDeleteSignaturePayloadV2:getEip712BrowserRequestPaginatedDeleteSignaturePayloadV2,getEip712BrowserRequestPaginatedUpsertSignaturePayloadV2:getEip712BrowserRequestPaginatedUpsertSignaturePayloadV2,getEip712BrowserRequestPasskeyPublicKey:getEip712BrowserRequestPasskeyPublicKey,getEip712BrowserRequestRecoveryCommitmentPayload:getEip712BrowserRequestRecoveryCommitmentPayload,getEip712BrowserRequestSiwfSignedRequestPayload:getEip712BrowserRequestSiwfSignedRequestPayload,getEthereumMessageSigner:getEthereumMessageSigner,getEthereumRegularSigner:getEthereumRegularSigner,sign:sign,verifySignature:verifySignature});var index = { ...payloads, ...address, ...signatureDefinitions, ...signature };export{ADD_KEY_DATA_DEFINITION,ADD_PROVIDER_DEFINITION,AUTHORIZED_KEY_DATA_DEFINITION,CLAIM_HANDLE_PAYLOAD_DEFINITION,EIP712_DOMAIN_DEFINITION,EIP712_DOMAIN_MAINNET,EIP712_DOMAIN_TESTNET,ITEMIZED_SIGNATURE_PAYLOAD_DEFINITION_V2,PAGINATED_DELETE_SIGNATURE_PAYLOAD_DEFINITION_V2,PAGINATED_UPSERT_SIGNATURE_PAYLOAD_DEFINITION_V2,PASSKEY_PUBLIC_KEY_DEFINITION,RECOVERY_COMMITMENT_PAYLOAD_DEFINITION,SIWF_SIGNED_REQUEST_PAYLOAD_DEFINITION,createAddKeyData,createAddProvider,createAuthorizedKeyData,createClaimHandlePayload,createItemizedAddAction,createItemizedDeleteAction,createItemizedSignaturePayloadV2,createPaginatedDeleteSignaturePayloadV2,createPaginatedUpsertSignaturePayloadV2,createPasskeyPublicKey,createRandomKey,createRecoveryCommitmentPayload,createSiwfLoginRequestPayload,createSiwfSignedRequestPayload,index as default,ethereumAddressToKeyringPair,getAccountId20MultiAddress,getEip712BrowserRequestAddKeyData,getEip712BrowserRequestAddProvider,getEip712BrowserRequestAuthorizedKeyData,getEip712BrowserRequestClaimHandlePayload,getEip712BrowserRequestItemizedSignaturePayloadV2,getEip712BrowserRequestPaginatedDeleteSignaturePayloadV2,getEip712BrowserRequestPaginatedUpsertSignaturePayloadV2,getEip712BrowserRequestPasskeyPublicKey,getEip712BrowserRequestRecoveryCommitmentPayload,getEip712BrowserRequestSiwfSignedRequestPayload,getEthereumMessageSigner,getEthereumRegularSigner,getKeyringPairFromSecp256k1PrivateKey,getSS58AccountFromEthereumAccount,getUnifiedAddress,getUnifiedPublicKey,reverseUnifiedAddressToEthereumAddress,sign,verifySignature};
|
|
@@ -10738,6 +10738,18 @@ const AUTHORIZED_KEY_DATA_DEFINITION = {
|
|
|
10738
10738
|
},
|
|
10739
10739
|
],
|
|
10740
10740
|
};
|
|
10741
|
+
const RECOVERY_COMMITMENT_PAYLOAD_DEFINITION = {
|
|
10742
|
+
RecoveryCommitmentPayload: [
|
|
10743
|
+
{
|
|
10744
|
+
name: 'recoveryCommitment',
|
|
10745
|
+
type: 'bytes',
|
|
10746
|
+
},
|
|
10747
|
+
{
|
|
10748
|
+
name: 'expiration',
|
|
10749
|
+
type: 'uint32',
|
|
10750
|
+
},
|
|
10751
|
+
],
|
|
10752
|
+
};
|
|
10741
10753
|
const CLAIM_HANDLE_PAYLOAD_DEFINITION = {
|
|
10742
10754
|
ClaimHandlePayload: [
|
|
10743
10755
|
{
|
|
@@ -10842,7 +10854,7 @@ const SIWF_SIGNED_REQUEST_PAYLOAD_DEFINITION = {
|
|
|
10842
10854
|
type: 'string',
|
|
10843
10855
|
},
|
|
10844
10856
|
],
|
|
10845
|
-
};var signatureDefinitions=/*#__PURE__*/Object.freeze({__proto__:null,ADD_KEY_DATA_DEFINITION:ADD_KEY_DATA_DEFINITION,ADD_PROVIDER_DEFINITION:ADD_PROVIDER_DEFINITION,AUTHORIZED_KEY_DATA_DEFINITION:AUTHORIZED_KEY_DATA_DEFINITION,CLAIM_HANDLE_PAYLOAD_DEFINITION:CLAIM_HANDLE_PAYLOAD_DEFINITION,EIP712_DOMAIN_DEFINITION:EIP712_DOMAIN_DEFINITION,EIP712_DOMAIN_MAINNET:EIP712_DOMAIN_MAINNET,EIP712_DOMAIN_TESTNET:EIP712_DOMAIN_TESTNET,ITEMIZED_SIGNATURE_PAYLOAD_DEFINITION_V2:ITEMIZED_SIGNATURE_PAYLOAD_DEFINITION_V2,PAGINATED_DELETE_SIGNATURE_PAYLOAD_DEFINITION_V2:PAGINATED_DELETE_SIGNATURE_PAYLOAD_DEFINITION_V2,PAGINATED_UPSERT_SIGNATURE_PAYLOAD_DEFINITION_V2:PAGINATED_UPSERT_SIGNATURE_PAYLOAD_DEFINITION_V2,PASSKEY_PUBLIC_KEY_DEFINITION:PASSKEY_PUBLIC_KEY_DEFINITION,SIWF_SIGNED_REQUEST_PAYLOAD_DEFINITION:SIWF_SIGNED_REQUEST_PAYLOAD_DEFINITION});/**
|
|
10857
|
+
};var signatureDefinitions=/*#__PURE__*/Object.freeze({__proto__:null,ADD_KEY_DATA_DEFINITION:ADD_KEY_DATA_DEFINITION,ADD_PROVIDER_DEFINITION:ADD_PROVIDER_DEFINITION,AUTHORIZED_KEY_DATA_DEFINITION:AUTHORIZED_KEY_DATA_DEFINITION,CLAIM_HANDLE_PAYLOAD_DEFINITION:CLAIM_HANDLE_PAYLOAD_DEFINITION,EIP712_DOMAIN_DEFINITION:EIP712_DOMAIN_DEFINITION,EIP712_DOMAIN_MAINNET:EIP712_DOMAIN_MAINNET,EIP712_DOMAIN_TESTNET:EIP712_DOMAIN_TESTNET,ITEMIZED_SIGNATURE_PAYLOAD_DEFINITION_V2:ITEMIZED_SIGNATURE_PAYLOAD_DEFINITION_V2,PAGINATED_DELETE_SIGNATURE_PAYLOAD_DEFINITION_V2:PAGINATED_DELETE_SIGNATURE_PAYLOAD_DEFINITION_V2,PAGINATED_UPSERT_SIGNATURE_PAYLOAD_DEFINITION_V2:PAGINATED_UPSERT_SIGNATURE_PAYLOAD_DEFINITION_V2,PASSKEY_PUBLIC_KEY_DEFINITION:PASSKEY_PUBLIC_KEY_DEFINITION,RECOVERY_COMMITMENT_PAYLOAD_DEFINITION:RECOVERY_COMMITMENT_PAYLOAD_DEFINITION,SIWF_SIGNED_REQUEST_PAYLOAD_DEFINITION:SIWF_SIGNED_REQUEST_PAYLOAD_DEFINITION});/**
|
|
10846
10858
|
* Signing EIP-712 or ERC-191 compatible signature based on payload
|
|
10847
10859
|
* @param secretKey
|
|
10848
10860
|
* @param payload
|
|
@@ -10899,6 +10911,7 @@ function normalizePayload(payload) {
|
|
|
10899
10911
|
case 'PasskeyPublicKey':
|
|
10900
10912
|
case 'ClaimHandlePayload':
|
|
10901
10913
|
case 'AddProvider':
|
|
10914
|
+
case 'RecoveryCommitmentPayload':
|
|
10902
10915
|
case 'SiwfLoginRequestPayload':
|
|
10903
10916
|
break;
|
|
10904
10917
|
case 'AddKeyData':
|
|
@@ -10937,6 +10950,7 @@ function getTypesFor(payloadType) {
|
|
|
10937
10950
|
AddKeyData: ADD_KEY_DATA_DEFINITION,
|
|
10938
10951
|
AuthorizedKeyData: AUTHORIZED_KEY_DATA_DEFINITION,
|
|
10939
10952
|
AddProvider: ADD_PROVIDER_DEFINITION,
|
|
10953
|
+
RecoveryCommitmentPayload: RECOVERY_COMMITMENT_PAYLOAD_DEFINITION,
|
|
10940
10954
|
// offchain signatures
|
|
10941
10955
|
SiwfSignedRequestPayload: SIWF_SIGNED_REQUEST_PAYLOAD_DEFINITION,
|
|
10942
10956
|
};
|
|
@@ -11012,6 +11026,21 @@ function createAddProvider(authorizedMsaId, schemaIds, expirationBlock) {
|
|
|
11012
11026
|
expiration: expirationBlock,
|
|
11013
11027
|
};
|
|
11014
11028
|
}
|
|
11029
|
+
/**
|
|
11030
|
+
* Build a RecoveryCommitmentPayload for signature.
|
|
11031
|
+
*
|
|
11032
|
+
* @param recoveryCommitment The recovery commitment data as a HexString
|
|
11033
|
+
* @param expirationBlock Block number after which this payload is invalid
|
|
11034
|
+
*/
|
|
11035
|
+
function createRecoveryCommitmentPayload(recoveryCommitment, expirationBlock) {
|
|
11036
|
+
assert(isHexString(recoveryCommitment), 'recoveryCommitment should be a valid hex string');
|
|
11037
|
+
assert(isValidUint32(expirationBlock), 'expiration should be a valid uint32');
|
|
11038
|
+
return {
|
|
11039
|
+
type: 'RecoveryCommitmentPayload',
|
|
11040
|
+
recoveryCommitment: recoveryCommitment,
|
|
11041
|
+
expiration: expirationBlock,
|
|
11042
|
+
};
|
|
11043
|
+
}
|
|
11015
11044
|
/**
|
|
11016
11045
|
* Build a ClaimHandlePayload for signature.
|
|
11017
11046
|
*
|
|
@@ -11184,6 +11213,18 @@ function getEip712BrowserRequestAddProvider(authorizedMsaId, schemaIds, expirati
|
|
|
11184
11213
|
const normalized = normalizePayload(message);
|
|
11185
11214
|
return createEip712Payload(ADD_PROVIDER_DEFINITION, message.type, domain, normalized);
|
|
11186
11215
|
}
|
|
11216
|
+
/**
|
|
11217
|
+
* Returns the EIP-712 browser request for a RecoveryCommitmentPayload for signing.
|
|
11218
|
+
*
|
|
11219
|
+
* @param recoveryCommitment The recovery commitment data as a Uint8Array
|
|
11220
|
+
* @param expirationBlock Block number after which this payload is invalid
|
|
11221
|
+
* @param domain
|
|
11222
|
+
*/
|
|
11223
|
+
function getEip712BrowserRequestRecoveryCommitmentPayload(recoveryCommitment, expirationBlock, domain = EIP712_DOMAIN_MAINNET) {
|
|
11224
|
+
const message = createRecoveryCommitmentPayload(recoveryCommitment, expirationBlock);
|
|
11225
|
+
const normalized = normalizePayload(message);
|
|
11226
|
+
return createEip712Payload(RECOVERY_COMMITMENT_PAYLOAD_DEFINITION, message.type, domain, normalized);
|
|
11227
|
+
}
|
|
11187
11228
|
/**
|
|
11188
11229
|
* Returns the EIP-712 browser request for a PaginatedUpsertSignaturePayloadV2 for signing.
|
|
11189
11230
|
*
|
|
@@ -11319,4 +11360,4 @@ function prefixEthereumTags(hexPayload) {
|
|
|
11319
11360
|
const wrapped = `\x19Ethereum Signed Message:\n${hexPayload.length}${hexPayload}`;
|
|
11320
11361
|
const buffer = Buffer.from(wrapped, 'utf-8');
|
|
11321
11362
|
return new Uint8Array(buffer.buffer, buffer.byteOffset, buffer.length);
|
|
11322
|
-
}var signature=/*#__PURE__*/Object.freeze({__proto__:null,createAddKeyData:createAddKeyData,createAddProvider:createAddProvider,createAuthorizedKeyData:createAuthorizedKeyData,createClaimHandlePayload:createClaimHandlePayload,createItemizedAddAction:createItemizedAddAction,createItemizedDeleteAction:createItemizedDeleteAction,createItemizedSignaturePayloadV2:createItemizedSignaturePayloadV2,createPaginatedDeleteSignaturePayloadV2:createPaginatedDeleteSignaturePayloadV2,createPaginatedUpsertSignaturePayloadV2:createPaginatedUpsertSignaturePayloadV2,createPasskeyPublicKey:createPasskeyPublicKey,createSiwfLoginRequestPayload:createSiwfLoginRequestPayload,createSiwfSignedRequestPayload:createSiwfSignedRequestPayload,getEip712BrowserRequestAddKeyData:getEip712BrowserRequestAddKeyData,getEip712BrowserRequestAddProvider:getEip712BrowserRequestAddProvider,getEip712BrowserRequestAuthorizedKeyData:getEip712BrowserRequestAuthorizedKeyData,getEip712BrowserRequestClaimHandlePayload:getEip712BrowserRequestClaimHandlePayload,getEip712BrowserRequestItemizedSignaturePayloadV2:getEip712BrowserRequestItemizedSignaturePayloadV2,getEip712BrowserRequestPaginatedDeleteSignaturePayloadV2:getEip712BrowserRequestPaginatedDeleteSignaturePayloadV2,getEip712BrowserRequestPaginatedUpsertSignaturePayloadV2:getEip712BrowserRequestPaginatedUpsertSignaturePayloadV2,getEip712BrowserRequestPasskeyPublicKey:getEip712BrowserRequestPasskeyPublicKey,getEip712BrowserRequestSiwfSignedRequestPayload:getEip712BrowserRequestSiwfSignedRequestPayload,getEthereumMessageSigner:getEthereumMessageSigner,getEthereumRegularSigner:getEthereumRegularSigner,sign:sign,verifySignature:verifySignature});var index = { ...payloads, ...address, ...signatureDefinitions, ...signature };exports.ADD_KEY_DATA_DEFINITION=ADD_KEY_DATA_DEFINITION;exports.ADD_PROVIDER_DEFINITION=ADD_PROVIDER_DEFINITION;exports.AUTHORIZED_KEY_DATA_DEFINITION=AUTHORIZED_KEY_DATA_DEFINITION;exports.CLAIM_HANDLE_PAYLOAD_DEFINITION=CLAIM_HANDLE_PAYLOAD_DEFINITION;exports.EIP712_DOMAIN_DEFINITION=EIP712_DOMAIN_DEFINITION;exports.EIP712_DOMAIN_MAINNET=EIP712_DOMAIN_MAINNET;exports.EIP712_DOMAIN_TESTNET=EIP712_DOMAIN_TESTNET;exports.ITEMIZED_SIGNATURE_PAYLOAD_DEFINITION_V2=ITEMIZED_SIGNATURE_PAYLOAD_DEFINITION_V2;exports.PAGINATED_DELETE_SIGNATURE_PAYLOAD_DEFINITION_V2=PAGINATED_DELETE_SIGNATURE_PAYLOAD_DEFINITION_V2;exports.PAGINATED_UPSERT_SIGNATURE_PAYLOAD_DEFINITION_V2=PAGINATED_UPSERT_SIGNATURE_PAYLOAD_DEFINITION_V2;exports.PASSKEY_PUBLIC_KEY_DEFINITION=PASSKEY_PUBLIC_KEY_DEFINITION;exports.SIWF_SIGNED_REQUEST_PAYLOAD_DEFINITION=SIWF_SIGNED_REQUEST_PAYLOAD_DEFINITION;exports.createAddKeyData=createAddKeyData;exports.createAddProvider=createAddProvider;exports.createAuthorizedKeyData=createAuthorizedKeyData;exports.createClaimHandlePayload=createClaimHandlePayload;exports.createItemizedAddAction=createItemizedAddAction;exports.createItemizedDeleteAction=createItemizedDeleteAction;exports.createItemizedSignaturePayloadV2=createItemizedSignaturePayloadV2;exports.createPaginatedDeleteSignaturePayloadV2=createPaginatedDeleteSignaturePayloadV2;exports.createPaginatedUpsertSignaturePayloadV2=createPaginatedUpsertSignaturePayloadV2;exports.createPasskeyPublicKey=createPasskeyPublicKey;exports.createRandomKey=createRandomKey;exports.createSiwfLoginRequestPayload=createSiwfLoginRequestPayload;exports.createSiwfSignedRequestPayload=createSiwfSignedRequestPayload;exports.default=index;exports.ethereumAddressToKeyringPair=ethereumAddressToKeyringPair;exports.getAccountId20MultiAddress=getAccountId20MultiAddress;exports.getEip712BrowserRequestAddKeyData=getEip712BrowserRequestAddKeyData;exports.getEip712BrowserRequestAddProvider=getEip712BrowserRequestAddProvider;exports.getEip712BrowserRequestAuthorizedKeyData=getEip712BrowserRequestAuthorizedKeyData;exports.getEip712BrowserRequestClaimHandlePayload=getEip712BrowserRequestClaimHandlePayload;exports.getEip712BrowserRequestItemizedSignaturePayloadV2=getEip712BrowserRequestItemizedSignaturePayloadV2;exports.getEip712BrowserRequestPaginatedDeleteSignaturePayloadV2=getEip712BrowserRequestPaginatedDeleteSignaturePayloadV2;exports.getEip712BrowserRequestPaginatedUpsertSignaturePayloadV2=getEip712BrowserRequestPaginatedUpsertSignaturePayloadV2;exports.getEip712BrowserRequestPasskeyPublicKey=getEip712BrowserRequestPasskeyPublicKey;exports.getEip712BrowserRequestSiwfSignedRequestPayload=getEip712BrowserRequestSiwfSignedRequestPayload;exports.getEthereumMessageSigner=getEthereumMessageSigner;exports.getEthereumRegularSigner=getEthereumRegularSigner;exports.getKeyringPairFromSecp256k1PrivateKey=getKeyringPairFromSecp256k1PrivateKey;exports.getSS58AccountFromEthereumAccount=getSS58AccountFromEthereumAccount;exports.getUnifiedAddress=getUnifiedAddress;exports.getUnifiedPublicKey=getUnifiedPublicKey;exports.reverseUnifiedAddressToEthereumAddress=reverseUnifiedAddressToEthereumAddress;exports.sign=sign;exports.verifySignature=verifySignature;Object.defineProperty(exports,'__esModule',{value:true});}));
|
|
11363
|
+
}var signature=/*#__PURE__*/Object.freeze({__proto__:null,createAddKeyData:createAddKeyData,createAddProvider:createAddProvider,createAuthorizedKeyData:createAuthorizedKeyData,createClaimHandlePayload:createClaimHandlePayload,createItemizedAddAction:createItemizedAddAction,createItemizedDeleteAction:createItemizedDeleteAction,createItemizedSignaturePayloadV2:createItemizedSignaturePayloadV2,createPaginatedDeleteSignaturePayloadV2:createPaginatedDeleteSignaturePayloadV2,createPaginatedUpsertSignaturePayloadV2:createPaginatedUpsertSignaturePayloadV2,createPasskeyPublicKey:createPasskeyPublicKey,createRecoveryCommitmentPayload:createRecoveryCommitmentPayload,createSiwfLoginRequestPayload:createSiwfLoginRequestPayload,createSiwfSignedRequestPayload:createSiwfSignedRequestPayload,getEip712BrowserRequestAddKeyData:getEip712BrowserRequestAddKeyData,getEip712BrowserRequestAddProvider:getEip712BrowserRequestAddProvider,getEip712BrowserRequestAuthorizedKeyData:getEip712BrowserRequestAuthorizedKeyData,getEip712BrowserRequestClaimHandlePayload:getEip712BrowserRequestClaimHandlePayload,getEip712BrowserRequestItemizedSignaturePayloadV2:getEip712BrowserRequestItemizedSignaturePayloadV2,getEip712BrowserRequestPaginatedDeleteSignaturePayloadV2:getEip712BrowserRequestPaginatedDeleteSignaturePayloadV2,getEip712BrowserRequestPaginatedUpsertSignaturePayloadV2:getEip712BrowserRequestPaginatedUpsertSignaturePayloadV2,getEip712BrowserRequestPasskeyPublicKey:getEip712BrowserRequestPasskeyPublicKey,getEip712BrowserRequestRecoveryCommitmentPayload:getEip712BrowserRequestRecoveryCommitmentPayload,getEip712BrowserRequestSiwfSignedRequestPayload:getEip712BrowserRequestSiwfSignedRequestPayload,getEthereumMessageSigner:getEthereumMessageSigner,getEthereumRegularSigner:getEthereumRegularSigner,sign:sign,verifySignature:verifySignature});var index = { ...payloads, ...address, ...signatureDefinitions, ...signature };exports.ADD_KEY_DATA_DEFINITION=ADD_KEY_DATA_DEFINITION;exports.ADD_PROVIDER_DEFINITION=ADD_PROVIDER_DEFINITION;exports.AUTHORIZED_KEY_DATA_DEFINITION=AUTHORIZED_KEY_DATA_DEFINITION;exports.CLAIM_HANDLE_PAYLOAD_DEFINITION=CLAIM_HANDLE_PAYLOAD_DEFINITION;exports.EIP712_DOMAIN_DEFINITION=EIP712_DOMAIN_DEFINITION;exports.EIP712_DOMAIN_MAINNET=EIP712_DOMAIN_MAINNET;exports.EIP712_DOMAIN_TESTNET=EIP712_DOMAIN_TESTNET;exports.ITEMIZED_SIGNATURE_PAYLOAD_DEFINITION_V2=ITEMIZED_SIGNATURE_PAYLOAD_DEFINITION_V2;exports.PAGINATED_DELETE_SIGNATURE_PAYLOAD_DEFINITION_V2=PAGINATED_DELETE_SIGNATURE_PAYLOAD_DEFINITION_V2;exports.PAGINATED_UPSERT_SIGNATURE_PAYLOAD_DEFINITION_V2=PAGINATED_UPSERT_SIGNATURE_PAYLOAD_DEFINITION_V2;exports.PASSKEY_PUBLIC_KEY_DEFINITION=PASSKEY_PUBLIC_KEY_DEFINITION;exports.RECOVERY_COMMITMENT_PAYLOAD_DEFINITION=RECOVERY_COMMITMENT_PAYLOAD_DEFINITION;exports.SIWF_SIGNED_REQUEST_PAYLOAD_DEFINITION=SIWF_SIGNED_REQUEST_PAYLOAD_DEFINITION;exports.createAddKeyData=createAddKeyData;exports.createAddProvider=createAddProvider;exports.createAuthorizedKeyData=createAuthorizedKeyData;exports.createClaimHandlePayload=createClaimHandlePayload;exports.createItemizedAddAction=createItemizedAddAction;exports.createItemizedDeleteAction=createItemizedDeleteAction;exports.createItemizedSignaturePayloadV2=createItemizedSignaturePayloadV2;exports.createPaginatedDeleteSignaturePayloadV2=createPaginatedDeleteSignaturePayloadV2;exports.createPaginatedUpsertSignaturePayloadV2=createPaginatedUpsertSignaturePayloadV2;exports.createPasskeyPublicKey=createPasskeyPublicKey;exports.createRandomKey=createRandomKey;exports.createRecoveryCommitmentPayload=createRecoveryCommitmentPayload;exports.createSiwfLoginRequestPayload=createSiwfLoginRequestPayload;exports.createSiwfSignedRequestPayload=createSiwfSignedRequestPayload;exports.default=index;exports.ethereumAddressToKeyringPair=ethereumAddressToKeyringPair;exports.getAccountId20MultiAddress=getAccountId20MultiAddress;exports.getEip712BrowserRequestAddKeyData=getEip712BrowserRequestAddKeyData;exports.getEip712BrowserRequestAddProvider=getEip712BrowserRequestAddProvider;exports.getEip712BrowserRequestAuthorizedKeyData=getEip712BrowserRequestAuthorizedKeyData;exports.getEip712BrowserRequestClaimHandlePayload=getEip712BrowserRequestClaimHandlePayload;exports.getEip712BrowserRequestItemizedSignaturePayloadV2=getEip712BrowserRequestItemizedSignaturePayloadV2;exports.getEip712BrowserRequestPaginatedDeleteSignaturePayloadV2=getEip712BrowserRequestPaginatedDeleteSignaturePayloadV2;exports.getEip712BrowserRequestPaginatedUpsertSignaturePayloadV2=getEip712BrowserRequestPaginatedUpsertSignaturePayloadV2;exports.getEip712BrowserRequestPasskeyPublicKey=getEip712BrowserRequestPasskeyPublicKey;exports.getEip712BrowserRequestRecoveryCommitmentPayload=getEip712BrowserRequestRecoveryCommitmentPayload;exports.getEip712BrowserRequestSiwfSignedRequestPayload=getEip712BrowserRequestSiwfSignedRequestPayload;exports.getEthereumMessageSigner=getEthereumMessageSigner;exports.getEthereumRegularSigner=getEthereumRegularSigner;exports.getKeyringPairFromSecp256k1PrivateKey=getKeyringPairFromSecp256k1PrivateKey;exports.getSS58AccountFromEthereumAccount=getSS58AccountFromEthereumAccount;exports.getUnifiedAddress=getUnifiedAddress;exports.getUnifiedPublicKey=getUnifiedPublicKey;exports.reverseUnifiedAddressToEthereumAddress=reverseUnifiedAddressToEthereumAddress;exports.sign=sign;exports.verifySignature=verifySignature;Object.defineProperty(exports,'__esModule',{value:true});}));
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.SIWF_SIGNED_REQUEST_PAYLOAD_DEFINITION = exports.ITEMIZED_SIGNATURE_PAYLOAD_DEFINITION_V2 = exports.PAGINATED_UPSERT_SIGNATURE_PAYLOAD_DEFINITION_V2 = exports.PAGINATED_DELETE_SIGNATURE_PAYLOAD_DEFINITION_V2 = exports.PASSKEY_PUBLIC_KEY_DEFINITION = exports.CLAIM_HANDLE_PAYLOAD_DEFINITION = exports.AUTHORIZED_KEY_DATA_DEFINITION = exports.ADD_KEY_DATA_DEFINITION = exports.ADD_PROVIDER_DEFINITION = exports.EIP712_DOMAIN_TESTNET = exports.EIP712_DOMAIN_MAINNET = exports.EIP712_DOMAIN_DEFINITION = void 0;
|
|
3
|
+
exports.SIWF_SIGNED_REQUEST_PAYLOAD_DEFINITION = exports.ITEMIZED_SIGNATURE_PAYLOAD_DEFINITION_V2 = exports.PAGINATED_UPSERT_SIGNATURE_PAYLOAD_DEFINITION_V2 = exports.PAGINATED_DELETE_SIGNATURE_PAYLOAD_DEFINITION_V2 = exports.PASSKEY_PUBLIC_KEY_DEFINITION = exports.CLAIM_HANDLE_PAYLOAD_DEFINITION = exports.RECOVERY_COMMITMENT_PAYLOAD_DEFINITION = exports.AUTHORIZED_KEY_DATA_DEFINITION = exports.ADD_KEY_DATA_DEFINITION = exports.ADD_PROVIDER_DEFINITION = exports.EIP712_DOMAIN_TESTNET = exports.EIP712_DOMAIN_MAINNET = exports.EIP712_DOMAIN_DEFINITION = void 0;
|
|
4
4
|
exports.EIP712_DOMAIN_DEFINITION = {
|
|
5
5
|
EIP712Domain: [
|
|
6
6
|
{
|
|
@@ -83,6 +83,18 @@ exports.AUTHORIZED_KEY_DATA_DEFINITION = {
|
|
|
83
83
|
},
|
|
84
84
|
],
|
|
85
85
|
};
|
|
86
|
+
exports.RECOVERY_COMMITMENT_PAYLOAD_DEFINITION = {
|
|
87
|
+
RecoveryCommitmentPayload: [
|
|
88
|
+
{
|
|
89
|
+
name: 'recoveryCommitment',
|
|
90
|
+
type: 'bytes',
|
|
91
|
+
},
|
|
92
|
+
{
|
|
93
|
+
name: 'expiration',
|
|
94
|
+
type: 'uint32',
|
|
95
|
+
},
|
|
96
|
+
],
|
|
97
|
+
};
|
|
86
98
|
exports.CLAIM_HANDLE_PAYLOAD_DEFINITION = {
|
|
87
99
|
ClaimHandlePayload: [
|
|
88
100
|
{
|
|
@@ -196,6 +208,7 @@ const PAYLOAD_DEFINITIONS = [
|
|
|
196
208
|
exports.PASSKEY_PUBLIC_KEY_DEFINITION,
|
|
197
209
|
exports.PAGINATED_DELETE_SIGNATURE_PAYLOAD_DEFINITION_V2,
|
|
198
210
|
exports.PAGINATED_UPSERT_SIGNATURE_PAYLOAD_DEFINITION_V2,
|
|
211
|
+
exports.RECOVERY_COMMITMENT_PAYLOAD_DEFINITION,
|
|
199
212
|
exports.ITEMIZED_SIGNATURE_PAYLOAD_DEFINITION_V2,
|
|
200
213
|
exports.SIWF_SIGNED_REQUEST_PAYLOAD_DEFINITION,
|
|
201
214
|
];
|
package/cjs/signature.js
CHANGED
|
@@ -5,6 +5,7 @@ exports.verifySignature = verifySignature;
|
|
|
5
5
|
exports.createAddKeyData = createAddKeyData;
|
|
6
6
|
exports.createAuthorizedKeyData = createAuthorizedKeyData;
|
|
7
7
|
exports.createAddProvider = createAddProvider;
|
|
8
|
+
exports.createRecoveryCommitmentPayload = createRecoveryCommitmentPayload;
|
|
8
9
|
exports.createClaimHandlePayload = createClaimHandlePayload;
|
|
9
10
|
exports.createPasskeyPublicKey = createPasskeyPublicKey;
|
|
10
11
|
exports.createItemizedAddAction = createItemizedAddAction;
|
|
@@ -17,6 +18,7 @@ exports.createSiwfLoginRequestPayload = createSiwfLoginRequestPayload;
|
|
|
17
18
|
exports.getEip712BrowserRequestAddKeyData = getEip712BrowserRequestAddKeyData;
|
|
18
19
|
exports.getEip712BrowserRequestAuthorizedKeyData = getEip712BrowserRequestAuthorizedKeyData;
|
|
19
20
|
exports.getEip712BrowserRequestAddProvider = getEip712BrowserRequestAddProvider;
|
|
21
|
+
exports.getEip712BrowserRequestRecoveryCommitmentPayload = getEip712BrowserRequestRecoveryCommitmentPayload;
|
|
20
22
|
exports.getEip712BrowserRequestPaginatedUpsertSignaturePayloadV2 = getEip712BrowserRequestPaginatedUpsertSignaturePayloadV2;
|
|
21
23
|
exports.getEip712BrowserRequestPaginatedDeleteSignaturePayloadV2 = getEip712BrowserRequestPaginatedDeleteSignaturePayloadV2;
|
|
22
24
|
exports.getEip712BrowserRequestItemizedSignaturePayloadV2 = getEip712BrowserRequestItemizedSignaturePayloadV2;
|
|
@@ -87,6 +89,7 @@ function normalizePayload(payload) {
|
|
|
87
89
|
case 'PasskeyPublicKey':
|
|
88
90
|
case 'ClaimHandlePayload':
|
|
89
91
|
case 'AddProvider':
|
|
92
|
+
case 'RecoveryCommitmentPayload':
|
|
90
93
|
case 'SiwfLoginRequestPayload':
|
|
91
94
|
break;
|
|
92
95
|
case 'AddKeyData':
|
|
@@ -125,6 +128,7 @@ function getTypesFor(payloadType) {
|
|
|
125
128
|
AddKeyData: signature_definitions_js_1.ADD_KEY_DATA_DEFINITION,
|
|
126
129
|
AuthorizedKeyData: signature_definitions_js_1.AUTHORIZED_KEY_DATA_DEFINITION,
|
|
127
130
|
AddProvider: signature_definitions_js_1.ADD_PROVIDER_DEFINITION,
|
|
131
|
+
RecoveryCommitmentPayload: signature_definitions_js_1.RECOVERY_COMMITMENT_PAYLOAD_DEFINITION,
|
|
128
132
|
// offchain signatures
|
|
129
133
|
SiwfSignedRequestPayload: signature_definitions_js_1.SIWF_SIGNED_REQUEST_PAYLOAD_DEFINITION,
|
|
130
134
|
};
|
|
@@ -200,6 +204,21 @@ function createAddProvider(authorizedMsaId, schemaIds, expirationBlock) {
|
|
|
200
204
|
expiration: expirationBlock,
|
|
201
205
|
};
|
|
202
206
|
}
|
|
207
|
+
/**
|
|
208
|
+
* Build a RecoveryCommitmentPayload for signature.
|
|
209
|
+
*
|
|
210
|
+
* @param recoveryCommitment The recovery commitment data as a HexString
|
|
211
|
+
* @param expirationBlock Block number after which this payload is invalid
|
|
212
|
+
*/
|
|
213
|
+
function createRecoveryCommitmentPayload(recoveryCommitment, expirationBlock) {
|
|
214
|
+
(0, utils_js_1.assert)((0, utils_js_1.isHexString)(recoveryCommitment), 'recoveryCommitment should be a valid hex string');
|
|
215
|
+
(0, utils_js_1.assert)((0, utils_js_1.isValidUint32)(expirationBlock), 'expiration should be a valid uint32');
|
|
216
|
+
return {
|
|
217
|
+
type: 'RecoveryCommitmentPayload',
|
|
218
|
+
recoveryCommitment: recoveryCommitment,
|
|
219
|
+
expiration: expirationBlock,
|
|
220
|
+
};
|
|
221
|
+
}
|
|
203
222
|
/**
|
|
204
223
|
* Build a ClaimHandlePayload for signature.
|
|
205
224
|
*
|
|
@@ -372,6 +391,18 @@ function getEip712BrowserRequestAddProvider(authorizedMsaId, schemaIds, expirati
|
|
|
372
391
|
const normalized = normalizePayload(message);
|
|
373
392
|
return createEip712Payload(signature_definitions_js_1.ADD_PROVIDER_DEFINITION, message.type, domain, normalized);
|
|
374
393
|
}
|
|
394
|
+
/**
|
|
395
|
+
* Returns the EIP-712 browser request for a RecoveryCommitmentPayload for signing.
|
|
396
|
+
*
|
|
397
|
+
* @param recoveryCommitment The recovery commitment data as a Uint8Array
|
|
398
|
+
* @param expirationBlock Block number after which this payload is invalid
|
|
399
|
+
* @param domain
|
|
400
|
+
*/
|
|
401
|
+
function getEip712BrowserRequestRecoveryCommitmentPayload(recoveryCommitment, expirationBlock, domain = signature_definitions_js_1.EIP712_DOMAIN_MAINNET) {
|
|
402
|
+
const message = createRecoveryCommitmentPayload(recoveryCommitment, expirationBlock);
|
|
403
|
+
const normalized = normalizePayload(message);
|
|
404
|
+
return createEip712Payload(signature_definitions_js_1.RECOVERY_COMMITMENT_PAYLOAD_DEFINITION, message.type, domain, normalized);
|
|
405
|
+
}
|
|
375
406
|
/**
|
|
376
407
|
* Returns the EIP-712 browser request for a PaginatedUpsertSignaturePayloadV2 for signing.
|
|
377
408
|
*
|
|
@@ -80,6 +80,18 @@ export const AUTHORIZED_KEY_DATA_DEFINITION = {
|
|
|
80
80
|
},
|
|
81
81
|
],
|
|
82
82
|
};
|
|
83
|
+
export const RECOVERY_COMMITMENT_PAYLOAD_DEFINITION = {
|
|
84
|
+
RecoveryCommitmentPayload: [
|
|
85
|
+
{
|
|
86
|
+
name: 'recoveryCommitment',
|
|
87
|
+
type: 'bytes',
|
|
88
|
+
},
|
|
89
|
+
{
|
|
90
|
+
name: 'expiration',
|
|
91
|
+
type: 'uint32',
|
|
92
|
+
},
|
|
93
|
+
],
|
|
94
|
+
};
|
|
83
95
|
export const CLAIM_HANDLE_PAYLOAD_DEFINITION = {
|
|
84
96
|
ClaimHandlePayload: [
|
|
85
97
|
{
|
|
@@ -193,6 +205,7 @@ const PAYLOAD_DEFINITIONS = [
|
|
|
193
205
|
PASSKEY_PUBLIC_KEY_DEFINITION,
|
|
194
206
|
PAGINATED_DELETE_SIGNATURE_PAYLOAD_DEFINITION_V2,
|
|
195
207
|
PAGINATED_UPSERT_SIGNATURE_PAYLOAD_DEFINITION_V2,
|
|
208
|
+
RECOVERY_COMMITMENT_PAYLOAD_DEFINITION,
|
|
196
209
|
ITEMIZED_SIGNATURE_PAYLOAD_DEFINITION_V2,
|
|
197
210
|
SIWF_SIGNED_REQUEST_PAYLOAD_DEFINITION,
|
|
198
211
|
];
|
package/esm/signature.js
CHANGED
|
@@ -2,7 +2,7 @@ import { assert, isHexString, isValidUint16, isValidUint32, isValidUint64String
|
|
|
2
2
|
import { reverseUnifiedAddressToEthereumAddress } from './address.js';
|
|
3
3
|
import { ethers } from 'ethers';
|
|
4
4
|
import { u8aToHex } from '@polkadot/util';
|
|
5
|
-
import { ADD_KEY_DATA_DEFINITION, ADD_PROVIDER_DEFINITION, AUTHORIZED_KEY_DATA_DEFINITION, CLAIM_HANDLE_PAYLOAD_DEFINITION, EIP712_DOMAIN_MAINNET, EIP712_DOMAIN_DEFINITION, ITEMIZED_SIGNATURE_PAYLOAD_DEFINITION_V2, PAGINATED_DELETE_SIGNATURE_PAYLOAD_DEFINITION_V2, PAGINATED_UPSERT_SIGNATURE_PAYLOAD_DEFINITION_V2, PASSKEY_PUBLIC_KEY_DEFINITION, SIWF_SIGNED_REQUEST_PAYLOAD_DEFINITION, EIP712_DOMAIN_TESTNET, } from './signature.definitions.js';
|
|
5
|
+
import { ADD_KEY_DATA_DEFINITION, ADD_PROVIDER_DEFINITION, AUTHORIZED_KEY_DATA_DEFINITION, CLAIM_HANDLE_PAYLOAD_DEFINITION, EIP712_DOMAIN_MAINNET, EIP712_DOMAIN_DEFINITION, ITEMIZED_SIGNATURE_PAYLOAD_DEFINITION_V2, PAGINATED_DELETE_SIGNATURE_PAYLOAD_DEFINITION_V2, PAGINATED_UPSERT_SIGNATURE_PAYLOAD_DEFINITION_V2, PASSKEY_PUBLIC_KEY_DEFINITION, SIWF_SIGNED_REQUEST_PAYLOAD_DEFINITION, EIP712_DOMAIN_TESTNET, RECOVERY_COMMITMENT_PAYLOAD_DEFINITION, } from './signature.definitions.js';
|
|
6
6
|
/**
|
|
7
7
|
* Signing EIP-712 or ERC-191 compatible signature based on payload
|
|
8
8
|
* @param secretKey
|
|
@@ -60,6 +60,7 @@ function normalizePayload(payload) {
|
|
|
60
60
|
case 'PasskeyPublicKey':
|
|
61
61
|
case 'ClaimHandlePayload':
|
|
62
62
|
case 'AddProvider':
|
|
63
|
+
case 'RecoveryCommitmentPayload':
|
|
63
64
|
case 'SiwfLoginRequestPayload':
|
|
64
65
|
break;
|
|
65
66
|
case 'AddKeyData':
|
|
@@ -98,6 +99,7 @@ function getTypesFor(payloadType) {
|
|
|
98
99
|
AddKeyData: ADD_KEY_DATA_DEFINITION,
|
|
99
100
|
AuthorizedKeyData: AUTHORIZED_KEY_DATA_DEFINITION,
|
|
100
101
|
AddProvider: ADD_PROVIDER_DEFINITION,
|
|
102
|
+
RecoveryCommitmentPayload: RECOVERY_COMMITMENT_PAYLOAD_DEFINITION,
|
|
101
103
|
// offchain signatures
|
|
102
104
|
SiwfSignedRequestPayload: SIWF_SIGNED_REQUEST_PAYLOAD_DEFINITION,
|
|
103
105
|
};
|
|
@@ -173,6 +175,21 @@ export function createAddProvider(authorizedMsaId, schemaIds, expirationBlock) {
|
|
|
173
175
|
expiration: expirationBlock,
|
|
174
176
|
};
|
|
175
177
|
}
|
|
178
|
+
/**
|
|
179
|
+
* Build a RecoveryCommitmentPayload for signature.
|
|
180
|
+
*
|
|
181
|
+
* @param recoveryCommitment The recovery commitment data as a HexString
|
|
182
|
+
* @param expirationBlock Block number after which this payload is invalid
|
|
183
|
+
*/
|
|
184
|
+
export function createRecoveryCommitmentPayload(recoveryCommitment, expirationBlock) {
|
|
185
|
+
assert(isHexString(recoveryCommitment), 'recoveryCommitment should be a valid hex string');
|
|
186
|
+
assert(isValidUint32(expirationBlock), 'expiration should be a valid uint32');
|
|
187
|
+
return {
|
|
188
|
+
type: 'RecoveryCommitmentPayload',
|
|
189
|
+
recoveryCommitment: recoveryCommitment,
|
|
190
|
+
expiration: expirationBlock,
|
|
191
|
+
};
|
|
192
|
+
}
|
|
176
193
|
/**
|
|
177
194
|
* Build a ClaimHandlePayload for signature.
|
|
178
195
|
*
|
|
@@ -345,6 +362,18 @@ export function getEip712BrowserRequestAddProvider(authorizedMsaId, schemaIds, e
|
|
|
345
362
|
const normalized = normalizePayload(message);
|
|
346
363
|
return createEip712Payload(ADD_PROVIDER_DEFINITION, message.type, domain, normalized);
|
|
347
364
|
}
|
|
365
|
+
/**
|
|
366
|
+
* Returns the EIP-712 browser request for a RecoveryCommitmentPayload for signing.
|
|
367
|
+
*
|
|
368
|
+
* @param recoveryCommitment The recovery commitment data as a Uint8Array
|
|
369
|
+
* @param expirationBlock Block number after which this payload is invalid
|
|
370
|
+
* @param domain
|
|
371
|
+
*/
|
|
372
|
+
export function getEip712BrowserRequestRecoveryCommitmentPayload(recoveryCommitment, expirationBlock, domain = EIP712_DOMAIN_MAINNET) {
|
|
373
|
+
const message = createRecoveryCommitmentPayload(recoveryCommitment, expirationBlock);
|
|
374
|
+
const normalized = normalizePayload(message);
|
|
375
|
+
return createEip712Payload(RECOVERY_COMMITMENT_PAYLOAD_DEFINITION, message.type, domain, normalized);
|
|
376
|
+
}
|
|
348
377
|
/**
|
|
349
378
|
* Returns the EIP-712 browser request for a PaginatedUpsertSignaturePayloadV2 for signing.
|
|
350
379
|
*
|
package/index.d.ts
CHANGED
|
@@ -9,6 +9,7 @@ declare const _default: {
|
|
|
9
9
|
createAddKeyData(msaId: string | bigint, newPublicKey: payloads.HexString | Uint8Array, expirationBlock: number): payloads.AddKeyData;
|
|
10
10
|
createAuthorizedKeyData(msaId: string | bigint, newPublicKey: payloads.HexString | Uint8Array, expirationBlock: number): payloads.AuthorizedKeyData;
|
|
11
11
|
createAddProvider(authorizedMsaId: string | bigint, schemaIds: number[], expirationBlock: number): payloads.AddProvider;
|
|
12
|
+
createRecoveryCommitmentPayload(recoveryCommitment: payloads.HexString, expirationBlock: number): payloads.RecoveryCommitmentPayload;
|
|
12
13
|
createClaimHandlePayload(handle: string, expirationBlock: number): payloads.ClaimHandlePayload;
|
|
13
14
|
createPasskeyPublicKey(publicKey: payloads.HexString | Uint8Array): payloads.PasskeyPublicKey;
|
|
14
15
|
createItemizedAddAction(data: payloads.HexString | Uint8Array): payloads.AddItemizedAction;
|
|
@@ -21,6 +22,7 @@ declare const _default: {
|
|
|
21
22
|
getEip712BrowserRequestAddKeyData(msaId: string | bigint, newPublicKey: payloads.HexString | Uint8Array, expirationBlock: number, domain?: payloads.EipDomainPayload): unknown;
|
|
22
23
|
getEip712BrowserRequestAuthorizedKeyData(msaId: string | bigint, authorizedPublicKey: payloads.HexString | Uint8Array, expirationBlock: number, domain?: payloads.EipDomainPayload): unknown;
|
|
23
24
|
getEip712BrowserRequestAddProvider(authorizedMsaId: string | bigint, schemaIds: number[], expirationBlock: number, domain?: payloads.EipDomainPayload): unknown;
|
|
25
|
+
getEip712BrowserRequestRecoveryCommitmentPayload(recoveryCommitment: payloads.HexString, expirationBlock: number, domain?: payloads.EipDomainPayload): unknown;
|
|
24
26
|
getEip712BrowserRequestPaginatedUpsertSignaturePayloadV2(schemaId: number, pageId: number, targetHash: number, expiration: number, payload: payloads.HexString | Uint8Array, domain?: payloads.EipDomainPayload): unknown;
|
|
25
27
|
getEip712BrowserRequestPaginatedDeleteSignaturePayloadV2(schemaId: number, pageId: number, targetHash: number, expiration: number, domain?: payloads.EipDomainPayload): unknown;
|
|
26
28
|
getEip712BrowserRequestItemizedSignaturePayloadV2(schemaId: number, targetHash: number, expiration: number, actions: payloads.ItemizedAction[], domain?: payloads.EipDomainPayload): unknown;
|
|
@@ -55,6 +57,12 @@ declare const _default: {
|
|
|
55
57
|
type: string;
|
|
56
58
|
}[];
|
|
57
59
|
};
|
|
60
|
+
RECOVERY_COMMITMENT_PAYLOAD_DEFINITION: {
|
|
61
|
+
RecoveryCommitmentPayload: {
|
|
62
|
+
name: string;
|
|
63
|
+
type: string;
|
|
64
|
+
}[];
|
|
65
|
+
};
|
|
58
66
|
CLAIM_HANDLE_PAYLOAD_DEFINITION: {
|
|
59
67
|
ClaimHandlePayload: {
|
|
60
68
|
name: string;
|
package/package.json
CHANGED
package/payloads.d.ts
CHANGED
|
@@ -77,6 +77,11 @@ export interface AddProvider {
|
|
|
77
77
|
schemaIds: number[];
|
|
78
78
|
expiration: number;
|
|
79
79
|
}
|
|
80
|
+
export interface RecoveryCommitmentPayload {
|
|
81
|
+
type: 'RecoveryCommitmentPayload';
|
|
82
|
+
recoveryCommitment: HexString;
|
|
83
|
+
expiration: number;
|
|
84
|
+
}
|
|
80
85
|
export interface SiwfSignedRequestPayload {
|
|
81
86
|
type: 'SiwfSignedRequestPayload';
|
|
82
87
|
callback: string;
|
|
@@ -87,7 +92,7 @@ export interface SiwfLoginRequestPayload {
|
|
|
87
92
|
type: 'SiwfLoginRequestPayload';
|
|
88
93
|
message: string;
|
|
89
94
|
}
|
|
90
|
-
export type SupportedPayload = PaginatedUpsertSignaturePayloadV2 | PaginatedDeleteSignaturePayloadV2 | ItemizedSignaturePayloadV2 | PasskeyPublicKey | ClaimHandlePayload | AddKeyData | AuthorizedKeyData | AddProvider | SiwfSignedRequestPayload | SiwfLoginRequestPayload;
|
|
95
|
+
export type SupportedPayload = PaginatedUpsertSignaturePayloadV2 | PaginatedDeleteSignaturePayloadV2 | ItemizedSignaturePayloadV2 | PasskeyPublicKey | ClaimHandlePayload | AddKeyData | AuthorizedKeyData | AddProvider | RecoveryCommitmentPayload | SiwfSignedRequestPayload | SiwfLoginRequestPayload;
|
|
91
96
|
export type NormalizedSupportedPayload = Omit<SupportedPayload, 'type'>;
|
|
92
97
|
export interface EipDomainPayload {
|
|
93
98
|
name: string;
|
package/signature.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { AddKeyData, AuthorizedKeyData, AddProvider, ChainType, ClaimHandlePayload, EcdsaSignature, ItemizedSignaturePayloadV2, PaginatedDeleteSignaturePayloadV2, PaginatedUpsertSignaturePayloadV2, PasskeyPublicKey, SupportedPayload, HexString, AddItemizedAction, DeleteItemizedAction, ItemizedAction, EipDomainPayload, SiwfSignedRequestPayload, SiwfLoginRequestPayload } from './payloads.js';
|
|
1
|
+
import { AddKeyData, AuthorizedKeyData, AddProvider, ChainType, ClaimHandlePayload, EcdsaSignature, ItemizedSignaturePayloadV2, PaginatedDeleteSignaturePayloadV2, PaginatedUpsertSignaturePayloadV2, PasskeyPublicKey, SupportedPayload, HexString, AddItemizedAction, DeleteItemizedAction, ItemizedAction, EipDomainPayload, RecoveryCommitmentPayload, SiwfSignedRequestPayload, SiwfLoginRequestPayload } from './payloads.js';
|
|
2
2
|
import { KeyringPair } from '@polkadot/keyring/types';
|
|
3
3
|
import { Signer } from '@polkadot/types/types';
|
|
4
4
|
/**
|
|
@@ -40,6 +40,13 @@ export declare function createAuthorizedKeyData(msaId: string | bigint, newPubli
|
|
|
40
40
|
* @param expirationBlock Block number after which this payload is invalid
|
|
41
41
|
*/
|
|
42
42
|
export declare function createAddProvider(authorizedMsaId: string | bigint, schemaIds: number[], expirationBlock: number): AddProvider;
|
|
43
|
+
/**
|
|
44
|
+
* Build a RecoveryCommitmentPayload for signature.
|
|
45
|
+
*
|
|
46
|
+
* @param recoveryCommitment The recovery commitment data as a HexString
|
|
47
|
+
* @param expirationBlock Block number after which this payload is invalid
|
|
48
|
+
*/
|
|
49
|
+
export declare function createRecoveryCommitmentPayload(recoveryCommitment: HexString, expirationBlock: number): RecoveryCommitmentPayload;
|
|
43
50
|
/**
|
|
44
51
|
* Build a ClaimHandlePayload for signature.
|
|
45
52
|
*
|
|
@@ -124,6 +131,14 @@ export declare function getEip712BrowserRequestAuthorizedKeyData(msaId: string |
|
|
|
124
131
|
* @param domain
|
|
125
132
|
*/
|
|
126
133
|
export declare function getEip712BrowserRequestAddProvider(authorizedMsaId: string | bigint, schemaIds: number[], expirationBlock: number, domain?: EipDomainPayload): unknown;
|
|
134
|
+
/**
|
|
135
|
+
* Returns the EIP-712 browser request for a RecoveryCommitmentPayload for signing.
|
|
136
|
+
*
|
|
137
|
+
* @param recoveryCommitment The recovery commitment data as a Uint8Array
|
|
138
|
+
* @param expirationBlock Block number after which this payload is invalid
|
|
139
|
+
* @param domain
|
|
140
|
+
*/
|
|
141
|
+
export declare function getEip712BrowserRequestRecoveryCommitmentPayload(recoveryCommitment: HexString, expirationBlock: number, domain?: EipDomainPayload): unknown;
|
|
127
142
|
/**
|
|
128
143
|
* Returns the EIP-712 browser request for a PaginatedUpsertSignaturePayloadV2 for signing.
|
|
129
144
|
*
|
|
@@ -25,6 +25,12 @@ export declare const AUTHORIZED_KEY_DATA_DEFINITION: {
|
|
|
25
25
|
type: string;
|
|
26
26
|
}[];
|
|
27
27
|
};
|
|
28
|
+
export declare const RECOVERY_COMMITMENT_PAYLOAD_DEFINITION: {
|
|
29
|
+
RecoveryCommitmentPayload: {
|
|
30
|
+
name: string;
|
|
31
|
+
type: string;
|
|
32
|
+
}[];
|
|
33
|
+
};
|
|
28
34
|
export declare const CLAIM_HANDLE_PAYLOAD_DEFINITION: {
|
|
29
35
|
ClaimHandlePayload: {
|
|
30
36
|
name: string;
|
|
@@ -80,6 +86,11 @@ declare const PAYLOAD_DEFINITIONS: ({
|
|
|
80
86
|
name: string;
|
|
81
87
|
type: string;
|
|
82
88
|
}[];
|
|
89
|
+
} | {
|
|
90
|
+
RecoveryCommitmentPayload: {
|
|
91
|
+
name: string;
|
|
92
|
+
type: string;
|
|
93
|
+
}[];
|
|
83
94
|
} | {
|
|
84
95
|
ClaimHandlePayload: {
|
|
85
96
|
name: string;
|