Не секрет, что для майнинга биткоинов требуются большие вычислительные мощности. Достаточно посмотреть фоторепортаж с майнерской фермы, которая чем-то напоминает дата-центр, только в дешёвом исполнении. При этом сложность вычислений постоянно растёт. Фермы потребляют немало электричества. Интересно, наносит ли биткоин ущерб окружающей среде?
Автор программы BitcoinEmissions написал код, чтобы вычислить точное значение выбросов CO2 на генерацию 1 BTC. Опубликованный код подходит для Wolfram Mathematica 9.
Код
(* https://en.wikipedia.org/wiki/Electricity_generation# Environmental_concerns 40% of world is coal which is 1000.*)
EnergyEfficiencyDefault := 500
(* https://en.bitcoin.it/wiki/Mining_hardware_comparison Based on some recent asic machines.*)
HashEnergyEfficiencyDefault := 2000
JoulesIn1kWh:= 3600000
GramsInKilogram := 1000
(* 25 BTC per 10 minutes. http://tradeblock.com/research/bitcoin-101/how-are-bitcoins-created/*)
BTCPerSecond :=25 /(60 * 10)
FKgOfCO2PerJoule[EEff_]:= (EEff / GramsInKilogram ) / JoulesIn1kWh
FHashPerSecond[HRate_] := HRate*1000000000
FHashPerBTC[HRate_] := FHashPerSecond[HRate] / BTCPerSecond
FHashPerJoule[HEff_] := HEff * 1000000
FJoulesPerBTC[HEff_, HRate_] := FHashPerBTC[HRate] / FHashPerJoule[HEff]
FKgCO2PerBTC[EEff_,HEff_,HRate_]:= FKgOfCO2PerJoule[EEff] * FJoulesPerBTC[HEff, HRate]
ChartDataLocation := "/Users/rgill/Downloads/chart-data.csv"
(* Get chart data from http://blockchain.info/charts/hash-rate *)
HistoricalHashRate = Import[ChartDataLocation, "DateStringFormat"-> {"Day", "/", "Month", "/", "Year", " ", "Time"}];
HistoricalHashRateWithAbsoluteTime=Table[{AbsoluteTime[HistoricalHashRate[[i,1]]],HistoricalHashRate[[i,2]]},{i,Length[HistoricalHashRate]}];
(* We couldn't get an expoential function to fit properly :( . We used this HACK instead.*)
Model:=Fit[HistoricalHashRateWithAbsoluteTime, {1,x, x^2, x^3, x^4, x^5, x^6, x^7},x]
(* This shows our fitted function of historial hash rates against the real data.
Show[
ListPlot[newdata],
Plot[Model, {x,3.58 * 10 ^ 9,3.805* 10 ^ 9}, PlotStyle->Red],
PlotRange -> {{3.58 * 10 ^ 9,3.635* 10 ^ 9},{0,100000000}}
]
*)
HashRateAtT[year_, month_, day_] := Model /. {x -> {AbsoluteTime[{year,month,day, 0,0,0}]}}
Manipulate[
FKgCO2PerBTC[EnergyEfficiency,HashEnergyEfficiency,HashRateAtT[Year, Month, 1]]"kg of CO2 per BTC",
{EnergyEfficiency,0,1000},{HashEnergyEfficiency,0,5000},{Year,2010,2025, 1},{Month,1,12, 1},
Initialization:>(EnergyEfficiency:=EnergyEfficiencyDefault;HashEnergyEfficiency:=HashEnergyEfficiencyDefault; Year:=2014; Month := 1)]
Out[528]= Manipulate[FKgCO2PerBTC[EnergyEfficiency, HashEnergyEfficiency, HashRateAtT[Year, Month, 1]]*"kg of CO2 per BTC", {{EnergyEfficiency, 500}, 0, 1000},
{{HashEnergyEfficiency, 2000}, 0, 5000}, {{Year, 2014}, 2010, 2025, 1}, {{Month, 5}, 1, 12, 1},
Initialization :> (EnergyEfficiency := EnergyEfficiencyDefault; HashEnergyEfficiency := HashEnergyEfficiencyDefault; Year := 2014; Month := 1)]
При расчёте сделано несколько предположений:
1. При генерации 1 kWhe высвобождается 500 граммов CO2 (источник, примечание: оценка спорная и вызывает критику экспертов).
2. Средняя эффективность биткоин-майнеров в системе составляет 200 Mhash/J (источник).
3. Хэшрейт растёт экспоненциально (для прогноза сложности вычислений в будущем).
Вычисления показывают, что на 1 мая 2014 года каждый новый биткоин высвобождал около 103 кг CO2. С учётом экспоненциального роста сложности к 1 мая 2015 года этот показатель предположительно вырастет до ≈1602 кг CO2.
Теперь посчитаем, сколько деревьев нужно посадить, чтобы компенсировать влияние Bitcoin на природу.
В среднем, одно лиственное дерево в течение своей жизни потребляет около тонны CO2. Это значит, что на сегодняшний день для «компенсации» каждого биткоина нужно посадить полтора дерева.
1 BTC генерируется примерно каждые 24 секунды (1 блок с 25 BTC выходит каждые 10 минут). Так что нужно садить новое дерево примерно каждые 16 секунд, то есть 5400 деревьев в день.
Естественно, сразу же хочется сравнить «вред» для окружающей среды Bitcoin с аналогичным показателем для обычных финансовых систем и финансовых бирж. Ведь для производства монет и купюр в физическом виде напрямую расходуются природные ресурсы нашей планеты — бумага и металлы. У биткоина отсутствует этот недостаток.
Кроме того, для работы фондовых бирж расходуются явно избыточные ресурсы, которые тоже наносят вред природе. Например, прокладываются новые каналы связи, в том числе подводные. Единственное предназначение этих каналов — на несколько миллисекунд сократить пинг между биржами, чтобы ускорить арбитраж сделок.
А если посчитать, сколько ресурсов ушло на строительство самих зданий банков, денежных хранилищ, физическую транспортировку денег, то ущерб для окружающей среды наверняка превысит показатели Bitcoin.