POKE Info

This game is a Telegram-compatible T2E (Tap-to-Earn) game where users play as a character named POKE and aim to become billionaires while gathering companions. POKE blends the unique personality of PEPE, known for its Web3 meme coins, with Pokémon-inspired elements, creating a unique and immersive world. Its distinctive design skillfully combines meme culture with the charm of gaming, offering players a fresh and engaging experience.

POKE Logo

Team and KYC Verification

The KYC verification for this project is currently in progress.

The team has submitted their information and verification is pending.

KYC Badge

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.

80.00
Poor Excellent

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.

Security Assessments

"Static Analysis Manual Review"
Contract address
EQCV_f...mDwl
Network
TON - Mainnet
License N/A
Compiler N/A
Type N/A
Language Tact
Onboard date 2024/11/12
Revision date 2024/11/15

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.

Contract owner cannot mint

It is not possible to mint new tokens.

Contract owner cannot blacklist addresses.

It is not possible to lock user funds by blacklisting addresses.

Contract owner cannot set high fees

The fees, if applicable, can be a maximum of 25% or lower. The contract can therefore not be locked. Please take a look in the comment section for more details.

Contract cannot be locked

Owner cannot lock any user funds.

Token can be burned

There is a function to burn tokens in the contract without any allowances.

Ownership is not renounced

The owner retains significant control, which could potentially be used to modify key contract parameters.

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:

  1. Specification Review: Analyze the provided specifications, source code, and instructions to fully understand the smart contract's size, scope, and functionality.
  2. Manual Code Examination: Conduct a thorough line-by-line review of the source code to identify potential vulnerabilities and areas for improvement.
  3. Specification Alignment: Ensure that the code accurately implements the provided specifications and intended functionalities.
  4. Test Coverage Assessment: Evaluate the extent and effectiveness of test cases in covering the codebase, identifying any gaps in testing.
  5. Symbolic Execution: Analyze the smart contract to determine how various inputs affect execution paths, identifying potential edge cases and vulnerabilities.
  6. Best Practices Evaluation: Assess the smart contracts against established industry and academic best practices to enhance efficiency, maintainability, and security.
  7. 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.


A informational issue was found due to the double initialization of the balance field, which can lead to unnecessary gas consumption and potential logic errors. While ownership functions in the Jetton.tact contract are generally well-implemented with proper access controls. Informational suggestions, such as using augmented assignments, were also provided to improve code readability and maintainability.

Files and details

Findings and Audit result

critical Issues | 1 findings

Resolved

#1 critical Issue
Compilation Error
jetton_wallet.tact
L135
Description

Variable cannot have the same name as its enclosing function: "msg_value"

optimization Issues | 1 findings

Pending

#1 optimization Issue
Field balance is initialized twice
jetton_wallet.tact
L17
Description

Double initialization of fields can either be a programmer's mistake or simply a waste of gas. It is always preferred to initialize values in the field declaration if they have a compile-time evaluatable default value, or in the init function if they must be initialized dynamically.

informational Issues | 2 findings

Pending

#1 informational Issue
Prefer augmented assignment: self.balance += msg.amount
jetton_wallet.tact
L36
L70
L111
L144
L149
Description

Using augmented assignment operations improves the readability of the source code and reduces the risk of mistakes, such as those that occur during copy-pasting and refactoring code.

Pending

#2 informational Issue
Prefer augmented assignment: self.balance += msg.amount
jetton.tact
L23
L73
Description

Using augmented assignment operations improves the readability of the source code and reduces the risk of mistakes, such as those that occur during copy-pasting and refactoring code.