Leserartikel Alles über Bitcoin-Core & Installation vom Quellcode

Status
Für weitere Antworten geschlossen.
In diesem Artikel werden wir Bitcoin-Core vom Quellcode, auf einem Ubuntu GNU/Linux 64-Bit Betriebssystem installieren.
Diese Installationsanleitung gilt für alle Debian/Ubuntu ähnlichen Distributionen/Betriebssysteme; wie zum Beispiel: Kubuntu, Lubuntu, Xubuntu, Kali Linux, KDE neon, Linux Mint, Elementary OS, Zorin OS, und viele mehr.
Hauptsächlich unterscheidet sich die Installation durch den, von der jeweiligen Distribution verwendeten Paket-Manager. Ubuntu verwendet das „Advanced Package Tool (APT)“. Andere Distributionen verwenden andere Paket Manager, wie zum Beispiel der „pacman“ von „Arch Linux“, den auch „Manjaro“ verwendet.
Durch das abändern der Befehle, in die von der Distribution verwendeten Paket Manager, zum Beispiel:
Ubuntu Befehl:
Code:
apt-get install bitcoin-qt
Arch Linux Befehl:
Code:
pacman -S bitcoin-qt
Kann diese Anleitung auch für andere Distributionen verwendet werden. Der Name der Pakete kann jedoch abweichen.

Bitcoin-Core ist das Quellprogramm aller Bitcoin Programme
Als erstes sollte man verstehen wie das gesamte System funktioniert. Es ist auch ratsam zu wissen, wie und wo, das eigene Geld aufbewahrt wird.
Bitcoins funktionieren auf folgender weise: Jeder Benutzer muss sich zuerst eine Bitcoin-Wallet (Bitcoin-Geldbeutel) erstellen. In dieser Wallet werden dann die Bitcoins aufbewahrt. Am besten stellt man sich die Bitcoin-Wallet, wie ein Bankkonto vor und so sieht die Kontonummer aus:
E0476E4991D85CF0FA8A5678CA8312 (Frei erfunden, kann per Zufall jemandem gehören)
Diese Verkettung von Hexadezimal-Zahlen, nennt man einen String (Strang).
Im unterschied zu einem normalen Bankkonto, das den IBAN-String hat; hat eine Bitcoin-Wallet zwei Strings. Es gibt den Privaten und den öffentlichen String, der auch "Key" (Schlüssel) genannt wird (Public & Private Key). Der Private-Key ist der Zugang zum Konto; wer diesen Schlüssel hat, kann bezahlen. Der Public-Key ist wie die Kontonummer auf die Geld überwiesen werden kann.
Der Private-Key ist in der Blockchain aufgeschrieben und wie viel Geld zu einem bestimmten Key/String/Konto gehört.
Wie eine Blockchain im Detail funktioniert, werde ich hier nicht erklären, da gibt es genügend Quellen im Internet.
Das ganze ist selbstverständlich verschlüsselt und wenn man die Datei mit einem Text-Bearbeitungs-Programm (Texteditor) öffnet, sieh es so aus:

BlockChane.png


Mir diesen Informationen können wir nichts anfangen, aber wir haben jetzt ein Vorstellung davon, wie der Digitale Geldbeutel aussieht.
Manch einer dürfte sich jetzt denken, das eine Verschlüsselung allein nicht sicher genug ist und sein Geld diesem Geldbeutel nicht anvertrauen würde. Dem stimme ich zu.
Die Verschlüsselung lässt sich auch entschlüsseln und muss auch im Programm entschlüsselt werden, damit das Programm selbst mit diesen Daten arbeiten kann. Durch das entschlüsseln der Blockchain, werden die Inhalte der Wallets für Menschen lesbar/sichtbar; wie viele Bitcoins in einer Wallet enthalten sind und wie dies zustande kam.
Jeder Bitcoin hat einen Verlauf, von dem Moment an, an dem er generiert wurde, wird er in der Blockchain festgehalten; wann, wo, wie dieser Bitcoin entstanden ist und zu welcher Wallet er gehört. Welche Walet zu welcher Person gehört, ist in der Blockchain nicht eingetragen, da bei der Erstellung einer Wallet, keine Personenbezogenen Informationen angegeben werden müssen und auch nicht eingegeben werden können.

