Projektkontext
Auftraggeber in diesem Projekt ist 10 Academy; Der Kunde möchte die Herausforderung lösen, sicherzustellen, dass Zertifikate allen Auszubildenden auf sichere Weise zur Verfügung stehen und (wenn möglich), dass Zertifikatsinhaber jetzt und in Zukunft von Smart Contract-Aktionen profitieren können.
Derzeit werden Zertifikate als einfache PDF-Dateien verteilt, ohne dass die Echtheit überprüft werden kann und die 10 Academy keine klugen Aktionen mit den Auszubildenden / ihren Verträgen durchführen kann. In diesem Projekt erstellen Sie End-to-End-Web3-Dapps auf der Algorand-Blockchain, die der 10 Academy dabei helfen, Non-Fungible Tokens (NFTs) als Zertifikate zu generieren und zu verteilen, die den erfolgreichen Abschluss einer wöchentlichen Herausforderung für Auszubildende darstellen und ermöglichen Auszubildende mit NFTs, um mit einem Smart Contract zu interagieren, um vordefinierte Aktionen auszuführen.
Hintergrund
Web 3.0
Web 3.0 befindet sich noch in der Entwicklung und wird definiert, und als solches gibt es keine kanonische, allgemein anerkannte Definition. Klar ist jedoch, dass Web 3.0 einen starken Schwerpunkt auf dezentralisierte Anwendungen legen und Blockchain-basierte Technologien umfassend nutzen wird. Web 3.0 wird auch maschinelles Lernen und künstliche Intelligenz (KI) nutzen, um intelligentere und anpassungsfähigere Anwendungen zu ermöglichen.
Viele Websites und fast alle Anwendungen im Web 2.0-Zeitalter verlassen sich auf irgendeine Form einer zentralisierten Datenbank, um Daten bereitzustellen und die Funktionalität zu ermöglichen. Beim Web 3.0 nutzen Anwendungen und Dienste statt einer zentralen Datenbank eine dezentrale Blockchain. Der Grundgedanke bei Blockchain ist, dass es keine willkürliche zentrale Instanz gibt, sondern eine Form des verteilten Konsenses.
Web3-Technologie-Stack
Netzwerkschicht:
das Blockchain-Netzwerk. Eine Blockchain ist ein digitales Transaktionsbuch, das von einem Peer-to-Peer-Netzwerk von Knoten verwaltet wird. Dieses Hauptbuch verfolgt auch On-Chain-Daten wie Kontostände, intelligente Vertragscodes und so weiter. Während Web2-Anwendungen auf zentralisierte Datenbanken angewiesen sind, bauen Web3-Anwendungen auf Blockchain-Architekturen für vertrauenswürdigen und erlaubnislosen Zugriff auf.
Die Blockchain besteht aus Datenblöcken. Blöcke werden auf verteilten Knoten gespeichert. Jeder Knoten in einer Blockchain dient als „Mini-Server“, der es seinem Bediener ermöglicht, Datenblöcke zu lesen/schreiben. Alle Blöcke, die der Blockchain hinzugefügt werden, müssen über alle Knoten im Netzwerk weitergegeben werden, um synchron zu sein.
Interaktionsschicht:
Diese Schicht ermöglicht es Entwicklern und Benutzern, Daten in die Blockchain zu lesen und zu schreiben. Dies geschieht durch Smart Contracts. Im Kontext von Web3 fungieren Smart Contracts als Backend einer Anwendung. Der Smart Contract definiert die Anwendungslogik und steuert die Gesamtfunktionalität der Anwendung. Jedes Mal, wenn eine Smart-Contract-Funktion aufgerufen wird, bewirkt dies eine Änderung des Zustands des Blockchain-Netzwerks. Danach wird die Zustandsänderung akzeptiert und über das Netzwerk von Knoten rundgesendet. Block-Explorer sind ein wichtiger Bestandteil der Blockchain-Interaktionsschicht. Für den Anfang bieten sie ein Fenster in die untere Netzwerkschicht und dienen als Online-Ressource zum Abrufen von Echtzeit- und Verlaufsdaten über Transaktionen, Adresssalden,
Präsentationsfolie:
In vielerlei Hinsicht spiegelt die Web3-Präsentationsschicht viele Aspekte der Web2-Entwicklung wider. Für die Erstellung und Entwicklung von Frontend-Komponenten greifen viele Entwickler auf die bewährte Bibliothek React.js zurück. Während Blockchains ein Medium für die dezentrale Zustandsverwaltung, die intelligente Speicherung/Ausführung von Verträgen und den Transaktionswert bieten, erfordern Anwendungen auf höherer Ebene zusätzliche Komponenten. Für Front-End-Inhalte wie Bilder, Videos und GIFs ist Blockchain-Speicher unerschwinglich teuer und ineffizient. Dezentrale Speicherung schließt diese Lücke.
Anwendungsschicht:
Applications that serve as the entry point for all manner of Web3 activities. To use a dapp, users will only have to connect their wallets or use a wallet-based ID service like SpruceID. Wallets are crucial for interacting with blockchain applications. Calling smart contract functions involves paying a fee to miners responsible for executing the transaction. Wallets allow users to store and send cryptocurrency, making them necessary for interacting with smart contracts.
Algorand Blockchain
Algorand (ALGO) ist sowohl eine digitale Währung als auch eine Blockchain-Plattform. Die Algorand-Plattform wurde entwickelt, um viele Transaktionen schnell zu verarbeiten, ähnlich wie bei einem großen Zahlungsabwickler wie Mastercard oder Visa. Algorand kann andere Kryptowährungen und Blockchain-basierte Projekte hosten und ist damit ein direkter Konkurrent von Ethereum. ALGO, die native Währung der Plattform, wird verwendet, um die Algorand-Blockchain zu sichern und Bearbeitungsgebühren für Algorand-basierte Transaktionen zu zahlen. Algorand ist eine Open-Source- Blockchain, was bedeutet, dass jeder den Code der Plattform anzeigen und dazu beitragen kann. Algorand verwendet ein Betriebsprotokoll namens Pure Proof-of-Stake (PPoS), das Netzwerkbetreiber aus dem gesamten Pool der ALGO-Coin-Inhaber rekrutiert.
Algorand-Statistiken
Algorand-Marktkapitalisierung in Algos und Dollar
Transaction Volume Growth for different Blockchains.
The Project
Technologies and Implementation
The blockchain network used for this project was Algorand. For development, a local private network was initialized
Front-end
React
JavaScript
HTML
CSS
Back-end
Python scripts (Algorand Python SDK)
The blockchain network used for this project was Algorand. For development, a local private network was initialized. In the private network, there are already created three accounts that can be used to fund other new accounts and develop the application.
The application is going to be designed to have the following features: The applications will have three different web pages: login page, trainees page, and trainer’s page.
Trainees are able to perform the following tasks using the trainee’s page:
send a request to 10-academy to receive a minted certification of completion.
Track the status of their request.
When their request is approved by 10 academy trainers and an NFT is generated for them specifically, they will be able to opt-in and receive the certificate.
After receiving the certificate they will be able to run another request, which is a request to access next week’s challenge document.
Trainers are able to perform the following tasks using their page:
Observe a list of requests for certifications from different trainees
Approve request, mint certification NFT, and send the NFT to a smart contract that will be able to redirect the NFT to the appropriate user when they opt-in.
When the trainees observe their approved status and opt In, the NFT will be automatically sent to their account from the smart contract.
Insert a link to next week’s challenge and set access requirements that must be met by the trainee who requests to have access to the resource.
Learned Lessons
The foundational working principles of blockchain
Distributed Database: Everyone on a blockchain has access to the whole database with its history, No single party controls the information or the data. All parties can authenticate the records of its transactions directly without an intermediary.
Peer-to-peer networks: Communication occurs directly between peers instead of through a central node. Each node stores and forwards the information to all other nodes.
Computational Logic: Blockchain transactions can be tied to computational logic and in essence programmed. (smart contracts)
Konsensprotokoll: Neue Blöcke sollten von Knoten validiert werden, und sie folgen einigen Methoden, um die Korrektheit der Blöcke zu überprüfen. Nur wenn die Knoten einen Konsens erreichen, wird der Kette ein neuer Block hinzugefügt. (Proof of Work und Proof of Stake)
Unveränderliches Ledger: Sobald eine Transaktion zur Blockchain hinzugefügt und der Status der beteiligten Konten aktualisiert wurde, können die Datensätze nicht mehr geändert werden, da sie mit jeder anderen Transaktion in der Blockchain verknüpft sind. (das erhöht die Sicherheit)
Andere…
Wie eine Blockchain funktioniert:
Der grundlegende Prozess ist im Bild unten zusammengefasst.
Wie sich Algorand von anderen Blockchains unterscheidet.
Drei Probleme plagen die Kryptowährungsbranche – Skalierbarkeit des Netzwerks, Geschwindigkeit der Transaktionen und Sicherheit des Netzwerks. Große Kryptowährungen wie Bitcoin und Ethereum haben versucht, das Geschwindigkeits- und Sicherheitsproblem bis zu einem gewissen Grad zu lösen, aber das einzige, was noch angegangen werden muss, ist die Skalierbarkeit des Netzwerks, die in Transaktionen pro Sekunde oder TPS gemessen wird. „Algorand ist eine intelligente Vertragsplattform, die versucht, das Blockchain-Trilemma (Skalierbarkeit, Dezentralisierung, Sicherheit) zu lösen und zur Demokratisierung des Finanzwesens beizutragen“, sagt Boggiano.
Einige Vorteile von Algorand:
Überragende Geschwindigkeit bei der Transaktionsverarbeitung und -abwicklung
Sehr niedrige Transaktionsgebühr
Negativer CO2-Fußabdruck
Erweiterte Smart-Contract-Funktionen.
So führen Sie die folgenden Aufgaben auf Algorand aus
Erstellen Sie Anwendungstransaktionen und Asset-Transaktionen
Erstellen Sie intelligente Verträge und setzen Sie sie ein
Verwenden Sie algorand SDKs, um Web3-Webanwendungen zu erstellen.
Zukunftspläne
Für die Zukunft planen wir, die Entwicklung des oben genannten Projekts durch Hinzufügen der folgenden Funktionen zu vervollständigen:
Vor-Ort-Generierung von Zertifikatsbildern mit einer formularähnlichen Eingabe.
Eine Möglichkeit, Berechtigungen für den Zugriff auf mehr als nur Ressourcenlinks mit den Zertifikat-NFTs zu verknüpfen.
Comments