Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Criptografia para Leigos
Search
Dann Luciano
September 17, 2016
Programming
0
56
Criptografia para Leigos
Palestra apresentada no Software Freedom Day 2016 em Teresina-PI-BR
Dann Luciano
September 17, 2016
Tweet
Share
More Decks by Dann Luciano
See All by Dann Luciano
Criando Sistemas de Autenticação Seguros
dannluciano
0
220
Python Cryptography
dannluciano
2
130
Criptografando seu Banco de Dados
dannluciano
1
65
Other Decks in Programming
See All in Programming
KMP와 kotlinx.rpc로 서버와 클라이언트 동기화
kwakeuijin
0
290
Androidアプリのモジュール分割における:x:commonを考える
okuzawats
1
270
functionalなアプローチで動的要素を排除する
ryopeko
1
190
traP の部内 ISUCON とそれを支えるポータル / PISCON Portal
ikura_hamu
0
180
Simple組み合わせ村から大都会Railsにやってきた俺は / Coming to Rails from the Simple
moznion
3
2.1k
PHPとAPI Platformで作る本格的なWeb APIアプリケーション(入門編) / phpcon 2024 Intro to API Platform
ttskch
0
380
令和7年版 あなたが使ってよいフロントエンド機能とは
mugi_uno
10
4.9k
毎日13時間もかかるバッチ処理をたった3日で60%短縮するためにやったこと
sho_ssk_
1
530
月刊 競技プログラミングをお仕事に役立てるには
terryu16
1
1.2k
React 19でお手軽にCSS-in-JSを自作する
yukukotani
5
560
為你自己學 Python
eddie
0
510
Fixstars高速化コンテスト2024準優勝解法
eijirou
0
190
Featured
See All Featured
We Have a Design System, Now What?
morganepeng
51
7.3k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
26
1.9k
Stop Working from a Prison Cell
hatefulcrawdad
267
20k
Bootstrapping a Software Product
garrettdimon
PRO
305
110k
Agile that works and the tools we love
rasmusluckow
328
21k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
330
21k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
251
21k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
29
950
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
127
18k
BBQ
matthewcrist
85
9.4k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
28
9.2k
What's in a price? How to price your products and services
michaelherold
244
12k
Transcript
Criptografia Para Leigos por Dann Luciano 1
2
25 Gigabytes de Dados 30 Milhões de Contas Ashley Madison
https://www.theguardian.com/ 3
4
68 Milhões de Senhas Dropbox https://www.theguardian.com/ 5
Dann Luciano 6
7
Criptografia O que é? 8
9 “Au!g64dhsUI#4&(*a” “Software Freedom Day 2016”
❤ 10 “Software Freedom Day 2016”
Objetivos 11
I. Confidencialidade 12
II. Integridade 13
III. Autenticação 14
Conceitos 15
Texto Claro (P) “Software Freedom Day 2016” 16
Texto Cifrado (C) 17
Criptografar (E) “Software Freedom Day 2016” ⊗ 18
Descriptografar (D) ⊗ “Software Freedom Day 2016” 19
Chave (K) ❤ 20
E(P, K) = C D(C, K) = P
Fundamentos da Criptografia 22
XOR Ou Exclusivo 23
XOR P K XOR(P, K) = C XOR(C, K) =
P 0 0 0 0 0 1 1 0 1 0 1 1 1 1 0 1
XOR A xor B = B xor A A xor
A = 0 A xor 0 = A
XOR
Hash MD5, SHA1, SHA256
Hash • Propriedades Impossíveis/Difíceis: 1. Modificar uma Mensagem sem mudar
o Hash 2. Gerar uma Mensagem a partir de um Hash 3. Encontrar duas Mensagens com o mesmo Hash
Hash != Criptografia
Rainbow Tables
Senha MD5 password 5f4dcc3b5aa765d61d8327deb882cf99 p4ssw0rd 2a9d119df47ff993b662a8ef36f9ea20 12345678 25d55ad283aa400af464c76d713c07ad … …
NÃO Use MD5/SHA1 para Senhas
Criptografia Hash
Geradores de Números Aleatórios 34
Geradores de Números Aleatórios • Geradores de Números Aleatórios •
Geradores de Números Pseudo-Aleatórios Seguros • Geradores de Números Pseudo-Aleatórios
Finalizando
Criptografia é Difícil
Criptografia é Compreensível
Dicas
Use HTTPS 40
https://www.eff.org/https-everywhere
Use FERNET Nos Dados
https://github.com/fernet/spec/
Use Scrypt/Bcrypt Nas Senhas
https://www.tarsnap.com/scrypt.html
Próximos Passos 46
https://codemoji.org/ 47
http://cartilha.cert.br/criptografia/ 48
https://crypto101.io/ 49
Muito Obrigado! 50 ? https://speakerdeck.com/dannluciano
[email protected]