the problem with passwords on the web and what to do about it

82
François Marier – @fmarier The problem with passwords on the web and what to do about it

Upload: francois-marier

Post on 08-May-2015

190 views

Category:

Technology


1 download

DESCRIPTION

Handling user passwords safely is hard, but replacing passwords on the web in a reasonable way is even harder. Really, this should have been in the browser all along. This is where Persona comes in.

TRANSCRIPT

Page 1: The problem with passwords on the web and what to do about it

François Marier – @fmarier

The problem with passwords on the weband what to do about it

Page 2: The problem with passwords on the web and what to do about it

passwords

Page 3: The problem with passwords on the web and what to do about it

problem #1:

passwords are hard to secure

Page 4: The problem with passwords on the web and what to do about it
Page 5: The problem with passwords on the web and what to do about it
Page 6: The problem with passwords on the web and what to do about it
Page 7: The problem with passwords on the web and what to do about it
Page 8: The problem with passwords on the web and what to do about it
Page 9: The problem with passwords on the web and what to do about it
Page 10: The problem with passwords on the web and what to do about it
Page 11: The problem with passwords on the web and what to do about it
Page 12: The problem with passwords on the web and what to do about it
Page 13: The problem with passwords on the web and what to do about it
Page 14: The problem with passwords on the web and what to do about it

bcrypt / scrypt / pbkdf2

per-user salt

site secret

password & lockout policies

secure recovery

Page 15: The problem with passwords on the web and what to do about it

bcrypt / scrypt / pbkdf2

per-user salt

site secret

password & lockout policies

secure recovery

Page 16: The problem with passwords on the web and what to do about it

bcrypt / scrypt / pbkdf2

per-user salt

site secret

password & lockout policies

secure recovery

Page 17: The problem with passwords on the web and what to do about it

bcrypt / scrypt / pbkdf2

per-user salt

site secret

password & lockout policies

secure recovery

Page 18: The problem with passwords on the web and what to do about it

bcrypt / scrypt / pbkdf2

per-user salt

site secret

password & lockout policies

secure recovery

Page 19: The problem with passwords on the web and what to do about it

bcrypt / scrypt / pbkdf2

per-user salt

site secret

password & lockout policies

secure recovery

20132013

passwordpassword

guidelines

guidelines

Page 20: The problem with passwords on the web and what to do about it

passwords are hard to secure

they are a liability

Page 21: The problem with passwords on the web and what to do about it

ALTER TABLE userDROP COLUMN password;

Page 22: The problem with passwords on the web and what to do about it

problem #2:

passwords are hard to remember

Page 23: The problem with passwords on the web and what to do about it
Page 24: The problem with passwords on the web and what to do about it
Page 25: The problem with passwords on the web and what to do about it

pick an easy password

Page 26: The problem with passwords on the web and what to do about it

pick an easy password

use it everywhere

Page 27: The problem with passwords on the web and what to do about it

passwords are hard to remember

they need to be reset

Page 28: The problem with passwords on the web and what to do about it
Page 29: The problem with passwords on the web and what to do about it

controlemail

account

controlall

accounts=

Page 30: The problem with passwords on the web and what to do about it

social login

Page 31: The problem with passwords on the web and what to do about it

“People want a littledating before marriage.”

Eric Vishria – Rockmelt

Page 32: The problem with passwords on the web and what to do about it
Page 33: The problem with passwords on the web and what to do about it

decentralized

Page 34: The problem with passwords on the web and what to do about it

myid.com/u/francois

Page 35: The problem with passwords on the web and what to do about it
Page 36: The problem with passwords on the web and what to do about it
Page 37: The problem with passwords on the web and what to do about it

privacy®

Page 38: The problem with passwords on the web and what to do about it

existing login systemsare not good enough

Page 39: The problem with passwords on the web and what to do about it

ideal web-wide identity system

Page 40: The problem with passwords on the web and what to do about it

● decentralized● simple● cross-browser

ideal web-wide identity system

Page 41: The problem with passwords on the web and what to do about it

● decentralized● simple● cross-browser

ideal web-wide identity system

Page 42: The problem with passwords on the web and what to do about it

● decentralized● simple● cross-browser

ideal web-wide identity system

Page 43: The problem with passwords on the web and what to do about it

● decentralized● simple● cross-browser

Page 44: The problem with passwords on the web and what to do about it

how does it work?

Page 46: The problem with passwords on the web and what to do about it

demo #1:

http://crossword.thetimes.co.uk/

[email protected]

Page 47: The problem with passwords on the web and what to do about it

Persona is already adecentralized system

Page 48: The problem with passwords on the web and what to do about it

decentralization is the answer, but it's not

a product adoption strategy

Page 49: The problem with passwords on the web and what to do about it

we can't wait for all domainsto adopt Persona

Page 50: The problem with passwords on the web and what to do about it

we can't wait for all domainsto adopt Persona

solution: a temporarycentralized fallback

Page 51: The problem with passwords on the web and what to do about it

demo #2:

http://sloblog.io/

[email protected]

Page 52: The problem with passwords on the web and what to do about it

Persona already workswith all email domains

Page 53: The problem with passwords on the web and what to do about it

identity bridging

