Crypto Sherlock Co.©
3.25K subscribers
18 photos
1 video
2 files
345 links
Ресерч проектов с 2017

Создатель, ресерчер: @stsoen
LinkedIn: https://www.linkedin.com/in/stsoien/
Twitter: https://twitter.com/stsoien

Чат: https://t.me/CryptosherlockClub
Сайт: https://cryptosherlock.club/
Download Telegram
#новичкам

Несмотря на то, что новичков на рынке сейчас крайне мало, данный раздел будет полезен и ветеранам крипторынка - у нас у всех есть пробелы в знаниях и многие определения весьма расплывчаты. Поэтому мы запускаем новую рубрику - #новичкам

Что такое смарт-контракт?

Смарт-контракт -это программа, запускающая исполнение заданного результата при выполнении заранее прописанных условий.
Иными словами:
1. стороны определили условия и результат их исполнения.
2. условия выполнены, смарт-контракт автоматически исполняется.
Это может быть как передача активов от одной стороны к другой, при исполнении условий, так и запуск цепочки каких-либо операций.

Основные, самые очевидные преимущества технологии - это исключение посредников и решения вопроса доверия.

Первый и простейший пример такого контракта, это Мультиподпись (multisig, escrow). Не доверяющие друг другу стороны могут заморозить некоторую сумму монет в блокчейне таким образом, что, в случае необходимости потратить эту сумму, потребуются подписи более половины участников.

Хорошо виден механизм исполнения контракта на втором примере:
Контракт для откладывания средств родителями на совершеннолетие ребенка, на который можно положить деньги, которые вернутся строго через 18 лет. Это контракт, который, принимая транзакцию, переводит деньги от родителей на свой счет и проверяет, не наступило ли "через 18 лет". Если наступило, переводит деньги на счет ребенка.
Майнеры, увидев код этого контракта, выполнят его. Если ничего делать не надо, то состояние счета не изменится и никаких транзакций выполнять не нужно. Но как только пройдет 18 лет, майнер выполнит код контракта и получит транзакцию, возвращающую деньги на счет ребенка - и запишет ее в блокчейн.
Чтобы не появлялись контракты, которые в бесконечных циклах забирают деньги со счетов или DoS-ят клиентов, каждая инструкция контракта стоит немного специальной сущности - газа (у которого есть цена в валюте сети). Поэтому, исполнение контракта стоит денег, которые уходят тем, кто их исполняет и закрывает блоки - т.е. майнерам.

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

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

Безусловные плюсы технологии - это, конечно же, экономия (отсутствие посредников); неизменность, (так как прописанные условия контракта хранятся в распределенном реестре, и никто не может их изменить); а также скорость - при выполнении условий, процесс запускается мгновенно.
Самые же очевидные недостатки - это подверженность багам и сложность написания. Кроме того, многим банкам и крупным корпорациям не подходит обмен конфиденциальными данным через открытые распределенные реестры. Также, по-прежнему, актуальны проблемы масштабирования и скорости обработки транзакций.
#Новичкам

Как устроен Биткоин и что такое его транзакции.

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

Каковы особенности такой системы?
- обратимые транзакции
- посредники берут %, что увеличивает стоимость транзакций и устанавливает минимальную их цену, делая непрактичным проведение нечастых и небольших транзакций
- обратимость транзакций увеличивает стоимость сервисов, чьи услуги являются неотменяемыми (транзакцию отменили. но % с нее мы уже заплатили)
- так как платеж можно аннулировать, продавец страхуется, требуя от покупателя больше информации, чем необходимо
- определенный % мошенничества неизбежен

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

Блокчейн -это система распределенного реестра (реестр - список, перечень).

Как это работает?

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

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

Со стороны пользователя операция выглядит так: Маша открывает свой кошелек, вводит адрес получателя и сумму в 2,5 (к примеру) биткоина, исполняется подпись с помощью приватного ключа. (публичный ключ или биткойн-адрес - это уникальный персональный адрес, который используется в цепочке и каждый может видеть его, А приватный ключ работает как пароль)
Внутри системы транзакция будет иметь три фрагмента информации:
1) Вход. Запись с информацией о том, откуда у Маши появились биткоины.
2) Сумма. Количество передаваемых монет. В этом случае — 2,5.
3) Выход. Адрес биткоин-кошелька Васи.

