SlideShare a Scribd company logo
1 of 53
Download to read offline
Блокчейн - проблемы и
потенциальные решения
к.ф.-м.н. Мешков Дмитрий1,2
1. Ergo platform
2. IOHK Research
Введение в блокчейн
● Код и техническое описание в 2008
● Поверхностный анализ
● Но на практике все работает
● Стихийные исследования внутри
сообщества с 2009
● Академические исследования с 2013
История блокчейн
● Двойные траты
● У Алисы есть 1 монета
● Она создает 2 транзакции
Alice → Bob & Alice → Charlie.
● Кто получит монету?
● Централизованное решение – валидна
первая транзакция (с т.з. банка)
● Децентрализованное решение – сортировка
транзакций при помощи блокчейна
Проблема
● Сортировка внутри блока
● Каждый блок ссылается на предыдущий
Blockchain
Row 1 Row 2 Row 3 Row 4
0
2
4
6
8
10
12
Column 1
Column 2
Column 3
Proof-of-Work
● Создание блока – случайный процесс
● Могут возникать форки
54 (A→B)Block 53
55 (A→C)
Дерево блоков
● Создание блока – случайный процесс
● Могут возникать форки
● Правильная цепочка – самая длинная
● Вероятность форков экспоненциально
убывает с длиной
Дерево блоков
Block N54 (A→B) Block 56 Block 59Block 53
55 (A→C) Block 57 Block 58
Block NBlock 60
● Eventual consistency
Block N54 (A→B) Block 56 Block 59Block 53
55 (A→C) Block 57 Block 58
Block NBlock 60
Block NBlock 61
Дерево блоков
Атака 51%
● Имея больше 50% вычислительной мощности,
можно всегда майнить все блоки
Атака 51%
● Имея больше 50% вычислительной мощности,
можно всегда майнить все блоки
Модель Биткоин
● Persistence (параметр k)
Если честный участник отмечает транзакцию как
стабильную (глубина блоков > k), то всякий раз, когда
другой честный участник пометит ее как стабильную, она
будет на том же месте
● Liveness (параметры u, k)
Если все честные участники пытаются добавить
транзакцию в блокчейн, то они отметят ее как стабильную
не позже чем через u блоков
Свойства
● “The Bitcoin Backbone Protocol: Analysis and Applications”,
Garay et. al
https://eprint.iacr.org/2014/765.pdf
● Синхронная сеть
● Фиксированное количество участников
● Все участники обладают одинаковой вычислительной
мощностью
● Злоумышленник контролирует не более половины
участников
● Свойства Persistence и Liveness выполняются!
Протокол Биткоин
Сетевой уровень
● Одноранговая p2p сеть ● Реальная сеть Биткоин
● “Analysis of the Blockchain Protocol in Asynchronous Networks.”,
Pass et al. http://eprint.iacr.org/2016/454.pdf
● “Multi-mode Cryptocurrency Systems” Chepurnoy et al.
Сетевой уровень
Переменное число
участников
Пересчет сложности
● Сложность пересчитывается каждые 2016 блоков
● Предполагается постоянная вычислительная мощность сети
Graph from https://bitcoinwisdom.com/bitcoin/difficulty
● “The bitcoin backbone protocol with chains of variable difficulty”
Garay et al
https://eprint.iacr.org/2016/1048.pdf
● “Difficulty control for blockchain-based consensus systems”
Kraft
https://goo.gl/3RhdPE
● “Theoretical Bitcoin Attacks with less than Half of the
Computational Power” Bahack
https://arxiv.org/abs/1312.7013
● “Revisiting Difficulty Control for Blockchain Systems” Meshkov
et al
https://eprint.iacr.org/2017/731.pdf
Пересчет сложности
Coin-hopping attackDifficulty
Time
: BTC/BCHПример
Graph from http://fork.lol/pow/speed
Рациональное поведение
● “Blockchain Mining Games” Kiayias et al.
http://www.research.ed.ac.uk/portal/files/29075910/Blockch
ainMiningGames.pdf
Стратегии майнинга
● “Majority is not enough: Bitcoin mining is vulnerable” I. Eyal. et. al.
http://www.cs.cornell.edu/~ie53/publications/btcProcArXiv.pdf
: selfish miningСтратегии майнинга
: selfish miningСтратегии майнинга
: selfish miningСтратегии майнинга
● “On the Instability of Bitcoin Without the Block Reward”
Carlsten et al.
http://www.cs.princeton.edu/~smattw/CKWN-CCS16.pdf
: instabilityСтратегии майнинга
● Можно объединять стратегии
: instabilityСтратегии майнинга
Алгоритмы консенсуса
● “One CPU One Vote”
● 270
хэшей в секунду
● “AsicBoost: A Speedup for Bitcoin Mining”
https://goo.gl/HfTUkD
ASIC-устойчивые алгоритмы майнинга
● “Equihash: Asymmetric proof-of-work based on the
generalized birthday problem” Biryukov and Khovratovich
https://eprint.iacr.org/2015/946.pdf
● “Scrypt is maximally memory-hard” Alwen et al
https://eprint.iacr.org/2016/989.pdf
Майнинг
● “Proofs of Space”, Dziembowski et. al
http://eprint.iacr.org/2013/796.pdf
● “Beyond Hellman's Time-Memory Trade-Offs with
Applications to Proofs of Space” Abusalah et al.
https://eprint.iacr.org/2017/893
● “Permacoin: Repurposing Bitcoin Work for Data
Preservation”, Miller et al.
http://cs.umd.edu/~amiller/permacoin.pdf
Proof-of-X (X is a Physical Resource)
● “Ouroboros: A provably secure proof-of-stake blockchain
protocol”, Kiayias et. al
https://eprint.iacr.org/2016/889
● “Snow White: Provably Secure Proofs of Stake”, Daian
et al.
http://eprint.iacr.org/2016/919
● “Securing Proof-of-Stake Blockchain Protocols” Li et al.
● “Cryptocurrencies without proof of work” Bentov et al.
https://arxiv.org/pdf/1406.5694
● TwinsCoin: A Cryptocurrency via Proof-of-Work and
Proof-of-Stake. Chepurnoy et al.
https://eprint.iacr.org/2017/232.pdf
Proof-of-Stake
Пропускная способность:
On-chain
Параметры
● Время между блоками / Размер блоков
● “On Scaling Decentralized Blockchains” K. Croman,
http://fc16.ifca.ai/bitcoin/papers/CDE+16.pdf
Минимум форков
● “Bitcoin-NG: A Scalable Blockchain Protocol” I.Eyal et al.
https://goo.gl/BPTsM4
● “Enhancing Bitcoin Security and Performance
with Strong Consistency via Collective Signing”, Kogias et al.
https://goo.gl/mB53x7
● “Algorand: Scaling Byzantine Agreements for Cryptocurrencies”
Gilad Y. et al.
https://goo.gl/pu9b7D
Мы требуем 51% честных участников, но обычно
честных участников горадо больше
● Thunderella: Blockchains with Optimistic Instant
Confirmation, Pass R.
https://eprint.iacr.org/2017/913.pdf
● Tortoise and Hares Consensus: the Meshcash
Framework for Incentive-Compatible, Scalable
Cryptocurrencies, Bentov I. et al.
● Ethereum Casper
Оптимистические протоколы
Inclusive protocols
● Учитывать блоки из форков и транзакции в них
● Inclusive Block Chain Protocols, Lewenberg Y.
http://fc15.ifca.ai/preproceedings/paper_101.pdf
Meshcash
OmniLedger
● OmniLedger: A Secure, Scale-Out, Decentralized
Ledger via Sharding, Kokoris-Kogias E.
https://eprint.iacr.org/2017/406.pdf
Размер транзакций
Чем меньше транзакций, тем больше их влезет
● Аггрегированные подписи
● Mimblewimble, Poelstra A.
https://goo.gl/wxQPHW
In 1
In 2
Out 1
Out 2
Out 3
In 3
In 4
Out 5
Out 6
In 1
In 2
Out 1
Out 3
Out 4
In 3
Out 5
Off-chain
Off-chain
● The Nuts and Bolts of Micropayments: a Survey, Ali
S. et al.
https://arxiv.org/pdf/1710.02964.pdf
Централизованные решения
● Перевод внутри биржи
● Untrusted third party
● Вероятностные платежи
Off-chain
Депозит и переводы в рамках депозита
● The Bitcoin Lightning Network: Scalable Off-Chain
Instant Payments, Poon J. et al.
https://goo.gl/52Vs4J
● Scalable Funding of Bitcoin Micropayment Channel
Networks, Burcher C. et al.
● https://goo.gl/e4qrPt
Легкие клиенты
Off-chain
● “Improving Authenticated Dynamic Dictionaries, with
Applications to Cryptocurrencies” Reyzin et al.
https://eprint.iacr.org/2016/994
● “Proofs of Proofs of Work with Sublinear
Complexity” Kiayias et al.
http://fc16.ifca.ai/bitcoin/papers/KLS16.pdf
Смарт контракты
Смарт контракты
Язык аутентификации (Bitcoin script)
● “Simplicity: A New Language for Blockchains”
Russell O’Connor
https://arxiv.org/pdf/1711.03028.pdf
Код на блокчейне (Ethereum)
● “Scripting smart contracts for distributed ledger
technology”, Seijas P. at al.
https://pdfs.semanticscholar.org/264f/c40b4224b2b
b7c23e4f84a0e728945fea525.pdf
ZK-contracts
● “Zero-Knowledge Contingent Payments Revisited: Attacks
and Payments for Services”. Matteo Campanelli et al.
http://stevengoldfeder.com/papers/ZKCSP.pdf
Приватность
● “An Empirical Analysis of Linkability in the Monero Blockchain”
Miller et al.
www.monerolink.com/monerolink.pdf
● “Mixing Confidential Transactions: Comprehensive Transaction
Privacy for Bitcoin” Ruffing et al
http://fc17.ifca.ai/bitcoin/papers/bitcoin17-final6.pdf
● “Zerocash: Decentralized anonymous payments from bitcoin”
Ben-Sasson et al.
http://ieeexplore.ieee.org/stamp/stamp.jsp?arnumber=6956581
● “Mixing Coins of Different Quality: A Game-Theoretic Approach”
Abramova et al.
http://fc17.ifca.ai/bitcoin/papers/bitcoin17-final40.pdf
Приватность
И многое другое...
Что еще?
● Протоколы поверх блокчейн
● Экономические аспекты
● Децентрализованное управление
● Сценарии использования
● Удобство использования
● http://www.slideshare.net/DmitryMeshkov
● https://twitter.com/DmitryMeshkov
● Dmitry.meshkov@iohk.io
Контакты

