Telegram Group & Telegram Channel
​​
Новый класс меток Noinput

В продолжение поста
про OP_CHECKTEMPLATEVERIFY (OP_CTV)
⬇️⬇️⬇️
С Signature Hash Types
разобрались

Транзакция состоит из:

Input (Вход) - это ссылка на выход другой транзакции. У транзакции их может быть несколько. Ссылки суммируются и сумма BTC используется в выходе этой транзакции.

Output (Выход) - содержит информацию об отправке BTC. Их может быть несколько, тогда они делят сумму пришедшую со входа между собой.Каждый выход используется для входа следующей транзакции, только один раз. Сумма всех входов для транзакции используется на её выходах.

Разработчик Blockstream и Xapo Кристиан Декер и Таунс разработали новый вид "меток SIGHASH": SIGHASH NOINPUT, SIGHASH ANYPREVOUT,
SIGHASH ANYPREVOUTANYSCRIPT

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

Добавляется подпись соответствующая PublicKey, которая доказывает, что их владелец хочет произвести трату.

Подписывать каждую часть транзакции необязательно. Можно указать какую часть транзакции подписывать при помощи SIGHASH.

Новый класс Noinput (Noinput, Anyprevout и Anyprevoutanyscript) указывает, что выходные данные будут подписаны, а входные нет. Это значит, что не подписывая входные данные, можно осуществить транзакцию, поменяв местами совместимые входы, не генерируя новую подпись.

Таких совместимых входов, чаще всего не существует. Подпись соответствует PublicKey, а следовательно определенным монетам. Замена входа на другой приведет к тому, что транзакция станет недействительной.

Но не все так противоречиво :)

Разбирая стек биткоина я писал о решении для упрощенного способа осуществления "off-chain" (внесетевых) транзакций - Eltoo.

Чтобы Bitcoin мог поддерживать Eltoo, алгоритм подписей sighash noinput должен быть внедрен в код Bitcoin.

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

Такое решение необходимо, так как eltoo добавляет процедуру, которая делает каждое обновленное состояние платежного канала заданным. Любое обновление канала, например, когда А совершает транзакцию Б, состоит из двух транзакций, каждая из которых хранит, и впоследствии полностью заменяет, предыдущую транзакцию.

При помощи Eltoo оба пользователя канала сохраняют копию одной и той же необработанной транзакции - "update transaction", которая представляет их средства в канале. Эту транзакцию подписывают оба пользователя и каждый из них может транслировать ее в блокчейн.

Один из пользователей решает транслировать транзакцию в сеть. Средства могут быть потрачены двумя способами:

1) Оба пользователя тратят свою долю средств до истечения временного интервала

2) Средства используются для траты на новую взаимоподписанную "update transaction".

В Eltoo операции update пронумерованы в хронологическом порядке. Update transaction 3 может тратить средства из 2, а update transaction 2 из 1, но не наоборот.

В сети Bitcoin уже возможно такое, но куда же без нюансов...Так как входные данные должны быть подписаны, update transaction должны ссылаться только на выходные данные транзакции, которая была перед ней. Т.е. 3 тратит из 2, но не из 1.

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

Чтобы update transaction мог тратить средства из 2 и из 1, необходимы метки Noinput. При замене входных данных последняя update transaction всегда может быть переписана для прямой ссылки на любую другую транзакцию.

Обмен входными данными возможен. Ведь независимо от того, какая предыдущая транзакция выбрана, в платежном канале требуемые подписи всегда исходят от одних и тех же двух пользователей с одинаковыми двумя public и private keys.



tg-me.com/CryptoBotan/978
Create:
Last Update:

​​
Новый класс меток Noinput

В продолжение поста
про OP_CHECKTEMPLATEVERIFY (OP_CTV)
⬇️⬇️⬇️
С Signature Hash Types
разобрались

Транзакция состоит из:

Input (Вход) - это ссылка на выход другой транзакции. У транзакции их может быть несколько. Ссылки суммируются и сумма BTC используется в выходе этой транзакции.

Output (Выход) - содержит информацию об отправке BTC. Их может быть несколько, тогда они делят сумму пришедшую со входа между собой.Каждый выход используется для входа следующей транзакции, только один раз. Сумма всех входов для транзакции используется на её выходах.

