Elektron-Samen Zweck, für MultiSig Wallet

Ich bin neugierig, was genau geschützt ist, indem die Samen, Elektron erzeugt für eine multisig wallet. Mein wissen über die Protokoll-Implementierung ist Recht einfach, also bitte korrigieren Sie mich, wo ich bin falsch oder unvollständig.

Wie ich es verstehe nach der Lektüre multisig Bitcoin der harte Weg: Verständnis raw P2SH multisig Transaktionen, eine P2SH multisig nicht seinen eigenen privaten Schlüssel, es hat einen einlösen Skript, das ist reproduzierbar, indem jeder, der weiß, die öffentlichen Schlüssel der beteiligten, Ihrer Reihenfolge in das Skript, und wie viele von Ihnen verbringen die belastete Münzen. (Basierend auf diese Antwort, wie es scheint, Elektron folgt BIP45 zu erlauben, deterministische Reihenfolge der Schlüssel, so wissen, Ihre Bestellung würde nicht wichtig sein.)

Die P2SH multisig ist dann eine Hash-version des einlösen-script, welches, abgesehen von der Bereitstellung Kürze, blendet den öffentlichen Schlüssel und die Anzahl ausgegeben werden müssen, die beteiligt sind in den erlösen Skript. Nach address generation, so lange wie jeder Unterzeichner hält verfolgen der Ihren privaten Schlüssel, gibt es extra private Informationen zu schützen?

Eine Verschleierung von element zu P2SHs in Electrum, insbesondere der Einsatz von "master-öffentlich-Schlüssel" als ein-eher als einfache öffentliche Schlüssel. Wie funktioniert Elektron entscheiden, welche generierten öffentlichen Schlüssel zu verwenden, da die Eingänge zu den erlösen Skript? Ist es das, was geschützt ist, die durch den Samen?

Punkte der Verwirrung:

  • Was ist geschützt durch die Elektron Samen für eine multisig-Adresse?
  • Wenn es das einlösen Skript—, deren Geheimhaltung schützt die öffentlichen Schlüssel der beteiligten mit der P2SH Adresse—sollte es nicht möglich sein, sich zu regenerieren, wenn es Zeit ist zu verbringen die Mittel, und ersparen dem Anwender die Last der Bewachung anderen Nachkommen?
  • Wie funktioniert Elektron erzeugen einen einlösen script von master public keys?
+563
Whirlie 24.06.2010, 03:45:28
19 Antworten

Ich mag Bitcoin für seine Benutzerfreundlichkeit und Sicherheit. Er macht "Geld" übertragen schnell und einfach, aber eine Menge Leute haben Angst, es zu benutzen, weil von dessen Volatilität, Wäre es möglich, erstellen Sie eine Währung mit einem system erzwingt, dass ein stabiler Wert?

+768
tchimari 03 февр. '09 в 4:24

Bitcoin-mining ist nicht mehr möglich, selbst mit solchen high-end-hardware wie deiner. Es heutzutage erfordert spezielle ASIC-mining-Ausrüstung. Die Leistung der angeschlossenen Bergleute gemessen in Hash pro Sekunde. Dies bedeutet, wie viele hashing-Operationen der Art erforderlich, die in Bitcoin ist, die Ausrüstung zu tun in der Lage pro Sekunde. Die schnellsten ASIC mining-Einheiten produzieren derzeit ein paar Terra-Hash pro Sekunde, während Ihre Grafikkarte nicht in der Lage sein, um die Ausgabe mehr als ein paar Mega-Hash pro Sekunde. Wenn Sie haben zu zahlen für Strom, das heißt, Sie wird es nie schaffen, einen Gewinn, so gehen Abbildung.

