Bjornout NFT Deepdive
NFT Deepdive – Was steckt dahinter?

Im Rahmen eines super spannenden Projekts [Einen kleinen Hint gibt es hier] beschäftige ich mich derzeit noch intensiver mit der Technologie und Möglichkeiten hinter NFTs. Dabei bin ich erstmal wieder auf einige Wörter und Begriffe gestoßen, die ich davor noch nicht kannte bzw. zuordnen oder gar erklären konnte. 🧐
Und damit es dir nicht so geht, sondern du dich direkt auskennst und mitreden kannst, teile ich meine Recherche hier wieder. (Und werde im Gegenzug bei Fehlern hoffentlich von euch korrigiert😅).

Wenn dir NFTs noch gar nichts sagen, dann schau gerne auch in meinen anderen Beiträgen zum Thema vorbei:

Diesmal soll es aber tiefer in die Welt der NFTs gehen und ich versuche ein paar Begriffe wieder möglichst einfach zu erklären. 

    • Was sind NFTs – „None-fungible-Tokens“?
    • Was ist ein „Smart-Contract“?
    • Wie funktioniert ein Smart Contract?
    • Was ist ERC-721?
    • Was ist ERC-1155?
    • Wofür steht „uint256-Variable„?
    • Was kann in so einen Smart-Contract geschrieben werden?
    • Auf welcher Blockchain werden NFTs erstellt?

Was sind NFTs – „None-fungible-Tokens“?

Nochmal ganz kurz dargestellt. Eine genauere Einführung gibt es hier und ein wunderschönes Beispiel hier:

NFT steht für „None-Fungible-Token“, also ein „nicht-austauschbarer-Token“. Es ist eine Art kryptografische Adresse, bestehend aus einer Reihe von Zahlen und Buchstaben, die etwas Einzigartiges – ein Unikat – auf der Blockchain darstellt und repräsentiert. Besonders hier: diese Token sind nicht untereinander austausch- oder ersetzbar und können auch nicht in kleinere Teile zerlegt werden (wie zum Beispiel ein Bitcoin). Dafür können User ihren Besitz beweisen und auch mit ihnen handeln.
Der Clou: Diese None-Fungible-Token lassen sich mit
Smart-Contracts ergänzen.

Jedes NFTs bekommt eine uint256-Variable namens „tokenID„. Diese stellt eine Vertragsadresse dar, ist einmalig, global eindeutig und dient damit auch zur Zuordnung des NFTs. Eine dApp (dezentrale App) stellt einen „Konverter“ dar, der die tokenID dann als Eingabe verwenden und dann den Inhalt des NFTs, z.B. ein Bild, darstellen kann. Ein Beispiel für eine dApp, von der du vielleicht schon gehört hast, ist Opensea.io – Quasi das eBay des NFT Handels.

NFT Erklärung Scribble

Wofür steht „uint256-Variable“?

  • U – unsigned (nur positive ganze Zahlen)
  • INT – integer
  • 256 – 256 Bits Größe („EVM“ (Ethereum Virtual Machine) verwendet 256 Bit Wortgröße)

256 Bits = 32 Byte, also eine 32-Byte-Wortgröße (8 Bit = 1 Byte). Die technische Alternative wären 4 oder 8-Byte-Wörter, wie bei den meisten anderen Architekturen, oder unbegrenzt, wie Bitcoin. 4 oder 8-Byte-Wörter sind allerdings zu restriktiv (zu wenig Varianten möglich), um Adressen und große Werte für Krypto-Berechnungen zu speichern. Unbegrenzte Werte sind zu schwierig, um ein sicheres Gas(fee)modell zu erstellen. 32 Byte sind optimal und in vielen Krypto-Implementierungen üblich und nicht so groß, dass sie zu ineffizient sind.

Smart Contract Scribble

Next:

Was ist ein „Smart-Contract“?

Eigentlich ist „Smart Contract“ eine irreführende Bezeichnung, denn es handelt sich nicht unbedingt um einen Vertrag. Vielmehr ist es ein Programmcode, der die Logik einer dApp definiert und in Solidity (Das ist die Programmiersprache der Ethereum Blockchain) geschrieben ist.

Ein Smart Contract ist ein kleines Programm, welches auf einer Blockchain läuft und einfache Wenn-Dann-Befehle ausführt.