More Related Content

What's hot

Ликбез • Блокчейн (Level 1)
Ликбез • Блокчейн (Level 1)Ликбез • Блокчейн (Level 1)
Ликбез • Блокчейн (Level 1)Blockchain School
 
Михаил Табунов, Аналитическая платформа на несколько миллиардов событий в месяц
Михаил Табунов, Аналитическая платформа на несколько миллиардов событий в месяцМихаил Табунов, Аналитическая платформа на несколько миллиардов событий в месяц
Михаил Табунов, Аналитическая платформа на несколько миллиардов событий в месяцTanya Denisyuk
 
Борис Каплуновский, Aviasales.ru
Борис Каплуновский, Aviasales.ruБорис Каплуновский, Aviasales.ru
Борис Каплуновский, Aviasales.ruOntico
 
Andrey Sobol Blockchain crowdfunding or "mommy, look, i launched ipo"
Andrey Sobol Blockchain crowdfunding or "mommy, look, i launched ipo"Andrey Sobol Blockchain crowdfunding or "mommy, look, i launched ipo"
Andrey Sobol Blockchain crowdfunding or "mommy, look, i launched ipo"Аліна Шепшелей
 
Практическое использование средств криптографии в .NET, Java и PHP
Практическое использование средств криптографии в .NET, Java и PHPПрактическое использование средств криптографии в .NET, Java и PHP
Практическое использование средств криптографии в .NET, Java и PHPVladimir Kochetkov
 
