ONCHAINID Interface
The ONCHAINID interface defines the set of functions and events used to manage identities and claims on the blockchain. It extends the functionality of two key interfaces: IERC734
and IERC735
.
isClaimValid
Source: IIdentity
This function checks if a claim is valid based on the identity contract, claim topic, signature, and data provided.
function isClaimValid(
IIdentity _identity,
uint256 claimTopic,
bytes calldata sig,
bytes calldata data
) external view returns (bool);
Description: Validates a claim by verifying the signature and data against the specified claim topic and identity contract.
addKey
Source: IERC734
This function adds a key to the identity for a specified purpose and key type.
function addKey(bytes32 _key, uint256 _purpose, uint256 _keyType) external returns (bool success);
Description: Adds a new key to the identity, where _purpose
defines the purpose of the key (e.g., management or execution), and _keyType
specifies the type of key (e.g., an Ethereum address or a hash of a public key).
approve
Source: IERC734
This function approves an execution request.
function approve(uint256 _id, bool _approve) external returns (bool success);
Description: Approves or rejects an execution request identified by _id
. If approved, the execution proceeds; if not, it is cancelled.
removeKey
Source: IERC734
This function removes a key for a specified purpose.
function removeKey(bytes32 _key, uint256 _purpose) external returns (bool success);
Description: Removes a key associated with a particular purpose from the identity, effectively revoking its rights.
execute
Source: IERC734
This function executes an operation on behalf of the identity.
function execute(address _to, uint256 _value, bytes calldata _data) external payable returns (uint256 executionId);
Description: Executes a transaction on behalf of the identity. The _to
parameter specifies the recipient address, _value
is the amount of Ether to send, and _data
contains the call data. Returns an executionId
for tracking the operation.
getKey
Source: IERC734
This function retrieves the full data for a specified key.
function getKey(bytes32 _key) external view returns (uint256[] memory purposes, uint256 keyType, bytes32 key);
Description: Returns the purposes, key type, and key value for a specified key. Useful for understanding the roles and permissions associated with a key.
getKeyPurposes
Source: IERC734
This function returns the list of purposes associated with a key.
function getKeyPurposes(bytes32 _key) external view returns (uint256[] memory _purposes);
Description: Retrieves all purposes assigned to a specified key, providing insight into what the key can be used for.
getKeysByPurpose
Source: IERC734
This function returns an array of keys associated with a specific purpose.
function getKeysByPurpose(uint256 _purpose) external view returns (bytes32[] memory keys);
Description: Lists all keys that serve a particular purpose, aiding in the management and audit of keys within the identity.
keyHasPurpose
Source: IERC734
This function checks if a key has a given purpose.
function keyHasPurpose(bytes32 _key, uint256 _purpose) external view returns (bool exists);
Description: Verifies whether a specific key is assigned a particular purpose, returning true
if it exists and false
otherwise.
addClaim
Source: IERC735
This function adds or updates a claim.
function addClaim(
uint256 _topic,
uint256 _scheme,
address issuer,
bytes calldata _signature,
bytes calldata _data,
string calldata _uri
) external returns (bytes32 claimRequestId);
Description: Adds a new claim or updates an existing claim. The claim is associated with a _topic
, uses a _scheme
for the signature, and includes the claim's data and URI.
removeClaim
Source: IERC735
This function removes a claim from the identity.
function removeClaim(bytes32 _claimId) external returns (bool success);
Description: Deletes a claim identified by _claimId
, revoking the associated attestation.
getClaim
Source: IERC735
This function retrieves a claim by its ID.
function getClaim(bytes32 _claimId)
external view returns(
uint256 topic,
uint256 scheme,
address issuer,
bytes memory signature,
bytes memory data,
string memory uri);
Description: Returns the full details of a claim, including its topic, scheme, issuer, signature, data, and URI.
getClaimIdsByTopic
Source: IERC735
This function returns an array of claim IDs for a given topic.
function getClaimIdsByTopic(uint256 _topic) external view returns (bytes32[] memory claimIds);
Description: Lists all claim IDs associated with a specific topic, facilitating the management and audit of claims.
Last updated