Diese automatischen oder „klugen“ Verträge, werden beim Mint-Vorgang, der NFT Generierung, definiert und in Form von Code mit in die Blockchain geschrieben. Sie werden also programmiert und anschließend automatisch durchgeführt. Werden die Eintrittsbedingungen erfüllt (Wenn …), so veranlasst der Algorithmus automatisch eine Transaktion (Dann…). Diese wird anschließend validiert und wiederum in einem Block gespeichert.

Wie funktioniert ein Smart Contract?

Smart Contracts basieren auf und profitieren von der Blockchain Architektur. Wie wir schon gelernt haben sind Blockchains immer transparent, irreversibel und alle Transaktionen nachvollziehbar. Da Smart Contracts immer auf einer Blockchain laufen, kann demnach auch niemand die Abwicklung beeinflussen und gleichzeitig finden alle Transaktionen, die der Contract auslöst, ebenso auf der Blockchain statt und sind dort transparent, irreversibel und nachvollziehbar gespeichert. Durch die Dezentralisierung funktionieren Smart Contracts damit komplett unabhängig und das ohne zeitliche Verzögerung.

Lassen sich Smart Contracts ändern oder fälschen?

Nein. Fälschen lassen sie sich nicht. Nachträglich ändern wäre über eine Revoke-Funktion möglich – manchmal.
Warum nicht?
Smart Contracts werden innerhalb des Distributed Ledgers (also einer Blockchain) wie ein eigenes Konto mit eigener Public Address behandelt. Ohne dass dieses Konto tatsächlich eine solche Public Address besitzt – und somit besitzt auch niemand den Private Key. Und ohne Private Key kommt auch niemand an das Konto. Nach der Erstellung des smarten Contracts ist ein externer Zugriff damit (ziemlich) ausgeschlossen.

Also eigentlich kann man in einen Smart Contract schreiben, was man will. Alle möglichen Wenn-Dann-Funktionen umsetzen und für die Ewigkeit festlegen. Jeder kann machen, was er/sie will und die einen NFTs können ABC, die anderen nur 123. Das macht natürlich nur bedingt Sinn. Ein paar grundlegende Funktionen oder Regeln wurden daher von der Community beschlossen. NFT Standards wie ERC-721 oder ERC-1155 wurden zumindest auf der Ethereum Blockchain ins Leben gerufen.

Was ist ERC-721?

ERC-721 ist ein freier, offener Standard, der beschreibt, wie NFTs auf der Ethereum-Blockchain erstellt werden können.

ERC-721 steht für „Ethereum Request for Comments 721“ und bietet unter anderen Funktionen wie die Übertragung von Token von einem Konto auf ein anderes, die Abfrage des aktuellen Token-Guthabens eines Kontos, die Abfrage des Eigentümers eines bestimmten Tokens und des Gesamtbestands des im Netzwerk verfügbaren Tokens. 

NFT ERC-721

Smart Contracts nach ERC-721 haben also im Prinzip zwei feste Funktionen: 

  1. Eindeutige ID inkl. Besitzer
  2. Transfer Funktion

Der Rest kann weiterhin individuell für jeden Token geschrieben bzw. im Smart Contract festgelegt. 721 legt damit zwei durchaus entscheidende Funktionen fest.

Damit kann jeder NFTs erstellen, beweisen, wem sie gehören und sogar mit ihnen handeln. Schonmal ziemlich nice und alle fingen an heiter NFTs zu minten, was zu einem weiteren Problem führte: Die Ethereum Blockchain muss immer mehr Daten verarbeiten und speichern. Sie wird langsam und „vermüllt“. Abhilfe brachte eine weitere Community Entscheidung:

NFT ERC-1155

Was ist ERC-1155?

ERC-1155 verfolgt einen neuen Ansatz bei der Definition von Token. Eine Standardschnittstelle für Verträge, die mehrere Token-Typen verwalten. Mehrere Token können in einem einzigen Contract gespeichert werden, der gerade so wenig Daten wie möglich enthält, um den Token von anderen eindeutig zu unterscheiden. Ein einzelner Vertrag kann dadurch eine größere Anzahl und gleichzeitig eine beliebige Kombination von Token enthalten.

Der ERC-1155 Multi-Token-Standard ermöglicht es, dass jede Token-ID einen neu konfigurierbaren Token-Typ repräsentiert, der eigene Metadaten, ein eigenes Angebot und andere Attribute haben kann.

