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: |

At a time when the Indian stock market is peaking and has rallied immensely compared to global markets, there are companies that have not performed in the last 10 years. These are definitely a minor portion of the market considering there are hundreds of stocks that have turned multibagger since 2020. What went wrong with these stocks? Reasons vary from corporate governance, sectoral weakness, company specific and so on. But the more important question is, are these stocks worth buying?

The SSE was the first modern stock exchange to open in China, with trading commencing in 1990. It has now grown to become the largest stock exchange in Asia and the third-largest in the world by market capitalization, which stood at RMB 50.6 trillion (US$7.8 trillion) as of September 2021. Stocks (both A-shares and B-shares), bonds, funds, and derivatives are traded on the exchange. The SEE has two trading boards, the Main Board and the Science and Technology Innovation Board, the latter more commonly known as the STAR Market. The Main Board mainly hosts large, well-established Chinese companies and lists both A-shares and B-shares.

CryptoBotan from in


Telegram CryptoBotan
FROM USA