NEU: Helius übernimmt Light Protocol
Ore minen
Blog/Entwicklung

Ore minen: Ein Leitfaden für Einsteiger

Developer Experience EngineerAnam Ansari auf XAnam Ansari auf LinkedIn
12 Min. Lesezeit
Inhaltsverzeichnis

Ein großes Dankeschön an Hardhat Chad und 0xIchigo für ihr großartiges Feedback und ihre Hilfe bei der Gestaltung dieses Artikels!

Ore ist ein auf Solana basierender Proof-of-Work-Token, den jeder überall minen kann. Kurz nach dem Start am 2. April 2024 wurde es als das Projekt bezeichnet, das Solana lahmgelegt hatte. Solana war durch Spam-Transaktionen erheblich überlastet, von denen zu dieser Zeit die meisten durch Ore-Miner verursacht wurden. Der Entwickler von Ore, Hardhat Chad, pausierte das Mining später am 16. April 2024. Am 6. August 2024 wurde Ore v2 veröffentlicht und das Mining fortgesetzt. Die Version führt mit Drillx einen neuen Mining-Algorithmus sowie Token-Anreize ein, die Nutzer zum Staking des Tokens motivieren. Seit der Veröffentlichung machen Ore-Transaktionen derzeit ~5 % jedes Blocks aus. 

In diesem Artikel untersuchen wir Proof of Work und Mining, indem wir ihre Ursprünge bei Bitcoin nachverfolgen. Anschließend vergleichen wir das Mining von Ore mit dem Bitcoin-Mining und zeigen dir, wie du ORE über die Web-App und das Command Line Interface (CLI) minen kannst.

Bitcoin

Bitcoin ist die erste Kryptowährung und wurde 2008 von Satoshi Nakamoto vorgestellt. Bitcoin führte das Konzept der Blockchain ein, bei der Blocks (also Gruppen von Transaktionen) miteinander verkettet und durch Hash-Verkettung unveränderlich gemacht werden. Der Hash eines Blocks ist im Wesentlichen eine 64-stellige Hexadezimalzahl. Sie entsteht, indem die Einträge der in einem Block enthaltenen Transaktionen durch den SHA256-Hash-Algorithmus verarbeitet werden. Jeder Block verwendet den Hash des vorherigen Blocks, um beide miteinander zu verketten. So entsteht eine Kette von Blocks. Diese Eigenschaft macht Blockchains unveränderlich: Wenn Daten geändert werden, stimmt der Hashwert nicht mehr überein. 

Jeder kann den Hash eines Blocks berechnen und bereitstellen. Zunächst legt das Netzwerk einen Ziel-Hashwert fest. Dieser Ziel-Hash bestimmt die Mining-Schwierigkeit. Die Mining-Schwierigkeit ist ein dynamischer Parameter, der nach jeweils 2016 Blocks angepasst wird, also ungefähr alle zwei Wochen. Dadurch werden der Blockchain in einem gleichmäßigen Tempo von etwa einem Block alle 10 Minuten neue Blocks hinzugefügt. Miner (also jeder mit einem Mining-Rig und Mining-Software) lösen ein komplexes mathematisches Problem, um einen Hash zu finden, der kleiner oder gleich dem Ziel-Hash ist. Jeder Miner im Netzwerk arbeitet daran, bis die richtige Kombination aus Hash und Nonce (eine nur einmal verwendete Zahl) gefunden wurde. Wer sie zuerst findet, erhält für die geleistete Arbeit eine Belohnung in Form von Bitcoin und Gebühren. Mining ist somit einfach der Prozess, komplexe mathematische Probleme zu lösen, Hashes einzureichen und für die geleistete Rechenarbeit belohnt zu werden. Das Lösen dieser Probleme erfordert jedoch viel Rechenleistung und Energie. 

