É possível converter um CNF em outro CNF tal que Ψ ( C )
- A função pode ser calculada em tempo polinomial a partir de algum parâmetro aleatório secreto .r
- tem uma solução se e somente se tiver uma solução.
- Qualquer solução de pode ser eficientemente convertida em uma solução de usando .Ψ ( C ) C r
- Sem , a solução (ou qualquer outra propriedade de ) não dá qualquer ajuda para resolver .x Ψ ( C ) C
Se houver tal , ele poderá ser usado para ajudar outras pessoas a resolver desafios computacionais (com a possibilidade de substituir a CNF por outros problemas - eu escolhi a CNF porque queria tornar o problema mais específico). de maneira que eles não possam lucrar com uma solução possível, mesmo que saibam que problema os usamos para resolver. Por exemplo, poderíamos incorporar um problema de fatoração em um jogo de computador, o que permite aos jogadores jogar apenas se eles resolverem o nosso problema em segundo plano, enviando de vez em quando provas de cálculo. Talvez o software possa ser "gratuito" dessa maneira, onde "gratuito" oculta um custo (possivelmente mais alto) na conta de luz de seus pais.
Respostas:
Feigenbaum, Instâncias de problemas com criptografia , propõe uma definição (Def. 1) da função de criptografia para problemas NP-completos que satisfazem seus requisitos. Ela prova que o problema NP-complete Comparative Vector Inequalities admite essa função de criptografia. Ela conclui com o principal teorema de que todos os problemas NP-completos que são p-isomórficos ao CNF-SAT são criptografáveis.
fonte
O aplicativo mencionado é chamado de "prova de trabalho útil" na literatura; veja, por exemplo, este artigo .
Você pode usar um esquema de criptografia totalmente homomórfica (em que o texto simples é a instância do CNF) para delegar a computação a uma parte não confiável, sem divulgar a entrada.
Isso não responde exatamente à sua pergunta, pois esse esquema não mapeia um CNF para outro CNF, mas funciona para o aplicativo pretendido.
fonte