Um sicherzustellen, dass Sie bei Verlust Ihrer Krypto-Wallet nicht den Zugriff auf Ihre Kryptowährungen verlieren, müssen Sie Ihren privaten Schlüssel durch die Erstellung von Kopien sichern. Dies geschieht in der Regel mit Hilfe einer Seed-Phrase. Das Problem ist jedoch, dass Seed-Phrasen äußerst unsicher sind , da jeder, der eine solche in die Hände bekommt, diese auch nutzen kann.
Aus diesem Grund bieteten unsere Tangem Wallets eine sichere Lösung zum Klonen privater Schlüssel. Sie können Ihren privaten Schlüssel auf eine oder zwei Backup-Tangem-Karten klonen, ohne befürchten zu müssen, dass eine davon verloren geht oder gestohlen wird.
Doch wie sicher ist diese Backup-Methode? Schauen wir uns an, wie Tangem Wallet das macht.
Erstellen eines privaten Schlüssels
Vor dem Aktivierungsprozess verfügt Ihre Tangem Wallet zunächst nicht über einen privaten Schlüssel (Kpiv im Diagramm). Wenn Sie eine Tangem Wallet kaufen, erhalten Sie ein Paket, das noch nicht aktiviert wurde und über keinen privaten Schlüssel verfügt. Sie können also absolut sicher sein, dass es keine Kopien des Schlüssels gibt, die irgendwo auf der Welt werteilt werden . Schließlich kann man keine Kopie von etwas erstellen, das nicht existiert.
Während des Wallet-Aktivierungsprozesses generiert der Tangem-Micro-Prozessor einen neuen privaten Schlüssel basierend auf einer numerischen Sequenz, die er von einem zertifizierten Hardware-Zufallszahlengenerator (TRNG im Diagramm) erhält. Sie können unseren Artikel „ So erstellen Sie einen privaten Schlüssel für eine Krypto-Wallet mit und ohne Seed-Phrase “ lesen, um herauszufinden, wie dieser Prozess funktioniert.
In dieser Phase gibt es nur eine Instanz des privaten Schlüssels. Danach müssen Sie ein oder zwei Kopien als Backup erstellen, und dies muss auf sichere Weise erfolgen.
Vorbereitung zum Erstellen eines Backups
Während des Backup-Vorgangs muss der private Schlüssel so auf die anderen Karten übertragen werden, dass er nicht gestohlen werden kann und der Benutzer die volle Kontrolle über die Anzahl der vorhandenen Kopien des privaten Schlüssels hat.
Aus diesem Grund besteht der Backup-Prozess des privaten Schlüssels aus zwei Teilaufgaben:
Zunächst müssen Sie unbedingt sicherstellen, dass der Schlüssel auf eine andere Tangem-Karte übertragen wird.
Der Schlüssel muss während der Übertragung an die andere(n) Karte(n) vor Abhören geschützt sein, d. h. er muss so verschlüsselt sein, dass nur die empfangende Karte ihn entschlüsseln kann.
Wenn die Karte im Werk hergestellt wird, generiert der Chip ein eigenes Schlüsselpaar: den privaten Schlüssel von Kcard priv und den öffentlichen Schlüssel von Kcard pub . Diese Schlüssel sind für jede Karte einzigartig und in keiner Weise mit der Brieftasche des zukünftigen Kartenbenutzers verbunden. Sie werden nur benötigt, damit die Karte ihre Echtheit nachweisen und der App mitteilen kann, dass sie von Tangem erstellt wurde.
Der öffentliche Schlüssel dieses Paares wird von Tangem mit dem privaten Schlüssel des Herstellers, KTangem priv , signiert . Das resultierende Cert_Card-Zertifikat wird dann zur Validierung der Karte verwendet.
Auch der öffentliche Schlüssel des Herstellers, KTangem pub , wird auf den Chip geschrieben. Dieser Schlüssel ist für alle Karten gleich und bildet den Ausgangspunkt einer „Vertrauenskette“ zwischen Quell- und Zielkarte.
Die erste Herausforderung: Gegenseitige Authentifizierung
Damit jede Karte während des Sicherungsvorgangs „sicher“ sein kann, dass es sich bei der Karte am anderen Ende um eine echte Tangem Wallet-Karte handelt, muss aus den Schlüsseln und Signaturen der Karten eine kryptografische „Vertrauenskette“ aufgebaut werden.
Während der Aktivierung erstellt jede Karte ein Einmalschlüsselpaar für die Kommunikation mit den anderen Karten – Klink pub und Klink priv – und signiert den öffentlichen Schlüssel dieses Paares mit ihrem privaten Kcard priv- Schlüssel, wodurch die Sign_Attest-Signatur erstellt wird.
Die Karte sendet dann die Informationen „Sign_Attest“, „Klink pub“ und „Kcard pub“ an die andere Karte.
Durch diesen Prozess entsteht die folgende Vertrauenskette: KTangem pub – Kcard pub – Klink pub . Der öffentliche Schlüssel des Herstellers KTangem pub ist jeder Karte bekannt und jeder von ihnen verwendet ihn zur Überprüfung des Cert_Card-Zertifikats. Wenn er mit dem Kcard pub der anderen Karte übereinstimmt , wird dieser Schlüssel verwendet, um die Sign_Attest-Signatur dieser Karte zu überprüfen. Wenn Sign_Attest mit dem Klink pub der anderen Karte übereinstimmt , bedeutet das, dass die Karte auf der anderen Seite des Kommunikationskanals tatsächlich von Tangem hergestellt wurde, ihr Klink pub- Schlüssel von niemandem geändert wurde und er zur Berechnung des gemeinsamen Ktrans-Backups verwendet werden kann Schlüssel.
Die zweite Herausforderung: Einen gemeinsamen Verschlüsselungsschlüssel erhalten
In diesem Stadium müssen beide Karten einen gemeinsamen symmetrischen Schlüssel, Ktrans, generieren, den die Quellkarte zum Verschlüsseln des privaten Schlüssels des Benutzers verwendet, während die Zielkarte ihn entschlüsselt. Da der Kommunikationskanal zwischen ihnen von einem nicht vertrauenswürdigen Gerät bereitgestellt wird, ist es unmöglich, einfach einen Schlüssel in einer Karte zu generieren und ihn auf eine andere zu übertragen. Dieses Problem wird durch die Verwendung des Diffie-Hellman-Schlüsselprotokolls gelöst.
Die Karten haben gerade die verifizierten und vertrauenswürdigen Klink- Pub- Schlüssel ausgetauscht, wobei jede Karte ihren eigenen Klink- Priv und den Klink- Pub der anderen Karte verwendet , um den symmetrischen Ktrans-Verschlüsselungsschlüssel zu generieren, der letztendlich für beide Karten identisch ist. Das ist die Magie von Diffie-Hellman in Aktion.
Wenn ein Angreifer außerdem die Kontrolle über das Telefon des Benutzers übernimmt und den Kartenaustausch „abhören“ kann, erfährt er nur die öffentlichen Schlüssel von Klink pub und Kcard pub , da diese die einzigen Dinge sind, die von den Karten übertragen werden. Die privaten Klink -Schlüssel bleiben unzugänglich, was bedeutet, dass der Angreifer nicht in der Lage sein wird, dieselben Ktrans zu generieren.
Verschlüsselter Schlüsselaustausch
Mithilfe des erhaltenen symmetrischen Ktrans-Schlüssels verschlüsselt die erste Karte einen Datensatz, der den privaten Schlüssel und den Zugangscode des Benutzers sowie die Anzahl der Sicherungen des privaten Schlüssels (Satz aus 2 oder 3 Karten) enthält. Die Karte sendet die resultierende verschlüsselte ENC-Nachricht an die zweite Karte, die sie mit demselben Ktrans entschlüsselt. Sollte es jemandem in diesem Moment gelingen, den ENC abzufangen, könnte er nichts herausfinden, da er ohne den Ktrans-Schlüssel das Paket nicht entschlüsseln kann.
Beim Durchführen des Backups für die dritte Karte ist der Vorgang genau derselbe, allerdings erzeugen die Karten neue Klink-Paare, was bedeutet, dass der Ktrans-Schlüssel ein anderer ist als der, der beim Backup auf die zweite Karte verwendet wurde.
Die Tangem-Chip-Firmware ermöglicht die Durchführung einer Sicherung. Nach der Übergabe oder dem Erhalt eines privaten Schlüssels unterbricht die Karte den Sicherungsvorgang und der private Schlüssel kann nicht mehr wiederhergestellt werden.
Wenn Sie Ihr Tangem-Wallet auf die Werkseinstellungen zurücksetzen , vergisst der Chip den Kpriv-Schlüssel und Sie können das Wallet reaktivieren, einen neuen Schlüssel generieren und ein neues Backup durchführen. Beachten Sie jedoch, dass der alte Schlüssel nach dem Zurücksetzen zerstört wird.