[Jeden Tag ein Web3-Konzept] Kryptographie, die man kennen muss
Verschlüsselungsalgorithmen sind die am häufigsten gehörten Konzepte in öffentlichen Ketten, Wallets und anderen Bereichen. Aber wie gewährleistet man die Sicherheit des Wallets und wie stellt man die Verknüpfung des Blocks sicher? Dies alles erfordert die Hilfe der Kryptographie. Kryptografische Technologie ist die zugrunde liegende Technologie für die Sicherheit von Blockchain-Systemen. Vertreter davon sind Hash-Funktionen und öffentlich-private Schlüsselpaare, die häufig in Web3 verwendet werden.
Hash-Funktion: Wird auch als Hash-Funktion oder kurz Hash bezeichnet. Sie kann Eingaben beliebiger Länge realisieren und in Ausgaben fester Länge umwandeln: h = H (m), was bedeutet, dass alles, was Sie eingeben, gehasht wird Algorithmus, was ist schließlich Es handelt sich um eine Zeichenfolge fester Länge, eine Eingabe entspricht einer Ausgabe und ihre Sicherheit basiert auf ihrer Kollisionsresistenz (kollisionsbeständig), dh es ist schwierig, zwei Eingaben mit derselben Ausgabe zu finden.
In der Blockchain werden Hash-Funktionen an zwei Stellen verwendet: zum einen als Merkle-Tree-Root-Hash und zum anderen als Blockzeiger, der die Blöcke verbindet. Der Merkle-Baum-Wurzel-Hash besteht darin, alle Transaktionen zu hashen, dann einen neuen Wert zu bilden und ihn dann zu hashen. Schließlich wird nur ein Hash-Wert gefunden, nämlich der Merkle-Baum-Wurzel-Hash. Da es unmöglich ist, zwei Eingaben mit derselben Ausgabe zu finden, bedeutet dies, dass sich auch der Merkle-Baum-Wurzel-Hash ändert, solange sich der Inhalt der Transaktion ändert. Solange sich also der Wurzel-Hash nicht ändert, ist die Transaktion korrekt . Suchen Sie auf die gleiche Weise einen Hash für die gesamten Blockdaten und fügen Sie den gesamten Hash-Wert in den nächsten Blockheader ein. Solange der Hash-Wert unverändert bleibt, bedeutet dies, dass alle vorherigen Blöcke nicht manipuliert wurden. , sind alle richtig.
Öffentlich-privates Schlüsselpaar: Es handelt sich um den berühmten Kryptografiealgorithmus mit öffentlichem Schlüssel.
Die Public-Key-Kryptographie verwendet ein Paar zusammengehöriger Schlüssel zur Ver- und Entschlüsselung: einen öffentlichen „öffentlichen Schlüssel“ und einen geheimen „privaten Schlüssel“. Der „öffentliche Schlüssel“ kann jedem zugänglich gemacht und zur Verschlüsselung von Daten verwendet werden. Der „private Schlüssel“ muss geheim gehalten werden und darf nur dem Eigentümer bekannt sein. Es wird verwendet, um mit dem entsprechenden öffentlichen Schlüssel verschlüsselte Daten zu entschlüsseln.
Kryptografische Algorithmen mit öffentlichem Schlüssel basieren auf der Komplexität bestimmter mathematischer Probleme. Beispielsweise basiert die Sicherheit des RSA-Algorithmus (ein beliebtes Beispiel für asymmetrische Verschlüsselung) auf der Schwierigkeit, große Zahlen zu faktorisieren. Mit anderen Worten: Sie können sich diesen Prozess als eine „Black Box“ für die Ver- und Entschlüsselung vorstellen.