Skalierbarkeit Magic: BLS Signatures – Unitychain

Free Bitcoins: FreeBitcoin | BonusBitcoin

Coins Kaufen: Bitcoin.deAnycoinDirektCoinbaseCoinMama (mit Kreditkarte)Paxfull

Handelsplätze / Börsen: Bitcoin.de | KuCoinBinanceBitMexBitpandaeToro

Lending / Zinsen erhalten: Celsius NetworkCoinlend (Bot)

Cloud Mining: HashflareGenesis MiningIQ Mining


Die Blockchain-Skalierbarkeit war in den letzten Jahren wahrscheinlich eines der am häufigsten untersuchten Themen in Kryptoumgebungen. Ungeachtet ihres Engagements in der Kryptowelt ist fast jeder in dieser Phase der lächerlich geringen Anzahl von Transaktionen bewusst, die beispielsweise in Bezug auf VISA pro Sekunde von Bitcoin verarbeitet werden.

Um diese Aussage in Zahlen umzuwandeln, meldet Bitcoin Wiki, dass zum Zeitpunkt des Schreibens VISAs durchschnittliche Transaktionen pro Sekunde bei etwa 2.000 liegen, mit einigen Spitzenwerten bei etwa 4.000 täglich, während die maximale Kapazität auf etwa 60.000 Transaktionen pro Sekunde geschätzt wird. Mit anderen Worten, nicht einmal an verrückten Weihnachtseinkaufstagen besteht die Gefahr, dass VISA eingehende Transaktionsanfragen nicht mehr bearbeiten kann.

Auf der anderen Seite wickelt Bitcoin heute angeblich durchschnittlich 7 Transaktionen pro Sekunde ab, hauptsächlich aufgrund der Tatsache, dass die Blockgröße auf 1 MB beschränkt ist und es durchschnittlich etwa 10 Minuten dauert, einen Block abzubauen. Die gängigsten Blockchains und Kryptowährungen sind heutzutage unbestreitbar langsam und können daher nicht mit Zahlungsprozessoren wie VISA konkurrieren.

Der niedrige TPS-Wert wird direkt durch die Tatsache verursacht, dass VISA zwar auf einem zentralisierten System basiert, jedoch Tausende von Knoten erforderlich sind, um eine einzelne Transaktion in einem dezentralen Netzwerk wie Bitcoin vollständig zu validieren. Es könnte daher argumentiert werden, dass ein Weg zur Beschleunigung eines solchen Systems, in dem die Blockgröße festgelegt ist, darin bestehen kann, die Anzahl der für die Verarbeitung einer einzelnen Transaktion erforderlichen Knoten zu verringern.

Bitcoin ist langsam

Die Realität sieht jedoch ganz anders aus. In der Tat, die aktiver Ehrliche Knoten, die sich für mehr Sicherheit in einer dezentralen Umgebung einsetzen. Betrachten Sie zur Erklärung dieses Beispiel:
John hat die Augen verbunden und bekommt einen Marmor. Die Person, die ihm den Marmor gegeben hat, bittet ihn, herauszufinden, ob der Marmor schwarz oder weiß ist, ohne die Augenbinde abzunehmen. Wenn John die richtige Farbe auswählt, gewinnt er 1.000 $. Wenn er sich irrt, verliert er 1.000 Dollar. Da der Einsatz relativ hoch ist, ist John darum bemüht, eine zuverlässige Lösung für das Rätsel zu finden. Da er die Farbe jedoch nicht selbst überprüfen kann, muss er sich auf externe Parteien verlassen.
Folgende Optionen können in Betracht gezogen werden:
John könnte seinen Freund Alan fragen. John und Alan sind seit der ersten Klasse befreundet und John vertraut ihm sehr. Klingt so, als könnte nichts schief gehen. Nichts, es sei denn, Alan ist wütend auf John, weil John nicht zu seiner Party erschienen ist und ihm absichtlich die falsche Farbe sagt. Als zweite Möglichkeit könnte John stattdessen in die Innenstadt gehen und zufällige Personen nach der Farbe seines Marmors fragen, bis er ein ausreichend großes Muster angefragt hat, bei dem sich alle auf eine bestimmte Farbe einigen.

