Est-il possible de créer une «Time Capsule» en utilisant le cryptage?

14

Je veux créer une capsule temporelle numérique qui restera illisible pendant un certain temps puis deviendra lisible. Je ne veux pas compter sur un service extérieur pour, par exemple, garder la clé secrète et la révéler au moment voulu. Est-ce possible? Sinon, une preuve est-elle possible?

Une stratégie serait basée sur des projections des capacités informatiques futures, mais cela n'est pas fiable et fait des hypothèses sur le nombre de ressources qui seraient appliquées à la tâche.

Micah Beck
la source
1
Si vous pouvez vous assurer que l'appareil n'est pas altéré, vous pouvez utiliser des composants radioactifs (légèrement) avec une demi-vie connue, de sorte que vous ne pouvez autoriser l'accès que si la radioactivité a suffisamment baissé.
Raphael

Réponses:

5

Le problème est connu sous le nom de cryptographie à libération retardée . Pour quelques références / introduction, regardez:

Notre motivation est la notion de «crypto à libération retardée», où le but est de crypter un message afin qu'il ne puisse être décrypté par personne, pas même par l'expéditeur, jusqu'à ce qu'un délai prédéterminé se soit écoulé. L'objectif est "d'envoyer des informations dans le futur" ...

Vor
la source
7
Pourriez-vous au moins résumer les articles?
svick
5
Les articles font une étude approfondie des deux approches "naturelles": soit utiliser un tiers de confiance, soit demander au récepteur d'effectuer un calcul qui ne se parallélise pas bien et prend environ la bonne quantité de temps.
a3nm
1

Je suis venu avec une réponse partielle, mais pas à proprement parler une réponse à la question comme indiqué. Je soupçonne que cela peut être aussi proche que possible, mais je ne suis pas sûr.

Tout d'abord, nous encodons la capsule avec la clé requise pour le décryptage.

Je ne sais pas comment contourner le fait d'avoir une sorte d'autorité pour détenir la clé, mais il est possible de distribuer cette fonction. Si nous divisons la clé en n morceaux, nous pouvons demander à n autorités de conserver les morceaux. Ensuite, au moment opportun, tous pourraient publier leurs pièces pour permettre la reconstruction de la clé.

Cette solution est vulnérable à l'indisponibilité de l'une des n autorités, mais en utilisant le codage m-sur-n, nous pouvons distribuer les pièces à n autorités, mais ne demandons qu'à m de publier leurs pièces.

Même dans ce cas, un certain nombre d'autorités disposant d'une horloge précise doivent fournir un service de gestion des clés correct. Est-il possible d'affaiblir cette hypothèse au-delà du m-sur-n suggéré ci-dessus?

Micah Beck
la source
1

Je pense que c'est une approche viable:

Générez un ensemble de clés à l'aide de votre schéma de chiffrement préféré à l'aide d'une phrase secrète générée de manière aléatoire. L'astuce ici est avec la phrase secrète. La clé est connue, mais nous allons créer une capsule temporelle à l'aide de la phrase secrète.

Choisissez une phrase de passe telle que, si nous en créons un hachage salé, il faudra environ "n" années pour calculer la phrase de passe donnée avec le sel et le hachage connus en utilisant la puissance de calcul actuelle. Si nous voulons créer une capsule de 20 ans, estimer notre puissance de calcul dans 20 ans et créer un hachage qui sera calculable sur un mois par un utilisateur ou un supercalculateur dans 20 ans, selon la cible de la capsule. Imaginez, pour une capsule temporelle de 20 ans, qu'il sera déchiffrable par un mégacorp dans 15 ans, ou un utilisateur dans 20 ans.

Chiffrez les données à l'aide de clés avec une phrase secrète aléatoire, stockez la clé et la phrase secrète hachée et ne stockez pas la phrase secrète réelle. Maintenant, conservez les données et, à un moment donné dans le futur, vous aurez, espérons-le, la puissance de calcul nécessaire pour récupérer vos données!

a8ksh4
la source
0

Je ne suis pas un cryptographe, juste un ingénieur, donc ma solution est plus physique que informatique, mais laissez-moi essayer quand même. Je propose la procédure suivante:

  1. Générer la paire de clés asymétrique
  2. Chiffrer le message en clair à l'aide de la clé publique
  3. Stockez la clé privée dans la mémoire volatile d'un microcontrôleur et faites-la sortir la clé seulement après un certain temps.
  4. Détruisez toutes les autres copies de la clé privée
  5. Regroupez le texte crypté et le microcontrôleur et attendez.

La question évidente se pose alors: pourquoi s'embêter avec le cryptage alors que vous pouvez simplement stocker le message en clair dans la puce? La réponse à cela est que de cette façon, le texte en clair peut être arbitrairement long, sans atteindre la capacité de stockage de la puce, car seule la clé de longueur fixe y est stockée. En outre, vous pouvez conserver une copie de la clé publique, générant plus de messages avec elle plus tard, qui sont ensuite déverrouillés en même temps. Mais c'est tout.

Pour rendre cela encore plus sûr, vous pouvez fixer un capteur de lumière à la puce et enfermer l'ensemble dans un boîtier étanche à la lumière (ou avoir un interrupteur fixé à la porte, ou un autre mécanisme de détection de sabotage), où exposer le capteur à la lumière déclenchera l'effacement des touches. Ceci afin d'empêcher l'obtention de la clé à l'aide de méthodes invasives telles que la gravure. Certaines puces ont également leurs couches de silicium structurées de manière à rendre la lecture invasive presque impossible, en plaçant d'autres circuits essentiels au-dessus de la mémoire, pour masquer les bits individuels.

programagor
la source
S'il y a une horloge interne, quelqu'un pourrait l'accélérer ou la supprimer. Ce n'est pas bon du tout.
Evil
@Evil J'y ai pensé, et ce n'est pas vraiment un problème parce que la puce ne peut être overclockée que trop avant de devenir instable, ce qui risquerait de perdre la clé. Par exemple, la plupart des AVR 8 bits fonctionneront jusqu'à 20 MHz, peuvent être overclockés à environ 25 MHz, mais au-dessus de cela, les risques d'accident augmentent considérablement.
programagor
1
Vous réinventez du matériel inviolable ... quelque chose de délicat à bien faire, en particulier sur de longues échelles de temps.
DW