Blockchain.png


Das ist ein Screenshot der Blockchain auf meinem Computer. Zurzeit ist die BlockChain etwa 350GB groß und sie wächst mit jeder Transaktion (Überweisung).
Kauft man etwas mit einem Bitcoin, wird in der Blockchain aufgeschrieben, dass der Bitcoin einer anderen Wallet gut geschrieben wurde und in der anderen Wallet wird ebenso die Herkunft des Bitcoins aufgeschrieben. Es werden keine Informationen aus der Blockchain gelöscht, nur hinzugefügt; um Betrügereien zu verhindern.
Jetzt denkt sich manch einer, dass sich die Herkunft auch fälschen lässt und wenn die Blockchain auf dem eigenen Computer liegt, kann man ja die Informationen beliebig manipulieren. Was auch so ist.
Um zu verhindern das gefälschte Informationen, die Bitcoins beeinflussen, werden alle Informationen der Blockchain, mit allen Blockchains, auf allen Computern die Bitcoin-Core installiert haben, über das Internet verglichen. Somit sind die Blockchains auf allen Computern identisch. Wenn jetzt jemand die Blockchain auf seinem Computer manipuliert, wird dies sichtbar, da derjenige der einzige ist der eine abweichende Information hat und der Eintrag wird ungültig.
Nun gibt es schlaue Köpfe die das austricksen wollen, indem sie ganz viele Wallets auf ihren Computer erstellen, hunderte Wallets, und in all diese Wallts eintragen, dass eine bestimmte Wallet, einen bestimmten Wert/Inhalt besitzt. Jetzt überprüft Bitcoin-Core dies Information und stellt fest, das diese eine falsche Information ist; weil nicht genügend Quellen in der Blockchains die gleich Information enthalten; aber auch der Hash passt nicht.
Andere versuchen das System auf eine andere Art auszutricksen, in dem sie Online-Bitcoin-Wallets anbieten. Eine Online Wallet ist nichts weiter, als ein Web-Server (Computer), mit einer Internetseite, über die sich jedermann Online registrieren kann und über eine Webseite, Bitcoin-Core, der auf diesen Server installiert ist, eine Online-Wallet einrichten kann. Das tolle daran ist, wenn ein Hacker so einen Service einrichtet, die gesamten Informationen, die ein HaCkEr benötigt um eine Wallet zu hacken, bereits auf seinem Computer liegen. Nun kann der Hacker in allen Walets, die sich auf seinem Computer befinden, einer bestimmten Wallet, einen bestimmten Wert zuschieben und sich so bereichern.

Bitcoin-Map.png


Das Bitcoin-System ist dezentral aufgebaut.
Sollten die Online-Bitcoin-Wallets Anbieter den Markt übernehmen, worauf sie dank der Unwissenheit und Ignoranz der Benutzer, gute Chancen haben, ist der Bitcoin nichts mehr Wert.
Es heißt, das über 50% der vorhandenen Wallets, einen bestimmten Inhalt haben müssen, damit dieser vom System als echt anerkannt wird. Also muss der Hacker irgendwie dafür sorgen, das 50% der Walet Besitzer, bei ihm eine Wallet einrichten. Das ist einer der Gründe warum es so viele kostenlose Bitcoin-Wallet Anbieter gibt. Server und der Unterhalt von Servern, Webseite, Kundenservice, Rechtsabteilung und so weiter, kosten viel Geld; wie finanzieren sich diese Kostenlosen Dienste?
Ein Weiterer Grund warum es diese Online-Bitcoin-Wallets gibt, ist die Bitcoin Anonymität zu durchbrechen. Jeder der sich Online eine Wallet einrichtet, muss sich registrieren und seine IP-Adresse wird auch festgehalten. Somit ist die Wallet mit einer bestimmten Person verbunden und alle Transaktionen dieser Wallet, sind dieser Person zugeordnet; was den Zweck der Bitcoins, als anonyme Währung, unbrauchbar macht.
Deswegen sollte jeder der Bitcoins benutzen will, sich Bitcoin-Core auf seinem eigenem Computer installieren; am besten noch Tor dazu.
Das Kaufen von Bitcoins ist dabei die Achillesferse; beim kauf wird meistens das Geld vom eigen Bankkonto, zu einem anderen geschickt und gegen Bitcoins getaucht. Dabei ist der Käufer nur so anonym, wie es die Banken und Verkäufer zulassen.


