Explain Like I’m Five: Uncollateralized NFT Renting
If NFT renting itself is something that will disturb the whole space, and push crypto and NFTs towards becoming mainstream and widely adopted, we can freely say that uncollateralized NFT renting is a paradigm shift that will disturb the disturber itself.
The dumb way of renting NFTs
When NFT renting was a fresh and new idea, the first few primitive solutions appeared and they were all based on collateral as insurance.
We can say that because it was a completely new idea, something like that was ok back then. It was fine for the first prototypes and idea validation, but it wasn’t good enough for real use.
You wouldn’t even have to scratch beneath the surface to realize there are many problems that had to be addressed that collateral couldn’t solve.
The biggest issue was that collateral wasn’t the ultimate guarantee that you will get your NFT back from the borrower once you transfer it. Second, when it comes to liquidity and speculation NFTs are much more volatile than tokens. And lastly, how much an NFT is worth is an extremely subjective thing.
It’s just like your grandfather’s watch, a family loom.
If you take it to the pawn shop they will probably estimate it much lower than you and your parents would as it has sentimental value for you, whereas for the pawn shop worker it’s just some cogs assembled to show the time with a leather belt.
So, it was clear that there are problems, but was it clear what the solution may be?
What we needed was a smarter way and a trustless solution
The natural step was that better and smarter ways of renting NFTs will soon appear. One that doesn’t rely on collateral but on other mechanisms of insurance. And that’s exactly how and why Renfter came to be.
Instead of relying on collateral, we decided to rely on the very own technology NFTs consist of, smart contracts.
Our primary goal was to protect lenders and create a solution where the collateral isn’t even needed because there’s a much better and more reliable way of protecting users’ NFTs.
By doing so we also removed an entry barrier for borrowers as well. Borrowers now only have to pay for the renting price without needing to put 10 times more NFT worth as collateral which will act as a “security”.
So how did Renfter solve the collateral-free NFT renting puzzle?
Our approach was actually very simple and straightforward (which doesn’t mean it didn’t come with its own challenges).
The only way we can guarantee for other people NFTs, without inventing a completely new standard, was to never transfer them to another person, i.e. borrower.
Lenders should transfer their NFTs to the protocol where they should be safely and securely kept the whole time, and only limited access should be given to the borrower. This approach required the issuance of a wrapped version of the NFT that would act as proof of usage rights and a key. Transferring, burning or similar actions of original NFTs should be impossible.
Because original NFTs would never leave the protocol, it meant that the protocol itself should do everything and act as a source of truth. That also meant that:
- Anyone should be able to verify who is the original owner of the NFT, i.e lender
- Anyone should be able to verify who has the current rights to use the NFT at the moment, i.e. who is the borrower
- NFT functionality should be executable by the borrower (even though the borrower is not the real owner)
But, even though the idea was straightforward in its essence, there were some interesting questions and challenges that became obvious almost immediately and that we had to address.
1. What happens if there’s an airdrop or some rewards for NFT holders during the renting period?
2. How can we be sure that the borrowers won’t call some potentially destructive or malicious custom functionality?
I’ll try to answer both questions as simply as possible without going into too much technical detail for now (both questions could be topics of their own and articles, and probably will be :D).
We had to develop a feature where lenders can decide, before renting, whether they are going to keep all rewards for themselves, give them to the borrowers, or split them on a certain ratio. And we came up with a solution, even though it’s still in the testing phase and works only with verified collections.
As for the second question, the best approach in our opinion was what is called “The principle of least privilege” which is the best practice for decades in software engineering and cybersecurity. By default, all custom token functionality should be explicitly whitelisted by the lender in order to be executable by the borrower. By default, everything is forbidden. That’s the only way we can be sure there won’t be a misuse of original tokens.
Recently, during an interview with @drumkoon, we got interesting food for thought that lead to making that feature even more powerful and giving the lenders an option to say how many times the whitelisted functionality can be executed. Of course, we decided to implement it immediately.
So, by solving these two really important questions we wrapped around all the necessary functionality an NFT renting protocol should have.
And lastly, we made it to be pretty flexible and composable so anyone can build whatever they need in case we didn’t already cover it.
Do not believe us, try it for yourself
We recently launched a public beta on Polygon Mumbai testnet. It has only one collection enabled, Renfter Demo Collection, but it’s a perfect showcase of the power and possibilities of our take on the uncollateralized NFT renting protocol.
Any feedback is more than welcome, you can leave it on our Discord server and that’s the place where you can ask for help in case you need it. We have recorded an explainer video too which you may want to watch before trying everything by yourself.