Note
Tokenization is a premium feature that requires an additional purchase. If you don’t have access to this feature, contact your Customer Success Manager to discuss enabling it in your Fireblocks workspace.
Overview
The Application Binary Interface (ABI) is the interface that connects two programs or operating systems. In the context of smart contracts, the ABI translates between the smart contract elements and the Ethereum Virtual Machine, where the contract is executed.
Often, smart contracts are written in high-level languages that must be compiled into executable EVM bytecode. The ABI helps convert the logic from the contract into byte representations for the EVM and converts any EVM responses back into the contract’s original language. The process of encoding information into a format the EVM can understand is referred to as ABI encoding. Smart contract ABI is represented in JSON format.
You can think of a smart contract as a restaurant. The EVM is the kitchen, and the ABI is the restaurant’s menu. The ABI provides a digestible way of understanding the kitchen’s capabilities. Customers order from the menu without talking directly to the kitchen. Similarly, you can use the ABI to interact with a smart contract more easily.
Learn more about the ABI for smart contracts.
Example
[
{
"inputs": [],
"name": "getCount",
"outputs": [
{
"internalType": "uint256",
"name": "",
"type": "uint256"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [],
"name": "increment",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
}
]
Using ABI for tokenization on Fireblocks
In the Fireblocks workspace, you can link existing tokens and smart contracts on the Tokenization page for you to operate. When linking these items, you can verify whether they include an ABI and can add one if they don’t.
We recommend creating an ABI for your custom smart contracts if you plan on using them for tokenization on Fireblocks.