Artikel Erweiterung
Ich habe die Funktionsweise von Bitcons nicht ausreichend erklärt und möchte dies nachholen.

Stell dir vor, du sitzt an einem Tisch mit drei Freunden und ihr möchtet Poker spielen, habt aber kein Bar Geld und auch kein Chips, also nimmt ihr Papier und Stift, um den Kontostand jedes Spielers aufzuschreiben.
Spieler 4 ist die Bank und führt die Kontostände.
Die erste runde beginnt und alle Spieler legen 10 Credits in den Pott. Spieler 2 gewinnt die Runde und bekommt den Pott im wert von 40 Credits.

BitCoinPoker-1.png

Dieser Zettel symbolisiert die Bitcoin Chane

Spieler 4 hat eine Idee wie er betrügen könnte. Da Spieler 4 die Bank ist und die Kontostände führt, denkt er sich „Ich könnte doch einfach meine Kontostand verändern.“ also schreibt er sich ein neues Guthaben auf, anstatt 90 Credits, macht er 100 Credits daraus.
Einer der Spieler bemerkt, das Spieler 4 betrügt und verlangt ein Änderung des Systems, von einem zentralen zu einem dezentralen System.
Das Problem bei einem zentralen System ist, das derjenige der die Buchführung macht, die Bücher manipulieren kann. Bei eine dezentralen System, ist das ohne weiteres nicht möglich.

Die Funktionsweise des dezentralen Systems
Anstatt das nur ein Spieler Buch führt, führen alle Spieler Buch. Jeder Spieler schreibt seine eigenen und den Kontostand der anderen Spieler auf seinem eigenen Zettel auf, somit haben alle Spieler die gleichen Daten auf ihren Zettel stehne, sollte einer der Spieler betrügen und sein Guthaben verändern, können die Daten von allen Spielern miteinander abgeglichen werden. Wenn einer der vier Spieler auf seinem Zettel zum Beispiel anstatt 90 Credits plötzlich 100 Credits sthen hat, legt man einfach alle zettel auf den Tisch und vergleicht die Daten auf allen Zetteln. Dabei wird festgestellt das die Daten auf nur einem von vier Zetteln anders sind als auf den anderen drei. Drei Zetel geben den Kontostand von Spielre 4 als 90 Credits an und der Zettel von Spieler 4 gibt 100 Crdits an. Somit ist klar das Spieler 4 seine Kontostand manipuliert hat und kann korrigiert werden.
Jedoch kann auch bei einem dezentralen System betrogen werden. Sagen wir es spielen 100 Spieler und 51 Spieler verabreden einen Betrug, sie ändern all die Daten von Spieler 4, von 90 zu 100 Credits. Was passiert in diesem Fall?
Die Mehrheit gewinnt und der Betrug wird zum Fakt, Spieler 4 behält 100 Credits und alle anderen müssen ihre Daten auf dem Zettel anpassen.
Bei Bitcoins passiert das automatisch im hintergehend und kaum jemand bemerkt etwas davon.

