Bitcoin Forum
April 26, 2024, 04:15:29 PM *
News: Latest Bitcoin Core release: 27.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: [1]
  Print  
Author Topic: Verständnisfrage zur technischen Abfolge - Blockgenerierung  (Read 1239 times)
R5D4 (OP)
Newbie
*
Offline Offline

Activity: 4
Merit: 0


View Profile
July 02, 2014, 03:47:00 PM
 #1

Hallo,

ich habe eine Frage zur technischen Abfolge...

Genauer gesagt geht es um die im Netzwerk ausstehenden Transaktionen nachdem ein Computer die Aufgabe wie sich der Block berechnen kann gelöst hat...

Soweit ich das verstanden habe werden alle ausstehenden Transaktionen in der Wallet ? gespeichert, und diese wird Öffentlich auf alle Rechner im Netzwerk verteilt, die den Client am laufen haben...

Ein Freund von mir sagt:
"Der PC der den letzten Block berechnet hat, schlägt den anderen Computern im Mining-Netzwerk dann eine neuen Block vor, worüber diese dann im einem Konsensverfahren abstimmen...."

- abgesehen davon, das ich nicht wüsste, wie man eine Konsensfunktion programmieren könnte, - bin ich mir auch unsicher darüber, ob dieser Computer dann als "Erster" den anderen die neue Blockchain vorschlägt (so ala wie wärs damit) - und die anderen Pc´s sagen dann: ja geht, oder: keine lust, etc...

Soweit ich das begriffen habe, wird die neue Blockchain von den Clienten festgelegt ? - Also sobald z.b. 1024 Transaktionen zusammen sind, wird dieser nach Prioritäten geordnet und dann an die Miner gereicht - die dann als Präfix ? die BTCNummer des letzten "Erfolgsminers" anhängen ? - oder wird das auch als Transaktion zuerst an die Clienten gereicht, und dann als Block zurückgesendet ?

Auch ging es noch darum das wenn das Script Abweichende Lösungen im Netzwerk tolerieren würde ? - Und der Erfolgreiche Miner den anderen eine neue Blockchain erst vorschlägt, und sie Manipuliert, das die anderen Rechner dieser zustimmen würden... - oder das ein 51% Angriff (51% der Miningpower, nicht 51% der Verbindungen) auf diese weise Erfolgreich wäre... - allerdings weis ich nicht, was passiert, wenn z.b. ein fehlerhafter PC immer sendet: Lösung ist nicht Richtig ! Wallet stimmt nicht überein ! - ob dann ein Admin einen Fehlerlog bekommt und eventuell den Defekten PC nach manueller Überprüfung aus dem Netzwerk schmeißt, - oder schon Fehlertoleranzen (man erinnere sich an die eine CPU die Pi falsch berechnete) eingebaut sind, und wie hoch diese sind...

Im Prinzip also eine einfache If / If Not then / Else Funktion - was passiert also bei If Not ?

Danke für erhellende Antworten...
R5D4
1714148129
Hero Member
*
Offline Offline

Posts: 1714148129

View Profile Personal Message (Offline)

Ignore
1714148129
Reply with quote  #2

1714148129
Report to moderator
1714148129
Hero Member
*
Offline Offline

Posts: 1714148129

View Profile Personal Message (Offline)

Ignore
1714148129
Reply with quote  #2

1714148129
Report to moderator
Transactions must be included in a block to be properly completed. When you send a transaction, it is broadcast to miners. Miners can then optionally include it in their next blocks. Miners will be more inclined to include your transaction if it has a higher transaction fee.
Advertised sites are not endorsed by the Bitcoin Forum. They may be unsafe, untrustworthy, or illegal in your jurisdiction.
shorena
Copper Member
Legendary
*
Offline Offline

Activity: 1498
Merit: 1499


No I dont escrow anymore.


View Profile WWW
July 04, 2014, 10:41:42 AM
 #2

Hallo,

ich habe eine Frage zur technischen Abfolge...

eine? Wink Na mal sehen was ich tun kann.

