Criptografia na Tecnologia Blockchain: Um Guia para Iniciantes 

Conteúdo

Compartilhar

Com a transformação digital massiva da sociedade moderna, impulsionada por dispositivos conectados, computação em nuvem, mercados online e plataformas sociais, a cibersegurança eficaz tornou-se uma necessidade, e não uma opção. No cerne dessa segurança está a criptografia, A ciência de proteger informações de forma que apenas as partes autorizadas possam lê-las ou verificá-las.

A criptografia é a base da segurança de redes por meio de técnicas que ocultam o significado dos dados, permitindo, ao mesmo tempo, operações online perfeitas. Ela garante a confidencialidade, a integridade e a autenticação das informações por meio de métodos como criptografia, hashing e assinaturas digitais. À medida que novas tecnologias surgem, os métodos criptográficos continuam a fortalecer os sistemas de segurança e a proteger a confidencialidade, a integridade e a disponibilidade dos dados para indivíduos, empresas e governos em todo o mundo.

Em nenhum outro lugar isso é mais visível do que na tecnologia blockchain. Bitcoin, Ethereum e milhares de outras redes blockchain funcionam graças à criptografia. Sem ela, não haveria como verificar transações sem uma autoridade central, como impedir que alguém adulterasse o histórico e como comprovar a propriedade de um ativo digital. A criptografia não é apenas uma característica do blockchain; ela é a base sobre a qual tudo o mais é construído.

Junte-se à UEEx

Experimente a plataforma líder mundial em gestão de patrimônio digital

Inscrever-se

Este guia foi escrito para iniciantes que desejam entender criptografia em linguagem simples, como ela funciona especificamente no blockchain, quais são os diferentes tipos e algoritmos, como ela protege contra ataques e o que o futuro reserva à medida que a computação quântica se torna uma preocupação real.

Leia também: Princípios Matemáticos e Criptográficos em Blockchain

Principais lições

  • Criptografia é a ciência de proteger informações por meio de técnicas matemáticas. No blockchain, ela garante a integridade dos dados, autentica transações, controla o acesso e torna o registro inviolável.
  • Os três principais tipos de métodos criptográficos usados ​​em blockchain são criptografia simétrica, criptografia assimétrica e hashing. Cada um tem uma finalidade específica.
  • A criptografia assimétrica, em particular a criptografia de curva elíptica (ECC), é a espinha dorsal da assinatura de transações em blockchain e da geração de endereços de carteira.
  • SHA-256 é a principal função hash usada no Bitcoin. Ela converte qualquer entrada em uma saída fixa de 256 bits e é fundamental para a mineração Proof of Work e o encadeamento de blocos.
  • As assinaturas digitais fornecem autenticação, integridade de dados e não repúdio simultaneamente, as três propriedades necessárias para verificar uma transação em blockchain sem uma autoridade central.
  • As árvores de Merkle permitem a verificação eficiente de transações individuais sem a necessidade de baixar toda a blockchain, utilizando hash hierárquico para gerar um único hash raiz por bloco.
  • Os ataques criptográficos mais comuns em redes blockchain incluem ataques de força bruta, ataque do homem no meio, ataque de repetição, ataque Sybil e ataque de 51%. Cada um deles explora uma camada diferente da rede.
  • Em agosto de 2024, o NIST finalizou três padrões de criptografia pós-quântica (CRYSTALS-Kyber, CRYSTALS-Dilithium e SPHINCS+). Pesquisas com especialistas indicam que a probabilidade de um computador quântico criptograficamente relevante existir até o final da década de 2030 é superior a 50%. As comunidades de blockchain precisam começar a planejar a migração agora.

O que é criptografia? Uma introdução em linguagem simples.

Criptografia vem das palavras gregas “kryptos” (oculto) e “graphia” (escrita). É a prática e o estudo de técnicas para proteger a comunicação e os dados na presença de adversários que possam interceptar, alterar ou falsificar essa comunicação.

Em sua essência, a criptografia transforma informações legíveis (chamadas de texto plano) em uma forma codificada e ilegível (chamada de texto cifrado) usando um algoritmo matemático e uma chave. Somente quem possui a chave correta pode reverter a transformação e recuperar a informação original. Isso é criptografia. Mas a criptografia vai além de simplesmente ocultar dados. Ela também permite verificar se os dados foram alterados, confirmar quem criou ou enviou uma mensagem e provar que uma determinada pessoa autorizou uma ação específica, tudo isso sem depender da confiança em qualquer intermediário central.

Essas propriedades correspondem diretamente às necessidades essenciais de uma rede blockchain. Uma blockchain deve permitir que qualquer pessoa verifique se os dados da transação não foram adulterados (integridade), confirme se as transações foram iniciadas pelo legítimo proprietário dos fundos (autenticação), impeça que os mesmos fundos sejam gastos duas vezes (não repúdio) e permita que tudo isso aconteça sem a necessidade de um banco, governo ou outra entidade central para arbitrar disputas.

A criptografia torna tudo isso possível apenas através da matemática.

Uma analogia simples: Imagine a criptografia como um conjunto de cofres e chaves. A criptografia simétrica fornece ao remetente e ao destinatário a mesma chave para trancar e destrancar o mesmo cofre. A criptografia assimétrica fornece a todos um cadeado público que pode ser usado para trancar um cofre, mas somente a pessoa que possui a chave privada correspondente pode abri-lo. O hashing é um processo unidirecional: uma vez que você insere algo, obtém uma saída única, mas nunca poderá reconstruir a entrada original apenas a partir da saída.

Uma Breve História da Criptografia

A criptografia não é um conceito novo. Cifras simples são usadas há milhares de anos para proteger comunicações militares. Júlio César codificava mensagens deslocando cada letra do alfabeto um número fixo de posições, o que hoje é conhecido como cifra de César. Cifras de escítalas eram usadas na antiga Esparta, onde uma tira de couro era enrolada em uma haste de diâmetro específico para revelar a mensagem oculta.

Nas décadas de 1950 e 1960, os primeiros computadores mainframe utilizavam cifras proprietárias simples para proteger dados em ambientes computacionais isolados. Com a expansão das redes distribuídas durante a década de 1970, a necessidade de padrões criptográficos interoperáveis ​​tornou-se crucial. O trabalho pioneiro de Whitfield Diffie e Martin Hellman, em 1976, introduziu o conceito de criptografia de chave pública, resolvendo o problema, até então insolúvel, de como duas partes que nunca haviam se encontrado poderiam trocar, de forma segura, uma chave secreta em uma rede insegura. Esse trabalho é amplamente considerado a gênese da criptografia moderna.

As décadas de 1980 e 1990 testemunharam a padronização do Data Encryption Standard (DES) e sua eventual substituição pelo Advanced Encryption Standard (AES). A década de 2000 trouxe a ampla adoção da criptografia de curva elíptica (ECC), que atinge segurança equivalente à do RSA usando tamanhos de chave significativamente menores, tornando-a muito mais eficiente para ambientes com recursos limitados, como dispositivos móveis e nós de blockchain.

Hoje, a criptografia é a infraestrutura invisível da internet. Toda vez que você vê o ícone de cadeado no seu navegador, visita um site HTTPS, usa um aplicativo de mensagens com criptografia de ponta a ponta ou envia uma transação de criptomoeda, você está se beneficiando de décadas de pesquisa matemática e padronização.

