Bitcoin Forum
June 18, 2021, 04:07:17 AM *
News: Latest Bitcoin Core release: 0.21.1 [Torrent]
 
  Home Help Search Login Register More  
  Show Posts
Pages: [1] 2 3 4 5 6 »
1  Local / Alternatif Kripto-Paralar / Her soruya cevap verilir / Hızlı Soru-Cevap Alanı + on: February 07, 2018, 08:05:50 AM
Merhaba arkadaşlar,

Bu konu altından aklımıza takılan, cevabı kısa net olan sorularınızı sorabilirsiniz.
Özgür ve özgün soruların mantıklı bir şekilde cevaplandığı bir konu olması umudunu taşıyorum.
Bu şekilde bu mantıklı soru-cevaplarla kaliteli bir arşiv elde edebiliriz...

Ayrıca sorduğu soruya kaliteli ve faydalı cevap alan üyelerimize bunun karşılığında merit desteği de verebilirsiniz.
Bu şekilde kaliteli ve hızlı cevaplara teşvik etmiş ve emeğin karşılığını vermiş oluruz.
Bende elimden geldiğince konuya katkı sağlayacağım.

2  Local / Projektentwicklung / Lightning Netzwerk - Zap: Nutzung einer LN-Wallet im Testnetz on: January 28, 2018, 02:43:48 PM
Beim letzten mal haben wir einen Eclair-LN-Fullnode aufgesetzt. Heute probieren wir die Zap-Wallet per Linux aus:

Wir gehen wieder in den Download-Ordner:

Code:
cd /home/curiosity81/Downloads