Wenn das mining von bitcoins sind Sie nur zufällig auf der Suche nach Lösungen für ein Kryptographisches puzzle, das ausgelegt ist, um das ganze Netzwerk über 10 Minuten zu lösen im Durchschnitt. Es gibt keine Garantie, wie viele Hashes, die Sie benötigen, um zu berechnen, bevor man eine gültige Lösung. Gilt dies nur beim solo-mining jedoch. Es wird daher dringend empfohlen, dass Sie sich bei einem pool machen keinen Gewinn. Ein pool verteilt die Arbeit um das Rätsel zu lösen, um seiner teilhaftig. Beim pool-mining, kann der pool berechnen Sie Ihre voraussichtliche Einkommen basierend auf Ihrem Anteil an der Gesamt-hashrate auf den pool.

Wollen Sie mir mit Ihrer gpu an, es gibt 100 von Altcoins, die Unterstützung von GPU-mining und sind noch etwas profitabel zu mir.

+745
Jim Van Fleet 09.04.2011, 19:56:50

Das problem ist, dass Sie die Vermischung der string, der die hexadezimale Darstellung des bytes des block-header, nicht die bytes des block-header selbst. Sie müssen die hash-bytes von dem block-header selbst.

Sie benötigen, um alles als byte-array, und nicht einen string. So hätten Sie so etwas wie dies für den gesamten block-header alle zusammen:

Byte[] block_header = {0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 
 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3b, 0xa3, 0xed, 0xfd,
 0x7a, 0x7b, 0x12, 0xb2, 0x7a, 0xc7, 0x2c 0x3e, 0x67, 0x76,
 0x8f, 0x61, 0x7f, 0xc8, 0x1b, 0xc3, 0x88, 0x8a, 0 x 51, 0x32,
 0x3a, 0x9f, 0xb8, 0xaa, 0x4b, 0x1e, 0x5e, 0x4a, 0x29, 0xab,
 0x5f, 0x49, 0xff, 0xff, 0x00, 0x1d, 0x1d, 0xac, 0x2b, 0x7c};
+736
Marny 23.04.2015, 19:00:53

Ich habe ein einziges Passwort und yubikey auf meinem Konto an blockchain.info.

Wenn ich versuche zu importieren, die Brieftasche.aes.json - Datei passiert nichts.

Wenn ich wählen Sie die Datei importieren, MultiBit zeigt nie die "Anzahl der Tasten "oder" Replay-Datum', so stellte ich in mein Passwort und klicken Sie auf "Unlock" klicken Sie dann auf "Importieren Sie einen Privaten Schlüssel".

Die Bitcoin-Adressen, die in meinem Konto nie zeigen, bis auf das entweder im sende-oder Anfrage-tabs.

Ich habe auch versucht, den Import der unverschlüsselten base58 json-Datei aus blockchain.info und es hat auch das gleiche Verhalten (speichern der Eingabe meines Kennworts).

Könnten Sie bitte zeigen, wie export-mein Portemonnaie aus blockchain.info zu MultiBit?

+677
Niclas Kristensen 25.07.2017, 16:07:30

Ich bin derzeit auf der Suche in die Bitcoin-Skript. Ich möchte, um eine Transaktion zu erzeugen, mit einem Ausgang mit OP_RETURN und einige Daten, und einem Ausgang, die Auszahlung von Münzen, um einige Adresse. Ich bin verwirrt, tut OP_RETURN markieren Sie die gesamte Transaktion als ungültig oder nur der Ausgang.

Ich bin vor allem verwirrt, weil das wiki ist nicht klar zu diesem Thema: https://en.bitcoin.it/wiki/Script#Flow_control (sagt auch die ganze Transaktion als ungültig markiert) https://en.bitcoin.it/wiki/OP_RETURN (sagt nur die Ausgabe ist als ungültig markiert)

+640
LILkillaBEE 19.08.2014, 18:46:10

Wenn ich aus irgendeinem Grund eine falsche übertragung an einen unbekannten blockchain-Konto, wie kann ich wissen, wer das ist gehört?

In der erste Ort, den ich denke, es ist unwahrscheinlich, dass eine "falsche überweisung", weil die Blockchain-Adresse ist nicht etwas, das Sie machen können, typo-Fehler. Ich bin sehr misstrauisch, wie die Menschen übertragen können meine btc aus, ohne meine Erlaubnis.

Vielen Dank für die Antworten.

