What Is A NFT — Wallets, Edward Snowden & Vending Machines

What Is A NFT — Wallets, Edward Snowden & Vending Machines

By talfco | The Diagrammer Of DEFI | 11 May 2021

In my last article, I introduced some basic concepts around Non-Fungible Tokens in the crypto space (you can read it here). In this article, I will drill down into the initial onboarding process of Smart Contracts. It’s key to have a good understanding of how a dApp is interacting with your wallet.


But before going into the details, let’s start with an inspiring story about an NFT token sale in April 2021.

Edward Snowden and his personal NFT story

In 2019 I enjoyed participating in the Web3 Summit V2 in Berlin, which brings together some of the fore thinkers of the decentralized webspace. The summit's goal is organized around a single rallying call: to facilitate a fully functional and user-friendly decentralized web.

The Web3 Foundation is located in Zug (Switzerland), with the mission

… to nurture cutting-edge applications for decentralized web software protocols.

Our passion is delivering Web 3.0, a decentralized and fair internet where users control their own data, identity and destiny.

So the headline of the summit was “Less trust more truth,” quite an interesting headline thinking about the mission of today’s enterprises focusing on “building trust with their clients” to move forward.

The following teaser for the summit in 2019 gives a good snapshot of the event in the ancient Funkhaus Berlin, the radio broadcasting organization for the German Democratic Republic (GDR) from 1952 until German reunification.

Web3 Summit 2018 Teaser

Edward Snowden was the summit's highlight, which delivered an impressive speak (out of his current exile) about privacy and censorship resistance web topics.

Ok, now you could ask what has Edward Snowden to do with this flashy NFT business?

Well… as of April 2021, the auction of one of his NFT tokens allowed him to secure an annual budget of the Freedom of Press organization.


As the organization stated:

Freedom of the Press Foundation has received the proceeds from the sale of whistleblower Edward Snowden’s first original NFT artwork, sold at auction today for 2,224 ETH (approximately $5.5 million). This total marks the most valuable artwork sold to date on the platform foundation.app. Snowden listed the auction on behalf of Freedom of the Press Foundation, where he has served as president of the board of directors since 2016.

The artwork was minted as an NFT on the foundation.app NFT website and is described as follows:

This unique, signed work combines the entirety of a landmark court decision ruling the National Security Agency’s mass surveillance violated the law, with the iconic portrait of the whistleblower by Platon (used with permission). It is the only known NFT produced by Snowden.

Produced using open source software.

This auction is on behalf of Freedom of the Press Foundation

The above story is a very nice example of the power of the decentralized web and its capability to enable auctions of NFT tokens outside of jurisdictional boundaries.

Smart Contract Definitions

Enough of stories, back to the basics about Smart Contracts. Working as an IT architect in a financial services company, I’m always interested in the legal concepts of contracts.

David M. Adlerstein, which is counsel at New York City law firm Wachtell, Lipton Rosen & Katz, wrote 2019 a fascinating article for coindesk in the context of smart contract policy and regulations and what it means for Smart Contracts.

His definition of a smart contract

The working definition of a “smart contract” is a consensual arrangement between at least two parties for an automated, independent commercial result from the satisfaction or non-satisfaction, determined objectively through code, of a specific factual condition.

was backed by a nice and simple vendor machine example, which was introduced by the computer scientist Nick Szabo, one of the early influencers in digital cryptographic currencies.


Photo by Victoriano Izquierdo on Unsplash

In Nick Szabo’s classic conception, a humble vending machine transaction is a proto-smart contract, consistent with the working definition: insert a dollar and automatically receive a can of soda. Now in the case of this vending machine transaction, there actually is a legally binding contract.

Stocking the vending machine with beverages and inviting passersby to insert a dollar to purchase one constitutes an offer. Actually inserting that dollar constitutes acceptance. The dollar and soda, respectively, are consideration. And while it would be petty to sue over it, if the machine eats my dollar without giving me a soda, I would have legal recourse.

I would say to the point and a very nice and easy-to-understand example of how Smart Contracts are working without manual interventions.

But as always, the reality is more complex. Often a smart contract may represent only a component of a legally binding contract rather than an entire contract. But let that aside for the moment and start our user journey.

An NFT User Journey Using Mintbase

For my user journey of opening a virtual NFT sales store, I’ve chosen the dApp Mintbase. Founded in 2018 by Nate Geier, it grew through experimentation in recent years.