Что такое вход и выход и что делать, если их суммы не совпадают?
Биткоины, как вы уже поняли, существуют только в виде записей операций в электронном хранилище. Так, например, баланс Маши составляет 1 BTC от Саши и 3 BTC от Сережи. Все это разные транзакции, которые были проведены в разное время. В кошельке Маши записи не сливаются в единый файл с 4 BTC, а продолжают храниться отдельно.
Что бы Маше отправить Васе 2,5 BTC, хранилище пытается найти файл с такой суммой или сочетание файлов, чтобы получилось 2,5 BTC. В нашем примере нет операции с такой суммой и они не суммируются для получения нужной суммы. Маша не может разбить 3 BTC, полученные от Сережи (сумма входа), так как система не разрешает дробления. Поэтому, ей приходится отправлять 3 BTC вместо 2,5 (сумма выхода) на две транзакции или два выхода: 2,5 для Васи и 0,5 обратно в виде сдачи.

В следующие разы раскроем тему майнинга, хранения, а также поговорим о недостатках и уязвимостях блокчейна Биткоина и способах их решений.
#Новичкам
Как образуются новые биткойны, что такое майнинг?

Вспомним принцип работы сети Биткойна:
1) Новые транзакции рассылаются всем узлам.
2) Каждый узел объединяет пришедшие транзакции в блок.
3) Каждый узел пытается подобрать хэш блока, удовлетворяющий текущей сложности.
4) Как только такой хэш найден, этот блок отправляется в сеть.
5) Узлы принимают блок, только если все транзакции в нем корректны и не используют уже потраченные средства.
6) Свое согласие с новыми данными узлы выражают, начиная работу над следующим блоком и используя хэш предыдущего, в качестве новых исходных данных.

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

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

Hash Rate — скорость, с которой решается математическая задача. Измеряется параметром «хэш в секунду» (H/s).

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

Доходность майнинга зависит от постоянно растущей сложности процесса (сложнее процесс - меньшие объемы задач удается сделать на единицу технического ресурса и, соответственно, получить меньшее вознаграждение) и от стоимости биткойна (когда переводим заработанные единицы в доллар, к примеру)

Возрастающая сложность майнинга обусловила эволюцию оборудования. Поначалу можно было майнить, используя процессоры (CPU-майнинг), потом это перестало быть выгодным и появился GPU-майнинг (видеокарты) и его менее энергоемкая версия - FPGA, а затем появился ASIC-майнинг (спец.оборудование)

Помимо эволюции техники, менялась и форма организации майнинга. От персональных домашних компьютеров перешли к Майнинг-фермам. Это дата-центры, технически оснащенные для майнинга. Как правило, это помещения с большим количеством компьютеров и серверов, Такие фермы 24/7 потребляют большое количество электроэнергии и требуют хорошей вентиляции.

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

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

Кроме того, постоянно возрастающая сложность майнинга и развитие рынка привело к появлению «майнинга в пулах» - объединение вычислительных мощностей нескольких участников в группу для генерации новых блоков.
#новичкам #отБлондинки

SIDECHAIN
(от англ. side chain – боковая цепь)

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

Как это работает:

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

Определяют, когда монеты пользователя «запираются» и когда они могут быть потрачены, группа операторов (федерация пользователей). Промежуточный слой между блокчейном и сайдчейном. Создатели сайдчейнов могут выбирать членов федерации (Что создает риск централизации такой системы)

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

Какие недостатки у технологии на данный момент?

Проблемы безопасности. Например, централизация добычи из-за недостаточной общей мощности сети. Это приводит к созданию картелей и хардфоркам (как было с Verge).

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

Примеры сайдчейнов
Liquid от Blockstream, RSK (Rootstock), Ardor
#Новичкам
Вы наверное, уже соскучились по нашему фирменному АСМР?) Теперь раздел "новичкам" будет сопровождаться аудиоподкастами от AnnSi)

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

Хранение криптовалют. Часть 1.
Холодные легкие и тяжелые кошельки.

Основное в хранении криптовалюты - это приватный ключ и кто имеет к нему доступ.

Холодное хранение (без постоянного подключения к интернету, офлайн). Если вашего ключа нет в интернете, то его и намного сложнее украсть.
Горячее хранение - кошелек, подключенный к интернету.

Итого, критерии:
1) приватные ключи у вас/у третьих лиц
2) без подключения к интернету/подключенный к интернету

Самым надежным считается хранение без подключения к интернету, приватные ключи только у вас. Это хорошо при хранении в долгосрок больших сумм. Но удобно ли это, если вы, к примеру, торгуете и вам часто нужно переводить небольшие суммы?
Каждый пользователь выбирает удобный ему способ хранения, чаще всего комбинируя несколько разных.

