AdEx (ADX), previously known as Ambire AdEx, developing a new-generation solution for digital advertising and a DeFi-focused crypto wallet. After a successful crowdfunding campaign in 2017, Ambire was the first startup to release an open-source protocol for decentralized advertising in 2018 and the first ad network processing payments on the Ethereum blockchain.
By using payment channels, Ambire AdEx ensures full transparency for all involved parties. Moreover, Ambire is using its own Layer-2 scaling solution called OUTPACE to facilitate micropayments per impression between its advertisers and publishers, processing more than 2,5 million transactions daily.
After successful beta tests, the team released the Ambire AdEx platform in 2020 and scaled it to 16,000 registered advertisers and publishers generating more than 80 million monthly impressions. In August 2020 Ambire started incentivized staking and liquidity providing programs for the $ADX token, interacting with the DeFi ecosystem and engaging its community into actively supporting the stability of the advertising exchange.
In 2021, Ambire announced [Ambire Wallet](https://www.adex.network/wallet/) - a full-featured cryptocurrency wallet, designed to simplify and democratize using crypto and DeFi tools in everyday life. Created with both crypto novices and veterans in mind, it offers accessible UX, hassle-free onboarding, automatic gas management, hardware wallet support and much more. Ambire Wallet is the easiest and simplest way to enter the world of decentralized finance and cryptocurrencies.
The wallet is currently in private Beta, expected to be released to the general public soon.
GeneralERC20 (#53-59) has incorrect ERC20 function interface:GeneralERC20.transferFrom(address,address,uint256) (#55)
GeneralERC20 (#53-59) has incorrect ERC20 function interface:GeneralERC20.transfer(address,uint256) (#54)
GeneralERC20 (#53-59) has incorrect ERC20 function interface:GeneralERC20.approve(address,uint256) (#56)
Set the appropriate return values and types for the defined ERC20 functions.
Additional information: link
ADXToken.constructor(address,address).prevTokenAddr (#129) lacks a zero-check on :
- PREV_TOKEN = prevTokenAddr (#131)
ADXToken.changeSupplyController(address).newSupplyController (#176) lacks a zero-check on :
- supplyController = newSupplyController (#178)
ADXToken.constructor(address,address).supplyControllerAddr (#129) lacks a zero-check on :
- supplyController = supplyControllerAddr (#130)
Check that the address is not zero.
Additional information: link
SafeERC20.checkSuccess() (#62-92) uses assembly
- INLINE ASM (#69-89)
Do not use evm assembly.
Additional information: link
SafeMath.min256(uint256,uint256) (#46-48) is never used and should be removed
SafeMath.max256(uint256,uint256) (#42-44) is never used and should be removed
SafeERC20.approve(address,address,uint256) (#104-107) is never used and should be removed
SafeMath.div(uint256,uint256) (#16-21) is never used and should be removed
SafeMath.min64(uint64,uint64) (#38-40) is never used and should be removed
SafeMath.max64(uint64,uint64) (#34-36) is never used and should be removed
SafeERC20.transfer(address,address,uint256) (#94-97) is never used and should be removed
Remove unused functions.
Additional information: link
ADXToken.slitherConstructorConstantVariables() (#110-189) uses literals with too many digits:
- PREV_TO_CURRENT_TOKEN_MULTIPLIER = 100000000000000 (#183)
Use: Ether suffix, Time suffix, or The scientific notation
Additional information: link
ADXToken (#110-189) should inherit from GeneralERC20 (#53-59)
Inherit from the missing interface or contract.
Additional information: link
Variable ADXToken.PREV_TOKEN (#127) is not in mixedCase
Follow the Solidity naming convention.
Additional information: link
Token is not listed at Mobula.Finance
Additional information: link
Unable to find audit link on the website
Unable to find whitepaper link on the website
Twitter account link seems to be invalid
Telegram account has relatively few subscribers
Unable to find Youtube account