Download INTRODUCTION

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the work of artificial intelligence, which forms the content of this project

Document related concepts
no text concepts found
Transcript
OWASP Meetup
Richard Moulds - Vice President Strategy, Whitewood
October 27th 2016
Cryptography – the basis of digital security
Digital Certificates
Encryption
(authentication)
Strong
authentication
Secure
communications
(data confidentiality)
Protect data at
rest
Mobile payments
Secure
archives
Secure
time
Digital signatures
(integrity and
non-repudiation)
©2016 WHITEWOOD® - ALL RIGHTS RESERVED
Code signing
Crypto is all about secrets
Inside the ‘Perimeter’
Encryption
Data
Math
keys
Insiders focus on
stealing the keys
©2016 WHITEWOOD® - ALL RIGHTS RESERVED
Outsider the ‘Perimeter’
Encrypted Data
Network
traffic
Backup
media
Forensic
requests
Portable
media
Cloud
storage
File
shares
Outsiders can only
try to guess the keys
Inside the ‘Perimeter’
Decryption
Math
keys
Data
All crypto security starts with random numbers
Security assumptions rely on keys being truly random - when
patterns emerge (or are engineered), keys get predictable and
crypto is weakened
©2016 WHITEWOOD® - ALL RIGHTS RESERVED
Hidden vulnerabilities and backdoors of choice
©2016 WHITEWOOD® - ALL RIGHTS RESERVED
Testing for randomness
Single die
Two dice
Loaded dice
1.0
Probabilities of outcomes
Measuring uniformity and lack of bias is a good start…
©2016 WHITEWOOD® - ALL RIGHTS RESERVED
Proving unpredictability is more tricky
What data looks the most unpredictable?
7
3.1415926535
31415926535
89793238462
64338327950
28841971693
99375896473
𝜋
For crypto we also need unpredictability, imperturbability,
secrecy and reliability all of which requires knowledge of the
source of randomness, not just statistical analysis of the output
©2016 WHITEWOOD® - ALL RIGHTS RESERVED
Finally we have a standard (nearly)
“Specifying an entropy source is a
complicated matter. This is partly
due to confusion in the meaning of
entropy, and partly due to the fact
that, while other parts of an RBG
design are strictly algorithmic,
entropy sources depend on
physical processes that may vary
from one instance of a source to
another”.
Source – Recommendation for the Entropy Sources Used for
Random Bit Generation (SP800-90B 2nd draft) – NIST January 2016
©2016 WHITEWOOD® - ALL RIGHTS RESERVED
Why so complicated?
Most random
numbers
come from
the Operating
System
©2016 WHITEWOOD® - ALL RIGHTS RESERVED
RANDOM
NUMBER
GENERATOR
But software
doesn’t act
randomly
Entropy - a long standing issue
“Anyone who considers arithmetical methods of
producing random digits is, of course, in a state of sin.”
(J. von Neumann, 1951)
©2016 WHITEWOOD® - ALL RIGHTS RESERVED
Pseudo-random numbers – an oxymoron?
Operating
System
Entropy
Source
Random
Seeds
Shuffling the deck
©2016 WHITEWOOD® - ALL RIGHTS RESERVED
Pseudorandom
number
generator
Random
Numbers
Dealing the deck
Crypto
Application
Where does entropy come from?
Local Environment
Keyboards
Host System
App1
App2
Mouse Clicks
Random Numbers
Entropy
Camera
App3
Pseudo-random
number generator
Operating System
Entropy
Microphone
CPU
Timing
Antenna
©2016 WHITEWOOD® - ALL RIGHTS RESERVED
Network
Timing
Hard Drive
Timing
Hardware
But in a virtual world…
Local Environment
Keyboards
Host System
App1
App2
Mouse Clicks
Camera
Random Numbers
Pseudo-random
number generator
©2016 WHITEWOOD® - ALL RIGHTS RESERVED
Operating System
Hypervisor
Microphone
Antenna
App3
CPU
Timing
Network
Timing
Hard Drive
Timing
Hardware
Random number generators in Linux
Delivers random numbers only if
sufficient entropy has been
captured - otherwise it stops
©2016 WHITEWOOD® - ALL RIGHTS RESERVED
Delivers random numbers
irrespective of how much
entropy has been captured
Typical RNG architecture
Entropy or
noise source
Sample
analog
noise
Digitize
Remove sampling
distortion
(no entropy added)
Test quality of
entropy here
for best results
Post
Processing
Health
tests
Raw random data
Conditioned
random data
Crypto based
processing masks
underlying
randomness and
makes testing
difficult
©2016 WHITEWOOD® - ALL RIGHTS RESERVED
Conditioning
Entropy extraction
and ‘whitening’
(no entropy
created)
Pseudo random
number Generator
Data rate expansion
(no entropy added)
Random numbers
(e.g. dev/random)
quality depends on
seeding strategy
Not all entropy sources are equal
Sources that generate entropy are
more likely to be secret and less
subject to manipulation
Control and
Consistency
Electrical noise
Meta-stabile
circuit
Quantum
Source
makes
entropy
Hard drive
User input
Source
captures
entropy
‘Random’
things
Low speed or low
‘entropy density’
Something
in-between
Low ‘entropy density’ sources require data
processing to extract entropy, resulting in
compression and reduced throughput
©2016 WHITEWOOD® - ALL RIGHTS RESERVED
Radio noise
Network and
CPU jitter
High speed and high
‘entropy density’
Quality and
Quantity
Deployment scenarios
Corporate Environment
Network
Appliances
and IoT
①
Traditional data
center applications
②
①
Cloud and
hosted
environments
③
Improving random numbers
① - Dedicated hardware RNG per machine/server
② - Web based public random number service
③ - Corporate ‘entropy server’
④ - Cloud based ‘Entropy as a Service’ capability
©2016 WHITEWOOD® - ALL RIGHTS RESERVED
Public
cloud
instances
④
Summary
Encryption and cryptography are the basis of trust and security
in the digital world
 Random numbers are critical for security but are often poorly
understood and managed
 Random number generators are a point of attack and
vulnerability – potentially an invisible one
 Modern application environments present entropy challenges
– cloud, appliance, mobile, browser, IoT
 Proving the operation and quality of entropy sources and
random number generators is difficult
 New standards such as NIST 800-90 will help
 Random number generation should be a critical component of
your key management strategy and datacenter infrastructure

©2016 WHITEWOOD® - ALL RIGHTS RESERVED
Thank you
[email protected]
Demo at www.whitewoodencryption.com/netrandom-demo
©2016 WHITEWOOD® - ALL RIGHTS RESERVED