Leia também: O guia definitivo para entender criptomoedas

Por que a criptografia é fundamental para o Blockchain

A blockchain é fundamentalmente um livro-razão distribuído: um banco de dados replicado em milhares ou milhões de computadores ao redor do mundo, sem um único proprietário ou servidor central. O desafio que isso cria é enorme. Como garantir que cada cópia do banco de dados seja idêntica? Como impedir que um participante malicioso altere registros históricos ou invente transações fraudulentas? Como verificar a propriedade de ativos digitais sem um banco para consultar o saldo?

Os bancos de dados tradicionais resolvem esses problemas por meio de uma autoridade central confiável — um banco, um registro governamental ou o departamento de TI de uma empresa — que controla quem pode ler e gravar dados. O blockchain substitui essa autoridade confiável por garantias criptográficas. A própria matemática impõe as regras.

A criptografia desempenha seis funções fundamentais em qualquer rede blockchain:

  • Integridade de dados. Funções de hash Cria uma impressão digital única para cada bloco de dados. Se um único caractere em um bloco for alterado, a impressão digital muda completamente, sinalizando instantaneamente a adulteração para todos os nós da rede.
  • Autenticação. As assinaturas digitais comprovam que uma transação foi iniciada pelo proprietário legítimo da carteira remetente, sem revelar a chave privada que controla esses fundos.
  • Não repúdio. Assim que uma transação for assinada com um chave privada E, após a confirmação na blockchain, o remetente não poderá alegar posteriormente que não a autorizou. A assinatura é uma prova matemática de autorização.
  • Confidencialidade. A criptografia de chave pública permite que os usuários controlem o acesso a dados confidenciais, garantindo que apenas o detentor da chave privada correta possa descriptografar as informações criptografadas com a chave pública correspondente.
  • Imutabilidade. O encadeamento criptográfico de blocos usando hashes torna computacionalmente inviável alterar registros históricos sem invalidar todos os blocos subsequentes e refazer a prova de trabalho associada.
  • Gerenciamento de chaves. A criptografia fornece mecanismos seguros para gerar, distribuir, armazenar e revogar as chaves criptográficas que controlam o acesso às carteiras. smart contractse nós de rede.

Os três principais tipos de criptografia usados ​​em blockchain

1. Criptografia Simétrica

A criptografia simétrica é a forma mais simples e antiga de criptografia. Ela utiliza uma única chave compartilhada para criptografar e descriptografar dados. O remetente bloqueia os dados com a chave, transmite o texto cifrado e o destinatário o descriptografa usando a mesma chave. Essa abordagem é rápida e computacionalmente eficiente, tornando-a ideal para criptografar grandes volumes de dados.

O algoritmo de criptografia simétrica mais utilizado atualmente é o Advanced Encryption Standard (AES), selecionado pelo Instituto Nacional de Padrões e Tecnologia dos EUA (NIST) em 2001, após uma rigorosa competição pública. O AES opera em blocos de dados de 128 bits, utilizando chaves de 128, 192 ou 256 bits. Quanto maior a chave, mais segura a criptografia. O AES-256 é considerado inquebrável por computadores clássicos. Outros algoritmos simétricos comuns incluem a família ChaCha20, utilizada em conexões TLS modernas, e o mais antigo Triple DES (3DES), que está sendo descontinuado.

A principal limitação da criptografia simétrica reside no problema da distribuição de chaves: como compartilhar a chave secreta com a outra parte de forma segura, sem que um adversário a intercepte? No contexto do blockchain, isso torna a criptografia simétrica pouco adequada para assinatura de transações ou acesso a carteiras, onde não existe um canal seguro preestabelecido entre as partes. A criptografia simétrica, contudo, desempenha um papel importante na proteção de dados armazenados em repouso em sistemas blockchain e na criptografia de comunicações entre nós em redes blockchain privadas ou permissionadas.

Junte-se à UEEx

Experimente a plataforma líder mundial em gestão de patrimônio digital

Inscrever-se

Criptografia simétrica em termos simples:

Imagine que você e um amigo possuem cópias da mesma chave de um diário. Você tranca o seu diário (criptografa os dados) e seu amigo, que também possui a chave, pode destrancá-lo e lê-lo (descriptografá-lo). A segurança depende inteiramente de manter a chave em segredo. O problema: como ambos conseguem a mesma chave sem que alguém a intercepte?

Algoritmos simétricos comuns

AlgoritmoTamanho da chaveTamanho do blocoStatus
AES (Padrão Avançado de Criptografia)128, 192, 256 bits128 pedaçosPadrão atual. Amplamente utilizado em todo o mundo.
ChaCha20256 pedaçosCifra de fluxoAlternativa moderna e rápida ao AES. Utilizada no TLS 1.3 e no WireGuard.
3DES (DES triplo)112 ou 168 bits64 pedaçosLegado. Em processo de descontinuação. Não recomendado para novos sistemas.
Blowfish32 a 448 bits64 pedaçosMais antigo. Substituído pelo AES na maioria das aplicações.
DES (padrão de criptografia de dados)56 pedaços64 pedaçosQuebrado. Não deve ser usado.

2. Criptografia Assimétrica (Criptografia de Chave Pública)

A criptografia assimétrica resolveu o problema da distribuição de chaves que limita os sistemas simétricos. Em vez de uma única chave compartilhada, cada participante possui um par de chaves matematicamente vinculadas: uma chave pública que pode ser compartilhada livremente com qualquer pessoa e uma chave privada que deve ser mantida em absoluto segredo por seu proprietário. Os dados criptografados com a chave pública só podem ser descriptografados pela chave privada correspondente e vice-versa.

Isso cria duas capacidades poderosas. Primeiro, qualquer pessoa pode enviar uma mensagem criptografada para você, usando sua chave pública, sabendo que somente você, com sua chave privada, pode descriptografá-la. Segundo, você pode provar que é o autor de uma mensagem criptografando-a (ou, mais precisamente, um hash dela) com sua chave privada para criar uma assinatura digital. Qualquer pessoa com sua chave pública pode verificar a assinatura, confirmando que ela só poderia ter sido criada pelo detentor da chave privada correspondente.

A tecnologia blockchain depende quase que inteiramente de criptografia assimétrica para autenticação de transações e geração de endereços de carteira. O endereço da sua carteira blockchain é derivado da sua chave pública. Quando você deseja enviar fundos, assina a transação com sua chave privada. Cada nó da rede pode verificar essa assinatura usando sua chave pública, confirmando que você é o legítimo proprietário do endereço de envio, sem que você precise revelar sua chave privada.

RSA (Rivest-Shamir-Adleman)

O RSA é o algoritmo de criptografia assimétrica mais antigo e conhecido, desenvolvido em 1977 por Ron Rivest, Adi Shamir e Leonard Adleman. Sua segurança reside na dificuldade matemática de fatorar o produto de dois números primos muito grandes. Dada uma chave suficientemente grande (pelo menos 2048 bits para os requisitos de segurança atuais, com 4096 bits recomendados para segurança a longo prazo), fatorar a chave é computacionalmente inviável para computadores clássicos.

