Staking & Yield Farming/Trading

Hinkal Yield Farming allows users to deposit tokens in liquidity pools and stake those tokens to gain rewards, unstake tokens and withraw the tokens discreetly using Relayers. Currently we support Curve, Convex, Lido and Beefy pools (more to be added in the future).

When a user wants to deposit, stake, unstake or withdraw some funds in a liquidity pool, they generate zk-proof that they are eligible to perform the action to a liquidity pool. To claim rewards, the user will generate zk-proof showing that they are eligible to receive certain amount of funds. The relayer will make the transaction on behalf of the user.

In the transaction, Hinkal Pool will call Curve, Convex, Lido or Beefy’s Smart Contract in order to deposit, stake, withdraw the assets or to claim rewards. If, for any reason, the operation fails, then the whole transaction will be reverted, so no additional commitments and nullifiers will be created.

Similar to Yield Farming, Hinkal enables users to execute their Yield Trading strategies discreetly, by integrating Pendle. Pendle's Smart Contract is called via External Action contract to handle all transaction logic for token swaps, mints, redeems, and reward claims. YT tokens, since they are interest-bearing, are first wrapped and then stored in the Hinkal Pool smart contract.

Since the protocol implements UTXO based model of commitments and nullifiers, the amount of reward the user wants to claim should be known at the time of zk-proof generation. At the time of the transaction submission, it is unknown how many other transactions will be submitted in the current block. Check out Hinkal's current fee structure used to fairly compensate for the costs.

Last updated