Dieses Beispiel erklärt den zugrunde liegenden Unterschied zwischen VISA und Bitcoin, d. H. Zwischen zentralisierten und dezentralisierten Systemen. Die Vor- und Nachteile beider Optionen liegen auf der Hand – während John die Farbe seines Marmors schnell erkennen kann, indem er Alan fragt, muss er sich voll und ganz auf die Loyalität seines Freundes verlassen. Wenn er andererseits eine große Anzahl von Personen nach dem Zufallsprinzip fragt, wird er ein zuverlässigeres und sichereres Ergebnis erzielen, allerdings auf Kosten von Zeit und Wiederholung.

Gleichfalls Zeichen (Wortspiel beabsichtigt), müssen dezentrale Plattformentwürfe auf eine größere Anzahl von Validierungsknoten angewiesen sein, um den Benutzern die Sicherheit ihrer Transaktionen zu gewähren.

Das Obige erklärt klar, dass die Skalierbarkeit in der Mehrzahl der Plattformen für nicht genehmigungspflichtige verteilte Hauptbücher möglicherweise nicht durch eine Verringerung der Anzahl von Validatoren pro verarbeiteter Transaktion erreicht wird. In der Vergangenheit hat Vitalik Buterin, einer der Mitbegründer von Ethereum, den Begriff „Blockchain Trilemma“ geprägt, um die offensichtliche Unmöglichkeit zu beheben, gleichzeitig Sicherheit, Skalierbarkeit und Dezentralisierung zu erreichen. In den letzten Jahren wurde das Trilemma jedoch von einer Reihe verteilter Sachverhalte auf unterschiedliche Weise angegangen.

Eine der bekanntesten Methoden, um dieses „Trilemma“ zu durchbrechen und Skalierbarkeit zu erreichen, bei gleichzeitiger Wahrung von Dezentralisierung und Sicherheit, ist der Einsatz cleverer Kryptografie und spezifischer aggregierter Signaturen. Dies wird speziell durch die sogenannte BLS-Signaturaggregation erreicht, bei der es sich um eine kürzlich von Boneh, Lynn und Shacham in einem Artikel aus dem Jahr 2001 um eine Implementierung eines Schemas für digitale Signaturen handelt.

Die Idee hinter diesem Konzept ist, dass es möglich ist, die Größe eines Blocks zu verkleinern, indem die Größe der Signatur reduziert und mehrere einzelne Signaturen zu einer einzigen, kürzeren komprimiert werden. Auf diese Weise können mehr Transaktionen in den Block aufgenommen werden. Obwohl es kompliziert erscheinen mag, ist es einfacher als es aussieht. Lassen Sie mich erklären…

Die gängigsten digitalen Signaturverfahren für Blockchains sind ECDSA, das auf Bitcoin implementiert ist, und Schnorr Signatures, die jedoch bis vor kurzem patentrechtlich geschützt waren.

ECDSA-Signaturen funktionieren im Allgemeinen gut. Sie sind schnell, sicher und relativ einfach zu bedienen. Sie haben jedoch ein großes Problem: Sie können nicht aggregiert werden. Dies bedeutet, dass wenn die Anzahl der Validierungsknoten für eine einzelne Transaktion von 1 auf 100 steigt, die gespeicherten Informationen um das 100-fache erhöht werden. Es ist klar, dass ECDSA-Signaturen nicht sehr effizient sind und daher möglicherweise der Blockchain-Skalierbarkeit widersprechen.

Schnorr-Signaturen hingegen ermöglichen die Zusammenfassung mehrerer Signaturen zu einer einzigen. Wenn sich jedoch die Anzahl der Validatoren erhöht, und insbesondere unter fehlertoleranten Bedingungen, wenn eine Signaturschwelle von m-out-n für die Validierung erforderlich ist, steigt die Größe des Merkle-Baums, auf dem Schnorr die Größe der Signaturaggregation aufbaut, sprunghaft an. Dadurch wird es ineffizient.

