Introdução
Se
você ainda não sabe o que é Bitcoin ou cripto moedas acesse aqui,
se você já sabe prossiga.
O
blockchain é inovador por permitir dispensar valor de forma segura,
uma transação só pode acontecer se tiver outra de entrada e assim
por diante, mas ai vem a pergunta:
Como então é gerada a transação inicial?
Na
verdade os blocos são gerados a partir de um bloco pai chamado de
'genesis block', a partir deste bloco inicial começa a 'mineração'
e a cada novo bloco premia-se o minerador com novas moedas que advém
do 'coinbase', o coinbase nada mais do que uma 'entidade' que guarda
as futuras moedas, esse coinbase é pré-programado com um número
limitado de moedas, no caso do Bitcoin só serão geradas 21.000.000
(vinte e um milhões) de moedas.
Quando
um minerador ganha essas moedas a própria rede sabe pra quem vai
através do endereço que o minerador colocou quando começou a
'minerar' o bloco e gera uma transação minerada e inclui as transações pendentes de outras carteiras, validando a
geração das moedas, para gastar essas moedas o minerador precisa
esperar a maturação (confirmação na rede) dessas moedas.
No bitcoin essa maturação ocorre em 120 blocos, ou seja ele vai precisar esperar 120 blocos a frente para poder gastar. Outras cripto moedas podem ter um tempo de maturação maior ou menor depende de como foi programada.
No bitcoin essa maturação ocorre em 120 blocos, ou seja ele vai precisar esperar 120 blocos a frente para poder gastar. Outras cripto moedas podem ter um tempo de maturação maior ou menor depende de como foi programada.
O que é então a carteira de Bitcoin?
Uma
carteira 'core', ou seja a carteira principal, de cripto moeda é
composta essencialmente de duas partes: o gerenciador de moedas
(carteira) e o núcleo de acesso a rede.
O
núcleo de acesso a rede se conecta com os outros nós da rede e
mantém sempre atualizado o banco de dados principal (blockchain)
sincronizado com os outros. Portanto há a necessidade de um grande
armazenamento. Atualmente o blockchain do Bitcoin passa dos 58
gigabytes (veja aqui o tamanho atualizado).
O
gerenciador de moedas (carteira) nada mais é que um gerenciador das chaves privadas, toda a vez que você instala uma carteira 'core'
automaticamente é gerado um arquivo (wallet.dat) que
mantém as chaves privadas e o registro de suas transações dessa carteira.
E para que servem essas chaves privadas?
É
através destas chaves privadas que você vai assinar uma transação
e a rede vai saber que você é o dono dessas moedas e está querendo
transferir essas moedas para outro endereço.
O
endereço é a parte pública da chave privada é esse endereço que
você precisa mencionar quando quiser receber moedas.
O
que você precisa guardar a sete chaves são as 'chaves privadas' de
qualquer carteira seja ela 'core', SPV, HD, 'paper wallet' ou 'brain
wallet'.
Nunca
em hipótese nenhuma compartilhe suas chaves privadas, pois com a
posse delas qualquer um pode 'gastar' (furtar) suas preciosas
moedinhas.
Tipos de assinaturas
Como
você já sabe, uma transação só pode acontecer se o dono das moedas assinar essas moedas com sua chave
privada, para aumentar a segurança existe a possibilidade de usar
várias assinaturas (chaves privadas) para um mesmo endereço
aumentando assim a segurança. A maioria das carteiras que vou
mencionar aceitam endereço com multi assinaturas (multisig address)
Tipos de carteiras
Existem
basicamente seis tipos de carteiras: a 'core', a SPV (Simplified
Payment Verification), a carteira HD (hierarchical deterministic), a
carteira no papel (paper wallet), a carteira cerebral/memorizável
(brain wallet) e a Web wallet.
A carteira CORE
A
carteira core é a carteira que será responsável por manter em seu
computador um cópia do blockchain criando assim mais um nó. Hoje em
dia é desaconselhável manter uma carteira core por um simples
motivo, você manterá em seu poder um arquivo gigantesco até o fim
dos tempos, pois o blockchain, como é um arquivo de registro de
transações cresce a cada bloco gerado. Por outro lado manter uma
CORE wallet é fundamental para a saúde da rede, neste artigo aquiensino como montar uma carteira core em ambiente Ubuntu (Linux),
também chamado de 'full node', para auxiliar a rede.
A carteira SPV (Simplified Payment Verification)
As
carteiras SPV são clientes leves (thin clients), elas também se
conectam a rede bitcoin mas usam uma versão mais leve do blockchain,
onde essa versão não verifica a cadeia de blocos, somente usa os
cabeçalhos dos blocos. As carteiras SPV não são recomendadas
atualmente, principalmente quando acontecem ataques contra o
blockchain, elas ficam mais vulneráveis e esses ataques são
frequentes.
A carteira deterministica
As
carteiras deterministicas são a versão mais leve (espaço em disco), o blockchain não é
baixado, elas mantém somente os registros das transações e acessam
a rede através de um servidor. Outra vantagem desse tipo de carteira
é que as chaves privadas podem ser restauradas em outro dispositivo
tento somente a 'semente'. Todas as chaves privadas são derivadas da
semente, manter a semente segura (backup) é fundamental. O servidor
mais usado para esse tipo de carteira é o Electrum que tem um
cliente de mesmo nome: 'carteira
Electrum'.
Electrum'.
A Web Wallet
Web
wallets são carteiras que você pode acessar por um browser de
internet, a grande desvantagem desse tipo de carteira é que você
não é o dono das chaves privadas, portanto se o dono do web site
que controla a web wallet quiser sumir e levar suas moedas ele pode
fazer, inclusive sem te avisar. Não é recomendado manter grandes quantias de
moedas nesse tipo de carteira, nessa categoria entram as exchanges de bitcoins, que não são
recomendadas para se usar como carteira, use uma exchange somente para negociar (comprar e vender).
A carteira de papel (paper wallet)
A
paper wallet é um recurso interessantíssimo onde a chave privada
fica evidentemente em papel. Imprimir a chave privada tem vantagens e
desvantagens, a principal vantagem é que você pode receber moedas
sem precisar de computador ou qualquer dispositivo, ficando você
logicamente protegido de hackers. A desvantagem principal é que se
você a perder perde-se as moedas e papel nem sempre é um bom lugar
para se guardar coisas valiosas, mas com o devido cuidado é uma das
melhores opções para guardar moedas a longo prazo, outra desvantagem é
que você irá precisar de um dispositivo para gastá-las.
A
carteira cerebral (brain wallet)
A
brain wallet é uma carteira que você guarda na sua memória, como
assim?
Vou
ter que guardar um sequencia gigantesca de uma chave privada e
soletrar toda vez que for receber e enviar moedas? Quase isso.
Entenda
que as chaves privadas nada mais são que um conjunto numérico
criptografado de algum valor ou sequência, pode ser numérica, uma
frase ou até mesmo um arquivo ou a combinação de ambos. O
algoritmo usado para a criptografia é o SHA256 esse conjunto chamado
de 'hash' pela definição do SHA256 é praticamente único, segue
uma fórmula matemática que qualquer alteração na sequência irá
gerar um 'hash' diferente, inclusive fica diferente usando letras
maiúsculas e minusculas. Por exemplo: O hash da palavra “Bitcoin” vai ser diferente do
hash da palavra “bitcoin”.
O
segredo de uma boa brain wallet é criar uma super senha misturando
números, palavras inclusive estrangeiras e símbolos, quanto maior,
mais difícil de se descobrir. Se for de um arquivo que você
consegue regenerá-lo mentalmente será ainda melhor.
Não
me venha com uma brain wallet de suas senhas de rede social. Será
hackeado da mesma maneira que outro tipo de carteira conectada a
internet. A desvantagem é de você não se lembrar como gerar
novamente e também precisar de um dispositivo para sempre
regenerá-la e gastar suas moedas. Ela é altamente recomendada como
cofre, use-a para fins de armazenamento a longo prazo.
Gerando paper e brain wallets.
Para
se gerar paper e brain wallet baixe do Github esse App aqui.
Dica
de segurança: A melhor maneira de se gerar um paper/brain wallet é
desconectado da internet e com sistema operacional livre de vírus
(Windows não é recomendado), acesse o link do gerador, no rodapé
dele tem o código fonte no github baixe-o, desconecte o computador
da internet, rode-o pelo seu browser e gere suas chaves, imprima,
destrua qualquer evidência delas, desligue o computador e guarde em
lugar seguro, de preferencia um cofre a prova de catástrofes se for
paper wallet.
No
caso da brain wallet crie um mecanismo de segurança para relembrar
de como gerá-la que só você saiba e no caso de precisar de um
backup crie uma charada que só seus familiares próximos possam
descobrir em caso de sua falta e recuperar as suas moedas.
Resumo
- Uma carteira Bitcoin ou de qualquer cripto moeda tem em sua essência chaves públicas e privadas.
- As chaves públicas são usadas para receber moedas e as chaves privadas para gastar.
- Existem endereços que usam apenas uma assinatura e outros que usam multiplas assinaturas (multisig).
- Exchanges, carteiras web e SPV, não são recomendadas para guardar grandes quantidades de moedas. Para isso use de paper wallets e/ou brain wallets, também chamado de cold storage (literalemente armazenagem a frio). Para uso cotidiano procure usar carteiras HD e a própria CORE wallet.
- O backup das chaves privadas é o mais importante de todos, pois é com elas e somente com elas que você poderá gastar e transferir suas moedas. Se for a core wallet faça backup frequentemente , pois existem endereços escondidos chamados endereço de troco que não aparecem normalmente.
Links úteis:
Carteiras
para PC: Armory, Multibit, Bitcoin Core Wallet, entre outras.
Carteiras
para Celular: Mycelium, Coinomi, Uberpay entre outras.
Carteiras
web: Xapo, Bitreserve, BitGo ou outra qualquer de sua confiança.
Gerar
paper e brain wallet, fonte no github
Olá b dia isso e top
ResponderExcluirGostei do easter egg :)
Excluir