Genauer gesagt geht es um die im Netzwerk ausstehenden Transaktionen nachdem ein Computer die Aufgabe wie sich der Block berechnen kann gelöst hat...

Soweit ich das verstanden habe werden alle ausstehenden Transaktionen in der Wallet ? gespeichert, und diese wird Öffentlich auf alle Rechner im Netzwerk verteilt, die den Client am laufen haben...

Die noch nicht bestätigten Transaktionen fliegen durch das Netzwerk der Nodes (z.B.: bitcoin core) bzw. werden in diesem Verteilt. Die Miner sammeln sie. Die Daten sind öffentlich in dem Sinne das jeder der Teil des Netzwerkes ist Transaktionen zum verteilen zugeschickt bekommt.


Ein Freund von mir sagt:
"Der PC der den letzten Block berechnet hat, schlägt den anderen Computern im Mining-Netzwerk dann eine neuen Block vor, worüber diese dann im einem Konsensverfahren abstimmen...."

Korrekt, der Miner oder Pool welcher einen Block gefunden hat der aktuellen Schwierigkeit (difficultiy) entspricht verteilt diesen genauso im Netzwerk wie alle anderen die Transaktionen. Die anderen Nodes im Netzwerk prüfen dann ob der Block korrekt ist. Unter anderem wird geprüft ob die benutzten Eingänge auch hätten benutzt werden dürfen ob die difficulty stimmt etc.

- abgesehen davon, das ich nicht wüsste, wie man eine Konsensfunktion programmieren könnte, - bin ich mir auch unsicher darüber, ob dieser Computer dann als "Erster" den anderen die neue Blockchain vorschlägt (so ala wie wärs damit) - und die anderen Pc´s sagen dann: ja geht, oder: keine lust, etc...

In etwa so: Hier neuer Block und hier hash vom Block. Guck hash is toll (passt zur difficulty). Die anderen gucken sich dann den Block an, finden nix zu meckern, prüfen ob der Hash stimmt und sagen: Super auf zum nächsten Block. 


Soweit ich das begriffen habe, wird die neue Blockchain von den Clienten festgelegt ?

Die Blockchain ist die Kette aller Blöcke. Jeder Block zeigt auf seinen Vorgänger. Die längste Kette ist die gültige.

- Also sobald z.b. 1024 Transaktionen zusammen sind, wird dieser nach Prioritäten geordnet und dann an die Miner gereicht - die dann als Präfix ? die BTCNummer des letzten "Erfolgsminers" anhängen ? - oder wird das auch als Transaktion zuerst an die Clienten gereicht, und dann als Block zurückgesendet ?

Ähhh, ich kann Dir nicht folgen. Die Transaktionen werden nicht geordnet. Jede Transaktion alleine wird im Netzwerk verteilt. Die Miner sind Teil des Netzwerks und kommen so an Transaktionen für die Blöcke. Es gibt da keinen Übergabepunkt zwischen "normalem Client" und Miner. Der "normale Client" war lange Zeit ein Miner, technisch ist da erstmal kein Unterschied.
Was meinst Du mit Präfix? Jeder Block enthällt eine Referenz auf den Block davor.


Auch ging es noch darum das wenn das Script Abweichende Lösungen im Netzwerk tolerieren würde ?

Abweichende Lösungen? Ja es ist schon möglich mehr als eine "Lösung" zu finden. Dann gibt es halt 2 aktuelle Blöcke und es ist noch nicht entschiede welcher davon Teil der zukünftigen Blockchain wird und welcher zum "Weisen" wird. Die jeweils längste Kette überlebt.

- Und der Erfolgreiche Miner den anderen eine neue Blockchain erst vorschlägt, und sie Manipuliert, das die anderen Rechner dieser zustimmen würden... - oder das ein 51% Angriff (51% der Miningpower, nicht 51% der Verbindungen) auf diese weise Erfolgreich wäre... - allerdings weis ich nicht, was passiert, wenn z.b. ein fehlerhafter PC immer sendet: Lösung ist nicht Richtig ! Wallet stimmt nicht überein ! - ob dann ein Admin einen Fehlerlog bekommt und eventuell den Defekten PC nach manueller Überprüfung aus dem Netzwerk schmeißt, - oder schon Fehlertoleranzen (man erinnere sich an die eine CPU die Pi falsch berechnete) eingebaut sind, und wie hoch diese sind...