BLS-Signaturen lösen beide oben genannten Probleme. Sie werden oft als "magisch" bezeichnet, obwohl es sich nicht um Zaubersprüche oder Tränke handelt. Gut gestaltete Mathematik und Grafiken erklären diese mysteriöse „Magie“!

Die mathematischen Bestandteile einer BLS-Signatur sind:

  • Bilineare Paarungsfunktion: e: G0 * G1 → Gt
  • Hash-Funktion: H0: M → G0

Das Signaturschema wird wiederum durch drei Funktionen definiert:

  • KeyGen () → Wähle ein zufälliges α und setze h ß g1 (α) Ausgabe pk: = (h) und sk: = (α)
  • Vorzeichen (sk, m) → Ausgabe σ ß H (0) m α, die zu G0 gehört. Die Signatur ist ein einzelnes Gruppenelement
  • Überprüfen Sie (pk, m, σ) → ob e (g1, σ) = e (pk, H0 (m)) Ausgang «akzeptieren», sonst Ausgang «ablehnen»

Zwei Hauptkomponenten müssen definiert werden, um ihre zugrunde liegende Konstruktion zu verstehen:

  • Hashing auf die Kurve
  • (Elliptische) Kurvenpaarungen, auch bilineare Karten genannt

Im Gegensatz zu den meisten Schemata für digitale Signaturen, die den Hash-Algorithmus wie eine Zahl verwenden, verwenden BLS-Signaturen die Hash-Nachricht direkt als Generator. Mit anderen Worten, BLS-Signaturen verwenden einen speziellen Algorithmus, der direkt mit der Kurve hascht.

Quelle: https://medium.com/cryptoadvance/bls-signatures-better-than-schnorr-5a7fe30ea716

Dies impliziert, dass "spezielle" Kurven nur verwendet werden dürfen, um ein direktes Hashing auf den Graphen zu ermöglichen. Die Familie, zu der diese speziellen Kurven gehören, wird als "Pairing freundlicher elliptischer Kurven" bezeichnet.

Eine äußerst nützliche Eigenschaft, die solche Kurven anzeigen, wird als bilineare Eigenschaft bezeichnet und funktioniert wie folgt:

e (x * P, Q) = e (P, x * Q)

Mit anderen Worten, wir können die Multiplikatoren tauschen, ohne das Ergebnis zu verändern! Dies wird sich wiederum als nützlich erweisen, wenn es um die Überprüfung von BLS-Signaturen geht.

Auf der elliptischen Kurve würde die Signatur folgendermaßen aussehen:

Quelle: https://medium.com/cryptoadvance/bls-signatures-better-than-schnorr-5a7fe30ea716

Wie Sie sehen, ist der öffentliche Schlüssel einfach das Produkt der Generatorfunktion G mit dem privaten Schlüssel. Um die Signatur zu erhalten, ist es ausreichend, die Nachricht mit dem privaten Schlüssel zu multiplizieren.

Zur Überprüfung der Korrektheit der Signatur, die als Überprüfung der elliptischen Kurvenpaarung bezeichnet wird, werden nur die Nachricht und der öffentliche Schlüssel benötigt. Der Überprüfungsprozess funktioniert wie folgt:

e (P, H (m)) = e (G, S)

Dies gilt für die in den obigen Absätzen beschriebene bilineare Eigenschaft. Der Beweis der Verifikationsgleichung sieht folgendermaßen aus:

e (P, H (m)) = e (pk · G, H (m)) = e (G, pk · H (m)) = e (G, S)

BLS-Signaturen weisen zwei grundlegende Eigenschaften auf:

  • Effiziente Berechenbarkeit
  • Nicht-Entartung

Mit anderen Worten, BLS-Signaturen sind äußerst einfach zu verwenden (oder zu generieren) und äußerst schwer zu manipulieren. Dies ermöglicht eine hohe Effizienz bei der Erzeugung und eine verbesserte Sicherheit gegenüber anderen Schemata für digitale Signaturen.