Was kann in so einen Smart-Contract geschrieben werden?

Wir haben ja schon gelernt:  „Wenn-Dann-Beziehungen“ lassen sich definieren und festlegen. WAS, WANN, WIE OFT passiert und was der AUSLÖSER ist, wie oft es das NFT gibt und auch einen Gültigkeitszeitraum.

Alles Weitere ist eigentlich frei definierbar und kann auf ziemlich jede Branche, jedes Produkt zugeschnitten werden. Alles ist möglich, was in einem Code festgehalten werden kann.

Auf welcher Blockchain werden NFTs erstellt?

Hier gibt es derzeit drei Möglichkeiten: Ethereum, Solana und Cardano.

Alle drei wurden mit dem Ziel entwickelt, eine globale Plattform zu stellen, auf der dApps laufen können. Alle drei bieten die Möglichkeit NFTs zu minten und zu speichern und alle drei sind Smart-Contract fähig. Cardano kann das auch seit ein paar Tagen.

Jede kommt mit seinen eigenen Vor- und Nachteilen.

Krypto Logo Scribble - Ethereum, Solana und Cardano

Der Großteil des aktuellen NFT Hype findet (noch) auf Ethereum statt. Allerdings gibt es derzeit einen regelrechten „Gas War“. Kosten für die Gas-Fee haben in den vergangene Monaten und zu gehypten NFT Drops einfach auf völlig verrückte Höhen erreicht. 2.000 € Gas Fee für ein 0.05 ETH NFT … 🤯 NOPE, da bin ich raus.
Ethereum NFTs findest du zum Beispiel auf opensea.io
> Was eine „Gas Fee“ ist, kannst du hier nochmal nachlesen.

Solana ist super schnell und Gas Fees im Vergleich „nicht“ oder kaum vorhanden. Die Blockchain ist noch relativ jung und ging erst 2017 an den Start. Entsprechen hat sie auch immer mal wieder Kinderkrankheiten und so musste die gesamte Blockchain vor kurzem neu gestartet werden (ja, das geht^^), weil sie überlastet war/wurde. Solana war dadurch mehrere Stunden offline, nicht handelbar und nicht erreichbar.
Solana NFTs gibt es z.B. auf solanart.io

Cardano NFTs stecken auch noch in den Kinderschuhen. Die Cardano Blockchain gibt es schon länger aber NFTs finden hier erst seit kurzem statt.
Cardano NFTs findest du auf  cnft.io

Wie geschrieben, alle haben ihre eigenen Problemchen aber teilen sich eins: eine riesige Chance im Web3.0. Wenn du ein NFT Projekt starten willst, musst du eh deine Hausaufgaben machen und herausfinden, welche Plattform für dein Projekt und vor allem deine Community am besten passt.

Fazit – Bin ich schon zu spät? 

Wieder ganz schön was gelernt – ich zumindest… – und ich hoffe, du konntest auch etwas mitnehmen! Nach wie vor bleibe ich super fasziniert von NFTs und den Möglichkeiten die daraus für uns gerade entstehen. Als ich mich in den vergangenen Wochen immer mehr damit beschäftigt habe und immer tiefer in die crazy bunte Welt der NFTs eingetaucht bin, kam ein Gefühl auf:

„Fuck! Ich bin zu spät! Der Markt ist durch, erschlossen und ich hab es wieder mal verpennt!“ 🥲

Vor ein paar Tagen hatten wir Freunde zu Besuch und als ich erzählte, woran ich gerade arbeite, kam direkt die Frage: „Was ist ein NFT? Noch nie gehört!“. Damit hatte ich nicht gerechnet, aber vielleicht ist es ja doch noch früh und vielleicht geht da doch noch was. 😉 (JA tut es!) Das zeigt auch mal wieder, wie tief man in seiner eigenen Bubble steckt. Wenn ich auf YouTube, Insta oder TikTok gehe, ist inzwischen alles voll mit Krypto und NFTs Content und das hat bei mir eben den Eindruck erweckt, alles verpennt zu haben… Laut der Website Dune hat OpenSea derzeit ca. 330.000 Accounts und das ist die größte NFT Plattform, auf der die meisten Transaktionen stattfinden. Es gibt ca. 8 Milliarden Menschen… so viel zum Thema „zu spät“. 😅