modern keysigninghow to keysign: - verify fingerprint - verify identity - obtain authentic copy of...

51
Modern Keysigning

Upload: others

Post on 15-Jul-2020

5 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Modern KeysigningHow to Keysign: - Verify Fingerprint - Verify Identity - Obtain authentic copy of key - many traps to be avoided - Sign and send key - currently needs MTA

Modern Keysigning

Page 2: Modern KeysigningHow to Keysign: - Verify Fingerprint - Verify Identity - Obtain authentic copy of key - many traps to be avoided - Sign and send key - currently needs MTA

How to Keysign:

- Verify Fingerprint - Verify Identity - Obtain authentic copy of key - many traps to be avoided - Sign and send key - currently needs MTA

Page 3: Modern KeysigningHow to Keysign: - Verify Fingerprint - Verify Identity - Obtain authentic copy of key - many traps to be avoided - Sign and send key - currently needs MTA

- O(n) - O(n²) This is a typical keysigning protocol It is hard to set up

Page 4: Modern KeysigningHow to Keysign: - Verify Fingerprint - Verify Identity - Obtain authentic copy of key - many traps to be avoided - Sign and send key - currently needs MTA

@FOSDEM 2011

Page 5: Modern KeysigningHow to Keysign: - Verify Fingerprint - Verify Identity - Obtain authentic copy of key - many traps to be avoided - Sign and send key - currently needs MTA

242 registered participants

Page 6: Modern KeysigningHow to Keysign: - Verify Fingerprint - Verify Identity - Obtain authentic copy of key - many traps to be avoided - Sign and send key - currently needs MTA

Keysigning "parties" suck

Page 7: Modern KeysigningHow to Keysign: - Verify Fingerprint - Verify Identity - Obtain authentic copy of key - many traps to be avoided - Sign and send key - currently needs MTA

A party without beeronly to obtain fingerprints

Page 8: Modern KeysigningHow to Keysign: - Verify Fingerprint - Verify Identity - Obtain authentic copy of key - many traps to be avoided - Sign and send key - currently needs MTA

Keysigning "Parties" are not fun people miss them They don't print anything Single point of failure

Page 9: Modern KeysigningHow to Keysign: - Verify Fingerprint - Verify Identity - Obtain authentic copy of key - many traps to be avoided - Sign and send key - currently needs MTA

Base2

0110000100001100101100100101001000110111101100110111000011101001111010110010000100001000111010001001110011101110000110110110101100000101100110110101100110001110

Page 10: Modern KeysigningHow to Keysign: - Verify Fingerprint - Verify Identity - Obtain authentic copy of key - many traps to be avoided - Sign and send key - currently needs MTA

Pros: Very accurate, hard to misread Cons: Very long

Page 11: Modern KeysigningHow to Keysign: - Verify Fingerprint - Verify Identity - Obtain authentic copy of key - many traps to be avoided - Sign and send key - currently needs MTA
Page 12: Modern KeysigningHow to Keysign: - Verify Fingerprint - Verify Identity - Obtain authentic copy of key - many traps to be avoided - Sign and send key - currently needs MTA

Base16

610CB25237B370E9EB2108E89CEE1B6B059B598E

Page 13: Modern KeysigningHow to Keysign: - Verify Fingerprint - Verify Identity - Obtain authentic copy of key - many traps to be avoided - Sign and send key - currently needs MTA

Pros: looks familiar to nerds Cons: Hard to distinguish characters

Page 14: Modern KeysigningHow to Keysign: - Verify Fingerprint - Verify Identity - Obtain authentic copy of key - many traps to be avoided - Sign and send key - currently needs MTA
Page 15: Modern KeysigningHow to Keysign: - Verify Fingerprint - Verify Identity - Obtain authentic copy of key - many traps to be avoided - Sign and send key - currently needs MTA

Verifying fingerprints is hard

Page 16: Modern KeysigningHow to Keysign: - Verify Fingerprint - Verify Identity - Obtain authentic copy of key - many traps to be avoided - Sign and send key - currently needs MTA

Base64

YQyyUjezcOnrIQjonO4bawWbWY4=