+600
Rich Bidon 22.12.2011, 08:56:38

Ja, es ist möglich. Sie können kaufen mehrere Münzen, einschließlich der von dir erwähnten Strich bei cex - https://cex.io/dash-usd. Übrigens xrp ist auch dort aufgeführt.

+437
Luke Burgess 19.10.2017, 01:12:13

Eine optimale hash-rate hängt nicht nur von den gesendeten Parameter zu cgminer aber auch auf, wie wurde dieses Programm kompiliert, wenn es 32bits/64bits, und der OS-Konfiguration.

Die besten Ergebnisse die ich gesehen habe sind mit Gentoo Linux - wie Sie vielleicht wissen, mit dieser Distribution Sie erste stärket Ihre spezifischen hardware-Konfiguration und kompilieren Sie alles aus dem code, also die Optimierung aller unserer software für die hardware, die Sie haben, um die meisten Wert von ihm Weg.

Etwas, das Sie tun können, ohne die esoterischen route von OS Optimierungen, könnten Sie versuchen, ändern der GPU-mem-clock, als auch für (leicht) übertakten. In der Regel, wenn Sie auf den Punkt des abnehmenden Ertrags mit der Intensität, thread-concurrency und work unit sind die nächsten Werte zu optimieren.

Wenn Sie haven ' T Lesen Sie die "README" - Datei von Con Kolivas selbst, wenn er über die Litecoin er skizziert eine Optimierung des Algorithmus, in dem Sie zunächst einen Schweiß Punkt mit Intensität, dann mit einem anderen Wert, dann noch eine... endlich mal mem-Takt und übertakten, er sagt, Sie extrahieren Sie die beste Leistung, die Weg - ein solcher Ansatz ist gültig für alle scrypt basierenden coins.

+418
DakDe 10.01.2018, 05:54:50

Gemäß der Erklärung hier zu sehen: https://github.com/decred/atomicswap

Der Vertrag ist gültig für eine bestimmte Zeit (Beispiel bis 48h) und damit die Partei B zu erholen, die fand, er braucht das Geheimnis, dass mit der Veröffentlichung auf der Kette, nachdem die Partei A hat die Münzen einlösen auf den Vertrag an.

Soweit ich das verstanden habe, dauert es einige Zeit für die Partei B eigentlich erholen das Geheimnis von der Kette und dann die Münzen einlösen.

Was passiert, wenn Eine Partei warten, die letzten Sekunden (sagen wir 5 Sekunden) vor Ablauf der Vertragslaufzeit einlösen der Münze, die nicht genügend Zeit für die Partei B zur Tilgung seiner Münze, bevor der Vertrag Ablauf, in dem Fall wäre es erstattet Partei Eine wie auch immer Partei B Münzen.

Ist das Verständnis richtig und dieser Punkt gültig?

Ist es reparierbar, durch Einstellung der verschiedenen Vertrags-Ablauf, sagen Partei, die Einen Vertrag brauchen würde, längere Ablaufzeit, um zu gewährleisten Partei B ha-Zeit, um die Münzen einlösen?

+402
Ruth Bingham 26.10.2014, 16:18:33

Eines der beliebtesten trading sites ist coinbase.com. Dort können Sie sich anmelden und kaufen und verkaufen - sollte einfach sein. Natürlich gibt es andere Websites als auch.

+366
Kathryn Clarke 14.12.2011, 13:06:30

Bitcoins sind kostengünstig zu kaufen, die aus vielen verschiedenen Währungen (D. H. die Umwandlung Gebühren niedrig sind), so haben Sie das Potenzial, um viele Finanz - & Einzelhandel Werkzeuge zur Verfügung, um ein viel größeres Publikum. Dazu gehören Aktien, Anleihen, Rohstoffe sowie traditionelle Einzelhandel.

Bitcoins haben auch das Potenzial zu ändern, wie der Künstler (in einem sehr weiten Sinne) Ihr Geld verdienen. Stell dir vor, wenn Sie den "Gefällt mir" oder "+1" - Schaltfläche auch gespendet von 0,0001 bitcoins der Autor von den Inhalten.

