Lecture 6 Page 1 CS 236 Online Certificates An increasingly popular form of authentication Generally...

35
Lecture 6 Page 1 CS 236 Online Certificates • An increasingly popular form of authentication • Generally used with public key cryptography • A signed electronic document proving you are who you claim to be • Often used to help distribute other keys

Transcript of Lecture 6 Page 1 CS 236 Online Certificates An increasingly popular form of authentication Generally...

Page 1: Lecture 6 Page 1 CS 236 Online Certificates An increasingly popular form of authentication Generally used with public key cryptography A signed electronic.

Lecture 6Page 1CS 236 Online

Certificates

• An increasingly popular form of authentication

• Generally used with public key cryptography

• A signed electronic document proving you are who you claim to be

• Often used to help distribute other keys

Page 2: Lecture 6 Page 1 CS 236 Online Certificates An increasingly popular form of authentication Generally used with public key cryptography A signed electronic.

Lecture 6Page 2CS 236 Online

Public Key Certificates

• The most common kind of certificate

• Addresses the biggest challenge in widespread use of public keys

– How do I know whose key it is?

• Essentially, a copy of your public key signed by a trusted authority

• Presentation of the certificate alone serves as authentication of your public key

Page 3: Lecture 6 Page 1 CS 236 Online Certificates An increasingly popular form of authentication Generally used with public key cryptography A signed electronic.

Lecture 6Page 3CS 236 Online

Implementation of Public Key Certificates

• Set up a universally trusted authority

• Every user presents his public key to the authority

• The authority returns a certificate

– Containing the user’s public key signed by the authority’s private key

• In essence, a special type of key server

Page 4: Lecture 6 Page 1 CS 236 Online Certificates An increasingly popular form of authentication Generally used with public key cryptography A signed electronic.

Lecture 6Page 4CS 236 Online

Checking a Certificate

• Every user keeps a copy of the authority’s public key

• When a new user wants to talk to you, he gives you his certificate

• Decrypt the certificate using the authority’s public key

• You now have an authenticated public key for the new user

• Authority need not be checked on-line

Page 5: Lecture 6 Page 1 CS 236 Online Certificates An increasingly popular form of authentication Generally used with public key cryptography A signed electronic.

Lecture 6Page 5CS 236 Online

Scaling Issues of Certificates

• If there are billions of Internet users needing certificates, can one authority serve them all?

• Probably not• So you need multiple authorities• Does that mean everyone needs to

store the public keys of all authorities?

Page 6: Lecture 6 Page 1 CS 236 Online Certificates An increasingly popular form of authentication Generally used with public key cryptography A signed electronic.

Lecture 6Page 6CS 236 Online

Certification Hierarchies

• Arrange certification authorities hierarchically

• The single authority at the top produces certificates for the next layer down

• And so on, recursively

Page 7: Lecture 6 Page 1 CS 236 Online Certificates An increasingly popular form of authentication Generally used with public key cryptography A signed electronic.

Lecture 6Page 7CS 236 Online

Using Certificates From Hierarchies

• I get a new certificate

• I don’t know the signing authority

• But the certificate also contains that authority’s certificate

• Perhaps I know the authority who signed this authority’s certificate

Page 8: Lecture 6 Page 1 CS 236 Online Certificates An increasingly popular form of authentication Generally used with public key cryptography A signed electronic.

Lecture 6Page 8CS 236 Online

Extracting the Authentication• Using the public key of the higher level

authority, – Extract the public key of the signing

authority from the certificate• Now I know his public key, and it’s

authenticated• I can now extract the user’s key and

authenticate it

Page 9: Lecture 6 Page 1 CS 236 Online Certificates An increasingly popular form of authentication Generally used with public key cryptography A signed electronic.

Lecture 6Page 9CS 236 Online

A Example

Give me a certificate saying that I’m

Should Alice believe that he’s really ?

Alice has never heard of But she has heard of

So she uses to check

How can prove who he is?

Alice gets a message with a certificate

Then she uses to check

Page 10: Lecture 6 Page 1 CS 236 Online Certificates An increasingly popular form of authentication Generally used with public key cryptography A signed electronic.

Lecture 6Page 10CS 236 Online

Certificates and Trust

• Ultimately, the point of a certificate is to determine if something is trusted

– Do I trust the request to perform some financial transaction?

• So, Trustysign.com signed this certificate

• How much confidence should I have in the certificate?

Page 11: Lecture 6 Page 1 CS 236 Online Certificates An increasingly popular form of authentication Generally used with public key cryptography A signed electronic.

Lecture 6Page 11CS 236 Online

Potential Problems in the Certification Process

• What measures did Trustysign.com use before issuing the certificate?

• Is the certificate itself still valid?• Is Trustysign.com’s

signature/certificate still valid?• Who is trustworthy enough to be at the

top of the hierarchy?

Page 12: Lecture 6 Page 1 CS 236 Online Certificates An increasingly popular form of authentication Generally used with public key cryptography A signed electronic.