Mintbase is a global platform that allows anyone, including those with less technical backgrounds, to create their own digital assets verified on multiple blockchains. Mintbase provides creators (minters) with various creative allocation and redemption mechanisms for their customers.

As far as I can judge, it’s a rather small player in the NFT space but very innovative and fast-moving.

The company is located in Europe operated out of Berlin and Lisbon, according to their site.

Several aspects make it a good candidate for such an investigation journey

  • It’s well documented, backed by a vibrant community, and can be nicely tested on an Ethereum test net (as well as on the Near test net their new blockchain home in the future). So an ideal playground for my research.
  • Mintbase has an interesting NFT approach by allowing you to create your own NFT contract. Literally, you are the exclusive owner of a dedicated token, which is then serving your non-fungible asset values (be it digital art, a collectible, or any other value).
  • Mintbase is elaborating novel approaches by escaping the Ethereum Gas fee deadlock and is looking into cross-chain solutions. The project is actually in the ramp-up phase to leave Ethereum and bring up their next generation of NFT platform on the Near blockchain.
  • Near is a blockchain platform that supports multi-chain integration.

Innovation across the decentralized finance (DeFi) and non-fungible token (NFT) spaces has increased demand on the Ethereum network and escalated transaction fees to record-high levels. The Ethereum ↔ NEAR Rainbow Bridge allows users to seamlessly migrate assets to NEAR’s developer-friendly and low-cost platform, circumventing high gas fees without compromising on speed.

  • Near was striving to reduce its carbon footprint and was awarded for the Climate Neutral Product Label, which is good. The carbon footprint of blockchain platforms is a big problem. This holds for Proof-Of-Work (PoW) blockchains like Bitcoin, Ethereum 1.0, which require an excessive amount of energy to secure the network. Proof-Of-Stake (PoS) blockchains — as Near — are tackling the problem with a more energy-friendly approach (you can read about this consensus mechanism in my Medium “Hello World Polkadot” article).
  • This article will concentrate on the Mintbase Ethereum solution to explain major concepts and concentrate on Mintbase@Near in future articles.

Before we start a short memory exercise:

Nate Geier tweeted an elegant definition of an NFT: recent.ly


Think about it if you come to the same conclusion. Otherwise, I suggest reading my first NFT article on Medium (you can read it here), which is a prerequisite for understanding this journey.

Loading the Mintbase dApp (Web 2.0)

Let’s see what happens when creating your NFT store contract. So head over to your browser and type the URL mintbase.io in, starting the Mintbase dApp in your Browser.


Technically you were loading the Mintbase dApp — consisting of many javascript and css libraries — from a traditional website that is part of Web 2.0.


Web 2.0 is the Internet that we know before Blockchain applications emerged on the Internet. It consists of classically designed websites (Web 1.0) and websites and applications that allow anyone to create and share online information or material they have created. These components normally run in a centralized manner, i.e., on a company or cloud provider server.

So there is no interaction yet with the Blockchain itself, termed as Web 3.0

Web 3.0 — also known as Semantic Web — was aimed at being a more autonomous, intelligent, and open internet and was expanded in the context of rising blockchain in the decentralized space.

The Web 3.0 definition can be expanded as follows: data will be interconnected in a decentralized way, which would be a huge leap forward to our current generation of the internet (Web 2.0), where data is mostly stored in centralized repositories. Furthermore, users and machines will be able to interact with data. But for this to happen, programs need to understand information both conceptually and contextually.(coinmarketcap.com)

Having loaded the dApp in the browser, you may now press the “Create Store” button.

Onboarding aka Wallet Signature Request

After having pushed the button, the first request will ask for the signature of your wallet.


It’s the initial dApp onboarding process that ensures that you are the legitimate owner of a wallet. That’s it, nothing more, no name, no email, or other personal data is required to interact with the dApp.

As part of this step, Mintbase is requesting you to accept its Privacy+Terms Policy agreement. In legal terms, you open a “Decentralized Smart Contractual Relationship” with mintbase.io.

As explained in my first article, the wallet plays the central role — you could also say it’s your entry ticket into the decentralized world — for interacting with dApps.


A wallet allows you to control a unique blockchain address and is the crucial application extension to execute the orders and transactions on behalf of your dApp.

There are multiple Wallets on the market — which have more or less the same feature set. Our article uses the Metamask wallet, which is the most well-known one, and focuses on the wallet solution provided as a Chrome browser extension. As a browser extension, it can interact with the current webpage you’re browsing.

Short Pit Stop: Web 3.0 browser concepts

