Hex Artifact Content
Not logged in

Artifact 2251640dd7da420df58a2fafc8cf43e3d1487564:


0000: 23 20 4e 53 41 20 42 61 63 6b 64 6f 6f 72 20 46  # NSA Backdoor F
0010: 6e 6f 72 64 20 23 0a 0a 41 73 20 79 6f 75 20 61  nord #..As you a
0020: 6c 6c 20 6b 6e 6f 77 2c 20 69 74 20 69 73 20 6e  ll know, it is n
0030: 6f 74 20 61 6c 6c 6f 77 65 64 20 74 6f 20 73 70  ot allowed to sp
0040: 65 61 6b 20 61 62 6f 75 74 20 4e 53 41 2d 64 65  eak about NSA-de
0050: 6d 61 6e 64 65 64 20 62 61 63 6b 64 6f 6f 72 73  manded backdoors
0060: 2c 0a 61 6e 64 20 65 73 70 65 63 69 61 6c 6c 79  ,.and especially
0070: 20 69 74 20 69 73 20 73 74 72 69 63 74 6c 79 20   it is strictly 
0080: 70 72 6f 68 69 62 69 74 65 64 20 74 6f 20 67 69  prohibited to gi
0090: 76 65 20 61 6e 79 20 64 65 74 61 69 6c 73 2e 20  ve any details. 
00a0: 20 48 6f 77 65 76 65 72 2c 20 69 74 0a 69 73 20   However, it.is 
00b0: 61 6c 6c 6f 77 65 64 20 74 6f 20 62 6f 6c 64 6c  allowed to boldl
00c0: 79 20 6c 69 65 20 61 62 6f 75 74 20 4e 53 41 2d  y lie about NSA-
00d0: 64 65 6d 61 6e 64 65 64 20 62 61 63 6b 64 6f 6f  demanded backdoo
00e0: 72 73 20 69 66 20 79 6f 75 20 64 69 64 6e 27 74  rs if you didn't
00f0: 20 72 65 63 65 69 76 65 0a 73 75 63 68 20 61 20   receive.such a 
0100: 72 65 71 75 65 73 74 2c 20 62 65 63 61 75 73 65  request, because
0110: 20 79 6f 75 20 61 72 65 20 6e 6f 74 20 75 6e 64   you are not und
0120: 65 72 20 61 20 67 61 67 20 6f 72 64 65 72 2c 20  er a gag order, 
0130: 61 6e 64 20 69 6e 20 67 65 6e 65 72 61 6c 2c 20  and in general, 
0140: 6c 79 69 6e 67 0a 61 62 6f 75 74 20 74 68 65 20  lying.about the 
0150: 71 75 61 6c 69 74 79 20 6f 66 20 79 6f 75 72 20  quality of your 
0160: 70 72 6f 64 75 63 74 20 69 73 20 6e 6f 74 20 6f  product is not o
0170: 6e 6c 79 20 6c 65 67 61 6c 2c 20 62 75 74 20 e2  nly legal, but 
0180: 80 9c 62 65 73 74 20 70 72 61 63 74 69 63 65 e2  best practice
0190: 80 9d 2e 0a 54 68 65 20 70 75 72 70 6f 73 65 20  ..The purpose 
01a0: 6f 66 20 74 68 69 73 20 4e 53 41 20 62 61 63 6b  of this NSA back
01b0: 64 6f 6f 72 20 66 6e 6f 72 64 20 69 73 20 74 6f  door fnord is to
01c0: 20 6d 61 6b 65 20 79 6f 75 20 77 6f 72 72 79 20   make you worry 
01d0: 61 62 6f 75 74 20 74 68 65 0a 71 75 61 6c 69 74  about the.qualit
01e0: 79 20 6f 66 20 6e 65 74 32 6f 2c 20 61 6e 64 20  y of net2o, and 
01f0: 74 68 65 72 65 66 6f 72 65 20 79 6f 75 20 73 74  therefore you st
0200: 61 72 74 20 6c 6f 6f 6b 69 6e 67 20 61 74 20 74  art looking at t
0210: 68 65 20 73 6f 75 72 63 65 20 63 6f 64 65 3b 20  he source code; 
0220: 74 68 65 0a 74 6f 70 69 63 73 20 6d 65 6e 74 69  the.topics menti
0230: 6f 6e 65 64 20 68 65 72 65 20 61 72 65 20 61 6c  oned here are al
0240: 6c 20 73 65 63 75 72 69 74 79 20 74 68 69 6e 67  l security thing
0250: 73 20 74 6f 20 63 6f 6e 73 69 64 65 72 2e 0a 0a  s to consider...
0260: 54 68 65 72 65 66 6f 72 65 2c 20 68 65 72 65 20  Therefore, here 
0270: 69 73 20 74 68 65 20 6f 66 66 69 63 69 61 6c 20  is the official 
0280: 73 74 61 74 65 6d 65 6e 74 20 61 62 6f 75 74 20  statement about 
0290: 4e 53 41 2d 64 65 6d 61 6e 64 65 64 20 62 61 63  NSA-demanded bac
02a0: 6b 64 6f 6f 72 73 3a 20 54 68 65 0a 4e 53 41 20  kdoors: The.NSA 
02b0: 61 73 6b 65 64 20 6d 65 20 74 6f 20 69 6d 70 72  asked me to impr
02c0: 6f 76 65 20 5b 52 61 79 20 4f 7a 7a 69 65 27 73  ove [Ray Ozzie's
02d0: 20 62 6f 74 63 68 65 64 20 73 6d 61 72 74 70 68   botched smartph
02e0: 6f 6e 65 0a 62 61 63 6b 64 6f 6f 72 5d 28 68 74  one.backdoor](ht
02f0: 74 70 73 3a 2f 2f 77 77 77 2e 74 6f 6d 73 68 61  tps://www.tomsha
0300: 72 64 77 61 72 65 2e 63 6f 2e 75 6b 2f 73 65 63  rdware.co.uk/sec
0310: 75 72 69 74 79 2d 65 78 70 65 72 74 73 2d 64 69  urity-experts-di
0320: 73 6d 61 6e 74 6c 65 2d 6f 7a 7a 69 65 2d 62 61  smantle-ozzie-ba
0330: 63 6b 64 6f 6f 72 2c 6e 65 77 73 2d 35 38 33 33  ckdoor,news-5833
0340: 39 2e 68 74 6d 6c 29 2e 0a 48 65 72 65 27 73 20  9.html)..Here's 
0350: 68 6f 77 3a 20 49 6e 73 74 65 61 64 20 6f 66 20  how: Instead of 
0360: 68 61 76 69 6e 67 20 6f 6e 65 20 73 69 6e 67 6c  having one singl
0370: 65 20 70 6f 69 6e 74 20 6f 66 20 66 61 69 6c 75  e point of failu
0380: 72 65 20 28 64 61 74 61 62 61 73 65 20 6f 66 20  re (database of 
0390: 75 6e 6c 6f 63 6b 0a 6b 65 79 73 29 2c 20 64 69  unlock.keys), di
03a0: 73 74 72 69 62 75 74 65 20 74 68 65 20 73 65 63  stribute the sec
03b0: 72 65 74 2e 20 20 41 20 6c 61 77 66 75 6c 20 62  ret.  A lawful b
03c0: 61 63 6b 64 6f 6f 72 20 6e 65 65 64 73 20 74 6f  ackdoor needs to
03d0: 20 62 65 20 64 65 6d 61 6e 64 65 64 20 62 79 20   be demanded by 
03e0: 74 68 65 0a 69 6e 76 65 73 74 69 67 61 74 6f 72  the.investigator
03f0: 73 20 28 73 74 61 74 65 20 61 74 74 6f 72 6e 65  s (state attorne
0400: 79 29 2c 20 6d 75 73 74 20 62 65 20 61 70 70 72  y), must be appr
0410: 6f 76 65 64 20 62 79 20 61 20 6a 75 64 67 65 2c  oved by a judge,
0420: 20 68 61 6e 64 65 64 20 6f 76 65 72 20 74 6f 0a   handed over to.
0430: 74 68 65 20 63 6f 6f 70 65 72 61 74 69 6e 67 20  the cooperating 
0440: 6d 61 6e 75 66 61 63 74 75 72 65 72 2c 20 61 6e  manufacturer, an
0450: 64 20 6e 65 65 64 73 20 74 6f 20 62 65 20 64 65  d needs to be de
0460: 76 69 63 65 2d 73 70 65 63 69 66 69 63 20 e2 80  vice-specific 
0470: 94 20 6e 6f 20 6f 74 68 65 72 0a 64 65 76 69 63   no other.devic
0480: 65 20 6d 61 79 20 62 65 20 75 6e 6c 6f 63 6b 65  e may be unlocke
0490: 64 20 62 79 20 74 68 61 74 20 70 72 6f 63 65 64  d by that proced
04a0: 75 72 65 2e 20 20 54 68 61 74 20 61 72 65 20 61  ure.  That are a
04b0: 74 20 6c 65 61 73 74 20 34 20 6b 65 79 73 20 69  t least 4 keys i
04c0: 6e 20 74 68 65 0a 63 68 61 69 6e 3b 20 62 65 74  n the.chain; bet
04d0: 74 65 72 20 77 69 74 68 20 61 74 20 6c 65 61 73  ter with at leas
04e0: 74 20 61 20 66 6f 75 72 2d 65 79 65 73 20 70 72  t a four-eyes pr
04f0: 6f 63 65 64 75 72 65 20 69 6e 20 65 61 63 68 20  ocedure in each 
0500: 6f 66 20 74 68 65 20 70 6f 69 6e 74 73 2c 20 73  of the points, s
0510: 6f 20 37 0a 6b 65 79 73 20 6d 69 6e 69 6d 75 6d  o 7.keys minimum
0520: 20 28 74 68 65 20 64 65 76 69 63 65 20 69 74 73   (the device its
0530: 65 6c 66 20 69 73 6e 27 74 20 66 6f 75 72 2d 65  elf isn't four-e
0540: 79 65 73 29 2e 0a 0a 44 69 73 74 72 69 62 75 74  yes)...Distribut
0550: 69 6e 67 20 61 20 73 65 63 72 65 74 20 28 77 69  ing a secret (wi
0560: 74 68 6f 75 74 20 62 79 7a 61 6e 74 69 6e 65 20  thout byzantine 
0570: 66 61 75 6c 74 20 74 6f 6c 65 72 61 6e 63 65 29  fault tolerance)
0580: 20 69 73 20 65 61 73 79 20 77 69 74 68 0a 5b 65   is easy with.[e
0590: 64 32 35 35 31 39 5d 28 65 64 32 35 35 31 39 2e  d25519](ed25519.
05a0: 6d 64 29 2e 20 20 41 20 73 65 63 72 65 74 20 63  md).  A secret c
05b0: 68 61 69 6e 20 5f 70 6b 6e 3d 62 61 73 65 5c 2a  hain _pkn=base\*
05c0: 28 73 6b 31 5c 2a 2e 2e 5c 2a 73 6b 6e 29 5f 20  (sk1\*..\*skn)_ 
05d0: 63 61 6e 20 62 65 0a 67 65 6e 65 72 61 74 65 64  can be.generated
05e0: 20 74 68 72 6f 75 67 68 20 61 20 63 68 61 69 6e   through a chain
05f0: 20 6f 66 20 48 53 4d 73 2c 20 77 68 69 63 68 20   of HSMs, which 
0600: 65 61 63 68 20 67 65 6e 65 72 61 74 65 20 74 68  each generate th
0610: 65 20 6e 65 78 74 20 70 75 62 6b 65 79 20 62 79  e next pubkey by
0620: 0a 70 72 6f 64 75 63 69 6e 67 20 5f 70 6b 69 3d  .producing _pki=
0630: 70 6b 6a 5c 2a 28 73 6b 69 29 5f 20 28 74 68 65  pkj\*(ski)_ (the
0640: 20 6f 72 64 65 72 20 69 73 20 69 72 72 65 6c 65   order is irrele
0650: 76 61 6e 74 2c 20 65 76 65 72 79 20 5f 73 6b 69  vant, every _ski
0660: 5f 20 6d 75 73 74 20 62 65 20 75 73 65 64 0a 6a  _ must be used.j
0670: 75 73 74 20 6f 6e 63 65 29 2e 20 20 54 6f 20 76  ust once).  To v
0680: 65 72 69 66 79 20 74 68 61 74 20 61 6c 6c 20 73  erify that all s
0690: 65 63 72 65 74 73 20 68 61 76 65 20 62 65 65 6e  ecrets have been
06a0: 20 75 73 65 64 2c 20 75 73 65 20 61 20 63 68 61   used, use a cha
06b0: 69 6e 20 73 69 67 6e 61 74 75 72 65 2e 0a 54 68  in signature..Th
06c0: 65 20 64 65 76 69 63 65 20 69 74 73 65 6c 66 20  e device itself 
06d0: 67 65 6e 65 72 61 74 65 73 20 74 68 65 20 73 74  generates the st
06e0: 61 72 74 69 6e 67 20 70 6f 69 6e 74 20 6f 66 20  arting point of 
06f0: 74 68 69 73 20 63 68 61 69 6e 20 73 69 67 6e 61  this chain signa
0700: 74 75 72 65 2c 20 62 79 0a 73 69 67 6e 69 6e 67  ture, by.signing
0710: 20 69 74 73 20 6f 77 6e 20 75 6e 6c 6f 63 6b 20   its own unlock 
0720: 74 68 72 6f 77 2d 61 77 61 79 20 73 65 63 72 65  throw-away secre
0730: 74 2c 20 70 72 6f 64 75 63 69 6e 67 20 61 20 74  t, producing a t
0740: 75 70 6c 65 0a 5f 28 6b 29 5c 2a 62 61 73 65 2c  uple._(k)\*base,
0750: 28 7a 5c 2a 73 6b 2b 6b 29 5f 20 28 61 66 74 65  (z\*sk+k)_ (afte
0760: 72 20 70 72 6f 64 75 63 69 6e 67 20 74 68 61 74  r producing that
0770: 20 74 75 70 6c 65 20 61 6e 64 20 74 68 65 20 75   tuple and the u
0780: 6e 6c 6f 63 6b 20 70 75 62 6b 65 79 2c 20 74 68  nlock pubkey, th
0790: 69 73 0a 73 65 63 72 65 74 20 69 73 20 6e 6f 20  is.secret is no 
07a0: 6c 6f 6e 67 65 72 20 6e 65 65 64 65 64 20 61 6e  longer needed an
07b0: 64 20 74 68 72 6f 77 6e 20 61 77 61 79 29 2e 20  d thrown away). 
07c0: 20 45 61 63 68 20 6e 6f 64 65 20 28 48 53 4d 29   Each node (HSM)
07d0: 20 69 6e 20 74 68 65 20 63 68 61 69 6e 0a 77 69   in the chain.wi
07e0: 6c 6c 20 6e 65 65 64 20 74 6f 20 6d 6f 64 69 66  ll need to modif
07f0: 79 20 74 68 61 74 20 73 69 67 6e 61 74 75 72 65  y that signature
0800: 20 62 79 20 61 64 64 69 6e 67 20 69 74 73 20 6f   by adding its o
0810: 77 6e 20 73 65 63 72 65 74 20 5f 6b 69 5f 20 61  wn secret _ki_ a
0820: 6e 64 0a 6d 75 6c 74 69 70 6c 79 69 6e 67 20 69  nd.multiplying i
0830: 74 20 77 69 74 68 20 69 74 73 20 6f 77 6e 20 73  t with its own s
0840: 65 63 72 65 74 20 5f 73 6b 69 5f 2c 20 73 6f 20  ecret _ski_, so 
0850: 79 6f 75 20 66 69 72 73 74 20 66 6f 72 6d 0a 5f  you first form._
0860: 28 6b 29 5c 2a 62 61 73 65 2b 28 6b 69 29 5c 2a  (k)\*base+(ki)\*
0870: 62 61 73 65 3d 28 6b 2b 6b 69 29 5c 2a 62 61 73  base=(k+ki)\*bas
0880: 65 5f 20 61 6e 64 20 5f 28 7a 5c 2a 73 6b 2b 6b  e_ and _(z\*sk+k
0890: 2b 6b 69 29 5f 2c 20 61 6e 64 20 74 68 65 6e 0a  +ki)_, and then.
08a0: 5f 28 73 6b 69 29 5c 2a 28 6b 2b 6b 69 29 5c 2a  _(ski)\*(k+ki)\*
08b0: 62 61 73 65 3d 28 73 6b 69 28 6b 2b 6b 69 29 29  base=(ski(k+ki))
08c0: 5c 2a 62 61 73 65 5f 2c 20 61 6e 64 0a 5f 28 73  \*base_, and._(s
08d0: 6b 69 29 5c 2a 28 7a 5c 2a 73 6b 2b 6b 2b 6b 69  ki)\*(z\*sk+k+ki
08e0: 29 3d 28 7a 5c 2a 73 6b 5c 2a 73 6b 69 2b 73 6b  )=(z\*sk\*ski+sk
08f0: 69 28 6b 2b 6b 69 29 29 5f 2e 20 20 54 68 65 20  i(k+ki))_.  The 
0900: 66 69 6e 61 6c 20 73 69 67 6e 61 74 75 72 65 20  final signature 
0910: 74 68 65 6e 20 77 69 6c 6c 0a 76 65 72 69 66 79  then will.verify
0920: 20 63 6f 72 72 65 63 74 6c 79 20 61 67 61 69 6e   correctly again
0930: 73 74 20 5f 70 6b 6e 5f 2c 20 61 20 70 75 62 6b  st _pkn_, a pubk
0940: 65 79 20 6f 6e 6c 79 20 74 68 65 20 64 65 76 69  ey only the devi
0950: 63 65 20 69 74 73 65 6c 66 20 6b 6e 6f 77 73 2c  ce itself knows,
0960: 20 62 65 63 61 75 73 65 0a 69 74 20 67 65 6e 65   because.it gene
0970: 72 61 74 65 64 20 69 74 20 69 74 73 65 6c 66 20  rated it itself 
0980: 62 79 20 74 61 6b 69 6e 67 20 69 6e 20 5f 70 6b  by taking in _pk
0990: 6e 2d 31 5f 20 61 6e 64 20 6d 75 6c 74 69 70 6c  n-1_ and multipl
09a0: 79 69 6e 67 20 69 74 73 20 6f 77 6e 20 73 65 63  ying its own sec
09b0: 72 65 74 20 6b 65 79 0a 5f 73 6b 6e 5f 20 77 69  ret key._skn_ wi
09c0: 74 68 20 69 74 2e 0a 0a 54 68 65 20 64 65 76 69  th it...The devi
09d0: 63 65 20 64 6f 65 73 20 6e 6f 74 20 6e 65 65 64  ce does not need
09e0: 20 74 6f 20 6b 65 65 70 20 74 68 69 73 20 70 75   to keep this pu
09f0: 62 6b 65 79 20 61 73 20 70 6c 61 69 6e 74 65 78  bkey as plaintex
0a00: 74 2c 20 69 74 20 69 73 20 73 75 66 66 69 63 69  t, it is suffici
0a10: 65 6e 74 20 69 66 0a 74 68 69 73 20 70 75 62 6b  ent if.this pubk
0a20: 65 79 20 28 6f 72 20 61 20 73 61 6c 74 65 64 20  ey (or a salted 
0a30: 68 61 73 68 20 6f 76 65 72 20 69 74 3b 20 75 73  hash over it; us
0a40: 69 6e 67 20 74 68 61 74 20 73 61 6c 74 20 61 73  ing that salt as
0a50: 20 5f 7a 5f 20 76 61 6c 75 65 20 6f 66 20 74 68   _z_ value of th
0a60: 65 0a 73 69 67 6e 61 74 75 72 65 29 20 69 73 20  e.signature) is 
0a70: 75 73 65 64 20 66 6f 72 20 61 63 74 75 61 6c 6c  used for actuall
0a80: 79 20 64 65 63 72 79 70 74 69 6e 67 20 74 68 65  y decrypting the
0a90: 20 66 6c 61 73 68 20 64 72 69 76 65 2e 20 20 54   flash drive.  T
0aa0: 68 65 20 70 75 62 6b 65 79 0a 74 68 65 72 65 66  he pubkey.theref
0ab0: 6f 72 65 20 69 73 20 73 74 6f 72 65 64 20 65 6e  ore is stored en
0ac0: 63 72 79 70 74 65 64 20 62 79 20 69 74 73 20 6f  crypted by its o
0ad0: 77 6e 65 72 27 73 20 70 61 73 73 77 6f 72 64 2e  wner's password.
0ae0: 20 20 49 66 20 61 6e 20 75 6e 6c 6f 63 6b 20 6d    If an unlock m
0af0: 65 73 73 61 67 65 0a 69 73 20 72 65 63 65 69 76  essage.is receiv
0b00: 65 64 20 61 6e 64 20 74 68 65 20 63 61 6c 63 75  ed and the calcu
0b10: 6c 61 74 65 64 20 72 65 6d 61 69 6e 69 6e 67 20  lated remaining 
0b20: 70 75 62 6b 65 79 20 68 61 73 68 65 64 20 77 69  pubkey hashed wi
0b30: 74 68 20 74 68 65 20 73 61 6c 74 20 6f 70 65 6e  th the salt open
0b40: 73 20 74 68 65 0a 65 6e 63 72 79 70 74 65 64 20  s the.encrypted 
0b50: 64 72 69 76 65 2c 20 69 74 27 73 20 6c 65 67 69  drive, it's legi
0b60: 74 69 6d 61 74 65 2e 0a 0a 41 6c 6c 20 70 61 72  timate...All par
0b70: 74 69 65 73 20 6e 65 63 65 73 73 61 72 79 20 74  ties necessary t
0b80: 6f 20 6f 70 65 6e 20 74 68 65 20 64 65 76 69 63  o open the devic
0b90: 65 20 6d 75 73 74 20 63 6f 6c 6c 61 62 6f 72 61  e must collabora
0ba0: 74 65 2c 20 61 6e 64 20 69 74 20 69 73 20 70 6f  te, and it is po
0bb0: 73 73 69 62 6c 65 0a 74 6f 20 63 6f 6e 66 69 67  ssible.to config
0bc0: 75 72 65 20 74 68 65 20 64 65 76 69 63 65 73 20  ure the devices 
0bd0: 73 6f 20 74 68 61 74 20 6f 6e 6c 79 20 74 68 65  so that only the
0be0: 20 61 70 70 72 6f 70 72 69 61 74 65 20 63 68 61   appropriate cha
0bf0: 69 6e 20 6f 66 20 61 75 74 68 6f 72 69 74 69 65  in of authoritie
0c00: 73 20 63 61 6e 0a 6f 70 65 6e 20 69 74 20 28 69  s can.open it (i
0c10: 2e 65 2e 20 74 68 65 20 6c 6f 63 61 6c 20 61 75  .e. the local au
0c20: 74 68 6f 72 69 74 69 65 73 2c 20 6e 6f 74 20 74  thorities, not t
0c30: 68 65 20 46 42 49 29 2c 20 61 6e 64 20 61 6c 6c  he FBI), and all
0c40: 20 74 68 65 20 72 65 6c 65 76 61 6e 74 20 6b 65   the relevant ke
0c50: 79 73 0a 61 72 65 20 73 74 6f 72 65 64 20 69 6e  ys.are stored in
0c60: 20 74 72 75 73 74 65 64 20 65 6e 63 6c 61 76 65   trusted enclave
0c70: 73 20 28 64 65 76 69 63 65 20 69 74 73 65 6c 66  s (device itself
0c80: 29 20 61 6e 64 20 48 53 4d 73 20 28 63 6f 75 72  ) and HSMs (cour
0c90: 74 73 2c 20 73 74 61 74 65 0a 61 74 74 6f 72 6e  ts, state.attorn
0ca0: 65 79 73 20 61 6e 64 20 6d 61 6e 75 66 61 63 74  eys and manufact
0cb0: 75 72 65 72 29 2e 20 20 54 68 65 20 6f 6e 6c 79  urer).  The only
0cc0: 20 64 61 74 61 62 61 73 65 20 77 69 74 68 20 6c   database with l
0cd0: 61 72 67 65 72 20 61 6d 6f 75 6e 74 20 6f 66 20  arger amount of 
0ce0: 64 61 74 61 20 61 72 65 0a 74 68 65 20 73 69 67  data are.the sig
0cf0: 6e 61 74 75 72 65 73 20 74 68 65 20 64 65 76 69  natures the devi
0d00: 63 65 73 20 74 68 65 6d 73 65 6c 76 65 73 20 63  ces themselves c
0d10: 72 65 61 74 65 64 20 6f 6e 20 6d 61 6e 75 66 61  reated on manufa
0d20: 63 74 75 72 69 6e 67 3b 20 69 74 20 69 73 20 75  cturing; it is u
0d30: 73 65 6c 65 73 73 0a 77 69 74 68 6f 75 74 20 74  seless.without t
0d40: 68 65 20 6f 74 68 65 72 20 6b 65 79 73 2e 20 20  he other keys.  
0d50: 53 69 6e 63 65 20 6f 6e 6c 79 20 74 68 65 20 64  Since only the d
0d60: 65 76 69 63 65 20 69 74 73 65 6c 66 20 63 61 6e  evice itself can
0d70: 20 76 65 72 69 66 79 20 74 68 61 74 20 74 68 65   verify that the
0d80: 0a 73 69 67 6e 61 74 75 72 65 20 69 73 20 63 6f  .signature is co
0d90: 72 72 65 63 74 2c 20 61 6e 79 20 70 61 72 74 79  rrect, any party
0da0: 20 69 6e 20 74 68 65 20 63 68 61 69 6e 20 63 61   in the chain ca
0db0: 6e 20 62 65 20 6e 6f 6e 2d 63 6f 6f 70 65 72 61  n be non-coopera
0dc0: 74 69 76 65 20 77 69 74 68 6f 75 74 0a 74 68 65  tive without.the
0dd0: 20 6f 74 68 65 72 73 20 6b 6e 6f 77 69 6e 67 20   others knowing 
0de0: 77 68 6f 20 77 61 73 6e 27 74 20 63 6f 6f 70 65  who wasn't coope
0df0: 72 61 74 69 76 65 2e 20 20 54 68 69 73 20 6d 61  rative.  This ma
0e00: 6b 65 73 20 73 75 72 65 20 74 68 61 74 20 61 6c  kes sure that al
0e10: 6c 20 70 61 72 74 69 65 73 0a 28 65 78 63 65 70  l parties.(excep
0e20: 74 20 74 68 65 20 64 65 76 69 63 65 20 69 74 73  t the device its
0e30: 65 6c 66 29 20 61 72 65 20 74 72 75 65 6c 79 20  elf) are truely 
0e40: 63 6f 6e 76 69 6e 63 65 64 20 74 68 61 74 20 74  convinced that t
0e50: 68 65 20 63 61 73 65 20 69 73 20 6c 65 67 69 74  he case is legit
0e60: 69 6d 61 74 65 2c 0a 61 6e 64 20 6e 6f 20 70 72  imate,.and no pr
0e70: 65 73 73 75 72 65 20 66 72 6f 6d 20 6f 75 74 73  essure from outs
0e80: 69 64 65 20 63 61 6e 20 66 6f 72 63 65 20 74 68  ide can force th
0e90: 65 6d 20 74 6f 20 63 6f 6d 70 6c 79 2e 0a 0a 41  em to comply...A
0ea0: 73 20 6e 65 74 32 6f 20 69 73 20 6f 70 65 6e 20  s net2o is open 
0eb0: 73 6f 75 72 63 65 2c 20 79 6f 75 20 63 61 6e 20  source, you can 
0ec0: 28 69 6e 20 74 68 65 6f 72 79 29 20 76 65 72 69  (in theory) veri
0ed0: 66 79 20 73 74 61 74 65 6d 65 6e 74 73 20 61 62  fy statements ab
0ee0: 6f 75 74 20 61 63 74 75 61 6c 0a 62 61 63 6b 64  out actual.backd
0ef0: 6f 6f 72 73 2e 20 20 41 6e 64 20 6b 65 65 70 20  oors.  And keep 
0f00: 61 6e 20 65 79 65 20 6f 6e 20 74 68 69 73 20 70  an eye on this p
0f10: 61 67 65 2c 20 49 20 69 6e 74 65 6e 74 20 74 6f  age, I intent to
0f20: 20 70 75 62 6c 69 73 68 20 66 6e 6f 72 64 73 20   publish fnords 
0f30: 61 62 6f 75 74 0a 68 61 76 69 6e 67 20 6f 66 66  about.having off
0f40: 69 63 69 61 6c 20 62 61 63 6b 2f 66 72 6f 6e 74  icial back/front
0f50: 2f 73 69 64 65 20 64 6f 6f 72 73 2c 20 6c 65 61  /side doors, lea
0f60: 6b 79 20 72 6f 6f 66 73 20 61 6e 64 20 74 75 6e  ky roofs and tun
0f70: 6e 65 6c 73 20 72 65 67 75 6c 61 72 6c 79 2c 20  nels regularly, 
0f80: 62 75 74 0a 77 6f 6e 27 74 20 63 6f 6d 6d 69 74  but.won't commit
0f90: 20 6f 6e 20 61 6e 20 65 78 70 69 63 69 74 20 73   on an expicit s
0fa0: 63 68 65 64 75 6c 65 2e 20 20 46 6f 72 20 61 20  chedule.  For a 
0fb0: 74 72 75 65 20 66 6e 6f 72 64 20 74 6f 20 77 6f  true fnord to wo
0fc0: 72 6b 2c 20 79 6f 75 20 61 6c 77 61 79 73 0a 68  rk, you always.h
0fd0: 61 76 65 20 74 6f 20 62 65 20 77 61 72 79 2e 20  ave to be wary. 
0fe0: 20 41 6c 6c 20 74 68 65 20 67 69 74 20 63 68 65   All the git che
0ff0: 63 6b 69 6e 73 20 61 72 65 20 73 69 67 6e 65 64  ckins are signed
1000: 2e 0a 0a 46 6f 72 20 74 68 6f 73 65 20 69 6e 74  ...For those int
1010: 65 72 65 73 74 65 64 20 69 6e 20 68 69 73 74 6f  erested in histo
1020: 72 79 2c 20 77 68 65 74 68 65 72 20 74 68 65 20  ry, whether the 
1030: 4e 53 41 20 63 61 6e 20 66 6f 72 63 65 20 61 20  NSA can force a 
1040: 45 75 72 6f 70 65 61 6e 20 63 6f 6d 70 61 6e 79  European company
1050: 0a 74 6f 20 69 6e 73 74 61 6c 6c 20 61 20 62 61  .to install a ba
1060: 63 6b 64 6f 6f 72 2c 20 73 65 65 20 5b 43 72 79  ckdoor, see [Cry
1070: 70 74 6f 0a 41 47 5d 28 68 74 74 70 73 3a 2f 2f  pto.AG](https://
1080: 65 6e 2e 77 69 6b 69 70 65 64 69 61 2e 6f 72 67  en.wikipedia.org
1090: 2f 77 69 6b 69 2f 43 72 79 70 74 6f 5f 41 47 23  /wiki/Crypto_AG#
10a0: 43 6f 6d 70 72 6f 6d 69 73 65 64 5f 6d 61 63 68  Compromised_mach
10b0: 69 6e 65 73 29 0a 0a 23 23 20 57 68 61 74 20 69  ines)..## What i
10c0: 73 20 74 68 69 73 20 70 61 67 65 20 66 6f 72 3f  s this page for?
10d0: 20 23 23 0a 0a 53 6f 66 74 77 61 72 65 20 69 73   ##..Software is
10e0: 20 69 6e 68 65 72 65 6e 74 6c 79 20 62 75 67 67   inherently bugg
10f0: 79 20 e2 80 94 20 77 65 20 61 6c 6c 20 6d 61 6b  y — we all mak
1100: 65 20 6d 69 73 74 61 6b 65 73 2e 20 53 65 63 75  e mistakes. Secu
1110: 72 65 20 6e 65 74 77 6f 72 6b 69 6e 67 0a 73 6f  re networking.so
1120: 66 74 77 61 72 65 20 69 73 20 65 76 65 6e 20 77  ftware is even w
1130: 6f 72 73 65 2c 20 62 65 63 61 75 73 65 20 73 6d  orse, because sm
1140: 61 6c 6c 20 62 75 67 73 20 68 61 76 65 20 62 69  all bugs have bi
1150: 67 20 63 6f 6e 73 65 71 75 65 6e 63 65 73 2c 20  g consequences, 
1160: 61 6e 64 0a 73 65 63 75 72 69 74 79 20 62 75 67  and.security bug
1170: 73 20 75 73 75 61 6c 6c 79 20 64 6f 6e 27 74 20  s usually don't 
1180: 61 66 66 65 63 74 20 64 69 72 65 63 74 20 66 75  affect direct fu
1190: 6e 63 74 69 6f 6e 61 6c 69 74 79 2c 20 61 6e 64  nctionality, and
11a0: 20 74 68 65 72 65 66 6f 72 65 0a 63 61 6e 20 6c   therefore.can l
11b0: 75 72 65 20 69 6e 73 69 64 65 20 74 68 65 20 70  ure inside the p
11c0: 72 6f 67 72 61 6d 20 66 6f 72 20 61 20 6c 6f 6e  rogram for a lon
11d0: 67 20 74 69 6d 65 2e 20 20 41 6e 64 20 77 69 74  g time.  And wit
11e0: 68 20 74 68 65 20 4e 53 41 20 42 75 6c 6c 72 75  h the NSA Bullru
11f0: 6e 0a 70 72 6f 67 72 61 6d 2c 20 77 65 20 6e 6f  n.program, we no
1200: 74 20 6f 6e 6c 79 20 68 61 76 65 20 74 6f 20 64  t only have to d
1210: 65 61 6c 20 77 69 74 68 20 74 68 65 20 6e 6f 72  eal with the nor
1220: 6d 61 6c 2c 20 e2 80 9d 6c 61 7a 79 e2 80 9d 20  mal, ”lazy” 
1230: 62 75 67 73 2c 20 77 68 69 63 68 0a 64 6f 6e 27  bugs, which.don'
1240: 74 20 63 61 75 73 65 20 61 6e 79 20 68 61 72 6d  t cause any harm
1250: 20 75 6e 74 69 6c 20 66 6f 75 6e 64 20 28 65 69   until found (ei
1260: 74 68 65 72 20 62 79 20 68 6f 6e 65 73 74 20 73  ther by honest s
1270: 65 63 75 72 69 74 79 20 72 65 73 65 61 72 63 68  ecurity research
1280: 65 72 0a 6f 72 20 65 76 69 6c 20 63 72 69 6d 69  er.or evil crimi
1290: 6e 61 6c 73 29 2c 20 62 75 74 20 77 69 74 68 20  nals), but with 
12a0: 62 75 67 73 20 69 6e 74 65 6e 74 69 6f 6e 61 6c  bugs intentional
12b0: 6c 79 20 70 6c 61 63 65 64 2c 20 61 6e 64 20 75  ly placed, and u
12c0: 73 65 64 20 62 79 0a 74 68 65 20 73 65 63 72 65  sed by.the secre
12d0: 74 20 73 65 72 76 69 63 65 73 20 66 72 6f 6d 20  t services from 
12e0: 64 61 79 20 30 2e 0a 0a 44 65 76 65 6c 6f 70 69  day 0...Developi
12f0: 6e 67 20 69 6e 20 46 6f 72 74 68 20 69 73 20 61  ng in Forth is a
1300: 20 e2 80 9c 63 72 61 73 68 20 65 61 72 6c 79 2c   “crash early,
1310: 20 63 72 61 73 68 20 6f 66 74 65 6e e2 80 9d 20   crash often” 
1320: 65 78 65 72 63 69 73 65 2c 20 62 75 74 20 73 65  exercise, but se
1330: 63 75 72 69 74 79 0a 72 65 6c 61 74 65 64 20 62  curity.related b
1340: 75 67 73 20 64 6f 6e 27 74 20 63 72 61 73 68 20  ugs don't crash 
1350: 74 68 65 20 70 72 6f 67 72 61 6d 2e 0a 0a 6e 65  the program...ne
1360: 74 32 6f 20 69 73 20 6e 6f 74 20 72 65 61 64 79  t2o is not ready
1370: 20 66 6f 72 20 77 69 64 65 2d 73 70 72 65 61 64   for wide-spread
1380: 20 75 73 65 2c 20 73 6f 20 62 75 67 73 20 64 6f   use, so bugs do
1390: 20 68 61 70 70 65 6e 2c 20 61 6e 64 20 67 65 74   happen, and get
13a0: 0a 66 69 78 65 64 2c 20 62 75 74 20 74 68 65 20  .fixed, but the 
13b0: 62 75 67 73 20 64 65 73 63 72 69 62 65 64 20 68  bugs described h
13c0: 65 72 65 20 75 73 75 61 6c 6c 79 20 61 72 65 20  ere usually are 
13d0: 72 65 61 6c 20 62 75 67 73 20 49 20 66 6f 75 6e  real bugs I foun
13e0: 64 20 61 6e 64 0a 66 69 78 65 64 20 64 75 72 69  d and.fixed duri
13f0: 6e 67 20 64 65 76 65 6c 6f 70 6d 65 6e 74 2e 20  ng development. 
1400: 41 6c 6c 20 6f 66 20 74 68 65 6d 20 6c 6f 6f 6b  All of them look
1410: 20 6c 69 6b 65 20 70 72 6f 66 65 73 73 69 6f 6e   like profession
1420: 61 6c 6c 79 0a 69 6d 70 6c 61 6e 74 65 64 20 62  ally.implanted b
1430: 61 63 6b 64 6f 6f 72 73 20 62 79 20 74 68 65 20  ackdoors by the 
1440: 4e 53 41 2c 20 62 65 63 61 75 73 65 20 74 68 61  NSA, because tha
1450: 74 27 73 20 74 68 65 20 73 74 61 74 65 20 6f 66  t's the state of
1460: 20 74 68 65 20 61 72 74 0a 68 6f 77 20 74 6f 20   the art.how to 
1470: 69 6d 70 6c 61 6e 74 20 62 61 63 6b 64 6f 6f 72  implant backdoor
1480: 73 3a 20 49 74 20 6d 75 73 74 20 70 72 6f 76 69  s: It must provi
1490: 64 65 20 69 74 73 20 61 75 74 68 6f 72 20 77 69  de its author wi
14a0: 74 68 20 e2 80 9c 72 65 61 73 6f 6e 61 62 6c 65  th “reasonable
14b0: 0a 64 65 6e 69 61 6c e2 80 9d 2c 20 63 6c 61 69  .denial”, clai
14c0: 6d 69 6e 67 20 69 6e 63 6f 6d 70 65 74 65 6e 63  ming incompetenc
14d0: 65 2e 0a 0a 48 6f 77 65 76 65 72 2c 20 69 6e 20  e...However, in 
14e0: 6f 72 64 65 72 20 74 6f 20 67 65 74 20 74 68 69  order to get thi
14f0: 6e 67 73 20 72 69 67 68 74 2c 20 77 65 20 6e 65  ngs right, we ne
1500: 65 64 20 61 20 63 75 6c 74 75 72 65 20 6f 66 20  ed a culture of 
1510: 61 63 63 65 70 74 69 6e 67 0a 6f 75 72 20 6d 69  accepting.our mi
1520: 73 74 61 6b 65 73 2c 20 61 6e 64 20 66 69 78 69  stakes, and fixi
1530: 6e 67 20 74 68 65 6d 2e 20 20 4d 61 6e 79 20 70  ng them.  Many p
1540: 72 6f 67 72 61 6d 6d 65 72 73 20 64 65 6e 79 20  rogrammers deny 
1550: 62 75 67 73 2c 20 61 6e 64 0a 72 65 71 75 65 73  bugs, and.reques
1560: 74 20 61 74 20 6c 65 61 73 74 20 61 20 70 72 6f  t at least a pro
1570: 6f 66 20 6f 66 20 63 6f 6e 63 65 70 74 20 61 74  of of concept at
1580: 74 61 63 6b 2c 20 62 65 66 6f 72 65 20 74 68 65  tack, before the
1590: 79 20 61 63 74 75 61 6c 6c 79 20 73 74 61 72 74  y actually start
15a0: 0a 64 6f 69 6e 67 20 73 6f 6d 65 74 68 69 6e 67  .doing something
15b0: 2e 20 20 54 68 69 73 20 73 6f 72 74 20 6f 66 20  .  This sort of 
15c0: 63 75 6c 74 75 72 65 20 69 73 20 73 6f 20 77 72  culture is so wr
15d0: 6f 6e 67 3a 20 41 73 20 61 75 74 68 6f 72 20 6f  ong: As author o
15e0: 66 0a 73 65 63 75 72 69 74 79 20 63 72 69 74 69  f.security criti
15f0: 63 61 6c 20 73 79 73 74 65 6d 73 2c 20 79 6f 75  cal systems, you
1600: 20 6d 75 73 74 20 62 65 20 63 6f 6e 73 74 61 6e   must be constan
1610: 74 6c 79 20 73 63 61 72 65 64 20 62 79 20 70 65  tly scared by pe
1620: 6f 70 6c 65 0a 75 73 69 6e 67 20 65 76 65 72 79  ople.using every
1630: 20 77 61 79 20 74 6f 20 62 72 65 61 6b 20 69 6e   way to break in
1640: 74 6f 20 79 6f 75 72 20 73 6f 66 74 77 61 72 65  to your software
1650: 2c 20 61 6e 64 20 79 6f 75 20 6d 75 73 74 20 62  , and you must b
1660: 65 20 72 65 61 64 79 20 74 6f 0a 66 69 78 20 65  e ready to.fix e
1670: 76 65 72 79 20 62 75 67 2c 20 65 76 65 6e 20 6a  very bug, even j
1680: 75 73 74 20 70 6f 74 65 6e 74 69 61 6c 20 72 69  ust potential ri
1690: 73 6b 73 2c 20 62 65 66 6f 72 65 20 73 6f 6d 65  sks, before some
16a0: 6f 6e 65 20 73 68 6f 77 73 20 79 6f 75 20 61 6e  one shows you an
16b0: 0a 61 63 74 75 61 6c 20 65 78 70 6c 6f 69 74 2e  .actual exploit.
16c0: 0a 0a 23 23 20 57 61 72 72 61 6e 74 20 43 61 6e  ..## Warrant Can
16d0: 61 72 79 20 23 23 0a 0a 54 68 69 73 20 73 6f 72  ary ##..This sor
16e0: 74 20 6f 66 20 74 68 69 6e 67 20 49 27 6d 20 64  t of thing I'm d
16f0: 6f 69 6e 67 20 68 65 72 65 20 69 73 20 63 61 6c  oing here is cal
1700: 6c 65 64 20 e2 80 9c 77 61 72 72 61 6e 74 20 63  led “warrant c
1710: 61 6e 61 72 79 e2 80 9d 2c 20 6e 61 6d 65 64 0a  anary”, named.
1720: 61 66 74 65 72 20 74 68 65 20 63 61 6e 61 72 69  after the canari
1730: 65 73 20 75 73 65 64 20 62 79 20 6d 69 6e 65 72  es used by miner
1740: 73 20 77 68 69 63 68 20 61 72 65 20 6d 6f 72 65  s which are more
1750: 20 73 65 6e 73 69 74 69 76 65 20 74 6f 0a 70 6f   sensitive to.po
1760: 69 73 6f 6e 6f 75 73 20 67 61 73 20 6c 65 61 6b  isonous gas leak
1770: 73 20 74 68 61 6e 20 68 75 6d 61 6e 73 2e 20 20  s than humans.  
1780: 54 68 65 20 74 68 69 6e 67 20 77 6f 75 6c 64 20  The thing would 
1790: 62 65 20 69 6d 70 6f 73 73 69 62 6c 65 20 69 66  be impossible if
17a0: 20 74 68 65 0a 6f 74 68 65 72 20 73 69 64 65 20   the.other side 
17b0: 77 6f 75 6c 64 20 73 61 79 20 e2 80 9c 63 6f 6e  would say “con
17c0: 74 69 6e 75 65 20 77 69 74 68 20 62 75 73 69 6e  tinue with busin
17d0: 65 73 73 20 61 73 20 75 73 75 61 6c 2c 20 73 6f  ess as usual, so
17e0: 20 74 68 61 74 20 6e 6f 62 6f 64 79 0a 6b 6e 6f   that nobody.kno
17f0: 77 73 20 77 65 20 77 65 72 65 20 68 65 72 65 e2  ws we were here
1800: 80 9d 2e 20 20 54 61 6b 65 64 6f 77 6e 73 20 6c  .  Takedowns l
1810: 69 6b 65 20 74 68 65 20 6f 6e 65 20 6f 66 20 4c  ike the one of L
1820: 61 76 61 62 69 74 20 28 77 68 69 63 68 20 77 61  avabit (which wa
1830: 73 0a 74 72 69 67 67 65 72 65 64 20 62 79 20 61  s.triggered by a
1840: 6e 20 4e 53 4c 29 20 6f 72 20 6d 6f 72 65 20 72  n NSL) or more r
1850: 65 63 65 6e 74 6c 79 20 62 79 20 54 72 75 65 43  ecently by TrueC
1860: 72 79 70 74 20 28 77 68 69 63 68 20 77 65 20 64  rypt (which we d
1870: 6f 6e 27 74 0a 6b 6e 6f 77 20 77 68 79 20 74 68  on't.know why th
1880: 65 79 20 64 69 64 20 69 74 29 20 61 72 65 6e 27  ey did it) aren'
1890: 74 20 73 75 63 68 20 63 6f 6e 74 69 6e 75 61 74  t such continuat
18a0: 69 6f 6e 73 2c 20 70 65 6f 70 6c 65 20 63 61 6e  ions, people can
18b0: 20 67 75 65 73 73 20 74 68 61 74 0a 74 68 65 20   guess that.the 
18c0: 4e 53 41 20 77 61 73 20 74 68 65 72 65 2e 0a 0a  NSA was there...
18d0: 54 68 65 72 65 27 73 20 73 6f 6d 65 0a 5b 64 69  There's some.[di
18e0: 73 63 75 73 73 69 6f 6e 5d 28 68 74 74 70 73 3a  scussion](https:
18f0: 2f 2f 67 69 74 68 75 62 2e 63 6f 6d 2f 57 68 69  //github.com/Whi
1900: 73 70 65 72 53 79 73 74 65 6d 73 2f 77 68 69 73  sperSystems/whis
1910: 70 65 72 73 79 73 74 65 6d 73 2e 6f 72 67 2f 69  persystems.org/i
1920: 73 73 75 65 73 2f 33 34 23 69 73 73 75 65 63 6f  ssues/34#issueco
1930: 6d 6d 65 6e 74 2d 35 36 34 34 38 39 39 34 29 2c  mment-56448994),
1940: 0a 65 73 70 65 63 69 61 6c 6c 79 20 69 6e 69 74  .especially init
1950: 69 61 74 65 64 20 62 79 20 4d 6f 78 69 65 20 4d  iated by Moxie M
1960: 61 72 6c 69 6e 73 70 69 6b 65 2c 20 77 68 65 74  arlinspike, whet
1970: 68 65 72 20 61 20 63 61 6e 61 72 79 20 69 73 0a  her a canary is.
1980: 65 66 66 65 63 74 69 76 65 2c 20 61 6e 64 20 77  effective, and w
1990: 68 65 74 68 65 72 20 61 20 63 6f 75 72 74 20 63  hether a court c
19a0: 61 6e 20 6f 72 64 65 72 20 79 6f 75 20 74 6f 20  an order you to 
19b0: 73 69 6c 65 6e 63 65 20 28 79 65 73 2c 20 74 68  silence (yes, th
19c0: 65 79 0a 63 61 6e 29 2c 20 6f 72 20 74 6f 20 73  ey.can), or to s
19d0: 61 79 20 73 6f 6d 65 74 68 69 6e 67 20 73 70 65  ay something spe
19e0: 63 69 66 69 63 20 28 73 6f 6d 65 74 69 6d 65 73  cific (sometimes
19f0: 2c 20 74 68 65 79 20 63 61 6e 29 2c 20 62 75 74  , they can), but
1a00: 20 73 6f 20 66 61 72 2c 0a 61 20 63 6f 75 72 74   so far,.a court
1a10: 20 68 61 73 20 6e 6f 74 20 66 6f 72 63 65 64 20   has not forced 
1a20: 61 6e 79 62 6f 64 79 20 74 6f 20 67 69 76 65 20  anybody to give 
1a30: 66 61 6c 73 65 20 73 70 65 65 63 68 20 6f 6e 20  false speech on 
1a40: 68 69 73 20 6f 77 6e 0a 28 69 6e 73 74 65 61 64  his own.(instead
1a50: 20 6f 66 20 6a 75 73 74 20 61 6e 73 77 65 72 69   of just answeri
1a60: 6e 67 20 61 20 71 75 65 73 74 69 6f 6e 20 77 69  ng a question wi
1a70: 74 68 20 61 20 66 61 6c 73 65 20 e2 80 9d 4e 6f  th a false ”No
1a80: e2 80 9d 2c 20 62 65 63 61 75 73 65 0a 73 61 79  ”, because.say
1a90: 69 6e 67 20 e2 80 9c 79 65 73 e2 80 9d 20 77 6f  ing “yes” wo
1aa0: 75 6c 64 20 76 69 6f 6c 61 74 65 20 74 68 65 20  uld violate the 
1ab0: 67 61 67 20 6f 72 64 65 72 29 2e 20 20 54 68 61  gag order).  Tha
1ac0: 74 27 73 20 77 68 79 20 74 68 69 73 20 63 61 6e  t's why this can
1ad0: 61 72 79 20 69 73 0a 61 20 70 72 6f 76 61 62 6c  ary is.a provabl
1ae0: 65 20 6c 69 65 20 28 69 2e 65 2e 20 65 76 65 6e  e lie (i.e. even
1af0: 20 77 68 65 6e 20 74 68 65 20 62 75 67 73 20 77   when the bugs w
1b00: 65 72 65 20 74 68 65 72 65 2c 20 74 68 65 20 74  ere there, the t
1b10: 65 78 74 20 68 65 72 65 20 69 73 0a 63 68 65 63  ext here is.chec
1b20: 6b 65 64 20 69 6e 20 77 69 74 68 20 74 68 65 20  ked in with the 
1b30: 66 69 78 29 2e 20 20 49 20 68 61 76 65 20 6e 6f  fix).  I have no
1b40: 20 69 64 65 61 20 69 66 20 74 68 61 74 20 61 63   idea if that ac
1b50: 74 75 61 6c 6c 79 20 77 6f 72 6b 73 2c 20 61 6e  tually works, an
1b60: 64 0a 77 6f 75 6c 64 20 70 72 65 66 65 72 20 74  d.would prefer t
1b70: 6f 20 6e 65 76 65 72 20 66 69 6e 64 20 6f 75 74  o never find out
1b80: 2e 0a 0a 49 6e 74 65 6c 6c 69 67 65 6e 63 65 20  ...Intelligence 
1b90: 43 6f 6d 6d 75 6e 69 74 79 20 6d 69 67 68 74 20  Community might 
1ba0: 72 65 73 6f 72 74 20 74 6f 20 73 6f 6d 65 20 73  resort to some s
1bb0: 6f 72 74 20 6f 66 20 62 75 6c 6c 79 69 6e 67 20  ort of bullying 
1bc0: 74 6f 0a 64 69 73 72 75 70 74 20 74 68 65 20 6f  to.disrupt the o
1bd0: 70 65 72 61 74 69 6f 6e 20 6f 66 20 74 68 65 69  peration of thei
1be0: 72 20 65 6e 65 6d 69 65 73 3b 20 74 68 65 20 4e  r enemies; the N
1bf0: 53 41 20 73 65 65 6d 73 20 74 6f 20 6c 69 6b 65  SA seems to like
1c00: 0a 61 63 63 75 73 61 74 69 6f 6e 20 6f 66 20 73  .accusation of s
1c10: 65 78 75 61 6c 20 6f 66 66 65 6e 73 65 73 20 69  exual offenses i
1c20: 6e 20 74 68 65 20 66 6f 72 6d 20 6f 66 20 70 75  n the form of pu
1c30: 62 6c 69 63 20 73 68 61 6d 69 6e 67 2c 20 73 65  blic shaming, se
1c40: 65 20 66 6f 72 0a 65 78 61 6d 70 6c 65 20 4a 75  e for.example Ju
1c50: 6c 69 61 6e 20 41 73 73 61 6e 67 65 20 61 6e 64  lian Assange and
1c60: 20 4a 61 6b 65 20 41 70 70 65 6c 62 61 75 6d 2e   Jake Appelbaum.
1c70: 0a                                               .