Bei uns streben wir danach, das vertrauenswürdigste und am einfachsten zu bedienende Krypto-Währungsunternehmen der Welt zu sein. Eines unserer Ziele ist es, den Kunden, die Krypto-Währungen wie Bitcoin senden und empfangen, ein großartiges Benutzererlebnis zu bieten, damit sie so einfach wie möglich arbeiten können.

Der Versand von Krypto-Währung kann heute schwierig sein; Transaktionsgebühren sind volatil und unvorhersehbar, was zu erheblichen Schwankungen in der Zeit führen kann, die es dauert, bis eine Transaktion bestätigt wird.

Infolgedessen hatten wir viele Tage , an denen die Transaktionen einiger Benutzer aufgrund von Gebührenerhöhungen und der allgemeinen Überlastung des Bitcoin-Netzes (die im Dezember 2017 ihren Höhepunkt erreichte) stecken blieben. Selbiges galt für unsere Bitcoin Casino free Spins. In erster Linie ist dies für unsere Benutzer eine frustrierende Erfahrung, weil es länger als erwartet dauert, bis ihre Transaktionen ankommen. Zweitens bedeutet es, dass die Ingenieure häufig angepiept werden, um eine Situation zu untersuchen, die sich größtenteils ihrer Kontrolle entzieht. Um diesen Herausforderungen zu begegnen, haben wir uns auf ein bekanntes Verfahren gestützt, das wirtschaftliche Anreize nutzt, die durch das Bitcoin-Protokoll ermöglicht werden, um die Bestätigungszeit von Transaktionen zu verbessern: Child Pays for Parent (Child Pays for Parent, CPFP), und wir haben dies umgesetzt, wobei wir es manchmal zur Rettung Tausender Transaktionen an einem einzigen Tag eingesetzt haben.

Wie es funktioniert: Bitcoin-Gebühren

Wenn ein Kunde etwas Bitcoin an eine andere Adresse im Netzwerk senden möchte, gibt es zwei Hauptfaktoren, die wir versuchen, auszubalancieren:
Die Transaktionsgebühr, oder wie viel der Kunde für die Aufnahme seiner Transaktion in einen Block bezahlt, und
die Geschwindigkeit, mit der diese Transaktion in einen Block aufgenommen wird. Lesen Sie mehr zum Thema Bitcoin hier nach: https://www.handelsblatt.com/themen/bitcoin

Das Problem

Um diese Tatsache zu veranschaulichen, wollen wir uns ein Beispiel ansehen. Nehmen wir zwei Kunden, Alice und Bob, die beide morgens auf dem Weg zur Arbeit etwas Bitcoin zur Bezahlung einer Transaktion schicken möchten. Alice reicht ihre Transaktion zu einem Zeitpunkt ein, an dem die geschätzten Gebühren bei 5 Satoshis/Byte liegen, eine relativ niedrige Gebühr auf dem heutigen Markt. Sekunden später ist das Netzwerk plötzlich sehr stark ausgelastet, und Tausende von Transaktionen erscheinen im Mempool.

Bob reicht dann seine Transaktion mit einer Gebühr von 25 Satoshis/Byte ein, wobei die Gebühr wegen der Überlastung des Netzes viel höher ist als die von Alice. Sekunden später wird ein Block abgebaut; Bobs Transaktion wird wegen der hohen Gebühr mit einbezogen, Alices Transaktion bleibt jedoch noch ausstehend. Die Überlastung des Netzes hält an, und Transaktionen werden mit immer höheren Gebühren eingereicht. Die Transaktion von Alice ist jetzt „festgefahren“. Die Gelder werden nicht an ihrem Bestimmungsort ankommen, und sie kann daher nichts mit den Geldern anfangen, bis die Flut zurückgeht und der Gebührensatz sinkt.

Eine Lösung

Was können wir also in Bezug auf die Transaktion von Alice tun? Sitzt sie auf unbestimmte Zeit fest, oder können wir dazu beitragen, die Bergleute zu veranlassen, ihre Transaktion zu bestätigen? Es stellt sich heraus, dass wir Alice in dieser Situation helfen können, indem wir eine Strategie anwenden, die sich auf wirtschaftliche Anreize unter der Bezeichnung Child Pays for Parent, CPFP, stützt.

Bevor wir das CPFP erläutern, wollen wir uns zunächst kurz ansehen, wie Bitcoin-Transaktionen strukturiert sind. Vereinfacht gesagt ist eine Bitcoin-Transaktion nichts anderes als eine Reihe von Inputs und Outputs, wobei die Inputs einen Wert (in Bitcoin) darstellen, der vom Sender „ausgegeben“ wird. Wenn ein Empfänger dann die Bitcoin, die er erhalten hat, ausgeben möchte, wird einer oder mehrere der von ihm kontrollierten Outputs zu einem Input für eine neue Transaktion.

Diese neue Transaktion ist dann ein „Kind“ der vorherigen „Eltern“-Transaktion. Zusätzlich enthält eine typische Bitcoin-Transaktion eine so genannte Änderungsausgabe. Diese Änderungsausgabe wird im Allgemeinen an den ursprünglichen Absender zurückgeschickt, damit dieser sie in einer zukünftigen Transaktion verwenden kann. Dieses Konzept unterscheidet sich nicht von dem, wenn Sie einen Kaffee für $5 mit einer Rechnung über $10 bezahlen und vom Kassierer $5 Wechselgeld erhalten. Wenn Sie Eingaben mit einem festen Betrag (in Bitcoin oder in Dollar) ausgeben, gibt es in der Regel Wechselgeld, das Sie von der Transaktion einziehen. Diesen Wechselgeld-Output werden wir verwenden, um CPFP zu ermöglichen.

Wie wir es verwenden

In den letzten Monaten haben wir diese Funktion auf automatisierte Weise für alle Kunden eingeführt, die Bitcoin auf unserer Plattform versenden. Wenn die Transaktion eines Kunden mindestens 4 Blöcke lang in der Schwebe bleibt, senden und bezahlen wir eine Kinder-Transaktion zu einem ausreichenden Gebührensatz, um die Eltern-Transaktion zu retten (wir stapeln diese tatsächlich, so dass wir mehrere Eltern mit einem Kind retten können).

Dies geschieht ohne jegliche Interaktion des Endbenutzers, und wir haben bisher wirklich positive Ergebnisse bei seiner Verwendung gesehen. In den letzten Monaten haben wir Tausende von Benutzertransaktionen gerettet, die unsere Kunden sonst viele Stunden lang nicht gesehen hätten. Wir lieben es, unsere Kunden glücklich zu machen, und freuen uns, dass diese Funktion es uns ermöglicht hat, ihren Bitcoin-Transaktionen eine beständigere Zuverlässigkeit zu verleihen und gleichzeitig sicherzustellen, dass wir gute Teilnehmer des Netzwerks sind.

Das CPFP-Feature ist ein großartiges Beispiel für unsere tägliche Arbeit an Kryptotechnologien sowie für die interessanten Herausforderungen komplexer verteilter Systeme. Wenn Sie gerne in einer Umgebung mit hohem Energieaufwand und Spaß arbeiten und an Herausforderungen wie dieser arbeiten möchten, dann bewerben Sie sich hier oder schauen Sie sich alle offenen Stellen an. Wir würden uns freuen, von Ihnen zu hören.