Hex Artifact Content
Not logged in

Artifact ba1ff1982ac9eda4085114d2357b393055c6cda2:

Wiki page [keyrevokation] by bernd 2014-04-27 19:31:03.
0000: 44 20 32 30 31 34 2d 30 34 2d 32 37 54 31 39 3a  D 2014-04-27T19:
0010: 33 31 3a 30 33 2e 39 37 36 0a 4c 20 6b 65 79 72  31:03.976.L keyr
0020: 65 76 6f 6b 61 74 69 6f 6e 0a 50 20 61 39 36 64  evokation.P a96d
0030: 34 64 38 37 63 34 62 66 66 62 63 66 61 62 31 35  4d87c4bffbcfab15
0040: 39 36 35 62 31 37 37 32 62 39 61 64 33 30 63 33  965b1772b9ad30c3
0050: 33 66 32 34 0a 55 20 62 65 72 6e 64 0a 57 20 32  3f24.U bernd.W 2
0060: 34 33 30 0a 3c 68 31 3e 4b 65 79 20 52 65 76 6f  430.<h1>Key Revo
0070: 63 61 74 69 6f 6e 3c 2f 68 31 3e 0a 0a 3c 70 3e  cation</h1>..<p>
0080: 4b 65 79 20 72 65 76 6f 63 61 74 69 6f 6e 20 75  Key revocation u
0090: 73 75 61 6c 6c 79 20 69 73 20 64 6f 6e 65 20 77  sually is done w
00a0: 69 74 68 20 61 20 73 69 67 6e 61 74 75 72 65 20  ith a signature 
00b0: 6f 66 20 74 68 65 20 6c 6f 73 74 20 6b 65 79 2c  of the lost key,
00c0: 20 69 2e 65 2e 20 62 6f 74 68 0a 74 68 65 20 6f   i.e. both.the o
00d0: 77 6e 65 72 20 61 6e 64 20 74 68 65 20 61 64 76  wner and the adv
00e0: 65 72 73 61 72 79 20 63 61 6e 20 72 65 76 6f 6b  ersary can revok
00f0: 65 20 61 20 63 6f 6d 70 72 6f 6d 69 73 65 64 20  e a compromised 
0100: 6b 65 79 2e 20 26 6e 62 73 70 3b 48 6f 77 65 76  key. &nbsp;Howev
0110: 65 72 2c 20 74 68 65 0a 69 6d 70 6f 72 74 61 6e  er, the.importan
0120: 74 20 66 75 6e 63 74 69 6f 6e 20 69 6e 20 63 61  t function in ca
0130: 73 65 20 6f 66 20 61 20 72 65 76 6f 63 61 74 69  se of a revocati
0140: 6f 6e 20 69 73 20 64 65 63 6c 61 72 69 6e 67 20  on is declaring 
0150: 74 68 65 20 73 75 63 63 65 73 73 6f 72 20 6b 65  the successor ke
0160: 79 2c 0a 77 68 69 63 68 20 72 65 65 73 74 61 62  y,.which reestab
0170: 6c 69 73 68 73 20 74 72 75 73 74 2e 20 54 6f 20  lishs trust. To 
0180: 64 6f 20 74 68 61 74 2c 20 79 6f 75 20 6d 75 73  do that, you mus
0190: 74 20 61 63 74 75 61 6c 6c 79 20 70 72 6f 6f 66  t actually proof
01a0: 20 74 68 61 74 20 79 6f 75 20 61 72 65 20 74 68   that you are th
01b0: 65 0a 6c 65 67 69 74 69 6d 61 74 65 20 6f 77 6e  e.legitimate own
01c0: 65 72 20 6f 66 20 74 68 65 20 65 78 70 6f 73 65  er of the expose
01d0: 64 20 73 65 63 72 65 74 20 6b 65 79 2c 20 73 6f  d secret key, so
01e0: 20 68 6f 77 20 64 6f 20 79 6f 75 20 64 6f 20 74   how do you do t
01f0: 68 61 74 3f 20 26 6e 62 73 70 3b 41 66 74 65 72  hat? &nbsp;After
0200: 0a 61 6c 6c 2c 20 74 68 65 20 61 64 76 65 72 73  .all, the advers
0210: 61 72 79 20 68 61 73 20 73 74 6f 6c 65 6e 20 69  ary has stolen i
0220: 74 21 3c 62 72 3e 0a 3c 2f 70 3e 0a 0a 3c 70 3e  t!<br>.</p>..<p>
0230: 54 68 65 72 65 66 6f 72 65 2c 20 74 68 65 20 72  Therefore, the r
0240: 65 71 75 69 72 65 6d 65 6e 74 73 20 61 72 65 20  equirements are 
0250: 61 73 20 66 6f 6c 6c 6f 77 73 3a 3c 2f 70 3e 0a  as follows:</p>.
0260: 0a 3c 70 3e 3c 2f 70 3e 0a 3c 75 6c 3e 0a 3c 6c  .<p></p>.<ul>.<l
0270: 69 3e 4f 6e 6c 79 20 74 68 65 20 63 72 65 61 74  i>Only the creat
0280: 6f 72 20 6f 66 20 74 68 65 20 73 65 63 72 65 74  or of the secret
0290: 20 6b 65 79 20 63 61 6e 20 72 65 76 6f 6b 65 20   key can revoke 
02a0: 69 74 3c 2f 6c 69 3e 0a 3c 6c 69 3e 41 20 74 68  it</li>.<li>A th
02b0: 69 65 66 20 6f 66 20 74 68 65 20 73 65 63 72 65  ief of the secre
02c0: 74 20 6b 65 79 20 63 61 6e 27 74 20 28 69 2e 65  t key can't (i.e
02d0: 2e 20 66 75 72 74 68 65 72 20 69 6e 66 6f 72 6d  . further inform
02e0: 61 74 69 6f 6e 20 69 73 20 6e 65 63 65 73 73 61  ation is necessa
02f0: 72 79 29 3c 2f 6c 69 3e 0a 3c 6c 69 3e 52 65 76  ry)</li>.<li>Rev
0300: 6f 63 61 74 69 6f 6e 20 6d 75 73 74 20 70 72 65  ocation must pre
0310: 73 65 6e 74 20 61 20 74 72 75 73 74 77 6f 72 74  sent a trustwort
0320: 68 79 20 72 65 70 6c 61 63 65 6d 65 6e 74 20 6b  hy replacement k
0330: 65 79 3c 2f 6c 69 3e 0a 3c 6c 69 3e 54 68 69 72  ey</li>.<li>Thir
0340: 64 20 70 61 72 74 69 65 73 20 6d 75 73 74 20 74  d parties must t
0350: 72 75 73 74 20 62 6f 74 68 20 74 68 65 20 72 65  rust both the re
0360: 76 6f 63 61 74 69 6f 6e 20 61 6e 64 20 74 68 65  vocation and the
0370: 20 72 65 70 6c 61 63 65 6d 65 6e 74 20 6b 65 79   replacement key
0380: 0a 77 69 74 68 6f 75 74 20 61 6e 6f 74 68 65 72  .without another
0390: 20 74 72 75 73 74 77 6f 72 74 68 79 20 69 6e 73   trustworthy ins
03a0: 74 61 6e 63 65 2c 20 69 2e 65 2e 20 74 72 75 73  tance, i.e. trus
03b0: 74 69 6e 67 20 6f 6e 6c 79 20 74 68 65 69 72 20  ting only their 
03c0: 63 6f 6d 6d 75 6e 69 63 61 74 69 6f 6e 0a 70 61  communication.pa
03d0: 72 74 6e 65 72 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e  rtner</li>.</ul>
03e0: 0a 0a 3c 70 3e 3c 2f 70 3e 49 20 63 72 65 61 74  ..<p></p>I creat
03f0: 65 20 74 77 6f 20 72 61 6e 64 6f 6d 20 6e 75 6d  e two random num
0400: 62 65 72 20 73 31 20 61 6e 64 20 73 32 2e 20 26  ber s1 and s2. &
0410: 6e 62 73 70 3b 55 73 69 6e 67 20 74 68 65 73 65  nbsp;Using these
0420: 20 6e 75 6d 62 65 72 73 2c 20 49 0a 63 72 65 61   numbers, I.crea
0430: 74 65 20 70 75 62 6b 65 79 73 20 70 31 3d 62 61  te pubkeys p1=ba
0440: 73 65 2a 28 73 31 29 20 61 6e 64 20 70 32 3d 62  se*(s1) and p2=b
0450: 61 73 65 2a 28 73 32 29 2e 20 26 6e 62 73 70 3b  ase*(s2). &nbsp;
0460: 49 20 63 6f 6d 70 75 74 65 20 28 73 29 3d 28 73  I compute (s)=(s
0470: 31 2a 70 32 29 20 61 73 0a 22 77 6f 72 6b 20 73  1*p2) as."work s
0480: 65 63 72 65 74 22 20 28 69 2e 65 2e 20 74 68 65  ecret" (i.e. the
0490: 20 73 65 63 72 65 74 20 6b 65 79 20 74 68 61 74   secret key that
04a0: 20 69 73 20 70 72 6f 76 69 6e 67 20 6d 79 20 69   is proving my i
04b0: 64 65 6e 74 69 74 79 29 2c 20 61 6e 64 0a 70 3d  dentity), and.p=
04c0: 62 61 73 65 2a 28 73 29 2c 20 6d 79 20 70 75 62  base*(s), my pub
04d0: 6b 65 79 2e 20 26 6e 62 73 70 3b 49 20 70 75 62  key. &nbsp;I pub
04e0: 6c 69 73 68 20 70 20 61 6e 64 20 70 31 2c 20 77  lish p and p1, w
04f0: 68 69 63 68 20 74 6f 67 65 74 68 65 72 20 61 72  hich together ar
0500: 65 20 73 74 6f 72 65 64 20 61 73 0a 69 64 65 6e  e stored as.iden
0510: 74 69 74 79 2e 20 26 6e 62 73 70 3b 54 68 65 20  tity. &nbsp;The 
0520: 61 73 73 75 6d 70 74 69 6f 6e 20 69 73 20 74 68  assumption is th
0530: 61 74 20 70 31 20 63 61 6e 27 74 20 62 65 20 72  at p1 can't be r
0540: 65 76 65 72 73 65 64 20 74 6f 20 67 65 74 20 73  eversed to get s
0550: 31 2c 20 61 6e 64 20 70 0a 77 6f 6e 27 74 20 72  1, and p.won't r
0560: 65 76 65 61 6c 20 73 2e 20 26 6e 62 73 70 3b 41  eveal s. &nbsp;A
0570: 6e 20 61 74 74 61 63 6b 65 72 20 77 68 6f 20 73  n attacker who s
0580: 74 6f 6c 65 20 73 20 63 61 6e 27 74 20 67 75 65  tole s can't gue
0590: 73 73 20 73 31 2c 20 62 65 63 61 75 73 65 20 68  ss s1, because h
05a0: 65 0a 64 6f 65 73 6e 27 74 20 68 61 76 65 20 70  e.doesn't have p
05b0: 32 2c 20 61 6e 64 20 73 6f 20 69 74 27 73 20 65  2, and so it's e
05c0: 76 65 6e 20 6d 6f 72 65 20 64 69 66 66 69 63 75  ven more difficu
05d0: 6c 74 20 74 6f 20 67 65 74 20 73 32 2e 20 26 6e  lt to get s2. &n
05e0: 62 73 70 3b 41 6e 20 61 74 74 61 63 6b 65 72 0a  bsp;An attacker.
05f0: 77 68 6f 20 73 74 6f 6c 65 20 73 20 63 61 6e 20  who stole s can 
0600: 67 65 6e 65 72 61 74 65 20 61 20 6e 65 77 20 70  generate a new p
0610: 61 69 72 20 6f 66 20 70 31 2c 20 70 32 2c 20 62  air of p1, p2, b
0620: 75 74 20 74 68 61 74 20 77 6f 75 6c 64 20 67 69  ut that would gi
0630: 76 65 20 68 69 6d 20 61 0a 64 69 66 66 65 72 65  ve him a.differe
0640: 6e 74 20 69 64 65 6e 74 69 74 79 20 28 61 20 73  nt identity (a s
0650: 75 73 70 69 63 69 6f 75 73 20 69 64 65 6e 74 69  uspicious identi
0660: 74 79 2c 20 74 68 6f 75 67 68 29 2e 20 26 6e 62  ty, though). &nb
0670: 73 70 3b 41 66 74 65 72 20 67 65 6e 65 72 61 74  sp;After generat
0680: 69 6e 67 20 74 68 65 0a 6b 65 79 2c 20 73 31 20  ing the.key, s1 
0690: 69 73 20 64 65 73 74 72 6f 79 65 64 3b 20 69 74  is destroyed; it
06a0: 20 69 73 20 6e 6f 20 6c 6f 6e 67 65 72 20 6e 65   is no longer ne
06b0: 65 64 65 64 2c 20 74 68 6f 75 67 68 20 69 74 20  eded, though it 
06c0: 63 61 6e 20 62 65 20 72 65 63 6f 6d 70 75 74 65  can be recompute
06d0: 64 20 75 73 69 6e 67 0a 73 20 61 6e 64 20 70 32  d using.s and p2
06e0: 20 61 6e 64 20 74 68 65 20 65 78 74 65 6e 64 65   and the extende
06f0: 64 20 65 75 63 6c 69 64 65 61 6e 20 61 6c 67 6f  d euclidean algo
0700: 72 69 74 68 6d 2e 0a 0a 3c 70 3e 49 20 6b 65 65  rithm...<p>I kee
0710: 70 20 73 32 20 61 73 20 6f 66 66 6c 69 6e 65 20  p s2 as offline 
0720: 63 6f 70 79 20 28 69 74 27 73 20 6a 75 73 74 20  copy (it's just 
0730: 36 34 20 68 65 78 20 64 69 67 69 74 73 29 2c 20  64 hex digits), 
0740: 61 6e 64 20 73 20 61 73 20 70 72 6f 74 65 63 74  and s as protect
0750: 65 64 0a 6f 6e 6c 69 6e 65 20 63 6f 70 79 20 69  ed.online copy i
0760: 6e 20 6d 79 20 64 65 76 69 63 65 3b 20 73 20 69  n my device; s i
0770: 73 20 73 75 62 6a 65 63 74 20 74 6f 20 61 74 74  s subject to att
0780: 61 63 6b 73 20 61 6e 64 20 62 61 63 6b 64 6f 6f  acks and backdoo
0790: 72 73 2c 20 61 6e 64 20 74 68 65 72 65 66 6f 72  rs, and therefor
07a0: 65 0a 61 74 20 72 69 73 6b 2e 20 26 6e 62 73 70  e.at risk. &nbsp
07b0: 3b 54 6f 20 72 65 76 6f 6b 65 20 61 20 6b 65 79  ;To revoke a key
07c0: 2c 20 49 20 70 75 62 6c 69 73 68 20 70 32 2c 20  , I publish p2, 
07d0: 77 68 69 63 68 20 74 68 65 20 72 65 63 69 70 69  which the recipi
07e0: 65 6e 74 20 63 61 6e 20 76 61 6c 69 64 61 74 65  ent can validate
07f0: 0a 62 79 20 70 31 2a 28 70 32 29 3d 3d 70 2e 20  .by p1*(p2)==p. 
0800: 26 6e 62 73 70 3b 3c 2f 70 3e 0a 0a 3c 70 3e 54  &nbsp;</p>..<p>T
0810: 6f 20 73 69 67 6e 20 61 20 6e 65 77 20 6b 65 79  o sign a new key
0820: 2c 20 49 20 75 73 65 20 73 32 20 61 73 20 73 69  , I use s2 as si
0830: 67 6e 61 74 75 72 65 20 6b 65 79 2c 20 69 2e 65  gnature key, i.e
0840: 2e 20 74 68 65 20 72 65 63 69 70 69 65 6e 74 20  . the recipient 
0850: 63 61 6e 20 75 73 65 20 74 68 65 0a 6a 75 73 74  can use the.just
0860: 20 70 75 62 6c 69 73 68 65 64 20 70 32 20 74 6f   published p2 to
0870: 20 76 65 72 69 66 79 20 74 68 65 20 74 72 61 6e   verify the tran
0880: 73 69 74 69 6f 6e 20 74 6f 20 74 68 65 20 72 65  sition to the re
0890: 70 6c 61 63 65 6d 65 6e 74 20 6b 65 79 2e 20 26  placement key. &
08a0: 6e 62 73 70 3b 4f 66 0a 63 6f 75 72 73 65 2c 20  nbsp;Of.course, 
08b0: 74 68 65 20 6e 65 77 20 6b 65 79 20 61 6c 73 6f  the new key also
08c0: 20 68 61 73 20 61 20 73 69 67 6e 61 74 75 72 65   has a signature
08d0: 20 77 69 74 68 20 73 2c 20 74 68 65 20 6f 6c 64   with s, the old
08e0: 20 6b 65 79 2e 20 26 6e 62 73 70 3b 54 68 65 20   key. &nbsp;The 
08f0: 66 6f 72 6d 61 74 0a 6f 66 20 74 68 65 20 72 65  format.of the re
0900: 76 6f 63 61 74 69 6f 6e 20 61 74 74 72 69 62 75  vocation attribu
0910: 74 65 20 69 73 20 61 63 74 75 61 6c 6c 79 20 26  te is actually &
0920: 6c 74 3b 6e 65 77 20 70 75 62 6b 65 79 73 3a 20  lt;new pubkeys: 
0930: 70 6e 65 77 2c 20 70 31 6e 65 77 26 67 74 3b 26  pnew, p1new&gt;&
0940: 6c 74 3b 70 32 2c 0a 73 69 67 20 75 73 69 6e 67  lt;p2,.sig using
0950: 20 73 32 26 67 74 3b 26 6c 74 3b 73 69 67 20 75   s2&gt;&lt;sig u
0960: 73 69 6e 67 20 73 26 67 74 3b 2e 20 26 6e 62 73  sing s&gt;. &nbs
0970: 70 3b 42 6f 74 68 20 73 69 67 6e 61 74 75 72 65  p;Both signature
0980: 73 20 6d 75 73 74 20 68 61 76 65 20 74 68 65 20  s must have the 
0990: 73 61 6d 65 0a 73 69 67 6e 69 6e 67 20 64 61 74  same.signing dat
09a0: 65 2c 20 61 6e 64 20 61 20 6e 65 76 65 72 20 65  e, and a never e
09b0: 78 70 69 72 61 74 69 6f 6e 20 64 61 74 65 20 28  xpiration date (
09c0: 61 20 72 65 76 6f 63 61 74 69 6f 6e 20 64 6f 65  a revocation doe
09d0: 73 6e 27 74 20 65 78 70 69 72 65 29 2e 3c 2f 70  sn't expire).</p
09e0: 3e 0a 0a 5a 20 63 66 32 62 35 61 37 62 64 35 35  >..Z cf2b5a7bd55
09f0: 66 39 66 64 31 62 39 62 61 38 32 31 33 37 36 37  f9fd1b9ba8213767
0a00: 37 63 66 33 33 0a                                7cf33.