As of 3 Nov 2026, 1 Exchange has 1 audit report on Trustblock, by CertiK, dated 29 Dec 2023. That report lists no open critical findings.
Record last updated . It holds audits, findings and contracts up to Nov 2026, and incidents up to Oct 2026. Trustblock does not review code.
Newest first
Statuses are the security firm’s own, from each report.
| Severity | Open | Acknowledged | Fixed |
|---|---|---|---|
| Critical | 0 | 0 | 0 |
| High | 0 | 4 | 0 |
| Medium | 0 | 1 | 0 |
| Low | 6 | 0 | 4 |
Some stable coin contract like [USDT](https://etherscan.io/token/0xdac17f958d2ee523a2206206994597c13d831ec7#code) is not compatible with the Openzeppelin ERC20 template, for example, it will not return bool value when transfer operation finished, which may cause the require statement always revert. **[Note]**: Since the `_usdContract` is unknown during the auditing and is a third-party dependency, the team should be careful with this issue.
Open the reportThe linked function allows the `ADMIN` role to revoke vesting schedules. However, this function does not check whether `_revokableVestings` has contained the input `vestingContract`. Invoking functions on an unverified third-party address may introduce significant risks.
Open the reportThe provided code snippet lacks a validation check to ensure that the input address is not `address(0)`. This input `address` is utilized to create a new `Schedule`: ```solidity schedule = Schedule( account, amount, 0, startTime, startTime + (cliffDays * 1 days), startTime + (cliffDays * 1 days) + (vestingDays * 1 days), asset, revokable, false ); ``` This address is designated to receive the vested `amount` in the `claim()` function. If `schedule.account` is set to the zero address, the `claim()` function will always fail. ```solidity require(IERC20(schedule.asset).transfer(schedule.account, amountToTransfer), "Vesting: transfer failed"); ```" It's crucial to add a validation check for the input address to prevent such issues.
Open the reportThe smart contract does not check or store the return value of an external call in a local or state variable, which may introduce vulnerabilities due to the unhandled outcome. ```solidity=203 _allVestings.add(_contract); ``` --- ```solidity=204 if (revokable) { _revokableVestings.add(_contract); } ``` --- ```solidity=260 _revokableVestings.remove(vestingContract); ```
Open the reportThe reports name a repository or files. Open a report to see its scope.
Is this your project? Show this record on your own website. The label states what the record holds, links to this page and updates by itself. It is free and needs no sign-in.
Automatic: the three strongest facts of this project’s own record (its last audit and two more), highlighted. They update with the record. Picking a fact turns Automatic off.
<head><script src="https://widget.trustblock.run/project-widget.min.js" defer></script></head><body><divdata-tb-project-widgetdata-tb-project-slug="1-exchange"></div></body>
Paste the code where the label should appear. It uses no API credit and updates by itself.
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