Татьяна Новикова (Казахстан), ЦАРКА. Как мы мониторим Казнет с помощью WebTotem
Татьяна Новикова (Казахстан), ЦАРКА. Как мы мониторим Казнет с помощью WebTotemТатьяна Новикова (Казахстан), ЦАРКА. Как мы мониторим Казнет с помощью WebTotem
Татьяна Новикова (Казахстан), ЦАРКА. Как мы мониторим Казнет с помощью WebTotemKazHackStan
 
Базы данных. MongoDB
Базы данных. MongoDBБазы данных. MongoDB
Базы данных. MongoDBVadim Tsesko
 
Подводные камни прикладной криптографии, I
Подводные камни прикладной криптографии, IПодводные камни прикладной криптографии, I
Подводные камни прикладной криптографии, IVladimir Kochetkov
 
iOS URL Loading System: Go Beyond
iOS URL Loading System: Go BeyondiOS URL Loading System: Go Beyond
iOS URL Loading System: Go BeyondAlexey Dodonov
 
Bitcoin - криптовалюта будущего
Bitcoin - криптовалюта будущегоBitcoin - криптовалюта будущего
Bitcoin - криптовалюта будущегоLex Mosolov
 

What's hot (10)

Ликбез • Блокчейн (Level 1)
Ликбез • Блокчейн (Level 1)Ликбез • Блокчейн (Level 1)
Ликбез • Блокчейн (Level 1)
 
Михаил Табунов, Аналитическая платформа на несколько миллиардов событий в месяц
Михаил Табунов, Аналитическая платформа на несколько миллиардов событий в месяцМихаил Табунов, Аналитическая платформа на несколько миллиардов событий в месяц
Михаил Табунов, Аналитическая платформа на несколько миллиардов событий в месяц
 
Борис Каплуновский, Aviasales.ru
Борис Каплуновский, Aviasales.ruБорис Каплуновский, Aviasales.ru
Борис Каплуновский, Aviasales.ru
 
Andrey Sobol Blockchain crowdfunding or "mommy, look, i launched ipo"
Andrey Sobol Blockchain crowdfunding or "mommy, look, i launched ipo"Andrey Sobol Blockchain crowdfunding or "mommy, look, i launched ipo"
Andrey Sobol Blockchain crowdfunding or "mommy, look, i launched ipo"
 
Практическое использование средств криптографии в .NET, Java и PHP
Практическое использование средств криптографии в .NET, Java и PHPПрактическое использование средств криптографии в .NET, Java и PHP
Практическое использование средств криптографии в .NET, Java и PHP
 
Татьяна Новикова (Казахстан), ЦАРКА. Как мы мониторим Казнет с помощью WebTotem
Татьяна Новикова (Казахстан), ЦАРКА. Как мы мониторим Казнет с помощью WebTotemТатьяна Новикова (Казахстан), ЦАРКА. Как мы мониторим Казнет с помощью WebTotem
Татьяна Новикова (Казахстан), ЦАРКА. Как мы мониторим Казнет с помощью WebTotem
 
