As assinaturas digitais desempenham um papel central na segurança das criptomoedas. Aqui explicamos o seu papel na autenticação e como a criptografia moldou a criptomoeda.
O que é uma assinatura digital?
Se alguém quiser provar que uma mensagem foi criada por si, pode criar uma assinatura digital na mensagem para que outros a possam verificar.
![O que é uma assinatura digital?](https://contenthub-static.crypto.com/wp_media/2022/03/image7-2.png)
Os sistemas de assinatura digital utilizam normalmente criptossistemas assimétricos (como o RSA ou o ECC) e funções de hash. Consulte este artigo sobre criptografia se quiser saber mais sobre estes termos.
As assinaturas digitais são hoje amplamente utilizadas no sector empresarial e financeiro, por exemplo, para autorizar pagamentos bancários, trocar documentos electrónicos assinados, assinar transacções nos sistemas públicos de cadeias de blocos, assinar contratos digitais e em muitos outros cenários.
Como funcionam as assinaturas digitais
Voltemos a utilizar o amor clandestino entre Alice e Bob – o nosso casal de criptomoedas favorito que aparece em muitos dos nossos artigos.
Alice quer finalmente acabar com o Bob, pois já não consegue tolerar o seu amor secreto. Ela escreveu a mensagem ‘Let’s break up’ (que se traduziu em ‘9394’ no ‘Nerd Planet’). Tem medo que o Bob pense que a mensagem não é verdadeiramente dela (talvez a mulher do Bob tenha descoberto a sua relação e roubado a conta da Alice para escrever a mensagem). Por conseguinte, gostaria de anexar a mensagem juntamente com uma assinatura digital e enviá-la a Bob, para que este acredite que a mensagem provém dela.
![Como funcionam as assinaturas digitais](https://contenthub-static.crypto.com/wp_media/2022/03/image5-3.png)
![Como funcionam as assinaturas digitais](https://contenthub-static.crypto.com/wp_media/2022/03/image4-3-711x1024.png)
Utilizando o exemplo acima, esperamos que o leitor possa compreender para que servem as assinaturas digitais e porque é que podem garantir que uma mensagem provém verdadeiramente do remetente da mensagem. As assinaturas digitais combinam de forma inteligente a criptografia simétrica e assimétrica com funções de hash, e a invenção permitiu uma vasta gama de aplicações que requerem comunicação segura e verificaç ão de identidade.
Utilização da criptografia nas criptomoedas
As criptomoedas são chamadas “cripto” porque utilizam criptografia. Nesta secção, utilizando a bitcoin como exemplo, veremos como isto funciona.
Como funcionam as transacções de bitcoin?
Temos um 101 sobre o funcionamento da bitcoin e das suas transacções. Aqui vamos ver o que acontece dentro das transacções para compreender a utilização da criptografia na bitcoin.
A saída de uma transação contém dois campos:
1) um campo de valor para o montante de transferência em satoshis
2) um script pubkey para indicar as condições que devem ser cumpridas para que esses satoshis possam continuar a ser gastos
As figuras abaixo ajudam a ilustrar o fluxo de trabalho de Alice para enviar a Bob uma transação que Bob utiliza mais tarde para gastar essa transação. Tanto Alice como Bob utilizarão a forma mais comum do tipo de transação padrão Pay-To-Public-Key-Hash (P2PKH). O P2PKH permite que Alice gaste satoshis para um endereço Bitcoin típico e, em seguida, permite que Bob gaste ainda mais esses satoshis usando um par de chaves criptográficas simples.
![Como funcionam as transacções de bitcoin?](https://contenthub-static.crypto.com/wp_media/2022/03/image1-6.png)
Mais tarde, Bob decide gastar o UTXO de Alice:
![Como funcionam as transacções de bitcoin?](https://contenthub-static.crypto.com/wp_media/2022/03/image6-3-596x1024.png)
Mineração de Bitcoin e prova de trabalho para verificar transacções
As bitcoins são criadas através da extração mineira. Quando uma transação é criada, é marcada como “não confirmada”. Os mineiros recolhem um conjunto de transacções não confirmadas e tentam criar um bloco que contenha transacções. Para criar um bloco na cadeia de blocos, o mineiro tem de resolver um problema criptográfico complexo, cuja entrada é o bloco e a solução é uma sequência de números no interior do bloco, denominada nonce. Este processo de encontrar o nonce é chamado de mineração de bitcoin e é um processo competitivo que envolve muitos mineiros em todo o mundo.
Existem muitos parâmetros fixos para o bloco na bitcoin, como o hash do bloco anterior, as características das transacções no bloco atual, etc. Há apenas um parâmetro que pode ser alterado, chamado nonce. O trabalho do mineiro é encontrar o nonce que pode fazer com que o bloco candidato satisfaça o objetivo de dificuldade. A única forma de encontrar o nonce é tentar diferentes valores possíveis para o nonce, calcular o hash do novo bloco (id do hash do último bloco | bloco com transacções | nonce, onde ‘|’ significa concatenar) e verificar se o hash satisfaz o objetivo de dificuldade (obter uma cadeia que tenha um certo número de zeros à frente).
A tarefa do mineiro é a seguinte:
![Imagem2 5](https://contenthub-static.crypto.com/wp_media/2022/03/image2-5.png)
A prova de trabalho do Bitcoin usa dois hashes SHA-256 sucessivos e originalmente exigia que pelo menos os primeiros 32 dos 256 bits de hash fossem zero. No entanto, a rede bitcoin repõe periodicamente o nível de dificuldade para manter a taxa média de criação de blocos em 10 minutos.
Colocar a criptografia na criptomoeda
Esperamos que agora tenha uma compreensão clara de como as assinaturas digitais funcionam como parte da criptografia e, claro, porque é que a criptografia se chama ‘cripto’! Desde os seus sistemas de segurança profundamente tecidos e cuidadosamente desenvolvidos até à sua capacidade de garantir que os destinatários podem confiar no sistema, a criptografia é um sistema incrivelmente fascinante, maleável – na utilização, não na segurança – e futurista, com tantas possibilidades de avanço. A Bitcoin é apenas o início.
Se quiser mergulhar profundamente no tema da criptografiaLeia também o nosso artigo sobre o assunto. Nesta secção, analisamos a evolução da criptografia, o seu funcionamento, os seus fortes sistemas de segurança e abordamos as suas potenciais utilizações.
Referências
1. Alrammahi, M & Kaur, H. (2014). Desenvolvimento do algoritmo de criptografia Advanced Encryption Standard (AES) para o protocolo de segurança Wi-Fi. 10.13140/RG.2.2.20993.97124.
2. Cifras simétricas (n.d.). Obtido em https://www.crypto-it.net/eng/symmetric/index.html
3. Menezes, A. J., C., V. O. P., & Vanstone, S. A. (2001). Cifras de fluxo. Em Handbook of applied cryptography (pp.191-216). Boca Raton: CRC Press.
4. Symmetric ciphers (n.d), Retrieved from https://www.crypto-it.net/eng/symmetric/index.html
5. Kessler G.C (Nov 2019), Uma visão geral da criptografia. Obtido em https://www.garykessler.net/library/crypto.html#types
6. Lane Wagner (junho de 2018). (Muito) Criptografia básica de curvas elípticas. Obtido em https://blog.goodaudience.com/very-basic-elliptic-curve-cryptography-16c4f6c349ed
7. Cryptography Hash functions (n.d.) Retrieved from https://www.tutorialspoint.com/cryptography/cryptography_hash_functions.htm