O RSA é amplamente utilizado para proteger o tráfego da web (HTTPS), a criptografia de e-mails (PGP) e certificados digitais. No entanto, raramente é usado diretamente em grandes redes blockchain, pois o tamanho grande de suas chaves o torna ineficiente para o processamento de transações de alto volume exigido pelas blockchains. O RSA também é conhecido por ser vulnerável a computadores quânticos que executam o Algoritmo de Shor, capaz de fatorar grandes produtos de números primos em tempo polinomial.

Criptografia de curva elíptica (ECC)

A Criptografia de Curva Elíptica (ECC) é o padrão de criptografia assimétrica usado pela maioria das principais redes blockchain, incluindo Bitcoin e Ethereum. A ECC atinge segurança equivalente à RSA usando tamanhos de chave drasticamente menores, porque sua base matemática (a dificuldade de resolver o problema do logaritmo discreto da curva elíptica, ou ECDLP) é mais difícil de quebrar por bit de comprimento da chave do que o problema da fatoração em números primos da RSA.

Uma chave ECC de 256 bits oferece segurança aproximadamente equivalente a uma chave RSA de 3072 bits. Isso significa que as operações ECC são mais rápidas, usam menos memória e são mais eficientes para ambientes com recursos limitados, como nós de blockchain e carteiras de hardware. O Bitcoin usa a curva elíptica específica chamada secp256k1, enquanto o Ethereum usa tanto a secp256k1 quanto a Curve25519, dependendo da aplicação. O algoritmo de assinatura padrão baseado em ECC é chamado ECDSA (Elliptic Curve Digital Signature Algorithm).

Como funciona um par de chaves em uma blockchain:

Você gera um número aleatório de 256 bits. Essa é a sua chave privada: mantenha-a em absoluto segredo. Usando a curva elíptica secp256k1, você deriva matematicamente a chave pública correspondente a partir da chave privada. A partir da chave pública, você deriva o endereço da sua carteira por meio de uma série de funções hash. Qualquer pessoa pode enviar fundos para o seu endereço. Somente o detentor da sua chave privada pode assinar uma transação para gastar esses fundos.

Troca de chaves Diffie-Hellman

O protocolo de troca de chaves Diffie-Hellman (DH), publicado em 1976, foi o primeiro método prático que permitiu a duas partes estabelecer um segredo compartilhado por meio de um canal inseguro, sem que tivessem se comunicado previamente. Ele funciona da seguinte forma: ambas as partes concordam com um conjunto público de parâmetros matemáticos, cada uma gera um número aleatório privado, trocam valores públicos calculados a partir desses números privados e, independentemente, chegam ao mesmo segredo compartilhado por meio de uma propriedade matemática engenhosa de exponenciação modular.

Nenhuma das partes transmite o segredo compartilhado diretamente. Um observador que intercepte os valores públicos não consegue, na prática, derivar o segredo compartilhado, pois isso exigiria a resolução do problema do logaritmo discreto. A variante Diffie-Hellman de Curva Elíptica (ECDH) aplica o mesmo princípio usando matemática de curvas elípticas, proporcionando a mesma segurança com tamanhos de chave muito menores. O ECDH é amplamente utilizado em protocolos de blockchain para estabelecer canais de comunicação seguros entre nós.

Infraestrutura de chave pública (PKI)

A Infraestrutura de Chaves Públicas (PKI) é o conjunto de políticas, procedimentos, hardware, software e padrões necessários para criar, gerenciar, distribuir, armazenar, usar e revogar certificados digitais e pares de chaves pública e privada em larga escala. A PKI é o que permite à internet confiar que a chave pública associada a um nome de domínio realmente pertence ao operador legítimo do site, por meio de uma cadeia de confiança baseada em Autoridades Certificadoras (ACs) cujas chaves públicas são pré-instaladas em navegadores e sistemas operacionais.

Em redes blockchain, os conceitos de Infraestrutura de Chaves Públicas (PKI) são aplicados de forma descentralizada. Não existe uma Autoridade Certificadora central. Em vez disso, o próprio protocolo blockchain, respaldado por provas criptográficas e incentivos econômicos, estabelece a confiança. A chave pública da sua carteira é a sua identidade na rede, e o livro-razão do blockchain é o registro do que essa identidade possui.

Leia também: Interoperabilidade entre cadeias: desbloqueando o potencial do blockchain

3. Funções hash

As funções hash são a terceira categoria de ferramenta criptográfica, e talvez a mais crucial para o blockchain. Uma função hash recebe uma entrada de qualquer tamanho e produz uma saída de tamanho fixo chamada hash, resumo ou impressão digital. Ao contrário da criptografia, o hashing é um processo unidirecional: você pode calcular o hash de qualquer entrada, mas não pode reconstruir a entrada original apenas a partir do hash.

As funções de hash criptográficas usadas em blockchain devem satisfazer cinco propriedades críticas:

  1. Determinístico. A mesma entrada sempre produz a mesma saída, em todas as máquinas, sempre. Isso é essencial para o consenso: se dois nós calcularem o hash dos mesmos dados de bloco, eles devem chegar ao mesmo hash.
  2. Resistência pré-imagem (unidirecional). Dado um hash, é computacionalmente inviável encontrar a entrada original que o produziu.
  3. Efeito avalanche. Até mesmo a menor alteração na entrada (inverter um único bit) produz um hash completamente diferente. Isso torna a detecção de adulteração instantânea e confiável.
  4. Resistência à colisão. É computacionalmente inviável encontrar duas entradas diferentes que produzam a mesma saída de hash.
  5. Computação rápida. Os hashes devem ser computados rapidamente para que os nós possam verificar transações e blocos de forma eficiente em escala de rede.

O algoritmo de hash mais utilizado em blockchain é o SHA-256 (Secure Hash Algorithm 256-bit), desenvolvido pela Agência de Segurança Nacional dos EUA e padronizado pelo NIST. É o algoritmo central do mecanismo de encadeamento de blocos do Bitcoin e da mineração de Prova de Trabalho (Proof of Work). O Ethereum utiliza o Keccak-256 (uma variante do SHA-3) para geração de endereços e operações internas do protocolo. O BLAKE3 é uma alternativa mais recente e rápida que vem ganhando interesse em projetos de blockchain emergentes.

Exemplo de SHA-256 (efeito avalanche):

Entrada: “Olá”

Hash: 185f8db32921bd46d35cc2e586c20eea06c8f3eff0d8b4a7a5a1e0ef7cbfd88

Entrada: “olá” (apenas a capitalização foi alterada)

Hash: 2cf24dba5fb0a30e26e83b2ac5b9e29e1b161e5c1fa7425e73043362938b9824

Duas saídas de 256 bits completamente diferentes a partir de uma única alteração de caractere.

Algoritmos de hash obsoletos a serem evitados:

MD5 e SHA-1 não são mais considerados criptograficamente seguros. Ataques de colisão contra ambos já foram demonstrados na prática. O SHA-1 foi descontinuado pelo NIST em 2011. Nenhum dos dois deve ser usado em novos sistemas críticos de segurança. Sempre utilize SHA-256, SHA-3 ou BLAKE3 para aplicações blockchain.

Como esses três tipos funcionam juntos no blockchain

criptografia em Blockchain