Haben Sie einen Blick auf http://www.humblebundle.com/ (oder eine Zusammenfassung von dem, was es über die von wikipedia), um die Leistung von Freiwilligen Spenden.

Unabhängig von der Wirkung auf das BIP, doch dies hat sich als vorteilhaft für die Menschheit, das ist im wesentlichen das, was ökonomen verwenden Veränderungen des BIP versuchen zu Messen sowieso.

+304
A Lee 08.08.2018, 03:03:22

Insbesondere, gibt es eine Möglichkeit es so zu machen, dass es unmöglich ist, zu wissen, wenn eine Transaktion signiert mit einem Passwort korrekt ist, es sei denn, seinen Teil des abgebauten block? Auf diese Weise, auch wenn Ihr Kennwort erfordert nur 1,000,000 versucht zu knacken, benötigt der Angreifer, um mir 1.000.000 Steine bruteforce das Passwort?

Ich bin mir nicht bewusst jede kryptographische Konstruktionen, die ermöglichen würden Sie das tun. Die nächste Sache, die ich denken kann, ist die Erhöhung der Anzahl der Iterationen, die der Passwort-Ableitung-Funktion, so dass die Menge an Arbeit, die erforderlich ist, ähnlich wie der Aufwand für die Erstellung von einem block.

Obwohl es verlockend zu sagen, dass Blöcke mit Ungültiger Kennwörter sind ungültig (so unsere bösartige Bergmann nicht einmal zu halten, was er abgebaut), würde es die ehrlichen Bergleute in Gefahr, erhalten ungültige Transaktionen und verlieren Ihre Münzen zu abgebaut. Daher ungültige Transaktionen müssen einfach ignoriert werden.

Das nicht vollständig zu beheben Dinge, aber. Wenn jemand im Netzwerk versucht auf bruteforce ein Passwort durch die Abgabe viele der Transaktionen, die miner gehen, um zu sehen tausend ungültige Transaktionen für jede gültige ein. Dies bedeutet, dass die ehrlichen Bergleute fast nie verdienen Gebühren für den jeweiligen block, und dass legitime Transaktionen fast nie durch.


Sie haben die richtige Idee im Versuch zu verhindern, dass ein offline-Angriff auf ein Passwort, obwohl. Sie sollten sich auf Peer-Assisted-Taste Ableitung.

+242
conniek 08.09.2014, 01:43:22

Klingt wie Sie ein Konto erstellt/Geldbörse auf dieser website. Nur das vergessen.

Stattdessen eröffnen Sie Ihr eigenes bitcoin-qt, klicken Sie auf Erhalten, und kopieren Sie/fügen Sie die Adresse dort angegeben an den Wasserhahn website.

Im Allgemeinen will man immer der Eigentümer der Bitcoins selbst, nicht erstellen von Konten auf websites.

+212
Nicolas Lykke Iversen 14.07.2011, 05:43:35

Check-out Bitmixer.io, es hat sogar eine API.

Sie könnte das tun, aber ich persönlich denke, es ist eine viel bessere Idee, um ein neues wallet pro Kunde Transaktion. So, all Ihre Münzen sind nicht zusammen gruppiert, so dass die Kunden nicht wissen, wie viel Sie verdienen. Nur, wie viel Sie zu zahlen. Persönlich, meine app erstellt-Adressen durch die Coinbase API, die alle in einem bestimmten Konto benannt nach meiner app.

+162
Shahrez 30.12.2013, 00:47:03

Bitcoin-Transaktionen nicht bewegen Fonds von einer Adresse zu einer anderen.

Bitcoin ist Kern-Konzept-Münzen. Münzen entstehen durch Transaktionen, und kann willkürlich mit Wert. Münzen verbraucht werden, die von einer anderen Transaktion, indem Sie ausdrücklich unter Bezugnahme auf die Transaktion, die Sie erstellt. So, in einer Weise, Transaktionen Schmelzen einige input-Münzen zusammen (zu zerstören), und Schmieden neue aus (mit einem Gesamt-Wert, nicht den Wert übersteigen, der geschmolzene).