Im Prinzip also eine einfache If / If Not then / Else Funktion - was passiert also bei If Not ?

Danke für erhellende Antworten...
R5D4

Ähm... der letzte Part ist mir zu konfus sorry. Is echt warm heute. Versuchs nochmal bitte Smiley

Im not really here, its just your imagination.
R5D4 (OP)
Newbie
*
Offline Offline

Activity: 4
Merit: 0


View Profile
July 04, 2014, 04:27:45 PM
 #3

Quote
:
Korrekt, der Miner oder Pool welcher einen Block gefunden hat der aktuellen Schwierigkeit (difficultiy) entspricht verteilt diesen genauso im Netzwerk wie alle anderen die Transaktionen. Die anderen Nodes im Netzwerk prüfen dann ob der Block korrekt ist. Unter anderem wird geprüft ob die benutzten Eingänge auch hätten benutzt werden dürfen ob die difficulty stimmt etc.

Vielen Dank fürs Antworten, - bin mir nur nicht sicher, ob Du mich richtig verstanden hast... - oder ob ich die Antwort verstehe - es geht nicht um den schon gelösten Block (der von den anderen via Hash-Check überprüft wird), sondern um den danach...

Also:
1 Unbestätigte Transaktionen werden via Nodes im Netzwerk verteilt
2 Ein Rechner im Mining Netzwerk löst die Aufgabe und sendet Lösung an andere Rechner
3 Andere Rechner bestätigen Lösung (Frage was passiert wenn ein oder mehrere PC´s widersprechen ?)
4 Der Rechner der die Aufgabe gelöst hat, generiert den neuen Block, und schreibt als erstes die Lösung des Letzten Blocks hinein (Mining-Belohnung)
5 Die anderen Pc´s im Netzwerk empfangen den Vorschlag ( ? verstehe nicht warum es ein Vorschlag ist, da das impliziert das die Zusammensetzung des Blocks  auch anders sein könnte) und Prüfen ob der Block korrekt ist - falls ja, beginnen Sie mit der Berechnung der Aufgabe - falls nicht dann ?

Frage: Ist es so, das eine einfache 51% "Mehrheit" zum "Überzeugen" reicht und zwar im Bezug auf die Rechenpower ?

Bsp1:
5 PC´s in einem CoinNetzwerk Minen - 4 Pc´s sind alte 4x86er mit 40 Mhz und einer ist ein 4Ghz 8 Kerner...
Wenn jetzt der 8 Kerner sagt die Lösung lautet XX und die anderen 4 sagen, ne Stimmt nicht, es ist XY - dann haben diese 4 Nichts zu sagen, weil der 8 Kerner mehr als 50% der Rechenpower hat... ?

Bsp2: Wenn 1 mal das CERN (ich gehe in diesem Beispiel davon aus, das es 51% der Rechenpower im Netzwerk hätte - was nicht sein muß) beschliesst, bei Bitcoin mitzurechnen, um danach via gefälschter Blockchain alle Transaktionen des Blocks an sich selbst zu überweisen - dann haben die anderen Nichts zu melden ?

Nochmal zu Punkt 4
Ist das so gewollt ? - Wo liegt der Vorteil ? - Wenn ich die Liste unbestätigter Transaktionen im Netzwerk schon habe, könnten doch auch alle Rechner sich den Block selber generieren, und dann nur überprüfen, ob Sie dieselbe Aufgabe Rechnen (diese Prüfung wäre nur um Übertragungsfehler auszuschliessen)
Warum - soll denn ein einziger Rechner Vorschreiben wie der neue Block aussieht - wenn die Daten dafür "Offen" im Netzwerk sind ?

mfg
R5D4

