Post
Topic
Board Кодеры
Re: Как сделать криптозавещание ?
by
chimk
on 23/10/2018, 19:49:03 UTC
Подскажите, как сделать подобие завещания в биткоине. Хочется, чтобы до определенного момента монеты можно было потратить одним ключом, а после другим или несколькими.

OP_IF время OP_CHECKLOCKTIMEVERIFY OP_DROP OP_RIPEMD160 OP_EQUALVERIFY OP_ELSE OP_RIPEMD160 OP_EQUALVERIFY OP_ENDIF

Тему можно закрывать  Smiley
А можно объяснить в общих чертах для неподкованных, что это за код, как и где применяется в BTC ?

Ой, ошибочка.
Вот правильно

OP_IF время OP_CHECKLOCKTIMEVERIFY OP_DROP OP_RIPEMD160 хэш_какого-то_секрета1 OP_EQUALVERIFY OP_ELSE OP_RIPEMD160 хэш_какого-то_секрета2 OP_EQUALVERIFY OP_ENDIF

Это смарт контракт биткоина...

Да, в биткоине можно делать смарт-контракты ))
Более того, абсолютно все до единой транзакции в биткоине - это смартконтракты!

Вот если написать такой контракт
потом сформировать адрес этого контракта
потом отправить на сформированный адрес биткоины...
то потом эти биткоины можно будет забрать одним из двух способов:
1. Сформировав новый контракт в котором будет написано правильное время и правильное секретное слово1
2. Сформировав новый контракт в котором будет написано правильное секретное слово2

Например.
секретное слово1 = blablabla
хэш(blablabla)  = 7f9038204185da148f636a56713991e379473089
секретное слово2 = ololo
хэш(ololo) = 4a287de13f0649b7645ea163d1949af3baf0e1be
Время, когда можно будет забрать биткоины с помощью первого слова (blablabla) = 1.01.2019 = 1546331341 (время в формате юникс)

Тогда контракт выглядит так
OP_IF 1546331341 OP_CHECKLOCKTIMEVERIFY OP_DROP OP_RIPEMD160 7f9038204185da148f636a56713991e379473089 OP_EQUALVERIFY OP_ELSE OP_RIPEMD160 4a287de13f0649b7645ea163d1949af3baf0e1be OP_EQUALVERIFY OP_ENDIF

В шестнадцатиричном виде:
63051546331341b175a6147f9038204185da148f636a56713991e3794730898867a6144a287de13 f0649b7645ea163d1949af3baf0e1be8868

Адрес контракта:
33XxDxPsvyMmMPA4VALTQ5aPso5c3czwA5



Cпасибо за развернутый ответ. Эта инфа наверняка для многих будет новостью. Я в принципе не удивлен, потому что часто слышал что на BTC можно многое, а не только покупать продавать. Но теперь это нужно изучать, что б лучше понять. тему бы на форуме...