Skip to content
Merged
Show file tree
Hide file tree
Changes from 12 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
39 changes: 39 additions & 0 deletions registry/zama/calldata-ACL.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
{
"$schema": "../../specs/erc7730-v2.schema.json",
"context": {
"$id": "ACL",
"contract": {
"deployments": [
{ "chainId": 1, "address": "0xcA2E8f1F656CD25C01F05d0b243Ab1ecd4a8ffb6" },
{ "chainId": 11155111, "address": "0xf0Ffdc93b7E186bC2f8CB3dAA75D86d1930A433D" }
]
}
},
"metadata": { "contractName": "ACL" },
"display": {
"definitions": {
"delegationContract": { "label": "For contract", "format": "addressName", "params": { "types": ["contract"] } }
},
"formats": {
"delegateForUserDecryption(address delegate, address contractAddress, uint64 expirationDate)": {
"$id": "delegateForUserDecryption",
"intent": "Delegate decryption rights",
"interpolatedIntent": "Delegate decryption to {delegate} for {contractAddress} until {expirationDate}",
"fields": [
{ "path": "delegate", "label": "Delegate to", "format": "addressName", "params": { "types": ["eoa", "contract"] } },
{ "path": "contractAddress", "$ref": "$.display.definitions.delegationContract" },
{ "path": "expirationDate", "label": "Delegated until", "format": "date", "params": { "encoding": "timestamp" } }
]
},
"revokeDelegationForUserDecryption(address delegate, address contractAddress)": {
"$id": "revokeUserDecryptDelegation",
"intent": "Revoke decryption delegation",
"interpolatedIntent": "Revoke decryption delegation from {delegate} for {contractAddress}",
"fields": [
{ "path": "delegate", "label": "Revoke from", "format": "addressName", "params": { "types": ["eoa", "contract"] } },
{ "path": "contractAddress", "$ref": "$.display.definitions.delegationContract" }
]
}
}
}
}
201 changes: 201 additions & 0 deletions registry/zama/calldata-ConfidentialWrapper.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,201 @@
{
"$schema": "../../specs/erc7730-v2.schema.json",
"context": {
"$id": "ConfidentialWrapper",
"contract": {
"deployments": [
{ "chainId": 1, "address": "0xe978F22157048E5DB8E5d07971376e86671672B2" },
{ "chainId": 1, "address": "0xAe0207C757Aa2B4019Ad96edD0092ddc63EF0c50" },
{ "chainId": 1, "address": "0xda9396b82634Ea99243cE51258B6A5Ae512D4893" },
{ "chainId": 1, "address": "0x85dE671c3bec1aDeD752c3Cea943521181C826bc" },
{ "chainId": 1, "address": "0x80CB147Fd86dC6dEe3Eee7e4Cee33d1397d98071" },
{ "chainId": 1, "address": "0xa873750ccBafD5ec7Dd13bfD5237d7129832eDD9" },
{ "chainId": 1, "address": "0x73cc9aF9d6BEFdb3c3fAf8a5E8c05Cb95FdaEEf1" },
{ "chainId": 1, "address": "0xBA4cFF6ED6F7Cb2A58776dECa4E984b498446762" },
{ "chainId": 1, "address": "0x66Bf74E96900D1a19c7070D939D124f2F565C458" },
{ "chainId": 11155111, "address": "0x7c5BF43B851c1dff1a4feE8dB225b87f2C223639" },
{ "chainId": 11155111, "address": "0x4E7B06D78965594eB5EF5414c357ca21E1554491" },
{ "chainId": 11155111, "address": "0x46208622DA27d91db4f0393733C8BA082ed83158" },
{ "chainId": 11155111, "address": "0xaa5612FA27c927a0c7961f5AEFEE5ba3A0F9C891" },
{ "chainId": 11155111, "address": "0xf2D628d2598aF4eAF94CB76a437Ff86CA78FfbFB" },
{ "chainId": 11155111, "address": "0xfCE5c7069c5525eF6c8C2b2E35A745bA20a2F7CC" },
{ "chainId": 11155111, "address": "0xe4FcF848739845BC81Dee1d5352cf3844F0a60C7" },
{ "chainId": 11155111, "address": "0x167DC962808B32CFFFc7e14B5018c0bE06A3A208" },
{ "chainId": 11155111, "address": "0x13F7d34A4f0102734F19E3Ff16e068Fe194B28c4" }
]
}
},
"metadata": { "contractName": "ConfidentialWrapper" },
"display": {
"definitions": {
"encryptedAmount": {
"label": "Amount",
"format": "tokenAmount",
"params": { "tokenPath": "@.to" },
"encryption": { "scheme": "fhevm", "plaintextType": "uint64", "fallbackLabel": "[Encrypted Amount]" }
},
"receiver": { "label": "Receiver", "format": "addressName", "params": { "types": ["eoa", "contract"] } },
"holder": { "label": "Holder", "format": "addressName", "params": { "types": ["eoa", "contract"] } },
"inputProof": { "label": "Encryption proof", "format": "raw" },
"decryptionProof": { "label": "Decryption proof", "format": "raw" },
"callbackData": { "label": "Callback data", "format": "raw" }
},
"formats": {
"wrap(address to, uint256 amount)": {
"$id": "wrap",
"intent": "Shield",
Comment thread
melanciani marked this conversation as resolved.
"interpolatedIntent": "Shield {amount} underlying units to {to}",
"fields": [
{ "path": "amount", "label": "Amount (underlying units)", "format": "raw" },
Comment thread
kuzdogan marked this conversation as resolved.
{ "path": "to", "$ref": "$.display.definitions.receiver" }
]
},
"unwrap(address from, address to, bytes32 amount)": {
"$id": "unwrap",
"intent": "Request to unshield",
"interpolatedIntent": "Request to unshield {amount} from {from} to {to}",
"fields": [
{ "path": "from", "$ref": "$.display.definitions.holder" },
{ "path": "to", "$ref": "$.display.definitions.receiver" },
{ "path": "amount", "$ref": "$.display.definitions.encryptedAmount" }
]
},
"unwrap(address from, address to, bytes32 encryptedAmount, bytes inputProof)": {
"$id": "unwrapWithProof",
"intent": "Request to unshield",
"interpolatedIntent": "Request to unshield {encryptedAmount} from {from} to {to}",
"fields": [
{ "path": "from", "$ref": "$.display.definitions.holder" },
{ "path": "to", "$ref": "$.display.definitions.receiver" },
{ "path": "encryptedAmount", "$ref": "$.display.definitions.encryptedAmount" },
{ "path": "inputProof", "$ref": "$.display.definitions.inputProof", "visible": "never" }
Comment thread
melanciani marked this conversation as resolved.
]
},
"finalizeUnwrap(bytes32 unwrapRequestId, uint64 unwrapAmountCleartext, bytes decryptionProof)": {
"$id": "finalizeUnwrap",
"intent": "Finalize unshield",
"interpolatedIntent": "Finalize unshield of {unwrapAmountCleartext}",
"fields": [
{ "path": "unwrapAmountCleartext", "label": "Amount", "format": "tokenAmount", "params": { "tokenPath": "@.to" } },
{ "path": "unwrapRequestId", "label": "Request ID", "format": "raw" },
{ "path": "decryptionProof", "$ref": "$.display.definitions.decryptionProof", "visible": "never" }
Comment thread
melanciani marked this conversation as resolved.
]
},
"confidentialTransfer(address to, bytes32 amount)": {
"$id": "cTransfer",
"intent": "Confidential transfer",
"interpolatedIntent": "Confidential transfer of {amount} to {to}",
"fields": [
{ "path": "amount", "$ref": "$.display.definitions.encryptedAmount" },
{ "path": "to", "$ref": "$.display.definitions.receiver" }
]
},
"confidentialTransfer(address to, bytes32 encryptedAmount, bytes inputProof)": {
"$id": "cTransferWithProof",
"intent": "Confidential transfer",
"interpolatedIntent": "Confidential transfer of {encryptedAmount} to {to}",
"fields": [
{ "path": "encryptedAmount", "$ref": "$.display.definitions.encryptedAmount" },
{ "path": "to", "$ref": "$.display.definitions.receiver" },
{ "path": "inputProof", "$ref": "$.display.definitions.inputProof", "visible": "never" }
]
},
"confidentialTransferFrom(address from, address to, bytes32 amount)": {
"$id": "cTransferFrom",
"intent": "Confidential transfer",
"interpolatedIntent": "Confidential transfer of {amount} from {from} to {to}",
"fields": [
{ "path": "amount", "$ref": "$.display.definitions.encryptedAmount" },
{ "path": "from", "$ref": "$.display.definitions.holder" },
{ "path": "to", "$ref": "$.display.definitions.receiver" }
]
},
"confidentialTransferFrom(address from, address to, bytes32 encryptedAmount, bytes inputProof)": {
"$id": "cTransferFromWithProof",
"intent": "Confidential transfer",
"interpolatedIntent": "Confidential transfer of {encryptedAmount} from {from} to {to}",
"fields": [
{ "path": "encryptedAmount", "$ref": "$.display.definitions.encryptedAmount" },
{ "path": "from", "$ref": "$.display.definitions.holder" },
{ "path": "to", "$ref": "$.display.definitions.receiver" },
{ "path": "inputProof", "$ref": "$.display.definitions.inputProof", "visible": "never" }
]
},
"confidentialTransferAndCall(address to, bytes32 amount, bytes data)": {
"$id": "cTransferAndCall",
"intent": "Confidential transfer",
"interpolatedIntent": "Confidential transfer of {amount} to {to}",
"fields": [
{ "path": "amount", "$ref": "$.display.definitions.encryptedAmount" },
{ "path": "to", "$ref": "$.display.definitions.receiver" },
{ "path": "data", "$ref": "$.display.definitions.callbackData", "visible": "never" }
]
},
"confidentialTransferAndCall(address to, bytes32 encryptedAmount, bytes inputProof, bytes data)": {
"$id": "cTransferAndCallWithProof",
"intent": "Confidential transfer",
"interpolatedIntent": "Confidential transfer of {encryptedAmount} to {to}",
"fields": [
{ "path": "encryptedAmount", "$ref": "$.display.definitions.encryptedAmount" },
{ "path": "to", "$ref": "$.display.definitions.receiver" },
{ "path": "inputProof", "$ref": "$.display.definitions.inputProof", "visible": "never" },
{ "path": "data", "$ref": "$.display.definitions.callbackData", "visible": "never" }
]
},
"confidentialTransferFromAndCall(address from, address to, bytes32 amount, bytes data)": {
"$id": "cTransferFromAndCall",
"intent": "Confidential transfer",
"interpolatedIntent": "Confidential transfer of {amount} from {from} to {to}",
"fields": [
{ "path": "amount", "$ref": "$.display.definitions.encryptedAmount" },
{ "path": "from", "$ref": "$.display.definitions.holder" },
{ "path": "to", "$ref": "$.display.definitions.receiver" },
{ "path": "data", "$ref": "$.display.definitions.callbackData", "visible": "never" }
]
},
"confidentialTransferFromAndCall(address from, address to, bytes32 encryptedAmount, bytes inputProof, bytes data)": {
"$id": "cTransferFromAndCallWithProof",
"intent": "Confidential transfer",
"interpolatedIntent": "Confidential transfer of {encryptedAmount} from {from} to {to}",
"fields": [
{ "path": "encryptedAmount", "$ref": "$.display.definitions.encryptedAmount" },
{ "path": "from", "$ref": "$.display.definitions.holder" },
{ "path": "to", "$ref": "$.display.definitions.receiver" },
{ "path": "inputProof", "$ref": "$.display.definitions.inputProof", "visible": "never" },
{ "path": "data", "$ref": "$.display.definitions.callbackData", "visible": "never" }
]
},
"setOperator(address operator, uint48 until)": {
"$id": "setOperator",
"intent": "Set operator authorization",
"interpolatedIntent": "Set {operator} authorization to expire on {until}",
"fields": [
{ "path": "operator", "label": "Operator", "format": "addressName", "params": { "types": ["eoa", "contract"] } },
{ "path": "until", "label": "Authorized until", "format": "date", "params": { "encoding": "timestamp" } }
]
},
"requestDiscloseEncryptedAmount(bytes32 encryptedAmount)": {
"$id": "requestDiscloseEncryptedAmount",
"intent": "Request public disclosure",
"interpolatedIntent": "Request public disclosure of {encryptedAmount}",
"fields": [{ "path": "encryptedAmount", "$ref": "$.display.definitions.encryptedAmount" }]
},
"discloseEncryptedAmount(bytes32 encryptedAmount, uint64 cleartextAmount, bytes decryptionProof)": {
"$id": "discloseEncryptedAmount",
"intent": "Disclose encrypted amount publicly",
"interpolatedIntent": "Disclose {encryptedAmount} publicly as {cleartextAmount}",
"fields": [
{
"path": "encryptedAmount",
"label": "Encrypted amount reference",
"format": "tokenAmount",
"params": { "tokenPath": "@.to" },
"encryption": { "scheme": "fhevm", "plaintextType": "uint64", "fallbackLabel": "[Encrypted Amount]" }
},
{ "path": "cleartextAmount", "label": "Amount", "format": "tokenAmount", "params": { "tokenPath": "@.to" } },
{ "path": "decryptionProof", "$ref": "$.display.definitions.decryptionProof", "visible": "never" }
]
}
}
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
{
"$schema": "../../specs/erc7730-v2.schema.json",
"context": {
"eip712": {
"deployments": [
{ "chainId": 1, "address": "0x0f6024a97684f7d90ddb0fAAD79cB15F2C888D24" },
{ "chainId": 11155111, "address": "0x5D8BD78e2ea6bbE41f26dFe9fdaEAa349e077478" }
],
"domain": { "name": "Decryption", "version": "1" }
}
},
"metadata": {},
"display": {
"formats": {
"DelegatedUserDecryptRequestVerification(bytes publicKey,address[] contractAddresses,address delegatorAddress,uint256 startTimestamp,uint256 durationDays,bytes extraData)": {
"$id": "delegatedUserDecryptRequestV1",
"intent": "Authorize delegated decryption on behalf of another account",
"interpolatedIntent": "Authorize decryption on behalf of {delegatorAddress} for {contractAddresses.[]} for {durationDays} days",
"fields": [
{ "path": "delegatorAddress", "label": "Decrypt on behalf of", "format": "addressName", "params": { "types": ["eoa", "contract"] } },
{ "path": "contractAddresses.[]", "label": "Authorized contracts", "format": "addressName", "params": { "types": ["contract"] } },
{ "path": "startTimestamp", "label": "Valid from", "format": "date", "params": { "encoding": "timestamp" } },
{ "path": "durationDays", "label": "Valid for (days)", "format": "raw" },
{ "path": "publicKey", "label": "Public key", "format": "raw", "visible": "never" },
{ "path": "extraData", "label": "Extra data", "format": "raw", "visible": "never" }
]
}
}
}
}
29 changes: 29 additions & 0 deletions registry/zama/eip712-UserDecryptRequestVerificationV1.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
{
"$schema": "../../specs/erc7730-v2.schema.json",
"context": {
"eip712": {
"deployments": [
{ "chainId": 1, "address": "0x0f6024a97684f7d90ddb0fAAD79cB15F2C888D24" },
{ "chainId": 11155111, "address": "0x5D8BD78e2ea6bbE41f26dFe9fdaEAa349e077478" }
],
"domain": { "name": "Decryption", "version": "1" }
}
},
"metadata": {},
"display": {
"formats": {
"UserDecryptRequestVerification(bytes publicKey,address[] contractAddresses,uint256 startTimestamp,uint256 durationDays,bytes extraData)": {
"$id": "userDecryptRequestV1",
"intent": "Authorize decryption of your confidential data",
"interpolatedIntent": "Authorize decryption for {contractAddresses.[]} for {durationDays} days",
"fields": [
{ "path": "contractAddresses.[]", "label": "Authorized contracts", "format": "addressName", "params": { "types": ["contract"] } },
{ "path": "startTimestamp", "label": "Valid from", "format": "date", "params": { "encoding": "timestamp" } },
{ "path": "durationDays", "label": "Valid for (days)", "format": "raw" },
{ "path": "publicKey", "label": "Public key", "format": "raw", "visible": "never" },
{ "path": "extraData", "label": "Extra data", "format": "raw", "visible": "never" }
]
}
}
}
}
30 changes: 30 additions & 0 deletions registry/zama/eip712-UserDecryptRequestVerificationV2.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
{
"$schema": "../../specs/erc7730-v2.schema.json",
"context": {
"eip712": {
"deployments": [
{ "chainId": 1, "address": "0x0f6024a97684f7d90ddb0fAAD79cB15F2C888D24" },
{ "chainId": 11155111, "address": "0x5D8BD78e2ea6bbE41f26dFe9fdaEAa349e077478" }
],
"domain": { "name": "Decryption", "version": "1" }
}
},
"metadata": {},
"display": {
"formats": {
"UserDecryptRequestVerification(address userAddress,bytes publicKey,address[] allowedContracts,uint256 startTimestamp,uint256 durationSeconds,bytes extraData)": {
"$id": "userDecryptRequestV2",
"intent": "Authorize decryption of your confidential data",
"interpolatedIntent": "Authorize {userAddress} to decrypt for {allowedContracts.[]} for {durationSeconds}",
"fields": [
{ "path": "userAddress", "label": "Requesting account", "format": "addressName", "params": { "types": ["eoa", "contract"] } },
{ "path": "allowedContracts.[]", "label": "Authorized contracts", "format": "addressName", "params": { "types": ["contract"] } },
{ "path": "startTimestamp", "label": "Valid from", "format": "date", "params": { "encoding": "timestamp" } },
{ "path": "durationSeconds", "label": "Valid for", "format": "duration" },
{ "path": "publicKey", "label": "Public key", "format": "raw", "visible": "never" },
{ "path": "extraData", "label": "Extra data", "format": "raw", "visible": "never" }
]
}
}
}
}
Loading