Итак, где можно хранить криптовалюты:

Аппаратные кошельки.
(ledger, trezor, Pi Wallet, Keepkey, Opendime, Bitlox). Это флэшки с ПО, без подключения к интернету. Подключаются к интернету разово, при отправлении транзакции. Подтверждать транзакцию нужно физически, с самого устройства. Это "холодный" метод хранения без подключения к интернету (подключение только в момент транзакции). Приватные ключи только у вас.

Бумажные кошельки.
Такой метод хранения пойдет вам, если вы хотите надолго законсервировать ваши средства. В офлайн режиме генерируются публичный (на него можно получать) и приватный (с помощью него можно отправить) ключи. Например, с помощью сервиса https://walletgenerator.net/

Физический биткоин.
Почти то же самое, что и бумажный кошелек. Зашифрованные биткоины не могут быть потрачены, пока не взломана печать, защищающая секретный ключ. Но безопасность пломбы считается не очень надежной.

Десктопные офлайн-кошельки.

а) Те, где приватные ключи только у вас. Устанавливаются на персональный компьютер в виде отдельной программы.
Как правило, это все кошельки криптовалют от разработчиков. Например, Bitcoin Core. Litecoin core, Mist. Такие кошельки называют еще "тяжелыми", так как при установке занимают довольно много места (например, под кошелек биткоина в 2018г. придется освободить от 200 Гб). При установке таких кошельков на ноутбуки, флэшки - при отключении от интернета они становятся холодными. В целом, считаются безопасными.

2) Так называемые "легкие"-офлайн кошельки. Это десктопные кошельки, которые позволяют хранить криптовалюту, не скачивая полный реестр в кучу гигабайт. Некоторые из них дают вам приватные ключи и возможность восстановить утерянный кошелек в любое время с помощью seed-фразы. Есть недостаток - не всегда содержат полную версию о блокчейне и иногда он может показывать не актуальную информацию по транзакциям. Пример такого кошелька - Electrum, Armory.

Легкие кошельки могут быть мультивалютными, со встроенным внутренним обменником. Например Exodus. Он, так же, восстанавливается с помощью seed-фразы, дает приватные ключи. Но в нем, к приватным ключам имеете доступ не только вы, но и разработчики.

Также важным аспектом легких офлайн-кошельков является открытость исходного кода. Если с кошельком что-либо случится, то восстановить кошелек с помощью seed-фразы можно будет, только если его "заново" напишут.

В целом, в качестве вывода по холодным кошелькам можно сказать, что основное их достоинство - это надежность, основной недостаток - сложно быстро продать/купить криптовалюты. Поэтому, холодные кошельки хороши для хранения в долгосрок. Для частых операций, как правило, используются "горячие" онлайн-кошельки. Исключением являются некоторые аппаратные кошельки, которые совместимы с онлайн-сервисами хранения и обмена криптовалюты. О "горячем" онлайн хранении, его преимуществах и недостатках в Части 2.
#Новичкам #отБлондинки

Хранение криптовалют.
Часть 2.
Горячие онлайн-кошельки.

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

Онлайн -кошельки:

https://www.blockchain.com
Один из самых проверенных и старейших кошельков.
☑️Поддерживает Bitcoin, Ethereum, Stellar
☑️Ключи - хранятся на сервере, возможен экспорт
☑️Внутренний обменник - есть
☑️Мобильная версия - android, ios
☑️Русский язык - есть

https://counterwallet.io/
☑️Поддерживает Bitcoin, XCP
☑️Ключи - хранятся на сервере, вход с помощью seed-фразы
☑️Внутренний обменник - есть (специфический - обмен BTC на XCP или любой другой жетон Counterparty)
☑️Русский язык - есть
☑️Мобильная версия - нет
☑️Поддерживает адреса с мультиподписямb

https://neotracker.io/
☑️Поддерживает NEO, GAS
☑️Ключи - у пользователя
☑️Внутренний обменник - нет
☑️Русский язык - нет
☑️Мобильная версия - нет
☑️Генерирует бумажные кошельки

https://www.omniwallet.org/wallet
☑️Поддерживает Bitcoin
☑️Ключи - хранятся на сервере, возможен экспорт
☑️Внутренний обменник - да, целый декс
☑️Мобильная версия - нет
☑️Русский язык - нет