P.S. Mir fällt es einfach schwer in der Welt des Nicht-Quanten Computers - indem alles entweder Null oder Eins ist - in Begriffen wie "Vorschlägen" und "Konsens" zu denken - ein: [IF (Sonne Scheint) & (Wetter warm) = Warm und Sonnig] THEN GO TO (Badesee) IF NOT GO TO (Monitor) ist da viel klarer....
AwSuits
Member
**
Offline Offline

Activity: 111
Merit: 10


View Profile
July 04, 2014, 08:10:24 PM
 #4

Quote
:
Korrekt, der Miner oder Pool welcher einen Block gefunden hat der aktuellen Schwierigkeit (difficultiy) entspricht verteilt diesen genauso im Netzwerk wie alle anderen die Transaktionen. Die anderen Nodes im Netzwerk prüfen dann ob der Block korrekt ist. Unter anderem wird geprüft ob die benutzten Eingänge auch hätten benutzt werden dürfen ob die difficulty stimmt etc.

Vielen Dank fürs Antworten, - bin mir nur nicht sicher, ob Du mich richtig verstanden hast... - oder ob ich die Antwort verstehe - es geht nicht um den schon gelösten Block (der von den anderen via Hash-Check überprüft wird), sondern um den danach...

Also:
1 Unbestätigte Transaktionen werden via Nodes im Netzwerk verteilt
2 Ein Rechner im Mining Netzwerk löst die Aufgabe und sendet Lösung an andere Rechner
3 Andere Rechner bestätigen Lösung (Frage was passiert wenn ein oder mehrere PC´s widersprechen ?)
4 Der Rechner der die Aufgabe gelöst hat, generiert den neuen Block, und schreibt als erstes die Lösung des Letzten Blocks hinein (Mining-Belohnung)
5 Die anderen Pc´s im Netzwerk empfangen den Vorschlag ( ? verstehe nicht warum es ein Vorschlag ist, da das impliziert das die Zusammensetzung des Blocks  auch anders sein könnte) und Prüfen ob der Block korrekt ist - falls ja, beginnen Sie mit der Berechnung der Aufgabe - falls nicht dann ?

Frage: Ist es so, das eine einfache 51% "Mehrheit" zum "Überzeugen" reicht und zwar im Bezug auf die Rechenpower ?

Bsp1:
5 PC´s in einem CoinNetzwerk Minen - 4 Pc´s sind alte 4x86er mit 40 Mhz und einer ist ein 4Ghz 8 Kerner...
Wenn jetzt der 8 Kerner sagt die Lösung lautet XX und die anderen 4 sagen, ne Stimmt nicht, es ist XY - dann haben diese 4 Nichts zu sagen, weil der 8 Kerner mehr als 50% der Rechenpower hat... ?

Bsp2: Wenn 1 mal das CERN (ich gehe in diesem Beispiel davon aus, das es 51% der Rechenpower im Netzwerk hätte - was nicht sein muß) beschliesst, bei Bitcoin mitzurechnen, um danach via gefälschter Blockchain alle Transaktionen des Blocks an sich selbst zu überweisen - dann haben die anderen Nichts zu melden ?

Nochmal zu Punkt 4
Ist das so gewollt ? - Wo liegt der Vorteil ? - Wenn ich die Liste unbestätigter Transaktionen im Netzwerk schon habe, könnten doch auch alle Rechner sich den Block selber generieren, und dann nur überprüfen, ob Sie dieselbe Aufgabe Rechnen (diese Prüfung wäre nur um Übertragungsfehler auszuschliessen)
Warum - soll denn ein einziger Rechner Vorschreiben wie der neue Block aussieht - wenn die Daten dafür "Offen" im Netzwerk sind ?

mfg
R5D4

P.S. Mir fällt es einfach schwer in der Welt des Nicht-Quanten Computers - indem alles entweder Null oder Eins ist - in Begriffen wie "Vorschlägen" und "Konsens" zu denken - ein: [IF (Sonne Scheint) & (Wetter warm) = Warm und Sonnig] THEN GO TO (Badesee) IF NOT GO TO (Monitor) ist da viel klarer....

Hola ,

