Ist es möglich, eine Zeitkapsel mit Verschlüsselung zu erstellen?


14

Ich möchte eine digitale Zeitkapsel erstellen, die einige Zeit unlesbar bleibt und dann lesbar wird. Ich möchte mich nicht auf externe Dienste verlassen, um beispielsweise den Schlüssel geheim zu halten und ihn dann zum gewünschten Zeitpunkt freizugeben. Ist das möglich? Wenn nicht, ist ein Beweis möglich, dass dies nicht der Fall ist?

Eine Strategie würde auf Prognosen zukünftiger Rechenkapazitäten basieren, die jedoch unzuverlässig sind und Annahmen darüber treffen, wie viele Ressourcen auf die Aufgabe angewendet würden.


1
Wenn Sie sicherstellen können, dass das Gerät nicht manipuliert wird, können Sie (leicht) radioaktive Komponenten mit einer bekannten Halbwertszeit verwenden, sodass Sie nur dann Zugriff gewähren können, wenn die Radioaktivität ausreichend gesunken ist.
Raphael

Antworten:


5

Das Problem wird als Kryptographie mit zeitgesteuerter Freigabe bezeichnet . Für einige Referenzen / Einführung siehe:

Unsere Motivation ist der Begriff "Krypto mit zeitgesteuerter Freigabe", bei dem das Ziel darin besteht, eine Nachricht so zu verschlüsseln, dass sie von niemandem, auch nicht vom Absender, entschlüsselt werden kann, bis eine festgelegte Zeitspanne verstrichen ist. Ziel ist es, "Informationen in die Zukunft zu senden" ...


7
Könnten Sie wenigstens die Papiere zusammenfassen?
Svick

5
In den Beiträgen werden die beiden "natürlichen" Ansätze eingehend untersucht: Verwenden Sie entweder einen vertrauenswürdigen Dritten oder fordern Sie den Empfänger auf, eine Berechnung durchzuführen, die nicht gut parallelisiert wird und ungefähr die richtige Zeit in Anspruch nimmt.
a3nm

1

Ich kam mit einer teilweisen Antwort, aber nicht genau gesagt, eine Antwort auf die Frage wie angegeben. Ich vermute, dass dies so nah wie möglich ist, bin mir aber nicht sicher.

Zunächst verschlüsseln wir die Kapsel mit dem für die Entschlüsselung erforderlichen Schlüssel.

Ich weiß nicht, wie ich umgehen soll, wenn ich die Berechtigung habe, den Schlüssel zu halten, aber es ist möglich, diese Funktion zu verteilen. Wenn wir den Schlüssel in n Teile zerlegen, können wir n Behörden auffordern, die Teile aufzubewahren. Dann können zu gegebener Zeit alle ihre Stücke veröffentlichen, um die Rekonstruktion des Schlüssels zu ermöglichen.

Diese Lösung ist anfällig dafür, dass eine der n Autoritäten nicht verfügbar ist. Mit m-out-of-n-Codierung können wir die Teile an n Autoritäten verteilen, aber nur m müssen ihre Teile veröffentlichen.

Auch in diesem Fall müssen einige Behörden mit einer genauen Uhr einen korrekten Schlüsselverwaltungsdienst bereitstellen. Ist es möglich, diese Annahme über das oben vorgeschlagene m-aus-n hinaus zu schwächen?


1

Ich halte dies für einen praktikablen Ansatz:

Generieren Sie einen Satz von Schlüsseln mit Ihrem bevorzugten Verschlüsselungsschema unter Verwendung einer zufällig generierten Passphrase. Der Trick hier ist mit der Passphrase. Der Schlüssel ist bekannt, aber wir erstellen eine Zeitkapsel mit der Passphrase.

Wählen Sie eine Passphrase aus, sodass es bei der Erstellung eines gesalzenen Hashs ungefähr "n" Jahre dauert, bis die Passphrase mit bekanntem Salt und Hash unter Verwendung der heutigen Rechenleistung berechnet wurde. Wenn wir eine 20-jährige Kapsel erstellen möchten, schätzen Sie unsere Rechenleistung in 20 Jahren und erstellen Sie einen Hash, der in 20 Jahren entweder von einem Benutzer oder von einem Supercomputer für einen Monat berechenbar ist, abhängig vom Ziel für die Kapsel. Stellen Sie für eine Zeitkapsel von 20 Jahren fest, dass sie in 15 Jahren von einem Megacorp oder in 20 Jahren von einem Benutzer entschlüsselt werden kann.

Verschlüsseln Sie Daten mit Schlüsseln mit zufälliger Passphrase, speichern Sie den Schlüssel und die gehashte Passphrase und speichern Sie die tatsächliche Passphrase nicht. Bewahren Sie jetzt die Daten auf und Sie werden hoffentlich irgendwann über die Rechenleistung verfügen, um Ihre Daten wiederherzustellen!


0

Ich bin kein Kryptograf, sondern nur ein Ingenieur. Meine Lösung ist also eher physisch als rechnerisch, aber ich möchte es trotzdem versuchen. Ich schlage folgendes Verfahren vor:

  1. Generieren Sie das asymmetrische Schlüsselpaar
  2. Verschlüsseln Sie die Klartextnachricht mit dem öffentlichen Schlüssel
  3. Speichern Sie den privaten Schlüssel im flüchtigen Speicher eines Mikrocontrollers und geben Sie ihn erst nach Ablauf einer bestimmten Zeit aus.
  4. Zerstöre alle anderen Kopien des privaten Schlüssels
  5. Bündeln Sie den Chiffretext und den Mikrocontroller und warten Sie.

Dann stellt sich die naheliegende Frage: Warum sollten Sie sich mit der Verschlüsselung befassen, wenn Sie die Klartextnachricht nur auf dem Chip speichern können? Die Antwort darauf ist, dass auf diese Weise der Klartext beliebig lang sein kann, ohne die Speicherkapazität des Chips zu beeinträchtigen, da dort nur der Schlüssel fester Länge gespeichert ist. Sie können auch eine Kopie des öffentlichen Schlüssels behalten und später weitere Nachrichten damit generieren, die dann gleichzeitig entsperrt werden. Aber das war es schon.

Um dies noch sicherer zu machen, können Sie einen Lichtsensor am Chip anbringen und die Baugruppe in einem lichtdichten Gehäuse aufbewahren (oder einen Schalter an der Tür oder einen anderen Manipulationserkennungsmechanismus anbringen), um den Sensor dem Licht auszusetzen wird das Löschen der Taste auslösen. Dies soll verhindern, dass der Schlüssel mit invasiven Methoden wie Ätzen erhalten wird. Bei einigen Chips sind die Siliziumschichten so strukturiert, dass ein invasives Lesen nahezu unmöglich wird, indem andere wichtige Schaltkreise über den Speicher gelegt werden, um die einzelnen Bits zu verdecken.


Wenn es eine interne Uhr gibt, kann diese von jemandem beschleunigt oder entfernt werden. Auf jeden Fall ist es nicht gut.
Evil

@Evil Ich habe darüber nachgedacht, und es ist kein wirkliches Problem, da der Chip nur so oft übertaktet werden kann, bevor er instabil wird. Dadurch könnte der Schlüssel verloren gehen. Beispielsweise können die meisten 8-Bit-AVRs mit bis zu 20 MHz betrieben und auf etwa 25 MHz übertaktet werden. Darüber hinaus erhöht sich jedoch die Wahrscheinlichkeit eines Absturzes erheblich.
Programmagor

1
Sie erfinden manipulationssichere Hardware neu ... etwas, das schwierig ist, besonders über lange Zeiträume hinweg.
DW
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.