https://www.myetherwallet.com/
☑️Поддерживает и все ERC-20 токены
☑️Ключи - полностью под контролем пользователя
☑️Внутренний обменник - нет
☑️Русский язык - нет
☑️Мобильная версия - нет
☑️Если скачать десктопную версию, то можно подписывать транзакции офлайн, что делает его почти холодным.

MyCrypto
Скачать можно здесь👇
https://download.mycrypto.com
☑️Тоже самое, что MEW. От отделившихся разработчиков.
Есть десктопная версия

Metamask
Скачать можно здесь 👇
https://chrome.google.com/webstore/detail/metamask/nkbihfbeogaeaoehlefnkodbefgpgknn
Криптовалютный кошелек, который встраивается в браузер Google Chrome.
☑️Поддерживает Ethereum и все ERC-20 токены
☑️Ключи - под контролем расширения
☑️Внутренний обменник - нет
☑️Русский язык - нет
☑️Мобильная версия - нет
☑️Может хранить аккаунты и приватные ключи от MEW и MyCrypto
☑️Часто используется создателями ICO для получения или передачи Эфира

Десктопные онлайн - кошельки:

https://jaxx.io/, https://www.exodus.io/
☑️Мультивалютные
☑️Ключи - под контролем сервиса
☑️Внутренний обменник - да
☑️Русский язык - да
☑️Мобильная версия - да
#Новичкам #отБлондинки
Чем монета (coin) отличается от токена?

Одно из самых очевидных отличий - у монеты есть собственный блокчейн (пусть даже это форк с небольшим улучшением). Монетами являются, например, Биткоин, Эфир, Лайткоин.

Токены же создаются на базе уже существующего блокчейна (протокола). Например, BNB, Quantstamp. И если монеты, по сути своей, лишь "валюта", то токены, как правило, имеют более широкий функционал:

1) Utility-token.
Являются внутренним инструментом, открывающим доступ к каким-либо услугам проекта. Не подпадают под законы, регулирующие обращение денег, так как напрямую, по определениям существующего законодательства, не являются инвестиционным инструментом.
Пример. Токены платформы для разработки dapps дают доступ к инструментам для написания программ.

2) Security-token.
Дают право на часть компании/часть доходов компании. Попадают под большинство законов, регулирующих акции.
Пример. Токены бирж, которые платят пользователям % с оборота.

Как правило, токены, в отличие от монет, не имеют собственного кошелька и хранятся согласно стандарту блокчейна, на котором были разработаны. У Эфира, например, стандарт ERC-20 и все токены этого стандарта можно хранить на кошельках эфира, таких как MyEtherWallet, MyCrypto или Metamask.
Вы можете, также, встретить стандарт ERC-721 (который отличается от ERC-20 тем, что каждый токен уникален и не взаимозаменяем), но он не столь популярен и хранить его на самых распространенных кошельках вы не сможете.


Выпуск о хранении криптовалют https://t.me/KryptoSherlock/287
#новичкам #отБлондинки

Atomic Swap

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

Кратко.

Каждый участник сделки имеет свой "секрет", который генерируется смарт-контрактом. Каждая сторона вносит свой вклад в контракт, раскрывая секрет другой стороны, что дает возможность забрать свои монеты.

Пример.

Например, Игорь хочет отправить Биткоины на Биткоин-адрес Алины, а Алина отправит Декред на соответствующий Декред-адрес Игоря. Каждая сторона платит за контрактную сделку, по одному контракту на каждый блокчейн.

Игорь отправляет Биткоины на смарт-контракт. Генерируется его секрет. Вывод контракта может быть выкуплен Алиной. Если период времени (обычно 48 часов) истекает после того, как контрактная операция была добыта, но не была погашена Алиной, биткоины будут возвращены Игорю.

Алина вносит в контракт свои Decred. Игорь, чтобы выкупить то, что отправила Алина, должен раскрыть свой секрет. Деньги так же, при невыполнении Игорем условий, будут возвращены Алине, но только по истечении половины периода времени, в течение которого Игорь должен ждать возврата по своему (обычно 24 часа).

В итоге, каждая сторона вносит свой вклад в контракт каждого блокчейна, и каждая сторона не может выполнить возврат до истечения выделенного времени,

Игорь погашает контракт Decred Алины, тем самым раскрывая секрет Алины. Затем секрет извлекается из погашающей транзакции Игоря, предоставляя Алине возможность выкупить биткойн-контракт Игоря.

Пример сделки Atomic-swap между блокчейнами Decred и Bitcoin
👇
https://github.com/decred/atomicswap/#first-mainnet-dcr-ltc-atomic-swap