Upgrade to Pro — share decks privately, control downloads, hide ads and more …

NodeJS Crypto

Sponsored · Ship Features Fearlessly Turn features on and off without deploys. Used by thousands of Ruby developers.

NodeJS Crypto

Avatar for Lucas Santos

Lucas Santos

August 01, 2019
Tweet

More Decks by Lucas Santos

Other Decks in Programming

Transcript

  1. Cifra de César T E X T O k =

    3 W H A W R +k +k +k +k +k
  2. Criptografia digital - Baseada em matemática - Varia para cada

    tipo de entrada - Varia para cada tipo de dado - Dificuldade de decriptação - Facilidade de criação
  3. Reversível É possível obter a mensagem original - AES -

    RSA - 3DES (DES) - Diffie-Hellman - Base64 - Rot13
  4. O que podemos fazer - Criação de certificados - Criptografia

    assimétrica - Criptografia simétrica - Algoritmos autenticados - Algoritmos de iteração
  5. O que é uma chave? Criptografia reversível - Base da

    criptografia utilizada - Evita descobrimento por brute force - Não é um dicionário - Torna a função reversível
  6. Casos de uso - Modelo mais utilizado de criptografia reversível

    - Armazenamento de informações confidenciais - Utilizado quando não precisamos compartilhar a senha
  7. Vetores de inicialização Adicionando ainda mais segurança - Número de

    uso único - Aleatório - Previne ataques de dicionário - Geralmente tem 16 bits
  8. Casos de uso - Autenticação de usuários - Tokens de

    validação - Assinatura simples de mensagens
  9. O que é hash Criptografia irreversível - Resultado de uma

    função criptográfica de derivação - Comprimento fixo - Com ou sem chave - Difíceis de reverter - Volatilidade da saída - Criam assinaturas - Transforma grandes quantidades de dados em pequenas unidades de informação
  10. Casos de uso - Validação de blocos (blockchain) - Assinaturas

    de mensagens - Validação de binários - Armazenamento de senhas
  11. PBKD2F Criptografando a criptografia … Várias vezes - Aplica uma

    criptografia irreversível várias vezes - Utiliza um Salt - Depende do algoritmo subsequente
  12. O que é uma assinatura Garantindo que está tudo certo

    - Hash gerado a partir do conteúdo - Garante autenticidade - Tira proveito da natureza volátil dos hashes
  13. Casos de uso - Validação de autenticidade - Validação de

    integridade - Emails - Chaves - Mensagens - Criptomoedas
  14. referências_ - http://enigma.louisedade.co.uk/enigma.html - http://bit.ly/310srla - Como a enigma funciona

    - https://lollyrock.com/posts/nodejs-encryption/ - https://www.geeksforgeeks.org/node-js-password-hashing-crypto-module/ - https://nodejs.org/api/crypto.html - https://www.tecmundo.com.br/seguranca/1896-o-que-e-ssl-.htm - https://pt.wikipedia.org/wiki/Criptografia - https://www.youtube.com/watch?v=_Eeg1LxVWa8 - https://en.wikipedia.org/wiki/Enigma_machine - https://pt.wikipedia.org/wiki/Fun%C3%A7%C3%A3o_hash - https://pt.wikipedia.org/wiki/Fun%C3%A7%C3%A3o_hash_criptogr%C3%A1fica - https://github.com/khaosdoctor/palestra-nodejs-crypto - https://github.com/auth0/node-jsonwebtoken