ETH Denver Episode 3: Where Are My Keys? With Matt Lockyer
In the third presentation from the NEAR Team at ETH Denver, Head of Developer Relations, Matt Lockyer gave a very insightful presentation on the nature of Keys on NEAR. For a full link to the transcript of the talk see here. The topics that Matt covered surrounded NEAR as an L1, Keys on NEAR, Selling an NFT by calling the applications contract, and most notably, the bigger picture significance of all of these developments on NEAR:
What is NEAR, and How Are Keys Different?
Matt kicks off the presentation by detailing how people can think of NEAR, in the bigger picture of L1s and L2s developing in Crypto:
“So we are an L1, but we like to think of the tools that we are spending a lot of time and a lot of money and resources on building as potential L2 solutions for developers. So we’re building a lot of really great technology that goes hand in hand with that incredible developer experience making your life super easy to, to basically scale up with NEAR. And that falls under two broad categories, the Rainbow Bridge, and the EVM.”
With this understanding of NEAR, Matt explains the uniqueness of Keys at NEAR specifically in relation to function-call limited permissions:
“Now this key comes with some sort of caveats. I’ll just go to my presentation here, it is scoped to the receiving account ID. So it’s basically going to have method call scope to, to basically that app account. So it can, it can’t do anything else. It can’t run around NEAR and like do a bunch of other stuff. It’s scoped to the methods in the contract. So you can actually give it fine grained control. And it’s given a gas allowance, so I can’t burn more gas than the app is willing to give me for this key pair.”
In short, applications on NEAR can be programmed to provide a minimum allowance of tokens to users, who don’t even have to touch a wallet to use a platform or service.
And remember, I don’t have any NEAR I just came to this site, and I just clicked a button, I said, Give me you know, let me be a guest. So I’m going to paste that in. I hope I got this right. I did it before, I want the image to show up, the actual image like, so if I go there. Oh, yay, it showed up. Okay. So that’s our fearless leader NEAR punk Ilia here. So I am going to sell this. I’m going to raise some money for myself. So I’m going to sell it by setting the price to five NEAR.
In the example of the Demo Matt is able to demonstrate how a user could hypothetically create an NFT on NEAR and sell that NFT without having to even open up a wallet or an account at the time.
“Now, I’m still just some floating key, some random key that I’m not sure how much I trust this key. And I’m just floating around in this app. Right? But I didn’t do anything. I didn’t even I haven’t even seen the NEAR wallet. As far as this guest account is concerned. They’ve never seen the NEAR wallet. But now they have funds. They have funds kind of waiting for them in escrow. So I’m actually going to go to the NEAR wallet and you can see my very advanced naming convention here.”
What Does This Mean For Mainstream Adoption?
While Matt’s talk is technical and difficult to wrap your head around, the significance of key innovation on NEAR holds massive implications for the possibility of mainstream adoption of crypto by non-crypto or non-technical users:
“So why it matters, some thoughts on mainstream adoption. So you want to piggyback on existing behavior. So people are already used to just coming to an app and clicking like sign in with this sign in with that, let them do it, let them try it, right? And this is a nice, easy way for you to fund your users and just get them to create stuff. And if they don’t create anything, then delete their account after a certain amount of time. I mean, you know, you kind of gave them that key, you could build in a functionality to just, you know, wipe it out or say your account’s expiring. I mean, we don’t have to go all the way, right from the first start. I mean, I remember those 14 steps to sign in with Metamask. So yeah, align the incentives. So first, make them money. So you saw an example of that in the app. And then profits equals a chance to teach people. So once people have some skin in the game, you can teach them stuff and you can tell them how to upgrade to Full Wallet, and then you just repeat it.”
While Matt’s example is specific to minting and selling NFT’s on a marketplace, it remains open for other applications with the same underlying development principles encoded into the design of NEAR:
“I was able to give them an access key, and me as the application developer, I know that they have an allowance, they can, because of my contract, they can only do three free NFT mints, I’ve kind of got them like boxed. I can even take a fee from their first sale. So I can actually read when they sell an NFT. And I can take back the fee that I gave them with that access key. So it’s really cool.”
One Final Point On Rust: Use it!
Matt’s talk concluded with a final point on Rust, the core programming language of NEAR. Building off of Nate Geier’s strong support for Rust, Matt echoes Nate by explaining how easy Rust is to learn, as well as the ‘box of goodies’ found inside the NEAR SDK:
“So a lot of people go, “Oh, Rust. Oh, I already learned solidity bla it’s so hard.” It’s actually not that hard. It looks a lot like solidity I mean, it’s typed. There’s a bunch of helpers here. What’s really nice is that the NEAR SDK kind of has like a big big box of goodies in it. If you want to learn about rust smart contracts on NEAR you just go to like docs.rs and search for NEAR.”
Matt’s talk provides a first insight into the new world of accounts and keys on NEAR Protocol. For anyone in crypto interested in real innovation taking place in the industry, there is no better place to start than on NEAR.