Kryptowährungen wie z.B. Bitcoin sind in aller Munde. Es gibt heute ca. 9000 Kryptowährungen, wie z.B. Bitcoin, Ethereum, Tether, XPR, Chainlink, Litercoin und Monero um mal 7 zu nennen.
Kann man mit einem alten Raspberry Pi Model B oder W Zero Krypto-Geld schürfen? Ja, warum nicht, das geht sogar ziemlich einfach, wie dieser Artikel zeigt. Rechnet es sich? Dazu später mehr.
Vorraussetzung ist ein aktuell installiertes Debian und zugriff auf die Kommandozeile.
Dann brauchen wir noch eine Anmeldung bei Minig-Pool, da man alleine es nicht schaft. Z.b. bei Minergate.com und die E-Mail-Adresse, womit wir uns dort angemeldet haben. Die Anmeldung bei diesem Mining-Pool ist kostenlos. Minergate ist ein Open-Source-Multi-Kryptowährungs-Mining-Pool.
So, jetzt wollen wir mal Krypto-Geld erzeugen. Wir werden die Währung Monero erzeugen. Wikipedia sagt zu Monero: „Monero (XMR) ist eine dezentrale, Blockchain-basierte Kryptowährung, vergleichbar mit Bitcoin. Im Gegensatz zu Bitcoin setzt Monero jedoch einen stärkeren Fokus auf die Privatsphäre bzw. Anonymität seiner Nutzer (Privacy Coin) und verfolgt einen anderen Ansatz in Bezug auf die Skalierbarkeit. Das Wort „monero“ ist der Sprache Esperanto entnommen und bedeutet „Münze“. Monero (XMR) ist auf bis zu 12 dezimale Nachkommastellen teilbar, d. h. die kleinste Währungseinheit beträgt 0,000 000 000 001 XMR = 10 hoch −12 XMR.
Ok, dann mal los, es dauert ca. 1-2 Stunden ( 15 Min, auf einem Raspberry Pi 4) um den Miner zu bauen und das erste Geld zu erzeugt. Es sind nur diese 4 Schritte nötig und es ist mal etwas anderes als Co2-Ampeln bauen …
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 |
// 1. System auf aktuellen stand bringen sudo apt-get update && sudo apt-get upgrade -y // 2. Nötige Abhängigkeiten installieren sudo apt install git automake autoconf libcurl4-openssl-dev libjansson-dev libssl-dev libgmp-dev // 3. Den CPUMiner installieren bzw. clonen mkdir cpuminer cd cpuminer sudo git clone https://github.com/IT-Berater/cpuminer-multi.git // in das Verzeichnis gehen cd cpuminer-multi // Projekt konfigurieren sudo ./autogen.sh sudo ./configure // Programm bauen das kann etwas (ca. 1 Stunde) dauern sudo ./build.sh // 4. den Miner im Hintergrund (-B) starten mit der E-Mail-Adresse ersetzen ./cpuminer -a cryptonight -o stratum+tcp://xmr.pool.minergate.com:45700 -u E-Mail-Adresse -B |
So nun wird auf der Konsole das Ergebnis ausgegeben, z.B.:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
** cpuminer-multi 1.3.7 by tpruvot@github ** [2020-11-18 17:21:13] Using JSON-RPC 2.0 [2020-11-18 17:21:13] CPU Supports AES-NI: NO [2020-11-18 17:21:13] Starting Stratum on stratum+tcp://xmr.pool.minergate.com:45700 [2020-11-18 17:21:13] 1 miner threads started, using 'cryptonight' algorithm. [2020-11-18 17:21:13] Stratum difficulty set to 1000 [2020-11-18 17:22:18] CPU #0: 1.03 H/s [2020-11-18 17:23:18] CPU #0: 1.03 H/s [2020-11-18 17:24:18] CPU #0: 1.03 H/s [2020-11-18 17:25:18] CPU #0: 1.03 H/s ... [2020-11-18 17:38:51] CPU #0: 1.03 H/s [2020-11-18 17:38:52] accepted: 1/1 (diff 0.000), 1.03 H/s yes! [2020-11-18 17:39:53] CPU #0: 1.01 H/s |
Im Dashboard von Minergate, wird nach einiger Zeit die geschürfte Währung angezeigt:
Wie man sieht, habe ich nach ein paar Stunden mit dem alten Raspberry Pi Monero generiert.
Unter Total steht der Wert: 0,000000314543 Monero, den ich sagen wir mal in 10 Stunden erzeugt habe (habe nicht genau auf die Uhr geschaut).
So, jetzt zu der Frage ob es sich lohnt. Das geschürfte Geld, wird ab 0,005 Monero (= 50 Cent bei Kurs 100 Euro = 1 Monero) bestätigt. Ich müsste also mind. den Betrag schürfen. Der Pi berechnet mit 1.03 H/s (Hash pro Sekunde ), das ist nicht viel. Aber immerhin einer pro Sekunde.
Wir rechnen mal, wie lange würde ich brauchen, um mit dem Pi mind. 0,005 Monero zu erzeugen wenn er Tag und Nacht läuft?
0,000000314543 / 10 ist in einer Stunde 0,0000000314543 und
0,005 / 0,0000000314543 = 158960 Stunden = 6623 Tage = 18 Jahre
Es ist wohl ganz einfach, ich brauche noch nicht mal die Stromkosten (ca. 12 Euro Pro Jahr mal 18 = 200 Euro) ausrechnen. Der Kurs von einem Monero liegt gerade bei 100 Euro. Und wie der in 18 Jahren aussieht? Und minergate nimmt auch noch 1 – 1,5 % als Provision.
Es lohnt sich nicht mit einem Pi bei 1 H/s! Das hatte wohl auch keiner geglaubt, oder?
Hier ging es aber auch nur um die techn. Machbarkeit, die ist in 1-2 Stunden auch mit einem Pi leicht durchzuführen.
Es gibt auch noch einen schönen Wirtschaftlichkeits-Rechner. Da kann man ja mal höhere Hash-Werte eintragen und rechnen …
Und wer weiß, wie sich der Kurs noch entwickelt. Ich lasse das Geld dort liegen 😉
Der Pi ist mit der Berechnung zu 100% CPU ausgelastet, wie dieser htop zeigt:
Wenn der Raspberry Pi leicht übertaktet wird von 700 auf 800 Mhz, dann steigt auch die Hash Leistung von 1,03 auf 1,13 H/s da der Takt bzw. Geschwindigkeit der CPU bei dem schürfen von Monero wichtig ist. Hier dazu die Ausgabe:
Und auf einem Raspberry Pi W Zerro geht es noch schneller, mit 1,34 H/s wenn man von Geschwindigkeit sprechen will, da er mit 1000 Mhz arbeitet:
Man kann natürlich auch mehrere Pis gleichzeitig laufen lassen. Hier der W Zero und der B:
Hier kann man dann gut sehen, 2 Active Workers:
Oder man stellt auf einem Pi mehrere Threads mit der Option -t ein. Hier mal ein Versuch mit -t 80. Da geht natürlich die Geschwindigkeit für jeden Task runter. Hier auf 0,02 H/s. Wenn es zu Fehlermeldungen kommt, kann evl. die Zeit mit -T angepasst werden. Default ist da 300 Sekunden eingestellt.
In htop sieht man dann die vielen Threads und die Auslastung der CPU von 100%:
Ein CPU-Test kann auch schnell gemacht werden mit ./cpuminer –cputest, das Ergebniss für alle Algos:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 |
./cpuminer --cputest ** cpuminer-multi 1.3.7 by tpruvot@github ** CPU HASH ON EMPTY BUFFER RESULTS: allium: 2d0aa420 0b7b7ce6 9770e14c 3ecf7bca 45905f83 c9ba2a6f ac81d24a 8963e81a axiom: 739e969d 20d307a7 6d39ddfe 737727fd 0930a28d dcb2eae5 31fc2884 09a1fe8d bastion: f412306c abe7425a c5028296 20b7e734 66bef0c9 647ffa84 9a025265 787656be blake: 0c7b1594 52328517 463db487 df5e39b7 1322afaf 14ed562c e9d18d7d 9051b305 blakecoin: 1beb6d99 60f93179 0caf8b8d de245415 f19d7efc 1a55952f 5d83aaa1 cf6d8ce0 blake2b: 143aa0da 2b6a4ca3 9eee3ee5 0a6536d7 5eedff3b 5ef0229a 6d603afa 7854d5b8 blake2s: c4fde76a 8d68422c 5fbafde2 50f49210 9fb29ac6 6753292e 1153aa11 adae1a3a bmw: b614159f d808ac8f 9eb6ab74 01b0d94e 3831c498 190278af f0e63ecd d0dceaaa c11: 467fe126 a25b3117 8099c195 5d67ae09 3a84fbcd f3533e55 61dbaafc c96c3069 cryptolight: 173c9db3 4c9643ba 689e1604 4f5c273c 4c5543b2 10a4d524 8352ac53 6064a850 cryptonight: 1ddd6d4c 6b9c41a8 9daa323b 1e140e62 d5ebf40a 5962028c d1b4acd6 8deed830 decred: f8c5ea75 d4d26911 fd8ec3ed ace55b06 9f01212f 581541fc ac0c815c a83e83b3 drop: 33dc013c 65f6c33d 3b66f982 47b5aaf5 5390cc56 0a1fdaa6 1f0e4958 b6229ace fresh: 32925252 1339e557 0ebe3923 97ff19b2 a1643d5e 5475699d e4dc83a8 e7d1a13e geek: 7abf4e7b 6361a297 febfd397 d2cd4097 88d7c08f f36d1d83 90716ca4 751c59fe groestl: 8703946c 1f2630a6 1cc8e78f 93a030b3 835a6b62 4812fb99 0a243cae 6dd8ce36 heavy: fe264760 6eb16e09 ffad8b30 b333b87c c20b6b92 097bbb93 09b19fd2 28d228d6 keccak: 3a709301 f7eafe91 7c7a06e2 09b077a9 f3942799 fb24b913 407674a4 c1485893 jha: 4ab7d01f e293d0a4 7647910b 151b5f7e b492be6c 27f8f300 bdf769e4 5a34d4ad lbry: 4477dc37 cb65c55e fd063ce4 1d08750e 3d08159e 2a0803e2 546b50e4 0d80fe6a luffa: 3f1970bb e30de539 42e9a9c2 927d7495 4fb17d85 85276ebc 91ca076d 07c69013 lyra2: c6165cb3 a82b8f39 ed9feaa5 fa5be3d7 041b0fd3 0128a42e d0b78ff2 b665f81a lyra2v2: a297c8d9 91274c87 27f515d4 b129e18d db1c61b3 1c552c96 3efce710 95baa90c lyra2v3: cfae5e50 45ec49d2 e193d13f a49fea81 ef825702 41ca2a9f e5da00a4 d9542ef4 monero: 80563c40 ed46575a 9e44820d 93ee095e 2851aa22 483fd678 37118c6c d951ba61 myr-gr: b060aa77 6bc2fc23 fd991ada 252aba20 a42a3595 fd335278 664e875c f8e540cf neoscrypt: 2c400aba 7b67aae2 eb8afe32 a31303b4 3a5b2ad8 84badd97 c7984e6b 7e3b2c7b nist5: f793aee4 ec7c83ad 3fb06661 fc514201 ea8865a2 22eb7cc5 50fb0fcb 7644435d pentablake: 7990b632 02388232 27ca6bd1 172b4d65 ad93fb6a 26e64b4a 88fe0b8d 71d82491 phi1612: 457472cf f1ee0681 4252e47f e8dd7cbd c7ac9c41 ee04c64a 537632b8 91ba66cf phi2: b2d2e332 851897fd 76de6063 05ad6778 3db29e1a 84816fb4 fc9c677f 55ef087c pluck: 68e34a6e 8ea6be98 1e00b036 03287344 3152cc38 c5a2c3d7 0dd367d9 d01fac81 quark: 633d8255 a00e3a1a e1ee58d7 d3a56387 fb85f106 8a6bb4eb f5a20315 e57f0602 qubit: f158d208 f1991ea5 7d073586 945f4b10 c02314e7 3f5b6360 b91eb0db ca216fae rainforest: da036d45 e86649ab f7eebf16 1606bf20 3a67c9d5 b1720561 4bf90cba 5ec9ab4b scrypt: 161d0876 f3b93b10 48cda1bd eaa7332e e210f713 1b42013c b43913a6 553a4b69 scrypt:2048: 3440b2c4 c0dfb163 6e27c596 6d97cc1d 9e477a7d 3e3b9af9 5811b8ef 7145474a scrypt-jane: 73620fd1 49bcaabf db966b7b 07775fde ca9cc2a5 ee12dfd5 4a7dcc55 2149ed92 shavite3: fc19c40b 20ba0833 1d013c3d dccf66a0 74f252c9 71e95e74 8985e550 582906a5 sha256d: e2f61c3f 71d1defd 3fa999df a3695375 5c690689 799962b4 8bebd836 974e8cf9 sia: 143aa0da 2b6a4ca3 9eee3ee5 0a6536d7 5eedff3b 5ef0229a 6d603afa 7854d5b8 sib: 3a0a0270 7b395c58 d45f23c1 66b17e20 ff1dcf8f 004b8cf4 23f44e50 8288073a skein: 7556f203 d6da59fd 1baa2d05 c27dd117 de9f56ee 8ad0b3a6 1f3649df 2b87694d skein2: f743265f 8610a912 c8d5879e e61917a8 75adf37b 56fe4a29 c1ae1e4e ce40fd3c sonoa: b799b314 c4344361 4f25a083 71ac5679 2e210252 1b91fcd4 0aacfef0 74fdf14b s3: 0e715288 561623fa 9720dd08 d13cdf5c 07824dad 99a652fa 13ce0537 6f3ceca1 timetravel: 8bcbebee 09277d66 897cbc4d 22db2572 28753502 87cd41a5 080a9c6e 1e68552c bitcore: 27d9a483 7e02e6e9 de339db1 62d60d7c 1929ed27 a982be9e 66ba091b 615c4d98 tribus: 43b8ddab 17f6d0e1 3c1066f4 9693e1dd 7007667a eeb3e8b6 34bcdce5 c8fc02c6 veltor: 23dc7b58 614d5628 f3a417bb 388140d8 e79e5427 caf9707d e6af53e6 e4f551ec xevan: 812c762a 58f81989 cab3ec6f 4e781496 9816c950 04b95196 5b373412 967746f4 x11evo: 83288461 80965bce 56f61e01 5db62af5 62a611d8 5e5e721d 854c8d97 e47a3ea3 x11: 83288461 80965bce 56f61e01 5db62af5 62a611d8 5e5e721d 854c8d97 e47a3ea3 x12: 45c587f1 eb39c8ec 564a7484 767d8d9d 6d2cb727 20becd06 ecfb3934 367181a9 x13: 8196fc09 df2b0011 13d4ef91 0a8b0919 fbc7bab8 df2a58e1 bfe6be6e eb6546c0 x14: a4d7341e 693aebc7 53dfedeb 78fd477c 3fd27dde b3e1e28e 693dae16 c074c0e7 x15: ac5e298e 62e6e569 ac4f4b76 f7ab1109 5576df2d 547e2f5b 4e202d16 fd6bddc2 x16rv2: 8c3476aa a722019b e97fdf50 9a637791 73f2dbbd 5d876b95 72bccaa7 0c38a34f x16s: cca61b56 45d4ce7a 339bbfba 8005ebd3 a5869b57 01f8b6e5 61c39ed9 8cca021a x17: 81f07a55 fbf90e9c d52c3cd9 6043b7fc 8acf53ec 0dca4151 f5533e76 70b2881c x20r: 512f55d3 fb86598d 9de3a10f 8570ca96 f47b48d6 8a12caf0 e909db97 2039bb94 yescrypt: 3180c195 018c9ed9 6d586534 6acde80b 951e49a8 4c0bccb9 f67f6ca5 fb964868 zr5: cf7b811e 1dd91e9c 3fec8b5b 0f744b4d 808d395b 4669e77f 5dc16592 3eed6a3a |
Und hier noch die Liste aller Parameter, die mit ./cpuminer -h ausgegeben werden:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 |
./cpuminer -h ** cpuminer-multi 1.3.7 by tpruvot@github ** Usage: cpuminer-multi [OPTIONS] Options: -a, --algo=ALGO specify the algorithm to use allium Garlicoin double lyra2 axiom Shabal-256 MemoHash bitcore Timetravel with 10 algos blake Blake-256 14-rounds (SFR) blakecoin Blake-256 single sha256 merkle blake2b Blake2-B (512) blake2s Blake2-S (256) bmw BMW 256 c11/flax C11 cryptolight Cryptonight-light cryptonight Monero decred Blake-256 14-rounds 180 bytes dmd-gr Diamond-Groestl drop Dropcoin fresh Fresh geek GeekCash groestl GroestlCoin heavy Heavy jha JHA keccak Keccak (Old and deprecated) keccakc Keccak (CreativeCoin) luffa Luffa lyra2re Lyra2RE lyra2rev2 Lyra2REv2 lyra2v3 Lyra2REv3 (Vertcoin) myr-gr Myriad-Groestl neoscrypt NeoScrypt(128, 2, 1) nist5 Nist5 pluck Pluck:128 (Supcoin) pentablake Pentablake phi LUX initial algo phi2 LUX newer algo quark Quark qubit Qubit rainforest RainForest (256) scrypt scrypt(1024, 1, 1) (default) scrypt:N scrypt(N, 1, 1) scrypt-jane:N (with N factor from 4 to 30) shavite3 Shavite3 sha256d SHA-256d sia Blake2-B sib X11 + gost (SibCoin) skein Skein+Sha (Skeincoin) skein2 Double Skein (Woodcoin) sonoa A series of 97 hashes from x17 s3 S3 timetravel Timetravel (Machinecoin) vanilla Blake-256 8-rounds x11evo Permuted x11 x11 X11 x12 X12 x13 X13 x14 X14 x15 X15 x16r X16R x16rv2 X16Rv2 (Raven / Trivechain) x16s X16S (Pigeon) x17 X17 x20r X20R xevan Xevan (BitSend) yescrypt Yescrypt zr5 ZR5 -o, --url=URL URL of mining server -O, --userpass=U:P username:password pair for mining server -u, --user=USERNAME username for mining server -p, --pass=PASSWORD password for mining server --cert=FILE certificate for mining server using SSL -x, --proxy=[PROTOCOL://]HOST[:PORT] connect through a proxy -t, --threads=N number of miner threads (default: number of processors) -r, --retries=N number of times to retry if a network call fails (default: retry indefinitely) -R, --retry-pause=N time to pause between retries, in seconds (default: 30) --time-limit=N maximum time [s] to mine before exiting the program. -T, --timeout=N timeout for long poll and stratum (default: 300 seconds) -s, --scantime=N upper bound on time spent scanning current work when long polling is unavailable, in seconds (default: 5) --randomize Randomize scan range start to reduce duplicates -f, --diff-factor Divide req. difficulty by this factor (std is 1.0) -m, --diff-multiplier Multiply difficulty by this factor (std is 1.0) -n, --nfactor neoscrypt N-Factor --coinbase-addr=ADDR payout address for solo mining --coinbase-sig=TEXT data to insert in the coinbase when possible --max-log-rate limit per-core hashrate logs (default: 5s) --no-longpoll disable long polling support --no-getwork disable getwork support --no-gbt disable getblocktemplate support --no-stratum disable X-Stratum support --no-extranonce disable Stratum extranonce support --no-redirect ignore requests to change the URL of the mining server -q, --quiet disable per-thread hashmeter output --no-color disable colored output -D, --debug enable debug output -P, --protocol-dump verbose dump of protocol-level activities --hide-diff Hide submitted block and net difficulty -S, --syslog use system log for output messages -B, --background run the miner in the background --benchmark run in offline benchmark mode --cputest debug hashes from cpu algorithms --cpu-affinity set process affinity to cpu core(s), mask 0x3 for cores 0 and 1 --cpu-priority set process priority (default: 0 idle, 2 normal to 5 highest) -b, --api-bind IP/Port for the miner API (default: 127.0.0.1:4048) --api-remote Allow remote control --max-temp=N Only mine if cpu temp is less than specified value (linux) --max-rate=N[KMG] Only mine if net hashrate is less than specified value --max-diff=N Only mine if net difficulty is less than specified value -c, --config=FILE load a JSON-format configuration file -V, --version display version information and exit -h, --help display this help text and exit |
Update 23.3.2021: Der Service ist im Moment down:
Update 07.12.2021:
Jetzt ist der Service wieder Online. Für ein Monero (XMR) gibt es jetzt 179,94 Euro. Damit hat sich der Kurs zu dem Beitrag und den Berechungen fast verdoppelt 😉