Wie ist es möglich Bitcoins zu manipulieren?
Wenn du dir Bitcoin-Core auf deinem Computer installierst, wirst du feststellen, das du dir fast unbegrenzt viele Wallets anlegen kannst, die menge der Wallets, die in der Datenbank angelegt werden kann, ist nicht bekannt; auf jeden Fall mehr, als es Menschen auf der Welt gibt und das genügt. Demzufolge kannst du dir eine Server anlegen, eine Internetseite erstelen und Bitcoin-Core installieren. Kunden die auf deine Web-Seite kommen, können sich dann eine Bitcoin-Wallet bei dir anlegen und diese nutzen. Das ist genau das was Bitcoin-Wallet Anbieter wie BitcoinChange.org und andere machen.
Wenn sich die meisten Bitcoin Nutzer, keinen eigenen Bitcoin-Core auf ihren Computer installieren und solche Service wie zum Beispiel vom größten Bitcoin-Wallet Anbieter „BitcoinChange.org“ nutzen, gebe sie BitcoinChange.org sehr viel Macht. BitcoinChange.org kann, wenn mindestens 50,01% der Bitcoin-Wallets auf dem BitcoinChange.org Server liegen, die Wallets seiner Kunden manipulieren, da diese Wallets auf dem BitcoinChange.org Server angelegt sind und sich selbst Guthaben auf seine Wallet gutschreiben können. BitcoinChange.org kann aber auch andre Manipulationen ausführen und damit z.B. die Börsenpreise beeinflussen, bis hin zum Diebstahl der guthaben seiner Kunden. All diese Macht in der Hand von einem einziegen Mann, ist das wirklich gut? Selbstverständlich habe auch Banken interesse an Bitcoins und kaufen sich bei BitcoinChane.com ein um controlle über den Bitcoin zu bekommen, auch die Zentralbank FED kauft sich da ein.
Der Zweck des Bitcoins ist, sich von dem Monetären Zentralen Geldsystem zu entkoppeln und den Banken ihre Macht zu nehmen. Banken kontrollieren die gesamte Wirtschaft bis hin zu Politik.
Zitat von Amschel Mayer Rothschild „ Gebt mir die Kontrolle über die Währung einer Nation, und es ist mir gleichgültig, wer die Gesetze macht! "

Nun zur Installation
Zum kompilieren und installieren von Programmen, erstellen wir zu erst ein neues Verzeichnis, in dem wir arbeiten werden. Für gewöhnlich erstellt man das Verzeichnis in das: /home/USER/buildUSER“ ist der Ordner mit dem Namen deines Kontos, auf deinem Computer. Also USER mit dem Namen deines Ordner Ersätzen.
Ich mache das etwas anders und erstelle das /build Verzeichnis in das /root Verzeichnis. Dadurch ist der Inhalt des Ordners, nur dem "root“ zugänglich.

* root Konto
Viele werden sagen, das es keine gut Idee ist, im root Konto zu arbeiten. Für eine Linux Anfänger sicherlich richtig; da man als root uneingeschränkten zugriff auf das gesamt System hat und sogar die wichtigsten Systemdateien, mit einem einzigen Befehl löschen kann und dadurch das Betriebssystem so schädigen, das es nicht mehr funktioniert und es neu installiert werden muss.
Also vorsichtig sein, wenn man als root angemeldet ist. Am besten gar nicht als root anmelden.
Aber in diesem Fall müssen wir uns für eine kurze Zeit als root anmelden, um Bitcoin-Core zu installieren.
Manche werden sagen, das man Bitcoin-Core auch wo anders im System installieren kann.
Kann man sicher machen, aber Seinen Geldbeutel lässt man ja auch nicht beim Nachbarn vor der Tür liegen.
Manche Leute scheine nicht zu verstehen, das Bitcoin-Core nicht einfach nur ein Programm ist, es ist viel mehr als das. Bitcoin-Core ist ein echter Digitaler Geldbeutel, in dem echte Werte, mit denen man Dinge kaufen kann, aufbewahrt werden.
Bargeld lässt man ja auch nicht einfach so auf dem Tisch liegen, Menschen habe Tresore um ihr Geld aufzubewahren und das Digitale Geld soll man einfach so auf den Desktop legen?
Wer einem den Rat gibt, Bitcoin-Core nicht im root Verzeichnis zu installieren, der hat keine Vorstellung von Sicherheit.
Das root Verzeichnis ist der sicherste Ort auf einem Computer und nur da kann man sein Geld aufbewahren, sonst nirgends.

