Índice:
- Artigo de navegação
- Recapitular
- Criptografia e assinatura digital
- Assinaturas digitais
- Atingindo a Segurança da Mensagem
- Qual é o próximo?
- Artigo Anterior
- Artigo seguinte
Artigo de navegação
Confira o conjunto completo de artigos:
- Criptografia e assinaturas digitais
Recapitular
Os dois artigos anteriores nos forneceram uma ampla introdução à criptografia antes de irmos direto para a discussão sobre assinaturas digitais.
A assinatura digital e sua verificação é um dos principais conceitos por trás do Blockchain, onde aplicativos de criptomoeda, como Bitcoin, são baseados.
Em uma rede Blockchain, é importante ser capaz de identificar corretamente os participantes de uma transação, comprovando que a assinatura veio do titular da chave privada e que a transação é válida.
As assinaturas digitais fornecem autenticação, integridade de dados e não repúdio, todos críticos para uma rede Blockchain. Como resultado, qualquer pessoa na rede pode confiar nas transações, mesmo sem um intermediário.
Criptografia e assinatura digital
Como vimos no artigo anterior, uma criptografia de chave pública cria uma mensagem criptografada, enquanto uma chave privada cria uma assinatura digital.
Uso de criptografia
Assinaturas digitais
Além da criptografia e descriptografia de dados, a criptografia de chave pública pode ser usada para criar uma assinatura digital para fornecer autenticação, integridade de dados e não repúdio em uma rede Blockchain.
As etapas a seguir explicam o processo para um modelo de assinatura digital baseado na criptografia de chave pública descrita no diagrama a seguir:
- Todos os nós participantes da rede Blockchain têm um par de chaves Público-Privado, gerado matematicamente.
- A mensagem em seu formato de texto simples é alimentada em um algoritmo de hash para gerar uma mensagem em hash, também conhecida como Message Digest. Em um aplicativo de criptomoeda, como Bitcoins, a mensagem contém a transação emitida pelo remetente.
- A mensagem em hash é então assinada pela chave privada do remetente e enviada pela rede Blockchain, junto com a mensagem em formato de texto simples.
- Os nós participantes na rede Blockchain agora tentarão validar a mensagem verificando a assinatura digital para verificar se ela corresponde à chave pública do endereço do qual a mensagem estava sendo enviada, passando por um algoritmo de verificação.
- Como a assinatura digital foi criada usando a chave privada do remetente, a rede pode facilmente provar que a assinatura veio do portador da chave privada usando a chave pública do remetente correspondente.
- A mensagem de texto simples é alimentada por outro algoritmo de hash para gerar um valor de hash. Esse valor hash é comparado com o valor hash da saída do algoritmo de verificação acima. A validação é realizada sem que o remetente precise revelar sua chave privada.
No caso dos Bitcoins, a rede também verifica se o remetente possui bitcoins suficientes para enviar e se o remetente ainda não os enviou para outro destinatário. Isso é obtido ao percorrer o histórico de transações, que é público no livro razão do bitcoin.
Modelo de assinatura digital
Em vez de assinar digitalmente a mensagem de texto simples diretamente, a assinatura digital é formada com o hash de dados. A mensagem hash é uma representação única, mas um resumo dos dados relativamente menor. Isso torna o blockchain mais eficiente.
Atingindo a Segurança da Mensagem
Vamos agora ver por que é tão importante usar assinaturas digitais no Blockchain:
- Integridade: as assinaturas digitais e o algoritmo de hashing garantem que os dados não tenham sido acessados e modificados ilegalmente por nenhum invasor. Isso significa que os dados não podem ser alterados sem detecção.
- Autenticação: as assinaturas digitais estabelecem confiança entre um remetente e um receptor em uma rede Blockchain. O destinatário pode ter certeza de que apenas o remetente pode ter enviado esta mensagem.
- Irrecusabilidade: O remetente não pode negar o envio da mensagem, pois a assinatura digital só pode ser criada por um remetente que possua a chave privada correspondente e mais ninguém.
Qual é o próximo?
Não falamos muito sobre hashing, pois isso será abordado no próximo artigo. Por enquanto, só precisamos saber que o Hashing é um algoritmo ou função matemática que mapeia dados de tamanho arbitrário para um hash de tamanho fixo. Exemplo,
Exemplos de hash
Em resumo, o Hashing verifica se os dados não foram modificados ou adulterados.
Artigo Anterior
- Desbloqueando o Blockchain: Criptografia de chave pública O
Blockchain usa criptografia de chave pública (algoritmos de chave assimétrica) para proteger as mensagens de transação na rede. No Blockchain, assinaturas digitais baseadas em criptografia de chave pública são usadas para provar que uma mensagem se origina de um p específico
Artigo seguinte
- Desbloqueando o Blockchain: Hashing
Existem dois conceitos criptográficos fundamentais que mantêm o Blockchain unido. A Assinatura Digital e o Hashing garantem que as transações em um Blockchain sejam realizadas apenas por pessoas legítimas e que os registros permaneçam livres de manipulação
© 2018 Heng Kiong Yap