Zu Punkt 5 :
Wenn jemand einen Block löst ist die Blockchain nun um 1nen Block länger.Da immer die "längste"(bzw. rechenintensivste) Blockchain die gültige ist , werden nun alle anderen Miner auf ihr aufbauen. Dies machen sie deshalb da es zu ihrem eigenen Vorteil ist , denn würden sie dies nicht machen müssten sie zwei Blöcke hintereinander lösen um die längste Kette zu haben.

Es findet keine Wahl statt ob der Block gültig ist oder nicht und es muss auch kein Konsens gefunden werden. Es ist eine fixe Regel im Bitcoin Protokoll , dass die "längste" Blockchain immer die gültige ist.

Zur Frage : Ja.

Zu Bsp 1 : Wie gesagt es gibt keine Abstimmung , der 8 Kerner hat jedoch aufgrund seiner Rechenpower die Möglichkeit die anderen Ketten zu ignorieren da er früher oder später immer die längste Kette erzeugen wird. Somit kann er sich alle Belohnungen einheimsen.

Zu Bsp 2 : Nein dies ist nicht möglich . Wo die Bitcoins hingehen entscheidet einzig und allein der Sender der Coins mit Hilfe einer digitalen Signatur die er mit Hilfe seines private Key generiert .



Es gibt bestimmte Dinge die möglich sind bei einer 51 % Attacke und Dinge die nicht möglich sind wie obiges.

Möglich : Auswahl welche Transaktionen in einen Block aufgenommen werden.
             Komplettes lahmlegen des Netzwerkes in dem dass der Angreifer zwar Blöcke erzeugt 
             aber keine Transaktionen "hineinfügt" .

Nicht Möglich :
- Bitcoins von anderen Leuten versenden .

Zu diesem Thema (>50 %) gibt es ein paar gute Artikel.


Falls Englisch kein Problem für dich  ist würde ich dir dieses Video empfehlen :

https://www.youtube.com/watch?v=Lx9zgZCMqXE

Meiner Meinung nach das beste Bitcoin Video das es gibt.
shorena
Copper Member
Legendary
*
Offline Offline

Activity: 1498
Merit: 1499


No I dont escrow anymore.


View Profile WWW
July 05, 2014, 08:31:43 AM
 #5

Quote
:
Korrekt, der Miner oder Pool welcher einen Block gefunden hat der aktuellen Schwierigkeit (difficultiy) entspricht verteilt diesen genauso im Netzwerk wie alle anderen die Transaktionen. Die anderen Nodes im Netzwerk prüfen dann ob der Block korrekt ist. Unter anderem wird geprüft ob die benutzten Eingänge auch hätten benutzt werden dürfen ob die difficulty stimmt etc.

Vielen Dank fürs Antworten, - bin mir nur nicht sicher, ob Du mich richtig verstanden hast... - oder ob ich die Antwort verstehe - es geht nicht um den schon gelösten Block (der von den anderen via Hash-Check überprüft wird), sondern um den danach...

Also:
1 Unbestätigte Transaktionen werden via Nodes im Netzwerk verteilt
2 Ein Rechner im Mining Netzwerk löst die Aufgabe und sendet Lösung an andere Rechner
3 Andere Rechner bestätigen Lösung (Frage was passiert wenn ein oder mehrere PC´s widersprechen ?)

Die Worte "Aufgabe" und "Lösung" sprechen für mich dafür das Dir nicht ganz klar ist was beim Minen eigentlich passiert. Vielleicht ist es Dir auch klar. Ich mach das jetzt trotzdem nochmal um sicher zu gehen. Weiter unten war da nämlich was unklar.
"Die" Lösung für einen Block gibt es nicht. Es gibt unglaublich viele Lösungen und alle sind gleich richtig. Die Difficulty sagt nur aus das der Hash kleiner als ein bestimmter Wert sein muss. Also zum Beispiel muss der Hash 3 führende Nullen haben. Das können also auch 4, 5, 17 oder 23 führende Nullen sein. Diesen Hash zu finden ist keine Rechenaufgabe im eigentlichen Sinn, zumindest ist der Ablauf nicht deterministisch. Du kannst Dich nicht hinsetzen und von x nach y rechnen um einen Hash mit z führenden Nullen zu bekommen. Du musst probieren. Das ganze ist also eher eine Lotterie. Weil Computer aber so feine Rechner sind wird das Minen gerne als "Lösen einer komplexen mathematischen Aufgabe" dargestellt. Das ist leider grober Unfug. Sha256 ist keine komplexe Aufgabe. Das kann theoretisch jeder Oberstufenschüler mit nem Taschenrechner. Es ist nur unglaublich nervig das per Hand zu machen Wink
http://en.wikipedia.org/wiki/SHA-2#Pseudocode


