Video
We were not able to upload the video in the field provided for unknown reasons. Please find the video here: https://drive.google.com/drive/folders/1cGjpFAUnQE2fKP0pGsiyhY8r_zdNWEX3?usp=drive_link
Inspiration
Imagine a decentralised way to bank complete with privacy, security and investment opportunities. This is what dloans is destined to be. While traditional banks can provide reasonable amount of privacy, they are usually limited by their respective geopolitical factors. Clients of such banks are inhibited due to the restrictions, sanctions and policies of the bank itself. Therefore they can be thought of as a ‘privacy-over-freedom’ type of bank. On the other hand cryptocurrencies on public blockchain have an excellent way to get around the restrictions of the status quo, whatever they maybe, but they do not, by the inherent nature of a public blockchain, provide privacy in the strictest sense of the word. These can be categorized as a ‘freedom-over-privacy’ type. Using the best from both types of banks we can conceptualize a new type of bank which can provide both the freedom of monetary action and privacy, both at the same time. This can be done by using Partisia's public blockchain and ZK contracts.
What it does
In the current build we have created a contract to provide one of simplest services provided by banks - loans i.e lending and borrowing. The contract is built such that the borrower can get tokens/crypto against a NFT. The NFT will function as a collateral, which does imply that the NFT should have some intrinsic value associated to it in the first place. The way the contract will work is outlined below:
- The borrower will post a contract with the following details:
- the principal the borrower want to borrow ( example - 10 tokens)
- the Interest the borrower is willing to pay ( example - 5 tokens)
- the duration of the loan (example - 30 days)
- the period after the loan duration in which the borrower has to return the principal with interest ( example - 24 hrs)
- the NFT put up as collateral Some other information will also be required to set up the contract like the token address etc.
- The lender can look at the different contracts posted on the blockchain. Based on their own analysis they can choose a contract which suits them. (In the future we can also provide the lender with the ability to put up a contract, proving details of the amount and interest they want to lend at)
- After the lender chooses a contract the tokens are transferred to the borrower. At the same time the NFT is escrowed for later.
- Once the Loan period is over the Payback period starts. During this period the borrower is meant to return the tokens with interest. If he fails to do so in the specified time (the payback period is specified ) the lender has the right to claim the NFT which was put upas collateral. This implies that the lender can be guaranteed of payback in the form of either token or NFT in all eventualities.
How we built it
Currently we only have the contract deployed which is running on the testnet. To test the contract we used a custom NFT and TESTCOINs.
Challenges we ran into
One of the biggest challenge was the limited (although very deftly written) documentation on the partisia blockchain. A lot of time was spent in figuring out what was possible no the blockchain and what was not. This made the ideation part of the hackathon difficult as multiple ideas had to be dropped late in the hackathon.
Accomplishments that we're proud of
We are thrilled to have ideated and materialized the WEB3.0 part of the challenge. We are pleased with our progress in the WEB3.0 domain. This project will help take banking services to individuals who otherwise may not have such services available to them.
What we learned
We learned a lot in this entire exercise. We were new to Rust and WEB3.0 so our learning started with these. We've learned about smart contracts and how the world of WEB3.0 is built and the opportunities it provides to all of us.
What's next for dLoans
Although currently the dLoans is limited to only a single service (borrowing and lending) the possibilities of expansion are endless once one starts to look at all the different financial products traditional banks offer. For each product there can be a decentralized option in the public blockchain with complete privacy thanks to Partisia's ZK contracts and BYOC. Investment products, Credit Cards, Fixed Deposits, Token Conversions etc can be have a public blockchain version which the general public can use.
Built With
- partisiabloackchain
- rust
- typescript
Log in or sign up for Devpost to join the conversation.