- PVSM.RU - https://www.pvsm.ru -

Как зашифровать информацию до определённой даты

Как зашифровать информацию до определённой даты - 1
Настольные атомные часы URWERK AMC [1] с наручным модулем

Предположим, что путешественник во времени отправляет в 80-е годы компьютеры с софтом для технологического прогресса Земли. Там информация о науке и технологиях будущего, а также руководства и советы, как наиболее эффективно перейти от технологий эпохи 80-х к уровню будущего. Каждый компьютер содержит идентичную информацию. Их разбрасывают по всему миру с целью сделать информацию общедоступной.

Прогрессор [2] (в терминологии Стругацких) хочет убедиться, что определённая информация не будет доступна до определённого времени.

То есть по замыслу прогрессоров, некоторая информация становится доступной только в определённые периоды времени, как в «Основании» Азимова. Это нужно для планомерного и грамотного развития цивилизации в соответствии с планом.

Наиболее реалистичный способ добиться поставленной цели — шифрование. То есть информация зашифрована блоками в соответствии с определёнными периодами. Пользователям предоставляют инструкции по генерации ключа для расшифровки, но с таким расчётом, чтобы информация, необходимая для генерации ключа, не была доступна до желаемого периода времени.

Вопрос в том, насколько надёжно можно реализовать такую систему и какую информацию использовать для генерации ключа. Задача в том, чтобы никто не мог получить доступ к информации до момента времени X, то есть нужен достаточно большой ключ, чтобы предотвратить любую попытку взлома шифрования в будущем. Также нужно корректировать некий диапазон ошибок, чтобы гарантировать сходимость результата с учётом возможных ошибок в битах из-за того, что датчики не идеально откалиброваны и т. д. В идеале пользователь должен иметь возможность генерировать ключ для любого времени X, просто загрузив исторические записи этого времени, а сам ключ не должен зависеть от редких астрономических условий.

Такой вопрос [3] задали на форуме Stack Exchange в разделе Worldbuilding (вопросы развития цивилизации и будущего человечества).

Наилучшее решение проблемы [4] основано на образовании новых звёзд [5].

Ежегодно в нашей галактике Млечный Путь образуется около десяти новых звёзд. Многие вблизи галактического центра [6], но ещё больше — вдали от него.

Как зашифровать информацию до определённой даты - 2
На фото классическая новая GK Persei, источник: НАСА [7]

У каждой новой звезды чётко определённое положение на небе с прямым восхождением [8] H₁H₂ часов M₁M₂ минут S₁S₂ секунд (от 0 до 24 часов) и склонением d₁d₂ градусов m₁m₂ минут s₁s₂ секунд (от -90° до +90°).

Для защиты от квантовых вычислений лучше использовать 256-битный ключ. Соответственно, для получения ключа на период от года n до года n+4 путешественник во времени задаёт следующее правило:

  1. Берём 16 первых новых звёзд, которые появились в данный пятилетний период дальше, чем на пять градусов от галактического центра, и которые ярче 9-й величины. То есть настолько яркие, что их легко видно в бинокль. Там может быть несколько новых на границе заданного интервала (непонятно, учитывать их или нет). Но это означает лишь то, что в случае ошибки просто придётся произвести вычисления ещё несколько раз, пока не найдём правильный ключ.
  2. Для каждой из 16-ти звёзд записываем десятичное число H₁H₂M₁M₂S₁S₂d₁d₂m₁m₂s₁s₂ и представляем его в двоичном виде как 64-битное целое с порядком записи от младшего к старшему байту (low-endian).
  3. Объединяем 16 двоичных чисел, получая строку из 128 октетов.
  4. Вычисляем контрольную сумму SHA-256 этой двоичной строки.
  5. Получаем 256 бит, которые используются в качестве ключа для расшифровки фрагмента послания из будущего за данный период.

Метод достаточно надёжный, потому что появление новых звёзд в космосе невозможно предсказать заранее. В координатах более 16-ти бит случайности. Астрономам не составит труда измерить координаты с точностью до секунды (обычно они измеряют их с гораздо большей точностью). Предлагаемое правило фактически определяет совершенно случайное 256-битное число.

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

В нашей текущей реальности проще всего реализовать компьютер с автоматической выдачей фрагментов зашифрованной информации по счётчику встроенных атомных часов.

Как зашифровать информацию до определённой даты - 3
Атомные часы Microchip 5071B [9]

Для программного решения можно использовать другие счётчики времени (Unix-время). Например, некоторые сервисы в интернете предлагают услугу доверенных меток времени [10]. Изначально такие метки предназначены для цифрового подтверждения целостности данных с доказательством даты и время совершения транзакции. Получатели документов и кода с доверенной временнóй меткой могут проверить, когда был подписан этот документ или код, а также убедиться, что документ или код не подвергались изменениям после этого момента. Но в описанной выше задаче метки можно использовать для проверки реальной даты, чтобы гарантировать расшифровку информации только в указанный период времени.

Существуют и практические реализации шифрования до указанной даты, такие как Timevault [11] на базе tlock [12].

Как зашифровать информацию до определённой даты - 4

Схема работает благодаря запланированным раундам [13] генерации случайных чисел от Лиги энтропии [14].

Автор: GlobalSign_admin

Источник [15]


Сайт-источник PVSM.RU: https://www.pvsm.ru

Путь до страницы источника: https://www.pvsm.ru/shifrovanie/403136

Ссылки в тексте:

[1] URWERK AMC: https://www.urwerk.com/collections/ur-chronometry/amc

[2] Прогрессор: https://science.fandom.com/ru/wiki/%D0%9F%D1%80%D0%BE%D0%B3%D1%80%D0%B5%D1%81%D1%81%D0%BE%D1%80%D1%8B

[3] вопрос: https://worldbuilding.stackexchange.com/questions/260342/what-can-a-time-traveler-use-to-generate-an-encryption-key-to-encrypt-informatio

[4] решение проблемы: https://worldbuilding.stackexchange.com/posts/260343/revisions

[5] новых звёзд: https://en.wikipedia.org/wiki/Nova

[6] галактического центра: https://en.wikipedia.org/wiki/Galactic_Center

[7] НАСА: https://www.nasa.gov/image-article/mini-supernova-explosion-could-have-big-impact/

[8] прямым восхождением: https://en.wikipedia.org/wiki/Right_ascension

[9] Microchip 5071B: https://chronos.uk/product/time-frequency-distribution/5071b-cesium-atomic-clock/

[10] доверенных меток времени: https://www.globalsign.com/ru-ru/timestamp-service

[11] Timevault: https://timevault.drand.love/

[12] tlock: https://eprint.iacr.org/2023/189

[13] запланированным раундам: https://drand.love/

[14] Лиги энтропии: https://leagueofentropy.org/

[15] Источник: https://habr.com/ru/companies/globalsign/articles/860950/?utm_campaign=860950&utm_source=habrahabr&utm_medium=rss