Базы данных. MongoDB
Базы данных. MongoDBБазы данных. MongoDB
Базы данных. MongoDB
 
Подводные камни прикладной криптографии, I
Подводные камни прикладной криптографии, IПодводные камни прикладной криптографии, I
Подводные камни прикладной криптографии, I
 
iOS URL Loading System: Go Beyond
iOS URL Loading System: Go BeyondiOS URL Loading System: Go Beyond
iOS URL Loading System: Go Beyond
 
Bitcoin - криптовалюта будущего
Bitcoin - криптовалюта будущегоBitcoin - криптовалюта будущего
Bitcoin - криптовалюта будущего
 

Similar to Блокчейн - проблемы и потенциальные решения

Onchain масштабирование блокчейна. Спикер: Дмитрий Мешков
Onchain масштабирование блокчейна. Спикер: Дмитрий МешковOnchain масштабирование блокчейна. Спикер: Дмитрий Мешков
Onchain масштабирование блокчейна. Спикер: Дмитрий МешковCyber Fund
 
Bitcoin: деньги будущего
Bitcoin: деньги будущегоBitcoin: деньги будущего
Bitcoin: деньги будущегоSergei Tikhomirov
 
Эпохи в разработке программного обеспечения
Эпохи в разработке программного обеспеченияЭпохи в разработке программного обеспечения
Эпохи в разработке программного обеспеченияVitebsk Miniq
 
Блокчейн, консенсус - как и зачем? #spblockchain
Блокчейн, консенсус - как и зачем? #spblockchainБлокчейн, консенсус - как и зачем? #spblockchain
Блокчейн, консенсус - как и зачем? #spblockchainДмитрий Плахов
 
Семь тысяч Rps, один go
Семь тысяч Rps, один goСемь тысяч Rps, один go
Семь тысяч Rps, один goBadoo Development
 
регистрация собственности на блокчейн
регистрация собственности на блокчейнрегистрация собственности на блокчейн
регистрация собственности на блокчейнIgor Barinov
 
деньги будущего или как технология Blockchain изменит весь мир.
деньги будущего или как технология Blockchain изменит весь мир.деньги будущего или как технология Blockchain изменит весь мир.
деньги будущего или как технология Blockchain изменит весь мир.Sergey Skabelkin
 
Масштабирование Блокчейн Сетей
Масштабирование Блокчейн СетейМасштабирование Блокчейн Сетей
Масштабирование Блокчейн СетейEugene Aseev
 
Последние новости постгреса с PGCon / О.Бартунов, А.Коротков, Ф.Сигаев (Postg...
Последние новости постгреса с PGCon / О.Бартунов, А.Коротков, Ф.Сигаев (Postg...Последние новости постгреса с PGCon / О.Бартунов, А.Коротков, Ф.Сигаев (Postg...
Последние новости постгреса с PGCon / О.Бартунов, А.Коротков, Ф.Сигаев (Postg...Ontico
 
FrontDays #1. Илья Кучмин, Оптимизация загрузки тяжелых страниц
FrontDays #1. Илья Кучмин, Оптимизация загрузки тяжелых страницFrontDays #1. Илья Кучмин, Оптимизация загрузки тяжелых страниц
FrontDays #1. Илья Кучмин, Оптимизация загрузки тяжелых страницFrontDays
 
Moбильная база данных Realm. Прошло ли время SQLite?
Moбильная база данных Realm. Прошло ли время SQLite?Moбильная база данных Realm. Прошло ли время SQLite?
Moбильная база данных Realm. Прошло ли время SQLite?Олег Чебулаев
 
SE2016 Fundraising Andrey Sobol "Blockchain Crowdfunding or "Mommy, look, I l...
SE2016 Fundraising Andrey Sobol "Blockchain Crowdfunding or "Mommy, look, I l...SE2016 Fundraising Andrey Sobol "Blockchain Crowdfunding or "Mommy, look, I l...
SE2016 Fundraising Andrey Sobol "Blockchain Crowdfunding or "Mommy, look, I l...Inhacking
 
Анатомия веб-сервиса, Андрей Смирнов (ex-Skype)
Анатомия веб-сервиса, Андрей Смирнов (ex-Skype)Анатомия веб-сервиса, Андрей Смирнов (ex-Skype)
Анатомия веб-сервиса, Андрей Смирнов (ex-Skype)Ontico
 
Анатомия веб сервиса (HighLoad-2014)
Анатомия веб сервиса (HighLoad-2014)Анатомия веб сервиса (HighLoad-2014)
Анатомия веб сервиса (HighLoad-2014)Andrey Smirnov
 
High Load 2009 Imdg Presentation
High Load 2009   Imdg PresentationHigh Load 2009   Imdg Presentation
High Load 2009 Imdg PresentationHighLoad2009
 
BigMemory - работа с сотнями миллионов бизнес-объектов / Дмитрий Хмаладзе (Ag...
BigMemory - работа с сотнями миллионов бизнес-объектов / Дмитрий Хмаладзе (Ag...BigMemory - работа с сотнями миллионов бизнес-объектов / Дмитрий Хмаладзе (Ag...
BigMemory - работа с сотнями миллионов бизнес-объектов / Дмитрий Хмаладзе (Ag...Ontico
 
PLC Presenatation
PLC PresenatationPLC Presenatation
PLC PresenatationJTGroup
 
Java tricks for high-load server programming
Java tricks for high-load server programmingJava tricks for high-load server programming
Java tricks for high-load server programmingAndrei Pangin
 
IOTA в учебном процессе
IOTA в учебном процессеIOTA в учебном процессе
IOTA в учебном процессеAlexander Babich
 

Similar to Блокчейн - проблемы и потенциальные решения (20)

Onchain масштабирование блокчейна. Спикер: Дмитрий Мешков
Onchain масштабирование блокчейна. Спикер: Дмитрий МешковOnchain масштабирование блокчейна. Спикер: Дмитрий Мешков
Onchain масштабирование блокчейна. Спикер: Дмитрий Мешков
 
Bitcoin: деньги будущего
Bitcoin: деньги будущегоBitcoin: деньги будущего
Bitcoin: деньги будущего
 
Эпохи в разработке программного обеспечения
Эпохи в разработке программного обеспеченияЭпохи в разработке программного обеспечения
Эпохи в разработке программного обеспечения
 
Блокчейн, консенсус - как и зачем? #spblockchain
Блокчейн, консенсус - как и зачем? #spblockchainБлокчейн, консенсус - как и зачем? #spblockchain
Блокчейн, консенсус - как и зачем? #spblockchain
 
Семь тысяч Rps, один go
Семь тысяч Rps, один goСемь тысяч Rps, один go
Семь тысяч Rps, один go
 
регистрация собственности на блокчейн
регистрация собственности на блокчейнрегистрация собственности на блокчейн
регистрация собственности на блокчейн
 
деньги будущего или как технология Blockchain изменит весь мир.
деньги будущего или как технология Blockchain изменит весь мир.деньги будущего или как технология Blockchain изменит весь мир.
деньги будущего или как технология Blockchain изменит весь мир.
 
Масштабирование Блокчейн Сетей
Масштабирование Блокчейн СетейМасштабирование Блокчейн Сетей
Масштабирование Блокчейн Сетей
 
Последние новости постгреса с PGCon / О.Бартунов, А.Коротков, Ф.Сигаев (Postg...
Последние новости постгреса с PGCon / О.Бартунов, А.Коротков, Ф.Сигаев (Postg...Последние новости постгреса с PGCon / О.Бартунов, А.Коротков, Ф.Сигаев (Postg...
Последние новости постгреса с PGCon / О.Бартунов, А.Коротков, Ф.Сигаев (Postg...
 
FrontDays #1. Илья Кучмин, Оптимизация загрузки тяжелых страниц
FrontDays #1. Илья Кучмин, Оптимизация загрузки тяжелых страницFrontDays #1. Илья Кучмин, Оптимизация загрузки тяжелых страниц
FrontDays #1. Илья Кучмин, Оптимизация загрузки тяжелых страниц
 
Moбильная база данных Realm. Прошло ли время SQLite?
Moбильная база данных Realm. Прошло ли время SQLite?Moбильная база данных Realm. Прошло ли время SQLite?
Moбильная база данных Realm. Прошло ли время SQLite?
 
SE2016 Fundraising Andrey Sobol "Blockchain Crowdfunding or "Mommy, look, I l...
SE2016 Fundraising Andrey Sobol "Blockchain Crowdfunding or "Mommy, look, I l...SE2016 Fundraising Andrey Sobol "Blockchain Crowdfunding or "Mommy, look, I l...
SE2016 Fundraising Andrey Sobol "Blockchain Crowdfunding or "Mommy, look, I l...
 
Анатомия веб-сервиса, Андрей Смирнов (ex-Skype)
Анатомия веб-сервиса, Андрей Смирнов (ex-Skype)Анатомия веб-сервиса, Андрей Смирнов (ex-Skype)
Анатомия веб-сервиса, Андрей Смирнов (ex-Skype)
 
Анатомия веб сервиса (HighLoad-2014)
Анатомия веб сервиса (HighLoad-2014)Анатомия веб сервиса (HighLoad-2014)
Анатомия веб сервиса (HighLoad-2014)
 
High Load 2009 Imdg Presentation
High Load 2009   Imdg PresentationHigh Load 2009   Imdg Presentation
High Load 2009 Imdg Presentation
 
Prezentatsia fork
Prezentatsia forkPrezentatsia fork
Prezentatsia fork
 
BigMemory - работа с сотнями миллионов бизнес-объектов / Дмитрий Хмаладзе (Ag...
BigMemory - работа с сотнями миллионов бизнес-объектов / Дмитрий Хмаладзе (Ag...BigMemory - работа с сотнями миллионов бизнес-объектов / Дмитрий Хмаладзе (Ag...
BigMemory - работа с сотнями миллионов бизнес-объектов / Дмитрий Хмаладзе (Ag...
 
PLC Presenatation
PLC PresenatationPLC Presenatation
PLC Presenatation
 
Java tricks for high-load server programming
Java tricks for high-load server programmingJava tricks for high-load server programming
Java tricks for high-load server programming
 
IOTA в учебном процессе
IOTA в учебном процессеIOTA в учебном процессе
IOTA в учебном процессе
 

More from Dmitry Meshkov

Dymmax Protocol overview
Dymmax Protocol overviewDymmax Protocol overview
Dymmax Protocol overviewDmitry Meshkov
 
Ergo platform overview
Ergo platform overviewErgo platform overview
Ergo platform overviewDmitry Meshkov
 
The New Generation Of Blockchains – What Is It Capable Of?
The New Generation Of Blockchains – What Is It Capable Of?The New Generation Of Blockchains – What Is It Capable Of?
The New Generation Of Blockchains – What Is It Capable Of?Dmitry Meshkov
 
Ergo platform's approach
Ergo platform's approachErgo platform's approach
Ergo platform's approachDmitry Meshkov
 
On Space-Scarce Economy In Blockchain Systems
On Space-Scarce Economy In Blockchain SystemsOn Space-Scarce Economy In Blockchain Systems
On Space-Scarce Economy In Blockchain SystemsDmitry Meshkov
 
Real world blockchains
Real world blockchainsReal world blockchains
Real world blockchainsDmitry Meshkov
 
Improving Authenticated Dynamic Dictionaries, with Application to Cryptocurre...
Improving Authenticated Dynamic Dictionaries, with Application to Cryptocurre...Improving Authenticated Dynamic Dictionaries, with Application to Cryptocurre...
Improving Authenticated Dynamic Dictionaries, with Application to Cryptocurre...Dmitry Meshkov
 
Real world blockchains
Real world blockchainsReal world blockchains
Real world blockchainsDmitry Meshkov
 
Improving Authenticated Dynamic Dictionaries, with Application to Cryptocurre...
Improving Authenticated Dynamic Dictionaries, with Application to Cryptocurre...Improving Authenticated Dynamic Dictionaries, with Application to Cryptocurre...
Improving Authenticated Dynamic Dictionaries, with Application to Cryptocurre...Dmitry Meshkov
 
Real world blockchains
Real world blockchainsReal world blockchains
Real world blockchainsDmitry Meshkov
 

More from Dmitry Meshkov (14)

Dymmax Protocol overview
Dymmax Protocol overviewDymmax Protocol overview
Dymmax Protocol overview
 
Ergo details
Ergo detailsErgo details
Ergo details
 
Ergo Hong Kong meetup
Ergo Hong Kong meetupErgo Hong Kong meetup
Ergo Hong Kong meetup
 
Ergo platform overview
Ergo platform overviewErgo platform overview
Ergo platform overview
 
The New Generation Of Blockchains – What Is It Capable Of?
The New Generation Of Blockchains – What Is It Capable Of?The New Generation Of Blockchains – What Is It Capable Of?
The New Generation Of Blockchains – What Is It Capable Of?
 
Ergo platform's approach
Ergo platform's approachErgo platform's approach
Ergo platform's approach
 
On Space-Scarce Economy In Blockchain Systems
On Space-Scarce Economy In Blockchain SystemsOn Space-Scarce Economy In Blockchain Systems
On Space-Scarce Economy In Blockchain Systems
 
Real world blockchains
Real world blockchainsReal world blockchains
Real world blockchains
 
Improving Authenticated Dynamic Dictionaries, with Application to Cryptocurre...
Improving Authenticated Dynamic Dictionaries, with Application to Cryptocurre...Improving Authenticated Dynamic Dictionaries, with Application to Cryptocurre...
Improving Authenticated Dynamic Dictionaries, with Application to Cryptocurre...
 
Real world blockchains
Real world blockchainsReal world blockchains
Real world blockchains
 
Improving Authenticated Dynamic Dictionaries, with Application to Cryptocurre...
Improving Authenticated Dynamic Dictionaries, with Application to Cryptocurre...Improving Authenticated Dynamic Dictionaries, with Application to Cryptocurre...
Improving Authenticated Dynamic Dictionaries, with Application to Cryptocurre...
 
Scrypto designed 4
Scrypto designed 4Scrypto designed 4
Scrypto designed 4
 
Real world blockchains
Real world blockchainsReal world blockchains
Real world blockchains
 
Scorex framework
Scorex frameworkScorex framework
Scorex framework
 

Блокчейн - проблемы и потенциальные решения

  • 1. Блокчейн - проблемы и потенциальные решения к.ф.-м.н. Мешков Дмитрий1,2 1. Ergo platform 2. IOHK Research
  • 3. ● Код и техническое описание в 2008 ● Поверхностный анализ ● Но на практике все работает ● Стихийные исследования внутри сообщества с 2009 ● Академические исследования с 2013 История блокчейн
  • 4. ● Двойные траты ● У Алисы есть 1 монета ● Она создает 2 транзакции Alice → Bob & Alice → Charlie. ● Кто получит монету? ● Централизованное решение – валидна первая транзакция (с т.з. банка) ● Децентрализованное решение – сортировка транзакций при помощи блокчейна Проблема
  • 5. ● Сортировка внутри блока ● Каждый блок ссылается на предыдущий Blockchain
  • 6. Row 1 Row 2 Row 3 Row 4 0 2 4 6 8 10 12 Column 1 Column 2 Column 3 Proof-of-Work
  • 7. ● Создание блока – случайный процесс ● Могут возникать форки 54 (A→B)Block 53 55 (A→C) Дерево блоков
  • 8. ● Создание блока – случайный процесс ● Могут возникать форки ● Правильная цепочка – самая длинная ● Вероятность форков экспоненциально убывает с длиной Дерево блоков Block N54 (A→B) Block 56 Block 59Block 53 55 (A→C) Block 57 Block 58 Block NBlock 60
  • 9. ● Eventual consistency Block N54 (A→B) Block 56 Block 59Block 53 55 (A→C) Block 57 Block 58 Block NBlock 60 Block NBlock 61 Дерево блоков
  • 10. Атака 51% ● Имея больше 50% вычислительной мощности, можно всегда майнить все блоки
  • 11. Атака 51% ● Имея больше 50% вычислительной мощности, можно всегда майнить все блоки
  • 13. ● Persistence (параметр k) Если честный участник отмечает транзакцию как стабильную (глубина блоков > k), то всякий раз, когда другой честный участник пометит ее как стабильную, она будет на том же месте ● Liveness (параметры u, k) Если все честные участники пытаются добавить транзакцию в блокчейн, то они отметят ее как стабильную не позже чем через u блоков Свойства
  • 14. ● “The Bitcoin Backbone Protocol: Analysis and Applications”, Garay et. al https://eprint.iacr.org/2014/765.pdf ● Синхронная сеть ● Фиксированное количество участников ● Все участники обладают одинаковой вычислительной мощностью ● Злоумышленник контролирует не более половины участников ● Свойства Persistence и Liveness выполняются! Протокол Биткоин
  • 16. ● Одноранговая p2p сеть ● Реальная сеть Биткоин ● “Analysis of the Blockchain Protocol in Asynchronous Networks.”, Pass et al. http://eprint.iacr.org/2016/454.pdf ● “Multi-mode Cryptocurrency Systems” Chepurnoy et al. Сетевой уровень
  • 18. Пересчет сложности ● Сложность пересчитывается каждые 2016 блоков ● Предполагается постоянная вычислительная мощность сети Graph from https://bitcoinwisdom.com/bitcoin/difficulty
  • 19. ● “The bitcoin backbone protocol with chains of variable difficulty” Garay et al https://eprint.iacr.org/2016/1048.pdf ● “Difficulty control for blockchain-based consensus systems” Kraft https://goo.gl/3RhdPE ● “Theoretical Bitcoin Attacks with less than Half of the Computational Power” Bahack https://arxiv.org/abs/1312.7013 ● “Revisiting Difficulty Control for Blockchain Systems” Meshkov et al https://eprint.iacr.org/2017/731.pdf Пересчет сложности
  • 21. : BTC/BCHПример Graph from http://fork.lol/pow/speed
  • 23. ● “Blockchain Mining Games” Kiayias et al. http://www.research.ed.ac.uk/portal/files/29075910/Blockch ainMiningGames.pdf Стратегии майнинга
  • 24. ● “Majority is not enough: Bitcoin mining is vulnerable” I. Eyal. et. al. http://www.cs.cornell.edu/~ie53/publications/btcProcArXiv.pdf : selfish miningСтратегии майнинга
  • 27. ● “On the Instability of Bitcoin Without the Block Reward” Carlsten et al. http://www.cs.princeton.edu/~smattw/CKWN-CCS16.pdf : instabilityСтратегии майнинга
  • 28. ● Можно объединять стратегии : instabilityСтратегии майнинга
  • 30. ● “One CPU One Vote” ● 270 хэшей в секунду ● “AsicBoost: A Speedup for Bitcoin Mining” https://goo.gl/HfTUkD ASIC-устойчивые алгоритмы майнинга ● “Equihash: Asymmetric proof-of-work based on the generalized birthday problem” Biryukov and Khovratovich https://eprint.iacr.org/2015/946.pdf ● “Scrypt is maximally memory-hard” Alwen et al https://eprint.iacr.org/2016/989.pdf Майнинг
  • 31. ● “Proofs of Space”, Dziembowski et. al http://eprint.iacr.org/2013/796.pdf ● “Beyond Hellman's Time-Memory Trade-Offs with Applications to Proofs of Space” Abusalah et al. https://eprint.iacr.org/2017/893 ● “Permacoin: Repurposing Bitcoin Work for Data Preservation”, Miller et al. http://cs.umd.edu/~amiller/permacoin.pdf Proof-of-X (X is a Physical Resource)
  • 32. ● “Ouroboros: A provably secure proof-of-stake blockchain protocol”, Kiayias et. al https://eprint.iacr.org/2016/889 ● “Snow White: Provably Secure Proofs of Stake”, Daian et al. http://eprint.iacr.org/2016/919 ● “Securing Proof-of-Stake Blockchain Protocols” Li et al. ● “Cryptocurrencies without proof of work” Bentov et al. https://arxiv.org/pdf/1406.5694 ● TwinsCoin: A Cryptocurrency via Proof-of-Work and Proof-of-Stake. Chepurnoy et al. https://eprint.iacr.org/2017/232.pdf Proof-of-Stake
  • 34. Параметры ● Время между блоками / Размер блоков ● “On Scaling Decentralized Blockchains” K. Croman, http://fc16.ifca.ai/bitcoin/papers/CDE+16.pdf
  • 35. Минимум форков ● “Bitcoin-NG: A Scalable Blockchain Protocol” I.Eyal et al. https://goo.gl/BPTsM4 ● “Enhancing Bitcoin Security and Performance with Strong Consistency via Collective Signing”, Kogias et al. https://goo.gl/mB53x7 ● “Algorand: Scaling Byzantine Agreements for Cryptocurrencies” Gilad Y. et al. https://goo.gl/pu9b7D
  • 36. Мы требуем 51% честных участников, но обычно честных участников горадо больше ● Thunderella: Blockchains with Optimistic Instant Confirmation, Pass R. https://eprint.iacr.org/2017/913.pdf ● Tortoise and Hares Consensus: the Meshcash Framework for Incentive-Compatible, Scalable Cryptocurrencies, Bentov I. et al. ● Ethereum Casper Оптимистические протоколы
  • 37. Inclusive protocols ● Учитывать блоки из форков и транзакции в них ● Inclusive Block Chain Protocols, Lewenberg Y. http://fc15.ifca.ai/preproceedings/paper_101.pdf
  • 39. OmniLedger ● OmniLedger: A Secure, Scale-Out, Decentralized Ledger via Sharding, Kokoris-Kogias E. https://eprint.iacr.org/2017/406.pdf
  • 40. Размер транзакций Чем меньше транзакций, тем больше их влезет ● Аггрегированные подписи ● Mimblewimble, Poelstra A. https://goo.gl/wxQPHW In 1 In 2 Out 1 Out 2 Out 3 In 3 In 4 Out 5 Out 6 In 1 In 2 Out 1 Out 3 Out 4 In 3 Out 5
  • 42. Off-chain ● The Nuts and Bolts of Micropayments: a Survey, Ali S. et al. https://arxiv.org/pdf/1710.02964.pdf Централизованные решения ● Перевод внутри биржи ● Untrusted third party ● Вероятностные платежи
  • 43. Off-chain Депозит и переводы в рамках депозита ● The Bitcoin Lightning Network: Scalable Off-Chain Instant Payments, Poon J. et al. https://goo.gl/52Vs4J ● Scalable Funding of Bitcoin Micropayment Channel Networks, Burcher C. et al. ● https://goo.gl/e4qrPt
  • 45. Off-chain ● “Improving Authenticated Dynamic Dictionaries, with Applications to Cryptocurrencies” Reyzin et al. https://eprint.iacr.org/2016/994 ● “Proofs of Proofs of Work with Sublinear Complexity” Kiayias et al. http://fc16.ifca.ai/bitcoin/papers/KLS16.pdf
  • 47. Смарт контракты Язык аутентификации (Bitcoin script) ● “Simplicity: A New Language for Blockchains” Russell O’Connor https://arxiv.org/pdf/1711.03028.pdf Код на блокчейне (Ethereum) ● “Scripting smart contracts for distributed ledger technology”, Seijas P. at al. https://pdfs.semanticscholar.org/264f/c40b4224b2b b7c23e4f84a0e728945fea525.pdf
  • 48. ZK-contracts ● “Zero-Knowledge Contingent Payments Revisited: Attacks and Payments for Services”. Matteo Campanelli et al. http://stevengoldfeder.com/papers/ZKCSP.pdf
  • 50. ● “An Empirical Analysis of Linkability in the Monero Blockchain” Miller et al. www.monerolink.com/monerolink.pdf ● “Mixing Confidential Transactions: Comprehensive Transaction Privacy for Bitcoin” Ruffing et al http://fc17.ifca.ai/bitcoin/papers/bitcoin17-final6.pdf ● “Zerocash: Decentralized anonymous payments from bitcoin” Ben-Sasson et al. http://ieeexplore.ieee.org/stamp/stamp.jsp?arnumber=6956581 ● “Mixing Coins of Different Quality: A Game-Theoretic Approach” Abramova et al. http://fc17.ifca.ai/bitcoin/papers/bitcoin17-final40.pdf Приватность
  • 52. Что еще? ● Протоколы поверх блокчейн ● Экономические аспекты ● Децентрализованное управление ● Сценарии использования ● Удобство использования