Зашифрованное сообщение с помощью nLockTime

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

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

Я знаю, что транзакция, транслируемая с помощью nLockTime, уже имеет все видимые детали, а сумма просто еще не может быть потрачена получателем. Есть ли способ также сделать заметку об этой транзакции зашифрованной до этой даты? Могу ли я использовать битовое сообщение для достижения этого? Как насчет другой монеты, такой как Dash или zCash, которые, я полагаю, также шифруют примечание о транзакции для всех, кроме получателя [они действительно делают это, особенно Dash]?

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

Спасибо

Я не думаю, что это возможно.

Ответы (2)

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

Это не имеет значения. Даже если бы такие коды операций существовали, они не позволили бы вам (1) расшифровать то, что не могут другие, поскольку все в цепочке общедоступно и (2) изменить поведение через некоторое время.

Я не думаю, что это возможно только с nLockTime. Однако существуют «умные» контракты с использованием мультиподписи 2 из 2, когда каждая сторона вносит страховку на сумму, превышающую общий секрет. Экономические потери превышают их выгоду, если обе стороны не выполняют свою часть сделки.

На заметку, это действительно было бы возможно с технологией, используемой в настоящее время ZCash. Используя zk-SNARKS, вы можете сгенерировать доказательство того, что часть контента зашифрована ключом X. В той же подписи zk-SNARK вы можете доказать, что хеш (X) = Y, и создать экономическую конструкцию, которая позволит транзакцию только после X раскрывается, создавая Y и позволяя партии получить свои деньги.

Очень интересно, спасибо. Где я мог найти такие контракты? Вы говорите о контрактах на основе эфириума?
@Nikksno Эти контракты также возможны в биткойнах с использованием OP_CLTV. По сути, пройдя блок X, вы лишаете доступ ко всем средствам для обеих сторон. Это в основном экономическая конструкция, исследование равновесия Нэша. Лучший пример, который я могу найти, это, вероятно, добровольный.net /bitmarkets/whitepaper.