4 Der Rechner der die Aufgabe gelöst hat, generiert den neuen Block, und schreibt als erstes die Lösung des Letzten Blocks hinein (Mining-Belohnung)

Erst wird der Block gebildet, dann der Hash davon gebildet. Wenn der Hash passt gilt der Block als "gelöst" (siehe Ausführungen oben). Man kann da nicht hinterher noch was reinschieben, das würde den Hash drastisch ändern und vermutlich ist der dann nicht mehr korrekt. Das macht eine gute Hashfunktion aus. Wenn sich 1 bit vom Input ändert, sieht der Hash komplett anders aus.

Bsp.:

sha256(I WANT TO BELIEVE)= 6a3e8cd0ccbd6a879bc385fedf44493e3041c26f8cff59aff8d7ba29a36cf674
sha256(I WANT TO BELIEVF)= 8433098ee2446d9579c0ec369ba9e1b8e958779f2e9db88cb0c8249fc601a830

Die Belohnung gibt es auch nicht sofort. Es dauert 120 Blöcke (~ 20 Std.) bis "neue" coins ausgegeben werden können.


5 Die anderen Pc´s im Netzwerk empfangen den Vorschlag ( ? verstehe nicht warum es ein Vorschlag ist, da das impliziert das die Zusammensetzung des Blocks  auch anders sein könnte) und Prüfen ob der Block korrekt ist - falls ja, beginnen Sie mit der Berechnung der Aufgabe - falls nicht dann ?

Richtig, es kann beliebig viele korrekte Blöcke geben. Nimm eine der Transaktionen raus und finde trotzdem einen gültigen Hash, dann ist der Block auch in Ordnung, auch "korrekt", wird auch vom Netzwerk akzeptiert.
Falls nicht? Wieso sollte der nicht akzeptiert werden?
Entweder ist der Hash nicht korrekt, dann darf der Block nach Protokoll nicht akzeptiert werden. Sonst könnte ich einfach auf meinem Telefon Blöcke basteln und keiner könnte mich dran hindern.
Oder alternativ hat jemand einen manipulierten Client der die Blöcke nicht akzeptiert. Das hat aber nur Auswirkung auf diesen Client (und ggf. andere die keine Verbindung zu anderen Clients haben). Das ist also ein bisschen komischer Angriff, weil man sich damit aus dem Netz zieht. Da klingt nach einem "bockiges Gör"-Angriff. Ich stell mich in die Ecke und sag ihr seid alle doof ich mach nicht mehr mit. Alle anderen gucken kurz, sagen ok und machen weiter. No harm done Wink

Frage: Ist es so, das eine einfache 51% "Mehrheit" zum "Überzeugen" reicht und zwar im Bezug auf die Rechenpower ?

51% der Rechnenpower bedeutet das die meisten Blöcke von Dir (CERN, NSA, etc.) kommen. Du hast also maßgeblichen Einfluss auf das Netzwerk und welche Blöcke in der Blockchain sind. Wie AwSuits schon geschrieben hat erlaubt das einige Angriffe. DoubleSpend (eigene Coins "nochmal" ausgeben) ist dabei der Angriff vor dem die meisten Angst haben. Da dies aber vermutlich den Preis negativ beeinflussen würde, gehen viele davon aus das ein solcher 51% Angriff dem Angreifer am meisten schadet. Ich hab keine Zahlen im Kopf wieviel 124 PH/s (aktuelle Rechenleistung des Netzwerks - um 50% zu erreichen muss der Angreifer mindestens soviel haben wie alle anderen zur Zeit) kosten würden. Die allgemeine Annahme zur Zeit ist: da ist kein Geld mit zu gewinnen; es lohnt sich mehr nicht zu manipulieren und 50% aller coins einzusammeln.

