Архив за месяц: Июль 2017

про биткойн

Откуда берутся нули в начале каждого хеша блока? Очень просто: задача состоит в том чтобы найти хеш значение которого меньше самого маленького хеша в блокчейне. Например:
>>> hexdec('00000000839a8e6886ab5951d76f411475428afc90947ee320161bbf18eb6048');
=> 1.3859490975361E+67
>>> hexdec('000000006a625f06636b8bb6ac7b960a8d03705d1ace08b1a19da3fdcc99ddbd');
=> 1.1203570477736E+67

видно что родительский хеш больше дочернего. Это и влияет на вычислительную сложность, она увеличивается потому что ограничение на результат ужесточается.
Сколько транзакций в блоке? Вот тут непонятно, пишут что более 500, хотя сейчас есть график в котором среднее значение от 1000 до 2000. Не знаю почему оно такое, почему нельзя использовать 2-3 транзакции. Но я догадываюсь что за включение транзакций в блок можно получить награду, потому что есть комиссия за это. Она может быть и нулевая, тогда твою транзакцию не возьмут из кучи неподтвержденных транзакций очень долгое время — это не выгодно. Единственный ли это способ майнинга? Похоже что нет, кажется система сама начисляет тебе биткойны когда ты собираешь блок. Т.е. в этот момент в экономику биткойна попадает актуальное на данный момент значение количества, оно было сначала 50 монет, затем 25 и так далее, каждые 210 тыс блоков. Сейчас уже блокчейн вроде как содержит около 0.5 млн блоков, т.е. уже за майнинг должны давать 12.5 (ну или скоро это случится).
Получается майнер получает этот крупный выигрыш, а что с комиссиями? Он их тоже получает? Выходит X биткойнов от системы + еще все комиссии со всех транзакций?
Отрывок из книги
А вот график количества транзакций в блоке на котором видно, что количество растет с годами, причем имеет очень большой разброс: иногда удается собрать блок с малым количеством, иногда с большим. Интересно почему? Их в целом больше стало, нужно больше обрабатывать, но может уже не удается собрать нужный хеш из малого количества транзакций? В итоге нужно брать больше?