Dieser Mining-Prozess heißt Proof of Work (PoW). Die zum Erzeugen des erfolgreichen Hashes geleistete Arbeit gilt als Beleg dafür, dass der Miner die Transaktionen im Block validiert hat. Sie weist also nach, dass diese Arbeit ausgeführt wurde. PoW ist ein Konsensmechanismus. Der Konsens wird erreicht, nachdem der Block geschlossen und der Kette hinzugefügt wurde. Während jeder Miner neue Blocks vorschlägt und erfolgreiche Hashes erzeugt, validiert er auch jeden neu hinzugefügten Block. Jeder Miner meldet dem Netzwerk, dass der Block als gültig bestätigt wurde. Neue Blocks verwenden den Header-Hash des vorherigen Blocks. Dadurch entsteht eine Beweiskette, die zum Netzwerkkonsens führt. Deshalb heißen diese Nachweise Konsensmechanismen: Sie bilden die Grundlage dafür, wie ein Konsens erreicht wird. Dies erfordert nur wenig zusätzliche Energie oder Rechenleistung, da jeder Mining-Node diese Aufgabe erledigt, während er den neuesten Block mint. Wenn neue Blocks hinzugefügt werden, bestätigt das Netzwerk sie.

Der Gesamtbestand von Bitcoin ist auf 21 Millionen begrenzt. Zum Zeitpunkt der Erstellung dieses Artikels wurden rund 19 Millionen Bitcoin gemint. 2009 mintete der pseudonyme Entwickler Satoshi Nakamoto den Genesis-Block (also den ersten Block) und erhielt dafür 50 Bitcoin als Belohnung. 

Ore

Ore ist wie Bitcoin ein Proof-of-Work-Token, wird jedoch als Programm auf Solana ausgeführt. Du kannst ihn auf jedem Laptop, Smartphone oder Heimcomputer minen. Ore v1 hatte einige Probleme. Erstens ließ es sich zu leicht manipulieren. Dies führte zu massivem Spam, der Solana überlastete. Ein weiteres Problem war der sofortige Verkauf von ORE. Miner hatten keinen Grund, etwas anderes zu tun, als ihre Token einzufordern und zu verkaufen. Dadurch fiel der Wert des Tokens von etwa 4.000 $ auf rund 120 $.

Um zu überleben, hat Ore v2 gegenüber der einfacheren Version v1 mehrere wichtige Änderungen vorgenommen:

  1. Die Einführung eines neuen, weniger manipulierbaren Mining-Algorithmus namens DrillX stellt sicher, dass selbst Miner mit einfachen Smartphones und Laptops nie aus dem Ore-Mining verdrängt werden
  2. Die Einführung von ORE-Staking zur Steigerung der Mining-Belohnungen schafft Nachfrage und motiviert Miner, ihre Token zu halten, statt sie einzufordern und zu verkaufen

Wie Bitcoin hat auch Ore einen festen Bestand von 21 Millionen Token. Im Durchschnitt wird pro Minute nur 1 neuer ORE gemint. Daher werden ungefähr im Jahr 2064 alle 21 Millionen ORE gemint sein. Ich empfehle dir den Artikel von kelxyz im Helius-Blog, der Ore ausführlicher behandelt.

Hash-Leistung

Die Hash-Leistung bezeichnet die Rechenleistung, die zum Mining von Kryptowährungen eingesetzt wird. Sie wird anhand der Anzahl der Berechnungen (Hashes) pro Sekunde gemessen. Eine höhere Hash-Leistung steht für eine höhere Rechenkapazität. Dadurch können Miner Probleme schneller lösen und ihre Chancen auf Belohnungen erhöhen.

In diesem Fall löst dein Gerät das Problem und sendet eine Transaktion, um Ore zu minen. Um die Hash-Leistung deines Geräts zu prüfen, öffne das Terminal oder die Eingabeaufforderung und führe den Befehl ore benchmark aus. Alternativ kannst du die Hash-Leistung deines Geräts auf der Website von Ore prüfen. Die folgenden Screenshots zeigen, dass mein Gerät 600 Hashes pro Minute erzeugen kann (schluchz, ich brauche einen besseren Laptop). 

Drillx, das mit Ore v2 eingeführte neue Protokoll, basiert auf der CPU. Ein Gerät mit mehr Kernen kann daher schneller rechnen. Ein Kern ist eine einzelne Verarbeitungseinheit innerhalb der CPU, die Anweisungen ausführen kann. Je mehr Kerne eine CPU hat, desto mehr Aufgaben kann sie gleichzeitig verarbeiten. 

