Das P2PK-Blockierungsskript ist das ursprüngliche Skriptmodell, das Bitcoin überhaupt zum Senden und Empfangen von Kryptowährungen verwendete. Ein einfaches und elegantes Skriptmodell, das es uns ermöglichte, die Leistungsfähigkeit von Bitcoin zu erkunden und das die Türen zu dieser interessanten Technologie öffnete.
El Blockierungsskript P2PK oder Pay To Public Key, Ist das Absturzskript älteste und primitivste Bitcoin, direkt entwickelt von Satoshi Nakamoto in seiner ersten Version von Bitcoin. Es ermöglicht uns, Bitcoin-Zahlungen mit der erweiterten Version eines öffentlichen Schlüssels durchzuführen, statt mit einem Hash davon, wie es derzeit beim Standardskript der Fall ist P2PKH (Pay to Public Key Hash).
Aus diesem Grund ist P2PK eine viel einfachere Version von P2PKH und wurde von Nakamoto bei seinen ersten Mining-Operationen bei der Erstellung des PXNUMXPKH verwendet Coinbase-Transaktion seiner Blöcke. Aber er nutzte dieses Skript auch bei seinen ersten Transaktionen wie der, bei der er vorging Hal Finney.
Wie funktioniert ein P2PK?
Der Betrieb eines P2PK folgt demselben Grundschema wie Bitcoin-Transaktionen. Tatsächlich ist P2PK der Ursprung dieses Schemas, nur auf noch einfachere Weise. Wenn wir eine Transaktion mit Bitcoin durchführen möchten, müssen wir lediglich den privaten Schlüssel in unserem Besitz haben. Wie wir bereits erklärt haben Wie wird eine Bitcoin-Adresse generiert?, der öffentliche Schlüssel wird mathematisch vom privaten Schlüssel abgeleitet und der öffentliche Schlüssel wird verschlüsselt, um die Bitcoin-Adresse zu erhalten.
Bei P2PK steht die Bitcoin-Adresse (die normalerweise mit „1“, „3“ oder „bc1“ beginnt) nicht im letzten Teil, das heißt, sie ist nicht verschlüsselt. Auf diese Weise bleibt die Adresse der vollständige öffentliche Schlüssel, der etwa die folgende Form hätte:
0496b538e853519c726a2c91e61ec11600ae1390813a627c66fb8be7947
be63c52da7589379515d4e0a604f8141781e62294721166bf621e73a82cbf2342c858ee
Der vorherige öffentliche Bitcoin-Schlüssel entspricht einer der Adressen von Satoshi Nakamoto, genauer gesagt der Adresse, an die die zweite Bitcoin-Coinbase gesendet wurde.
Um beispielsweise eine Transaktion per P2PK an diese Adresse zu senden, verwenden wir keine Bitcoin-Adresse wie die, die wir heute kennen. Stattdessen würden wir einfach den gesamten öffentlichen Schlüssel nehmen, ihn in die Wallet stecken und ihn versenden. Das Ergebnis ist am Ende dasselbe: Wenn die Transaktion bestätigt ist, hat der Besitzer dieses öffentlichen Schlüssels die Bitcoins, die wir ihm geschickt haben, in seinem Besitz und kann sie problemlos verwenden.
Erklären des Betriebsablaufs eines P2PK
Der Unterschied im Übermittlungsprozess zwischen P2PK und P2PKH besteht in der Funktionsweise der Blockierungsskripte. Wir erläutern dies im Folgenden im Detail:
Erstens besteht bei einem P2PK keine Notwendigkeit, den öffentlichen Schlüssel zu verschlüsseln. Stattdessen müssen wir nur den gesamten Schlüssel kopieren, ihn in das Bitcoin-Skript einfügen und schon können wir die Transaktion senden. Das P2PK-Skript zum Senden (oder Blockieren) von Bitcoins hat die folgende Form:
Skript sperren (scriptpPubKey): <Öffentlicher Schlüssel zum Senden> OP_CHECKSIG
Das bedeutet, dass wir, um diese Bitcoins freizuschalten und sie verwenden zu können, eine gültige digitale Signatur für den von uns angegebenen öffentlichen Schlüssel bereitstellen müssen, wie wir im scriptSig sehen können, das die folgende Form hätte:
Skript entsperren (scriptSig): < SIGNATUR > (Gültige digitale Signatur)
In einem P2PKH ändert sich dies jedoch geringfügig und das Blockierungsskript ist wie folgt geschrieben:
Skript sperren (scriptpPubKey): OP_DUP OP_HASH160 < Public-Key-Hash > OP_EQUALVERIFY OP_CHECKSIG
Und die Entsperrung erfolgt durch:
Skript entsperren (scriptSig): < SIGNATUR > < Öffentlicher Schlüssel >
Das bedeutet, dass wir einen öffentlichen Schlüssel bereitstellen, ihn duplizieren, hashen, den Hash des bereitgestellten öffentlichen Schlüssels überprüfen und die digitalen Signaturen überprüfen müssen, damit wir die Bitcoins an dieser Adresse verwenden können.
Wie Sie sehen, ist P2PK eine viel einfachere und weniger rechenintensive Option. Allerdings ist P2PK heutzutage in der Bitcoin-Welt ein selten verwendetes Blockierungsskript, und wir werden im Folgenden erklären, warum.
Wie viel weißt du, Kryptonaut?
War der Grund, warum P2PK aus Sicherheitsgründen innerhalb von Bitcoin zugunsten von P2PKH eingestellt wurde?WAHR!
Der Hauptgrund für die Abkehr vom P2PK-Format in Bitcoin war die Tatsache, dass den Skripten, die für die Durchführung von Transaktionen innerhalb von Bitcoin zuständig sind, eine neue Sicherheitsebene hinzugefügt wurde, insbesondere P2PKH, da es eine größere Widerstandsfähigkeit gegen zukünftige Angriffe bietet, die Quantencomputer leisten könnten.
Vor- und Nachteile von P2PK
Unter den Vorteilen von P2PK können wir Folgendes hervorheben:
- Es ist ein viel einfacheres und weniger rechenintensives Skript als P2PKH.
- Es ist weitgehend kompatibel, alle Versionen von Bitcoin Core unterstützen dieses Skript, da es seit seiner Einführung die Grundlage für seinen Betrieb darstellt.
Demgegenüber können wir jedoch einige Risiken erwähnen, von denen einige von Satoshi Nakamoto selbst in einer durchgeführten Analyse identifiziert wurden, was dazu geführt hat, dass P2PK praktisch nicht mehr verwendet wird:
- Das Risiko, dass die Kryptographie mit elliptischen Kurven durch die erfolgreiche Ausführung eines modifizierten Shor-Algorithmus zur Lösung des Problems des diskreten Logarithmus in elliptischen Kurven vollständig beeinträchtigt werden könnte. Dies ist eine Situation, in der die Bereitstellung öffentlicher Schlüssel wie bei P2PK diese Adressen angreifbar machen würde. Um dies zu vermeiden, beschloss Nakamoto, einen Hash des öffentlichen Schlüssels durch einen Prozess zu verwenden, der diesem Prozess eine zusätzliche Sicherheitsebene hinzufügt und so dieses Problem löst. Tatsächlich waren in der ersten Version von Bitcoin sowohl die P2PK- als auch die P2PKH-Methode perfekt verwendbar.
- Die kürzere Verlängerung von P2PKH war ein weiterer Faktor, der für den Verzicht auf P2PK sprach, nicht nur aufgrund der Erweiterung, sondern auch, um Bytes bei Transaktionen zu sparen und die Skalierbarkeit von Bitcoin zu verbessern.
- Sie sind weniger „menschlich“. Das heißt, öffentliche Schlüssel haben eine Länge von 130 Zeichen statt der üblichen Bitcoin-Adressen und deren 34 Zeichen. Dies bedeutet, dass bei P2PKs eine größere Sorgfalt bei der Überprüfung der Adressen erforderlich ist, da die Gelder andernfalls unwiderruflich verloren gehen könnten. Es ist leicht zu erkennen, dass eine Adresse mit 1 beginnt, und Sie wissen, dass es sich um eine Bitcoin-Adresse handelt. Sie können auch die letzten paar Zeichen überprüfen, um festzustellen, ob sich die Adresse dank nicht geändert hat Prüfsumme.