Est-il possible de convertir un CNF en un autre CNF tel que
- La fonction peut être calculée en temps polynomial à partir d'un paramètre aléatoire secret r .
- a une solution si et seulement si C a une solution.
- Toute solution de Ψ ( C ) peut être convertie efficacement en une solution de C en utilisant r .
- Sans , la solution x (ou toute autre propriété de Ψ ( C ) ) ne donne pas d'aide dans la résolution C .
S'il existe un tel , il peut être utilisé pour en faire d'autres pour résoudre des problèmes de calcul pour nous (en remplaçant éventuellement la résolution d'un CNF par d'autres problèmes - j'ai choisi CNF parce que je voulais rendre le problème plus spécifique), de cette manière qu'ils ne peuvent pas bénéficier d'une solution possible même s'ils savent quel problème nous les avons utilisés pour résoudre. Par exemple, nous pourrions intégrer un problème de factorisation dans un jeu informatique, qui permet aux joueurs de jouer uniquement s'ils travaillent sur notre problème en arrière-plan, en renvoyant de temps en temps des preuves de calcul. Peut-être que le logiciel peut même être rendu "gratuit" de cette façon, où "gratuit" cache un coût (éventuellement plus élevé) dans la facture d'électricité de vos parents.
Réponses:
Feigenbaum dans, Encrypting Problem Instances , propose une définition (Def. 1) de la fonction de cryptage pour les problèmes NP-complets qui répond à vos besoins. Elle prouve que le problème NP-complete Comparative Vector Inequality admet une telle fonction de cryptage. Elle conclut avec le théorème principal que tous les problèmes NP-complets qui sont p-isomorphes à CNF-SAT sont cryptables.
la source
L'application que vous mentionnez est appelée «preuve de travail utile» dans la littérature, voir par exemple cet article .
Vous pouvez utiliser un schéma de chiffrement entièrement homomorphe (où le texte en clair est l'instance CNF) pour déléguer le calcul à une partie non fiable sans divulguer l'entrée.
Cela ne répond pas exactement à votre question, car un tel schéma ne mappe pas un CNF dans un autre CNF, mais il fonctionne pour l'application prévue.
la source