Entender cada tipo de criptografia isoladamente é útil, mas a segurança do blockchain reside na forma como esses três sistemas funcionam em conjunto, como camadas interligadas. Aqui está um panorama completo de como cada camada desempenha seu papel em uma única transação de Bitcoin:

  1. Você decide enviar Bitcoin. O software da sua carteira cria um registro de transação contendo o endereço do remetente, o endereço do destinatário e o valor.
  2. Os dados da transação são criptografados usando SHA-256 para produzir um resumo de comprimento fixo que representa a impressão digital única da transação.
  3. Você assina esse hash usando sua chave privada por meio do algoritmo ECDSA. A assinatura digital resultante é anexada à transação. Isso comprova que você a autorizou sem revelar sua chave privada.
  4. A transação assinada é transmitida para a rede. Cada nó que a recebe pode verificar a assinatura usando sua chave pública conhecida e, independentemente, realizar um novo hash dos dados da transação para confirmar se a assinatura é válida e se os dados foram alterados.
  5. As transações válidas são agrupadas em um bloco. O cabeçalho do bloco inclui o hash do bloco anterior (que cria a cadeia), um hash raiz Merkle de todas as transações no bloco, um carimbo de data/hora e um campo nonce usado na mineração.
  6. Os mineradores competem para encontrar um valor nonce que faça com que o hash do cabeçalho do bloco fique abaixo da meta de dificuldade atual (um hash com um número suficiente de zeros à esquerda). Esse é o cálculo da Prova de Trabalho (PoW). Encontrar um nonce válido é difícil; verificá-lo é trivial.
  7. O minerador vencedor transmite o bloco completo. Outros nós verificam o hash do bloco, todas as assinaturas de transação individuais e a raiz Merkle. Se tudo estiver correto, o bloco é adicionado à cópia da cadeia que eles possuem.
  8. O hash do novo bloco é incorporado ao cabeçalho do bloco seguinte, vinculando-os permanentemente. Alterar qualquer transação anterior mudaria o hash do bloco, quebraria o elo da cadeia e exigiria refazer toda a prova de trabalho subsequente. Com toda a rede estendendo continuamente a cadeia, isso é economicamente inviável em grande escala.

Assinaturas digitais: o mecanismo de autorização em blockchain

As assinaturas digitais merecem uma explicação mais aprofundada, pois são o mecanismo criptográfico que controla diretamente quem pode movimentar fundos em uma blockchain. Compreendê-las é compreender a essência da segurança da blockchain.

Uma assinatura digital é o resultado da criptografia de um hash de um documento ou transação com a chave privada do signatário. Ela comprova três coisas simultaneamente:

  • Autenticação: A assinatura só poderia ter sido produzida pelo detentor da chave privada correspondente. Ela comprova a identidade do signatário sem exigir que ele compartilhe qualquer informação secreta.
  • Integridade: A assinatura abrange o hash dos dados específicos. Se qualquer parte dos dados for alterada após a assinatura, o hash muda, invalidando a assinatura. Isso torna imediatamente detectável qualquer adulteração dos dados da transação após a sua autorização.
  • Não repúdio: O signatário não pode posteriormente negar ter assinado o documento. A assinatura é uma prova matemática de autorização que qualquer parte pode verificar de forma independente.

Os três passos de uma assinatura digital

Etapa 1: Geração de chaves. O signatário gera um par de chaves correspondentes, pública e privada, utilizando um algoritmo criptográfico como o ECDSA. A chave privada é um número aleatório de grande magnitude. A chave pública é derivada matematicamente a partir dela, utilizando as propriedades da curva elíptica escolhida. A chave privada é mantida em segredo; a chave pública é compartilhada abertamente.

Etapa 2: Assinatura. Para assinar uma transação, o software da carteira criptografa os dados da transação (usando SHA-256 no caso do Bitcoin) e, em seguida, aplica o algoritmo de assinatura ECDSA usando a chave privada e o hash como entradas. A saída é a assinatura digital, tipicamente dois números em ECDSA, denotados por r e s, que juntos representam a assinatura. Essa assinatura é anexada à transação.

Etapa 3: Verificação. Qualquer parte que deseje verificar a assinatura recebe os dados da transação, aplica um hash independente e utiliza o algoritmo de verificação ECDSA com a chave pública do remetente e os valores da assinatura (r e s). O algoritmo retorna verdadeiro (assinatura válida) ou falso (assinatura inválida). Um resultado válido confirma que a transação foi autorizada pelo detentor da chave privada correspondente à chave pública e que os dados da transação não foram modificados desde a assinatura.

Analogia da assinatura digital:

Imagine que você preenche um cheque e o carimba com seu selo de cera pessoal. Qualquer pessoa que saiba a aparência do seu selo (sua chave pública) pode verificar se você assinou o cheque. Mas somente você possui o anel que produz seu selo específico (sua chave privada). Se alguém alterar o valor no cheque depois que você o assinou, o selo de cera se rompe (o símbolo de hash muda, invalidando a assinatura) e todos podem ver que houve adulteração.

Árvores de Merkle: Organização de Transações Eficiente e Verificável

Árvores Merkle São uma estrutura de dados criptográfica que as redes blockchain usam para organizar, resumir e verificar de forma eficiente um grande número de transações dentro de cada bloco. Foram inventadas por Ralph Merkle em 1979 e receberam o nome em sua homenagem.

A estrutura funciona gerando hashes de transações individuais, em seguida, emparelhando esses hashes e gerando hashes de cada par, depois emparelhando e gerando hashes novamente, e repetindo esse processo até que reste apenas um único hash. Esse hash final, chamado raiz de Merkle, representa todo o conjunto de transações em uma forma matematicamente compacta. A raiz de Merkle é incluída no cabeçalho do bloco, tornando-se parte do hash do bloco.

Transações em um bloco:

TX-A, TX-B, TX-C, TX-D

Nível 1 (hashes de folhas):

Hash(TX-A) Hash(TX-B) Hash(TX-C) Hash(TX-D)

Nível 2 (hashes de pares):

Hash(Hash(TX-A) + Hash(TX-B)) Hash(Hash(TX-C) + Hash(TX-D))

Raiz de Merkle:

Hash( Hash(AB) + Hash(CD) ) <– valor único representando todas as 4 transações

A estrutura de árvore Merkle oferece três funcionalidades importantes para redes blockchain:

Verificação eficiente. Para provar que uma transação específica está incluída em um bloco confirmado, não é necessário baixar o bloco inteiro. Você precisa apenas da própria transação, da raiz Merkle do cabeçalho do bloco e do pequeno conjunto de hashes irmãos ao longo do caminho da transação até a raiz (chamado de prova Merkle ou caminho Merkle). Normalmente, isso corresponde a apenas algumas dezenas de bytes para um bloco contendo milhares de transações. Carteiras leves (clientes SPV) usam provas Merkle para verificar transações sem executar um nó completo, permitindo que carteiras de criptomoedas móveis funcionem com segurança em dispositivos com recursos limitados.

Detecção de violação. Alterar qualquer transação no bloco modifica seu hash, o que altera o hash do par acima dela, que por sua vez modifica o hash do par acima deste, propagando-se até alterar a raiz Merkle. Como a raiz Merkle está incorporada no cabeçalho do bloco e no hash do bloco, alterar qualquer transação invalida toda a prova de trabalho do bloco. A adulteração é instantaneamente detectável.

Verificação paralela. Como as árvores de Merkle permitem que provas de transação individuais sejam geradas e verificadas independentemente, os nós da rede podem verificar diferentes partes de um bloco simultaneamente, melhorando a eficiência da validação de blocos em grande escala.

