Como funcionam as transações de criptomoeda?

Introdução às transações de cripto
A criptomoeda é uma forma de valor puramente digital, livre do controlo de qualquer pessoa, empresa ou governo.
Ao contrário das moedas tradicionais, cujo saldo da sua conta digital pode ser convertido em notas físicas, as transações de criptomoeda são simplesmente registos de dados gravados num livro-razão distribuído e imutável, denominado blockchain.
Em blockchains populares como Bitcoin, Ethereum e Algorand, não ocorre uma troca efetiva de criptomoedas entre as pessoas. Em vez disso, os dados de propriedade associados às carteiras de cripto de ambas as partes são atualizados na blockchain sempre que uma transação é processada.
A tecnologia blockchain permite que estes tipos de transações sejam propostas, processadas e registadas por uma rede global de voluntários – denominados «nós». Estes computadores trabalham em conjunto para garantir unanimemente que apenas as transações válidas são concluídas e armazenadas de forma imutável no livro-razão.
O que é necessário para enviar uma transação de cripto?
Antes de analisar o processo passo a passo de criação, transmissão, verificação e processamento de uma transação de cripto, é importante compreender os elementos individuais envolvidos na realização destes tipos de transações ponto a ponto.
São necessários três componentes fundamentais para concluir um pagamento em cripto:
- Carteira de criptomoeda
- Rede blockchain
- Criptomoeda para pagar a transação na blockchain/a comissão de gás
Carteiras de criptomoeda
As carteiras de cripto podem ser classificadas, de forma geral, como carteiras online ou carteiras offline, consoante estejam permanentemente ligadas à internet ou não.
As carteiras online são software descarregado para computadores de secretária, telemóveis ou outros dispositivos inteligentes. Estão constantemente ligadas à internet e permitem aos utilizadores receber e transferir fundos rapidamente.
As carteiras offline são dispositivos de hardware, como pen drives USB especializados, que têm de ser ligados manualmente a um dispositivo inteligente para efetuar ou receber transferências. Ao contrário das carteiras online, as carteiras offline não mantêm uma ligação constante à internet. Embora muitas pessoas considerem as carteiras offline menos práticas de utilizar do que as carteiras online, estas são consideradas significativamente mais seguras.
Ao contrário das notas de papel que guarda nas suas carteiras, a criptomoeda não é efetivamente armazenada numa carteira de cripto.
As participações em criptomoeda são registadas na blockchain e o acesso a esses fundos é controlado através de uma carteira. Uma carteira de cripto armazena os endereços utilizados para interagir com os fundos que lhe estão atribuídos na blockchain. Se as chaves forem perdidas, perde-se também o acesso a quaisquer fundos associados à carteira.
Cada carteira de cripto tem a sua própria chave pública e chave privada únicas. As chaves são uma parte essencial de uma carteira de cripto e são utilizadas para:
- Provar quem é o proprietário dos fundos na blockchain
- Assinar digitalmente e aprovar transações de saída
- Criar endereços de carteira públicos
Como são criadas as chaves públicas e privadas?
Utilizando um tipo de fórmula criptográfica unidirecional, as chaves públicas e privadas da carteira estão matematicamente ligadas. A chave privada é utilizada para criar a chave pública. A Curva elíptica de criptografia (ECC) é um dos principais métodos de Criptografia de chave pública utilizados para gerar chaves para carteiras cripto, incluindo todas as carteiras Bitcoin.
Se tiver interesse em saber mais, pode consultar o artigo do Centro de aprendizagem Kraken Como é que as criptomoedas utilizam a criptografia?
O que torna estas chaves seguras é o facto de apenas a pessoa que detém a chave privada poder criar a chave pública e provar a propriedade dos fundos associados à carteira. A criptografia torna praticamente impossível descobrir qual é a chave privada a partir da chave pública.
Eis um exemplo para visualizar este conceito. Imagine que tem um número com um milhão de algarismos. A partir desse número com um milhão de algarismos, tem de identificar um par específico de dois números que foram somados para formar esse número. Devido a todas as soluções possíveis para este problema, encontrar a combinação certa exigiria uma enorme quantidade de tentativas e erros.
No entanto, depois de encontrada a solução, é fácil para qualquer outra pessoa no mundo verificar por si própria se encontrou a resposta certa. Afinal, bastaria somar os números e confirmar que o resultado corresponde ao número com um milhão de algarismos.
Esta dificuldade em encontrar uma solução, aliada à facilidade de verificar a solução depois de encontrada, está no centro das transações cripto. É esta utilização da criptografia que permite que as transações cripto funcionem — de forma fiável, segura e eficiente em termos de custos.
A ECC leva este conceito ainda mais longe, utilizando um sistema complexo de linhas que se intersectam ao longo de um tipo especial de curva num gráfico. Cada vez que atravessa a curva, a linha muda de direção perpendicularmente, e assim sucessivamente. Neste caso, a chave pública corresponde ao primeiro e ao último ponto por onde a linha passa depois de um número secreto de vezes.
Neste caso, a chave privada corresponde ao número secreto de movimentos necessários para ir do ponto A até ao ponto final da curva.
Como é criado o endereço de uma carteira cripto?
Além das chaves públicas e privadas, existe o endereço da carteira cripto.
Este endereço é criado através da aplicação de um algoritmo criptográfico de hashing à chave pública, que, por sua vez, foi criada a partir da chave privada. Este é outro tipo de algoritmo matemático unidirecional que recebe qualquer entrada e a transforma numa sequência aleatória de comprimento fixo, composta por código alfanumérico, denominada “hash.”
Diz-se que os códigos hash são “únicos” e “determinísticos”. Isto significa que cada entrada cria um código hash totalmente único, com exatamente o mesmo valor sempre que é processada pelo algoritmo.
Tal como acontece com as chaves públicas e privadas, é impossível ver um hash e saber qual foi a entrada que o criou.
É este hash, que funciona como endereço de uma carteira cripto, que as pessoas partilham para receber transações de criptomoeda.
Onde são armazenadas as chaves privadas e públicas?
As carteiras online armazenam as respetivas chaves online no próprio software da carteira.
Embora permitam aos utilizadores enviar e receber transações facilmente e quando quiserem, também os tornam vulneráveis a ataques de cibercriminosos.
As chaves privadas e públicas de uma carteira offline são armazenadas offline no dispositivo físico.
Isto torna praticamente impossíveis os ataques online às carteiras offline. No entanto, a contrapartida é que, sempre que um utilizador pretende efetuar uma transferência, tem de ligar a carteira offline a um computador ou dispositivo inteligente.
Para detentores de longo prazo que negoceiam com pouca frequência, isto não representa um grande problema. No entanto, para negociantes mais ativos, que transferem frequentemente fundos entre endereços diferentes, este nível adicional de segurança pode ser inconveniente.
Se quiser saber mais sobre as diferentes vantagens e desvantagens dos métodos de armazenamento de cripto, consulte o artigo do Centro de aprendizagem Kraken Como manter as suas criptomoedas seguras.
Como são processadas as transações numa rede blockchain?
Visão geral da blockchain
Uma blockchain é um tipo de tecnologia de livro-razão distribuído. Em resumo, uma blockchain é um sistema de registo de dados gerido e mantido por uma comunidade aberta, e não por uma única autoridade.
Qualquer pessoa no mundo pode participar no funcionamento de uma rede blockchain pública, desde que tenha acesso à internet e a um dispositivo inteligente. A maioria das redes blockchain toma medidas para «descentralizar» as plataformas, assegurando que nenhuma pessoa ou autoridade central possa assumir o controlo do livro-razão da blockchain.
As pessoas que dedicam voluntariamente tempo a tornar-se participantes ativos numa rede blockchain são conhecidas como «nós». Os nós podem realizar várias tarefas, desde manter um histórico completo de transação até executar a importante tarefa de validação de dados.
O que é uma blockchain?
Uma blockchain pode ser entendida como uma cadeia virtual de caixas (ou «blocos»), em que cada caixa contém uma determinada quantidade de dados. Nas redes de criptomoeda, os dados contidos nestas caixas são sobretudo informações de transações – quem transferiu o quê, para quem e a que horas.
À medida que novas transações são transmitidas para a rede, é necessário criar novos blocos, preenchê-los com os novos dados, verificá-los e adicioná-los à cadeia.
Todos os blocos adicionados à blockchain são permanentes e imutáveis, o que significa que é impossível voltar atrás e alterar as informações armazenadas no bloco concluído. É por isso que o papel da validação de dados é tão importante. Todos os dados de uma transação têm de ser verificados por unanimidade por todos os nós da rede, para garantir que apenas são processadas transações válidas.
Como não existe uma única autoridade a gerir a rede, é utilizado um sistema automatizado para garantir que todos os nós estão de acordo quanto aos novos dados a adicionar à blockchain. Este sistema, conhecido como mineração em redes blockchain como a Bitcoin, foi concebido para impedir que agentes maliciosos corrompam a rede com transações inválidas.
Este sistema é conhecido como mecanismo de consenso.
Embora diferentes blockchains utilizem diferentes tipos de mecanismos de consenso, todas procuram alcançar o mesmo objetivo — manter informações exatas sobre a titularidade e as transações.
Prova de trabalho e Prova de participação são os sistemas mais comuns utilizados nas criptomoedas.
Comissão de transação
Para compensar os nós pelo seu esforço, todos os utilizadores de cripto têm de pagar uma comissão de transação para que os seus pagamentos sejam processados, por vezes conhecida como comissão de gás.
Esta comissão cobre os custos computacionais associados ao funcionamento de um nó e incentiva financeiramente os nós a continuarem a operar na rede.
As comissões podem variar consoante a blockchain e o nível de congestionamento da rede no momento.
Em alguns casos, os utilizadores podem acrescentar uma gorjeta à comissão de transação para incentivar os validadores a dar prioridade aos seus pagamentos em relação aos restantes na fila.
Tudo em conjunto: como funciona uma transação de cripto
Agora que está claro quais são os componentes do processo de transação de cripto, vejamos como funciona um pagamento do início ao fim.
Criação e assinatura de transações de cripto
O processo abaixo é específico da rede Bitcoin — alguns dos pormenores serão ligeiramente diferentes noutras redes blockchain, como Ethereum, Ripple ou Solana.
Também é importante notar que quase todos os passos indicados abaixo são executados automaticamente pelo código subjacente do protocolo Bitcoin e pelos nós da rede. Tudo o que o utilizador de Bitcoin tem de fazer é introduzir a quantidade de cripto que pretende enviar, copiar e colar o endereço público da carteira do destinatário e selecionar enviar.
O processo de envio de uma transação consiste em três fases:
- Transação
- Transmissão
- Liquidação
Segue-se um exemplo dos vários passos que ocorrem na blockchain Bitcoin. É este processo que permite à Bitcoin funcionar como um sistema de dinheiro eletrónico ponto a ponto.
Transacionar
Vamos supor que Ben já tenha concluído o processo para comprar Bitcoin e que agora queira enviar 1 Bitcoin (BTC) a Olivia. Lembre-se de que Ben pode enviar unidades mais pequenas de Bitcoin, chamadas satoshis, mas, para simplificar, vamos utilizar um Bitcoin completo.
- Olivia envia a Ben o endereço público da sua carteira.
- Ben utiliza o endereço público da carteira de Olivia e cria uma mensagem de transação que contém informações sobre a transação pretendida (a origem do Bitcoin de Ben, o destino, o montante de troco que deve ser devolvido a Ben sob a forma de UTXO e o montante da comissão associada).
- Esta mensagem de transação é processada através de um algoritmo de hash criptográfico, que a reduz a um código único de comprimento fixo.
- Ben encripta o código hash resultante com a sua chave privada para criar uma assinatura digital para a transação. Ao fazê-lo, Ben prova a Olivia e à rede blockchain que enviou a transação e que esta não foi adulterada durante o envio.
- Ben envia a Olivia a mensagem de transação original e a assinatura digital.
- Olivia desencripta a assinatura digital utilizando a chave pública de Ben, revelando o hash da mensagem de transação.
- Em seguida, Olivia processa a mensagem de transação original através do mesmo algoritmo de hash criptográfico para produzir um hash e compara-o com o valor de hash revelado no passo anterior.
- Os dois hashes devem ser idênticos, provando que Ben enviou a transação e que esta não foi corrompida durante o envio. Qualquer alteração nos detalhes da transação resultaria num hash completamente diferente e mostraria à rede que alguém tentou adulterar a transação.
Difusão
Agora que Olivia conseguiu verificar que a transação enviada por Ben é válida, esta tem de ser transmitida para a rede, para que todos os nós possam verificar estas informações.
- A mensagem de transação e a assinatura digital são inicialmente enviadas para até oito nós. Cada nó retransmite então essas informações para até sete outros nós da rede.
- Este processo continua até que todos os nós da rede blockchain recebam e verifiquem a transação de forma independente.
- Depois de verificado por todos os nós da rede, as transações pendentes/não confirmadas são armazenadas numa estrutura chamada fila de transações – abreviatura de «memory pool».
Conclusão
Dependendo do tipo de mecanismo de consenso utilizado pela blockchain subjacente, é selecionado um único nó de validador para propor um novo bloco preenchido com transações provenientes da fila de transações.
No caso dos validadores de proof-of-work, depois de ser selecionado um validador bem-sucedido através do processo de mineração, os outros nós da rede têm primeiro de confirmar que este venceu a competição de hashing, antes de poder propor um novo bloco. Se quiser saber mais sobre este processo, pode consultar o artigo do Centro de aprendizagem Kraken «O que é a mineração de Bitcoin?»
Quando o bloco que contém a transação de Ben para Olivia é adicionado à blockchain, será considerado uma transação com uma confirmação. Por cada bloco adicionado à blockchain depois deste bloco, a transação de Ben obterá confirmações adicionais. Rondas adicionais de confirmações ajudam a aumentar a certeza da exatidão da transação na rede.
Embora algumas carteiras de cripto considerem uma transação concluída após uma única confirmação, outras carteiras – como as carteiras de Bitcoin – normalmente exigem até seis confirmações. Com um tempo de bloco de Bitcoin de um bloco por cada dez minutos, seis confirmações podem demorar cerca de uma hora a alcançar a liquidação completa.
Comece com a Kraken
Agora que aprendeu como funcionam as transações de criptomoeda, está pronto para dar o próximo passo na sua jornada no mundo da cripto?
Clique no botão abaixo para criar a sua conta e comprar cripto na Kraken hoje mesmo!