Let’s stop quickly and get some fundamentals around your browser sorted, which is key and helps to understand the bigger wallet picture.

The below class diagram illustrates one of your personal devices, i.e., a Laptop.

On it, you have installed the Chrome Browser. A Browser is made of BrowserExtensions which you can download of the Chrome Store and are locally installed on your computer, as well as of BrowserTabs which are rendering Websites which you have loaded via their corresponding URL.

In our sample, we installed the MetamaskWallet and loaded the Mintbase.io dApp website.

As one can see on the diagram, MetamaskWallet uses the local Chrome Browser store to store its necessary configuration data, for example

  • the public key of your wallet but also
  • the strictly confidential private key and its wallet seed.

There is no local or central DB instance involved; the wallet, as well as the loaded d’Apps, are just living in the realm of your local browser.

Would you open another browser — i.e., Firefox or Microsoft Edge — you wouldn’t be capable of connecting to your wallet (which lives in the Chrome browser scope). Rather you would have to install the Metamask extension and establish a clone of the wallet by using the wallet seed (restore functionality).

Therefore it’s super important to write down the wallet seed and keep it strictly confidential. Any person who owns the seed has full access to your wallet and can drain it (the same goes with the private key!).

Another important point — which differs from a physical wallet — is that the wallet doesn’t hold any crypto money. It just controls a blockchain address (bcWalletAddress) where you will find your cryptocurrency accounts. So you never can lose any cryptocurrency by a disk crash or corrupted wallet installation; the money lives on the blockchain only. You can restore and clone a wallet as much as you want; it always points to the same blockchain address.


Finally, to conclude the diagram walkthrough, let’s check out the below associations:


Having installed the Metamask extension, you have enabled it to inject “javascript code” into the loaded websites, i.e., our Mintbase.io dApp website.

This is now the tiny glue that allows the Mintbase.io dApp to interact with the wallet. The dApp is designed in a way that it understands the Metamask API.

BTW: When installing MetaMask (or any other extension), you will be informed how “intrusive” an extension may interact with your loaded websites. So also here, be very careful when installing an extension and make sure that you install the correct version and not any fake version, which may try to fetch your wallet seed or private key.


So you should have a pretty good understanding of what is ongoing on your local machine (still no blockchain interaction took place)

Move On

Going back to our journey. So by confirming the Mintbase signature dialog (see above), you now have to switch to your wallet. In the background, the Mintbase dApp was already sending a signature approval request to the Metamask dApp, which is now waiting for approval.

In our case, you would be notified by Metamask (1) that you should log in to approve the request. In the Metamaks login screen, you would have to log in to the ‘Ethereum Mainnet’ (2) and provide the password.


Having logged in, you will be asked to connect with mintbase.io and select an account (which represents one unique blockchain address controlled by this wallet)


So you permit mintbase.io dApp to view the public blockchain address and use its accounts for triggering transactions in the context of the dApp.

To be clear: You only allow the dApp to view the account address; you will have to approve it for any subsequent transactions.


Pressing “Connect,” you finish the onboarding process with the dApp and are finally ready to create your NFT store.


Finally, you are ready for the first blockchain interaction … well, let’s shift that to the next article.

The article is already 15 mins into the reading, so it would a too big of a stretch. The wallet itself plays such an important role that it deserves its own article. It will manage the transaction on behalf of the dApp with your blockchain account, and therefore, a good understanding is vital.

To conclude: the below diagram summarizes the interaction explained in the article; check it out if it makes sense for you. Any dApp which you want to use will use these basic steps to get you onboarded.


Edward Snowden Speak at Web3 Summit 2019

If you are interested in his speech given a the Web3 Summit 2019, you can find it here.

Edward Snowden at Web3 Summit 2019 Final Note

On a final note, when you go back to the start of the article, you will find Edward Snowden’s Tweet, which mentions, “All eyes turn to the dark horse.” For me, as a Swiss guy rather cryptic statement, but thanks to the worldwide web, there is an answer to this:


With the “rise of the dark horse community in the crypto space,” I conclude this article.

I hope you enjoyed the reading. If you want to read more of my articles, you can find them here.

How do you rate this article?




Exploring the world of decentralization. All content and opinion expressed in context of my legal entity atnode.ch

The Diagrammer Of DEFI
The Diagrammer Of DEFI

Explaining the world of Decentralized Finance (DEFI) by using diagrams and ontologies.

Send a $0.01 microtip in crypto to the author, and earn yourself as you read!

20% to author / 80% to me.
We pay the tips from our rewards pool.