Как стать автором
Обновить

Комментарии 26

Отличная, полезная статья, респектую автору! Узнал для себя некоторые новые вещи о блокчейне и эфириуме…
Хорошее дело делаете, спасибо за статью)
Подскажите какие есть наиболее популярные приложения/контракты, хотелось бы понять как они используются на практике.
Пока сложно говорить о каком-то широком применении на практике для рядового пользователя. Некоторые крупные компании внедряют его в качестве эксперимента, например Альфа-Банк и S7 (статья на хабре). Если из того, что можно самому пощупать — то сейчас мы разбираемся с 0xProject — протокол для обмена ethereum токенов. Вот здесь репозиторий с их смарт контрактами и описанием того, что они делают. Так же доступен код dapp на базе этого протокола на reactjs, соответственно можно увидеть целостную картину приложения.

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

чтобы писать контракты удобнее использовать truffle и testrpc.
Конечно, но не хотелось перегружать вводную статью. Для сколько-нибудь объемного проекта что-то вроде truffle точно необходимо, а для простейшего примера для тех, кто только начал изучение — описанный путь на наш взгляд самый бесхитростный и понятный.
НЛО прилетело и опубликовало эту надпись здесь
Если выбрать тестовую сеть Rinkeby, которая сейчас по-умолчанию в Mist, то данных скачается в районе всего 1.5 гигабайт. Сети друг от друга не зависят, можно скачивать только нужную
НЛО прилетело и опубликовало эту надпись здесь
Похоже для Windows приложение какое-то особенное. Попробуйте скачать и установить Geth — консольный клиент для Windows отсюда. Потом в командной строке выполнить geth --rinkeby и уже после этого запустить Mist.
НЛО прилетело и опубликовало эту надпись здесь
1) Аккаунт для каждой сети свой, и сети между собой никак не контактируют. Чисто теоретически может быть даже адрес в разных сетях одинаковый, хоть и вероятность практически нулевая, и эти аккаунты не будут иметь ничего общего.
2) Да, на этот адрес можно получать по несколько эфиров в день оттуда, создав от своего аккаунта в гите гист, добавив туда свой адрес, и вставив ссылку на этот гист в поле на сайте rinkeby.io. Только это не майнинг на самом деле, просто переводится валюта
Спасибо кстати за вопрос по мисту на винде, эту информацию надо бы добавить в статью
НЛО прилетело и опубликовало эту надпись здесь
Да, добавлено в статью
Скачал и установил geth. В командной строке указываю путь к geth.exe. когда запускаю, показывает:
INFO [08-31|23:38:50] Starting peer-to-peer node instance=Geth/v1.6.7-stable-ab5646c5/windows-amd64/go1.8.3
INFO [08-31|23:38:50] Allocated cache and file handles database=C:\\Users\\User\\AppData\\Roaming\\Ethereum\\geth\\chaindata cache=128 handles=1024
INFO [08-31|23:38:50] Initialised chain configuration config="{ChainID: 4 Homestead: 1 DAO: DAOSupport: true EIP150: 2 EIP155: 3 EIP158: 3 Metropolis: 9223372036854775807 Engine: clique}"
INFO [08-31|23:38:50] Initialising Ethereum protocol versions="[63 62]" network=1
INFO [08-31|23:38:50] Loaded most recent local header number=813318 hash=06c0cf…b69d27 td=1570227
INFO [08-31|23:38:50] Loaded most recent local full block number=813318 hash=06c0cf…b69d27 td=1570227
INFO [08-31|23:38:50] Loaded most recent local fast block number=813318 hash=06c0cf…b69d27 td=1570227
WARN [08-31|23:38:50] Blockchain not empty, fast sync disabled
INFO [08-31|23:38:50] Starting P2P networking
INFO [08-31|23:38:52] UDP listener up self=enode://59bff198537a74d536650a8cce74c7a1cf1e7238dadb2d4181682f40b0981f4cc29f8842e9d48a3569a588a4888a7f7a9074cd26c2324cce34b8717679fc9e0a@[::]:30303
INFO [08-31|23:38:52] RLPx listener up self=enode://59bff198537a74d536650a8cce74c7a1cf1e7238dadb2d4181682f40b0981f4cc29f8842e9d48a3569a588a4888a7f7a9074cd26c2324cce34b8717679fc9e0a@[::]:30303
INFO [08-31|23:38:52] IPC endpoint opened: \\.\pipe\geth.ipc


geth --rinkeby ввести не могу
geth --rinkeby — это и есть команда для запуска. И после этого не останавливая geth можно запускать Mist, он покажет прогресс, если синхронизация не закончилась
В этом логе можно увидеть, что подключение идет к главной сети, по строчке INFO [08-31|23:38:50] Allocated cache and file handles database=C:\\Users\\User\\AppData\\Roaming\\Ethereum\\geth\\chaindata cache=128 handles=102 — здесь Ethereum\geth — это папка с данными основной сети, для тестовых будет папка либо Ethereum\rinkeby\geth, либо Ethereum\testnet\geth
НЛО прилетело и опубликовало эту надпись здесь
Все правильно, контракт хранит текущее состояние, а не историю
НЛО прилетело и опубликовало эту надпись здесь
Если нужно накапливать какую-то информацию, то да, можно определить массив и он будет храниться на блокчейне.
Сам контракт может хранить эфир, смотрите в сторону ключевого слова payable, его надо добавлять к методам, тогда во время вызова можно будет указать количество эфира, которое перейдет вместе с транзакцией.
Рандом в самом блокчейне невозможен, нужно использовать внешний генератор, смотрите Oraclize, он не только для рандома, а вообще для получения внешних данных.
Вот тут на канале у Славы, автором разбирается, как начать создавать простейшие контракты, а так же простейшую логику лотереи. Рекомендую. Смотреть сначала.
НЛО прилетело и опубликовало эту надпись здесь
НЛО прилетело и опубликовало эту надпись здесь
Вроде нормальный код, bidder не получает эфир назад? На ropsten.etherscan.io для контракта есть вкладка Internal Transactions, в которой перечислены отправки из него. Почему-то ее нет для Rinkeby. Тут нужно как-нибудь по-другому проверять
НЛО прилетело и опубликовало эту надпись здесь
Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации