Telegram Group & Telegram Channel
​​
Хотел написать о Neutrino для стека Bitcoin, но прежде нужно разобраться вот с чем.

Технология SPV "Simplified Payment Verification" (SPV)
⬇️⬇️⬇️
В оригинальном White Paper Bitcoin (раздел 8), Сатоши Накамото описал технологию "Simplified Payment Verification" (SPV) - "Упрощенная проверка платежей".

(Выдержка из White Paper Bitcoin)

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

Узлы SPV, загружают только заголовки блоков и исключают транзакции каждого блока. Таким образом, у них есть цепочка блоков без транзакций, и это позволяет иметь результирующий объем данных, хранящихся локально более чем в тысячу раз меньше по размеру.

Используя SPV необходимо знать только корень Мёркла каждого блока для проверки транзакций. Следовательно появляется возможность хранения 80 байт на блок, а не 1Мб.

SPV выполняет 2 задачи:

1) Гарантирует, что ваши транзакции находятся в блоке.
2) Обеспечивает подтверждение того, что дополнительные блоки были добавлены в блокчейн.

Но не все так гладко.

SPV кошелек не проверяет никакие другие транзакции в блоке, но чисто гипотетически, блок может быть недействителен. Допустим, что сообщество приняло новые правила консенсуса и относительно большая группа узлов, которая не принимает новое правило, забыла обновиться. Несогласные узлы будут быстро отделены от сети, но пока это не произойдет, SPV клиент временно будет введен в заблуждение и будет считать, что не обновленные узлы имеют верную и самую длинную цепочку. Поэтому управление полным узлом обеспечивает «более быструю» систему безопасности – можно проверять все транзакции самостоятельно.

///

В 2013 году BIP0037 был добавлен в ядро биткойна, чтобы сделать SPV жизнеспособным. BIP0037 добавил новую поддержку к протоколу, который позволяет одноранговым узлам уменьшать объем передаваемых данных транзакций (создавались Light-узлы). Light-узлы могли запрашивать доказательства того, что определенная транзакция произошла в определенном блоке.

Одноранговые узлы имеют возможность устанавливать фильтры для каждого соединения. Затем сервер запускает фильтр по всем транзакциям нового блока и сообщает об этих транзакциях вместе с доказательством того, что они находятся в блоке, клиенту. Затем клиент проверяет доказательство и смотрит на транзакции, чтобы увидеть, принадлежат ли они кошельку.

BIP0037 имеет несколько недостатков:

Существуют векторы отказа в обслуживании (из-за необходимости запускать множество фильтров) для использования серверов, которые отвечают на запросы BIP0037.

Фильтры SPV-клиентов имеют абсолютно нулевую конфиденциальность, так как SPV клиенты должны обращаться к полным узлам и запрашивать информацию об определенных адресах и транзакциях. Хотя эту проблему и решает фильтр Блума, но использование узла SPV вместо полного дает пользователю более слабую конфиденциальность и безопасность. Фильтр Блума позволяет запрашивать конкретные транзакции, соответствующие шаблону, а не конкретные данные.

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

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



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

​​
Хотел написать о Neutrino для стека Bitcoin, но прежде нужно разобраться вот с чем.

Технология SPV "Simplified Payment Verification" (SPV)
⬇️⬇️⬇️
В оригинальном White Paper Bitcoin (раздел 8), Сатоши Накамото описал технологию "Simplified Payment Verification" (SPV) - "Упрощенная проверка платежей".

(Выдержка из White Paper Bitcoin)

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

Узлы SPV, загружают только заголовки блоков и исключают транзакции каждого блока. Таким образом, у них есть цепочка блоков без транзакций, и это позволяет иметь результирующий объем данных, хранящихся локально более чем в тысячу раз меньше по размеру.

Используя SPV необходимо знать только корень Мёркла каждого блока для проверки транзакций. Следовательно появляется возможность хранения 80 байт на блок, а не 1Мб.

SPV выполняет 2 задачи:

1) Гарантирует, что ваши транзакции находятся в блоке.
2) Обеспечивает подтверждение того, что дополнительные блоки были добавлены в блокчейн.

Но не все так гладко.

SPV кошелек не проверяет никакие другие транзакции в блоке, но чисто гипотетически, блок может быть недействителен. Допустим, что сообщество приняло новые правила консенсуса и относительно большая группа узлов, которая не принимает новое правило, забыла обновиться. Несогласные узлы будут быстро отделены от сети, но пока это не произойдет, SPV клиент временно будет введен в заблуждение и будет считать, что не обновленные узлы имеют верную и самую длинную цепочку. Поэтому управление полным узлом обеспечивает «более быструю» систему безопасности – можно проверять все транзакции самостоятельно.

///

В 2013 году BIP0037 был добавлен в ядро биткойна, чтобы сделать SPV жизнеспособным. BIP0037 добавил новую поддержку к протоколу, который позволяет одноранговым узлам уменьшать объем передаваемых данных транзакций (создавались Light-узлы). Light-узлы могли запрашивать доказательства того, что определенная транзакция произошла в определенном блоке.

Одноранговые узлы имеют возможность устанавливать фильтры для каждого соединения. Затем сервер запускает фильтр по всем транзакциям нового блока и сообщает об этих транзакциях вместе с доказательством того, что они находятся в блоке, клиенту. Затем клиент проверяет доказательство и смотрит на транзакции, чтобы увидеть, принадлежат ли они кошельку.

BIP0037 имеет несколько недостатков:

Существуют векторы отказа в обслуживании (из-за необходимости запускать множество фильтров) для использования серверов, которые отвечают на запросы BIP0037.

Фильтры SPV-клиентов имеют абсолютно нулевую конфиденциальность, так как SPV клиенты должны обращаться к полным узлам и запрашивать информацию об определенных адресах и транзакциях. Хотя эту проблему и решает фильтр Блума, но использование узла SPV вместо полного дает пользователю более слабую конфиденциальность и безопасность. Фильтр Блума позволяет запрашивать конкретные транзакции, соответствующие шаблону, а не конкретные данные.

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

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

BY CryptoBotan




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

View MORE
Open in Telegram


CryptoBotan Telegram | DID YOU KNOW?

Date: |

How Does Bitcoin Mining Work?

Bitcoin mining is the process of adding new transactions to the Bitcoin blockchain. It’s a tough job. People who choose to mine Bitcoin use a process called proof of work, deploying computers in a race to solve mathematical puzzles that verify transactions.To entice miners to keep racing to solve the puzzles and support the overall system, the Bitcoin code rewards miners with new Bitcoins. “This is how new coins are created” and new transactions are added to the blockchain, says Okoro.

Find Channels On Telegram?

Telegram is an aspiring new messaging app that’s taking the world by storm. The app is free, fast, and claims to be one of the safest messengers around. It allows people to connect easily, without any boundaries.You can use channels on Telegram, which are similar to Facebook pages. If you’re wondering how to find channels on Telegram, you’re in the right place. Keep reading and you’ll find out how. Also, you’ll learn more about channels, creating channels yourself, and the difference between private and public Telegram channels.

CryptoBotan from ca


Telegram CryptoBotan
FROM USA