Page 17: Modern KeysigningHow to Keysign: - Verify Fingerprint - Verify Identity - Obtain authentic copy of key - many traps to be avoided - Sign and send key - currently needs MTA

Pros: Shorter than other things Cons: Probably too big of an alphabet

Page 18: Modern KeysigningHow to Keysign: - Verify Fingerprint - Verify Identity - Obtain authentic copy of key - many traps to be avoided - Sign and send key - currently needs MTA

Base58Check

9r9knGannSDvoJyUoGbgyWDUeWGdx7rUC

Page 19: Modern KeysigningHow to Keysign: - Verify Fingerprint - Verify Identity - Obtain authentic copy of key - many traps to be avoided - Sign and send key - currently needs MTA

Keyart

+-------------------+| . || : ? ||. . ? i ||.. . . ^ : ||^ ^ ^ ^ . || l ^ . ^ S ||. ( ^ . || E ^ . ||... || ^^ ||.^. |+-------------------+

Page 20: Modern KeysigningHow to Keysign: - Verify Fingerprint - Verify Identity - Obtain authentic copy of key - many traps to be avoided - Sign and send key - currently needs MTA

Pros: Probably simpler to compare Cons: Easy to have collisions

Page 21: Modern KeysigningHow to Keysign: - Verify Fingerprint - Verify Identity - Obtain authentic copy of key - many traps to be avoided - Sign and send key - currently needs MTA

Eventually, you've verified the fingerprintand the identity.You try to obtain an authentic copy of the key.

Page 22: Modern KeysigningHow to Keysign: - Verify Fingerprint - Verify Identity - Obtain authentic copy of key - many traps to be avoided - Sign and send key - currently needs MTA

short key idsevil32.com

Page 23: Modern KeysigningHow to Keysign: - Verify Fingerprint - Verify Identity - Obtain authentic copy of key - many traps to be avoided - Sign and send key - currently needs MTA

Of course you don't use short key ids. Do you..?

Page 24: Modern KeysigningHow to Keysign: - Verify Fingerprint - Verify Identity - Obtain authentic copy of key - many traps to be avoided - Sign and send key - currently needs MTA

Nobody uses short keyids.Except Debian

Page 25: Modern KeysigningHow to Keysign: - Verify Fingerprint - Verify Identity - Obtain authentic copy of key - many traps to be avoided - Sign and send key - currently needs MTA

I don't always use short key ids

Page 26: Modern KeysigningHow to Keysign: - Verify Fingerprint - Verify Identity - Obtain authentic copy of key - many traps to be avoided - Sign and send key - currently needs MTA

And Ubuntu

Page 27: Modern KeysigningHow to Keysign: - Verify Fingerprint - Verify Identity - Obtain authentic copy of key - many traps to be avoided - Sign and send key - currently needs MTA

And pretty much everybody else

Page 28: Modern KeysigningHow to Keysign: - Verify Fingerprint - Verify Identity - Obtain authentic copy of key - many traps to be avoided - Sign and send key - currently needs MTA

on the Internet

Page 29: Modern KeysigningHow to Keysign: - Verify Fingerprint - Verify Identity - Obtain authentic copy of key - many traps to be avoided - Sign and send key - currently needs MTA

issue1579: GnuPG ignores the fingerprint

Also: v3 keys still accepted

Page 30: Modern KeysigningHow to Keysign: - Verify Fingerprint - Verify Identity - Obtain authentic copy of key - many traps to be avoided - Sign and send key - currently needs MTA

So you use the fingerprint instead of short key ids however, currently shipped gnupg version do not check for the fingerprint of the key to be imported

Page 31: Modern KeysigningHow to Keysign: - Verify Fingerprint - Verify Identity - Obtain authentic copy of key - many traps to be avoided - Sign and send key - currently needs MTA

Let's not use Keyservers

- leaks data - trivial MITM attacks (issue1579) - packet forgery - OCaml... srsly.

Page 32: Modern KeysigningHow to Keysign: - Verify Fingerprint - Verify Identity - Obtain authentic copy of key - many traps to be avoided - Sign and send key - currently needs MTA

http://bugs.gnupg.org/gnupg/issue1579

Page 33: Modern KeysigningHow to Keysign: - Verify Fingerprint - Verify Identity - Obtain authentic copy of key - many traps to be avoided - Sign and send key - currently needs MTA
Page 34: Modern KeysigningHow to Keysign: - Verify Fingerprint - Verify Identity - Obtain authentic copy of key - many traps to be avoided - Sign and send key - currently needs MTA

Let's define our target users. It's my mom!

Page 35: Modern KeysigningHow to Keysign: - Verify Fingerprint - Verify Identity - Obtain authentic copy of key - many traps to be avoided - Sign and send key - currently needs MTA

The Gold Standard:

Page 36: Modern KeysigningHow to Keysign: - Verify Fingerprint - Verify Identity - Obtain authentic copy of key - many traps to be avoided - Sign and send key - currently needs MTA

CAFF... PERL... srsly..?

Page 37: Modern KeysigningHow to Keysign: - Verify Fingerprint - Verify Identity - Obtain authentic copy of key - many traps to be avoided - Sign and send key - currently needs MTA

That's the pinnacle, the gold-standard of contemporary keysigning

Page 38: Modern KeysigningHow to Keysign: - Verify Fingerprint - Verify Identity - Obtain authentic copy of key - many traps to be avoided - Sign and send key - currently needs MTA
Page 39: Modern KeysigningHow to Keysign: - Verify Fingerprint - Verify Identity - Obtain authentic copy of key - many traps to be avoided - Sign and send key - currently needs MTA
Page 40: Modern KeysigningHow to Keysign: - Verify Fingerprint - Verify Identity - Obtain authentic copy of key - many traps to be avoided - Sign and send key - currently needs MTA

Fast forward 20 years

Page 41: Modern KeysigningHow to Keysign: - Verify Fingerprint - Verify Identity - Obtain authentic copy of key - many traps to be avoided - Sign and send key - currently needs MTA

We see the fire burning We need to do something about the situation

Page 42: Modern KeysigningHow to Keysign: - Verify Fingerprint - Verify Identity - Obtain authentic copy of key - many traps to be avoided - Sign and send key - currently needs MTA

Two decades later:

- mobile computing - WiFi - QRCodes

Page 43: Modern KeysigningHow to Keysign: - Verify Fingerprint - Verify Identity - Obtain authentic copy of key - many traps to be avoided - Sign and send key - currently needs MTA

Yet, our machines cannot talk to each other

Page 44: Modern KeysigningHow to Keysign: - Verify Fingerprint - Verify Identity - Obtain authentic copy of key - many traps to be avoided - Sign and send key - currently needs MTA

Introducing: GNOME Keysign

Page 45: Modern KeysigningHow to Keysign: - Verify Fingerprint - Verify Identity - Obtain authentic copy of key - many traps to be avoided - Sign and send key - currently needs MTA

Leveraging 2000s technologies

Page 46: Modern KeysigningHow to Keysign: - Verify Fingerprint - Verify Identity - Obtain authentic copy of key - many traps to be avoided - Sign and send key - currently needs MTA

Demo

Page 47: Modern KeysigningHow to Keysign: - Verify Fingerprint - Verify Identity - Obtain authentic copy of key - many traps to be avoided - Sign and send key - currently needs MTA
Page 48: Modern KeysigningHow to Keysign: - Verify Fingerprint - Verify Identity - Obtain authentic copy of key - many traps to be avoided - Sign and send key - currently needs MTA

GNOME Keysign

- Directly transfers keys - Sends encrypted email - No MTA needed

Page 49: Modern KeysigningHow to Keysign: - Verify Fingerprint - Verify Identity - Obtain authentic copy of key - many traps to be avoided - Sign and send key - currently needs MTA

https://wiki.gnome.org/GnomeKeysign

Page 50: Modern KeysigningHow to Keysign: - Verify Fingerprint - Verify Identity - Obtain authentic copy of key - many traps to be avoided - Sign and send key - currently needs MTA

Still waiting for patches

Page 51: Modern KeysigningHow to Keysign: - Verify Fingerprint - Verify Identity - Obtain authentic copy of key - many traps to be avoided - Sign and send key - currently needs MTA

Thank you