liteusd.com security record

BNB Chain, Ethereumliteusd.com

As of 3 Nov 2026, liteusd.com has 1 audit report on Trustblock, by CertiK, dated 20 Oct 2022. That report lists no open critical findings.

Critical findings
No open critical findings
In 1 report.
Open the latest report
Your label, live
Get the label for your site

Record last updated . It holds audits and findings, contracts and incidents up to Nov 2026. Trustblock does not review code.

Audits1

Newest first

AuditSecurity firmDateScopeCritical findingsReport
Lite ⅣSecurity firm: CertiKDate: Scope: Files named in the reportNo open critical findingsOpen · skynet.certik.com

Findings13

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

SeverityOpenAcknowledgedFixed
Critical000
High010
Medium000
Low309
Low`if` Statements Can Be MergedLite Ⅳ · CertiK · 20 Oct 2022Fixed

The if statements at lines 514 and 516 can be merged into one as the second if is more restrictive than the first one. The conditions can be written as it follows: - block.timestamp > userDepositDuration - block.timestamp > userDepositDuration + autoDelay

Open the report
LowImproper Usage of `public` and `external` TypeLite Ⅳ · CertiK · 20 Oct 2022Fixed

The functions which are never called internally within the contract should have external visibility for gas optimization.

Open the report
LowMisleading Error MessagesLite Ⅳ · CertiK · 20 Oct 2022Fixed

The linked require statements have unclear error messages that can be changed as it follows: - The error message at line 314 can be changed to “Bonus is not enabled” - The error message at line 357 can be changed to “Staking is not enabled” - The error message at line 411 can be changed to “The inserted amount is greater than the current user's stake” - The error message at line 412 can be changed to “The inserted amount must be greater than zero” - The error message at line 422 can be changed to “The time passed since the last deposit is less than unstakeDuration” - The error message at line 427 can be changed to “The time passed since the last deposit is less than user.duration”

Open the report
LowRedundant `if` ConditionLite Ⅳ · CertiK · 20 Oct 2022Fixed

Since `_updatePool()` is called only in `_bonusReward()`, there is no need to check if `lastBounsToken` is greater than zero in each for-loop iteration. The check can be made once in `_bonusReward()` before the for-loop at line 329 starts.

Open the report
LowRedundant Default Value AssignmentLite Ⅳ · CertiK · 20 Oct 2022Fixed

The linked assignments are redundant. By default, values are initialized to 0 for `uint` and to `false` for a `boolean` value.

Open the report
LowRedundant Update of `user.rewardOf`.Lite Ⅳ · CertiK · 20 Oct 2022Fixed

The user that calls `stake()` will have its `user.rewardOf` balance updated twice: - It is called first at line 367 inside the call to `_takeReward()` passing `pending` as input after having it calculated. - The second time at line 383 during the execution of `stake()` itself.

Open the report
LowTime Units Can Be Used DirectlyLite Ⅳ · CertiK · 20 Oct 2022Fixed

Suffixes like seconds, minutes, hours, days and weeks after literal numbers can be used to specify units of time where seconds are the base unit and units are considered naively in the following way: - 1 == 1 seconds - 1 minutes == 60 seconds - 1 hours == 60 minutes - 1 days == 24 hours - 1 weeks == 7 days

Open the report
LowTyposLite Ⅳ · CertiK · 20 Oct 2022Fixed

The contract contains typos that need to be changed as follows: - Line 95 change to `bonusDay`. - Line 96 change to `bonusDuration`. - Line 116 change to `lastBonusEpoch`. - Line 117 change to `lastBonusToken`. --- Note this is not all the locations, the following locations are marked above.

Open the report
LowUnnecessary CheckLite Ⅳ · CertiK · 20 Oct 2022Fixed

The require statement at line 148 is unnecessary if `upgradeAddress` is zero-checked in the constructor as suggested in `Missing checks or Input Validations` finding. --- The if condition at line 438 in `_unstake()` is redundant since it is always true. This because `_unstake()` is called only twice: - by `unstake()` and in that case the `_amount` passed as input is already less than or equal to `user.stakedOf` thanks to the check at line 411 - by `takeReward()` and in that case the `_amount` passed as input is exactly `user.stakedOf`

Open the report

Contracts

No deployed address is recorded for these audits.

The reports name a repository or files. Open a report to see its scope.

The repositories and files the reports name

Show this on your site

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.

Content

Facts

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.

Fixed as
Language

Style

Layout
Theme
Accent
Corners

Format

Size
Date
Embed as
HTML
<head>
<script src="https://widget.trustblock.run/project-widget.min.js" defer></script>
</head>
<body>
<div
data-tb-project-widget
data-tb-project-slug="liteusd"
></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