Distributed systems
Cryptocurrencies
Comments 10
0
Хорошая статья и картинки забавные, спасибо.) Но, мне кажется, было бы очень уместно объяснить, как организовать таймлок таким образом, что Алиса не может снять деньги до истечения срока, а остальные — могут.) Или я что-то не понял и таймлок устроен не так?
+1
А если Боб перехватив транзакцию Алисы в пуле транзакций пока она еще не попала в блокчейн создаст конкурирующую транзакцию? Тогда по идее в эфириуме в пуле транзакций будут две конкурирующие транзакции, а которая из них попадет в блокчейн выбирать уже майнеру?
Или от такого сценария тоже защита предусмотрена?
0
Предусмотрена. Деньги Боба на Эфириуме залочены на определенное время (в примере, 24 часа). В течение этого времени транзакции Алисы ничего не угрожает, поскольку транзакции Боба с этими деньгами будут невалидны. Транзакция Боба действительно попадет в пул, но не будет принята. Возможно, в спойлере «Время истекло, или timelock» вы найдете чуть больше информации.
+1
Похоже что описание в статье упрощенное.
Вот тут в примере алгоритма видно что помимо секрета(который в вашей статье ключ хэширования) используются ECDA подписи и транзакцию Алисы нельзя изменить используя только секрет.
A creates TX1: "Pay w BTC to <B's public key> if (x for H(x) known and signed by B) or (signed by A & B)"
B creates TX3: "Pay v alt-coins to <A-public-key> if (x for H(x) known and signed by A) or (signed by A & B)"
0
есть только нюанс — временами при минимальной комиссии транзакция в биткойне может висеть неделю, а то и две. тогда время «лока» выйдет и можно будет отправить повторную транзакцию с бОльшей комиссией. в итоге эта транзакция пройдет, а первая, когда до нее дойдет дело, получит отказ. Защита пала. Уот так уот.
0
Вообще есть способ отправить две транзакции ссылающиеся на один выход. Когда то пришлось такое делать как раз из за маленькой комиссии. Пришлось сделать новый кошелек, импортировать туда приватный ключ и сформировать транзакцию в оффлайне, пока пул транзакций моей ноды не получил застрявшую. Со старым кошельком такое было сделать невозможно — он как раз хранил информацию о застрявшей и сразу ее в сеть отправлял.
В блокчейн попала транзакция с большей комиссией.
0
еще можно было не делать новый кошелек, если была копия старого до отправки) хотя вариант с импортом ключа вполне даже нормальный
Only those users with full accounts are able to leave comments., please.