Разработчик Blockstream и Xapo Кристиан Декер и Таунс разработали новый вид "меток SIGHASH": SIGHASH NOINPUT, SIGHASH ANYPREVOUT,
SIGHASH ANYPREVOUTANYSCRIPT

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

Добавляется подпись соответствующая PublicKey, которая доказывает, что их владелец хочет произвести трату.

Подписывать каждую часть транзакции необязательно. Можно указать какую часть транзакции подписывать при помощи SIGHASH.

Новый класс Noinput (Noinput, Anyprevout и Anyprevoutanyscript) указывает, что выходные данные будут подписаны, а входные нет. Это значит, что не подписывая входные данные, можно осуществить транзакцию, поменяв местами совместимые входы, не генерируя новую подпись.

Таких совместимых входов, чаще всего не существует. Подпись соответствует PublicKey, а следовательно определенным монетам. Замена входа на другой приведет к тому, что транзакция станет недействительной.

Но не все так противоречиво :)

Разбирая стек биткоина я писал о решении для упрощенного способа осуществления "off-chain" (внесетевых) транзакций - Eltoo.

Чтобы Bitcoin мог поддерживать Eltoo, алгоритм подписей sighash noinput должен быть внедрен в код Bitcoin.

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

Такое решение необходимо, так как eltoo добавляет процедуру, которая делает каждое обновленное состояние платежного канала заданным. Любое обновление канала, например, когда А совершает транзакцию Б, состоит из двух транзакций, каждая из которых хранит, и впоследствии полностью заменяет, предыдущую транзакцию.

При помощи Eltoo оба пользователя канала сохраняют копию одной и той же необработанной транзакции - "update transaction", которая представляет их средства в канале. Эту транзакцию подписывают оба пользователя и каждый из них может транслировать ее в блокчейн.

Один из пользователей решает транслировать транзакцию в сеть. Средства могут быть потрачены двумя способами:

1) Оба пользователя тратят свою долю средств до истечения временного интервала

2) Средства используются для траты на новую взаимоподписанную "update transaction".

В Eltoo операции update пронумерованы в хронологическом порядке. Update transaction 3 может тратить средства из 2, а update transaction 2 из 1, но не наоборот.

В сети Bitcoin уже возможно такое, но куда же без нюансов...Так как входные данные должны быть подписаны, update transaction должны ссылаться только на выходные данные транзакции, которая была перед ней. Т.е. 3 тратит из 2, но не из 1.

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

Чтобы update transaction мог тратить средства из 2 и из 1, необходимы метки Noinput. При замене входных данных последняя update transaction всегда может быть переписана для прямой ссылки на любую другую транзакцию.

Обмен входными данными возможен. Ведь независимо от того, какая предыдущая транзакция выбрана, в платежном канале требуемые подписи всегда исходят от одних и тех же двух пользователей с одинаковыми двумя public и private keys.

BY CryptoBotan




Share with your friend now:
tg-me.com/CryptoBotan/978

View MORE
Open in Telegram


CryptoBotan Telegram | DID YOU KNOW?

Date: |

A Telegram spokesman declined to comment on the bond issue or the amount of the debt the company has due. The spokesman said Telegram’s equipment and bandwidth costs are growing because it has consistently posted more than 40% year-to-year growth in users.

Should I buy bitcoin?

“To the extent it is used I fear it’s often for illicit finance. It’s an extremely inefficient way of conducting transactions, and the amount of energy that’s consumed in processing those transactions is staggering,” the former Fed chairwoman said. Yellen’s comments have been cited as a reason for bitcoin’s recent losses. However, Yellen’s assessment of bitcoin as a inefficient medium of exchange is an important point and one that has already been raised in the past by bitcoin bulls. Using a volatile asset in exchange for goods and services makes little sense if the asset can tumble 10% in a day, or surge 80% over the course of a two months as bitcoin has done in 2021, critics argue. To put a finer point on it, over the past 12 months bitcoin has registered 8 corrections, defined as a decline from a recent peak of at least 10% but not more than 20%, and two bear markets, which are defined as falls of 20% or more, according to Dow Jones Market Data.

CryptoBotan from ca


Telegram CryptoBotan
FROM USA