Bsp1:
5 PC´s in einem CoinNetzwerk Minen - 4 Pc´s sind alte 4x86er mit 40 Mhz und einer ist ein 4Ghz 8 Kerner...
Wenn jetzt der 8 Kerner sagt die Lösung lautet XX und die anderen 4 sagen, ne Stimmt nicht, es ist XY - dann haben diese 4 Nichts zu sagen, weil der 8 Kerner mehr als 50% der Rechenpower hat... ?

Genau genommen würde das zu einem "Fork" führen. Die 4 alten Klapperkisten machen Ihr eigenes Netzwerk auf das auch Bitcoin heißt aber sonst nicht viel mit dem modernen Rechner zu tun hat. Es gibt dann sozusagen 2x Bitcoin. Da ist dann die Frage welches sich durchsetzen wird. Das gab es in der Vergangenheit https://bitcoin.org/en/alert/2013-03-11-chain-fork
und wird es vermutlich auch nochmal geben.

Wenn nicht alle nach den selben Regeln spielen teilt sich das Netzwerk auf.


Bsp2: Wenn 1 mal das CERN (ich gehe in diesem Beispiel davon aus, das es 51% der Rechenpower im Netzwerk hätte - was nicht sein muß) beschliesst, bei Bitcoin mitzurechnen, um danach via gefälschter Blockchain alle Transaktionen des Blocks an sich selbst zu überweisen - dann haben die anderen Nichts zu melden ?

Lt. Top500 http://en.wikipedia.org/wiki/TOP500 ist der Leistungsfähigste Rechner zur Zeit der chinesische Tianhe-2 http://en.wikipedia.org/wiki/Tianhe-2 mit 33 PFLOPS. Das klingt jetzt erstmal viel, aber die benutzen auch nur CPUs. Es gibt hier
https://bitcointalk.org/index.php?topic=52303.msg624247#msg624247
einen alten Thread wo da mal drauf eingangen wurde. Im Endeffekt ist es nicht zu vergleichen. Aber wenn wir die GPU dort mal nehmen. Haben wir 700MH/s bei 2700 GFLOPS. Unsere ~34 Millionen GFLOPS vom Tianhe-2 sind also magere 8,5 TH/s.
ASICs sind halt Spezialhardware.


Nochmal zu Punkt 4
Ist das so gewollt ? - Wo liegt der Vorteil ? - Wenn ich die Liste unbestätigter Transaktionen im Netzwerk schon habe, könnten doch auch alle Rechner sich den Block selber generieren, und dann nur überprüfen, ob Sie dieselbe Aufgabe Rechnen (diese Prüfung wäre nur um Übertragungsfehler auszuschliessen)
Warum - soll denn ein einziger Rechner Vorschreiben wie der neue Block aussieht - wenn die Daten dafür "Offen" im Netzwerk sind ?

Ja das ist gewollt. Die Schwierigkeit einen neuen Block zu finden sorgt dafür das es auch schwierig ist alte Blöcke zu verändern.

mfg
R5D4

P.S. Mir fällt es einfach schwer in der Welt des Nicht-Quanten Computers - indem alles entweder Null oder Eins ist - in Begriffen wie "Vorschlägen" und "Konsens" zu denken - ein: [IF (Sonne Scheint) & (Wetter warm) = Warm und Sonnig] THEN GO TO (Badesee) IF NOT GO TO (Monitor) ist da viel klarer....

Aber es ist doch genau so binär

IF [(HASH VALUE < TARGET(DIFFICULTY)) & (TXs IN BLOCK ARE VALID)] THEN (BLOCKCHAIN = BLOCKCHAIN + BLOCK)
ELSE [keep working on current block]

also solange keiner anfängt den Client zu manipulieren. Aber dann hat man halt Litecoin, Dogecoin, TittiCoin oder MyPersonalCoin und nicht mehr Bitcoin.

Im not really here, its just your imagination.
Pages: [1]
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!