Lithium Finance Ⅳ

CertiKFiles named in the report

CertiK reviewed Lithium Finance (Lithium Finance Ⅳ) on 13 Dec 2022: 14 findings, 0 critical; 5 marked fixed, 9 acknowledged.

No open critical findings
Open the reportOpen Lithium Finance’s security record

Report hosted on skynet.certik.com.

Trustblock does not review code.

Findings14

Statuses are the security firm’s own, from its report.

SeverityOpenAcknowledgedFixed
Critical000
High010
Medium010
Low075
HighCentralization Related RisksAcknowledged

In the contract **EnquiryPool** the role **_owner** has authority over the functions shown in the diagram below. Any compromise to the **_owner** account may allow the hacker to take advantage of this authority. ![](https://accelerator-tasks-prod.acc.corp.certik.com/a3aa5a765232480fa3c7e3214b80b9e8/diagrams/centralization_EnquiryPool-EnquiryPool-_owner.svg) In the contract **Reputation** the role **_owner** has authority over the functions shown in the diagram below. Any compromise to the **_owner** account may allow the hacker to take advantage of this authority. ![](https://accelerator-tasks-prod.acc.corp.certik.com/a3aa5a765232480fa3c7e3214b80b9e8/diagrams/centralization_Reputation-Reputation-_owner.svg)

MediumLogical issue in `updateAnswer`Acknowledged

The `RP_TOKEN` owned by the user decreases gradually on a daily basis over time, but calling `mint()` or `burn()` can continuously push the starting calculation time backward. Therefore, the user only needs to call `updateAnswer()` daily to trigger the call to `mint()` or `burn()`, which could avoid the RP_TOKEN reduction mechanism.

LowFixed exchange rate of two tokensAcknowledged

The exchange rate of `_stakeAmount` and `_stakeToken` is variable in the real market, which means that the fixed exchange rate of `enquiries[_enquiryId].BACrossRate` may allow users to stake the lower-priced token in the market in order to take advantage of it. This situation may not be intended and could potentially be addressed in future updates.

LowThe financial modelAcknowledged

The Lithium project uses a system of inquiries through the addition of rewards by price seekers and predictions and quotations by price experts to measure the value of NFTs, realizing a price oracle for NFTs. However, many logic implementations are not within the scope of this audit, such as the generation of correct prices, the specific allocation of rewards, and the mechanism for obtaining RP_Tokens. It is recommended for the client recheck whether the logic is correct.

LowThe mathematical calculationAcknowledged

We would like the client to provide with us more information about the calculation of the `balanceOf()`. The mathematical models are not in the scope of this audit.

LowThe source of the `_signature`Acknowledged

We would like to know where the `_signature` come from when a price expert is trying to create an answer.

LowThird Party DependencyAcknowledged

The contract is serving as the underlying entity to interact with one or more third-party protocols. The audit scope treats third-party entities as black boxes and assumes their functional correctness. However, in the real world, third parties can be compromised and this may lead to lost or stolen assets. In addition, upgrades of third parties can possibly create severe impacts, such as increasing fees of third parties, migrating to new LP pools, etc. ```solidity=623 address _token, ``` - The function `EnquiryPool._transferInToken` and `EnquiryPool._transferOutToken` interacts with the third-party contract with `IERC20` interface via `_token`.

LowTwo kind of tokens to stakeAcknowledged

The use of two different stake tokens for each enquiry may add complexity and potentially cause issues. It is unclear why this design was made and we are looking forward to any information about the necessity of using it.

LowUnlimited MintingAcknowledged

There is no cap for the max total minting amount of the `RP_Token`, hence the token could be minted unlimitedly.

Contracts in scope

No deployed address is recorded for this audit.

The report names a repository or files. Open the report to see its scope.

Repository and files the report names (6)

  • contracts/enquiry-pool/EnquiryPool.sol
  • contracts/enquiry-pool/libs/AnswerLib.sol
  • contracts/enquiry-pool/libs/ABDKMath64x64.sol
  • contracts/enquiry-pool/Reputation.sol
  • contracts/enquiry-pool/libs/EnquiryLib.sol
  • contracts/enquiry-pool/interfaces/IReputation.sol

Part of Lithium Finance’s security record

Lithium Finance
Audits1 audit by 1 firmLast audit Dec 2022, by CertiK.
Critical findingsNo open critical findingsIn 1 report.
Open Lithium Finance’s security record

Security firm

CertiK

1,044 projects reviewed · 1,375 reports · latest May 2025

See CertiK’s audits

Something wrong on this page? A missing report, a wrong date, a finding that was fixed since. Tell us and we check it against its source.

Tell us