summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNick Mathewson <nickm@torproject.org>2004-01-31 10:12:58 +0000
committerNick Mathewson <nickm@torproject.org>2004-01-31 10:12:58 +0000
commit48c2816bef33e81d59a93ea8246ac2c6b849b785 (patch)
treea4acce7834a374b6633c3a349fdd81f40a3e4d92
parent4e7a2a01741d4ffb4bbe3385e20282a738331aef (diff)
downloadtor-48c2816bef33e81d59a93ea8246ac2c6b849b785.tar.gz
tor-48c2816bef33e81d59a93ea8246ac2c6b849b785.zip
Add an interaction diagram to CVS. It still to be edited, scaled, and
incorporated into the paper. Maybe more. A good caption might be: "Alice builds a two-hop circuit and begins fetching a web page." svn:r1042
-rw-r--r--doc/interaction.eps463
-rw-r--r--doc/interaction.fig122
-rw-r--r--doc/interaction.pdfbin0 -> 35551 bytes
3 files changed, 585 insertions, 0 deletions
diff --git a/doc/interaction.eps b/doc/interaction.eps
new file mode 100644
index 0000000000..edb3119f05
--- /dev/null
+++ b/doc/interaction.eps
@@ -0,0 +1,463 @@
+%!PS-Adobe-2.0 EPSF-2.0
+%%Title: interaction.fig
+%%Creator: fig2dev Version 3.2 Patchlevel 3d
+%%CreationDate: Sat Jan 31 05:09:42 2004
+%%For: nickm@totoro.wangafu.net ()
+%%BoundingBox: 0 0 449 235
+%%Magnification: 1.0000
+%%EndComments
+/$F2psDict 200 dict def
+$F2psDict begin
+$F2psDict /mtrx matrix put
+/col-1 {0 setgray} bind def
+/col0 {0.000 0.000 0.000 srgb} bind def
+/col1 {0.000 0.000 1.000 srgb} bind def
+/col2 {0.000 1.000 0.000 srgb} bind def
+/col3 {0.000 1.000 1.000 srgb} bind def
+/col4 {1.000 0.000 0.000 srgb} bind def
+/col5 {1.000 0.000 1.000 srgb} bind def
+/col6 {1.000 1.000 0.000 srgb} bind def
+/col7 {1.000 1.000 1.000 srgb} bind def
+/col8 {0.000 0.000 0.560 srgb} bind def
+/col9 {0.000 0.000 0.690 srgb} bind def
+/col10 {0.000 0.000 0.820 srgb} bind def
+/col11 {0.530 0.810 1.000 srgb} bind def
+/col12 {0.000 0.560 0.000 srgb} bind def
+/col13 {0.000 0.690 0.000 srgb} bind def
+/col14 {0.000 0.820 0.000 srgb} bind def
+/col15 {0.000 0.560 0.560 srgb} bind def
+/col16 {0.000 0.690 0.690 srgb} bind def
+/col17 {0.000 0.820 0.820 srgb} bind def
+/col18 {0.560 0.000 0.000 srgb} bind def
+/col19 {0.690 0.000 0.000 srgb} bind def
+/col20 {0.820 0.000 0.000 srgb} bind def
+/col21 {0.560 0.000 0.560 srgb} bind def
+/col22 {0.690 0.000 0.690 srgb} bind def
+/col23 {0.820 0.000 0.820 srgb} bind def
+/col24 {0.500 0.190 0.000 srgb} bind def
+/col25 {0.630 0.250 0.000 srgb} bind def
+/col26 {0.750 0.380 0.000 srgb} bind def
+/col27 {1.000 0.500 0.500 srgb} bind def
+/col28 {1.000 0.630 0.630 srgb} bind def
+/col29 {1.000 0.750 0.750 srgb} bind def
+/col30 {1.000 0.880 0.880 srgb} bind def
+/col31 {1.000 0.840 0.000 srgb} bind def
+
+end
+save
+newpath 0 235 moveto 0 0 lineto 449 0 lineto 449 235 lineto closepath clip newpath
+-62.3 239.8 translate
+1 -1 scale
+
+/cp {closepath} bind def
+/ef {eofill} bind def
+/gr {grestore} bind def
+/gs {gsave} bind def
+/sa {save} bind def
+/rs {restore} bind def
+/l {lineto} bind def
+/m {moveto} bind def
+/rm {rmoveto} bind def
+/n {newpath} bind def
+/s {stroke} bind def
+/sh {show} bind def
+/slc {setlinecap} bind def
+/slj {setlinejoin} bind def
+/slw {setlinewidth} bind def
+/srgb {setrgbcolor} bind def
+/rot {rotate} bind def
+/sc {scale} bind def
+/sd {setdash} bind def
+/ff {findfont} bind def
+/sf {setfont} bind def
+/scf {scalefont} bind def
+/sw {stringwidth} bind def
+/tr {translate} bind def
+/tnt {dup dup currentrgbcolor
+ 4 -2 roll dup 1 exch sub 3 -1 roll mul add
+ 4 -2 roll dup 1 exch sub 3 -1 roll mul add
+ 4 -2 roll dup 1 exch sub 3 -1 roll mul add srgb}
+ bind def
+/shd {dup dup currentrgbcolor 4 -2 roll mul 4 -2 roll mul
+ 4 -2 roll mul srgb} bind def
+/reencdict 12 dict def /ReEncode { reencdict begin
+/newcodesandnames exch def /newfontname exch def /basefontname exch def
+/basefontdict basefontname findfont def /newfont basefontdict maxlength dict def
+basefontdict { exch dup /FID ne { dup /Encoding eq
+{ exch dup length array copy newfont 3 1 roll put }
+{ exch newfont 3 1 roll put } ifelse } { pop pop } ifelse } forall
+newfont /FontName newfontname put newcodesandnames aload pop
+128 1 255 { newfont /Encoding get exch /.notdef put } for
+newcodesandnames length 2 idiv { newfont /Encoding get 3 1 roll put } repeat
+newfontname newfont definefont pop end } def
+/isovec [
+8#055 /minus 8#200 /grave 8#201 /acute 8#202 /circumflex 8#203 /tilde
+8#204 /macron 8#205 /breve 8#206 /dotaccent 8#207 /dieresis
+8#210 /ring 8#211 /cedilla 8#212 /hungarumlaut 8#213 /ogonek 8#214 /caron
+8#220 /dotlessi 8#230 /oe 8#231 /OE
+8#240 /space 8#241 /exclamdown 8#242 /cent 8#243 /sterling
+8#244 /currency 8#245 /yen 8#246 /brokenbar 8#247 /section 8#250 /dieresis
+8#251 /copyright 8#252 /ordfeminine 8#253 /guillemotleft 8#254 /logicalnot
+8#255 /hyphen 8#256 /registered 8#257 /macron 8#260 /degree 8#261 /plusminus
+8#262 /twosuperior 8#263 /threesuperior 8#264 /acute 8#265 /mu 8#266 /paragraph
+8#267 /periodcentered 8#270 /cedilla 8#271 /onesuperior 8#272 /ordmasculine
+8#273 /guillemotright 8#274 /onequarter 8#275 /onehalf
+8#276 /threequarters 8#277 /questiondown 8#300 /Agrave 8#301 /Aacute
+8#302 /Acircumflex 8#303 /Atilde 8#304 /Adieresis 8#305 /Aring
+8#306 /AE 8#307 /Ccedilla 8#310 /Egrave 8#311 /Eacute
+8#312 /Ecircumflex 8#313 /Edieresis 8#314 /Igrave 8#315 /Iacute
+8#316 /Icircumflex 8#317 /Idieresis 8#320 /Eth 8#321 /Ntilde 8#322 /Ograve
+8#323 /Oacute 8#324 /Ocircumflex 8#325 /Otilde 8#326 /Odieresis 8#327 /multiply
+8#330 /Oslash 8#331 /Ugrave 8#332 /Uacute 8#333 /Ucircumflex
+8#334 /Udieresis 8#335 /Yacute 8#336 /Thorn 8#337 /germandbls 8#340 /agrave
+8#341 /aacute 8#342 /acircumflex 8#343 /atilde 8#344 /adieresis 8#345 /aring
+8#346 /ae 8#347 /ccedilla 8#350 /egrave 8#351 /eacute
+8#352 /ecircumflex 8#353 /edieresis 8#354 /igrave 8#355 /iacute
+8#356 /icircumflex 8#357 /idieresis 8#360 /eth 8#361 /ntilde 8#362 /ograve
+8#363 /oacute 8#364 /ocircumflex 8#365 /otilde 8#366 /odieresis 8#367 /divide
+8#370 /oslash 8#371 /ugrave 8#372 /uacute 8#373 /ucircumflex
+8#374 /udieresis 8#375 /yacute 8#376 /thorn 8#377 /ydieresis] def
+/Times-Bold /Times-Bold-iso isovec ReEncode
+/Times-Roman /Times-Roman-iso isovec ReEncode
+/$F2psBegin {$F2psDict begin /$F2psEnteredState save def} def
+/$F2psEnd {$F2psEnteredState restore end} def
+
+$F2psBegin
+10 setmiterlimit
+ 0.06000 0.06000 sc
+%
+% Fig objects follow
+%
+% Polyline
+15.000 slw
+n 6000 300 m
+ 6000 3975 l gs col0 s gr
+% Polyline
+7.500 slw
+gs clippath
+3615 555 m 3615 495 l 3464 495 l 3584 525 l 3464 555 l cp
+eoclip
+n 1200 525 m
+ 3600 525 l gs col0 s gr gr
+
+% arrowhead
+n 3464 555 m 3584 525 l 3464 495 l 3464 555 l cp gs 0.00 setgray ef gr col0 s
+% Polyline
+gs clippath
+1185 795 m 1185 855 l 1336 855 l 1216 825 l 1336 795 l cp
+eoclip
+n 3600 825 m
+ 1200 825 l gs col0 s gr gr
+
+% arrowhead
+n 1336 795 m 1216 825 l 1336 855 l 1336 795 l cp gs 0.00 setgray ef gr col0 s
+% Polyline
+15.000 slw
+n 1200 300 m
+ 1200 3975 l gs col0 s gr
+% Polyline
+7.500 slw
+gs clippath
+3615 1155 m 3615 1095 l 3464 1095 l 3584 1125 l 3464 1155 l cp
+eoclip
+n 1200 1125 m
+ 3600 1125 l gs col0 s gr gr
+
+% arrowhead
+n 3464 1155 m 3584 1125 l 3464 1095 l 3464 1155 l cp gs 0.00 setgray ef gr col0 s
+% Polyline
+15.000 slw
+n 3600 300 m
+ 3600 3975 l gs col0 s gr
+% Polyline
+7.500 slw
+gs clippath
+6015 1230 m 6015 1170 l 5864 1170 l 5984 1200 l 5864 1230 l cp
+eoclip
+n 3600 1200 m
+ 6000 1200 l gs col0 s gr gr
+
+% arrowhead
+n 5864 1230 m 5984 1200 l 5864 1170 l 5864 1230 l cp gs 0.00 setgray ef gr col0 s
+% Polyline
+gs clippath
+3585 1470 m 3585 1530 l 3736 1530 l 3616 1500 l 3736 1470 l cp
+eoclip
+n 6000 1500 m
+ 3600 1500 l gs col0 s gr gr
+
+% arrowhead
+n 3736 1470 m 3616 1500 l 3736 1530 l 3736 1470 l cp gs 0.00 setgray ef gr col0 s
+% Polyline
+gs clippath
+1185 1545 m 1185 1605 l 1336 1605 l 1216 1575 l 1336 1545 l cp
+eoclip
+n 3600 1575 m
+ 1200 1575 l gs col0 s gr gr
+
+% arrowhead
+n 1336 1545 m 1216 1575 l 1336 1605 l 1336 1545 l cp gs 0.00 setgray ef gr col0 s
+% Polyline
+ [15 45] 45 sd
+n 1050 1800 m
+ 8325 1800 l gs col0 s gr [] 0 sd
+% Polyline
+gs clippath
+3615 2130 m 3615 2070 l 3464 2070 l 3584 2100 l 3464 2130 l cp
+eoclip
+n 1200 2100 m
+ 3600 2100 l gs col0 s gr gr
+
+% arrowhead
+n 3464 2130 m 3584 2100 l 3464 2070 l 3464 2130 l cp gs 0.00 setgray ef gr col0 s
+% Polyline
+gs clippath
+6015 2205 m 6015 2145 l 5864 2145 l 5984 2175 l 5864 2205 l cp
+eoclip
+n 3600 2175 m
+ 6000 2175 l gs col0 s gr gr
+
+% arrowhead
+n 5864 2205 m 5984 2175 l 5864 2145 l 5864 2205 l cp gs 0.00 setgray ef gr col0 s
+% Polyline
+ [60] 0 sd
+gs clippath
+8190 2430 m 8190 2370 l 8039 2370 l 8159 2400 l 8039 2430 l cp
+5985 2370 m 5985 2430 l 6136 2430 l 6016 2400 l 6136 2370 l cp
+eoclip
+n 6000 2400 m
+ 8175 2400 l gs col0 s gr gr
+ [] 0 sd
+% arrowhead
+n 6136 2370 m 6016 2400 l 6136 2430 l 6136 2370 l cp gs 0.00 setgray ef gr col0 s
+% arrowhead
+n 8039 2430 m 8159 2400 l 8039 2370 l 8039 2430 l cp gs 0.00 setgray ef gr col0 s
+% Polyline
+gs clippath
+3585 2520 m 3585 2580 l 3736 2580 l 3616 2550 l 3736 2520 l cp
+eoclip
+n 6000 2550 m
+ 3600 2550 l gs col0 s gr gr
+
+% arrowhead
+n 3736 2520 m 3616 2550 l 3736 2580 l 3736 2520 l cp gs 0.00 setgray ef gr col0 s
+% Polyline
+gs clippath
+1185 2595 m 1185 2655 l 1336 2655 l 1216 2625 l 1336 2595 l cp
+eoclip
+n 3600 2625 m
+ 1200 2625 l gs col0 s gr gr
+
+% arrowhead
+n 1336 2595 m 1216 2625 l 1336 2655 l 1336 2595 l cp gs 0.00 setgray ef gr col0 s
+% Polyline
+gs clippath
+3615 3030 m 3615 2970 l 3464 2970 l 3584 3000 l 3464 3030 l cp
+eoclip
+n 1200 3000 m
+ 3600 3000 l gs col0 s gr gr
+
+% arrowhead
+n 3464 3030 m 3584 3000 l 3464 2970 l 3464 3030 l cp gs 0.00 setgray ef gr col0 s
+% Polyline
+gs clippath
+6015 3105 m 6015 3045 l 5864 3045 l 5984 3075 l 5864 3105 l cp
+eoclip
+n 3600 3075 m
+ 6000 3075 l gs col0 s gr gr
+
+% arrowhead
+n 5864 3105 m 5984 3075 l 5864 3045 l 5864 3105 l cp gs 0.00 setgray ef gr col0 s
+% Polyline
+gs clippath
+8190 3180 m 8190 3120 l 8039 3120 l 8159 3150 l 8039 3180 l cp
+eoclip
+n 6000 3150 m
+ 8175 3150 l gs col0 s gr gr
+
+% arrowhead
+n 8039 3180 m 8159 3150 l 8039 3120 l 8039 3180 l cp gs 0.00 setgray ef gr col0 s
+% Polyline
+gs clippath
+5985 3420 m 5985 3480 l 6136 3480 l 6016 3450 l 6136 3420 l cp
+eoclip
+n 8175 3450 m
+ 6000 3450 l gs col0 s gr gr
+
+% arrowhead
+n 6136 3420 m 6016 3450 l 6136 3480 l 6136 3420 l cp gs 0.00 setgray ef gr col0 s
+% Polyline
+gs clippath
+5985 3495 m 5985 3555 l 6136 3555 l 6016 3525 l 6136 3495 l cp
+eoclip
+n 8175 3525 m
+ 6000 3525 l gs col0 s gr gr
+
+% arrowhead
+n 6136 3495 m 6016 3525 l 6136 3555 l 6136 3495 l cp gs 0.00 setgray ef gr col0 s
+% Polyline
+gs clippath
+5985 3570 m 5985 3630 l 6136 3630 l 6016 3600 l 6136 3570 l cp
+eoclip
+n 8175 3600 m
+ 6000 3600 l gs col0 s gr gr
+
+% arrowhead
+n 6136 3570 m 6016 3600 l 6136 3630 l 6136 3570 l cp gs 0.00 setgray ef gr col0 s
+% Polyline
+gs clippath
+3585 3495 m 3585 3555 l 3736 3555 l 3616 3525 l 3736 3495 l cp
+eoclip
+n 6000 3525 m
+ 3600 3525 l gs col0 s gr gr
+
+% arrowhead
+n 3736 3495 m 3616 3525 l 3736 3555 l 3736 3495 l cp gs 0.00 setgray ef gr col0 s
+% Polyline
+gs clippath
+3585 3645 m 3585 3705 l 3736 3705 l 3616 3675 l 3736 3645 l cp
+eoclip
+n 6000 3675 m
+ 3600 3675 l gs col0 s gr gr
+
+% arrowhead
+n 3736 3645 m 3616 3675 l 3736 3705 l 3736 3645 l cp gs 0.00 setgray ef gr col0 s
+% Polyline
+gs clippath
+3585 3570 m 3585 3630 l 3736 3630 l 3616 3600 l 3736 3570 l cp
+eoclip
+n 6000 3600 m
+ 3600 3600 l gs col0 s gr gr
+
+% arrowhead
+n 3736 3570 m 3616 3600 l 3736 3630 l 3736 3570 l cp gs 0.00 setgray ef gr col0 s
+% Polyline
+gs clippath
+1185 3645 m 1185 3705 l 1336 3705 l 1216 3675 l 1336 3645 l cp
+eoclip
+n 3600 3675 m
+ 1200 3675 l gs col0 s gr gr
+
+% arrowhead
+n 1336 3645 m 1216 3675 l 1336 3705 l 1336 3645 l cp gs 0.00 setgray ef gr col0 s
+% Polyline
+gs clippath
+1185 3720 m 1185 3780 l 1336 3780 l 1216 3750 l 1336 3720 l cp
+eoclip
+n 3600 3750 m
+ 1200 3750 l gs col0 s gr gr
+
+% arrowhead
+n 1336 3720 m 1216 3750 l 1336 3780 l 1336 3720 l cp gs 0.00 setgray ef gr col0 s
+% Polyline
+gs clippath
+1185 3795 m 1185 3855 l 1336 3855 l 1216 3825 l 1336 3795 l cp
+eoclip
+n 3600 3825 m
+ 1200 3825 l gs col0 s gr gr
+
+% arrowhead
+n 1336 3795 m 1216 3825 l 1336 3855 l 1336 3795 l cp gs 0.00 setgray ef gr col0 s
+% Polyline
+15.000 slw
+n 8175 300 m
+ 8175 3975 l gs col0 s gr
+% Polyline
+7.500 slw
+n 6300 825 m 7950 825 l 7950 1725 l 6300 1725 l
+ cp gs col7 1.00 shd ef gr gs col0 s gr
+/Times-Bold-iso ff 180.00 scf sf
+3375 225 m
+gs 1 -1 sc (OR 1) col0 sh gr
+/Times-Bold-iso ff 180.00 scf sf
+1050 225 m
+gs 1 -1 sc (Alice) col0 sh gr
+/Times-Bold-iso ff 180.00 scf sf
+5775 225 m
+gs 1 -1 sc (OR 2) col0 sh gr
+/Times-Roman-iso ff 150.00 scf sf
+6075 3075 m
+gs 1 -1 sc ("HTTP GET...") col0 sh gr
+/Times-Roman-iso ff 150.00 scf sf
+4800 3975 m
+gs 1 -1 sc (...) dup sw pop 2 div neg 0 rm col0 sh gr
+/Times-Roman-iso ff 150.00 scf sf
+7125 3975 m
+gs 1 -1 sc (...) dup sw pop 2 div neg 0 rm col0 sh gr
+/Times-Roman-iso ff 150.00 scf sf
+2400 3975 m
+gs 1 -1 sc (...) dup sw pop 2 div neg 0 rm col0 sh gr
+/Times-Roman-iso ff 150.00 scf sf
+7125 2325 m
+gs 1 -1 sc (\(TCP handshake\)) dup sw pop 2 div neg 0 rm col0 sh gr
+/Times-Bold-iso ff 180.00 scf sf
+7875 225 m
+gs 1 -1 sc (website) col0 sh gr
+/Times-Roman-iso ff 150.00 scf sf
+7125 1425 m
+gs 1 -1 sc ({X}--AES encryption) dup sw pop 2 div neg 0 rm col0 sh gr
+/Times-Roman-iso ff 150.00 scf sf
+7125 1200 m
+gs 1 -1 sc (E\(x\)--RSA encryption) dup sw pop 2 div neg 0 rm col0 sh gr
+/Times-Roman-iso ff 150.00 scf sf
+7125 975 m
+gs 1 -1 sc (Legend:) dup sw pop 2 div neg 0 rm col0 sh gr
+/Times-Roman-iso ff 150.00 scf sf
+2400 225 m
+gs 1 -1 sc (\(link is TLS-encrypted\)) dup sw pop 2 div neg 0 rm col0 sh gr
+/Times-Roman-iso ff 150.00 scf sf
+1275 1050 m
+gs 1 -1 sc (Relay c1 {Extend, OR2, E\(g^x2\)}) col0 sh gr
+/Times-Roman-iso ff 150.00 scf sf
+1275 2025 m
+gs 1 -1 sc (Relay c1{{Begin <website>:80}}) col0 sh gr
+/Times-Roman-iso ff 150.00 scf sf
+3525 1500 m
+gs 1 -1 sc (Relay c1 {Extended, g^y2, H\(K2\)}) dup sw pop neg 0 rm col0 sh gr
+/Times-Roman-iso ff 150.00 scf sf
+3675 2100 m
+gs 1 -1 sc (Relay c2{Begin <website>:80}) col0 sh gr
+/Times-Roman-iso ff 150.00 scf sf
+3525 2550 m
+gs 1 -1 sc (Relay c1{{Connected}}) dup sw pop neg 0 rm col0 sh gr
+/Times-Roman-iso ff 150.00 scf sf
+5925 2475 m
+gs 1 -1 sc (Relay c2{Connected}) dup sw pop neg 0 rm col0 sh gr
+/Times-Roman-iso ff 150.00 scf sf
+1275 2925 m
+gs 1 -1 sc (Relay c1{{Data, "HTTP GET..."}}) col0 sh gr
+/Times-Roman-iso ff 150.00 scf sf
+3675 3000 m
+gs 1 -1 sc (Relay c2{Data, "HTTP GET..."}) col0 sh gr
+/Times-Roman-iso ff 150.00 scf sf
+4800 225 m
+gs 1 -1 sc (\(link is TLS encryped\)) dup sw pop 2 div neg 0 rm col0 sh gr
+/Times-Roman-iso ff 150.00 scf sf
+7050 225 m
+gs 1 -1 sc (\(unencrypted\)) dup sw pop 2 div neg 0 rm col0 sh gr
+/Times-Roman-iso ff 150.00 scf sf
+7125 1650 m
+gs 1 -1 sc (cN--a circID) dup sw pop 2 div neg 0 rm col0 sh gr
+/Times-Roman-iso ff 150.00 scf sf
+3525 3600 m
+gs 1 -1 sc (Relay c1{{Data, \(r response\)}}) dup sw pop neg 0 rm col0 sh gr
+/Times-Roman-iso ff 150.00 scf sf
+8100 3375 m
+gs 1 -1 sc (\(response\)) dup sw pop neg 0 rm col0 sh gr
+/Times-Roman-iso ff 150.00 scf sf
+5925 3450 m
+gs 1 -1 sc (Relay c2{Data, \(response\)}) dup sw pop neg 0 rm col0 sh gr
+/Times-Roman-iso ff 150.00 scf sf
+5925 1425 m
+gs 1 -1 sc (Created c2, g^y2, H\(K2\)) dup sw pop neg 0 rm col0 sh gr
+/Times-Roman-iso ff 150.00 scf sf
+3675 1125 m
+gs 1 -1 sc (Create c2, E\(g^x2\)) col0 sh gr
+/Times-Roman-iso ff 150.00 scf sf
+1275 450 m
+gs 1 -1 sc (Create c1, E\(g^x1\)) col0 sh gr
+/Times-Roman-iso ff 150.00 scf sf
+3525 750 m
+gs 1 -1 sc (Created c1, g^y1, H\(K1\)) dup sw pop neg 0 rm col0 sh gr
+$F2psEnd
+rs
diff --git a/doc/interaction.fig b/doc/interaction.fig
new file mode 100644
index 0000000000..d7c47f9dbf
--- /dev/null
+++ b/doc/interaction.fig
@@ -0,0 +1,122 @@
+#FIG 3.2
+Landscape
+Center
+Inches
+Letter
+100.00
+Single
+-2
+1200 2
+2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2
+ 6000 300 6000 3975
+2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 1 0 2
+ 1 1 1.00 60.00 120.00
+ 1200 525 3600 525
+2 1 0 1 0 7 50 0 -1 0.000 0 0 -1 1 0 2
+ 1 1 1.00 60.00 120.00
+ 3600 825 1200 825
+2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2
+ 1200 300 1200 3975
+2 1 0 1 0 7 50 0 -1 3.000 0 0 -1 1 0 2
+ 1 1 1.00 60.00 120.00
+ 1200 1125 3600 1125
+2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2
+ 3600 300 3600 3975
+2 1 0 1 0 7 50 0 -1 3.000 0 0 -1 1 0 2
+ 1 1 1.00 60.00 120.00
+ 3600 1200 6000 1200
+2 1 0 1 0 7 50 0 -1 3.000 0 0 -1 1 0 2
+ 1 1 1.00 60.00 120.00
+ 6000 1500 3600 1500
+2 1 0 1 0 7 50 0 -1 3.000 0 0 -1 1 0 2
+ 1 1 1.00 60.00 120.00
+ 3600 1575 1200 1575
+2 1 2 1 0 7 50 0 -1 3.000 0 0 -1 0 0 2
+ 1050 1800 8325 1800
+2 1 0 1 0 7 50 0 -1 3.000 0 0 -1 1 0 2
+ 1 1 1.00 60.00 120.00
+ 1200 2100 3600 2100
+2 1 0 1 0 7 50 0 -1 3.000 0 0 -1 1 0 2
+ 1 1 1.00 60.00 120.00
+ 3600 2175 6000 2175
+2 1 1 1 0 7 50 0 -1 4.000 0 0 -1 1 1 2
+ 1 1 1.00 60.00 120.00
+ 1 1 1.00 60.00 120.00
+ 6000 2400 8175 2400
+2 1 0 1 0 7 50 0 -1 3.000 0 0 -1 1 0 2
+ 1 1 1.00 60.00 120.00
+ 6000 2550 3600 2550
+2 1 0 1 0 7 50 0 -1 3.000 0 0 -1 1 0 2
+ 1 1 1.00 60.00 120.00
+ 3600 2625 1200 2625
+2 1 0 1 0 7 50 0 -1 3.000 0 0 -1 1 0 2
+ 1 1 1.00 60.00 120.00
+ 1200 3000 3600 3000
+2 1 0 1 0 7 50 0 -1 3.000 0 0 -1 1 0 2
+ 1 1 1.00 60.00 120.00
+ 3600 3075 6000 3075
+2 1 0 1 0 7 50 0 -1 3.000 0 0 -1 1 0 2
+ 1 1 1.00 60.00 120.00
+ 6000 3150 8175 3150
+2 1 0 1 0 7 50 0 -1 3.000 0 0 -1 1 0 2
+ 1 1 1.00 60.00 120.00
+ 8175 3450 6000 3450
+2 1 0 1 0 7 50 0 -1 3.000 0 0 -1 1 0 2
+ 1 1 1.00 60.00 120.00
+ 8175 3525 6000 3525
+2 1 0 1 0 7 50 0 -1 3.000 0 0 -1 1 0 2
+ 1 1 1.00 60.00 120.00
+ 8175 3600 6000 3600
+2 1 0 1 0 7 50 0 -1 3.000 0 0 -1 1 0 2
+ 1 1 1.00 60.00 120.00
+ 6000 3525 3600 3525
+2 1 0 1 0 7 50 0 -1 3.000 0 0 -1 1 0 2
+ 1 1 1.00 60.00 120.00
+ 6000 3675 3600 3675
+2 1 0 1 0 7 50 0 -1 3.000 0 0 -1 1 0 2
+ 1 1 1.00 60.00 120.00
+ 6000 3600 3600 3600
+2 1 0 1 0 7 50 0 -1 3.000 0 0 -1 1 0 2
+ 1 1 1.00 60.00 120.00
+ 3600 3675 1200 3675
+2 1 0 1 0 7 50 0 -1 3.000 0 0 -1 1 0 2
+ 1 1 1.00 60.00 120.00
+ 3600 3750 1200 3750
+2 1 0 1 0 7 50 0 -1 3.000 0 0 -1 1 0 2
+ 1 1 1.00 60.00 120.00
+ 3600 3825 1200 3825
+2 1 0 2 0 7 50 0 -1 0.000 0 0 -1 0 0 2
+ 8175 300 8175 3975
+2 2 0 1 0 7 50 0 20 3.000 0 0 -1 0 0 5
+ 6300 825 7950 825 7950 1725 6300 1725 6300 825
+4 0 0 50 0 2 12 0.0000 4 135 450 3375 225 OR 1\001
+4 0 0 50 0 2 12 0.0000 4 135 420 1050 225 Alice\001
+4 0 0 50 0 2 12 0.0000 4 135 450 5775 225 OR 2\001
+4 0 0 50 0 0 10 0.0000 4 105 960 6075 3075 "HTTP GET..."\001
+4 1 0 50 0 0 10 0.0000 4 15 135 4800 3975 ...\001
+4 1 0 50 0 0 10 0.0000 4 15 135 7125 3975 ...\001
+4 1 0 50 0 0 10 0.0000 4 15 135 2400 3975 ...\001
+4 1 0 50 0 0 10 0.0000 4 135 1050 7125 2325 (TCP handshake)\001
+4 0 0 50 0 2 12 0.0000 4 135 630 7875 225 website\001
+4 1 0 50 0 0 10 0.0000 4 135 1335 7125 1425 {X}--AES encryption\001
+4 1 0 50 0 0 10 0.0000 4 135 1410 7125 1200 E(x)--RSA encryption\001
+4 1 0 50 0 0 10 0.0000 4 135 480 7125 975 Legend:\001
+4 1 0 50 0 0 10 0.0000 4 135 1455 2400 225 (link is TLS-encrypted)\001
+4 0 0 50 0 0 10 0.0000 4 135 2085 1275 1050 Relay c1 {Extend, OR2, E(g^x2)}\001
+4 0 0 50 0 0 10 0.0000 4 135 1965 1275 2025 Relay c1{{Begin <website>:80}}\001
+4 2 0 50 0 0 10 0.0000 4 135 2190 3525 1500 Relay c1 {Extended, g^y2, H(K2)}\001
+4 0 0 50 0 0 10 0.0000 4 135 1845 3675 2100 Relay c2{Begin <website>:80}\001
+4 2 0 50 0 0 10 0.0000 4 135 1410 3525 2550 Relay c1{{Connected}}\001
+4 2 0 50 0 0 10 0.0000 4 135 1290 5925 2475 Relay c2{Connected}\001
+4 0 0 50 0 0 10 0.0000 4 135 2085 1275 2925 Relay c1{{Data, "HTTP GET..."}}\001
+4 0 0 50 0 0 10 0.0000 4 135 1965 3675 3000 Relay c2{Data, "HTTP GET..."}\001
+4 1 0 50 0 0 10 0.0000 4 135 1365 4800 225 (link is TLS encryped)\001
+4 1 0 50 0 0 10 0.0000 4 135 870 7050 225 (unencrypted)\001
+4 1 0 50 0 0 10 0.0000 4 105 780 7125 1650 cN--a circID\001
+4 2 0 50 0 0 10 0.0000 4 135 1860 3525 3600 Relay c1{{Data, (r response)}}\001
+4 2 0 50 0 0 10 0.0000 4 135 645 8100 3375 (response)\001
+4 2 0 50 0 0 10 0.0000 4 135 1650 5925 3450 Relay c2{Data, (response)}\001
+4 2 0 50 0 0 10 0.0000 4 135 1545 5925 1425 Created c2, g^y2, H(K2)\001
+4 0 0 50 0 0 10 0.0000 4 135 1170 3675 1125 Create c2, E(g^x2)\001
+4 0 0 50 0 0 10 0.0000 4 135 1170 1275 450 Create c1, E(g^x1)\001
+4 2 0 50 0 0 10 0.0000 4 135 1545 3525 750 Created c1, g^y1, H(K1)\001
diff --git a/doc/interaction.pdf b/doc/interaction.pdf
new file mode 100644
index 0000000000..b4a6d42a5a
--- /dev/null
+++ b/doc/interaction.pdf
Binary files differ