1 Problem
Based on chainalysis.com, Rug pulls have emerged as the go-to scam of the DeFi ecosystem, accounting for 37% of all cryptocurrency scam revenue in 2021, versus just 1% in 2020. Rug pulls took in more than $2.8 billion worth of cryptocurrency from victims in 2021.
As is the case with much of the emerging terminology in cryptocurrency, the definition of “rug pull” isn’t set in stone, but we generally use it to refer to cases in which developers build out what appear to be legitimate cryptocurrency projects — meaning they do more than simply set up wallets to receive cryptocurrency for, say, fraudulent investing opportunities — before taking investors’ money and disappearing.
2 Solution and What it does
Most people taking so much risks when investing in cryptocurrency with some hope that the projects they invested in are legitimate and follows strictly its tokenomics. Also, the team believes that anyone working on Neo Blockchain (N3) wants only legitimate and serious projects. What if there is a platform that holds locks and vestings of any NEP-17 Tokens that the cryptocurrency community can trust? LatchBox was created and aim to be that platform. LatchBox is a fully decentralized token lock and vesting platform on Neo Blockchain (N3). LatchBox aims to protect every cryptocurrency community from rug pulls and traitorous advisors. The native token used in LatchBox platform is named LATCH
with a ScriptHash of 0xb9c2c7f906c66d5b9a27597a7168ccb0fe8c2442
.
LatchBox Platform
- App Portal - https://neon3-testnet.latchbox.io
- Blockchain - NEO Blockchain (N3)
- Network - TESTNET (877933390)
- RPC Url - http://seed1t4.neo.org:20332
3 Features
FOR TESTNET, anyone can buy LATCH
with NEO
or GAS
on the LatchBox Portal, the current conversion are:
- 1
NEO
= 500LATCH
- 1
GAS
- 50LATCH
3.1 TOKEN LOCK
Token Lock provides locking of NEP-17 Tokens in a Smart Contract for certain period of time. This is designed for those people who loves to hold their tokens for a long time and have no intention selling it for a cheap price.
3.1.1 The initiator
of the lock can
- Add Lock, the initiator can choose the NEP-17 Token to be locked, define the unlock date, option to make it revocable anytime, and the token amount and address of each receiver of the lock.
- Revoke Lock, the initiator can revoke the lock anytime only if it is defined on Add Lock that the lock was revocable and all receiver doesn't claim it yet.
- Claim Refund, after revoking the lock, only unclaimed token can be refunded.
3.1.2 The receiver
of the lock can
- Claim Lock, the
receiver
of a lock can claim their token when the unlock date has passed and given that the initiator of the lock doesn't revoke it.
3.1.3 And anyone can
- View Lock Previewer, it contains the lock details including the receivers' details (amount and address) and it has a link that is shareable and publicly viewable.
3.2 TOKEN VESTING
Token Vesting is similar with token lock but it supports multiple unlock periods. This is designed for newly launched/upcomings cryptocurrency projects on Neo Blockchain (N3) that underwent/will undergo presale/ICO and have vesting period for the releases of their token for their investors without manually releasing it to them. Also, this could be use to lock team allocated tokens and only unlock on the promised period and to gain and keep the trust of their community to them.
3.2.1 The initiator
of the vesting can
- Add Vesting, the initiator can choose the NEP-17 Token to be vested, define the periods and option to make it revocable anytime. For every period, the initiator can define unlock date and the token amount and address of each receivers of that period.
- Revoke Vesting, the initiator can revoke the vesting anytime only if it is defined on Add Vesting that the vesting was revocable and all receiver doesn't claim it yet.
- Claim Refund, after revoking the vesting, only unclaimed token can be refunded.
3.2.2 The receiver
of the vesting can
- Claim Vesting, the
receiver
of a specific vesting period can claim their token when the unlock date has passed and given that the initiator of that vesting doesn't revoke it.
3.2.3 And anyone can
- View Vesting Previewer, it contains the vesting details including the period timeline and the receivers' details and it has a link that is shareable and publicly viewable.
3.3 Costs
All token lock and vesting transactions requires LATCH
and GAS
Token, the cost will vary in the future but for now it will be:
GAS
will be used as transaction fee.- Locks
- Add Lock - 5
LATCH
- Claim Lock - 2
LATCH
- Revoke Lock - 10
LATCH
- Claim Refunds - FREE
- Add Lock - 5
- Vestings
- Add Vesting - 10
LATCH
- Claim Vesting - 2
LATCH
- Revoke Vesting - 10
LATCH
- Claim Refunds - FREE
- Add Vesting - 10
The cost is defined in the smart contract and the contract owner can change it anytime. User can see the current cost anytime before confirming the transaction.
3.4 Transaction Allocation
All token lock and vesting transactions will be paid using LATCH
and it will be distributed as follows:
- 50% will be burned
- 40% will go to staking wallet, in the future, this will primarily used when the staking program in the platform has been developed.
- 5% will go to foundation wallet, this will primarily used for the development of the platform.
- 5% will go to platform wallet, this will used to pay for the infrastructure (cloud hosting).
4 Smart Contracts
- Platform Token (LATCH) -
0xb9c2c7f906c66d5b9a27597a7168ccb0fe8c2442
(See Code) - Lock Token Vault Contract -
0x3dccbd00cdd180aec6bf702eab5bd534b5c0e285
(See Code) - Vesting Token Vault Contract -
0xbea9990a498bab7773e6deb93bcf69bc922e0596
(See Code) - AwAwToken (AWAW) -
0xbea9990a498bab7773e6deb93bcf69bc922e0596
(See Code)
5 Technology Stack & Tools
- Cloud Service Provider: Microsoft Azure
- Web Frontend:
- IDE: Visual Studio 2022
- Web Framework: Blazor Server/.NET 6
- C# as Programming Language
- Deployed on Azure App Service.
- Neo N3 Smart Contract:
- IDE: Visual Studio Code
- Tool: NEO N3 Visual DevTracker / Neo SDK
- C# as Programming Language
Challenges we ran into
- Initially the project was developed using Blazor Web Assembly, but the team encountered issue regarding CORS with the RPC, instead of another service (API) as "proxy". The team decided to use Blazor Server instead.
Accomplishments that we're proud of
- The team is a huge fan of .NET technology and cannot imagine to developed and deployed a dotnet/C# based smart contract with ease.
What we learned
- The team learned a lot regarding Neo Blockchain (N3) since the team doesn't any background with Neo Legacy. Github projects and tutorial videos from NGD Enterprise helped the team to make this project possible. Also, the documentation from https://developers.neo.org helps a lot regarding Neo Blockchain (N3).
What's next for LatchBox
The team believe that LatchBox can be more than just about Locks and Vestings, potentially, the team looking to:
- develop a staking feature for NEP-17 tokens within the platform.
- develop a presale/crowd sale feature that will utilize the lock functionality
Also, there are many things the team wants to improve within LatchBox Platform like:
- Improving Test Cases of each smart contract.
- Having Security Audit on the developed Smart Contracts
- Integrating Wallet Connect to the LatchBox Platform.
The team is very open for any suggestions and comments to make this platform go live on mainnet.
Log in or sign up for Devpost to join the conversation.