Создать шифрование, которое я не могу расшифровать до более поздней даты - PullRequest
0 голосов
/ 02 октября 2018

Я ищу способ достижения чего-то похожего на «сундук времени», который похож на «бомбу замедленного действия».

Мотивация для этого возникла в результате первой установки расширения для повышения производительности для Chromeблокирует сайты социальных сетей (например, facebook, insta и т. д.).Проблема с этими расширениями в том, что я обнаружил, что слишком легко отключить расширение.Чтобы сделать это более сложным, я хотел бы защитить паролем функцию отключения.Однако это ничего не дает, если я знаю, какой пароль.Самое простое решение проблемы, с которой я сталкиваюсь, - просто попросить друга в реальной жизни создать пароль, а не указывать мне время X, но мне сейчас интересно, возможно ли это вместо этого с помощью алгоритма шифрования / уловки.

Например, я ввожу строку «apple», и алгоритм кодирует ее в какой-то длинный и запутанный вывод «sha1-output-apple».Теперь я установлю пароль для функции отключения расширения на «sha1-output-apple», а затем очистлю свой буфер обмена.Затем я хотел бы также сделать так, чтобы, если я попытаюсь снова закодировать «яблоки», это даст мне разные результаты, пока не пройдет определенное время.

1 Ответ

0 голосов
/ 02 октября 2018

Вы можете достичь того, что хотите сделать, используя безопасное устройство, такое как JavaCard и NTP с расшифровкой открытого ключа.

Java-карта - это устройство, в которое вы можете вставить крошечный код и запустить код через устройство чтения карт..данные, хранящиеся на устройстве, зашифрованы (насколько это безопасно, зависит от спецификации устройства).

NTP подтверждает время, а Javacard (или любое другое подобное устройство) защищает данные до тех пор, пока не наступит время.

сначала вы должны выбрать надежный NTP-сервер, затем поместить данные, которые вы хотите зашифровать, открытый ключ NTP и программу, которая возвращает данные только в том случае, если время ответа NTP соответствует вашему требованию, а действительная подпись переданаJavacard.

Вам необходимо выполнить одно из следующих действий, чтобы украсть данные до наступления дня.

  • Взломать защиту JavaCard
  • Украсть закрытый ключ NTP или взломатьсервер

Если это достаточно сложно для вашей цели, вы можете использовать это до тех пор, пока сервер NTP не изменит ключ или не остановитобслуживание.

Может быть, вместо NTP можно использовать доказательство работы на основе цепочки блоков.действительный список блочных заголовков работает как неточные часы. Вы все еще должны выяснить, как проверить изменения сложности.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...