Telegram Group & Telegram Channel

libMiniScetch - библиотека для согласования наборов.

Для стека биткоина
⬇️⬇️⬇️
libMiniSketch - это автономная библиотека API для построения и декодирования эскизов наборов, использующаяся для согласования компактных наборов.

В посте про Erlay, я упоминал, что MiniSketch используется для сверки и согласования транзакций.

Minisketch создает библиотеку данных, которая будет использоваться для построения эскизов наборов (наборов данных транзакций). Узлы и майнеры могут затем использовать эти наборы для сверки компактных наборов.

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

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

Эскизы имеют заданную емкость, и когда количество элементов в наборе не превышает эту емкость, libminisketch всегда будет восстанавливать весь набор из эскиза.

Суть эскизов (Sketch) в том, чтобы иметь пакет данных, содержащий id для всех транзакций, которые узел принял (после последней выверки), но в компактной форме. Используя эскизы, узел может вычислить, какие транзакции у него есть, по сравнению с другими узлами. После этого он может запросить только те транзакции у тех одноранговых узлов, которые не отображаются в их эскизе.

Если у А и Б есть набор элементов, и они подозревают, что наборы в значительной степени, но не полностью перекрываются, они могут использовать протокол, чтобы позволить обеим сторонам изучить все элементы.

Мне понравилось вот такое описание решения :

Операторам узлов нужно сравнивать заметки о транзакционных данных. Это позволит им набрасывать (создавать) наборы (списки) транзакций, и программа будет перепроверять эти наборы, чтобы увидеть, какие данные встречаются в одном, но не в обоих наборах. И вместо того, чтобы тратить время и энергию на раскрытие всех этих данных друг другу, узлам с minisketch нужно знать только разницу между их наборами транзакций, чтобы создать полный набор.

У меня есть множество 3, 5, 7, 11, а у вас 3, 5, 7, 9, 11. Очевидно, что разница 9. Мы оба вычисляем сумму наших элементов:
3+5+7+11=26 - у меня
3+5+7+9+11=35 - у вас
Я посылаю вам свою сумму 26 и вы вычитаете ее из своей суммы. Разница равна 9.

Все описанное выше говорит об одном и том же, но с разной подачей...Надеюсь суть мне удалось донести😉

GitHub

#PerfomanceAndUsability



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


libMiniScetch - библиотека для согласования наборов.

Для стека биткоина
⬇️⬇️⬇️
libMiniSketch - это автономная библиотека API для построения и декодирования эскизов наборов, использующаяся для согласования компактных наборов.

В посте про Erlay, я упоминал, что MiniSketch используется для сверки и согласования транзакций.

Minisketch создает библиотеку данных, которая будет использоваться для построения эскизов наборов (наборов данных транзакций). Узлы и майнеры могут затем использовать эти наборы для сверки компактных наборов.

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

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

Эскизы имеют заданную емкость, и когда количество элементов в наборе не превышает эту емкость, libminisketch всегда будет восстанавливать весь набор из эскиза.

Суть эскизов (Sketch) в том, чтобы иметь пакет данных, содержащий id для всех транзакций, которые узел принял (после последней выверки), но в компактной форме. Используя эскизы, узел может вычислить, какие транзакции у него есть, по сравнению с другими узлами. После этого он может запросить только те транзакции у тех одноранговых узлов, которые не отображаются в их эскизе.

Если у А и Б есть набор элементов, и они подозревают, что наборы в значительной степени, но не полностью перекрываются, они могут использовать протокол, чтобы позволить обеим сторонам изучить все элементы.

Мне понравилось вот такое описание решения :

Операторам узлов нужно сравнивать заметки о транзакционных данных. Это позволит им набрасывать (создавать) наборы (списки) транзакций, и программа будет перепроверять эти наборы, чтобы увидеть, какие данные встречаются в одном, но не в обоих наборах. И вместо того, чтобы тратить время и энергию на раскрытие всех этих данных друг другу, узлам с minisketch нужно знать только разницу между их наборами транзакций, чтобы создать полный набор.

У меня есть множество 3, 5, 7, 11, а у вас 3, 5, 7, 9, 11. Очевидно, что разница 9. Мы оба вычисляем сумму наших элементов:
3+5+7+11=26 - у меня
3+5+7+9+11=35 - у вас
Я посылаю вам свою сумму 26 и вы вычитаете ее из своей суммы. Разница равна 9.

Все описанное выше говорит об одном и том же, но с разной подачей...Надеюсь суть мне удалось донести😉

GitHub

#PerfomanceAndUsability

BY CryptoBotan


Warning: Undefined variable $i in /var/www/tg-me/post.php on line 283

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

View MORE
Open in Telegram


CryptoBotan Telegram | DID YOU KNOW?

Date: |

How Does Bitcoin Work?

Bitcoin is built on a distributed digital record called a blockchain. As the name implies, blockchain is a linked body of data, made up of units called blocks that contain information about each and every transaction, including date and time, total value, buyer and seller, and a unique identifying code for each exchange. Entries are strung together in chronological order, creating a digital chain of blocks. “Once a block is added to the blockchain, it becomes accessible to anyone who wishes to view it, acting as a public ledger of cryptocurrency transactions,” says Stacey Harris, consultant for Pelicoin, a network of cryptocurrency ATMs. Blockchain is decentralized, which means it’s not controlled by any one organization. “It’s like a Google Doc that anyone can work on,” says Buchi Okoro, CEO and co-founder of African cryptocurrency exchange Quidax. “Nobody owns it, but anyone who has a link can contribute to it. And as different people update it, your copy also gets updated.”

CryptoBotan from ar


Telegram CryptoBotan
FROM USA