ISBE Client
Introduction
The ISBE client is the only gateway to the ISBE blockchain network. It acts as a mandatory control layer between applications and nodes, validating and filtering all operations before they reach the network.
Main Function
The ISBE client ensures that only authorized operations are executed by:
- Intercepting all JSON-RPC requests directed at the nodes.
- Validating by consulting rules stored in smart contracts.
- Filtering by blocking unauthorized operations before they reach the network.
Regulatory Compliance
A fundamental reason for the ISBE client is GDPR compliance (General Data Protection Regulation). The system allows managing incidents related to personal data regardless of their origin:
- Specific transactions.
- Full contracts.
- Specific functions.
This granular filtering and traceability capability facilitates regulatory compliance in aspects such as the right to be forgotten or the management of privacy incidents.
Architecture
Filtering System
Types of Filters
The client obtains its rules from a filters smart contract deployed on the ISBE network itself. This contract defines which elements are blocked, and the client queries these rules before allowing any operation.
| Filter Type | Scope | Example Usage |
|---|---|---|
TRANSACTION_HASH | Specific transaction | Block reading of transaction 0x123... (privacy incident) |
CONTRACT | Full contract | Block queries to contract 0xabc... (compromised contract) |
SIGNATURE | Specific function | Block reading of balanceOf(address) network-wide |
CONTRACT_AND_SIGNATURE | Function of a contract | Block only getPersonalData() from contract 0xdef... |
JSONRPC_METHOD | JSON-RPC method | Temporarily block eth_getLogs during maintenance |
Temporal Filtering
Each filter can be applied to a specific block range:
- Permanent filter:
endBlock = 0(no time limit). - Temporal filter: from
initialBlockto a specificendBlock.
This allows applying temporal restrictions during security incidents or maintenance.
Validation Process
Sequence Diagram
The ISBE client validates each request by consulting the filtering rules stored in the smart contract. If it finds an active filter that applies to the requested operation, it blocks the request and returns an error. Only permitted operations are forwarded to the Besu node.
Note: Queries to the Filters Smart Contract are performed via cache to optimize performance. The cache is automatically updated when filtering rules are modified in the Smart Contract.
Benefits
For the network:
- Prevents execution of unauthorized operations.
- Reduces node load by filtering requests beforehand.
- Allows rapid response to incidents.
For users:
- Clear error messages when an operation is blocked.
- Full traceability of all operations.
- Consistency in access policies.
For operators:
- Centralized control of filtering rules.
- Flexibility to update policies without changing code.
- Full visibility of blocked operations.
Support
For questions or problems related to the ISBE client, consult the FAQ or contact the support team.