Lecture 6Page 12CS 236 Online

Trustworthiness of Certificate Authority

• How did Trustysign.com issue the certificate?

• Did it get an in-person sworn affidavit from the certificate’s owner?

• Did it phone up the owner to verify it was him?

• Did it just accept the word of the requestor that he was who he claimed to be?

Page 13: Lecture 6 Page 1 CS 236 Online Certificates An increasingly popular form of authentication Generally used with public key cryptography A signed electronic.

Lecture 6Page 13CS 236 Online

What Does a Certificate Really Tell Me?

• That the certificate authority (CA) tied a public/private key pair to identification information

• Generally doesn’t tell me why the CA thought the binding was proper

• I may have different standards than that CA

Page 14: Lecture 6 Page 1 CS 236 Online Certificates An increasingly popular form of authentication Generally used with public key cryptography A signed electronic.

Lecture 6Page 14CS 236 Online

Showing a Problem Using the Example

Alice likes how verifies identityBut is she equally happy with how verifies identity?

Does she even know how verifies identity?

What if uses ‘s lax policies to pretend to be

?

Page 15: Lecture 6 Page 1 CS 236 Online Certificates An increasingly popular form of authentication Generally used with public key cryptography A signed electronic.

Lecture 6Page 15CS 236 Online

Another Big Problem

• Things change

• One result of change is that what used to be safe or trusted isn’t any more

• If there is trust-related information out in the network, what will happen when things change?

Page 16: Lecture 6 Page 1 CS 236 Online Certificates An increasingly popular form of authentication Generally used with public key cryptography A signed electronic.

Lecture 6Page 16CS 236 Online

Revocation

• A general problem for keys, certificates, access control lists, etc.

• How does the system revoke something related to trust?

• In a network environment

• Safely, efficiently, etc.

Page 17: Lecture 6 Page 1 CS 236 Online Certificates An increasingly popular form of authentication Generally used with public key cryptography A signed electronic.

Lecture 6Page 17CS 236 Online

Revisiting Our Example

Someone discovers that has obtained a false certificate for

How does Alice make sure that she’s not accepting ‘s false certificate?

Page 18: Lecture 6 Page 1 CS 236 Online Certificates An increasingly popular form of authentication Generally used with public key cryptography A signed electronic.

Lecture 6Page 18CS 236 Online

Realities of Certificates

• Most OSes come with set of “pre-trusted” certificate authorities

• System automatically processes (i.e., trusts) certificates they sign

• Usually no hierarchy

• If not signed by one of these, present it to the user

– Who always accepts it . . .

Page 19: Lecture 6 Page 1 CS 236 Online Certificates An increasingly popular form of authentication Generally used with public key cryptography A signed electronic.

Lecture 6Page 19CS 236 Online

An Example

• Firefox web browser

• Makes extensive use of certificates to validate entities

– As do all web browsers

• Comes preconfigured with several certificate authorities

– Hundreds of them

Page 20: Lecture 6 Page 1 CS 236 Online Certificates An increasingly popular form of authentication Generally used with public key cryptography A signed electronic.

Lecture 6Page 20CS 236 Online

Firefox Preconfigured Certificate Authorities

• Some you’d expect:

– Microsoft, RSA Security, Verisign, etc.

• Some you’ve probably never heard of:

• Unizeto Sp. z.o.o., Netlock Halozatbiztonsagi Kft.,ABA.ECOM

Page 21: Lecture 6 Page 1 CS 236 Online Certificates An increasingly popular form of authentication Generally used with public key cryptography A signed electronic.

Lecture 6Page 21CS 236 Online

The Upshot• If Netlock Halozatbiztonsagi Kft. says

someone’s OK, I trust them– I’ve never heard of Netlock

Halozatbiztonsagi Kft.– I have no reason to trust Netlock

Halozatbiztonsagi Kft.– But my system’s security depends on

them

Page 22: Lecture 6 Page 1 CS 236 Online Certificates An increasingly popular form of authentication Generally used with public key cryptography A signed electronic.

Lecture 6Page 22CS 236 Online

The Problem in the Real World• In 2011, a Dutch authority (DigiNotar) was

compromised• Attackers generated lots of bogus certificates

signed by DigiNotar– “Properly” signed by that authority– For popular web sites

• Until compromise discovered, everyone trusted them

Page 23: Lecture 6 Page 1 CS 236 Online Certificates An increasingly popular form of authentication Generally used with public key cryptography A signed electronic.

Lecture 6Page 23CS 236 Online

Effects of DigiNotar Compromise

• Attackers could transparently redirect users to fake sites– What looked like Twitter was actually

attackers’ copycat site• Allowed attackers to eavesdrop without any

hint to users• Apparently used by authorities in Iran to

eavesdrop on dissidents

Page 24: Lecture 6 Page 1 CS 236 Online Certificates An increasingly popular form of authentication Generally used with public key cryptography A signed electronic.

Lecture 6Page 24CS 236 Online