Leia também: Compreendendo Algoritmos de Consenso: Um Guia Abrangente

Melhores práticas criptográficas em sistemas blockchain

Conhecer a teoria da criptografia é uma coisa. Implementá-la com segurança em um sistema blockchain real exige a adesão às melhores práticas estabelecidas, aprendidas tanto por meio de pesquisa acadêmica quanto por experiência prática conquistada com muito esforço.

Geração de chaves e aleatoriedade

A segurança de um par de chaves assimétricas é tão forte quanto a aleatoriedade usada para gerar a chave privada. Uma chave privada gerada usando um gerador de números aleatórios fraco ou previsível pode ser adivinhada ou reconstruída por um atacante, dando-lhe controle total sobre a carteira associada. Carteiras de blockchain devem usar geradores de números pseudoaleatórios criptograficamente seguros (CSPRNGs) provenientes de entropia genuína, tipicamente de geradores de números aleatórios de hardware em dispositivos modernos. Vários roubos de carteiras reais resultaram da baixa aleatoriedade na geração de chaves, particularmente em carteiras web antigas e implementações defeituosas da classe SecureRandom do Java no Android.

Armazenamento e proteção de chaves

Uma chave privada é a credencial mestra de uma carteira blockchain. Quem controla a chave privada controla todos os ativos na carteira associada. O armazenamento de chaves deve refletir essa realidade. Carteiras de software criptografam chaves privadas em disco usando uma chave derivada de uma senha (que por sua vez é estendida com um algoritmo de uso intensivo de memória, como Argon2 ou scrypt, para resistir a ataques de força bruta). Carteiras de hardware armazenam chaves privadas em módulos de segurança de hardware resistentes a adulteração, que nunca expõem a chave privada bruta ao computador host, mesmo durante a assinatura de transações. Frases-semente (frases mnemônicas) fornecem um backup legível por humanos a partir do qual uma chave privada pode ser regenerada deterministicamente.

Nunca reutilize pedófilos

No algoritmo de assinatura ECDSA, cada assinatura requer um número aleatório único chamado nonce (frequentemente denotado por k). Se o mesmo nonce for usado para assinar duas mensagens diferentes com a mesma chave privada, um atacante que observar ambas as assinaturas poderá derivar matematicamente a chave privada. Essa não é uma preocupação teórica: em 2013, uma falha na implementação do SecureRandom do Android causou a reutilização de nonces em carteiras de Bitcoin, resultando em roubo de chaves privadas e perdas financeiras significativas. As carteiras modernas usam geração determinística de nonce (RFC 6979) para eliminar completamente o risco de reutilização de nonce.

Utilizando bibliotecas padronizadas

Os algoritmos criptográficos devem ser implementados corretamente no nível do código para fornecerem suas garantias teóricas de segurança. Um único erro sutil na implementação da aritmética de curvas elípticas, por exemplo, pode comprometer completamente a segurança do sistema. Os desenvolvedores de blockchain devem usar bibliotecas criptográficas bem testadas e revisadas por pares, em vez de implementar algoritmos do zero. Criar sua própria criptografia é uma das coisas mais perigosas que um desenvolvedor pode fazer. Bibliotecas padrão como libsecp256k1 (usada pelo Bitcoin Core), OpenSSL e libsodium foram submetidas a extensas revisões de segurança e são muito mais seguras do que qualquer implementação personalizada.

Rotação de Certificados e Chaves

Chaves criptográficas de longa duração acumulam riscos ao longo do tempo. Chaves expostas, suspeitas de comprometimento ou simplesmente obsoletas devem ser rotacionadas: substituídas por novas chaves, com as antigas revogadas ou desativadas. Em contextos de blockchain, a rotação de chaves normalmente significa gerar um novo endereço de carteira para cada transação, o que já é o comportamento padrão em carteiras HD (Hierárquicas Determinísticas) modernas que utilizam os padrões BIP32 e BIP39. Usar um novo endereço para cada recibo melhora a privacidade e reduz a exposição de qualquer chave pública individual.

Ataques criptográficos comuns em redes blockchain

Entender como a criptografia blockchain pode ser atacada é tão importante quanto entender como ela funciona. Segurança não é uma propriedade que existe isoladamente; ela é definida em relação aos ataques que deve resistir.

Ataques de força bruta

Um ataque de força bruta tenta adivinhar uma senha, chave privada ou pré-imagem hash, testando sistematicamente todos os valores possíveis até encontrar o correto. Para chaves criptográficas modernas, a força bruta é computacionalmente inviável: uma chave privada de 256 bits tem mais valores possíveis do que átomos no universo observável. Quebrar por força bruta até mesmo uma única chave privada do Bitcoin levaria mais tempo do que a idade atual do universo, mesmo usando todo o poder computacional da Terra.

No entanto, ataques de força bruta continuam relevantes contra senhas fracas usadas para criptografar chaves privadas armazenadas. Um atacante que obtém um arquivo de armazenamento de chaves criptografado pode testar senhas comuns e palavras do dicionário em alta velocidade usando GPUs. A defesa utiliza frases-senha longas e geradas aleatoriamente, além de algoritmos de hash de senhas que consomem muita memória, como Argon2 ou scrypt, o que aumenta drasticamente o custo de cada tentativa de adivinhação.

Ataques man-in-the-middle (MitM)

Um ataque do tipo "homem no meio" ocorre quando um atacante intercepta secretamente e pode alterar as comunicações entre duas partes que acreditam estar se comunicando diretamente. No contexto de blockchain, um ataque do tipo "homem no meio" poderia permitir que um atacante interceptasse uma transação antes de sua transmissão, substituísse o endereço do destinatário por um diferente e retransmitisse a transação modificada para a rede.

Junte-se à UEEx

Experimente a plataforma líder mundial em gestão de patrimônio digital

Inscrever-se

As defesas contra ataques Man-in-the-Middle (MitM) em blockchain incluem criptografia de ponta a ponta nas comunicações ponto a ponto entre os nós, assinaturas digitais em todas as transações (qualquer modificação invalida a assinatura) e o uso de carteiras de hardware que exibem o endereço do destinatário em uma tela segura para que os usuários possam verificá-lo antes de assinar. Os usuários também devem verificar os endereços dos destinatários por meio de múltiplos canais antes de enviar quantias significativas, principalmente em transações realizadas pela primeira vez com uma nova contraparte.

Ataques de repetição

Um ataque de repetição ocorre quando uma transação válida e assinada é repetida ou replicada de forma fraudulenta. Em blockchain, isso geralmente acontece durante hard forks. Quando uma blockchain se divide em duas (como ocorreu com Ethereum e Ethereum Classic em 2016, e com Bitcoin e Bitcoin Cash em 2017), as transações válidas em uma cadeia também podem ser válidas na outra, porque ambas compartilham um histórico de transações comum. Um atacante que observa uma transação em uma cadeia pode potencialmente reproduzi-la na outra.

A solução é a proteção contra repetição, implementada pela inclusão de um identificador específico da cadeia em cada transação, de forma que uma transação assinada para uma cadeia seja criptograficamente inválida em qualquer outra cadeia. Hard forks bem gerenciados implementam a proteção contra repetição como um recurso obrigatório do novo protocolo de rede.

