Предположим, что есть зашифрованный текст, который я хочу сделать таким, чтобы его мог расшифровать только тот, кто может доказать владение определенным открытым ключом или набором открытых ключей.
Насколько я понимаю, теоретически это решается шифрованием свидетеля.
Есть ли в настоящее время Любые реализация такого алгоритма в дикой природе? Если да, есть ли что-то действительно практичное?
Редактировать:
Я понял, что мой вопрос не очень ясен. Моя цель состоит не только в том, чтобы позволить расшифровать зашифрованные данные только тому, у кого есть определенный закрытый ключ, что является просто тривиальным шифрованием. Скорее, я хочу сделать так, чтобы только тот, кто может доказать, что у него есть решение проблемы (в данном случае проблема будет заключаться в том, чтобы доказать, что конкретный открытый ключ владеет каким-то объектом), мог расшифровать ее.
Пример: я хочу создать игру с открытым исходным кодом на основе открытого ключа, в которой секреты разбросаны по всему миру. Секреты — это зашифрованные файлы. Только игроки, владеющие определенным предметом (например, ключом от сокровищницы), могут их расшифровать. Таким образом, им нужно будет решить проблему «доказательства того, что я владею ключом», что можно сделать, подписав сообщение своим закрытым ключом, показывающее, что у них есть требуемый элемент.
Я надеюсь, что это сделает вопрос более ясным.