Wie mine ich Ore?

Du kannst ORE über das Command Line Interface (CLI) oder die Web-App auf der Ore-Website minen. Beim Mining von ORE löst du im Wesentlichen ein komplexes mathematisches Problem, um den Hash zu finden, und sendest anschließend die Transaktion. Es gibt daher zwei Möglichkeiten, deine Mining-Belohnungen zu erhöhen: ein Gerät mit hoher Rechenleistung und die Fähigkeit, Transaktionen schneller zuzustellen. Drillx, das mit Ore v2 eingeführte neue Protokoll, basiert auf der CPU. Ein Gerät mit mehr Kernen kann daher schneller rechnen. Ein Kern ist eine einzelne Verarbeitungseinheit innerhalb der CPU, die Anweisungen ausführen kann. Je mehr Kerne eine CPU hat, desto mehr Aufgaben kann sie gleichzeitig verarbeiten. 

Nutze Staked Connections und Priority Fees, um höhere Zustellraten zu erzielen. Staked Connections geben dir priorisierten Zugriff auf den Leader, also den Validator, der die Transaktion gerade ausführt. So stellst du sicher, dass der Leader deine Transaktionen verarbeitet und sie nicht vorher verworfen werden. Während der Transaktionsverarbeitung motivieren Priority Fees den Validator, deine Transaktion vor anderen auszuführen. Einfach gesagt: Staked Connections helfen dabei, deine Transaktionen an den Leader zu senden. Priority Fees helfen dabei, deine Transaktionen schneller auszuführen. In diesem Artikel erfährst du, wie du Transaktionen optimierst, die Bestätigungslatenz minimierst und die Zustellraten maximierst.

Mit der CLI erhältst du besseren Zugriff auf die Hardware deines Geräts und mehr Kontrolle über die verwendete RPC-URL und die festgelegten Priority Fees. Für Einsteiger ist die Website jedoch ein guter Ausgangspunkt. 

Web

Rufe zuerst die Website von Ore auf und verbinde deine Wallet.

Du wirst weitergeleitet, um einen neuen Mining-Account zu erstellen. Sobald du auf „Account erstellen“ klickst, wirst du aufgefordert, eine Transaktion zu signieren. Wenn der Fehler „Zeitüberschreitung“ erscheint, musst du es möglicherweise erneut versuchen und noch einmal auf „Account erstellen“ klicken. Dieser Fehler tritt auf, wenn die von dir signierte Transaktion nicht verarbeitet wird und abläuft

Das Mining startet automatisch. Sobald ein Hash gefunden wurde, wirst du aufgefordert, die Transaktionen zu signieren. Daher solltest du den Vorgang nicht im Hintergrund ausführen.

Kehre abschließend zur Startseite zurück, um dein Guthaben zu prüfen. Klicke auf „Einfordern“, um die Belohnungen an deine Wallet zu übertragen. Du kannst auch deine Aktivitäten prüfen, indem du zum Tab Persönlich wechselst

CLI

Ein Command Line Interface (CLI) ist eine textbasierte Benutzeroberfläche, über die du in einem Terminal mit einem Computersystem, Betriebssystem oder einer Anwendung interagierst. Je nach Betriebssystem musst du das Terminal (macOS, Linux-basierte Betriebssysteme) oder die Eingabeaufforderung (Windows) öffnen.

Voraussetzungen

  1. Rust und Cargo
  2. Solana CLI

Mit diesen Befehlen kannst du prüfen, ob die oben genannte Software korrekt installiert wurde:

Hier wird && verwendet, um die Befehle nacheinander auszuführen.

Installation unter Windows

Rust und Cargo

Lade rustup-init.exe herunter und führe die Datei aus. Die Installation startet in einer Konsole. Nach erfolgreicher Installation erscheint diese Meldung: Rust is installed now.

Solana CLI

Öffne die Eingabeaufforderung und führe die folgenden Befehle aus:

Code
cmd /c "curl https://release.solana.com/v1.18.18/solana-install-init-x86_64-pc-windows-msvc.exe --output C:\solana-install-tmp\solana-install-init.exe --create-dirs"
Code
C:\solana-install-tmp\solana-install-init.exe v1.18.18

