Module types
Veive is based on a modular structure that extends the functionalities of smart accounts on Koinos. The modules are divided into four main categories, each with a specific role in the ecosystem:
- Validation Modules (mod-validation-as)
- Description: These modules verify the authenticity and authorization of operations. They are crucial for ensuring that operations are performed according to the rules set by the user or system.
- Functioning: Validation modules check operations against specific criteria, such as the validity of the signature or compliance with certain security policies. For example, a module might verify that a transaction is correctly signed and that the transferred amount does not exceed a certain limit.
- Execution Modules (mod-execution-as)
- Description: These modules are responsible for executing the requested operations. They can carry out a wide range of actions, from token transfers to calling specific smart contracts.
- Functioning: Once an operation is validated, the execution modules complete the requested action. This can include sending tokens, interacting with other smart contracts, or executing application-specific logic.
- Signature Modules (mod-sign-as)
- Description: These provide alternative signing methods, separate from the validation logic. This allows for the use of different signing methods, such as ECDSA, WebAuthn, or other authentication mechanisms.
- Functioning: Signature modules are invoked to validate the signatures of operations. Unlike validation modules, which focus on authorizing operations, signature modules handle the authentication method used to sign transactions.
- Hooks Modules (mod-hooks-as)
- Description: These modules perform actions before and after operations, offering greater flexibility in implementing additional controls and logic.
- Functioning: Hooks modules can be used for preliminary checks, like additional security verifications, or post-operation actions, such as logging events or updating internal states.