Ataques Sybil

Um ataque Sybil envolve a criação de um grande número de identidades falsas (nós) para obter influência desproporcional sobre uma rede ponto a ponto. O termo vem de um livro sobre uma pessoa diagnosticada com transtorno dissociativo de identidade. Em blockchain, um atacante Sybil cria muitos nós que aparentam ser participantes independentes, mas que na verdade são todos controlados pela mesma entidade. Esses nós falsos podem ser usados ​​para isolar nós legítimos do restante da rede (um ataque Eclipse), manipular o tráfego de rede, censurar transações específicas ou distorcer mecanismos de votação em sistemas de governança.

Prova de Trabalho e Mecanismos de consenso de prova de participação (Proof of Stake) São especificamente projetadas para mitigar ataques Sybil, tornando a influência proporcional a um recurso escasso (poder computacional ou capital em staking) em vez da quantidade de identidades. Criar um milhão de identidades de nós falsos não fornece influência adicional em uma rede Proof of Work se esses nós falsos, coletivamente, não adicionarem taxa de hash adicional.

51% de ataques

Um ataque de 51% ocorre quando uma única entidade ou grupo coordenado obtém o controle de mais da metade do poder de hash total de uma rede blockchain (em Proof of Work) ou do capital em staking (em Proof of Stake). Esse nível de controle permite que o atacante domine o processo de produção de blocos e potencialmente manipule a blockchain.

Com controle majoritário, um atacante pode reorganizar blocos recentes para reverter transações previamente confirmadas, possibilitando o gasto duplo: pagar por bens ou serviços com uma transação que posteriormente é apagada do blockchain. Ele também pode bloquear a confirmação de transações específicas, censurando, na prática, determinados endereços. O que ele não pode fazer, mesmo com 51% de controle, é roubar fundos de carteiras que não controla, criar moedas do nada ou alterar transações confirmadas antes do início do ataque.

Para redes grandes e consolidadas como o Bitcoin, um ataque de 51% exigiria dezenas de bilhões de dólares em hardware especializado e eletricidade, com o próprio ataque destruindo o valor da rede atacada. Redes blockchain menores, com taxas de hash totais mais baixas, são genuinamente vulneráveis, e várias já foram atacadas com sucesso, incluindo o Ethereum Classic em 2019 e 2020.

Ataques de extensão de comprimento

Um ataque de extensão de comprimento explora uma propriedade matemática de certas funções hash (incluindo SHA-256 quando usada de forma ingênua) que permite a um atacante que conhece a saída de um hash calcular o hash de uma mensagem mais longa a partir da entrada original, sem conhecer a própria entrada original. Isso pode ser explorado em aplicações que usam hashes como códigos de autenticação de mensagens, através da construção de mensagens falsificadas que produzem hashes válidos.

O protocolo do Bitcoin se defende contra isso usando SHA-256 duplo (calculando o hash da saída do SHA-256 novamente com SHA-256) para os hashes de bloco e usando construções HMAC (Códigos de Autenticação de Mensagens Baseados em Hash) em vez de funções hash brutas sempre que a autenticação de mensagens for necessária. Desenvolvedores que criam soluções baseadas em sistemas blockchain devem estar cientes dessa vulnerabilidade e usar HMAC específico ou funções hash modernas como o SHA-3 (que não é vulnerável à extensão de comprimento por design) em seus aplicativos.

Escala real dos incidentes recentes de segurança em blockchain:

O ataque à exchange Bybit em fevereiro de 2025 resultou no roubo de aproximadamente 499,000 Ether por meio de uma carteira de múltiplas assinaturas comprometida, causando perdas de cerca de US$ 1.5 bilhão. O ataque à ponte Ronin em março de 2022 custou US$ 625 milhões. O ataque ao empréstimo relâmpago da Euler Finance em março de 2023 custou aproximadamente US$ 197 milhões. Esses incidentes não foram falhas na criptografia central do blockchain; eles resultaram de segurança operacional comprometida, vulnerabilidades em contratos inteligentes e ataques de engenharia social contra detentores de chaves. Primitivas criptográficas essenciais, como SHA-256 e ECDSA, permanecem intactas.

A relação entre criptografia e mecanismos de consenso

Criptografia e mecanismos de consenso são os dois pilares fundamentais da segurança da blockchain e estão profundamente interligados. Os mecanismos de consenso estabelecem as regras pelas quais todos os participantes da rede concordam com uma única versão do histórico de transações. A criptografia fornece as ferramentas que tornam essas regras aplicáveis ​​e verificáveis.

Em sistemas de Prova de Trabalho (PoW) como o Bitcoin, o processo de consenso é um quebra-cabeça criptográfico. Os mineradores precisam calcular repetidamente o hash dos dados do cabeçalho do bloco (alterando apenas o campo nonce) até encontrarem um hash que fique abaixo do limite mínimo exigido, o que significa que o hash deve começar com um número necessário de zeros à esquerda. Como as funções de hash produzem resultados imprevisíveis, a única maneira de encontrar um nonce válido é testar bilhões de possibilidades. Esse investimento computacional é o "trabalho" na Prova de Trabalho e torna economicamente inviável reescrever o histórico.

Em sistemas de Prova de Participação (PoS) como o Ethereum, as assinaturas digitais são a principal ferramenta criptográfica para consenso. Os validadores assinam seus votos em blocos propostos com suas chaves privadas, criando um registro auditável e irrefutável da participação de cada validador. As condições de punição utilizam provas criptográficas para detectar e penalizar validadores que assinam blocos conflitantes (equivocação), garantindo que o comportamento desonesto resulte na confiscação automática da garantia depositada pelo validador.

Ambos os sistemas dependem inteiramente de primitivas criptográficas para funcionar. Remova as funções hash, as assinaturas digitais ou os pares de chaves, e o mecanismo de consenso não terá nenhuma base criptográfica sobre a qual se basear.

Leia também: Como as funções hash protegem seus dados: uma visão geral abrangente

Provas de Conhecimento Zero: Criptografia com Preservação de Privacidade para Blockchain

As provas de conhecimento zero (ZKPs) são uma das áreas mais poderosas e de rápido desenvolvimento da criptografia aplicada à blockchain. Uma prova de conhecimento zero é um método criptográfico pelo qual uma parte (o provador) pode convencer outra parte (o verificador) de que uma afirmação é verdadeira, sem revelar qualquer informação além da veracidade da própria afirmação.

O exemplo clássico é provar que você conhece uma senha sem realmente revelá-la. No blockchain, as ZKPs permitem que o remetente de uma transação prove que possui fundos suficientes para cobrir um pagamento sem revelar seu saldo real. Elas permitem que um usuário prove que atende a um requisito KYC sem divulgar seus documentos pessoais. Além disso, possibilitam a verificação da execução correta de cálculos complexos sem que o verificador precise executá-los novamente.

Duas famílias principais de sistemas ZKP têm apresentado uma adoção substancial da tecnologia blockchain:

  • zk-SNARKs Os Argumentos de Conhecimento Não Interativos Sucintos de Conhecimento Zero (zk-SNARK) produzem provas muito compactas e rápidas de verificar. Foram pioneiros no Zcash para transações privadas e agora são amplamente utilizados em soluções de escalabilidade de camada 2 do Ethereum, incluindo o zkSync Era e o zkEVM da Polygon. A principal limitação é que as primeiras construções de zk-SNARK exigiam uma cerimônia de configuração confiável, criando uma pequena vulnerabilidade teórica caso essa cerimônia fosse comprometida.
  • zk-STARKs Os Argumentos de Conhecimento Transparentes Escaláveis ​​de Conhecimento Zero (STARKs) são mais recentes, não exigem configuração confiável e dependem exclusivamente de funções hash para sua segurança, tornando-os resistentes à computação pós-quântica. A plataforma Starknet da StarkWare usa STARKs como base de sua rede Ethereum de camada 2. A desvantagem é que as provas STARK são maiores do que as provas SNARK, exigindo mais largura de banda e armazenamento por prova.

As provas de conhecimento zero representam a fronteira da inovação criptográfica em blockchain, possibilitando uma nova geração de aplicações privadas, escaláveis ​​e em conformidade com as regulamentações, que seriam impossíveis apenas com as ferramentas criptográficas anteriores.

A ameaça da computação quântica e a criptografia pós-quântica

O desafio mais significativo a longo prazo para a criptografia em blockchain é o potencial desenvolvimento de computadores quânticos relevantes para a criptografia. Os computadores quânticos utilizam os princípios da mecânica quântica para realizar certos tipos de cálculos exponencialmente mais rápido do que os computadores clássicos. Dois algoritmos quânticos são particularmente relevantes para a criptografia em blockchain.

Algoritmo de Shor

O Algoritmo de Shor, desenvolvido em 1994, consegue resolver os problemas matemáticos (fatoração de números primos e logaritmo discreto) que sustentam a segurança da criptografia RSA e de curvas elípticas em tempo polinomial em um computador quântico suficientemente poderoso. Isso significa que um computador quântico executando o Algoritmo de Shor poderia, teoricamente, derivar uma chave privada a partir de uma chave pública ou forjar assinaturas digitais, quebrando completamente as garantias de segurança do ECDSA e do RSA.

Esta é a ameaça quântica mais séria para a blockchain, pois ataca diretamente o mecanismo usado para autorizar transações. Toda blockchain que utiliza assinaturas ECDSA ou RSA, incluindo Bitcoin e Ethereum, seria vulnerável a um computador quântico suficientemente poderoso executando o Algoritmo de Shor. Pesquisas de especialistas apontam que a probabilidade de um computador quântico criptograficamente relevante (CRQC) capaz de quebrar a criptografia ECC de 256 bits é superior a 50% até o final da década de 2030, com uma probabilidade significativa já em meados da década de 2030, de acordo com a análise de Mosca e Piani de 2024.

Algoritmo de Grover

O algoritmo de Grover proporciona um ganho de velocidade quadrático para problemas de busca por força bruta. Para uma função hash com segurança de n bits, o algoritmo de Grover efetivamente reduz a segurança para aproximadamente n/2 bits contra um atacante quântico. Isso significa que o SHA-256 ofereceria aproximadamente 128 bits de segurança quântica, em vez dos 256 bits atuais. Embora essa seja uma redução significativa, a segurança de 128 bits ainda é considerada computacionalmente inviável: o consenso atual entre os especialistas é que o SHA-256 e o ​​SHA-3 permanecem seguros contra as técnicas quânticas conhecidas, com o SHA-384 ou o SHA-512 oferecendo margens adicionais confortáveis ​​para as aplicações de maior segurança.

Padrões de Criptografia Pós-Quântica do NIST

A comunidade criptográfica vem se preparando para a ameaça quântica há anos. Em agosto de 2024, o NIST finalizou seus três primeiros padrões de criptografia pós-quântica (PQC), concluindo um processo que começou com uma competição internacional aberta em 2016:

  • FIPS 203 (ML-KEM, baseado em CRYSTALS-Kyber): Um mecanismo de encapsulamento fundamental para o estabelecimento de segredos compartilhados. Sua segurança baseia-se na dificuldade dos problemas em redes de módulos, que se acredita serem resistentes tanto a ataques clássicos quanto quânticos.
  • FIPS 204 (ML-DSA, baseado em CRYSTALS-Dilithium): Um algoritmo de assinatura digital, a substituição pós-quântica mais direta para ECDSA em aplicações blockchain. Também baseado em problemas de reticulado de módulos.
  • FIPS 205 (SLH-DSA, baseado em SPHINCS+): Um esquema de assinatura digital sem estado baseado em hash, cuja segurança depende inteiramente da resistência a colisões das funções de hash, sem exigir criptografia de chave pública. Isso o torna a opção pós-quântica mais conservadora, pois suas premissas de segurança são as mais bem compreendidas.

De acordo com o cronograma de transição publicado no NIST IR 8547, os algoritmos vulneráveis ​​à computação quântica (RSA, ECDSA, ECDH) serão descontinuados dos padrões do NIST até 2035. Espera-se que os sistemas de alto risco migrem muito antes disso. O NIST recomenda que as organizações comecem a aplicar esses padrões agora para migrar seus sistemas antes do prazo final.

Desafios da Migração para Blockchain

Migrar redes blockchain para algoritmos criptográficos pós-quânticos não é uma simples atualização de software. Envolve a substituição da criptografia fundamental em nível de protocolo, o que requer consenso da comunidade e um hard fork coordenado, com o risco significativo de divisões da cadeia. Os esquemas de assinatura pós-quânticos também apresentam tamanhos de assinatura maiores do que as assinaturas ECDSA atuais: as assinaturas Dilithium2 têm aproximadamente 2,420 bytes, em comparação com cerca de 72 bytes para uma assinatura ECDSA. Isso aumenta o tamanho dos blocos, os requisitos de largura de banda e os custos de armazenamento.

Vitalik Buterin delineou publicamente um plano de contingência para o Ethereum caso ocorra um avanço quântico repentino: um hard fork que congelaria endereços comprometidos e permitiria que usuários legítimos migrassem para carteiras seguras contra ataques quânticos usando STARKs. A comunidade Bitcoin também discutiu caminhos de migração baseados em taproot e adaptações da assinatura Schnorr como passos em direção a uma arquitetura pós-quântica. A mensagem de ambas as comunidades é a mesma: a ameaça é real, o cronograma é incerto e a preparação deve começar agora.

Criptografia em diferentes tipos de redes blockchain

Nem todas as blockchains usam criptografia exatamente da mesma maneira. O tipo de rede, seja pública, privada ou de consórcio, determina quais ferramentas criptográficas são mais importantes e como elas são configuradas.

Bloqueios Públicos

Blockchains públicas como Bitcoin e Ethereum são abertas a qualquer pessoa. Qualquer usuário pode gerar uma carteira, qualquer nó pode participar do consenso e qualquer desenvolvedor pode implantar um contrato inteligente. Nesse ambiente, todo o modelo de segurança deve se basear exclusivamente em garantias criptográficas, pois não há uma lista de membros confiáveis ​​nem uma autoridade central para arbitrar disputas. Cada transação deve ser assinada criptograficamente. Cada bloco deve ser vinculado criptograficamente. Cada reivindicação de propriedade deve ser verificável por qualquer nó sem acesso privilegiado. Portanto, as blockchains públicas fazem uso intensivo de criptografia assimétrica (para assinatura de transações), funções hash (para vinculação e mineração de blocos), árvores de Merkle (para verificação eficiente) e provas de conhecimento zero (para privacidade e escalabilidade).

