RevCast: Fast, Private Certificate Revocation
- ver FM radio
Aaron Schulman Stanford University Dave Levin University of Maryland Neil Spring University of Maryland
RevCast : Fast, Private Certificate Revocation over FM radio Aaron - - PowerPoint PPT Presentation
RevCast : Fast, Private Certificate Revocation over FM radio Aaron Schulman Stanford University Dave Levin Neil Spring University of Maryland University of Maryland Authentication in the PKI Authentication in the PKI I want an
Aaron Schulman Stanford University Dave Levin University of Maryland Neil Spring University of Maryland
I want an encrypted connection.
I want an encrypted connection.
Certificate #12
Signed by CA:
I want an encrypted connection.
Certificate #12
Signed by CA:
The CA ( ) attests that is controlled by
Is bound to ?
Certificate #12
Signed by CA:
The CA ( ) attests that is controlled by
Is bound to ?
Certificate #12
Signed by CA:
Trusted Root CAs
The CA ( ) attests that is controlled by
Is bound to ?
Certificate #12
Signed by CA:
Trusted Root CAs
The CA ( ) attests that is controlled by
Trusted Root CAs
C Certificate #12
Signed by CA:
Trusted Root CAs
C
Certificate #12
Signed by CA:Trusted Root CAs
C
Certificate #12
Signed by CA:Trusted Root CAs
C
Certificate #12
Signed by CA:Trusted Root CAs
C
Certificate #12
Signed by CA:Trusted Root CAs
C
Certificate #12
Signed by CA:Trusted Root CAs
C
Certificate #12
Signed by CA:Trusted Root CAs
C
Certificate #12
Signed by CA:Revocation
Certificate #12
Signed by CA:
Trusted Root CAs
C
Certificate #12
Signed by CA:Revocation
Certificate #12
Signed by CA:
The CA ( ) breaks the binding of with
Trusted Root CAs
C
Certificate #12
Signed by CA:Revocation
Certificate #12
Signed by CA:
The CA ( ) breaks the binding of with
Trusted Root CAs
C
Certificate #12
Signed by CA:Revocation
Certificate #12
Signed by CA:
The CA ( ) breaks the binding of with
Trusted Root CAs
C
Certificate #12
Signed by CA:Revocation
Certificate #12
Signed by CA:
The CA ( ) breaks the binding of with
Trusted Root CAs
C
Certificate #12
Signed by CA:Revocation
Certificate #12
Signed by CA:
The CA ( ) breaks the binding of with
One revocation every 1.1 seconds for all CAs on the Internet
C
Revocation
Certificate #12
Signed by CA:
C
Revocation
Certificate #12
Signed by CA:
10s Timeliness Clients’ revocation state should be up-to-date, ideally within 10s of seconds
10s Timeliness Clients’ revocation state should be up-to-date, ideally within 10s of seconds
$ $ $ $ $ $
Low-cost dissemination The distribution mechanism must scale with CAs, certificates, and clients
10s Timeliness Clients’ revocation state should be up-to-date, ideally within 10s of seconds
$ $ $ $ $ $
Low-cost dissemination The distribution mechanism must scale with CAs, certificates, and clients Privacy Users’ browsing habits should not have to be revealed
10s Timeliness Clients’ revocation state should be up-to-date, ideally within 10s of seconds
$ $ $ $ $ $
Low-cost dissemination The distribution mechanism must scale with CAs, certificates, and clients Privacy Users’ browsing habits should not have to be revealed
It is generally regarded that no system can possibly achieve all three.
10s Timeliness Clients’ revocation state should be up-to-date, ideally within 10s of seconds
$ $ $ $ $ $
Low-cost dissemination The distribution mechanism must scale with CAs, certificates, and clients Privacy Users’ browsing habits should not have to be revealed
It is generally regarded that no system can possibly achieve all three.
Certificate Revocation Lists (CRL) Online Certificate Status Protocol (OCSP) OCSP Stapling Short lived certs
CA
Client Client Client Client
Org
CRL
124, 24 21, 2521
Revocation
Certificate #12
Signed by CA:Certificate #12
Signed by CA:Still ok
Certificate #12 Signed by CA:Still ok
Certificate #12 Signed by CA:CA
Org
CA
Certificate #12
Signed by CA:CA
CA
Client Client Client Client
Org
CRL 124, 24 21, 2521 Revocation Certificate #12 Signed by CA: Certificate #12 Signed by CA: Still ok Certificate #12 Signed by CA: Still ok Certificate #12 Signed by CA:CA
Org
CA
Certificate #12 Signed by CA:CA
CRLs
❌ ❌
OCSP
❌ ❌
Short lived
❌
Stapling
❌
Client
CRL 124, 24 21, 2521CA CA
Client
Revocation Certificate #12 Signed by CA:Client
OrgCA
Client
Certificate #12 SignedCA
Org Certificate #12 Signed Still ok Certificate #12 Signed Still ok Certificate #12 SignedCRLs
❌ ❌
OCSP
❌ ❌
Short lived
❌
Stapling
❌
All of these protocols rely on unicast transmission of revocations
Client
CRL 124, 24 21, 2521CA CA
Client
Revocation Certificate #12 Signed by CA:Client
OrgCA
Client
Certificate #12 SignedCA
Org Certificate #12 Signed Still ok Certificate #12 Signed Still ok Certificate #12 SignedUnicast is not well suited
for distributing revocations
Doesn’t scale to distributing to every device on the Internet Failures are benign indication of connectivity issues (soft-fail) Multicast revocation is also flawed (Sybils, MITM, DoS)
Revocation
Certificate #12
Signed by CA:
Tower: http://cityspottercards.com/
Revocation
Certificate #12
Signed by CA:
Tower: http://cityspottercards.com/
FM RDS coverage is ideal for disseminating revocations
200,000 150,000 100,000 50,000
Privacy
Radio broadcasts are inherently receiver anonymous
$ $ $ $ $ $
Low-cost dissemination
One transmission covers up to 10 million & Under-monotized
Privacy
Radio broadcasts are inherently receiver anonymous
$ $ $ $ $ $
Low-cost dissemination
One transmission covers up to 10 million & Under-monotized
Privacy
Radio broadcasts are inherently receiver anonymous
$ $ $ $ $ $
Low-cost dissemination
One transmission covers up to 10 million & Under-monotized
One tiny problem. RDS has an effective bitrate of 421.8 bps.
10s
Timeliness?
RevCast protocol - fitting revocations in 421.8 bps
Evaluate RevCast with 2 months of revocations
CAs Radio station Receivers
CAs Radio station Receivers
R R
R
1
2
3
R
R R
1
2
3
CAs Radio station Receivers
R R
R
1
2
3
Losses can go undetected
CAs Radio station
R
R
R R
R
Receivers
1
2
3 1
2 R3
Losses can go undetected
CAs Radio station
R
R
R R
R
Receivers
1
2
3 1
2 R3
Losses can go undetected
CAs Radio station
R
R
R R
R
Receivers
1
2
3 1
2 R3
Losses can go undetected
CAs Radio station
R
R
R R
R
Receivers
1
2
3 1
2 R3
GoDaddy didn’t revoke
Making losses detectible with “nothing now”
CAs Radio station
R
R
R R
Receivers
1
2
1
2
Nn
Nn
3 3
Making losses detectible with “nothing now”
CAs Radio station
R
R
R R
Receivers
1
2
1
2 GoDaddy says they didn’t revoke
Nn
Nn
3 3
Making losses detectible with “nothing now”
CAs Radio station
R
R
R R
Receivers
1
2
1
2 GoDaddy says they didn’t revoke
Nn
Nn
3 3
Making losses detectible with “nothing now”
CAs Radio station
R
R
R R
Receivers
1
2
1
2 GoDaddy says they didn’t revoke
Nn
Nn
3 3
Making losses detectible with “nothing now”
CAs Radio station
R
R
R R
Receivers
1
2
1
2
Nn
Nn
3 3
Danger!!! I am not up- to-date with GoDaddy
Sleeping receivers can lose synchronization
CAs Radio station
R
R
R R
Receivers
1
2
1
2
Nn
Nn
3 3
Z
Z
Z
ZSleeping receivers can lose synchronization
CAs Radio station
R
R
R R
Receivers
1
2
1
2
Nn
Nn
3 3 What did I miss?
Sleeping receivers stay up-to-date with “Nothing since”
CAs Radio station
R
R
R R
Receivers
1
2
1
2
Ns
Ns
3 3
Z
Z
Z
ZSleeping receivers stay up-to-date with “Nothing since”
CAs Radio station
R
R
R R
Receivers
1
2
1
2
Ns
Ns
3 3 I didn’t miss anything from GoDaddy
Nn
Ns
Nothing now Nothing since
All other CAs
Must sign every 10s
R
Revocation
Revoking CAs
Shortening “nothing now” and “nothing since”
{M} {M}
Shortening “nothing now” and “nothing since”
{M} {M} {M} {M}
Shortening “nothing now” and “nothing since”
{M} {M} {M} {M}
Problem: FM RDS doesn’t scale to hundreds of signatures
Shortening “nothing now” and “nothing since”
{M} {M}
Problem: FM RDS doesn’t scale to hundreds of signatures
{M}
Shortening “nothing now” and “nothing since”
{M} {M}
Problem: FM RDS doesn’t scale to hundreds of signatures
[Boldyreva 2003]
Multi-signatures: combine multiple CA signatures into one
{M}
Shortening “nothing now” and “nothing since”
{M} {M} {M} {M} {M}
Problem: FM RDS doesn’t scale to hundreds of signatures
2.89 seconds for both “nothing new” and “nothing since”
[Boldyreva 2003]
Multi-signatures: combine multiple CA signatures into one
R1
Nn
R1
2
CAs Radio station Receivers
2
Nn
2
Ns
3
Ns
3
978 CRLs extracted from Rapid7’s scan of the entire IPv4 space
102 103 104 105 1 2013 2 3 4 5 6 7 8 9 10 11 12 1 2014 2 3 4 5 # of Revocations Per Day Month: Year: Heartbleed Weekday Saturday Sunday
978 CRLs extracted from Rapid7’s scan of the entire IPv4 space
Security takes the weekends off
102 103 104 105 1 2013 2 3 4 5 6 7 8 9 10 11 12 1 2014 2 3 4 5 # of Revocations Per Day Month: Year: Heartbleed Weekday Saturday Sunday
978 CRLs extracted from Rapid7’s scan of the entire IPv4 space
Security takes the weekends off 114,021 402,747
102 103 104 105 1 2013 2 3 4 5 6 7 8 9 10 11 12 1 2014 2 3 4 5 # of Revocations Per Day Month: Year: Heartbleed Weekday Saturday Sunday
How quickly can RevCast update?
0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 0.01 0.1 1 10 100 CDF Fraction of interval required Interval (s) 10 20 60 120
How quickly can RevCast update?
96% of 10sec intervals 99.999% of 2min intervals
0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 0.01 0.1 1 10 100 CDF Fraction of interval required Interval (s) 10 20 60 120
Worst-case scenario
0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 0.1 1 10 100 CDF Fraction of interval required Interval (10s) Pre-heartbleed Post-heartbleed
Worst-case scenario
70% of time, up-to-date within 10 seconds
0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 0.1 1 10 100 CDF Fraction of interval required Interval (10s) Pre-heartbleed Post-heartbleed
Worst-case scenario
70% of time, up-to-date within 10 seconds
0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 0.1 1 10 100 CDF Fraction of interval required Interval (10s) Pre-heartbleed Post-heartbleed
The most extreme takes 15.5 minutes
Why does RevCast work?
In a small window, there are usually few revocations
0.00 0.20 0.40 0.60 0.80 1.00 1 10 100 1000 CDF Revocations Per Interval Interval (s) 20 120
Why does RevCast work?
In a small window, there are usually few revocations
0.00 0.20 0.40 0.60 0.80 1.00 1 10 100 1000 CDF Revocations Per Interval Interval (s) 20 120
Why does RevCast work?
Different CAs rarely revoke within the same window In a small window, there are usually few revocations
0.00 0.20 0.40 0.60 0.80 1.00 1 10 100 CDF CAs Revoking Per Interval Interval (s) 20 120
Why does RevCast work?
Different CAs rarely revoke within the same window In a small window, there are usually few revocations
0.00 0.20 0.40 0.60 0.80 1.00 1 10 100 CDF CAs Revoking Per Interval Interval (s) 20 120
Receivers:
Robustness:
*receivers not antennas
It is possible to design a revocation system that provides timelines, privacy, and is low cost. Broadcasting revocations is a novel application of multi-signatures.
Practical in today’s Internet, and necessary in tomorrow’s.