Und besorgen uns Zap (https://github.com/LN-Zap/zap-desktop/releases/tag/v0.1.0-beta):

Code:
wget https://github.com/LN-Zap/zap-desktop/releases/download/v0.1.0-beta/linux-release-v0.1.0-beta.zip

Wir besorgen uns auch die sha256-Summen:

Code:
wget https://github.com/LN-Zap/zap-desktop/releases/download/v0.1.0-beta/manifest-v0.1.0-beta.txt

Sowie die entsprechende Signatur:

Code:
wget https://github.com/LN-Zap/zap-desktop/releases/download/v0.1.0-beta/manifest-v0.1.0-beta.txt.sig

Zu guter Letzt brauchen wir noch den Öffentlichen Schlüssel von jimmymow:

Code:
wget https://keybase.io/jimmymow/pgp_keys.asc

Jetzt importieren wir den Schlüssel:

Code:
gpg --import pgp_keys.asc

Und verifizieren die Signatur der sha256-Summen:

Code:
gpg --verify manifest-v0.1.0-beta.txt.sig

Wenn alles stimmt testen wir noch die Summe der runtergeladenen Datei (siehe manifest-v0.1.0-beta.txt):

Code:
sha256sum linux-release-v0.1.0-beta.zip | grep -o bb08717570d2dc00ef9eee68b8bed3a2f76529b0fb54b5da1d170bf21a214e26

Wenn die Summen gleich sind, also grep etwas ausgibt, dann können wir Zap entpacken:

Code:
unzip linux-release-v0.1.0-beta.zip

Jetzt entern wir den entpackten Ordner:

Code:
cd linux-release-v0.1.0-beta

Und starten das Programm:

Code:
./zap-desktop-0.1.0-x86_64.AppImage

Bei der nun folgenden Installierungsmeldung drücken wir "No", zumindest ich will das Programm erstmal nicht installieren.

Dann startet das Programm mit GUI und sollte nun beginnen sich mit dem Testnetz zu synchronisieren. Das dauert nun ca. 15-30 Minuten. Das Programm erzeugt mindestens den .lnd Ordner in /home/curiosity81.

Wenn die Synchronisierung beendet ist, dann kann man in der Wallet, d.h. wenn im linken Menü "Wallet" ausgewählt ist, rechts oben auf "Address" klicken und bekommt dort eine Deposit-Adresse angezeigt.

Nun muss man die Wallet erstmal aufladen. Hierfür gehen wir wieder auf https://testnet.manu.backend.hamburg/faucet und besorgen uns Spielgeld in dem wir dort unsere Deposit-Adresse eintragen. Dann heisst es erstmal 6 Bestätigungen abwarten. Die Anzahl der Bestätigungen kann man hier einsehen: https://live.blockcypher.com/btc-testnet/. Nach der ersten Bestätigung bekommt man eine Meldung innerhalb Zap, dass die Kohle im Anmarsch ist.

Nachdem 6 Bestätigungen durch sind, so muss man sich im nächsten Schritt mit dem Netzwerk verbinden (das Folgende findet man auch unter "Help" in den Videos). Dazu klickt man auf der linken Seite im schwarzen Bereich auf das graue "Contacts" sodass dieser Schriftzug gelb wird und trägt rechts im Weissen per gelben "+Add"-Knopf einen neuen Kontakt ein. Dies geht wie folgt: Man besucht erstmal folgende Seite:

https://yalls.org/

Dort kann man Artikel lesen, indem man sie per LN bezahlt. Man sucht sich dort einen Artikel aus, z.B.:

https://yalls.org/articles/a1264e7f-401d-4c46-97a7-7b14e6b54193:926B20A0-5375-4E8A-BC75-D060BD930D7C/0460f43d-65c3-484c-9c0d-20f3b3a95e5b

Und klickt dort unten auf "Continue reading ..." und man bekommt dann eine Bezahlauforderung im LN-Format. Zusätzlich befinden sich dort auch Daten zum Knoten ("Peer:"), d.h. die Node-ID (pubkey@IP:9735), wie ich es in meinem anderen Thread beschrieben haben. Denn kopiert man nun bei "Contact" -> "+Add" in das dortige Feld hinein und klickt auf "Submit" (nicht sonderlich gut sichtbar). Dann passiert was. Damit man das besser sieht sollte man "All Contacts" links oben auswählen, damit auch die noch nicht die etablierten Channels sichtbar sind.

Und dann heisst es wieder auf die 6 Bestätigungen warten.
3  Bitcoin / Project Development / Lightning Network - Eclair: Installation of a testnet LN-node on: January 27, 2018, 06:24:05 PM
Hi guys,

following a tutorial for installing eclair (you find the original thread here: https://bitcointalk.org/index.php?topic=2778084.0).



Additional references

Lightning network megathread: https://www.reddit.com/r/Bitcoin/comments/7pwna9/lightning_network_megathread/
Questions are answered here, provided one owns a github account: https://gitter.im/ACINQ/eclair
Current state of lightning network (mainnet): https://lnmainnet.gaben.win/
Graph of developmental state of lightning network (mainnet): https://p2sh.info/dashboard/db/lightning-network?orgId=1



Requirements

  • Computer with 64bit cpu, will work analogously on a 32bit system but with different files
  • Ubuntu 16.04 LTS (http://de.releases.ubuntu.com/16.04.3/), will certainly also work with other versions
  • Computer should be independent, OS newly installed and separated from important data
  • You should be experienced working with linux, network and similar
  • A fast network connection should be available
  • Needs roughly 2 hours since 2 Bitcoin transactions are necessary
  • User "curiosity81", needs to be replaced
  • Placeholders are "<password>" and need to be replaced correspondingly



Enter the Download-directory (exits in Ubuntu by default):

Code:
cd /home/curiosity81/Downloads



Bitcoin Core (before synchronizing)

Download bitcoin core (https://bitcoin.org/en/download):

Code:
wget https://bitcoin.org/bin/bitcoin-core-0.15.1/bitcoin-0.15.1-x86_64-linux-gnu.tar.gz

Additionally, download the signature of von van der Laan:

Code:
wget https://bitcoin.org/laanwj-releases.asc

Import the key:

Code:
gpg --import laanwj-releases.asc

Finally get the hash sums of the files:

Code:
wget https://bitcoin.org/bin/bitcoin-core-0.15.1/SHA256SUMS.asc

Verify bitcoin core before unpacking:

Code:
gpg --verify SHA256SUMS.asc
sha256sum bitcoin-0.15.1-x86_64-linux-gnu.tar.gz | grep -o 387c2e12c67250892b0814f26a5a38f837ca8ab68c86af517f975a2a2710225b

The hex number is included in SHA256SUM.asc and belongs to the downloaded file. If grep reports something, then everything is ok. Probably, there are more elegant ways to verify.

Unpack bitcoin core:

Code:
tar -xzvf bitcoin-0.15.1-x86_64-linux-gnu.tar.gz

And adapt the configuration file:

Code:
mkdir /home/curiosity81/.bitcoin
nano /home/curiosity81/.bitcoin/bitcoin.conf

Save the following lines in the configuration file:

Code:
testnet=1
server=1
rpcuser=<user>
rpcpassword=<password>
txindex=1
zmqpubrawblock=tcp://127.0.0.1:29000
zmqpubrawtx=tcp://127.0.0.1:29000

The placeholders <user> and <password> have to be replaced correspondingly. Save and exit nano with Strg+X.

Start bitcoin core:

Code:
/home/curiosity81/Downloads/bitcoin-0.15.1/bin/bitcoin-qt

Bitcoin core is synchronizing now with the testnet. This takes a while (around 1.5h).



JRE 1.8

For eclair, a Java Runtime Environment is necessary. JRE 1.8 from Oracle is recommended. Make sure that you satisfy the license conditions before you install the software.

Visit (firefox) http://www.oracle.com/technetwork/java/javase/downloads/jre8-downloads-2133155.html and choose

jre-8u162-linux-x64.tar.gz

Confirm the License Agreement if it applies to you and start the download. The File is saved in the download directory. Since bitcoin core is likely still synchronizing, open a new terminal and enter the download directory again:

Code:
cd /home/curiosity81/Downloads

Verify the hash sum again. Therefore, click on the download page (http://www.oracle.com/technetwork/java/javase/downloads/jre8-downloads-2133155.html), at the top

JRE 8u162 Checksum

on the "Checksum" link and save the 256sha value for the correct file:

dfa25ebd1f90bf74ad7ba2dacb0e08d884594e733c9a522b58256778031341a4

Test the hash:

Code:
sha256sum jre-8u162-linux-x64.tar.gz | grep -o dfa25ebd1f90bf74ad7ba2dacb0e08d884594e733c9a522b58256778031341a4

If everything is ok, then unpack the file:

Code:
tar -xzfv jre-8u162-linux-x64.tar.gz

And install java (https://wiki.ubuntuusers.de/Java/Installation/Oracle_Java/Java_8/):

Code:
sudo mkdir /opt/Oracle_Java
sudo cp jre1.8.0_162/ /opt/Oracle_Java/ -R
sudo update-alternatives --install "/usr/bin/java" "java" "/opt/Oracle_Java/jre1.8.0_162/bin/java" 1
sudo update-alternatives --install "/usr/bin/javaws" "javaws" "/opt/Oracle_Java/jre1.8.0_162/bin/javaws" 1
sudo update-alternatives --set "java" "/opt/Oracle_Java/jre1.8.0_162/bin/java"
sudo update-alternatives --set "javaws" "/opt/Oracle_Java/jre1.8.0_162/bin/javaws"
java -version

If the last command reports the version as follows:

Code:
java version "1.8.0_162"
Java(TM) SE Runtime Environment (build 1.8.0_162-b12)
Java HotSpot(TM) 64-Bit Server VM (build 25.162-b12, mixed mode)

Then everything was done correctly. Let's go on.



Eclair

We are still in the Download-directory in the second terminal. Download eclair (https://github.com/ACINQ/eclair). We are lazy and do not want to compile anything. So we are happy with the precompiled jar-file (Check: https://github.com/ACINQ/eclair/releases for newer releases):

Code:
wget https://github.com/ACINQ/eclair/releases/download/v0.2-alpha8/eclair-node-gui-0.2-alpha8-8edb2a4.jar

That's it. Unfortunately, there is nothing more to verify. Important: So that eclair works correctly, bitcoin core must run in parallel! After:

Code:
java -jar eclair-node-gui-0.2-alpha8-8edb2a4.jar

Something should happen, even though the program is not configured yet and ends with an error message.



Bitcoin core (after synchronyzing)

In the GUI:

Help -> Debug window -> Console

There:

Code:
getnewaddress

We keep this address, in my case:

mtDmzMz7NvuRjptrLWwbdVBs4j7Y3eXvCV

Then,

Code:
addwitnessaddress mtDmzMz7NvuRjptrLWwbdVBs4j7Y3eXvCV

Creates a segwit address, in my case:

2MswDJ1kf9aqiC6twrDyUbLqGmtnjtFG4XX

We also keep this address.

Now we need money for playing. Go to:

https://testnet.manu.backend.hamburg/faucet

Insert the segwit address and you will get some testnet BTC. Clearly, this will take 1h until the transaction is confirmed 6 times.



Eclair configuration

Enter the Download-directory again:

Code:
cd /home/curiosity81/Downloads

If the configuration directory of eclair is not existent, create it:

Code:
mkdir /home/curiosity81/.eclair

Then edit eclair.conf:

Code:
nano /home/curiosity81/.eclair/eclair.conf

Add the following lines to the file:

Code:
eclair.server.port=9735
eclair.node-alias="curiosity81"
eclair.node-color="9716b7"
eclair.bitcoind.rpcuser="<user>"
eclair.bitcoind.rpcpassword="<password>"
eclair.bitcoind.zmq="tcp://127.0.0.1:29000"
eclair.server.public-ips=["xx.xx.xx.xx"]

The placeholders <user> and <password> must be replaced by the corresponding values in the bitcoin.conf. Save and exit nano with Ctrl+X. eclair.server.public-ips can be set to your IP, then your node will be visible at https://explorer.acinq.co. Only this way other users can connect to your node. But eclair will also work with "xx.xx.xx.xx".

Start eclair again:

Code:
java -jar eclair-node-gui-0.2-alpha8-8edb2a4.jar

And tada, the eclair-GUI should open.



Connecting to the Lightning Netzwerk

Visit:

https://explorer.acinq.co

Select a node. Either by clicking on the map or in the scroll down menu on the right. After clicking, more information about a node is shown, like alias, publickey or IP. I used the node "pikefloyd" at the beginning. Whose data is as follows (clearly nodes can disappear of their data changes, so be flexible):

Code:
Alias:         pikefloyd
Publickey:     03c4b20397d476a0d008e61022c96803ada3c11918fff8133db4f7d27273710e03
IP und Port:   81.149.149.156:9735

From this, built the following ID from publickey, IP and port:

Code:
03c4b20397d476a0d008e61022c96803ada3c11918fff8133db4f7d27273710e03@81.149.149.156:9735

In the eclair-GUI, choose: Channels -> Open channel ...

There, at "Target Node URI", the ID is inserted. Click on "Simple connection (no channel)" and press "Connect". After a while, the GUI should fill with information to nodes and channels.



Creating payment channels

As described above, select a node in the LN and copy the ID into the "Target Node URI" field. This time do NOT click on "Simple connection (no channel)"! Additionally, choose a bitcoin amount and insert it into the "Capacity" field. The amount must be less or equal to the amount in your bitcoin core test wallet. Press "Connect". Bitcoin core should report an outgoing transaction + fees. Eclair should show a new payment channel. Now wait 6 confirmations.



Paying with the Lightning Network

To pay with LN you need a payment order from someone you own money (https://medium.com/@btc_coach/lightning-network-in-action-b18a035c955d). So there are no public addresses where you can send your money. This is due to the payment routing through the network (see 9:00 in https://www.youtube.com/watch?v=wIhAmTqXhZQ)

If someone ows you money go to: Channels -> Receive Payment. There at "Optional amount to receive" insert the corresponding amount and press "Generate". The result must be sent to the person who owes you money.

Here you can by coffee with testnet money:

https://starblocks.acinq.co



Port forwarding and similar

At https://explorer.acinq.co/#/faq, the last point:

Quote
I cannot connect to a node listed in the explorer.

Connection can fail due to one of the following reasons:

    The node is currently offline right now (any channels it might have are temporarily unavailable but stay open).
    The node does not announce a public IP.
    The public IP announced by the node is not accurate.
    The node is not reachable (misconfiguration in port forwarding, firewall...).
    ...

Eclair works without port forwarding. Simple paying in the LN will always work. Even with closed port 9735. However, with closed port 9735 no one can connect to you node even though you can connect to nodes with open port 9735. As a result, keep this port open. If people call other people via telephon, but if no one picks up, then the telephone is useless.
4  Local / Projektentwicklung / Lightning Netzwerk - Eclair: Aufsetzen eines LN-Knoten im Testnetz on: January 18, 2018, 05:56:26 PM
Hallo,

ich probiere mich gerade im Lightning Netzwerk aus und will das hier dokumentieren. Auch, weil es zum LN nichts online gibt was selbst für erfahrene Computernutzer ohne Weiteres zu bewältigen wäre. Wenn schon die Installation von Eclair kaum hinzubekommen ist, dann ist vollkommen klar, dass das LN nicht aus den Puschen kommt. Deshalb diese Anleitung um die Einstiegshürden zu überwinden. Diesen Text werde ich nach und nach erweitern. Mein Ausganspunkt ist hierbei dieser Beitrag:

https://medium.com/@ajs1287/setting-up-bitcoin-lightning-network-node-on-macos-is-peanuts-eclair-5afbef553d71

D.h., wenn ich mit meiner Anleitung noch nicht fertig bin und ihr weiterspielen wollt, dann halten euch an obigen Beitrag.



Sonstige Referenzen

Lightning Network Megathread:

https://www.reddit.com/r/Bitcoin/comments/7pwna9/lightning_network_megathread/

Frage zu Eclair lassen sich mit Github-Account am besten hier beantworten:

https://gitter.im/ACINQ/eclair



Voraussetzungen

  • Ein Rechner mit genug Leistung und 64bit, läuft natürlich analog auch für ein 32bit System, sind dann aber andere Dateien
  • Ubuntu 16.04 LTS (http://de.releases.ubuntu.com/16.04.3/), geht aber bestimmt auch mit einer anderen Version
  • Der Rechner sollte eigenständig, Betriebssystem frisch installiert und getrennt von wichtigen Daten sein
  • Erfahrung mit Linux, Netzwerk etc. pp.
  • Eine zügige Netzwerkverbindung
  • Etwa 2h Zeit da mindestens 2 Bitcoin Transaktionen durchgeführt werden
  • Der Nutzer hier ist "curiosity81", der muss entsprechend angepasst werden
  • Platzhalter sind z.B. "<Passwort>" und müssen entsprechend ersetzt werden



Zu Beginn gehen wir in den Download-Ordner (den gibt es bei Ubuntu standardmäßig):

Code:
cd /home/curiosity81/Downloads



Bitcoin Core (vor Synchronisierung)

Und laden Bitcoin Core (https://bitcoin.org/en/download) herunter:

Code:
wget https://bitcoin.org/bin/bitcoin-core-0.15.1/bitcoin-0.15.1-x86_64-linux-gnu.tar.gz

Zusätzlich besorgen wir uns die Signatur von van der Laan:

Code:
wget https://bitcoin.org/laanwj-releases.asc

Wir importieren den Schlüssel:

Code:
gpg --import laanwj-releases.asc

Zu guter Letzt besorgen wir uns die Hashsummen der Dateien:

Code:
wget https://bitcoin.org/bin/bitcoin-core-0.15.1/SHA256SUMS.asc

Nun verifizieren wir Bitcoin Core bevor wir es entpacken:

Code:
gpg --verify SHA256SUMS.asc
sha256sum bitcoin-0.15.1-x86_64-linux-gnu.tar.gz | grep -o 387c2e12c67250892b0814f26a5a38f837ca8ab68c86af517f975a2a2710225b

Die lange Hex-Zahl stammt aus SHA256SUM.asc und entspricht der Hashsumme der runtergeladenen Datei. Wenn grep ein Ergebnis ausgibt, dann ist alles ok. Gibt bestimmt elegantere Lösungen das zu prüfen als meine.

Jetzt entpacken wir Bitcoin Core:

Code:
tar -xzvf bitcoin-0.15.1-x86_64-linux-gnu.tar.gz

Und passen die Bitcoin Konfigurationsdatei an:

Code:
mkdir /home/curiosity81/.bitcoin
nano /home/curiosity81/.bitcoin/bitcoin.conf

Wir füllen die Datei folgendermaßen:

Code:
testnet=1
server=1
rpcuser=<user>
rpcpassword=<password>
txindex=1
zmqpubrawblock=tcp://127.0.0.1:29000
zmqpubrawtx=tcp://127.0.0.1:29000

Die Platzhalter <user> und <password> müssen mit einem entsprechenden Werten ersetzt werden. Wir speichern und verlassen nano mit Strg+X.

Nun können wir Bitcoin Core starten:

Code:
/home/curiosity81/Downloads/bitcoin-0.15.1/bin/bitcoin-qt

Bitcoin Core wird sich nun mit dem Testnetz synchronisieren. Das dauert ein Weilchen, aber nicht solange wie im Hauptnetz. Bei mir waren das ca. 1.5h.



JRE 1.8

Nun müssen wir das Java Runtime Environment von Oracle installieren, damit Eclair auch läuft. Wir gehen also den Weg des geringsten Widerstands. Fragt mich aber nicht zu den Lizenzen und was sich Eclair dabei gedacht hat Oracle zu nutzen. Dies hier ist nur eine Anleitung. Jeder installiert also auf eigene Entscheidung hin dieses Oracle-Produkt.

Wir gehen zu Beginn per Browser (Firefox) auf http://www.oracle.com/technetwork/java/javase/downloads/jre8-downloads-2133155.html. Dort wählen wir

jre-8u162-linux-x64.tar.gz

aus, bestätigen das License Agreement und beginnen den Download. Die Datei landet in unserem Download-Ordner. Da Bitcoin Core wahrscheinlich noch synchronisiert so öffenen wir ein neues Terminal und gehen wieder in den Download-Ordner:

Code:
cd /home/curiosity81/Downloads

Dann verifizieren wir die Hashsumme der runtergeladenen Datei. Dazu klicken wir oben auf der Oracle Seite (http://www.oracle.com/technetwork/java/javase/downloads/jre8-downloads-2133155.html) bei

JRE 8u162 Checksum

auf "Checksum" und merken uns den sha256-Wert für die entsprechende Datei:

dfa25ebd1f90bf74ad7ba2dacb0e08d884594e733c9a522b58256778031341a4

Jetzt testen wir den Hash:

Code:
sha256sum jre-8u162-linux-x64.tar.gz | grep -o dfa25ebd1f90bf74ad7ba2dacb0e08d884594e733c9a522b58256778031341a4

Wenn alles ok ist so entpacken wir die Datei:

Code:
tar -xzfv jre-8u162-linux-x64.tar.gz

Und installieren java (https://wiki.ubuntuusers.de/Java/Installation/Oracle_Java/Java_8/):

Code:
sudo mkdir /opt/Oracle_Java
sudo cp jre1.8.0_162/ /opt/Oracle_Java/ -R
sudo update-alternatives --install "/usr/bin/java" "java" "/opt/Oracle_Java/jre1.8.0_162/bin/java" 1
sudo update-alternatives --install "/usr/bin/javaws" "javaws" "/opt/Oracle_Java/jre1.8.0_162/bin/javaws" 1
sudo update-alternatives --set "java" "/opt/Oracle_Java/jre1.8.0_162/bin/java"
sudo update-alternatives --set "javaws" "/opt/Oracle_Java/jre1.8.0_162/bin/javaws"
java -version

Wenn das letzte Kommando die Version wie folgt ausgibt:

Code:
java version "1.8.0_162"
Java(TM) SE Runtime Environment (build 1.8.0_162-b12)
Java HotSpot(TM) 64-Bit Server VM (build 25.162-b12, mixed mode)

So haben wir auch diesen Schritt bewältigt. Weiter geht's.



Eclair

Wir sind immer noch im Download-Ordner, im zweiten Terminal. Nun besorgen wir uns Eclair (https://github.com/ACINQ/eclair). Wir sind immer noch faul und wollen das nicht selbst kompilieren oder bauen. So werden wir uns mit dem jar begnügen (https://github.com/ACINQ/eclair/releases):

Code:
wget https://github.com/ACINQ/eclair/releases/download/v0.2-alpha8/eclair-node-gui-0.2-alpha8-8edb2a4.jar

Das war es auch schon. Hier gibt es leider nichts zu verifizieren. Wir wollen aber auch nur im Testnetz spielen. Wir müssen also das Risiko eingehen. Wichtig: Damit Eclair korrekt läuft muss Bitcoin Core nebenher laufen! Nach:

Code:
java -jar eclair-node-gui-0.2-alpha8-8edb2a4.jar

Sollte sich dann auch schon was tun, auch wenn das Programm noch nicht konfiguriert ist und deshalb mit Fehlermeldung beendet.



Bitcoin Core (nach Synchronisierung)

In der GUI:

Help -> Debug window -> Console

Dort:

Code:
getnewaddress

Die Adresse, in meinem Fall:

mtDmzMz7NvuRjptrLWwbdVBs4j7Y3eXvCV

merken wir uns. Dann

Code:
addwitnessaddress mtDmzMz7NvuRjptrLWwbdVBs4j7Y3eXvCV

Erzeugt Segwit-Adresse, in meinem Fall:

2MswDJ1kf9aqiC6twrDyUbLqGmtnjtFG4XX

Auch diese merken wir uns.

Nun besorgen wir uns Geld auf:

https://testnet.manu.backend.hamburg/faucet

Indem wir unsere Segwit-Adresse dort angeben. Ich bekam z.B. 1.3 BTC auf 2MswDJ1kf9aqiC6twrDyUbLqGmtnjtFG4XX geschickt Grin. Natürlich dauert es hier ca. 1h bis die Transaktion 6x bestätigt und somit nutzbar ist.



Eclair Konfiguration

Wir gehen zu Beginn wieder in den Download-Order

Code:
cd /home/curiosity81/Downloads

Falls der Konfigurationsordner von Eclair noch nicht existiert so erzeugen wir ihn:

Code:
mkdir /home/curiosity81/.eclair

Dann editieren wir die eclair.conf:

Code:
nano /home/curiosity81/.eclair/eclair.conf

Und füllen die Datei wie folgt:

Code:
eclair.server.port=9735
eclair.node-alias="curiosity81"
eclair.node-color="9716b7"
eclair.bitcoind.rpcuser="<user>"
eclair.bitcoind.rpcpassword="<password>"
eclair.bitcoind.zmq="tcp://127.0.0.1:29000"
eclair.server.public-ips=["xx.xx.xx.xx"]

Für <user> und <password> nutzen wir die Werte, welche wir auch in der bitcoin.conf nutzen. Strg+X speichert die Datei und beendet nano. Damit man später den eigenen Knoten mit den entsprechenden Information auf https://explorer.acinq.co zu sehen bekommt (siehe auch weiter unten), so muss bei eclair.server.public-ips die eigenen IP eingetragen werden. Nur so können sich andere Teilnehmer im Netzwerk mit dem eigenen Knoten verbinden. Wie das abläuft, wenn sich Nachts die ip ändert ... das weiss ich auch nicht. Möglicherweise muss man dann erst den Knoten stoppen, per Skript die Konfiguration entsprechend ändern, und dann den Knoten wieder hochfahren. Das ist aber nur eine Vermutung. Man kann aber, um Testzahlungen durchzuführen, auch "xx.xx.xx.xx" stehen lassen.

Jetzt versuchen wir erneut Eclair zu starten:

Code:
java -jar eclair-node-gui-0.2-alpha8-8edb2a4.jar

Und tada, die Eclair-GUI öffnet sich.  Smiley



Verbindung mit dem Lightning Netzwerk

Wir öffnen im Browser folgende Adresse:

https://explorer.acinq.co

Und suchen uns dort einen Knoten im rechten Scrolldownmenü aus (also nicht in der Karte sondern rechts davon) mit welchem wir uns verbinden können. Wenn man einen Knoten anklickt, dann sieht man weitere Infos wie Alias, Publickey und IP. Für den Anfang begnügen wir uns mit den Knoten, welche eine IP anzeigen. Ich habe mir einen Knoten rausgesucht, der den Alias "pikefloyd" hat. Dessen Daten sind wie folgt, werden sich aber wohl mit der Zeit ändern oder der Knoten verschwindet ganz, seid also flexibel:

Code:
Alias:         pikefloyd
Publickey:     03c4b20397d476a0d008e61022c96803ada3c11918fff8133db4f7d27273710e03
IP und Port:   81.149.149.156:9735

Daraus bauen wir uns folgende ID aus dem Publickey, IP und Port zusammen:

Code:
03c4b20397d476a0d008e61022c96803ada3c11918fff8133db4f7d27273710e03@81.149.149.156:9735

In der Eclair-GUI wählen wir: Channels -> Open channel ...

Dort, bei "Target Node URI", kopieren wir obere ID rein. Zusätzlich klicken wir noch "Simple connection (no channel)" an und drücken "Connect". Nach etwas warten sollte sich die GUI mit Infos zu Channels und Nodes füllen. Wenn ihr eure Bitcoin Core Testnetzwallet wie oben beschrieben mit Faucetcoins gefüllt habt so sind nun auch sicherlich Payment-Channels möglich.



Öffnen eines Payment-Channels

Wie im vorherigen Schritt suchen wir uns einen Knoten im Lightning Netzwerk aus und geben die ID bei "Target Node URI" ein. Heute habe ich mir einen anderen Knoten ausgesucht. Diesmal klicken wir aber NICHT "Simple connection (no channel)" an! Zusätzlich wählen wir eine Bitcoin Betrag aus und geben diesen im Feld "Capacity" ein. Der Betrag muss natürlich kleiner/gleich dem Betrag auf eurer Bitcoin Core Testwallet sein. Ich habe dort mal 100 milliBTC eingegeben. Dann auf "Connect" drücken. Sofort sollte in Bitcoin Core die Meldung einer Transaktion von 0.1 BTC + Transaktiongebühr aufpoppen. Ihr habt also nun 2 Transaktionen in eurer Testwallet. Eine Eingehende von der Faucet und eine Ausgehende um den Channel zu öffnen. Nach dem Drücken von "Connect" handelt Eclair mit dem Channel-Partner etwas aus. Dann sollte in Eclair, bei den "Local Channels" bei "STATE" stehen:

Code:
WAIT_FOR_FUNDING_CONFIRMED

Jetzt heisst es etwa eine halbe Stunde zu warten, also 3 Bitcoin-Bestätigungen bis der Channel geöffnet ist. Bei Eclair scheinen nämlich 3 Bestätigungen auszureichen. Solange ist auch euer Knoten noch nicht sichtbar, siehe auch https://explorer.acinq.co/#/faq. Dann sollte in Eclair, bei den "Local Channels" bei "STATE" stehen

Code:
NORMAL

Sehen kann ich meinen Knoten auch nach 6 Bestätigungen nicht, liegt wahrscheinlich an den geschlossenen Ports. Ansonsten hat bisher alles fehlerfrei funktioniert.



Mit Lightning Netzwerk bezahlen

Wenn ich mich richtig entsinne, muss einer von den Beiden, der Bezahlende oder der Zubezahlende, dem anderen ein Geheimnis direkt, also nicht über das Lightning Netzwerk, schicken. Fragt mich jetzt nicht wie das genau geht, das war irgendwas mit einer Zufallszahl und deren Hash, welche/r dann durch das Netzwerk propagiert wird und ich habe die Details vergessen (ungefähr bei 9:00 in https://www.youtube.com/watch?v=wIhAmTqXhZQ). D.h. also, dass es sowas wie öffentliche Adressen in einer Blockchain nicht mehr gibt, der Zubezahlende muss einen Zahlungsaufruf generieren, den er dann dem Bezahlenden zu kommen lässt (https://medium.com/@btc_coach/lightning-network-in-action-b18a035c955d). So mein momentanes Verständnis. Ich könnte aber auch falsch liegen. Also korrigiert mich wenn nötig.

Um einen Zahlungsaufruf zu erzeugen geht man in Eclair wie folgt vor: Channels -> Receive Payment. Dort bei "Optional amount to receive" gibt man einen validen Betrag ein (oder auch nicht, ist ja optional) und drückt auf "Generate". Das Ergebnis muss man wohl seinem Gegenüber zukommen lassen.

Hier kann man wohl Phantasiekaffee kaufen:

https://starblocks.acinq.co

 Grin Grin Grin



Port forwarding und Ähnliches

Gefunden habe ich auf https://explorer.acinq.co/#/faq folgendes dazu, siehe den letzten Punkt:

Quote
I cannot connect to a node listed in the explorer.

Connection can fail due to one of the following reasons:

    The node is currently offline right now (any channels it might have are temporarily unavailable but stay open).
    The node does not announce a public IP.
    The public IP announced by the node is not accurate.
    The node is not reachable (misconfiguration in port forwarding, firewall...).
    ...

Bis jetzt hat alles ohne Portforwarding funktioniert. Und raustelefonieren d.h. schlichtes Bezahlen wird auch immer so funktionieren, auch mit geschlossenem Port 9735. Wenn aber euer Port 9735 geschlossen ist und die entsprechenden Pakete nicht an den entsprechenden Computer weitergeleitet werden (Portforwarding), dann bekommt derjenige, der sich mit euch verbinden will, eine Fehlermeldung, obwohl euer Knote wie ein ganz normaler aussieht. Aktuell kann man nämlich nicht unterscheiden, welche Knoten einen offenen Port 9735 haben und bei welchen dieser geschlossen ist. D.h. es wird passieren, dass auch ihr euch mit manchen Knoten nicht verbinden könnt, da diese Port 9735 geschlossen haben. Also nochmal:

Damit sich jemand mit eurem Knoten verbinden kann muss Port 9735 geöffnet sein!

Oder anders ausgedrückt, wenn alle nur anrufen und keiner abnimmt, dann ist das Telefonnetz nutzlos! Soll heissen, wenn alle ihren Port 9735 schliessen, dann gibt es schlicht kein Lightning Netzwerk. Wenn nur ein paar Knoten Port 9735 offen haben, dann ergibt das ein zentralisiertes Netzwerk, weil dann alle anderen sich mit diesen Knoten verbinden müssen. Und am besten wäre es, wenn alle Port 9735 geöffnet haben.
5  Bitcoin / Development & Technical Discussion / stringwallet on: December 30, 2017, 03:28:22 PM
Hi guys,

during christmas I was thinking about a way to produce my own brainwallets. You find the code below

https://github.com/curiosity81/stringwallet.

Clearly, code can also be used to produce more secure brainwallets. E.g. hashing a string more than once and a brute force approach is virtually useless.

Edit: to prevent confusion, I renamed the project to stringwallet.
6  Other / Off-topic / Why is the result of sha256 the same for inputs 0 to 15? on: December 21, 2017, 11:44:55 AM
Just for curiosity:

Why does

Code:
echo "obase=16;ibase=10;$var" | bc | xxd -p -r | sha256sum

result in

Code:
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855

where $var is in {"0", ..., "15"}?

Thx.
7  Bitcoin / Development & Technical Discussion / Bitcoin core with command line parameter for HD-wallet seed on: December 10, 2017, 04:22:23 PM
Hi,

I would like to promote the following feature in bitcoin core:

Code:
./bitcoind -walletseed <some hex integer>

or

Code:
./bitcoin-cli -walletseed <some hex integer>

or

Code:
./bitcoin-qt -walletseed <some hex integer>

where <some hex integer> is the seed of the HD-wallet.

Why? I think, that it is too little, to have HD-wallets introduced only for getting rid of the 100 keypair limit!

What people are using bitcoin core? Not the guys from the street! It is used by the more experienced people. And those know about the limit.

With this feature, one could generate its own seeds via some USEFUL method, e.g. throwing a dice and transforming the result to some integer. I am serious! Some method that is suitable for long term archiving, because the resulting string is more readable and can be carved in stone. I don't want to carve a hex number in stone, even though this is the lesser problem. And I don't want to use second hand software to reproduce the keypairs.

To further stress this: Modern storage media are NOT an alternative!!! And I won't mess around with the bitcoin core source code, even though, it seems to be a no-brainer to add this functionallity.

Please add this simple feature to bitcoin core.
8  Local / Anfänger und Hilfe / Bitcoin Core - Eine HD-Wallet mit gegebenem Seed erzeugen on: December 09, 2017, 09:39:31 AM
Weiss jemand wie bzw. ob das geht?

Gefunden habe ich das:

https://bitcoin.stackexchange.com/questions/52384/how-to-restore-bitcoin-core-hd-wallet-private-keys-by-master-key

Was aber leider sehr mau ist. Da fragt man sich, warum Core sowas drin hat, wenn man es nicht in Core nutzen kann und sich auf Secondhandsoftware verlassen muss.
9  Bitcoin / Bitcoin Technical Support / Bitcoin core HD wallet on: December 08, 2017, 04:05:51 PM
Hello,

Is it possible to create a new HD-wallet with bitcoin-core providing a master key from another bitcoin-core HD-Wallet (which, for instance, was lost, but the seed is known)?

What I found via google is, that it is not possible to import some xprv into an HD-wallet. Which makes sense, since the wallet already contains a seed. Nevertheless, another possibility would be, to create a new HD-wallet with the known key as seed.

Is this possible? And if this is possible, which version of bitcoin-core supports this functionality?

Last question: the seed looks like a 512bit number, right? Is it simply a 512bit random number?

Thanks in advance
cu
10  Local / Projektentwicklung / Lightning Network - Wie bekommt man Wert in oder aus einen Paymentchannel? on: December 03, 2017, 08:39:25 AM
Hallo,

kann mir jemand, der Ahnung von der Materie hat, erklären, wie man Wert in einem Paymentchannel bekommt? Gibt es dafür spezielle Wallets?

Mir ist klar, dass im Channel nur die Deltas per nichtgebroadcasteter Transaktion "gehandelt" werden. Wie bekomme ich jetzt aber meine 0.0005 BTC für einen Kaffee in den Channel, welche noch in der Blockchain liegen, wobei die Transaktionskosten den Wert des Kaffees womöglich übersteigen.

Bzw. angenommen ich bin der Kaffeeverkäufer, wie komme ich, vielleicht nach einer Woche, an das für mich aufsummierte Delta des Paymentchannels? Weisst man den Channel explizit an, dies in die Blockchain zu schreiben, oder vertraut man dem Channel, dass er dies irgendwann macht oder muss man warten bis jemand, der nicht mitspielt, die Realisierung auf der Blockchain erzwingt? Und wie liesse sich das entsprechende Delta anzeigen?

Macht man das alles auch per nicht gebroadcasten Transaktionen (also die 0.005 BTC für den Kaffee)? Wie wird dann aber ein Doublespend verhindert?

Oder habe ich schlicht das Prinzip noch nicht verstanden?

Gruss
cu
11  Local / Projektentwicklung / Energieverbrauch des Bitcoins on: November 27, 2017, 11:07:59 AM
Diskussion zum Energieverbrauch bitte hier führen.
12  Bitcoin / Bitcoin Technical Support / Generation of raw transaction with bitcoin-qt, saving as text file on: November 04, 2017, 08:15:04 AM
Hello,

I am looking for a manual, how to create a raw transaction with bitcoin-qt using an offline computer. The transaction is then saved on a stick or similar, transfered to an online computer and broadcasted from there to the network. I know, that this is possible via the console. But this looks quite complex and error-prone.

Is it possible to build the transaction via the graphical user interface? That is, like if I wanted to broadcast the transaction directly to the network. But instead of pressing "Send", I press "Save transaction to text file" (or similar).

Thanks in advance,
cu

13  Local / Anfänger und Hilfe / Frage: bitcoin-qt, Transaktion offline erzeugen, ohne wallet versenden, möglich? on: October 30, 2017, 04:26:26 PM
Hallo,

weiss jemand ob man eine Transaktion offline mit bitcoin-qt erzeugen kann um sie dann später, ohne die Wallet, zu versenden?

Die Vorraussetzungen wären wie folgt:

- Eine Wallet mit BTC ist vorhanden;
- Blockchain mit Transaktionen, welche die Wallet füllen, liegt vor, jedoch nicht notwendigerweise bis zum aktuellen Block.

Vorgehen mit Wallet (offline):

1. Starten von bitcoin-qt mit gegebener Blockchain, Inhalt der Wallet wird angezeigt;
2. Erzeugen von Transaktion und Signierung dieser;
3. Abspeichern der Transaktion als (Text)Datei.

Vorgehen ohne Wallet aber mit Transaktion (online):

1. Starten von bitcoin-qt mit gegebener Blockchain und neuer, leerer Wallet;
2. Synchronisierung der Blockchain;
3. Laden der Transaktionsdatei und broadcasten der Transaktion.

Geht sowas? Und wenn ja, wie?

14  Local / Trading und Spekulation / bter.com: Funds abziehen nur noch bis 30.10. on: October 28, 2017, 09:06:39 AM
Hallo,

da bter.com chinesisch ist, so wird die Seite am 30.10. geschlossen. Wer dort noch Coins liegen hat, der sollte sie bis dahin abziehen. bter.com scheint als gate.io weiterzulaufen. Das Design der Seiten ist gleich, aber scheinbar als gate.io nicht mehr chinesisch (?). Die Funds können angeblich automatisch von bter.com nach gate.io transferiert werden. Dort sollte dann das Abheben funktionieren. Handel ist auf bter.com nicht mehr möglich.

Ich konnte mich nun auch wieder auf bter.com einloggen, nachdem ich das Passwort resetet habe. Dort lagen noch Bitcoinleichen, welche durch den bter-Hack verloren gegangen waren. Diese wollte bter irgendwann ersetzen. Nun ist dies Gutschrift verschwunden. Dafür weisst mein Account einen Yuan-Betrag auf (ungefähr 5% der geklauten Coins bezogen auf den heutigen Wert), diesen kann ich aber scheinbar nicht tauschen oder auf gate.io transferieren.

Hat hier Jemand ähnliche Erfahrungen gemacht und eine Idee wie man and das Geld kommt?

Gruss
cu
15  Local / Anfänger und Hilfe / Frage zu HD-Wallets on: October 22, 2017, 01:35:17 PM
Hallo Leute,

habe das Feature noch nie benutzt. So wie ich das verstehe beginnt man mit einer Liste von Wörtern, welche als Seed für einen Pseudozufallsgenerator fungieren. Der Pseudozufallsgenerator erzeugt dann in einer Kette, abhängig vom Vorgaenger, die privaten Schlüssel.

Vorteil: Man braucht kein Backup. Hat man die Zufallsliste an Seedwörtern, dann lässt sich die Wallet jederzeit wiederherstellen, egal wo man sich befindet, vorrausgesetzt man nutzt eine Walletsoftware, welche den Pseudozufallsgenerator reimplementiert, welchen man zu Beginn genutzt hat. Mehr wird nicht benötigt.

Nachteil: Kommt jemand and die Seedwörter, dann hat derjenige Zugriff auf alle Adressen. Ergo ist es wichtig, einen guten Satz an Seedwörtern zuerzeugen.

Sehe ich das richtig?
16  Local / Anfänger und Hilfe / Wenig Entropie + Multisig = sicherer? on: October 21, 2017, 02:07:40 PM
Hallo,

eine Frage die sich mir heute beim Joggen stellte (alle paar Jubeljahre bekomme ich einen Paranoiaanfall):

Angenommen bei Walleterstellung liegt nur wenig Entropie vor oder man kann nicht garantieren, dass genug Entropie vorliegt da unterschiedliche Hardware sich unterschiedlich verhält, macht es da Sinn zu allen Sicherheitsvorkehrungen noch Multisig (https://bitcoinblog.de/2016/07/14/multisig-in-theorie-und-praxis/) zu nutzen? Multisig bedeutet ja nichts anderes als dass eine Transaktion von mehreren privaten Schlüsseln signiert werden muss. Selbst wenn ein Angreifer einen Schlüssel errät oder anderweitig an sich bringt, so werden zum Ausgeben der auf einer Adresse gelagerten Coins auch die anderen Signaturen benötigt.

Die genauen Fragen sind nun:
  • (i) Vergrössert Multisig die Sicherheit von Bitcoin?
  • (ii) Vergrössert Multisig bei privaten Schlüsseln mit wenig Entropie die Sicherheit?
  • (iii) Macht es Sinn, die eigenen Bitcoins per "Multisig-Masterschlüssel" abzusichern?

Zu (i):  Diese Frage ist relativ leicht zu beantworten. Normale Transaktionen nutzen P2PKH (Pay-to-Public-Key-Hash), Multisig-Transaktionen nutzen P2SH (Pay-to-Script-Hash), d.h., dass bei Multisig-Transaktionen die Adresse aus dem Hash des Skripts und der entsprechenden Schlüssel erzeugt wird. P2SH-Adressen beginnen mit einer 3, verdoppeln also mindestens den Suchraum. Ein gewisses Projekt versucht die Menge der 2^256 privaten Schlüssel abzugrasen um welche zu finden, die auf eine der 2^160 P2PKH-Adressen mappen und schon benutzt wurden. Imho ist das Zeit und Energieverschwendung und mit Multisig-Adressen müsste das Projekt vollkommen umgebaut werden. Auch wenn ich nicht ausschliesse, dass man da clever vorgehen könnte. Bleibt hier noch die Frage, wie schwierig z.B. das Auffinden von zwei anderen privaten Schlüsseln einer schon generierten 2-2-Multisig-Adresse ist: Genauso schwierig, wie das Auffinden eines anderen privaten Schlüssels mit der gleichen schon generierten P2PKH-Adresse, leichter oder schwieriger? (*)

Zu (ii): Kann ich leider nicht beantworten. Die Antwort ist glaube ich in der Antwort auf (*) enthalten.

Zu (iii): Was ich meinte ist: Erzeugt man n private Schlüssel auf die man seine Coins aufteilen möchte, dann erzeugt man noch einen zusätzlichen privaten Schlüssel, den Masterschlüssel. Mit jedem der n Schlüssel und dem Masterschlüssel erzeugt man nun n Multisigadressen auf die man die Coins verteilt. Die n privaten Schlüssel hält man nun in einer Wallet getrennt vom Masterschlüssel den man in einer anderen Wallet vorhält. Die Wallets kann man nun noch weiter verschlüsseln. Was ist eure Meinung dazu?
17  Local / Presse / [2017-08-09] FAZ: Die Angst vor der Bitcoin-Spaltung ist verflogen on: August 09, 2017, 09:23:10 AM
http://www.faz.net/aktuell/wirtschaft/bitcoin-mit-90-prozent-kursplus-wertsteigerung-der-kryptowaehrung-15142283.html

Am besten sind mal wieder die Kommentare Wink
18  Local / Presse / [2017-07-18] FAZ: Es droht die Bitcoin-Spaltung on: July 19, 2017, 06:33:26 AM
http://www.faz.net/aktuell/finanzen/devisen-rohstoffe/bitcoin-erliegt-der-technik-droht-eine-spaltung-15110471.html

Edit: Am aufschlussreichsten sind wie immer mal wieder die Kommentare
19  Local / Presse / [2017-07-02] heise.de: Im tiefen Tal der Kryptowährungen: Ein Besuch in Zug on: July 02, 2017, 09:28:06 AM
https://www.heise.de/newsticker/meldung/Im-tiefen-Tal-der-Kryptowaehrungen-Ein-Besuch-in-Zug-3760567.html
20  Local / Altcoins (Deutsch) / Proof of Stake vs. Proof of Work on: May 30, 2017, 02:50:29 PM
Ich fand diesen Artikel von Christoph Bergmann zur Zukunft von Ethereum ganz interessant

https://bitcoinblog.de/2017/05/30/ethereum-der-winter-naht/

Selbst bin ich von PoS nicht ueberzeugt, deswegen habe ich ein wenig im Internet recherchiert und fand diesen, nun fast ein Jahr alten, aber trotzdem interessanten Artikel:

https://blog.sldx.com/whats-wrong-with-proof-of-stake-77d4f370be15

Und der Artikel bestaetigt unter anderem auch meine Meinung, naemlich dass PoW eben dadurch, dass die Valdierung der Bloecke Energie kostet, den Coins zumindest einen Mindestwert mitgibt. Ja, man mag zwar argumentieren, dass das Ausheben von Loechern ohne Sinn und Verstand auch Energie kostet, die Loecher dadurch aber keinen Wert bekommen. Bitcoin ist aber kein Protokoll ohne Sinn und Verstand, das Protokoll selbst hat naemlich einen Nutzwert, so wie Gold einen (geringen) Nutzwert hat und zudem noch selten ist. Ergo ist der Vergleich vom minen von Bitcoins und dem sinnlosen Ausheben von Loechern der Vergleich von Aepfel und Birnen.

Interessant ist nun was passiert, wenn Ethereum auf PoS umgestellt wird, wird der Preis fallen, wird er steigen oder wird schlicht gar nichts passieren? Was meint ihr?
Pages: [1] 2 3 4 5 6 »
Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!