Page 54: The problem with passwords on the web and what to do about it

demo #3:

http://www.reasonwell.com/

[email protected]

Page 55: The problem with passwords on the web and what to do about it
Page 56: The problem with passwords on the web and what to do about it
Page 57: The problem with passwords on the web and what to do about it
Page 58: The problem with passwords on the web and what to do about it

Persona supportsall modern browsers

>= 8

Page 59: The problem with passwords on the web and what to do about it

Persona is decentralized,simple and cross-browser

Page 60: The problem with passwords on the web and what to do about it

it's simple for users, but is it also

simple for developers?

Page 61: The problem with passwords on the web and what to do about it

1. load javascript library

Page 62: The problem with passwords on the web and what to do about it

1. load javascript library

2. setup login & logout callbacks

Page 63: The problem with passwords on the web and what to do about it

1. load javascript library

2. setup login & logout callbacks

3. add login and logout buttons

Page 64: The problem with passwords on the web and what to do about it

1. load javascript library

2. setup login & logout callbacks

3. add login and logout buttons

4. verify proof of ownership

Page 65: The problem with passwords on the web and what to do about it

you can add support forPersona in four easy steps

Page 66: The problem with passwords on the web and what to do about it

one simple request

Page 67: The problem with passwords on the web and what to do about it
Page 68: The problem with passwords on the web and what to do about it

building a new site:default to Persona

Page 69: The problem with passwords on the web and what to do about it

working on an existing site/app:add support for Persona

Page 70: The problem with passwords on the web and what to do about it

Friday office hours

Page 71: The problem with passwords on the web and what to do about it

we needyour help

to eliminatesite-specificpasswords

Page 72: The problem with passwords on the web and what to do about it

To learn more about Persona:

https://login.persona.org/http://identity.mozilla.com/

https://developer.mozilla.org/docs/Persona/Why_Personahttps://developer.mozilla.org/docs/Persona/Quick_Setup

https://github.com/mozilla/browserid-cookbookhttps://developer.mozilla.org/docs/Persona/Libraries_and_plugins

http://123done.org/https://wiki.mozilla.org/Identity#Get_Involved

@fmarier http://fmarier.org

Page 73: The problem with passwords on the web and what to do about it

identity provider API

https://eyedee.me/.well-known/browserid:

{ "public-key": { "algorithm":"RS", "n":"8606...", "e":"65537" }, "authentication": "/browserid/sign_in.html", "provisioning": "/browserid/provision.html"}

Page 74: The problem with passwords on the web and what to do about it

https://eyedee.me/.well-known/browserid:

{ "public-key": { "algorithm":"RS", "n":"8606...", "e":"65537" }, "authentication": "/browserid/sign_in.html", "provisioning": "/browserid/provision.html"}

identity provider API

Page 75: The problem with passwords on the web and what to do about it

https://eyedee.me/.well-known/browserid:

{ "public-key": { "algorithm":"RS", "n":"8606...", "e":"65537" }, "authentication": "/browserid/sign_in.html", "provisioning": "/browserid/provision.html"}

identity provider API

Page 76: The problem with passwords on the web and what to do about it

https://eyedee.me/.well-known/browserid:

{ "public-key": { "algorithm":"RS", "n":"8606...", "e":"65537" }, "authentication": "/browserid/sign_in.html", "provisioning": "/browserid/provision.html"}

identity provider API

Page 77: The problem with passwords on the web and what to do about it

https://eyedee.me/.well-known/browserid:

{ "public-key": { "algorithm":"RS", "n":"8606...", "e":"65537" }, "authentication": "/browserid/sign_in.html", "provisioning": "/browserid/provision.html"}

identity provider API

Page 78: The problem with passwords on the web and what to do about it

identity provider API

1. check for your /.well-known/browserid

2. try the provisioning endpoint

3. show the authentication page

4. call the provisioning endpoint again

Page 79: The problem with passwords on the web and what to do about it

identity provider API

1. check for your /.well-known/browserid

2. try the provisioning endpoint

3. show the authentication page

4. call the provisioning endpoint again

Page 80: The problem with passwords on the web and what to do about it

identity provider API

1. check for your /.well-known/browserid

2. try the provisioning endpoint

3. show the authentication page

4. call the provisioning endpoint again

Page 81: The problem with passwords on the web and what to do about it

identity provider API

1. check for your /.well-known/browserid

2. try the provisioning endpoint

3. show the authentication page

4. call the provisioning endpoint again

Page 82: The problem with passwords on the web and what to do about it

© 2013 François Marier <[email protected]>This work is licensed under aCreative Commons Attribution-ShareAlike 3.0 New Zealand License.

Hotel doorman: https://secure.flickr.com/photos/wildlife_encounters/8024166802/

Top 500 passwords: http://xato.net/passwords/more-top-worst-passwords/

Parchment: https://secure.flickr.com/photos/27613359@N03/6750396225/

Uncle Sam: https://secure.flickr.com/photos/donkeyhotey/5666065982/

Restaurant dinner: https://secure.flickr.com/photos/yourdon/3977084094/

Stop sign: https://secure.flickr.com/photos/artbystevejohnson/6673406227/

Photo credits: