IOTA is a distributed ledger for the Internet of Things. The first ledger with microtransactions without fees as well as secure data transfer. Quantum proof. IOTA is a ground breaking new open-source distributed ledger that does not use a blockchain. Its innovative new quantum-proof protocol, known as the Tangle, gives rise to unique new features like zero fees, infinite scalability, fast transactions, secure data transfer and many others. IOTA is initially focused on serving as the backbone of the Internet-of-Things (IoT).
IOTA is a cryptocurrency that has no transaction fees and requires no miners in order to process transactions. It does, however, require some computational power to submit a transaction, making it perfect for machines to use as a currency and distributed communication protocol for the Internet of Things “IoT”. The main purpose of IOTA is to solve some of the major problems with Blockchain technology, the main one being that the bigger the Blockchain (such as <a href="https://www.coingecko.com/en/coins/bitcoin">Bitcoin</a>), the slower, more expensive, and also more restricting it is to actually transfer funds. Another issue with the Blockchain is size, as more and more Blocks are added, the longer the Blockchain gets, and therefore the less amount of computers are able to mine it. Right now BTC is over 150GB long, and so is <a href="https://www.coingecko.com/en/coins/ethereum">ETH</a>. If this size increased tenfold, very few computers would be able to mine it at all. Making them relatively centralized (the top 2 Bitcoin mining pools own about 56% of hashing power).
UpgradeableProxy._setImplementation(address) (#301-310) uses assembly
- INLINE ASM (#307-309)
TransparentUpgradeableProxy._admin() (#439-445) uses assembly
- INLINE ASM (#442-444)
Address._functionCallWithValue(address,bytes,uint256,string) (#207-228) uses assembly
- INLINE ASM (#220-223)
Proxy._delegate(address) (#23-43) uses assembly
- INLINE ASM (#25-42)
TransparentUpgradeableProxy._setAdmin(address) (#450-457) uses assembly
- INLINE ASM (#454-456)
Address.isContract(address) (#114-123) uses assembly
- INLINE ASM (#121)
UpgradeableProxy._implementation() (#280-286) uses assembly
- INLINE ASM (#283-285)
Do not use evm assembly.
Additional information: link
Modifier TransparentUpgradeableProxy.ifAdmin() (#366-372) does not always execute _; or revert
All the paths in a modifier must execute _ or revert.
Additional information: link
UpgradeableProxy.constructor(address,bytes)._logic (#255) lacks a zero-check on :
- (success) = _logic.delegatecall(_data) (#260)
TransparentUpgradeableProxy.upgradeToAndCall(address,bytes).newImplementation (#429) lacks a zero-check on :
- (success) = newImplementation.delegatecall(data) (#432)
Check that the address is not zero.
Additional information: link
Different versions of Solidity are used:
- Version used: ['^0.6.0', '^0.6.2']
- ^0.6.0 (#5)
- ^0.6.2 (#91)
- ^0.6.0 (#235)
- ^0.6.0 (#317)
- ^0.6.0 (#470)
Use one Solidity version.
Additional information: link
Address.sendValue(address,uint256) (#141-147) is never used and should be removed
Address.functionCallWithValue(address,bytes,uint256) (#192-194) is never used and should be removed
Address.functionCallWithValue(address,bytes,uint256,string) (#202-205) is never used and should be removed
Address._functionCallWithValue(address,bytes,uint256,string) (#207-228) is never used and should be removed
Address.functionCall(address,bytes,string) (#177-179) is never used and should be removed
Address.functionCall(address,bytes) (#167-169) is never used and should be removed
Remove unused functions.
Additional information: link
TransparentUpgradeableProxy.constructor(address,address,bytes)._admin (#346) shadows:
- TransparentUpgradeableProxy._admin() (#439-445) (function)
BEP20UpgradeableProxy.constructor(address,address,bytes).admin (#475) shadows:
- TransparentUpgradeableProxy.admin() (#383-385) (function)
Rename the local variables that shadow another component.
Additional information: link
solc-0.6.4 is not recommended for deployment
Pragma version^0.6.0 (#317) allows old versions
Pragma version^0.6.0 (#470) allows old versions
Pragma version^0.6.0 (#5) allows old versions
Pragma version^0.6.2 (#91) allows old versions
Pragma version^0.6.0 (#235) allows old versions
Deploy with any of the following Solidity versions: 0.5.16 - 0.5.17, 0.6.11 - 0.6.12, 0.7.5 - 0.7.6 Use a simple pragma version that allows any of these versions. Consider using the latest version of Solidity for testing.
Additional information: link
Low level call in Address._functionCallWithValue(address,bytes,uint256,string) (#207-228):
- (success,returndata) = target.call{value: weiValue}(data) (#211)
Low level call in UpgradeableProxy.constructor(address,bytes) (#255-263):
- (success) = _logic.delegatecall(_data) (#260)
Low level call in Address.sendValue(address,uint256) (#141-147):
- (success) = recipient.call{value: amount}() (#145)
Low level call in TransparentUpgradeableProxy.upgradeToAndCall(address,bytes) (#429-434):
- (success) = newImplementation.delegatecall(data) (#432)
Avoid low-level calls. Check the call success. If the call is meant for a contract, check for code existence
Additional information: link
Unable to find Telegram link on the website
Token is not listed at Mobula.Finance
Additional information: link
Twitter account link seems to be invalid
Unable to find Telegram account