Beim erstellen einer Münze, die Sie zuweisen können, es an eine Adresse (in der Tat ein script, aber wir vereinfachen). Dies ist nur ein Authentifizierungs-Mechanismus auf die Spitze: um zu konsumieren, eine Münze zugeordnet-Adresse Ein, Unterschreiben Sie die Transaktion mit dem privaten Schlüssel entsprechend A.

Also um deine Frage zu beantworten: das ist nicht möglich. Um eine Transaktion zu erzeugen, müssen Sie wissen, die genauen Transaktionen, die zugewiesenen Münzen zu Adressen von Euch, und Ihr Wert.

+139
Travis Weston 21.07.2012, 08:43:55

Ändern Bitcoin, müssen Sie ändern das Verhalten des Bitcoin Core (oder eine andere vollständige Bitcoin-client) und dann die Menschen davon überzeugen zu verwenden, wird die geänderte version. Verschiedene Ebenen der Netzwerk-adoption erforderlich, für verschiedene Arten von änderungen:

Wenn die Veränderung nur verbietet bestimmte Transaktionen oder Blöcke, die zuvor erlaubt, dann ist die änderung angewendet werden kann, von der Mehrheit der mining-power. Nur Bergleute müssen, verwenden Sie die aktualisierte version von Bitcoin. Dies nennt man eine weiche Gabel. Zum Beispiel, P2SH war eine weiche Gabel ändern. Bergleute aktualisiert, die im Laufe von mehreren Monaten. Dies ging sehr reibungslos und die meisten Menschen gar nicht bemerken, es passiert.

Hinzufügen von Seitenketten wäre eine weiche Gabel ändern, als würden die meisten anderen feature-Verbesserungen. (Es ist vielleicht nicht offensichtlich, wie das Verbot bestimmter Transaktionen verwendet werden könnte, um neue Funktionen hinzuzufügen, aber es ist in der Regel möglich, wenn Sie vorsichtig über Sie.)

Wenn die änderung erlaubt, was vorher verboten, so ist jeder Nutzer individuell entscheidet, ob Sie das ändern oder nicht. Dies nennt man einen hard fork. Auch wenn jeder anderen Bitcoin-Nutzer und miner beschlossen, eine Erhöhung des Gesamt-BTC-Versorgung von 21 Millionen auf 50 Millionen, Sie könnte weiterhin mit der alten version des Bitcoin, und Sie würden von dieser änderung unberührt. Jedoch, Sie wäre nicht in der Lage zu tätigen, mit Menschen, die die modifizierte version. Als ein Ergebnis, diese Art von Veränderung ist wahrscheinlich allgemein akzeptiert zu werden, nur, wenn eine "wirtschaftliche Zweidrittelmehrheit" akzeptiert. Dies bedeutet, dass die Entscheidungen, die von größerer wirtschaftlicher Akteure (Börsen, Händlern, etc.) wichtiger als die Entscheidungen der regulären Bitcoin-Nutzer, weil mehr Menschen wird die Sorge darüber, ob oder nicht Sie können den Handel mit Ihnen. In einem hardfork, Bergleute sind nicht besonders wichtig.

Es wurden ein paar hardforks in der Vergangenheit, aber die meisten von Ihnen waren in der Reaktion auf kritische Fehler werden sofort behoben (wie der BDB-lock-limit-Fehler). Es gab noch nie eine hardfork das war umstritten.

(Beachten Sie, dass, wenn ein softfork ist erzwungen, von den Bergleuten aber nicht die meisten Benutzer, dann lösen es ist nicht eine hardfork ändern.)

