A Bitcoin é uma moeda virtual criada em 2009. Esta moeda pode ser usada por exemplo como método de pagamento de serviços através da internet.
O seu funcionamento é independente de uma instituição financeira central e à prova de qualquer regulamentação governamental.
Há duas maneiras de obter Bitcoins:
- Comprando-as, através de uma troca, que é o processo de conversão de moeda local para Bitcoin.
- Mineração. A mineração é o processo de verificação de transacções no blockchain.
À medida que o conjunto do sistema Bitcoin é descentralizada, cada transacção é publicamente visível dentro do que é chamado de blockchain.
Este blockchain contém assim todas as bitcoin trocadas entre os utilizadores, como não há um servidor central, ele tem de ser autor regulado.
Mineração usando o Raspberry PI
O que vai ser necessário:
- Raspberry PI + Cartão SD correndo Raspbian configurado para aceder a internet
- Hub de alimentação para o dispositivo
O Raspberry PI
Essencialmente, é um computador constituído por uma única placa, desenvolvido com o intuito de promover o ensino de ciências da computação a um nível escolar. Assim sendo, é relativamente fácil de utilizar e tem uma infinidade de usos, nas mais diversas áreas.
Aqui vamos usar o modelo B que tem 512MB de RAM, duas portas USB e uma porta Ethernet.
Para instalar o sistema operativo consultar o site oficial do Raspberry Pi: http://www.raspberrypi.org/downloads e http://www.raspberrypi.org/wp-content/uploads/2012/04/quick-start-guide-v2_1.pdf .
A partir daqui assume-se que o RaspBerry PI está funcionar e totalmente configurado com internet.
Vamos aceder remotamente ao RaspBerry PI usando SSH através do PuTTY, para que isto seja possível, é necessário saber o respectivo endereço IP.
Podemos utilizar o Nmap, para fazer um scan de rede e obter os endereços IP dos dispositivos ligados ou verificar qual é o IP através do Router.
Usando o Nmap:
nmap -sP 192.168.1.0/24Preparar o Raspberry Pi
O ‘miner’ a instalar vem como arquivos ‘source’, o que significa que o programa deve ser compilado para um binário antes de ser executado. Para fazer um programa, neste caso BFGMiner, são necessárias muitas dependências.
Dependências são softwares adicionais, ou bibliotecas que o programa necessita, a fim de compilar correctamente, uma vez que foi desenvolvido utilizando-os para tornar o software mais eficiente.
Depois de aceder ao RPi vamos teclar os comandos seguintes no terminal:
sudo apt-get update
sudo apt-get install autoconf autogen libtool uthash-dev libjansson-dev libcurl4-openssl-dev libusb-dev libncurses-dev git-core –yUma vez que todas as dependências foram instalados, agora vamos fazer o download e instalar o BFGMiner, então digite o seguinte no terminal:
git clone https://github.com/luke-jr/bfgminer.git
cd bfgminer
./autogen.sh
./configure
makeObterá no ecrã algo parecido com o seguinte:
Começar Mining Bitcoin
Agora pode começar a mineração. Para fazer isso, depois de estar registado no Slush’s pool, vamos usar o comando seguinte:
./bfgminer -o stratum.bitcoin.cz:3333 -O username.worker:password -S allA secção username é composta de duas partes, o nome de utilizador que usa para aceder ao Slush’s pool, e o worker que é o nome que forneceu quando registou o worker. Finalmente, a password que foi definida quando criou o worker.
Se tudo funcionar, verá um ecrã que será semelhante a este:BFGMiner como serviço
Agora vamos configurar o BFGMiner como um serviço Linux. Para fazer isso vamos criar um script de init:
sudo nano /etc/init.d/bfgminercom o conteúdo seguinte:
#!/bin/sh
#/etc/init.d/bfgminer
case "$1" in
start)
echo "Starting bfgminer"
# run application you want to start
/home/pi/scripts/bfgminer.sh
echo "...started"
exit 1
;;
stop)
echo "Stopping bfgminer"
# kill application you want to stop
killall bfgminer
exit 1
;;
*)
echo "Usage: /etc/init.d/bfgminer {start|stop}"O home/pi/scripts/bfgminer.sh é um script de uma linha que tem o meu comando BFGMiner que é algo como isto:
/home/pi/bfgminer-3.10.0/bfgminer -o http://stratum.bitcoin.cz:3333/ -u username.1 -p password -S all -S antminer:all --set-device antminer:clock=x0981 --no-submit-stale --api-listen >/dev/null &Para que este serviço seja executado na inicialização digitamos:
update-rc.d bfgminer defaultsAgora posso iniciar/parar (start/stop) BFGMiner como um serviço Linux com o comando seguinte:
sudo service bfgminer start
sudo service bfgminer stopPara obter mais informações, há uma série de sites e fóruns disponíveis, tais como https://bitcointalk.org/.
Referencias:
http://www.raspians.com/cpu-mining-on-the-pi-or-how-to-go-broke-mining/
http://computers.tutsplus.com/tutorials/how-to-create-a-raspberry-pi-bitcoin-miner--cms-20353
http://www.instructables.com/id/Bitcoin-Mining-using-Raspberry-Pi/?ALLSTEPS
http://blog.verticodelabs.com/raspberry-pi-bfgminer-service/