Während die Aggregation von Schnorr-Signaturen n Kommunikationsrunden erfordert, können BLS-Signaturen dasselbe Ziel in nur zwei Kommunikationsrunden erreichen.

Da sich BLS-Signaturen direkt mit der Kurve verbinden, sind sie außerdem nicht auf Zufallszahlen jeglicher Art angewiesen, die die Gesamtsicherheit des Prozesses beeinträchtigen und beeinträchtigen können. Im Gegensatz zu anderen Schemata für digitale Signaturen wie ECDSA oder Schnorr, die für die Paarung mit der Kurve Zufallszahlen verwenden, ist der Prozess der Signaturerstellung bei BLS-Signaturen vollständig deterministisch

Am wichtigsten ist jedoch, dass BLS-Signaturen sehr einfach aggregiert werden können, d. H. Sowohl die einzelnen Signaturen als auch die einzelnen öffentlichen Schlüssel der einzelnen Prüfer in einer Transaktion können einfach zu einer einzigen, kürzeren Information kombiniert werden, indem sie einfach addiert werden.

Bei gegebenen Tripeln (pki, mi, σi) für i = 1,…, n kann jeder die zu G0 gehörenden Signaturen σ1,… σn zu einer kurzen aggregierten Signatur σ zusammenfassen, indem er Folgendes berechnet:

σ ← σ1… σn ∈ G0

Das Überprüfen einer Gesamtsignatur reduziert sich auf:

e (g1, σ) = e ((pk) 1, H0 (m1))… = e ((pk) n, H0 (mn))

Wenn alle Nachrichten gleich sind, wird die Überprüfung vereinfacht.

Obwohl es sich zweifellos um sehr elegante Werkzeuge handelt, sind BLS-Signaturen nicht frei von Fehlern. Obwohl die Signaturaggregation in BLS so einfach klingt, ist sie in Wirklichkeit gar nicht so einfach: Der Prozess der Signaturaggregation in BLS ist um Größenordnungen schwieriger als beispielsweise Schnorr-Signaturen. Aufgrund der Besonderheit der elliptischen Kurve ist die Überprüfung einer BLS-Signatur im Vergleich dazu ein relativ langsamer Prozess.

Quelle: https://blog.dash.org/bls-is-it-really-that-slow-4ca8c1fcd38e

Die obige Grafik zeigt die Überprüfungszeiten für ECDSA- und BLS-Signaturen (wenn keine Optimierung hinzugefügt wurde).

Es gibt jedoch immer Kompromisse, und bei Schnorr besteht der Kompromiss darin, dass die Signaturaggregation für eine große Anzahl von Knoten im Netzwerk äußerst komplex und verwirrend wird, insbesondere im Fall der Aggregation von m-aus-n-Signaturen, die Aus Gründen der Fehlertoleranz ist in der Regel der Fall zu bevorzugen.

Trotzdem sind BLS-Signaturen zum Zeitpunkt des Schreibens eine äußerst beliebte Methode für digitale Signaturen in der Crypto-Community. Dies liegt an der Tatsache, dass Blockchain-Communities zunehmend an Optimierungen arbeiten, die implementiert werden können, um BLS-Aggregatsignaturen zu einem viel schlankeren Tool zu machen. Solche Methoden werden in diesem Artikel jedoch noch nicht behandelt.

Schließlich unterliegen BLS-Signaturen Angriffen mit falschen öffentlichen Schlüsseln (eine ausführlichere Erklärung finden Sie im Abschnitt über Angriffe mit falschen öffentlichen Schlüsseln in diesem Dokument oder hier). Die Abwehr dieses Problems ist jedoch recht einfach und umfasst die folgenden Methoden:

  • Jeder Benutzer im Netzwerk muss für einen bestimmten öffentlichen Schlüssel die Kenntnis des entsprechenden geheimen Schlüssels nachweisen
  • Signieren verschiedener Nachrichten pro Benutzer
  • Hinzufügen von Nichtlinearität zum Schema
  • Eine modifizierte Implementierung von BLS-Signaturen, wie sie von Boneh et al. in einer Zeitung aus dem Jahr 2018.