Entsperren des "root" Kontos
Um im root Verzeichnis arbeiten zu können, muss man sich als "root" anmelden. Um sich als root anmelden zu können, muss das root-Konto entsperrt werden und ein Passwort vergeben werden.
Nun öffne das „Command Line Interface (CLI)“, mit der Tastenkombination Strg+Alt+T.
Mit folgendem Befehlen richten wir jetzt das root Konto ein:
Code:
sudo passwd -u root
Code:
sudo passwd root
Jetzt zwei mal das gewünschte Passwort eingeben.
Und mit dem folgenden Befehl, als SuperUser anmelden:
Code:
su

Compiler und Dependencies installieren
Als erstes muss ein Compiler und die benötigten Dependencies (Abhängigkeiten) installiert werden. Die „GNU Compiler Collection (GCC)“ und die Dependencies Installiert wir mit folgendem CLI Befehl:
Code:
sudo apt-get install build-essential libtool autotools-dev automake pkg-config bsdmainutils python3 libevent-dev libboost-system-dev libboost-filesystem-dev libboost-test-dev libboost-thread-dev libdb++-dev libsqlite3-dev libminiupnpc-dev libnatpmp-dev libzmq3-dev libqt5gui5 libqt5core5a libqt5dbus5 qttools5-dev qttools5-dev-tools libqrencode-dev
Wenn du als root angemeldet bist, kannst du den Befehl sudo (SuperUserDo) weglassen.

Datenbank herunterladen und entpacken
Als nächstes muss die „Oracle Berkeley Data Base, Version 4.8.30“ heruntergeladen und Installiert werden.
Download: http://download.oracle.com/berkeley-db/db-4.8.30.NC.tar.gz

Nach dem Download sollte sich die Datei im /home/USER/Downloads Verzeichnis befinden.
Jetzt in dem CLI ein neues Verzeichnis erstellen und in dieses wechseln:
Code:
mkdir /root/build
Code:
cd /root/build
die heruntergeladenen Datei in das /root/build Verzeichnis entpacken.
Dateien werden immer in das Verzeichnis entpackt, in dem man sich befindet. Mit dem Befehl pwd (Present Working Directory), kann der Verzeichnis-Standort überprüft werden; das sollte jetzt /root/build sein.
Code:
tar xfzv /home/USER/Downloads/db-4.8.30.NC.tar.gz
Der Befehl setzt sich folgendermaßen zusammen:
tar ist das Programm zum entpacken von .tar Dateien. Die Optionen xfzv habe folgende Bedeutung: x=Extract, f=File, z=gZip, v=Verbose, Pfad/zu/Datei

Datenbank reparieren
Bevor die Datenbank kompiliert werden kann, muss erst ein Bug (Fehler) beseitigt werden (BugFix).
In dem Verzeichnis: /root/build/db-4.8.30.NC/dbinc muss die Datei atomic.h mit einem Texteditor geöffnet und bearbeitet werden. Am besten und einfachsten ist es mit einem Grafischen Editor; ich benutze den „Kate“. Der "nano“ Texteditor ist standesmäßig auf fast jedem Linux-OS vorinstalliert.
In das CLI diesen Befehl eingeben:
Code:
kate /root/build/db-4.8.30.NC/dbinc/atomic.h
oder
Code:
nano /root/build/db-4.8.30.NC/dbinc/atomic.h

