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
デザインパターンで理解するLLMエージェントの作り方 / How to develop an LLM agent using agentic design patterns
rkaga
3
370
Flutterを言い訳にしない!アプリの使い心地改善テクニック5選🔥
kno3a87
1
210
3 Effective Rules for Using Signals in Angular
manfredsteyer
PRO
0
120
聞き手から登壇者へ: RubyKaigi2024 LTでの初挑戦が 教えてくれた、可能性の星
mikik0
1
140
CSC509 Lecture 11
javiergs
PRO
0
180
イベント駆動で成長して委員会
happymana
1
340
「今のプロジェクトいろいろ大変なんですよ、app/services とかもあって……」/After Kaigi on Rails 2024 LT Night
junk0612
5
2.2k
as(型アサーション)を書く前にできること
marokanatani
10
2.7k
Compose 1.7のTextFieldはPOBox Plusで日本語変換できない
tomoya0x00
0
200
2024/11/8 関西Kaggler会 2024 #3 / Kaggle Kernel で Gemma 2 × vLLM を動かす。
kohecchi
5
950
見せてあげますよ、「本物のLaravel批判」ってやつを。
77web
7
7.8k
Better Code Design in PHP
afilina
PRO
0
130
Featured
See All Featured
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
329
21k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
27
4.3k
Building Better People: How to give real-time feedback that sticks.
wjessup
364
19k
The Language of Interfaces
destraynor
154
24k
Build The Right Thing And Hit Your Dates
maggiecrowley
33
2.4k
Unsuck your backbone
ammeep
668
57k
Large-scale JavaScript Application Architecture
addyosmani
510
110k
Art, The Web, and Tiny UX
lynnandtonic
297
20k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
229
52k
Product Roadmaps are Hard
iamctodd
PRO
49
11k
Building Flexible Design Systems
yeseniaperezcruz
327
38k
The MySQL Ecosystem @ GitHub 2015
samlambert
250
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]