Trotz seines zehnten Lebensjahres ist Bitcoin noch weit von einem vergleichbaren Durchsatz wie VISA entfernt. Dieses Hindernis für die Skalierbarkeit wird hauptsächlich durch dieselben Systemdesigns verursacht, die für Dezentralisierung und Sicherheit bei Bitcoin sorgen. Dies scheint darauf hinzudeuten, dass eine große Anzahl von Validatoren pro verarbeiteter Transaktion erforderlich ist, um die Sicherheit in einer dezentralen Umgebung zu gewährleisten. Signaturaggregationsschemata wie BLS und Schnorr könnten jedoch das Geheimnis für die Umkehrung dieses Problems bergen.

BLS-Signaturen können eine entscheidende Rolle bei der Lösung des Blockchain-Trilemmas spielen. Sie überholen frühere Systeme für digitale Signaturen an fünf Hauptfronten. Erstens ist es allgemein bekannt, dass ECDSA unter einem zugrunde liegenden Problem leidet: Wenn die Anzahl der Validierungsknoten zunimmt, wächst die Menge der Signaturinformationen linear damit. Durch die einfache Aggregation können BLS-Signaturen Tausende einzelner öffentlicher Schlüssel und Signaturen zu einer einzigen, kürzeren Information komprimieren. Zweitens, obwohl Schnorr-Signaturen in Bezug auf Signaturaggregation und -prüfung bei einer geringen Anzahl von Validierungsknoten ziemlich effizient sind, ändern sich die Dinge dramatisch, wenn die Größe des Netzwerks zunimmt. Da die Signaturaggregation in Schnorr auf Merkle-Bäumen aufgebaut ist, wächst die Größe des Baums tendenziell sehr schnell, insbesondere bei der Aggregation von m-aus-n-Signaturen, die im Allgemeinen aus Gründen von vorzuziehen sind Fehlertoleranz. Drittens machen die intrinsischen Eigenschaften von elliptischen Kurven, d. H. Eine effiziente Berechenbarkeit und Nicht-Entartung, BLS in Bezug auf Sicherheitsparameter stark.

Diese Aussage wird durch die Tatsache gestärkt, dass die Erzeugung von BLS-Signaturen nicht auf Zufallszahlen beruht, bei denen das Risiko einer Manipulation besteht, obwohl sie vollständig deterministisch sind.

Schließlich erfordert die BLS-Signaturaggregation nur zwei Kommunikationsrunden, anders als Schnorr, für das n erforderlich ist.

Das derzeitige Design von BLS-Signaturschemata muss jedoch noch perfektioniert werden, und die Überprüfung derartiger kryptografischer Tools erfordert im Vergleich zu anderen Signaturschemata immer noch eine relativ lange Zeit und Rechenleistung.

BLS-Signaturen ermöglichen jedoch eine äußerst einfache Aggregation sowohl von öffentlichen Schlüsseln als auch von Signaturen aller Validierungsknoten.

Um den Prozess schlanker und effizienter zu gestalten, arbeiten Wissenschaftler, Forscher und Entwickler auf der ganzen Welt an Optimierungen, die BLS-Signaturen zu klaren Gewinnern für kryptografische Umgebungen machen könnten.

Weitere technische Details zu digitalen BLS-Signaturen und zur Abwehr unerwünschter Angriffe mit öffentlichen Schlüsseln finden Sie auf den Folien Hier.

Free Bitcoins: FreeBitcoin | BonusBitcoin

Coins Kaufen: Bitcoin.deAnycoinDirektCoinbaseCoinMama (mit Kreditkarte)Paxfull

Handelsplätze / Börsen: Bitcoin.de | KuCoinBinanceBitMexBitpandaeToro

Lending / Zinsen erhalten: Celsius NetworkCoinlend (Bot)

Cloud Mining: HashflareGenesis MiningIQ Mining

By continuing to use the site, you agree to the use of cookies. more information

The cookie settings on this website are set to "allow cookies" to give you the best browsing experience possible. If you continue to use this website without changing your cookie settings or you click "Accept" below then you are consenting to this.

Close