Perlin Token Logo

PERL [Perlin] Token

About PERL

Listings

Token 3 years
CoinMarketCap 5 years

Website

[CoinGecko] alert: New PERL smart contract address: 0xeca82185adCE47f39c684352B0439f030f860318 . For more information: https://medium.com/perlin-network/perl-contract-and-infrastructure-upgrade-dc810a269f6
white paper

Tokenized real-world ecological assets
Perlin’s latest project PERL.eco, the Planetary Ecosystem Registration Ledger will use blockchain technologies for real-world ecological assets through tokenizing carbon credits and biodiversity, NFTs and decentralised (DeFi) rewards.
PERL.eco focuses on tokenization and achieving broader adoption of ecological-related assets like tokenized carbon assets, genomic biodiversity and more.
PERL allows token holders to play a critical role in determining the incentive system, building a wide base of stakeholders, and facilitating economic value flow in the network. PERL holders get to vote on this fee model and distribution, as well as other important decisions.

PERL.eco is focusing on these key areas:
1. Carbon
We are tokenizing carbon credits and users may be able to offset their emissions and participate in the future growth of carbon.
2. Biodiversity
We are looking to create a marketplace that links the supply and demand of biodiversity value. This will encourage the conservation of biodiversity, something that is urgently needed as climate change worsens.
3. NFTs
We are working with globally recognised wildlife, ocean and environment charities to develop NFTs to fund the conservation of critically endangered species and habitat.
4. DeFi
We will allow PERL token holders to yield farm for good and earn free incentives.
5. Blockchain infrastructure
We are planning to have our own proof-of-stake blockchain.
6. Education and evolution
We believe in empowering the community to join us in protecting the planet.

Laser Scorebeta Last Audit: 22 December 2021

report
Token seems to be legit.

Anti-Scam

Links

Modifier TransparentUpgradeableProxy.ifAdmin() (#366-372) does not always execute _; or revert
All the paths in a modifier must execute _ or revert.

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

TransparentUpgradeableProxy.upgradeToAndCall(address,bytes).newImplementation (#429) lacks a zero-check on :
- (success) = newImplementation.delegatecall(data) (#432)
UpgradeableProxy.constructor(address,bytes)._logic (#255) lacks a zero-check on :
- (success) = _logic.delegatecall(_data) (#260)
Check that the address is not zero.

Additional information: link

Proxy._delegate(address) (#23-43) uses assembly
- INLINE ASM (#25-42)
Address.isContract(address) (#114-123) uses assembly
- INLINE ASM (#121)
Address._functionCallWithValue(address,bytes,uint256,string) (#207-228) uses assembly
- INLINE ASM (#220-223)
UpgradeableProxy._implementation() (#280-286) uses assembly
- INLINE ASM (#283-285)
UpgradeableProxy._setImplementation(address) (#301-310) uses assembly
- INLINE ASM (#307-309)
TransparentUpgradeableProxy._admin() (#439-445) uses assembly
- INLINE ASM (#442-444)
TransparentUpgradeableProxy._setAdmin(address) (#450-457) uses assembly
- INLINE ASM (#454-456)
Do not use evm assembly.

Additional information: link

Different versions of Solidity is 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._functionCallWithValue(address,bytes,uint256,string) (#207-228) is never used and should be removed
Address.functionCall(address,bytes) (#167-169) is never used and should be removed
Address.functionCall(address,bytes,string) (#177-179) 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.sendValue(address,uint256) (#141-147) is never used and should be removed
Proxy._implementation() (#49) is never used and should be removed
Remove unused functions.

Additional information: link

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
Pragma version^0.6.0 (#317) allows old versions
Pragma version^0.6.0 (#470) allows old versions
solc-0.6.4 is not recommended for deployment
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.sendValue(address,uint256) (#141-147):
- (success) = recipient.call{value: amount}() (#145)
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 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

Holders:
No disclosed threats


Last post in Twitter was more than 30 days ago


Unable to find Youtube account


Unable to find audit link on the website


Unable to find whitepaper link on the website

No disclosed threats

Price for PERL

News for PERL