How Did the Compromise Occur?

• DigiNotar had crappy security

– Out-of date antivirus software

– Poor software patching

– Weak passwords

– No auditing of logs

– Poorly designed local network

• A company providing security services paid little attention to security

Page 25: Lecture 6 Page 1 CS 236 Online Certificates An increasingly popular form of authentication Generally used with public key cryptography A signed electronic.

Lecture 6Page 25CS 236 Online

Another Practicality

• Certificates have expiration dates

– Important for security

– Otherwise, long-gone entities would still be trusted

• But perfectly good certificates also expire

– Then what?

Page 26: Lecture 6 Page 1 CS 236 Online Certificates An increasingly popular form of authentication Generally used with public key cryptography A signed electronic.

Lecture 6Page 26CS 236 Online

The Reality of Expired Certificates

• When I hear my server’s certificate has expired, what do I do?

– I trust it anyway

– After all, it’s my server

• But pretty much everyone does that

– For pretty much every certificate

• Not so secure

Page 27: Lecture 6 Page 1 CS 236 Online Certificates An increasingly popular form of authentication Generally used with public key cryptography A signed electronic.

Lecture 6Page 27CS 236 Online

The Core Problem With Certificates

• Anyone can create some certificate

• Typical users generally have no good basis for determining whose certificates to trust

– They don’t even really understand what they mean

• Therefore, they trust almost any certificate

Page 28: Lecture 6 Page 1 CS 236 Online Certificates An increasingly popular form of authentication Generally used with public key cryptography A signed electronic.

Lecture 6Page 28CS 236 Online

Should We Worry About Certificate Validity?

• Starting to be a problem– Stuxnet is one example– Compromise of DigiNotar and Adobe also– Increasing incidence of improper issuance, like

Verisign handing out Microsoft certificates• Not the way most attackers break in today• With all their problems, still not the weakest link

– But now being exploited, mostly by most sophisticated adversaries

Page 29: Lecture 6 Page 1 CS 236 Online Certificates An increasingly popular form of authentication Generally used with public key cryptography A signed electronic.

Lecture 6Page 29CS 236 Online

The Web of Trust Model

• Public keys are still passed around signed by others

• But your trust in others is based on your personal trust of them– Not on a formal certification hierarchy– “I work in the office next to Bob, so I trust

Bob’s certifications”– Attempt to establish understandable basis for

trust in certificates

Page 30: Lecture 6 Page 1 CS 236 Online Certificates An increasingly popular form of authentication Generally used with public key cryptography A signed electronic.

Lecture 6Page 30CS 236 Online

Certificates in the Web of Trust

• Any user can sign any other user’s public key

• When a new user presents me his public key, he gives me one or more certificates signed by others

• If I trust any of those others, I trust the new user’s public key

Page 31: Lecture 6 Page 1 CS 236 Online Certificates An increasingly popular form of authentication Generally used with public key cryptography A signed electronic.

Lecture 6Page 31CS 236 Online

Limitations on the Web of Trust

• The web tends to grow– “I trust Alice, who trusts Bob, who trusts

Carol, who trusts Dave, . . ., who trusts Lisa, who trusts Mallory”

– Just because Lisa trusts Mallory doesn’t mean I should

• Example of transitive trust problems• Working system needs concept of degrees of

trust

Page 32: Lecture 6 Page 1 CS 236 Online Certificates An increasingly popular form of authentication Generally used with public key cryptography A signed electronic.

Lecture 6Page 32CS 236 Online

Advantages and Disadvantages of Web of Trust Model

+ Scales very well+ No central authority+ Very flexible– May be hard to assign degrees of trust– Revocation may be difficult– May be hard to tell who you will and

won’t trust

Page 33: Lecture 6 Page 1 CS 236 Online Certificates An increasingly popular form of authentication Generally used with public key cryptography A signed electronic.

Lecture 6Page 33CS 236 Online

More General Use of Web of Trust

• Web of trust model usable for things other than certificates

– Social networking sites

– Peer systems

– Security alert systems

• Really, any distributed system where trust plays a role

Page 34: Lecture 6 Page 1 CS 236 Online Certificates An increasingly popular form of authentication Generally used with public key cryptography A signed electronic.

Lecture 6Page 34CS 236 Online

When Is Web of Trust Good?• When it links people who know each other

– Or have other reasons to trust each other

• When use matches level of trust

– If casual trust, limited risk

– If high risk, great trust required

• When use allows adjustment based on observable behavior

– Penalize those who don’t behave well

Page 35: Lecture 6 Page 1 CS 236 Online Certificates An increasingly popular form of authentication Generally used with public key cryptography A signed electronic.

Lecture 6Page 35CS 236 Online

What Can Go Wrong?

• Generally, model doesn’t provide any built-in costs for misplaced trust

– Other than downgrading it within system

• Only penalties for a bad recommendation are social

• Dangerous if new identities easy to fabricate

– Bad actor can keep coming back under new identities