Hex Artifact Content
Not logged in

Artifact a96d4d87c4bffbcfab15965b1772b9ad30c33f24:

Wiki page [keyrevokation] by bernd 2014-04-20 23:19:04.
0000: 44 20 32 30 31 34 2d 30 34 2d 32 30 54 32 33 3a  D 2014-04-20T23:
0010: 31 39 3a 30 34 2e 33 37 36 0a 4c 20 6b 65 79 72  19:04.376.L keyr
0020: 65 76 6f 6b 61 74 69 6f 6e 0a 50 20 39 65 61 37  evokation.P 9ea7
0030: 37 38 35 61 39 34 32 31 37 30 30 35 66 64 30 35  785a94217005fd05
0040: 32 39 62 62 36 35 38 31 65 39 32 39 39 62 35 61  29bb6581e9299b5a
0050: 66 33 31 32 0a 55 20 62 65 72 6e 64 0a 57 20 31  f312.U bernd.W 1
0060: 38 31 31 0a 3c 68 31 3e 4b 65 79 20 52 65 76 6f  811.<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 0a 3c 75 6c 3e 0a 3c 6c 69 3e 4f 6e  .<p>.<ul>.<li>On
0270: 6c 79 20 74 68 65 20 63 72 65 61 74 6f 72 20 6f  ly the creator o
0280: 66 20 74 68 65 20 73 65 63 72 65 74 20 6b 65 79  f the secret key
0290: 20 63 61 6e 20 72 65 76 6f 6b 65 20 69 74 3c 2f   can revoke it</
02a0: 6c 69 3e 0a 3c 6c 69 3e 41 20 74 68 69 65 66 20  li>.<li>A thief 
02b0: 6f 66 20 74 68 65 20 73 65 63 72 65 74 20 6b 65  of the secret ke
02c0: 79 20 63 61 6e 27 74 20 28 69 2e 65 2e 20 66 75  y can't (i.e. fu
02d0: 72 74 68 65 72 20 69 6e 66 6f 72 6d 61 74 69 6f  rther informatio
02e0: 6e 20 69 73 20 6e 65 63 65 73 73 61 72 79 29 3c  n is necessary)<
02f0: 2f 6c 69 3e 0a 3c 6c 69 3e 52 65 76 6f 63 61 74  /li>.<li>Revocat
0300: 69 6f 6e 20 6d 75 73 74 20 70 72 65 73 65 6e 74  ion must present
0310: 20 61 20 74 72 75 73 74 77 6f 72 74 68 79 20 72   a trustworthy r
0320: 65 70 6c 61 63 65 6d 65 6e 74 20 6b 65 79 3c 2f  eplacement key</
0330: 6c 69 3e 0a 3c 6c 69 3e 54 68 69 72 64 20 70 61  li>.<li>Third pa
0340: 72 74 69 65 73 20 6d 75 73 74 20 74 72 75 73 74  rties must trust
0350: 20 62 6f 74 68 20 74 68 65 20 72 65 76 6f 63 61   both the revoca
0360: 74 69 6f 6e 20 61 6e 64 20 74 68 65 20 72 65 70  tion and the rep
0370: 6c 61 63 65 6d 65 6e 74 20 6b 65 79 0a 77 69 74  lacement key.wit
0380: 68 6f 75 74 20 61 6e 6f 74 68 65 72 20 74 72 75  hout another tru
0390: 73 74 77 6f 72 74 68 79 20 69 6e 73 74 61 6e 63  stworthy instanc
03a0: 65 2c 20 69 2e 65 2e 20 74 72 75 73 74 69 6e 67  e, i.e. trusting
03b0: 20 6f 6e 6c 79 20 74 68 65 69 72 20 63 6f 6d 6d   only their comm
03c0: 75 6e 69 63 61 74 69 6f 6e 0a 70 61 72 74 6e 65  unication.partne
03d0: 72 3c 2f 6c 69 3e 0a 3c 2f 75 6c 3e 3c 2f 70 3e  r</li>.</ul></p>
03e0: 49 20 63 72 65 61 74 65 20 74 77 6f 20 72 61 6e  I create two ran
03f0: 64 6f 6d 20 6e 75 6d 62 65 72 20 73 31 20 61 6e  dom number s1 an
0400: 64 20 73 32 2e 20 26 6e 62 73 70 3b 55 73 69 6e  d s2. &nbsp;Usin
0410: 67 20 74 68 65 73 65 20 6e 75 6d 62 65 72 73 2c  g these numbers,
0420: 20 49 0a 63 72 65 61 74 65 20 70 75 62 6b 65 79   I.create pubkey
0430: 73 20 70 31 3d 62 61 73 65 2a 28 73 31 29 20 61  s p1=base*(s1) a
0440: 6e 64 20 70 32 3d 62 61 73 65 2a 28 73 32 29 2e  nd p2=base*(s2).
0450: 20 26 6e 62 73 70 3b 49 20 63 6f 6d 70 75 74 65   &nbsp;I compute
0460: 20 28 73 29 3d 28 73 31 2a 70 32 29 20 61 73 0a   (s)=(s1*p2) as.
0470: 22 77 6f 72 6b 20 73 65 63 72 65 74 22 20 28 69  "work secret" (i
0480: 2e 65 2e 20 74 68 65 20 73 65 63 72 65 74 20 6b  .e. the secret k
0490: 65 79 20 74 68 61 74 20 69 73 20 70 72 6f 76 69  ey that is provi
04a0: 6e 67 20 6d 79 20 69 64 65 6e 74 69 74 79 29 2c  ng my identity),
04b0: 20 61 6e 64 0a 70 3d 62 61 73 65 2a 28 73 29 2c   and.p=base*(s),
04c0: 20 6d 79 20 70 75 62 6b 65 79 2e 20 26 6e 62 73   my pubkey. &nbs
04d0: 70 3b 49 20 70 75 62 6c 69 73 68 20 70 2c 20 70  p;I publish p, p
04e0: 31 2c 20 61 6e 64 20 68 61 73 68 28 70 32 29 2c  1, and hash(p2),
04f0: 20 77 68 69 63 68 20 74 6f 67 65 74 68 65 72 20   which together 
0500: 61 72 65 0a 73 74 6f 72 65 64 20 61 73 20 69 64  are.stored as id
0510: 65 6e 74 69 74 79 2e 20 26 6e 62 73 70 3b 54 68  entity. &nbsp;Th
0520: 65 20 61 73 73 75 6d 70 74 69 6f 6e 20 69 73 20  e assumption is 
0530: 74 68 61 74 20 68 61 73 68 28 70 32 29 20 63 61  that hash(p2) ca
0540: 6e 27 74 20 62 65 20 72 65 76 65 72 73 65 64 20  n't be reversed 
0550: 74 6f 0a 67 65 74 20 70 32 2c 20 61 6e 64 20 75  to.get p2, and u
0560: 73 69 6e 67 20 70 20 61 6e 64 20 70 31 20 64 6f  sing p and p1 do
0570: 6e 27 74 20 72 65 76 65 61 6c 20 73 20 61 6e 64  n't reveal s and
0580: 20 73 31 2e 0a 0a 3c 64 69 76 3e 49 20 6b 65 65   s1...<div>I kee
0590: 70 20 73 32 20 61 73 20 6f 66 66 6c 69 6e 65 20  p s2 as offline 
05a0: 63 6f 70 79 20 28 69 74 27 73 20 6a 75 73 74 20  copy (it's just 
05b0: 36 34 20 68 65 78 20 64 69 67 69 74 73 29 2c 20  64 hex digits), 
05c0: 61 6e 64 20 73 20 61 73 20 70 72 6f 74 65 63 74  and s as protect
05d0: 65 64 0a 6f 6e 6c 69 6e 65 20 63 6f 70 79 20 69  ed.online copy i
05e0: 6e 20 6d 79 20 64 65 76 69 63 65 3b 20 73 20 69  n my device; s i
05f0: 73 20 73 75 62 6a 65 63 74 20 74 6f 20 61 74 74  s subject to att
0600: 61 63 6b 73 20 61 6e 64 20 62 61 63 6b 64 6f 6f  acks and backdoo
0610: 72 73 2c 20 61 6e 64 20 74 68 65 72 65 66 6f 72  rs, and therefor
0620: 65 0a 61 74 20 72 69 73 6b 2e 20 26 6e 62 73 70  e.at risk. &nbsp
0630: 3b 54 6f 20 72 65 76 6f 6b 65 20 61 20 6b 65 79  ;To revoke a key
0640: 2c 20 49 20 70 75 62 6c 69 73 68 20 70 32 2c 20  , I publish p2, 
0650: 77 68 69 63 68 20 74 68 65 20 72 65 63 69 70 69  which the recipi
0660: 65 6e 74 20 63 61 6e 20 76 61 6c 69 64 61 74 65  ent can validate
0670: 0a 62 79 20 70 31 2a 28 70 32 29 3d 3d 70 2c 20  .by p1*(p2)==p, 
0680: 61 6e 64 20 68 61 73 68 28 70 32 29 2e 3c 2f 64  and hash(p2).</d
0690: 69 76 3e 0a 0a 3c 64 69 76 3e 54 6f 20 73 69 67  iv>..<div>To sig
06a0: 6e 20 61 20 6e 65 77 20 6b 65 79 2c 20 49 20 75  n a new key, I u
06b0: 73 65 20 73 32 20 61 73 20 73 69 67 6e 61 74 75  se s2 as signatu
06c0: 72 65 20 6b 65 79 2c 20 69 2e 65 2e 20 74 68 65  re key, i.e. the
06d0: 20 72 65 63 69 70 69 65 6e 74 20 63 61 6e 20 75   recipient can u
06e0: 73 65 0a 74 68 65 20 6a 75 73 74 20 70 75 62 6c  se.the just publ
06f0: 69 73 68 65 64 20 70 32 20 74 6f 20 76 65 72 69  ished p2 to veri
0700: 66 79 20 74 68 65 20 74 72 61 6e 73 69 74 69 6f  fy the transitio
0710: 6e 20 74 6f 20 74 68 65 20 72 65 70 6c 61 63 65  n to the replace
0720: 6d 65 6e 74 20 6b 65 79 2e 20 26 6e 62 73 70 3b  ment key. &nbsp;
0730: 4f 66 0a 63 6f 75 72 73 65 2c 20 74 68 65 20 6e  Of.course, the n
0740: 65 77 20 6b 65 79 20 61 6c 73 6f 20 68 61 73 20  ew key also has 
0750: 61 20 73 69 67 6e 61 74 75 72 65 20 77 69 74 68  a signature with
0760: 20 73 2c 20 74 68 65 20 6f 6c 64 20 6b 65 79 2e   s, the old key.
0770: 3c 2f 64 69 76 3e 0a 0a 5a 20 37 66 38 66 31 33  </div>..Z 7f8f13
0780: 39 32 61 64 31 63 64 37 65 39 30 36 61 36 37 39  92ad1cd7e906a679
0790: 35 32 34 30 64 39 37 61 61 61 0a                 5240d97aaa.