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
210
Python Cryptography
dannluciano
2
130
Criptografando seu Banco de Dados
dannluciano
1
61
Other Decks in Programming
See All in Programming
Debugging: All you need to know (for simultaneous interpreting)
jmatsu
2
760
The Shape of a Service Object
inem
0
520
Shinjuku.rb#95:心の技術書紹介
free_world21
1
110
Kotlin 2.0が与えるAndroid開発の進化
masayukisuda
1
370
Modular Monolith Go Server with GraphQL Federation + gRPC
110y
1
580
Rubyとクリエイティブコーディングの輪の広がり / The Growing Circle of Ruby and Creative Coding
chobishiba
1
270
Using Livebook to build and deploy internal tools @ ElixirConf 2024
hugobarauna
0
250
メモリ最適化を究める!iOSアプリ開発における5つの重要なポイント
yhirakawa333
0
410
GraphQL あるいは React における自律的なデータ取得について
quramy
11
2.9k
Jakarta EE meets AI
ivargrimstad
0
380
令和トラベルにおけるLLM活用事例:社内ツール開発から得た学びと実践
ippo012
0
140
状態管理ライブラリZustandの導入から運用まで
k1tikurisu
3
470
Featured
See All Featured
The Power of CSS Pseudo Elements
geoffreycrofte
71
5.3k
Adopting Sorbet at Scale
ufuk
73
8.9k
What's in a price? How to price your products and services
michaelherold
242
11k
Debugging Ruby Performance
tmm1
72
12k
RailsConf 2023
tenderlove
28
810
Put a Button on it: Removing Barriers to Going Fast.
kastner
58
3.4k
Building an army of robots
kneath
302
42k
Creatively Recalculating Your Daily Design Routine
revolveconf
215
12k
Mobile First: as difficult as doing things right
swwweet
221
8.8k
Building Better People: How to give real-time feedback that sticks.
wjessup
359
19k
A designer walks into a library…
pauljervisheath
201
24k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
25
3.9k
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]