Blockchains privadas e com permissão

Blockchains privadas (como as construídas em Hyperledger Fabric ou R3 Corda) restringem a participação a entidades conhecidas e pré-aprovadas. Como todos os participantes são identificados e concordaram com os termos da rede, o modelo de confiança é diferente. O papel da criptografia muda um pouco: menos ênfase na mineração Proof of Work sem permissão, mais ênfase na verificação de identidade baseada em PKI (certificados X.509), criptografia em nível de canal para confidencialidade de dados entre subconjuntos de participantes e trilhas de auditoria criptográficas que podem ser compartilhadas seletivamente com reguladores ou auditores. A criptografia simétrica desempenha um papel maior na proteção de dados em repouso e em trânsito em redes permissionadas.

Blockchains de consórcio

As blockchains de consórcio situam-se entre os modelos públicos e privados. Um conjunto definido de organizações governa conjuntamente a rede, sendo a participação condicionada à admissão, mas não à total abertura pública. Exemplos incluem redes de financiamento comercial e sistemas de liquidação interbancária. As ferramentas criptográficas em blockchains de consórcio normalmente combinam a identidade baseada em certificados X.509 das redes privadas com um subconjunto das ferramentas de transparência (blocos vinculados por hash, trilhas de auditoria de assinatura digital) do design de blockchains públicas.

O futuro da criptografia em blockchain

O futuro da criptografia em blockchain

O cenário criptográfico do blockchain está evoluindo rapidamente em diversas frentes simultaneamente. Compreender para onde a área está caminhando ajuda tanto desenvolvedores quanto investidores a avaliar a segurança e a viabilidade a longo prazo dos sistemas blockchain.

Criptografia Homomórfica

A criptografia homomórfica (HE) é uma forma especial de criptografia que permite que cálculos sejam realizados diretamente sobre os dados criptografados, produzindo resultados criptografados que, quando descriptografados, correspondem ao resultado dos mesmos cálculos realizados sobre o texto original. Isso significa que uma rede blockchain poderia processar e verificar transações em dados criptografados sem que nenhum participante jamais veja os valores reais envolvidos. A criptografia totalmente homomórfica (FHE) tem sido uma área de pesquisa ativa por décadas, mas permanece computacionalmente dispendiosa para implementação prática. Esquemas parcialmente homomórficos e com alguma homomorfia já estão sendo explorados em aplicações específicas de blockchain, particularmente em gerenciamento de dados de saúde e privacidade financeira.

Assinaturas de Limiar e Computação Multipartidária

Os esquemas de assinatura por limiar (TSS) permitem que uma chave privada seja dividida entre várias partes, de forma que um número mínimo dessas partes (por exemplo, 3 de 5) precise cooperar para produzir uma assinatura válida. Nenhuma das partes detém a chave privada completa, eliminando o ponto único de falha que torna o gerenciamento de chaves individuais tão arriscado. A computação multipartidária (MPC) amplia esse conceito, permitindo a computação conjunta de operações criptográficas entre várias partes sem que nenhuma delas tenha acesso às entradas privadas das outras. Ambas as técnicas são cada vez mais utilizadas em soluções de custódia institucional e na governança de organizações autônomas descentralizadas (DAOs) para distribuir o controle de carteiras de alto valor.

Assinaturas baseadas em reticulados e em hashes

Com o início da migração pós-quântica, os esquemas de assinatura baseados em reticulados e em funções hash substituirão gradualmente o ECDSA na infraestrutura blockchain. Os esquemas baseados em reticulados (CRYSTALS-Dilithium) oferecem um bom equilíbrio entre tamanho da assinatura e eficiência computacional. Os esquemas baseados em funções hash (SPHINCS+) oferecem o máximo de conservadorismo, com a segurança dependendo inteiramente da resistência a colisões da função hash, a suposição mais bem compreendida em toda a criptografia. O desafio será gerenciar as compensações de desempenho de tamanhos de assinatura maiores durante o período de transição, particularmente para redes blockchain de alta capacidade.

Crescimento contínuo de aplicações de conhecimento zero

As provas de conhecimento zero continuarão a expandir suas aplicações atuais, desde a privacidade de transações e a escalabilidade da camada 2 até usos mais amplos: credenciais de identidade baseadas em conhecimento zero que permitem aos usuários comprovar a conformidade com regulamentações sem revelar dados pessoais; sistemas de votação com tecnologia de conhecimento zero para governança de DAOs que preservam o sigilo individual dos votos, permitindo a verificação pública dos resultados agregados; e provas de integridade computacional baseadas em conhecimento zero para inferência de aprendizado de máquina fora da cadeia, submetidas a sistemas de verificação na cadeia.

Conclusão

A criptografia não é uma característica de tecnologia blockchainÉ a base sobre a qual a tecnologia blockchain se sustenta. Sem criptografia simétrica e assimétrica para proteger a confidencialidade dos dados e autenticar identidades, sem funções hash para criar as impressões digitais invioláveis ​​que encadeiam os blocos e alimentam os mecanismos de consenso, sem assinaturas digitais para autorizar transações e garantir o não repúdio, e sem árvores de Merkle para permitir a verificação eficiente em milhões de nós, não haveria blockchain.

Para iniciantes, a ideia essencial é esta: a blockchain pode ser confiável sem uma entidade central confiável porque a matemática criptográfica impõe as regras. Nenhum banco verifica sua transação; a assinatura o faz. Nenhum servidor verifica seu saldo; o livro-razão vinculado por hash o faz. Nenhuma autoridade impede a adulteração; a prova de trabalho acumulada e o efeito avalanche da função hash o fazem.

À medida que as capacidades computacionais evoluem e os computadores quânticos se tornam uma ameaça concreta a longo prazo, os fundamentos criptográficos do blockchain devem evoluir juntamente com eles. Os padrões pós-quânticos do NIST, publicados em 2024, fornecem o roteiro, e a comunidade blockchain já está planejando os caminhos de migração. A transição será complexa e deve ser gerenciada com cuidado, mas a história da área mostra um padrão consistente de identificação precoce de ameaças e desenvolvimento de respostas matematicamente robustas antes que essas ameaças se tornem realidades operacionais.

Leia também: Criptomoedas vs. Blockchain: O que você precisa saber

Para um iniciante, entender criptografia não exige dominar a matemática das curvas elípticas ou as complexidades das funções de compressão SHA-256. O que é necessário é compreender as propriedades fundamentais que essas ferramentas oferecem: funções unidirecionais fáceis de calcular e inviáveis ​​de reverter, pares de chaves onde a chave pública identifica e a chave privada autoriza, e cadeias criptográficas onde qualquer alteração em qualquer ponto invalida tudo o que estiver a jusante. Com esses conceitos em mente, a arquitetura de segurança de qualquer sistema blockchain torna-se legível e avaliável por si só.

Aviso Legal: Este artigo destina-se exclusivamente a fins informativos e não deve ser considerado aconselhamento sobre negociação ou investimento. Nada aqui contido deve ser interpretado como aconselhamento financeiro, jurídico ou tributário. Negociar ou investir em criptomoedas acarreta um risco considerável de perdas financeiras. Sempre realize a devida diligência antes de tomar qualquer decisão de negociação ou investimento.