Leichte Knoten wie MultiBit oder Electrum kann nicht die Durchsetzung der Regeln von Bitcoin richtig, so sind Sie von der Gnade der einige Knoten an anderer Stelle. Wie das genau funktioniert hängt vom client. Dies ist, warum Sie sollten wirklich einen vollen Knoten, wenn du kannst: es schützt Sie und stärkt die Wirtschaftskraft des gutes Netzwerk. Bitcoin Core ist bei weitem die am häufigsten verwendeten full-node-client, so dass der Bitcoin Core-Entwickler haben eine Menge Einfluss über jeden Vorschlag zu tun, eine hart/weiche Gabel ändern. Jedoch, Sie kann immer noch nicht einseitig ändern Sie das Netzwerk. Ihre änderungen bedürfen der Annahme durch Bergleute und/oder Benutzer für das Netzwerk zu ändern. Das Netzwerk kann auch geändert werden, indem Sie andere, wenn Sie bekommen können, um die Menschen zum Gebrauch Ihrer modifizierten Bitcoin-client.

Zur Klärung einige der häufigsten Missverständnisse:

  • Bitcoin ist keine Demokratie, entweder Minern oder Benutzer. Für die wichtigsten Dinge, Ihre Bitcoin-client tut, was richtig ist , egal was.
  • Das Bitcoin-Core-Entwickler haben nicht die absolute macht über Bitcoin.
  • Das Bitcoin-Core-Entwickler sind unabhängig von der Bitcoin Foundation, und der Bitcoin Foundation keine eigenen bitcoin.org.
+134
Jaeden Drew Wagers 27.01.2019, 19:04:05

Ja, das p2p-Protokoll selbst ist nicht Konsens-kritisch. Natürlich kann es nicht zwei völlig getrennte Netze, so haben Sie, um zu nehmen Pflege, um Brücken zwischen den beiden. Aber außer, dass Sie machen könnte ein sneakernet p2p-Netzwerk, wo die Menschen tauschen USB-sticks, wenn Sie mögen.

+92
user9074 27.02.2011, 03:36:04

Die "führenden Nullen" sind eine Vereinfachung. Die Schwierigkeit wird codiert, als Ziel ist im wesentlichen eine 256-bit Zahl. Da block-hashes produziert, SHA-256, Sie sind auch ein string von 256 bits. Wenn ein block Kandidaten-hash interpretiert als eine Zahl ist numerisch kleiner als der Ziel -, block-Kandidat ist ein Gültiger block ist.

+84
Fabio Ferrari 20.05.2018, 13:26:23

Wenn Scala ist nicht Ihre Sache, hier ist Jus12 code in Kotlin:

package com.meine.blockchainparser

import java.net.Authenticator
import java.net.PasswordAuthentication
import java.net.URL
import java.net.HttpURLConnection

Spaß main(args: Array<String>) {
 val rpcuser = "Benutzer"
 val rpcpassword = "Passwort"
 Authenticator.setDefault(Objekt : Authenticator() {
 überschreiben Spaß getPasswordAuthentication(): PasswordAuthentication {
 zurück PasswordAuthentication(rpcuser, rpcpassword.toCharArray())
}
})

System.aus.println(curl(
"http://localhost:8332",
"""{"Methode":"getblockchaininfo","params":[],"id":1,"jsonrpc":"1.0"}"""
))
}

Spaß curl(url:String, jsonEncodedString:String): String {
 val httpcon = URL(url).openConnection() als HttpURLConnection
httpcon.setDoOutput(true);
 httpcon.setRequestProperty("Content-Type", "application/json");
 httpcon.setRequestProperty("Accept", "application/json");
httpcon.setRequestMethod("POST");
httpcon.connect();

 val outputBytes = jsonEncodedString.toByteArray();

 httpcon.getOutputStream().Einsatz {
es.schreiben(outputBytes)
}
 val code = httpcon.getResponseCode()
 val isError = code >= 400 && code <= 500
 val text = (wenn (ISTFEHLER) httpcon.getErrorStream() else httpcon.getInputStream())
 ?.bufferedReader()?.Einsatz {
es.readText()
 } ?: "keine Verbindung"
 wenn (ISTFEHLER) throw Exception(
 "Bzw code $code. Fehler: ${text.nehmen(200)}"
)
 return text
}
+36
332432 30.05.2018, 00:05:13

Fragen mit Tag anzeigen