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
Crypto 101 (en)
Search
Oliver Milke
June 18, 2018
Technology
310
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Crypto 101 (en)
Oliver Milke
June 18, 2018
More Decks by Oliver Milke
See All by Oliver Milke
Crypto 101
omilke
2
910
Jenkins Pipelines in Continuous Action
omilke
0
100
Jenkins Pipelines in Continuous Action (english)
omilke
0
73
4 Kids - Nachwuchsförderung unter der Lupe
omilke
0
67
Other Decks in Technology
See All in Technology
ハッカソンで入賞した話 @ Findy LT
asari194617
0
1.5k
LLM・AIエージェントシステムベストプラクティス
shibuiwilliam
6
1.6k
猫付きpingコマンドを自作
uyuki234
0
290
Rust×eBPFでEDRっぽいものをつくる
sunlife3
2
880
[potatotips #96] Give Your AI Agent the Flutter Playbook
korodroid
0
150
LanceDB入門
mocobeta
9
670
Kiro Crew入門 - 常駐エージェントの仕組みと使いどころ / Intro to Kiro Crew
k_adachi_01
1
830
医療の現場を変革に挑戦した半年間の軌跡 - PythonとAIで現場を変える / From Code to Care
soudai
PRO
1
580
平文パスワードはログに“残り” ── 肝心の侵入は“痕跡すら残らない”
kuroneko13
0
120
同じWAFが、攻撃の“形”は弾く── 正当な“形”の不正は通す
kuroneko13
0
270
形式手法特論:Hyperproperty とモデル検査 #kernelvm / Kernel VM Study Tokyo 19th
ytaka23
0
710
Kiro Crew で始める マルチエージェント開発
miu_crescent
PRO
0
160
Featured
See All Featured
Building a A Zero-Code AI SEO Workflow
portentint
PRO
0
680
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
38
3k
職位にかかわらず全員がリーダーシップを発揮するチーム作り / Building a team where everyone can demonstrate leadership regardless of position
madoxten
64
56k
From Legacy to Launchpad: Building Startup-Ready Communities
dugsong
0
300
Applied NLP in the Age of Generative AI
inesmontani
PRO
4
2.4k
Groundhog Day: Seeking Process in Gaming for Health
codingconduct
0
290
Beyond borders and beyond the search box: How to win the global "messy middle" with AI-driven SEO
davidcarrasco
3
210
Understanding Cognitive Biases in Performance Measurement
bluesmoon
32
3k
The Cult of Friendly URLs
andyhume
79
7k
Why Our Code Smells
bkeepers
PRO
340
58k
What does AI have to do with Human Rights?
axbom
PRO
1
2.3k
Lessons Learnt from Crawling 1000+ Websites
charlesmeaden
PRO
1
1.5k
Transcript
@OliverMilke @cloudogu
meta 1 Outline | Differentiation 2 About Key Pairs and
Certificates 3 Cipher Suites 4
Developers? 1 Dev Ops? 2
Terms / Concepts • Things I stumbled over myself •
Practise-oriented, not from Scratch Crypto is hard to get right • Dutch Election Security Talk
• > 10 years of Software Development • Crypto and
Security for Mobile Online Services @VW • Software Craftsman @Cloudogu EcoSystem • JUG Ostfalen • Fitness / Freeletics Oliver Milke Software Craftsman https://stackoverflow.com/users/2108 919/omilke https://twitter.com/OliverMilke http://oliver-milke.de/ https://github.com/omilke
meta 1 Outline | Differentiation 2 About Key Pairs and
Certificates 3 Cipher Suites 4
Cryptology Security Cryptography Cryptanalysis … Awareness Processes
https://www.xkcd.com/538/
Confidentiality Integrity Authenticity
SQL encrypted? Authorization: Basic d2lraTpwZWRpYQ== Security through secrecy
of the keys • not secrecy of algorithm • Opposite: Security By Obscurity
Symmetric Encryption • 1 key for encryption / decryption •
fast • Stream Cipher • Block Cipher • Various modes of operation • AES − Rijndael Cipher Cryptographic Hash • One-way function • Resistance to collions • MD*, SHA-*, bCyrpt
Digital Signature • Asymmetrically encrypted hash Asymmetric Encryption • 2
inverse keys (Key Pair) • Operations can be reversed with the other keys • slow
Cryptographically Secure Pseudo-Random Number Generator • True randomness by a
machine? • Nonces • Protection against Replay
one-way functions • „forwards“ easy • „backwards“ hard as in
computationally complex Examples • Multiplication of large primes − RSA • Modular exponentiation − Diffie-Hellman, ElGamal − finite fields / elliptic curves • AES
Specification Implementation Side Channel Attacks
https://www.xkcd.com/936/
Storing for authentication ? Salt • Individual for each password
Pepper • Common for all passwords ! Argon2 PBKDF2 sCrypt / bCrypt
One-way function Integrity can be verified Insecure transmission
• Exchanging original and hash is possible 1010001 Hash
Hash Insecure transmission • Exchanging requires secret H-MAC +
Shared Secret Integrity and Authenticity • Proves knowledge of secret 1010001 0110000
meta 1 Outline | Differentiation 2 About Key Pairs and
Certificates …or: what is a Trust Anchor? 3 Cipher Suites 4
Server Client
Intermediate Certificate Server Certificate Certificate Authority (CA) Root Certificate Client
Server
meta 1 Outline | Differentiation 2 About Key Pairs and
Certificates 3 ECDHE-ECDSA-AES256-GCM-SHA384 …or: what is a Cipher Suite? 4
Connection is encrypted But how? TLS handshake for agreeing
on Cipher Suite ? ECDHE-ECDSA-AES256-GCM-SHA384 ✓ ECDHE-ECDSA-AES256-GCM-SHA384 ✓
Encrypted connection • AES256-GCM-SHA384 But which key? • ECDHE-ECDSA-AES256-GCM-SHA384
Encrypted connection • AES256-GCM-SHA384 • Key Exchange via ECDHE
But is it the expected service? • ECDHE-ECDSA-AES256-GCM-SHA384
Crypto-System with employed primitves • constants describing details Depending
on the protocol • Example is TLS 1.2 • TLS 1.3 employs different concepts
None
Storing passwords ? Mobile Online Services ?
Crypto Lib (bCrypt) http://www.bouncycastle.org/java.html Password Policy http://www.passay.org/ (formerly vt-password)
Password Hashing security.stackexchange.com Thread OWASP Password Storage Cheat Sheet
https://www.owasp.org/index.php/Password_Storage_Cheat_Sheet OWASP Forgot Password Cheat Sheet https://www.owasp.org/index.php/Forgot_Password_Cheat_Sheet
Qualys SSL Lab Server Test https://www.ssllabs.com/ssltest/ ! Mozilla Config Generator
https://mozilla.github.io/server-side-tls/ssl-config-generator/ ! Bruce Schneier https://www.schneier.com/ Security Assessment https://www.keylength.com/
Thank you feedback plz Get in touch • https://twitter.com/OliverMilke •
http://oliver-milke.de/ •
[email protected]
• https://cloudogu.com/en/blog/Crypto-101