Hex Artifact Content
Not logged in

Artifact e30dea3fc4bc90eaf6230c8dfc17fa6e210038c0:

Wiki page [Experiment: Chainsignature] by martin_vahi on 2017-05-26 18:06:58.
0000: 44 20 32 30 31 37 2d 30 35 2d 32 36 54 31 38 3a  D 2017-05-26T18:
0010: 30 36 3a 35 38 2e 30 39 34 0a 4c 20 45 78 70 65  06:58.094.L Expe
0020: 72 69 6d 65 6e 74 3a 5c 73 43 68 61 69 6e 73 69  riment:\sChainsi
0030: 67 6e 61 74 75 72 65 0a 50 20 31 34 66 66 39 32  gnature.P 14ff92
0040: 65 66 62 35 31 38 61 30 30 32 35 38 62 66 30 39  efb518a00258bf09
0050: 61 34 39 31 65 63 63 31 30 66 35 31 37 37 38 65  a491ecc10f51778e
0060: 66 36 0a 55 20 6d 61 72 74 69 6e 5f 76 61 68 69  f6.U martin_vahi
0070: 0a 57 20 32 30 33 31 0a 3c 70 3e 3c 62 3e 54 68  .W 2031.<p><b>Th
0080: 65 20 70 75 72 70 6f 73 65 20 6f 66 20 61 20 73  e purpose of a s
0090: 69 67 6e 61 74 75 72 65 20 69 73 20 74 6f 20 61  ignature is to a
00a0: 75 74 68 65 6e 74 69 63 61 74 65 20 74 68 65 20  uthenticate the 
00b0: 63 72 65 61 74 6f 72 20 6f 66 20 74 68 65 20 73  creator of the s
00c0: 69 67 6e 65 64 0a 6f 62 6a 65 63 74 2e 3c 2f 62  igned.object.</b
00d0: 3e 26 6e 62 73 70 3b 3c 2f 70 3e 0a 0a 3c 70 3e  >&nbsp;</p>..<p>
00e0: 49 6e 20 74 68 65 20 63 61 73 65 20 6f 66 20 62  In the case of b
00f0: 6c 69 6e 64 20 64 61 74 65 73 2c 20 69 6e 74 65  lind dates, inte
0100: 72 6e 65 74 20 73 68 6f 70 70 69 6e 67 20 3c 62  rnet shopping <b
0110: 3e 74 68 65 72 65 20 69 73 20 6e 6f 74 68 69 6e  >there is nothin
0120: 67 20 74 6f 0a 61 75 74 68 65 6e 74 69 63 61 74  g to.authenticat
0130: 65 20 61 74 20 74 68 65 20 66 69 72 73 74 20 65  e at the first e
0140: 78 63 68 61 6e 67 65 20 6f 66 20 69 6e 66 6f 72  xchange of infor
0150: 6d 61 74 69 6f 6e 3c 2f 62 3e 2c 20 62 65 63 61  mation</b>, beca
0160: 75 73 65 20 61 6c 6c 20 6d 65 72 63 68 61 6e 74  use all merchant
0170: 73 0a 61 6e 64 20 62 6c 69 6e 64 20 64 61 74 65  s.and blind date
0180: 20 70 61 72 74 6e 65 72 73 20 61 72 65 20 74 6f   partners are to
0190: 74 61 6c 20 73 74 72 61 6e 67 65 72 73 20 61 6e  tal strangers an
01a0: 79 77 61 79 2e 20 57 68 61 74 20 6d 61 74 74 65  yway. What matte
01b0: 72 73 20 69 73 20 74 68 61 74 20 74 68 65 0a 63  rs is that the.c
01c0: 6f 72 72 65 73 70 6f 6e 64 65 6e 63 65 20 74 68  orrespondence th
01d0: 61 74 20 66 6f 6c 6c 6f 77 73 20 74 68 65 20 66  at follows the f
01e0: 69 72 73 74 20 65 78 63 68 61 6e 67 65 20 6f 66  irst exchange of
01f0: 20 69 6e 66 6f 72 6d 61 74 69 6f 6e 20 69 73 20   information is 
0200: 77 69 74 68 20 74 68 65 20 73 61 6d 65 0a 73 74  with the same.st
0210: 72 61 6e 67 65 72 2c 20 6e 6f 74 20 77 69 74 68  ranger, not with
0220: 20 73 6f 6d 65 20 6f 74 68 65 72 20 73 74 72 61   some other stra
0230: 6e 67 65 72 2e 26 6e 62 73 70 3b 3c 2f 70 3e 0a  nger.&nbsp;</p>.
0240: 0a 3c 70 3e 3c 62 72 3e 0a 3c 2f 70 3e 0a 0a 3c  .<p><br>.</p>..<
0250: 68 31 3e 54 68 65 20 53 63 68 65 6d 65 3c 2f 68  h1>The Scheme</h
0260: 31 3e 0a 0a 3c 70 3e 54 68 65 20 73 63 68 65 6d  1>..<p>The schem
0270: 65 20 69 73 20 74 68 61 74 20 6d 65 73 73 61 67  e is that messag
0280: 65 20 4d 5f 6e 20 73 69 67 6e 61 74 75 72 65 20  e M_n signature 
0290: 69 73 20 61 20 73 65 63 75 72 65 20 68 61 73 68  is a secure hash
02a0: 20 6f 66 20 61 20 63 6f 6e 63 61 74 65 6e 61 74   of a concatenat
02b0: 69 6f 6e 0a 6f 66 20 61 6c 6c 20 6d 65 73 73 61  ion.of all messa
02c0: 67 65 73 20 73 69 6e 63 65 20 74 68 65 20 66 69  ges since the fi
02d0: 72 73 74 20 6d 65 73 73 61 67 65 2c 20 6d 65 73  rst message, mes
02e0: 73 61 67 65 20 4d 5f 6e 20 69 6e 63 6c 75 64 65  sage M_n include
02f0: 64 2e 20 49 66 20 4d 5f 31 20 69 73 20 61 20 66  d. If M_1 is a f
0300: 69 6c 65 0a 77 69 74 68 20 74 68 65 20 76 65 72  ile.with the ver
0310: 79 20 66 69 72 73 74 20 6d 65 73 73 61 67 65 20  y first message 
0320: 74 68 61 74 20 74 68 65 20 73 69 67 6e 65 72 20  that the signer 
0330: 73 65 6e 74 20 61 6e 64 20 4d 5f 32 20 69 73 20  sent and M_2 is 
0340: 74 68 65 20 32 2e 20 6d 65 73 73 61 67 65 20 74  the 2. message t
0350: 68 61 74 0a 74 68 65 20 73 69 67 6e 65 72 20 73  hat.the signer s
0360: 65 6e 74 2c 20 74 68 65 6e 20 61 20 77 61 79 20  ent, then a way 
0370: 74 6f 20 63 61 6c 63 75 6c 61 74 65 20 74 68 65  to calculate the
0380: 20 73 69 67 6e 61 74 75 72 65 20 69 73 3a 3c 2f   signature is:</
0390: 70 3e 0a 3c 70 72 65 3e 20 20 20 20 63 61 74 20  p>.<pre>    cat 
03a0: 2e 2f 4d 5f 31 2e 62 6c 6f 62 20 20 26 67 74 3b  ./M_1.blob  &gt;
03b0: 20 2e 2f 78 2e 62 6c 6f 62 20 20 20 23 20 54 68   ./x.blob   # Th
03c0: 65 20 22 26 67 74 3b 22 20 69 73 20 72 65 71 75  e "&gt;" is requ
03d0: 69 72 65 64 20 66 6f 72 20 6f 76 65 72 77 72 69  ired for overwri
03e0: 74 69 6e 67 20 74 68 65 20 6f 6c 64 20 78 2e 62  ting the old x.b
03f0: 6c 6f 62 20 2e 3c 2f 70 72 65 3e 0a 3c 70 72 65  lob .</pre>.<pre
0400: 3e 20 20 20 20 63 61 74 20 2e 2f 4d 5f 32 2e 62  >    cat ./M_2.b
0410: 6c 6f 62 20 26 67 74 3b 26 67 74 3b 20 2e 2f 78  lob &gt;&gt; ./x
0420: 2e 62 6c 6f 62 20 20 20 23 20 54 68 65 20 22 26  .blob   # The "&
0430: 67 74 3b 26 67 74 3b 22 20 69 6e 20 73 74 65 61  gt;&gt;" in stea
0440: 64 20 6f 66 20 74 68 65 20 22 26 67 74 3b 22 20  d of the "&gt;" 
0450: 69 73 20 3c 2f 70 72 65 3e 0a 3c 70 72 65 3e 20  is </pre>.<pre> 
0460: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
0470: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20                  
0480: 23 20 72 65 71 75 69 72 65 64 20 74 6f 20 61 64  # required to ad
0490: 64 20 69 6e 20 73 74 65 61 64 20 6f 66 20 6f 76  d in stead of ov
04a0: 65 72 77 72 69 74 69 6e 67 2e 3c 2f 70 72 65 3e  erwriting.</pre>
04b0: 0a 3c 70 72 65 3e 20 20 20 20 63 61 74 20 2e 2f  .<pre>    cat ./
04c0: 4d 5f 33 2e 62 6c 6f 62 20 26 67 74 3b 26 67 74  M_3.blob &gt;&gt
04d0: 3b 20 2e 2f 78 2e 62 6c 6f 62 3c 2f 70 72 65 3e  ; ./x.blob</pre>
04e0: 0a 3c 70 72 65 3e 20 20 20 20 2e 2e 2e 3c 2f 70  .<pre>    ...</p
04f0: 72 65 3e 0a 3c 70 72 65 3e 20 20 20 20 63 61 74  re>.<pre>    cat
0500: 20 2e 2f 4d 5f 6e 2e 62 6c 6f 62 20 26 67 74 3b   ./M_n.blob &gt;
0510: 26 67 74 3b 20 2e 2f 78 2e 62 6c 6f 62 3c 2f 70  &gt; ./x.blob</p
0520: 72 65 3e 0a 3c 70 72 65 3e 20 20 20 20 73 68 61  re>.<pre>    sha
0530: 32 35 36 73 75 6d 20 2e 2f 78 2e 62 6c 6f 62 20  256sum ./x.blob 
0540: 26 67 74 3b 20 2e 2f 74 68 65 5f 73 69 67 6e 61  &gt; ./the_signa
0550: 74 75 72 65 2e 74 78 74 3c 2f 70 72 65 3e 0a 0a  ture.txt</pre>..
0560: 3c 70 3e 3c 62 72 3e 0a 3c 2f 70 3e 0a 0a 3c 70  <p><br>.</p>..<p
0570: 3e 54 68 65 20 4d 5f 6e 20 6d 75 73 74 20 62 65  >The M_n must be
0580: 20 69 6e 63 6c 75 64 65 64 20 74 6f 20 74 68 65   included to the
0590: 20 73 69 67 6e 61 74 75 72 65 20 63 61 6c 63 75   signature calcu
05a0: 6c 61 74 69 6f 6e 20 78 2e 62 6c 6f 62 20 74 6f  lation x.blob to
05b0: 20 6d 61 6b 65 20 73 75 72 65 0a 74 68 61 74 20   make sure.that 
05c0: 61 6e 20 65 61 76 65 73 64 72 6f 70 70 65 72 20  an eavesdropper 
05d0: 63 61 6e 20 6e 6f 74 20 72 65 75 73 65 20 74 68  can not reuse th
05e0: 65 20 73 69 67 6e 61 74 75 72 65 20 66 6f 72 20  e signature for 
05f0: 73 69 67 6e 69 6e 67 20 69 74 73 20 6f 77 6e 20  signing its own 
0600: 6d 65 73 73 61 67 65 2e 0a 54 6f 20 6d 61 6b 65  message..To make
0610: 20 65 61 76 65 73 64 72 6f 70 70 69 6e 67 20 6d   eavesdropping m
0620: 6f 72 65 20 64 69 66 66 69 63 75 6c 74 2c 20 64  ore difficult, d
0630: 69 66 66 65 72 65 6e 74 20 6d 65 73 73 61 67 65  ifferent message
0640: 73 20 6d 69 67 68 74 20 62 65 20 73 65 6e 74 20  s might be sent 
0650: 74 68 72 6f 75 67 68 0a 64 69 66 66 65 72 65 6e  through.differen
0660: 74 20 63 68 61 6e 6e 65 6c 73 2e 26 6e 62 73 70  t channels.&nbsp
0670: 3b 3c 2f 70 3e 0a 0a 3c 70 3e 3c 62 72 3e 0a 3c  ;</p>..<p><br>.<
0680: 2f 70 3e 0a 0a 3c 68 31 3e 4f 70 74 69 6f 6e 61  /p>..<h1>Optiona
0690: 6c 20 42 6f 6f 74 73 74 72 61 70 70 69 6e 67 3c  l Bootstrapping<
06a0: 2f 68 31 3e 0a 0a 3c 70 3e 54 68 65 20 6d 65 73  /h1>..<p>The mes
06b0: 73 61 67 65 20 4d 5f 31 20 6d 69 67 68 74 20 62  sage M_1 might b
06c0: 65 20 61 63 63 6f 6d 70 61 6e 69 65 64 20 62 79  e accompanied by
06d0: 20 4d 5f 30 2c 20 77 68 69 63 68 20 6d 69 67 68   M_0, which migh
06e0: 74 20 62 65 20 73 6f 6d 65 20 62 69 74 73 74 72  t be some bitstr
06f0: 65 61 6d 0a 74 68 61 74 20 69 73 20 64 69 73 74  eam.that is dist
0700: 72 69 62 75 74 65 64 20 61 73 20 61 20 73 6d 61  ributed as a sma
0710: 6c 6c 20 70 69 65 63 65 20 6f 66 20 70 61 70 65  ll piece of pape
0720: 72 20 77 69 74 68 20 61 20 51 52 2d 63 6f 64 65  r with a QR-code
0730: 2e 20 47 69 76 65 6e 20 74 68 61 74 20 4e 53 41  . Given that NSA
0740: 0a 61 6e 64 20 61 6c 69 6b 65 20 64 6f 20 6e 6f  .and alike do no
0750: 74 20 69 6e 74 65 72 63 65 70 74 20 70 61 70 65  t intercept pape
0760: 72 2d 6d 61 69 6c 2f 73 6e 61 69 6c 2d 6d 61 69  r-mail/snail-mai
0770: 6c 20 77 69 74 68 6f 75 74 20 73 70 65 63 69 66  l without specif
0780: 69 63 61 6c 6c 79 20 74 61 72 67 65 74 69 6e 67  ically targeting
0790: 0a 73 6f 6d 65 6f 6e 65 2c 20 62 65 63 61 75 73  .someone, becaus
07a0: 65 20 74 68 65 20 63 6f 73 74 20 6f 66 20 64 6f  e the cost of do
07b0: 69 6e 67 20 70 68 79 73 69 63 61 6c 20 70 72 6f  ing physical pro
07c0: 63 65 73 73 69 6e 67 20 6f 66 20 70 68 79 73 69  cessing of physi
07d0: 63 61 6c 20 6c 65 74 74 65 72 73 20 69 73 0a 74  cal letters is.t
07e0: 6f 6f 20 68 69 67 68 2c 20 73 6f 6d 65 20 69 6e  oo high, some in
07f0: 69 74 69 61 6c 20 73 79 6d 6d 65 74 72 69 63 20  itial symmetric 
0800: 63 72 79 70 74 6f 67 72 61 70 68 79 20 6b 65 79  cryptography key
0810: 73 20 61 6e 64 20 74 68 65 20 4d 5f 30 20 6d 69  s and the M_0 mi
0820: 67 68 74 20 62 65 20 73 65 6e 74 20 62 79 0a 75  ght be sent by.u
0830: 73 69 6e 67 20 73 6e 61 69 6c 2d 6d 61 69 6c 2e  sing snail-mail.
0840: 26 6e 62 73 70 3b 3c 2f 70 3e 0a 0a 3c 70 3e 3c  &nbsp;</p>..<p><
0850: 62 72 3e 0a 3c 2f 70 3e 0a 0a 3c 70 3e 3c 62 72  br>.</p>..<p><br
0860: 3e 0a 3c 2f 70 3e 0a 0a 5a 20 62 31 63 66 37 30  >.</p>..Z b1cf70
0870: 38 34 38 37 66 63 64 65 36 64 30 62 65 64 35 61  8487fcde6d0bed5a
0880: 37 37 38 37 37 62 61 64 31 66 0a                 77877bad1f.