Top Qs
Linha do tempo
Chat
Contexto

Soma de verificação

Da Wikipédia, a enciclopédia livre

Soma de verificação
Remove ads

Soma de verificação (do inglês checksum) é um código usado para verificar a integridade de dados transmitidos através de um canal com ruídos ou armazenados em algum meio por algum tempo[1][2][3][4].

Thumb
Efeito de uma típica função de checksum (comando Unix sha1sum). É sensível às alterações, do mais curto ao mais longo, mesmo no caso de adicionar uma virgula. Se utilizássemos apenas o primeiro dígito, todavia, haveria colisão do "8".
Remove ads

Funcionamento

Isto é feito calculando a soma de verificação dos dados antes do envio ou do armazenamento deles, e recalculá-los ao recebê-los ou recuperá-los do armazenamento. Se o valor obtido é o mesmo, as informações não sofreram alterações e portanto não estão corrompidas[5][6][7].

Formas mais simplificadas destas somas são vulneráveis por não detectarem algumas formas de falha. A simples soma dos valores dos caracteres por exemplo é vulnerável a troca de ordem dos mesmos pela comutatividade da soma. Há formas mais elaboradas de se calcular estas somas que resolvem estes problemas, como por exemplo, o Cyclic Redundancy Check (verificação de redundância cíclica) ou CRC muito utilizados para detecção de falha[8] através da divisão de polinômios[9][10].

Remove ads

Segurança

Estas funções podem facilmente detectar falhas acidentais, porém caso a integridade dos dados seja uma questão de segurança uma função mais elaborada ainda é necessária. As funções de hash criptográfico ou resumo criptográfico como o MD5[11] ou as da família SHA[12] são adotadas.

Uma das propriedades das funções de resumo criptográfico é tornar difícil a busca por colisões. Ou seja, para um determinado texto é difícil encontrar outro texto de modo que ambos tenham o mesmo resumo criptográfico. Isto dificulta muito a manipulação maliciosa da informação tornando a função própria para autenticação[13][14].

Remove ads

Referências

  1. «Checksums». Wireshark User's Guide. Consultado em 15 de fevereiro de 2014
  2. «checksum». Merriam Webster Dictionary. Consultado em 15 de fevereiro de 2014
  3. «checksum». Dictionary.com. Consultado em 15 de fevereiro de 2014
  4. «O que é Checksum?». Canaltech. 29 de maio de 2012. Consultado em 15 de fevereiro de 2014
  5. «checksum». Webopedia. Consultado em 15 de fevereiro de 2014
  6. «Definition of:checksum». Encyclopedia PC Magazine. Consultado em 15 de fevereiro de 2014
  7. Tim Fischer. «Checksum». About.com PC Support. Consultado em 15 de fevereiro de 2014
  8. Jeff Tyson. «How Encryption Works». How Stuff Works. Consultado em 15 de fevereiro de 2014
  9. Ross N. Williams (19 de agosto de 1993). «A Painless Guide to CRC Error Detection Algorithms». Consultado em 15 de fevereiro de 2014
  10. Ronald Rivest (Abril de 1992). «The MD5 Message-Digest Algorithm». Consultado em 15 de fevereiro de 2014
  11. D. Eastlake, P. Jones (Abril de 2001). «US Secure Hash Algorithm 1 (SHA1)». Consultado em 15 de fevereiro de 2014
  12. «Checksum/Hash». Emacs Lisp. Consultado em 15 de fevereiro de 2014

Ver também

Loading related searches...

Wikiwand - on

Seamless Wikipedia browsing. On steroids.

Remove ads