Installation unter Linux/macOS

Rust und Cargo

Code
curl https://sh.rustup.rs -sSf | sh

Solana CLI

Code
sh -c "$(curl -sSfL https://release.solana.com/v1.18.18/install)"

Ore CLI installieren

Code
cargo install ore-cli

Mit demselben Befehl kannst du die CLI auf neuere Versionen aktualisieren. 

Netzwerk konfigurieren

Wechseln wir zum Mainnet, da du ORE derzeit nur im Mainnet minen kannst. Standardmäßig sendet Ore alle Mining-Anfragen an „https://api.mainnet-beta.solana.com“. Mit dem Befehl solana config set kannst du die Konfiguration ändern. Über das Flag --url können wir die Netzwerkkonfiguration ändern: 

Code
solana config set --url https://api.mainnet-beta.solana.com

Du kannst die URL in jede beliebige RPC-URL ändern. Helius bietet zum Beispiel ab $49/Monat in seinen gemeinsam genutzten Tarifen Zugriff auf Staked Connections. Das ist vorteilhafter als die Verwendung der Standard-URL. Ersetze im obigen Befehl die RPC-URL in den doppelten Anführungszeichen durch eine RPC-URL deiner Wahl:

Code
solana config set --url "https://mainnet.helius-rpc.com/?api-key=<your-api-key>"

Wallet einrichten

Erstellen wir eine Wallet, mit der du die Transaktion signieren, Netzwerkgebühren bezahlen und Belohnungen erhalten kannst. (Wenn du bereits eine Wallet auf deinem Gerät hast, kannst du diesen Schritt überspringen):

Code
solana-keygen new

Der obige Befehl erstellt eine neue Wallet. Wir müssen dieser neuen Wallet etwas SOL hinzufügen, um die Gebühren unserer Mining-Transaktionen zu decken. Mit diesem Befehl erhältst du den öffentlichen Schlüssel der Wallet: 

Code
solana address

Kopiere die Adresse und übertrage etwas SOL dorthin. Mit dem folgenden Befehl kannst du auch das Guthaben dieser Wallet prüfen:

Code
solana balance

Deine Wallet ist jetzt bereit, ORE zu minen!

Mining starten

Verwende Folgendes, um ORE mit allen Standardkonfigurationen zu minen: 

Code
ore mine

Und voilà, das Mining von ORE beginnt. 

Erweiterte Konfigurationen

Um die Standardkonfiguration zu ändern, fügen wir dem Befehl ore mine Flags hinzu. Flags kannst du mit diesem --<command> hinzufügen. Du kannst mehrere Flags gleichzeitig übergeben. 

RPC

Wenn du den Mainnet-Endpunkt deines RPC-Anbieters hinzufügen möchtest, kannst du dein Netzwerk wechseln. Füge dazu das Flag --rpc und anschließend die Netzwerkadresse deines RPC-Anbieters hinzu:

Code
ore mine --rpc "https://mainnet.helius-rpc.com/?api-key=<your-api-key>"

Priority Fees

Im obigen Screenshot des ORE-Minings ist die Priority Fee auf 50000 Mikrolamports festgelegt. Du kannst diesen und andere Parameter ändern. Bei einer Überlastung motivieren Priority Fees den Validator, der gerade Transaktionen ausführt, deine Transaktionen zu verarbeiten. Die Idee dahinter: Transaktionen mit höheren Gebühren werden früher verarbeitet. Nutzer, die mehr bezahlen, erhalten dadurch eine schnellere Ausführung.

Verwende dieses Flag, wenn du die dynamischen Priority Fees deines RPC-Anbieters nutzen möchtest, vorausgesetzt, du hast ihn über das Flag --rpc festgelegt: 

Code
ore mine --rpc "https://mainnet.helius-rpc.com/?api-key=<your-api-key>"

Wenn du eine andere URL zum Ermitteln der dynamischen Gebühren verwendest, füge diese RPC-URL für die dynamische Gebührenschätzung in doppelten Anführungszeichen hinzu:

Code
ore mine --dynamic-fee-url <DYNAMIC_FEE_URL>