Nun öffnet sich die Datei im Editor.
Jetzt die Zeile 147:
Code:
__atomic_compare_exchange((p), (o), (n))
mit diesem Eintrag ersetzen:
Code:
__atomic_compare_exchange_db((p), (o), (n))

Das ganze noch einmal in der Zeile 179:
Code:
static inline int __atomic_compare_exchange(
mit:
Code:
static inline int __atomic_compare_exchange_db(

Edit-DB-01.png


Mit dem grafischen Editor kann man sich das leicht machen. Ich denke das alle Editoren diese Funktion besitzen „Suchen und ersetzen“, damit kann ein Eintrag gefunden und ersetzt werden. Die Suchen-ersetzen-Funktion, wird mit der Tastenkombination Strg+R aufgerufen und am unteren Rand des Editors erscheinen Felder; in die, die zu suchenden Einträge eingegeben werden und in das zweite Feld, der Eintrag mit dem es ersetzt werden soll. Dann nur noch auf ersetzten klicken und fertig.

Edit-DB-02.png


Eigentlich genügt es, "_db“ an:
static inline int __atomic_compare_exchange(
hinten dran zufügen, so:
static inline int __atomic_compare_exchange_db(

und hier auch das gleiche:
__atomic_compare_exchange((p), (o), (n))
__atomic_compare_exchange_db((p), (o), (n))


Wie du wahrscheinlich bemerkt hast, ist es nur ein Verweis (Link), der angepasst werden muss.
Jetzt das ganze mit der der Tastenkombination Strg+S speichern.
Nano schließt man mit der Tastenkombination Strg+X
Und der BugFix ist erledigt.

Datenbank kompilieren und installieren
Nun ist die Datenbank bereit zum kompilieren und installieren.
In folgendes Verzeichnis wechseln:
Code:
cd /root/build/db-4.8.30.NC/build_unix/
Als nächstes muss konfiguriert werden, das machen wir mit dem Befehl:
Code:
../dist/configure
Jetzt kompilieren mit dem Befehl:
Code:
make
Der Befehl make kann mit der Option --jobs=X alternative -jX versehen werden. Diese Option wird bei Multi-Core CPUs verwendet. Hat man mehr als einen Prozessorkern (was die meisten wohl haben werden), kann anstelle von „X“ die Zahl der zu benutzenden Prozessorkerne eingetragen werden. Ich habe eine acht Kern Prozessor und benutze alle acht Kerne zum kompilieren, Beispiel:
Code:
make -j8
Jetzt noch mit folgendem Befehl, das kompilierte Programm installieren:
Code:
make install
und die Datenbank ist installiert.

Bitcoin-Core herunterladen
Kommen wir nun endlich zur Bitcoin-Core Installation.
Die offizielle Bitcoin Internetseite https://bitcoin.org verweist uns an GitHub, zum herunterladen des Bitcoin-Core Quellcodes: https://github.com/bitcoin/bitcoin
Ich kann diesen Quellcode nicht empfehlen, da es sich um eine Testversion handelt.
Die offizielle Version findet ihr auf: https://bitcoincore.org Da die neuste Version aussuchen und herunterladen.

Download HTTPS-Server: https://bitcoincore.org/bin

BitcoinCore-org-bin.png


Immer den Quellcode herunterladen.
Alle Dateien die für ein Betriebssystem angepasst sind, sind Binäre Dateien und nicht der Quellcode. Auf dem Screenshot sind die Quellcode Dateinen zu sehen, bei neuere Versionen ändert sich lediglich die Versionsnummer.

Bitcoin-Core-Download.png


Die Installationsanleitung basiert auf der, zum Zeitpunkt als dieser Artikel erstellt wurde, neuste Version: bitcoin-core-0.21.0
Solltest du eine andere Version installieren, musst du den Pfad/Versionsnummer anpassen.

Quellcode entpacken
Nach dem der Download fertiggestellt ist, wechseln wir im CLI das Verzeichnis in /root/build:
Code:
cd /root/build
Jetzt die heruntergeladene Datei im CLI in das /root/build Verzeichnis entpacken:
Code:
tar xfzv /home/USER/Downloads/bitcoin-0.21.0.tar.gz

Quellcode konfigurieren
In das Verzeichnis /root/build/bitcoin-0.21.0 wechseln:
Code:
cd /root/build/bitcoin-0.21.0
Im CLI diesen Befehl eingeben:
Code:
./autogen.sh
Da die installierte Datenbank Version „db-4.8.30.NC“ etwas von der für Bitcoin-Core kompatiblen Version „db-4.8.30“ abweicht, muss die Option --with-incompatible-bdb hinzugefügt werden. Ohne diese Option bekommt man beim konfigurieren, am ende eine Fehlermeldung, mit dem Hinweis diese Option hinzuzufügen. Befehl:
Code:
./configure --with-incompatible-bdb

Ich habe die Dokumentation der Datenbank nicht gelesen, ich denke aber das die „NC“ Version, Verbesserungen enthält.

Quellcode kompilieren und installieren
Nachdem Bitcoin-Core erfolgreich konfiguriert wurde, können wir jetzt kompilieren:
Code:
make -jX
Zum Schluss noch:
Code:
make install
Fertig.

Bereinigen
Nachdem installieren, kann man noch etwas aufräumen und damit Speicherplatz freimachen. Der Befehl make clean löscht Dateien, die nach der Installation nicht mehr benötigt werden.

Startmenü Verknüpfung erstellen
Jetzt habe wir noch eine letzten schritt zu machen.
Eine Verknüpfung um Bitcoin-Core zu starten, wird aus einem mir nicht bekannten Grund, bei der Installation nicht erstellt. Also müssen wir das selbst machen.
Als erstes brauchen wir eine Bildchen vom Bitcoin-Core; dieses kopieren wir in ein anderes Verzeichnis. Befehl:
Code:
cp /root/build/bitcoin-0.21.0/doc/bitcoin_logo_doxygen.png /usr/share/icons/hicolor/64x64/bitcoin-logo.png

Nun öffne wir einen Texteditor und fügen folgenden Code ein:
Code:
[Desktop Entry]
Version=0.21.0
Name=Bitcoin-Core
GenericName=bitcoin-qt
Comment=Send and recive Bitcoins
Exec=/usr/local/bin/bitcoin-qt
Terminal=false
MultipleArgs=false
Icon=/usr/share/icons/hicolor/64x64/bitcoin-logo.png
Type=Application
Categories=Application;Network

Das speichern wir jetzt unter:
Code:
/usr/share/applications/bitcoin-qt.desktop

Screenshot.png


Nun ist die Bitcoin-Core Verknüpfung im Startmenü, in der Kategorie "Internet" zu finden.
Fertig.

root abmelden
Um sich aus dem CLI als root abzumelden, den Befehl exit eingeben oder die Tastenkombination „
Strg+D drücken.



Deinstallation von Bitcoin Core und Datenbank
Solltest du dich aus irgend einem Grund für eine Deinstallation entscheiden, wird das so gemacht.
Mit dem Befehl su als "root" anmelden.
Zum deinstallieren von Bitcoin-Core, in das /root/build/bitcoin-0.21.0 Verzeichnis wechseln.
Code:
cd /root/build/bitcoin-0.21.0
und folgenden Befehl eingeben:
Code:
make uninstall && make distclean
Verzeichnis löschen
Code:
rm -r /root/build/bitcoin-0.21.0

Datenbank deinstallieren und löschen
Code:
cd /root/build/db-4.8.30.NC/build_unix/
Code:
make realclean
Verzeichnis löschen
Code:
rm -r /root/build/db-4.8.30.NC

root abmelden
Code:
exit
root Konto sperren
Code:
sudo passwd -l root


First-Start.png


Konfiguration von Bitcoin-Core
Beim ersten Start von Bitcoin-Core fragt das Programm, wie und wo die Blockchain gespeichert werden soll. Es gibt zwei Optionen.
Die erste ist, das die Blockchain heruntergeladen, verifiziert und dann fast vollständig gelöscht wird; es bleiben nur ca. 2GB Blockchain auf dem Datenträger.
Die zweite Option ist, das die gesamte Blockchain nach dem herunterladen, auf dem Computer verbleibt; was ich empfehle.
Optimal ist es, wenn die Blockchain nicht auf dem selben Datenträger gespeichert ist, auf dem das Betriebssystem installiert ist; sondern auf einem zweiten Datenträger.
Der Ordner in dem die Blockchain gespeichert wird, kann frei gewählt und benannt werden.
Nachdem Bitcon-Core gestartet ist, muss man sich noch eine Wallet einrichten.

Energie- und Internet-verbrauch
Da sich einige Leute sogen um den Energie und Internet verbrauch (Traffic) machen, will ich das jetzt richtigstellen.
Bitcoin-Core muss sich bevor er arbeiten kann, aus dem Internet zurzeit etwa 350GB Daten herunterladen, die Blockchain; was ich schon weiter oben erwähnt habe. Danach verbauch Bitcoin-Cor etwa 22MB pro Stunde, das sin ca. 16GB im Monat.
Die Prozessorauslastung ist die meiste Zeit bei 0%. Ab und zu macht der Bitcon-Core Berechnungen, dann steigt die CPU Auslastung für einige Minuten etwas an, bei mir um etwa 10%.
Auch wehrend des Downloads der Blockchain, bleibt die CPU-Auslastung hoch, bei mir zwischen 20 und 40%. Die CPU-Auslastung hängt mit der Verifizierung der heruntergeladen Daten zusammen. Somit ist der Internet- und Energie- verbrauch des Bitcoin-Core, nachdem die Blockchain heruntergeladen ist minimal.

CPU.png


So sieht dann das Bitcoin-Core Graphical User Interface aus::
New-Wallet-01.png

New-Wallet-02.png

New-Wallet-03.png

New-Wallet-04.png

New-Wallet-05.png

New-Wallet-06.png

New-Wallet-07.png

New-Wallet-08.png

New-Wallet-09.png

New-Wallet-10.png


Hier noch wie eine neue Wallet erstellt wird.

New-Wallet.png
 
Zuletzt bearbeitet:
  • Gefällt mir
Reaktionen: Innensechskant
Ich weiß nicht was diese hackerei mit BitCoins Zutun hat?

Klar lässt sich auf Linux so ziemlich alles verwirklichen, aber der normale Benutzer weiß das nicht und braucht es auch nicht zu wissen. Und wenn man nicht am System herumhackt, funktioniert der User 0 nicht.

Dieser Artikel ist eine Installationsanleitung und kein HaCkIng-GuiD.
Hoffentlich ist eure Eitelkeit, mit dem Beweis dass man Linux Hacken kann, befriedigt.
Was soll das dem normalen Nutzer bringen?
Off-Toppic
Ergänzung ()

Natriumchlorid schrieb:
970 ?
Warum nicht 0 ?
Ergänzung ()

Natriumchlorid schrieb:
Ich mach gerade ein CTF auf TryHackMe und siehe da, ich kann einem einfachem Benutzer die ID 0, sprich die ID vom root-User zuweisen.
Ergänzung ()

Mit Mühe und Not hast du es geschafft, dem Nutzer 0,3% höhere Rechte zu geben, das ist immer noch 99,7% weniger als der root hat.
 
Zuletzt bearbeitet:
Aufgrund der unangebrachten Ausdrucksweise und der anhaltenden Kritik ist es wohl für alle besser, wenn wir hier einen Haken dran machen ;)
 
Zuletzt bearbeitet:
  • Gefällt mir
Reaktionen: Piktogramm, Web-Schecki, Garmor und eine weitere Person
Status
Für weitere Antworten geschlossen.
Zurück
Oben