Что то работы скопилось по основной занятости =)
расчет TTL в блоках биткойн несет свои трудности -- мне кажется
тогда соотношение скорости DIANNA и биткойн может быть только кратным
как простые дроби -- что обеспечить труднее
пересчет цены домена нужно делать гораздо чаще чем через 2016 блоков
в моих тестах цена резко скачет от блока к блоку ( соседнему ! )
лучше пусть она меняется плавно.
Почему я предлагаю измерять TTL в блоках биткоин?
Возможен вариант, когда цена будет весьма неудобная и народ не захочет апдейтить базу за такую цену. Цепочка блоков остановится на этой цене и следующего пересчета цены может попросту не наступить.
Но это наверно касается не TTL, а периода пересчета цены. Какие тут варианты решения этой проблемы?
Варант 1. Тогда можно сделать то, над чем я думал. Включать пересчет цены через N блоков (допустим 2016)
или через соответствующий промежуток таймштампа (допустим, 14 суток). То есть при таком раскладе, пересчет цены включится через 14 суток в любом случае, даже без активности в цепи.
Но вот опять же. Заплатил человек комиссию, она включилась в цепь биткоин, блок дианы еще не создался. И тут бац - пересчет цены. То есть заплатил по старой цене а считать уже нужно по новой. Что тут делать?
Я думал ттл и соответствие цены к блоку считать по блокам биткоин. Это надежно, но геморройно. (вариант 0)
Вариант 2. Но может просто вернуть опять дифпенальти? И считать не по строгой цене, а допускать отклонения, но за пенали в сложности. Однако это вносит непонятки в прайсинг майнеров.
Вариант 3. Транзакцию с комиссией не бродкастить, а отдавать
лично майнеру вместе со всеми остальными данными по домену. И ввести правило что транзакция с комиссией должна быть запечатана в родительский блок дианы. Однако это создает сложность в майнинге. Если майнер поймает правильный хеш блока биткоин, а блок дианы еще не нашелся - майнер будет вынужден пропустить блок биткоин. Это плохо.
Вариант 4. ттл и пересчет блоков в блоках дианы. Но вести какую то базу соответствия блоков биткоин к блокам дианы. Типа этому блоку биткоин соответствует этот ближайший блок дианы. И тогда правильность цены можно определить довольно точно. Платеж был в N-м блоке биткоин, значит, ему соответсвует цена M-го блока дианы.
Итого наиболее безопасный вариант №4 мне кажется. Правда придется помучаться с синхронизацией =)