Mit dem Flag --priority-fee kannst du eine feste Priority Fee hinzufügen. Wenn du dynamische Gebühren verwendest, dient dieser Wert als Höchstwert. Beachte, dass der Standardwert 500000 beträgt:  

Code
ore mine --priority-fee <MICROLAMPORTS>

Weitere Konfigurationen

Wenn wir eine Wallet erstellen, wird ihre Konfiguration für den Gebührenzahler an einem Standardspeicherort abgelegt. Zum Beispiel: /Users/username/.config/solana/id.json

Wenn du eine andere, an einem anderen Speicherort abgelegte Wallet als Gebührenzahler verwenden möchtest, kannst du den Dateipfad dieses Gebührenzahlers mit diesem Befehl hinzufügen:

Code
ore mine --priority-fee <MICROLAMPORTS>

Da ORE ein SPL-Token ist, wird ein Associated Token Account (ATA) erstellt, in dem dieser ORE gespeichert wird. Dieser ATA wurde erstellt, als wir das Mining zum ersten Mal starteten. Wenn du ORE jedoch in einem anderen Account aufbewahren möchtest, kannst du den Pfad zu dessen Keypair-Datei hinzufügen:

Code
ore mine --keypair <KEYPAIR_FILEPATH>

Um alle oben genannten Befehle zu verwenden, musst du sie weiterhin nach ore mine anhängen. 

Alternativ kannst du alle diese Konfigurationen in einer YML-Datei speichern und den Dateipfad direkt übergeben:

Code
ore mine --config <PATH>

Eine beispielhafte Datei vom Typ config.yml sieht so aus:

Code
---
json_rpc_url: https://mainnet.helius-rpc.com/?api-key=<your-key>
websocket_url: ''
keypair_path: /Users/example/.config/solana/id.json
address_labels:
  '11111111111111111111111111111111': System Program
commitment: confirmed

Beachte, dass die Ore CLI laufend aktualisiert wird. Stelle mit dem folgenden Befehl sicher, dass du die neueste Version der CLI verwendest und Zugriff auf neue Befehle sowie alle Fehlerbehebungen hast:   

Code
cargo install ore-cli

Mit dem folgenden Befehl kannst du die aktuelle Version prüfen: 

Code
ore -V

Der Befehl ore help listet alle aktuellen Flags, ihre Funktionen und ihre Argumente auf.

ORE einfordern

Der gesamte geminte ORE wird erneut gestakt. Um diesen ORE aus dem Staking zu nehmen und einzufordern, führe einfach den folgenden Befehl aus. Damit sendest du deine Mining-Belohnungen an deine Wallet:

Code
ore claim

Mit dem Befehl ore stake kannst du dein ORE-Guthaben staken.

Fazit

Bitcoin hat uns den Weg gezeigt und eine sichere, dezentrale Methode zur Verwaltung digitalen Geldes geschaffen. Ore geht jetzt einen Schritt weiter und macht das Mining mit seinem neuen Algorithmus fairer. Durch die Einführung von Staking stellt die neue Version sicher, dass Miner ORE halten, statt ihn sofort zu verkaufen. Du kannst ORE ganz einfach über die Web-App oder die CLI minen. Backpack hat außerdem eine Anleitung veröffentlicht, die erklärt, wie du Ore über die Wallet-App minen kannst. Die Ore CLI wird laufend um neue Funktionen erweitert, und alle Repositorys des Projekts sind Open Source. Um über die neuesten Entwicklungen informiert zu bleiben, empfehle ich dir, dem Gründer und dem offiziellen Ore-Account auf Twitter/X zu folgen. 

Wenn du bis hierhin gelesen hast: Danke, Anon! Gib unten deine E-Mail-Adresse ein, damit du keine Neuigkeiten zu Solana verpasst. Möchtest du tiefer einsteigen? Entdecke die neuesten Artikel im Helius-Blog und setze deine Solana-Reise noch heute fort.

Ore-Websites

Ressourcen

Helius abonnieren

Bleib bei der Solana-Entwicklung auf dem Laufenden und erhalte Updates, wenn wir neue Beiträge veröffentlichen

Vergrößertes Bild