Trust Bitcoin Info
Trust Bitcoin has an edge in DeFi services because of its best-in-class offerings. With the likes of services like mining, smart contracts, digital wallets, governance and creating dApps. Also, miners will have exceptional benefits for adding a block to the Trust Bitcoin blockchain.
TrustNet Score
The TrustNet Score evaluates crypto projects based on audit results, security, KYC verification, and social media presence. This score offers a quick, transparent view of a project's credibility, helping users make informed decisions in the Web3 space.
Real-Time Threat Detection
Real-time threat detection, powered by Cyvers.io,
is currently not
activated
for this project.
This advanced feature provides continuous monitoring and instant alerts to safeguard your assets from potential security threats. Real-time detection enhances your project's security by proactively identifying and mitigating risks.
For more information, click here.
Summary and Final Words
No crucial issues found
The contract does not contain issues of high or medium criticality. This means that no known vulnerabilities were found in the source code.
Ownership is not renounced
The owner retains significant control, which could potentially be used to modify key contract parameters.
Contract is not upgradeable
The contract does not use proxy patterns or other mechanisms to allow future upgrades. Its behavior is locked in its current state.
Scope of Work
This audit encompasses the evaluation of the files listed below, each verified with a SHA-1 Hash. The team referenced above has provided the necessary files for assessment.
The auditing process consists of the following systematic steps:
- Specification Review: Analyze the provided specifications, source code, and instructions to fully understand the smart contract's size, scope, and functionality.
- Manual Code Examination: Conduct a thorough line-by-line review of the source code to identify potential vulnerabilities and areas for improvement.
- Specification Alignment: Ensure that the code accurately implements the provided specifications and intended functionalities.
- Test Coverage Assessment: Evaluate the extent and effectiveness of test cases in covering the codebase, identifying any gaps in testing.
- Symbolic Execution: Analyze the smart contract to determine how various inputs affect execution paths, identifying potential edge cases and vulnerabilities.
- Best Practices Evaluation: Assess the smart contracts against established industry and academic best practices to enhance efficiency, maintainability, and security.
- Actionable Recommendations: Provide detailed, specific, and actionable steps to secure and optimize the smart contracts.
A file with a different Hash has been intentionally or otherwise modified after the security review. A different Hash may indicate a changed condition or potential vulnerability that was not within the scope of this review.
Final Words
The following provides a concise summary of the audit report, accompanied by insightful comments from the auditor. This overview captures the key findings and observations, offering valuable context and clarity.
Smart Contract Analysis Statement
Contract Analysis
The TBCBridge contract implements the TBC Network side of a lock-and-release bridge to BNB Smart Chain. Users lock native TBC to receive WTBC on BNB Smart Chain, burn AUSD to receive USDT there, or deposit TBC that is bridged automatically once the validator programme grants them bridge capacity. Every inbound transfer needs a signed message from the source verifier that binds the complete source transfer, on top of separate operator, verifier and executor roles with waiting periods of five minutes each, and each source transfer can be released only once. AUSD minting and native payouts draw on rolling daily budgets, and staking rewards bridged from BNB Smart Chain are split six to one between the validator programme and the miner manager.
The contract is deployed at 0x5323384bb655CE3eed699d5F5574fC5170f57fCE. It is not upgradeable, charges no fees, has no blacklist of its own and cannot raise any rate. The verified source code reproduces the deployed bytecode exactly, including the metadata hash, and differs from the reviewed code only in one documentation comment, which confirms that what is on-chain is what was reviewed. At the time of review the bridge was deployed but not yet configured for operation.
Ownership Privileges
The admin role is held by a timelock with a twelve hour delay that is owned by a single externally owned account, which is also the guardian, while day-to-day release authority requires the source verifier's signature together with separate operator, verifier and executor roles, which had not yet been assigned at the time of review. The owner retains full privileges including:
- The admin can configure routes, budgets, exemptions and the reward configuration, replace the source verifier, reset any user's bridge capacity, grant any role and, while the bridge is paused, withdraw native TBC above the recorded liabilities; every such change has to pass the twelve hour timelock, whose owner is one key
- A compromise of the source verifier key together with the three role keys would allow AUSD minting and native payouts within the daily budgets; the source verifier is a single externally owned account
- Refunds of failed transfers need both the source verifier's signature and a verifier key, and stop while the bridge is paused
- The guardian can pause the bridge and void signatures that have already been issued
- No fees exist in the contract and none can be introduced
- The bridge has no blacklist, but the owner of the AUSD token can blacklist addresses or revoke the bridge's minting rights, which parks the affected releases
- User deposits, pending claims, outbound TBC in flight and queued miner rewards are reserved, deposits can be withdrawn while the bridge is paused, and the emergency withdrawal can only take what exceeds these liabilities
Security Features
The contract implements several positive security features:
- Every function that moves value is protected against reentrancy, and native payments use a bounded gas stipend with a claim as fallback
- Inbound releases require a typed signature over the complete source transfer, and each source transfer can be consumed only once
- Rolling daily budgets bound AUSD minting and native payouts, and a release that cannot be delivered is parked instead of blocking the others
- Failed transfers can be refunded on-chain, and the destination can record a cancellation so that a refunded transfer can no longer be released
- A two-chain test suite with the production token code, including randomised sequences of every action that moves native TBC, confirmed within the tested scenarios that recorded liabilities stay fully backed and that every failure case found in earlier reviews is handled
Points Requiring Attention
All high issues of the earlier reviews are resolved; the points below remain.
One issue was rated medium. The admin timelock is owned by a single externally owned account, which is also the guardian, so one key controls the bridge configuration and, through role grants, the release pipeline; on BNB Smart Chain the same role is held by a multisig.
Two issues were rated low. The deployed ValidatorManager can no longer read user deposits from this bridge, so the bridge capacity it grants sponsors would be deferred indefinitely once it points to this bridge; no funds are at risk, and the team has stated that a new ValidatorManager will resolve this. A cancelled redemption larger than the AUSD budget limit cannot be refunded until the admin raises the limit through the timelock and the budget has refilled.
Informational observations include a deployed StakingManager that cannot use this bridge, which the team plans to replace with a new version.
Note - This Audit report consists of a security analysis of the TBCBridge smart contract. This analysis did not include economic analysis of the contract's tokenomics. Moreover, we only audited the main contract for the Trust Bitcoin team. Other contracts associated with the project were not audited by our team - in particular the AUSD token, the ValidatorManager and StakingManager contracts, the admin timelock and the off-chain relayer, all of which this contract depends on. We recommend investors do their own research before investing.
Files and details
Findings and Audit result
medium Issues | 1 findings
Pending
#1 medium Issue
Admin control rests on a timelock owned by a single key, which has delegated untimelocked admin power
The admin role controls routes, the reward configuration, bridge limits, emergency withdrawals and the granting of every other role. It is held by a timelock with a twelve hour delay, which is a real safeguard, but the timelock is owned by a single externally owned account, the same account that received the initial AUSD supply and became the token's first owner. The access control has no built-in delay or two-step transfer, so the timelock owner can queue a grant of the admin role to any address and, once the twelve hours have passed, that address acts without any delay. This has been done once: the grant waited out the delay, and the deployer's externally owned account then held the admin role directly for 61.6 hours (2026-09-12 06:53 UTC to 2026-09-14 20:29 UTC), during which it changed the holders of the operator and validator roles and changed the reward configuration. The initial handover after deployment took 32.3 hours.
low Issues | 2 findings
Acknowledged
#1 low Issue
The ValidatorManager can no longer read deposits, so sponsor bridge limits are never granted
The final contract made its state variables private and replaced their public getters with aggregate views such as getUserBridgeState. This removes the TBCDepositedBalance(address) getter that the deployed ValidatorManager calls in stake() and topUp() before it grants a sponsor bridge capacity. The call now reverts, the ValidatorManager catches it, adds the amount to its pendingBridgeLimit and emits ExternalCallFailed with BridgeDepositCheck, and because every later attempt takes the same path, the sponsor capacity is never granted. Deposits stay withdrawable and addTBCBridgeLimit still works, so no funds are lost, but the sponsor flow of the validator programme stops once the ValidatorManager points to the new bridge. A test reproduces the ValidatorManager's call sequence. Other public getters were removed as well, which off-chain components such as the relayer and monitoring have to follow.
Pending
#2 low Issue
A cancelled redemption above the AUSD budget limit cannot be refunded
Refunds that mint AUSD now draw on the rolling AUSD budget, and the budget rejects any amount above its limit. bridgeAUSD accepts any amount above the route minimum, while BNB Smart Chain refuses to insert a release above its USDT budget limit, so such a redemption can only be cancelled. If the AUSD limit is also below the amount, the refund reverts on every attempt, the request stays pending and the burned AUSD is not minted back until the admin raises the AUSD limit behind the timelock and the budget has refilled. An amount below the limit but above the available budget is only delayed until the budget refills. A test reproduces this with equal limits on both chains.
informational Issues | 1 findings
Acknowledged
#1 informational Issue
The deployed StakingManager cannot use the remediated bridge
The deployed StakingManager inserts a release for every staking or top-up record by calling insertReleaseRequest, or insertReleaseRequests with the previous eight-field input, on a bridge address that is fixed at construction. Neither function exists in the remediated contract, which only accepts signed releases in a new input format, so these calls revert, while the calls the ValidatorManager makes, addTBCBridgeLimit and TBCDepositedBalance, keep working. Unless the staking programme is redesigned, its records either stay tied to the deployed bridge, which keeps every weakness of the first review, or their insertion stops once that bridge is paused.