DataMuseum.dk

Presents historical artifacts from the history of:

DKUUG/EUUG Conference tapes

This is an automatic "excavation" of a thematic subset of
artifacts from Datamuseum.dk's BitArchive.

See our Wiki for more about DKUUG/EUUG Conference tapes

Excavated with: AutoArchaeologist - Free & Open Source Software.


top - metrics - download
Index: T U

⟦cd2fd3db0⟧ TextFile

    Length: 339724 (0x52f0c)
    Types: TextFile
    Notes: Uncompressed file

Derivation

└─⟦4f9d7c866⟧ Bits:30007245 EUUGD6: Sikkerheds distributionen
    └─⟦3fce61ff0⟧ »./papers/Routing_security/visa-tr89.ps.Z« 
        └─⟦this⟧ 

TextFile

%!PS-Adobe-2.0
%%Creator: dvips 5.47 Copyright 1986-91 Radical Eye Software
%%Title: vtr.dvi
%%Pages: 39 1
%%BoundingBox: 0 0 612 792
%%EndComments
%%BeginProcSet: tex.pro
/TeXDict 200 dict def TeXDict begin /N /def load def /B{bind def}N /S /exch
load def /X{S N}B /TR /translate load N /isls false N /vsize 10 N /@rigin{
isls{[0 1 -1 0 0 0]concat}if 72 Resolution div 72 VResolution div neg scale
Resolution VResolution vsize neg mul TR matrix currentmatrix dup dup 4 get
round 4 exch put dup dup 5 get round 5 exch put setmatrix}N /@letter{/vsize 10
N}B /@landscape{/isls true N /vsize -1 N}B /@a4{/vsize 10.6929133858 N}B /@a3{
/vsize 15.5531 N}B /@ledger{/vsize 16 N}B /@legal{/vsize 13 N}B /@manualfeed{
statusdict /manualfeed true put}B /@copies{/#copies X}B /FMat[1 0 0 -1 0 0]N
/FBB[0 0 0 0]N /nn 0 N /IE 0 N /ctr 0 N /df-tail{/nn 8 dict N nn begin
/FontType 3 N /FontMatrix fntrx N /FontBBox FBB N string /base X array
/BitMaps X /BuildChar{CharBuilder}N /Encoding IE N end dup{/foo setfont}2
array copy cvx N load 0 nn put /ctr 0 N[}B /df{/sf 1 N /fntrx FMat N df-tail}
B /dfs{div /sf X /fntrx[sf 0 0 sf neg 0 0]N df-tail}B /E{pop nn dup definefont
setfont}B /ch-width{ch-data dup length 5 sub get}B /ch-height{ch-data dup
length 4 sub get}B /ch-xoff{128 ch-data dup length 3 sub get sub}B /ch-yoff{
ch-data dup length 2 sub get 127 sub}B /ch-dx{ch-data dup length 1 sub get}B
/ch-image{ch-data dup type /stringtype ne{ctr get /ctr ctr 1 add N}if}B /id 0
N /rw 0 N /rc 0 N /gp 0 N /cp 0 N /G 0 N /sf 0 N /CharBuilder{save 3 1 roll S
dup /base get 2 index get S /BitMaps get S get /ch-data X pop /ctr 0 N ch-dx 0
ch-xoff ch-yoff ch-height sub ch-xoff ch-width add ch-yoff setcachedevice
ch-width ch-height true[1 0 0 -1 -.1 ch-xoff sub ch-yoff .1 add]{ch-image}
imagemask restore}B /D{/cc X dup type /stringtype ne{]}if nn /base get cc ctr
put nn /BitMaps get S ctr S sf 1 ne{dup dup length 1 sub dup 2 index S get sf
div put}if put /ctr ctr 1 add N}B /I{cc 1 add D}B /bop{userdict /bop-hook
known{bop-hook}if /SI save N @rigin 0 0 moveto}N /eop{clear SI restore
showpage userdict /eop-hook known{eop-hook}if}N /@start{userdict /start-hook
known{start-hook}if /VResolution X /Resolution X 1000 div /DVImag X /IE 256
array N 0 1 255{IE S 1 string dup 0 3 index put cvn put}for}N /p /show load N
/RMat[1 0 0 -1 0 0]N /BDot 260 string N /rulex 0 N /ruley 0 N /v{/ruley X
/rulex X V}B /V statusdict begin /product where{pop product dup length 7 ge{0
7 getinterval(Display)eq}{pop false}ifelse}{false}ifelse end{{gsave TR -.1 -.1
TR 1 1 scale rulex ruley false RMat{BDot}imagemask grestore}}{{gsave TR -.1
-.1 TR rulex ruley scale 1 1 false RMat{BDot}imagemask grestore}}ifelse B /a{
moveto}B /delta 0 N /tail{dup /delta X 0 rmoveto}B /M{S p delta add tail}B /b{
S p tail}B /c{-4 M}B /d{-3 M}B /e{-2 M}B /f{-1 M}B /g{0 M}B /h{1 M}B /i{2 M}B
/j{3 M}B /k{4 M}B /w{0 rmoveto}B /l{p -4 w}B /m{p -3 w}B /n{p -2 w}B /o{p -1 w
}B /q{p 1 w}B /r{p 2 w}B /s{p 3 w}B /t{p 4 w}B /x{0 S rmoveto}B /y{3 2 roll p
a}B /bos{/SS save N}B /eos{clear SS restore}B end
%%EndProcSet
%%BeginProcSet: special.pro
TeXDict begin /SDict 200 dict N SDict begin /@SpecialDefaults{/hs 612 N /vs
792 N /ho 0 N /vo 0 N /hsc 1 N /vsc 1 N /ang 0 N /CLIP false N /BBcalc false N
/p 3 def}B /@scaleunit 100 N /@hscale{@scaleunit div /hsc X}B /@vscale{
@scaleunit div /vsc X}B /@hsize{/hs X /CLIP true N}B /@vsize{/vs X /CLIP true
N}B /@hoffset{/ho X}B /@voffset{/vo X}B /@angle{/ang X}B /@rwi{10 div /rwi X}
B /@llx{/llx X}B /@lly{/lly X}B /@urx{/urx X}B /@ury{/ury X /BBcalc true N}B
/magscale true def end /@MacSetUp{userdict /md known{userdict /md get type
/dicttype eq{md begin /letter{}N /note{}N /legal{}N /od{txpose 1 0 mtx
defaultmatrix dtransform S atan/pa X newpath clippath mark{transform{
itransform moveto}}{transform{itransform lineto}}{6 -2 roll transform 6 -2
roll transform 6 -2 roll transform{itransform 6 2 roll itransform 6 2 roll
itransform 6 2 roll curveto}}{{closepath}}pathforall newpath counttomark array
astore /gc xdf pop ct 39 0 put 10 fz 0 fs 2 F/|______Courier fnt invertflag{
PaintBlack}if}N /txpose{pxs pys scale ppr aload pop por{noflips{pop S neg S TR
pop 1 -1 scale}if xflip yflip and{pop S neg S TR 180 rotate 1 -1 scale ppr 3
get ppr 1 get neg sub neg ppr 2 get ppr 0 get neg sub neg TR}if xflip yflip
not and{pop S neg S TR pop 180 rotate ppr 3 get ppr 1 get neg sub neg 0 TR}if
yflip xflip not and{ppr 1 get neg ppr 0 get neg TR}if}{noflips{TR pop pop 270
rotate 1 -1 scale}if xflip yflip and{TR pop pop 90 rotate 1 -1 scale ppr 3 get
ppr 1 get neg sub neg ppr 2 get ppr 0 get neg sub neg TR}if xflip yflip not
and{TR pop pop 90 rotate ppr 3 get ppr 1 get neg sub neg 0 TR}if yflip xflip
not and{TR pop pop 270 rotate ppr 2 get ppr 0 get neg sub neg 0 S TR}if}
ifelse scaleby96{ppr aload pop 4 -1 roll add 2 div 3 1 roll add 2 div 2 copy
TR .96 dup scale neg S neg S TR}if}N /cp{pop pop showpage pm restore}N end}if}
if}N /normalscale{Resolution 72 div VResolution 72 div neg scale magscale{
DVImag dup scale}if}N /psfts{S 65536 div N}N /startTexFig{/psf$SavedState save
N userdict maxlength dict begin /magscale false def normalscale currentpoint
TR /psf$ury psfts /psf$urx psfts /psf$lly psfts /psf$llx psfts /psf$y psfts
/psf$x psfts currentpoint /psf$cy X /psf$cx X /psf$sx psf$x psf$urx psf$llx
sub div N /psf$sy psf$y psf$ury psf$lly sub div N psf$sx psf$sy scale psf$cx
psf$sx div psf$llx sub psf$cy psf$sy div psf$ury sub TR /showpage{}N
/erasepage{}N /copypage{}N /p 3 def @MacSetUp}N /doclip{psf$llx psf$lly
psf$urx psf$ury currentpoint 6 2 roll newpath 4 copy 4 2 roll moveto 6 -1 roll
S lineto S lineto S lineto closepath clip newpath moveto}N /endTexFig{end
psf$SavedState restore}N /@beginspecial{SDict begin /SpecialSave save N gsave
normalscale currentpoint TR @SpecialDefaults}N /@setspecial{CLIP{newpath 0 0
moveto hs 0 rlineto 0 vs rlineto hs neg 0 rlineto closepath clip}if ho vo TR
hsc vsc scale ang rotate BBcalc{rwi urx llx sub div dup scale llx neg lly neg
TR}if /showpage{}N /erasepage{}N /copypage{}N newpath}N /@endspecial{grestore
clear SpecialSave restore end}N /@defspecial{SDict begin}N /@fedspecial{end}B
/li{lineto}B /rl{rlineto}B /rc{rcurveto}B /np{/SaveX currentpoint /SaveY X N 1
setlinecap newpath}N /st{stroke SaveX SaveY moveto}N /fil{fill SaveX SaveY
moveto}N /ellipse{/endangle X /startangle X /yrad X /xrad X /savematrix matrix
currentmatrix N TR xrad yrad scale 0 0 1 startangle endangle arc savematrix
setmatrix}N end
%%EndProcSet
TeXDict begin 1000 300 300 @start /Fa 7 88 df<00001000000030000000700000007000
0000F8000000B8000001380000023800000238000004380000043800000838000010380000103C
0000201C0000201C00007FFC0000801C0000801C0001001C0003001C0002001C0004001E000400
0E001C001E00FF00FFC01A1A7F991D>65 D<0007E040003C18C000E005C001C003C00380018007
0001800E0001801C0001803C000100380001007800000078000000F0000000F0000000F0000000
F0000000F0000400F0000400F0000400F00008007000100030001000380060001C008000070300
0001FC00001A1A7E991B>67 D<0007E040003C18C000E005C001C003C003800180070001800E00
01801C0001803C000100380001007800000078000000F0000000F0000000F0000000F001FF80F0
001C00F0001C00F0001C00F0001C007000380030003800380038001C0078000703900001FC1000
1A1A7E991E>71 D<01FF8FFC003801C0003801C0003801C0007003800070038000700380007003
8000E0070000E0070000E0070000E0070001FFFE0001C00E0001C00E0001C00E0003801C000380
1C0003801C0003801C00070038000700380007003800070038000E007000FFE7FF001E1A7E9920
>I<000FE0000038380000E00E0001C00700070007000F0003800E0003801C0003803C0003C038
0003C0780003C0780003C0F0000780F0000780F0000780F0000F00F0000F00F0000E00F0001E00
F0003C0070003800700070003800E0001C03C0000E0F000003F800001A1A7E991D>79
D<001F080060D800803801003803001006001006001006001006000007000007C00003FC0001FF
00007F800007C00001C00001C00000C02000C02000C0600180600180600300700600CC0C0083F0
00151A7E9917>83 D<FFC1FF07F81C007801C01C007000801C007001001C00B801001C00B80200
1C013802001C013804001C023804001C043808001C043810001C083810001C083820001E103820
000E103840000E203840000E603880000E403980000E803900000E803A00000F003A00000F003C
00000E001C00000E001800000C001800000C00100000251A7E9924>87 D
E /Fb 11 121 df<0FF1FE0180300180300300600300600300600300600600C007FFC00600C006
00C00C01800C01800C01800C0180180300FF1FE017117E9019>72 D<00FC000303000C01801800
C03000C06000C06000C0C000C0C000C0C000C0C00180C00180C00300600600600C003838000FC0
0012117D9017>79 D<0780184030C060006000C000C000C000402060C01F000B0B7E8A0E>99
D<007800180018003000300030073018E0306060606060C0C0C0C0C0C841C862D03C700D117E90
10>I<07801840304060407F80C000C000C000402020C01F000B0B7E8A0F>I<040C000000000070
5898983030606464683006127E910B>105 D<71F09A189C189818181830303030303230626064
60380F0B7E8A13>110 D<73C09C209860980018003000300030003000600060000B0B7E8A0E>
114 D<0F001080218020003E001F0001808080C00083007C00090B7D8A0F>I<08181818FF3030
3030606062646438080F7E8E0C>I<0F381144218C218001800300030003084310C73079C00E0B
7F8A11>120 D E /Fc 12 122 df<FF80FF80FF0009037D880E>45 D<03CC0E2E181C381C301C
701CE038E038E038E038C072C072C07260F261341E180F107C8F14>97 D<01E006181C08380870
087010FFE0E000E000E000E000E0086010602030C01F000D107C8F12>101
D<00F300038B800607000E07000C07001C0700380E00380E00380E00380E00301C00301C00301C
00183C0018780007B800003800003800007000607000E0E000C1C0007F000011177E8F12>103
D<030706000000000000384C4E8E9C9C1C3838707272E2E4643808197C980C>105
D<307C005986009E07009E07009C07009C0700380E00380E00380E00381C00701C80701C807038
80703900E01900600E0011107C8F16>110 D<01F006180C0C180E300E700E600EE00EE00EE00C
E01CE018E030606030C01F000F107C8F14>I<03E004300830187018601C001F801FC00FE000E0
0060E060E06080C041803E000C107D8F10>115 D<06000E000E000E000E001C001C00FFC01C00
38003800380038007000700070007000E100E100E100E200640038000A177C960D>I<38184C1C
4E1C8E0C9C0C9C0C1C08380838083808701070107020304018C00F000E107C8F12>118
D<380C304C0E384E1C388E1C189C1C189C1C181C38103838103838103838107070207070207070
4030704018B8800F0F0015107C8F19>I<38064C074E0E8E0E9C0E9C0E1C1C381C381C381C7038
70387038307838F00F700070006060E0E1C0C18047003C0010177C8F13>121
D E /Fd 20 121 df<07FFF800E00E00E00700E00300E00301C00301C00701C00701C00E03803C
03FFF003FFF003803C07001C07000E07000E07000E0E001C0E001C0E00380E00701C01E0FFFF00
18177F961B>66 D<07FE1FF800E0038000E0038000E0038000E0038001C0070001C0070001C007
0001C0070003800E0003800E0003FFFE0003800E0007001C0007001C0007001C0007001C000E00
38000E0038000E0038000E0038001C007000FF83FE001D177F961D>72 D<07FE00E000E000E000
E001C001C001C001C0038003800380038007000700070007000E000E000E000E001C00FFC00F17
7E960F>I<07FE03F800E001C000E0010000E0020000E0080001C0100001C0200001C0800001C1
000003830000038F00000393800003A380000781C0000701C0000700E0000700E0000E0070000E
0070000E0038000E0038001C003C00FF80FF001D177F961E>75 D<001FC000707001C01803001C
06000C0E000E1C000E18000E38000E30000E70000E70000E70000E70001CE0001C600038700038
7000707000E03801C01803800E0E0003F00017177F961B>79 D<07FFF800E00E00E00700E00700
E00701C00701C00701C00701C00E03801C03807003FFC00380000700000700000700000700000E
00000E00000E00000E00001C0000FF800018177F9616>I<07FFF00000E01C0000E0060000E007
0000E0070001C0070001C0070001C0070001C00E0003801C000380700003FF80000380E0000700
70000700380007003800070038000E0070000E0070000E0070800E0070801C003100FF801E0019
177F961B>82 D<1FFFFE381C0E201C04601C04401C044038048038040038000038000070000070
0000700000700000E00000E00000E00000E00001C00001C00001C00001C00003C0007FFC001717
7F9615>84 D<FFC0FF1C00181C00101C00101C0010380020380020380020380020700040700040
700040700040E00080E00080E00080E00080E00100E00200E004006008003830000FC00018177E
9618>I<FF807F1C00181C00101C00301C00200E00400E00400E00800E01000E01000E02000E04
000F040007080007100007100007200007600007400007800003800003000002000018177E9615
>I<071018F0307060706060C060C060C06080C080C480C4C1C446C838700E0E7E8D13>97
D<07C00C20107020706000C000C000C00080008000C010C02060C03F000C0E7E8D0F>99
D<003E000C000C000C000C0018001800180018073018F0307060706060C060C060C06080C080C4
80C4C1C446C838700F177E9612>I<07C01C20301060106020FFC0C000C000C000C000C0104020
60C01F000C0E7E8D10>I<0300038003000000000000000000000000001C002400460046008C00
0C0018001800180031003100320032001C0009177F960C>105 D<383C0044C600470200460200
8E06000C06000C06000C0C00180C00180C40181840181880300880300F00120E7F8D15>110
D<38F04518463846308C000C000C000C001800180018001800300030000D0E7F8D10>114
D<07C00C201870187038001E000FC003E000606060E060C0C0C1803F000C0E7E8D10>I<030003
000600060006000600FFC00C000C000C001800180018001800300030803080310031001E000A14
7F930D>I<0F1F0011A18020C38020C300418000018000018000018000030000030200C30200E7
0400C5080078F000110E7F8D14>120 D E /Fe 3 104 df<07E01FF83FFC7FFE7FFEFFFFFFFFFF
FFFFFFFFFFFFFFFFFFFFFF7FFE7FFE3FFC1FF807E010127D9317>15 D<000F0038006000E001C0
01C001C001C001C001C001C001C001C001C001C001C001C001C001C0038007001E00F8001E0007
00038001C001C001C001C001C001C001C001C001C001C001C001C001C001C001C000E000600038
000F102D7DA117>102 D<F8001E000700038001C001C001C001C001C001C001C001C001C001C0
01C001C001C001C001C000E000600038000F0038006000E001C001C001C001C001C001C001C001
C001C001C001C001C001C001C001C0038007001E00F800102D7DA117>I
E /Ff 52 123 df<00003FE00000E0100001803800038078000300780007003000070000000700
0000070000000E0000000E0000000E000000FFFFE0000E00E0001C01C0001C01C0001C01C0001C
01C0001C03800038038000380380003803800038070000380700007007000070071000700E2000
700E2000700E2000E00E2000E0064000E0038000E0000000C0000001C0000001C0000031800000
79800000F3000000620000003C0000001D29829F1A>12 D<1C3C3C3C3C04040808102020408006
0E7D840E>44 D<7FF0FFE07FE00C037D8A10>I<70F8F8F0E005057B840E>I<000200020006000E
003C00DC031C001C0038003800380038007000700070007000E000E000E000E001C001C001C001
C003800380038003800780FFF80F1E7B9D17>49 D<070F1F1F0E0000000000000000000070F8F8
F0E008147B930E>58 D<00000200000006000000060000000E0000001E0000001E0000003F0000
002F0000004F0000004F0000008F0000010F0000010F0000020F0000020F0000040F00000C0F00
00080F0000100F0000100F0000200F80003FFF800040078000C007800080078001000780010007
800200078002000780060007801E000F80FF807FF81D207E9F22>65 D<01FFFFC0001E00F0001E
0078001E0038001E003C003C003C003C003C003C003C003C003C0078007800780078007800F000
7801E000F0078000FFFE0000F00F8000F003C001E001C001E001E001E001E001E001E003C001E0
03C001E003C001E003C001C0078003C00780078007800F0007801E000F007800FFFFE0001E1F7D
9E20>I<0000FE0200078186001C004C0038003C0060003C00C0001C01C0001803800018070000
180F0000181E0000101E0000103C0000003C00000078000000780000007800000078000000F000
0000F0000000F0000000F0000000F0000080700000807000008070000100380001003800020018
0004000C001800060020000381C00000FE00001F217A9F21>I<01FFFF80001E00E0001E007000
1E0038001E001C003C001C003C000E003C000E003C000E0078000E0078000E0078000E0078000E
00F0001E00F0001E00F0001E00F0001E01E0003C01E0003C01E0003C01E0007803C0007003C000
7003C000E003C001C0078001C00780038007800E0007801C000F007000FFFFC0001F1F7D9E22>
I<01FFFFFE001E001C001E000C001E0004001E0004003C0004003C0004003C0004003C00040078
080800780800007808000078180000F0300000FFF00000F0300000F0300001E0200001E0200001
E0200001E0001003C0002003C0002003C0004003C0004007800080078001800780010007800700
0F001F00FFFFFE001F1F7D9E1F>I<01FFFFFC001E0038001E0018001E0008001E0008003C0008
003C0008003C0008003C00080078001000780800007808000078080000F0100000F0300000FFF0
0000F0300001E0200001E0200001E0200001E0200003C0000003C0000003C0000003C000000780
00000780000007800000078000000F800000FFF800001E1F7D9E1E>I<0000FC040007030C001C
00980030007800E0007801C000380380003003800030070000300E0000301E0000201E0000203C
0000003C00000078000000780000007800000078000000F0000000F000FFF0F0000780F0000780
F0000F0070000F0070000F0070000F0070001E0038001E0018003E001C002E000E00CC00038304
0000FC00001E217A9F23>I<01FFF3FFE0001F003E00001E003C00001E003C00001E003C00003C
007800003C007800003C007800003C007800007800F000007800F000007800F000007800F00000
F001E00000FFFFE00000F001E00000F001E00001E003C00001E003C00001E003C00001E003C000
03C007800003C007800003C007800003C007800007800F000007800F000007800F000007800F00
000F801F0000FFF1FFE000231F7D9E22>I<01FFF0001F00001E00001E00001E00003C00003C00
003C00003C0000780000780000780000780000F00000F00000F00000F00001E00001E00001E000
01E00003C00003C00003C00003C0000780000780000780000780000F8000FFF800141F7D9E12>
I<01FFF03FE0001F000F80001E000E00001E000800001E001000003C002000003C004000003C01
0000003C020000007804000000780800000078100000007830000000F0F0000000F1F8000000F2
78000000F478000001E83C000001F03C000001E03C000001E01E000003C01E000003C01E000003
C00F000003C00F000007800F00000780078000078007800007800780000F8007C000FFF03FF800
231F7D9E23>75 D<01FFF800001F0000001E0000001E0000001E0000003C0000003C0000003C00
00003C00000078000000780000007800000078000000F0000000F0000000F0000000F0000001E0
000001E0000001E0000001E0008003C0010003C0010003C0030003C00200078006000780060007
800C0007801C000F007800FFFFF800191F7D9E1D>I<01FE00007FC0001E0000FC00001E0000F8
0000170001780000170001780000270002F00000270004F00000270004F00000270008F0000047
0009E00000470011E00000470021E00000470021E00000870043C00000838043C00000838083C0
0000838083C0000103810780000103820780000103820780000103840780000203840F00000203
880F00000203900F00000203900F00000401E01E00000401E01E00000401C01E00000C01801E00
001C01803E0000FF8103FFC0002A1F7D9E29>I<01FF007FE0001F000F00001F00040000178004
00001780040000278008000023C008000023C008000023C008000041E010000041E010000041F0
10000040F010000080F0200000807820000080782000008078200001003C400001003C40000100
3C400001001E400002001E800002001E800002000F800002000F800004000F0000040007000004
000700000C000700001C00020000FF80020000231F7D9E22>I<0001FC0000070700001C01C000
3000E000E0006001C000700380007007800038070000380E0000381E0000381C0000383C000038
3C00003878000078780000787800007878000078F00000F0F00000F0F00000E0F00001E0F00001
C0F00003C0700003807000070078000F0038001E0038003C001C0070000E00E0000783800001FC
00001D217A9F23>I<01FFFF80001E00E0001E0070001E0038001E003C003C003C003C003C003C
003C003C003C0078007800780078007800F0007800E000F003C000F00F0000FFFC0000F0000001
E0000001E0000001E0000001E0000003C0000003C0000003C0000003C000000780000007800000
07800000078000000F800000FFF000001E1F7D9E1F>I<01FFFF00001E03C0001E00E0001E0070
001E0078003C0078003C0078003C0078003C0078007800F0007800F0007801E0007801C000F007
0000F01E0000FFF00000F0380001E01C0001E01E0001E00E0001E00F0003C01E0003C01E0003C0
1E0003C01E0007803C0007803C0807803C0807803C100F801C10FFF00C20000007C01D207D9E21
>82 D<0007E040001C18C0003005800060038000C0038001C00180018001000380010003800100
038001000380000003C0000003C0000003F8000001FF800001FFE000007FF000001FF0000001F8
000000780000007800000038000000380020003800200038002000300060007000600060006000
E0007000C000E8038000C606000081F800001A217D9F1A>I<0FFFFFF01E0780E0180780201007
802020078020200F0020600F0020400F0020400F0020801E0040001E0000001E0000001E000000
3C0000003C0000003C0000003C00000078000000780000007800000078000000F0000000F00000
00F0000000F0000001E0000001E0000001E0000001E0000003E00000FFFF00001C1F789E21>I<
7FFC1FF807C003C00780010007800100078001000F0002000F0002000F0002000F0002001E0004
001E0004001E0004001E0004003C0008003C0008003C0008003C00080078001000780010007800
100078001000F0002000F0002000F0002000F0004000F000400070008000700100003002000038
0400000C18000007E000001D20779E22>I<FFF007FC0F8000E00F0000C00F0000800F0001000F
0001000F0002000F0004000F0004000F8008000780080007801000078020000780200007804000
0780400007808000078100000781000007C2000003C2000003C4000003C8000003C8000003D000
0003D0000003E0000003C0000003C000000380000001800000010000001E20779E22>I<FFF1FF
C0FF801F003E001C001F003C0018000F003C0010000F003C0010000F003C0020000F003C002000
0F003E0040000F003E00C0000F005E0080000F005E0100000F009E0100000F009E0200000F011E
0200000F021E0400000F021E0400000F041E0800000F041E0800000F081E1000000F081E200000
0F101E2000000F101E4000000F201E4000000F601E8000000FC01E80000007801F00000007801F
00000007001E00000007001E00000006000C0000000600080000000400080000002920779E2D>
I<FFF003FC1F8000E00F0000C00F800080078001000780020007C0040003C00C0003C0080003E0
100003E0200001E0400001F0400001F0800000F1000000FA000000FE0000007C00000078000000
7800000070000000F0000000F0000000F0000000E0000001E0000001E0000001E0000001E00000
03C000003FFC00001E1F779E22>89 D<00F1800389C00707800E03801C03803C03803807007807
00780700780700F00E00F00E00F00E00F00E20F01C40F01C40703C40705C40308C800F07001314
7C9317>97 D<07803F8007000700070007000E000E000E000E001C001C001CF01D0C3A0E3C0E38
0F380F700F700F700F700FE01EE01EE01EE01CE03CE038607060E031C01F0010207B9F15>I<00
7E0001C1000300800E07801E07801C07003C0200780000780000780000F00000F00000F00000F0
0000F0000070010070020030040018380007C00011147C9315>I<0000780003F8000070000070
0000700000700000E00000E00000E00000E00001C00001C000F1C00389C00707800E03801C0380
3C0380380700780700780700780700F00E00F00E00F00E00F00E20F01C40F01C40703C40705C40
308C800F070015207C9F17>I<007C01C207010E011C013C013802780C7BF07C00F000F000F000
F0007000700170023804183807C010147C9315>I<00007800019C00033C00033C000718000700
000700000E00000E00000E00000E00000E0001FFE0001C00001C00001C00001C00003800003800
00380000380000380000700000700000700000700000700000700000E00000E00000E00000E000
00C00001C00001C0000180003180007B0000F300006600003C00001629829F0E>I<003C6000E2
7001C1E00380E00700E00F00E00E01C01E01C01E01C01E01C03C03803C03803C03803C03803C07
003C07001C0F001C17000C2E0003CE00000E00000E00001C00001C00301C00783800F0700060E0
003F8000141D7E9315>I<01E0000FE00001C00001C00001C00001C00003800003800003800003
8000070000070000071E000763000E81800F01C00E01C00E01C01C03801C03801C03801C038038
0700380700380700380E10700E20700C20701C20700C40E00CC060070014207D9F17>I<00C001
E001E001C000000000000000000000000000000E003300230043804300470087000E000E000E00
1C001C001C003840388030807080310033001C000B1F7C9E0E>I<01E0000FE00001C00001C000
01C00001C0000380000380000380000380000700000700000703C00704200E08E00E11E00E21E0
0E40C01C80001D00001E00001FC00038E000387000387000383840707080707080707080703100
E03100601E0013207D9F15>107 D<03C01FC0038003800380038007000700070007000E000E00
0E000E001C001C001C001C0038003800380038007000700070007100E200E200E200E200640038
000A207C9F0C>I<1C0F80F0002630C318004740640C004780680E004700700E004700700E008E
00E01C000E00E01C000E00E01C000E00E01C001C01C038001C01C038001C01C038001C01C07080
38038071003803806100380380E10038038062007007006600300300380021147C9325>I<1C0F
802630C04740604780604700704700708E00E00E00E00E00E00E00E01C01C01C01C01C01C01C03
843803883803083807083803107003303001C016147C931A>I<007C0001C3000301800E01C01E
01C01C01E03C01E07801E07801E07801E0F003C0F003C0F003C0F00780F00700700F00700E0030
180018700007C00013147C9317>I<01C1E002621804741C04781C04701E04701E08E01E00E01E
00E01E00E01E01C03C01C03C01C03C01C0380380780380700380E003C1C0072380071E00070000
0700000E00000E00000E00000E00001C00001C0000FFC000171D809317>I<1C1E002661004783
804787804707804703008E00000E00000E00000E00001C00001C00001C00001C00003800003800
0038000038000070000030000011147C9313>114 D<00FC030206010C030C070C060C000F800F
F007F803FC003E000E700EF00CF00CE008401020601F8010147D9313>I<018001C00380038003
80038007000700FFF007000E000E000E000E001C001C001C001C00380038003800382070407040
7080708031001E000C1C7C9B0F>I<0E00C03300E02301C04381C04301C04701C08703800E0380
0E03800E03801C07001C07001C07001C07101C0E20180E20180E201C1E200C264007C38014147C
9318>I<0E03803307802307C04383C04301C04700C08700800E00800E00800E00801C01001C01
001C01001C02001C02001C04001C04001C08000E300003C00012147C9315>I<0E00C1C03300E3
C02301C3E04381C1E04301C0E04701C060870380400E0380400E0380400E0380401C0700801C07
00801C0700801C0701001C0701001C0602001C0F02000C0F04000E13080003E1F0001B147C931E
>I<0383800CC4401068E01071E02071E02070C040E00000E00000E00000E00001C00001C00001
C00001C040638080F38080F38100E5810084C60078780013147D9315>I<0E00C03300E02301C0
4381C04301C04701C08703800E03800E03800E03801C07001C07001C07001C07001C0E00180E00
180E001C1E000C3C0007DC00001C00001C00003800F03800F07000E06000C0C0004380003E0000
131D7C9316>I<01C04003E08007F1800C1F000802000004000008000010000020000040000080
000100000200000401000802001002003E0C0063FC0041F80080E00012147D9313>I
E /Fg 39 122 df<70F8F8F87005057C840D>58 D<70F8FCFC74040404080810102040060E7C84
0D>I<000002000000060000000E0000000E0000001E0000001F0000002F0000002F0000004F00
00008F0000008F0000010F0000010F0000020F0000040F0000040F0000080F8000080780001007
800020078000200780007FFF800040078000800780018007800100078002000780020007C00400
03C00C0003C01E0007C0FF807FFC1E207E9F22>65 D<00FFFFE0000F0078000F003C000F001C00
0F001E001E001E001E001E001E001E001E001E003C003C003C003C003C0078003C00F0007803C0
007FFF80007803C0007801E000F000F000F000F000F000F000F0007001E000F001E000F001E000
F001E000E003C001E003C003C003C0038003C00F0007801E00FFFFF0001F1F7E9E22>I<0000FE
0200078186001C004C0038003C0060003C00C0001C01C0001803800018070000180F0000181E00
00101E0000103C0000003C00000078000000780000007800000078000000F0000000F0000000F0
000000F0000000F00000807000008070000080700001003800010038000200180004000C001800
060020000381C00000FE00001F217E9F20>I<00FFFFE000000F007800000F001C00000F000E00
000F000700001E000700001E000380001E000380001E000380003C000380003C000380003C0003
80003C000380007800078000780007800078000780007800078000F0000F0000F0000F0000F000
0E0000F0001E0001E0001C0001E0003C0001E000380001E000700003C000E00003C001C00003C0
03800003C007000007803C0000FFFFF00000211F7E9E26>I<00FFFFFF000F000E000F0006000F
0002000F0002001E0002001E0002001E0002001E0002003C0404003C0400003C0400003C0C0000
781800007FF800007818000078180000F0100000F0100000F0100000F0000401E0000801E00008
01E0001001E0001003C0002003C0006003C0004003C001C0078007C0FFFFFF80201F7E9E22>I<
00FFFFFF000F000E000F0006000F0002000F0002001E0002001E0002001E0002001E0002003C00
04003C0400003C0400003C04000078080000781800007FF8000078180000F0100000F0100000F0
100000F0100001E0000001E0000001E0000001E0000003C0000003C0000003C0000003C0000007
C00000FFFE0000201F7E9E1D>I<00007E0100038183000E00460038002E0070001E00E0000E01
C0000C0380000C0700000C0F00000C1E0000081E0000083C0000003C0000007800000078000000
7800000078000000F0000000F0007FFCF00001E0F00001E0F00003C0700003C0700003C0700003
C038000780380007801C000F800C000B80060033000380C100007F000020217E9F24>I<00FFF9
FFF0000F801F00000F001E00000F001E00000F001E00001E003C00001E003C00001E003C00001E
003C00003C007800003C007800003C007800003C007800007800F000007FFFF000007800F00000
7800F00000F001E00000F001E00000F001E00000F001E00001E003C00001E003C00001E003C000
01E003C00003C007800003C007800003C007800003C007800007C00F8000FFF8FFF800241F7E9E
26>I<00FFFC000F80000F00000F00000F00001E00001E00001E00001E00003C00003C00003C00
003C0000780000780000780000780000F00000F00000F00000F00001E00001E00001E00001E000
03C00003C00003C00003C00007C000FFFC00161F7F9E14>I<00FFF80FF8000F8003E0000F0003
80000F000200000F000400001E000800001E002000001E004000001E008000003C010000003C04
0000003C080000003C180000007838000000787C000000793C0000007A3C000000F41E000000F8
1E000000F01E000000F00F000001E00F000001E00F000001E007800001E007800003C007800003
C003C00003C003C00003C003C00007C003E000FFFC3FFC00251F7E9E27>75
D<00FF00001FF0000F00003F00000B80003E00000B80005E00000B80005E0000138000BC000013
80013C00001380013C00001380023C000023800278000023800478000023800878000021C00878
000041C010F0000041C020F0000041C020F0000041C040F0000081C041E0000081C081E0000081
C101E0000081C101E0000100E203C0000100E203C0000100E403C0000100E803C0000200E80780
000200F00780000200F00780000600E00780000F00C00F8000FFE0C1FFF8002C1F7E9E2C>77
D<00FF803FF0000F800780000F800200000BC00200000BC002000013C004000011E004000011E0
04000011E004000020F008000020F008000020F808000020780800004078100000403C10000040
3C100000403C100000801E200000801E200000801E200000800F200001000F400001000F400001
0007C000010007C00002000780000200038000020003800006000380000F00010000FFE0010000
241F7E9E25>I<0001FC0000070700001C01C0003000E000E0006001C000700380007007800038
070000380E0000381E0000381C0000383C0000383C000038780000787800007878000078780000
78F00000F0F00000F0F00000E0F00001E0F00001C0F00003C0700003807000070078000F003800
1E0038003C001C0070000E00E0000783800001FC00001D217E9F23>I<00FFFFC0000F0070000F
0038000F001C000F001E001E001E001E001E001E001E001E001E003C003C003C003C003C007800
3C0070007800E000780380007FFE000078000000F0000000F0000000F0000000F0000001E00000
01E0000001E0000001E0000003C0000003C0000003C0000003C0000007C00000FFFC00001F1F7E
9E1D>I<0001FC0000070700001C01C0003000E000E000E001C000700380007007800078070000
380F0000381E0000381E0000383C0000383C00007878000078780000787800007878000078F000
00F0F00000F0F00000E0F00001E0F00001C0F00003C070000380701C070070600F0038811E0038
813C001C8170000E81E0000783808001FD0080000101800001010000038300000386000003FE00
0003FC000001F8000000F0001D297E9F24>I<00FFFF80000F01E0000F0070000F0038000F003C
001E003C001E003C001E003C001E003C003C0078003C0078003C00F0003C01E00078038000780F
00007FF80000781C0000F00E0000F00F0000F0070000F0078001E00F0001E00F0001E00F0001E0
0F0003C01E0003C01E0203C01E0203C01E0407C00E04FFFC0718000003E01F207E9E23>I<0007
E0800018118000300B000060070000C0070001C003000180020003800200038002000380020003
8000000380000003C0000003F8000003FF800001FFC00000FFE000003FF0000003F0000000F000
0000700000007000000070002000700020007000200060006000E0006000C0006001C000700180
00E8030000C60E000081F8000019217D9F1C>I<0FFFFFFC1E03C0381803C0181003C0082003C0
0820078008600780084007800840078008800F0010000F0000000F0000000F0000001E0000001E
0000001E0000001E0000003C0000003C0000003C0000003C000000780000007800000078000000
78000000F0000000F0000000F0000000F0000001F000007FFFC0001E1F7F9E1B>I<7FFC1FF807
C003C00780010007800100078001000F0002000F0002000F0002000F0002001E0004001E000400
1E0004001E0004003C0008003C0008003C0008003C000800780010007800100078001000780010
00F0002000F0002000F0002000F0004000F0004000700080007001000030020000380400000C18
000007E000001D207C9E1F>I<FFF801FF0F8000780F0000600F0000400F800040078000800780
0080078001000780020007800200078004000780080007C0080003C0100003C0100003C0200003
C0400003C0400003C0800003C1800003C1000003E2000001E2000001E4000001E8000001E80000
01F0000001F0000001E0000001C0000000C000000080000020207E9E1B>I<FFF03FFC1FF80F80
07C003C00F00078001800F00078001000F00078002000F00078002000F000F8004000F00178004
000F00178008000F00278018000F0027C010000F0043C020000F8043C020000F8083C040000781
83C04000078103C08000078203C08000078203C10000078403C20000078403C20000078803C400
00078803C40000079003C8000007A003C8000007A003D0000007C003F0000007C003E000000780
01C00000078001C000000700018000000300018000000200010000002D207E9E2B>I<00FFF83F
F8000FC00F80000F80060000078004000007C008000003C010000003C020000003E040000001E0
80000001F100000000F300000000F600000000FC0000000078000000007C000000007C00000000
7C00000000BE000000011E000000021E000000061F0000000C0F000000080F8000001007800000
20078000004007C000008003C000010003E000030003E0000F0007E000FFE01FFE00251F7F9E26
>I<FFF801FF0F8000780F8000600780004007C0008007C0018003C0010003E0020003E0040001
E0080001F0180000F0100000F0200000F8400000788000007D0000007D0000003E0000003C0000
003C0000003800000078000000780000007800000070000000F0000000F0000000F0000000F000
0001E000003FFF0000201F7F9E1A>I<00F1800389C00707800E03801C03803C03803807007807
00780700780700F00E00F00E00F00E00F00E10F01C20F01C20703C20705C40308C400F07801414
7E9318>97 D<0000780003F80000700000700000700000700000E00000E00000E00000E00001C0
0001C000F1C00389C00707800E03801C03803C0380380700780700780700780700F00E00F00E00
F00E00F00E10F01C20F01C20703C20705C40308C400F078015207E9F18>100
D<007C01C207010E011C013C013802780C7BF07C00F000F000F000F00070007001700230041838
07C010147E9315>I<001E3000713800E0F001C0700380700780700700E00F00E00F00E00F00E0
1E01C01E01C01E01C01E01C01E03801E03800E07800E0B8006170001E700000700000700000E00
000E00300E00781C00F038006070003FC000151D809316>103 D<00E001E001E000C000000000
000000000000000000000E00130023804380438043808700070007000E000E001C001C001C2038
4038403840388019000E000B1F7E9E10>105 D<01E0000FE00001C00001C00001C00001C00003
80000380000380000380000700000700000701E00706100E08700E10F00E20F00E40601C80001D
00001E00001FC000387000383800383800381C20703840703840703840701880E01880600F0014
207E9F18>107 D<1E07C07C00231861860023A032030043C03403004380380380438038038087
007007000700700700070070070007007007000E00E00E000E00E00E000E00E00E000E00E01C10
1C01C01C201C01C038201C01C038401C01C0184038038018801801800F0024147E9328>109
D<1E07802318C023A06043C0704380704380708700E00700E00700E00700E00E01C00E01C00E01
C00E03821C03841C07041C07081C03083803101801E017147E931B>I<1E1E0023210023C38043
C7804387804383008700000700000700000700000E00000E00000E00000E00001C00001C00001C
00001C000038000018000011147E9315>114 D<007C018203010603060706060E00078007F803
FC01FE001F00077007F006F006E004400820301FC010147E9315>I<00C000E001C001C001C001
C003800380FFF8038007000700070007000E000E000E000E001C001C001C001C10382038203820
384018800F000D1C7F9B10>I<0F01801183C02183E021C1E041C0E04380608380400700400700
400700400E00800E00800E00800E01000E01000C02000E04000E040006180001E00013147E9316
>118 D<03C1C00C62201034701038F02038F020386040700000700000700000700000E00000E0
0000E00000E02061C040F1C040F1C080E2C080446300383C0014147E931A>120
D<0F00601180702180E021C0E041C0E04380E08381C00701C00701C00701C00E03800E03800E03
800E03800E07000C07000C07000E0F00061E0003EE00000E00000E00001C007818007838007070
0060600021C0001F0000141D7E9316>I E /Fh 61 123 df<000FE000007FF80000F81C0001E0
7C0003E07C0007C07C0007C07C0007C0380007C0000007C0000007C0000007C1FE00FFFFFE00FF
FFFE0007C03E0007C03E0007C03E0007C03E0007C03E0007C03E0007C03E0007C03E0007C03E00
07C03E0007C03E0007C03E0007C03E0007C03E0007C03E0007C03E003FF9FFC03FF9FFC01A2080
9F1D>12 D<0018007000E001C00380038007000E000E001E001C003C003C007800780078007800
F800F000F000F000F000F000F000F000F000F000F80078007800780078003C003C001C001E000E
000E0007000380038001C000E0007000180D2D7DA114>40 D<C000700038001C000E000E000700
0380038003C001C001E001E000F000F000F000F000F80078007800780078007800780078007800
7800F800F000F000F000F001E001E001C003C00380038007000E000E001C0038007000C0000D2D
7DA114>I<387CFEFFFF7F3B030306060E0C18702008107C860F>44 D<FFF0FFF0FFF0FFF00C04
7F8B11>I<387CFEFEFE7C3807077C860F>I<01FC0007FF001F07C01E03C03E03E07C01F07C01F0
7C01F0FC01F8FC01F8FC01F8FC01F8FC01F8FC01F8FC01F8FC01F8FC01F8FC01F8FC01F8FC01F8
FC01F87C01F07C01F07C01F03E03E01E03C01F8FC007FF0001FC00151D7E9C1A>48
D<00E00001E0000FE000FFE000F3E00003E00003E00003E00003E00003E00003E00003E00003E0
0003E00003E00003E00003E00003E00003E00003E00003E00003E00003E00003E00003E00003E0
0003E000FFFF80FFFF80111D7C9C1A>I<07F0001FFE00383F007C1F80FE0FC0FE0FC0FE0FE0FE
07E07C07E03807E0000FE0000FC0000FC0001F80001F00003E0000780000F00000E00001C00003
80600700600E00601C00E01FFFC03FFFC07FFFC0FFFFC0FFFFC0131D7D9C1A>I<01FC0007FF00
0E0F801E0FC03F07E03F07E03F07E03F07E01E0FC0000FC0000F80001F0001FC0001FC00000F80
0007C00003E00003F00003F83803F87C03F8FE03F8FE03F8FE03F0FC03F07807E03C0FC01FFF80
03FC00151D7E9C1A>I<0001C00003C00007C00007C0000FC0001FC0003BC00073C00063C000C3
C00183C00383C00703C00E03C00C03C01803C03803C07003C0E003C0FFFFFEFFFFFE0007C00007
C00007C00007C00007C00007C000FFFE00FFFE171D7F9C1A>I<3803803FFF803FFF003FFE003F
FC003FF0003F800030000030000030000030000033F8003FFE003C1F00380F803007C00007C000
07E00007E07807E0FC07E0FC07E0FC07E0FC07C0780FC0600F80381F001FFC0007F000131D7D9C
1A>I<003F0001FFC007E0E00F81E01F03F01E03F03E03F07C03F07C01E07C0000FC1000FCFF00
FDFFC0FD03E0FE01F0FE01F0FC01F8FC01F8FC01F8FC01F87C01F87C01F87C01F83C01F03E01F0
1E03E00F07C007FF8001FE00151D7E9C1A>I<6000007FFFF87FFFF87FFFF07FFFE07FFFE0E001
C0C00380C00700C00E00000C00001C0000380000780000780000F00000F00000F00001F00001F0
0001F00003F00003F00003F00003F00003F00003F00003F00003F00001E000151E7D9D1A>I<01
FC0007FF000E07801C01C01800E03800E03800E03C00E03F00E03FC1C01FE3801FFF000FFE0007
FF8007FFC01FFFE03C3FF0780FF07803F8F001F8F000F8F00078F00078F000707800707C00E03E
03C00FFF8003FC00151D7E9C1A>I<01FC000FFF001F07803E03C07C03E07C01E0FC01F0FC01F0
FC01F0FC01F8FC01F8FC01F8FC01F87C03F87C03F83E05F81FFDF807F9F80041F80001F03C01F0
7E01F07E03E07E03E07E07C03C0780381F001FFC0007F000151D7E9C1A>I<387CFEFEFE7C3800
0000000000387CFEFEFE7C3807147C930F>I<07F8001FFE00381F80780F80FC0FC0FC0FC0FC0F
C0780FC0301F80001F00003E00007C0000700000E00000E00000C00000C00000C00000C00000C0
0000C00000000000000000000000000001C00007F00007F00007F00007F00007F00001C0001220
7D9F19>63 D<0000E000000000E000000001F000000001F000000001F000000003F800000003F8
00000006FC00000006FC0000000EFE0000000C7E0000000C7E000000183F000000183F00000030
3F800000301F800000701FC00000600FC00000600FC00000C007E00000FFFFE00001FFFFF00001
8003F000018003F000030001F800030001F800060001FC00060000FC000E0000FE00FFE00FFFE0
FFE00FFFE0231F7E9E28>65 D<0007FC02003FFF0E00FE03DE03F000FE07E0003E0FC0001E1F80
001E3F00000E3F00000E7F0000067E0000067E000006FE000000FE000000FE000000FE000000FE
000000FE000000FE0000007E0000007E0000067F0000063F0000063F00000C1F80000C0FC00018
07E0003803F0007000FE01C0003FFF800007FC001F1F7D9E26>67 D<FFFFFE0000FFFFFFC00007
E007F00007E001F80007E000FC0007E0007E0007E0003F0007E0003F0007E0001F8007E0001F80
07E0001F8007E0001FC007E0001FC007E0001FC007E0001FC007E0001FC007E0001FC007E0001F
C007E0001FC007E0001FC007E0001F8007E0001F8007E0001F8007E0003F0007E0003F0007E000
7E0007E000FC0007E001F80007E007F000FFFFFFC000FFFFFE0000221F7E9E28>I<FFFFFFE0FF
FFFFE007E007E007E001E007E000E007E0006007E0007007E0003007E0003007E0603007E06030
07E0600007E0E00007E1E00007FFE00007FFE00007E1E00007E0E00007E0600007E0600C07E060
0C07E0000C07E0001807E0001807E0001807E0003807E0007807E000F807E003F0FFFFFFF0FFFF
FFF01E1F7E9E22>I<0007FC0200003FFF0E0000FE03DE0003F000FE0007E0003E000FC0001E00
1F80001E003F00000E003F00000E007F000006007E000006007E00000600FE00000000FE000000
00FE00000000FE00000000FE00000000FE003FFFE0FE003FFFE07E00007E007E00007E007F0000
7E003F00007E003F00007E001F80007E000FC0007E0007E0007E0003F000FE0000FE01FE00003F
FF8E000007FC0600231F7D9E29>71 D<FFFF0FFFF0FFFF0FFFF007E0007E0007E0007E0007E000
7E0007E0007E0007E0007E0007E0007E0007E0007E0007E0007E0007E0007E0007E0007E0007E0
007E0007E0007E0007FFFFFE0007FFFFFE0007E0007E0007E0007E0007E0007E0007E0007E0007
E0007E0007E0007E0007E0007E0007E0007E0007E0007E0007E0007E0007E0007E0007E0007E00
07E0007E00FFFF0FFFF0FFFF0FFFF0241F7E9E29>I<FFFFFFFF07E007E007E007E007E007E007
E007E007E007E007E007E007E007E007E007E007E007E007E007E007E007E007E007E007E007E0
07E0FFFFFFFF101F7E9E14>I<03FFFC03FFFC000FC0000FC0000FC0000FC0000FC0000FC0000F
C0000FC0000FC0000FC0000FC0000FC0000FC0000FC0000FC0000FC0000FC0000FC0000FC0000F
C0100FC07C0FC0FE0FC0FE0FC0FE0FC0FE1F807C3F003FFE000FF000161F7F9E1B>I<FFE00000
3FF8FFF000007FF807F000007F0006F80000DF0006F80000DF0006F80000DF00067C00019F0006
7C00019F00063E00031F00063E00031F00061F00061F00061F00061F00060F800C1F00060F800C
1F000607C0181F000607C0181F000607C0181F000603E0301F000603E0301F000601F0601F0006
01F0601F000600F8C01F000600F8C01F0006007D801F0006007D801F0006003F001F0006003F00
1F0006003F001F0006001E001F00FFF01E03FFF8FFF00C03FFF82D1F7E9E32>77
D<FFE000FFF0FFF000FFF007F800060007FC00060007FE00060006FE000600067F000600063F80
0600061FC00600060FE00600060FE006000607F006000603F806000601FC06000600FE06000600
7F060006007F060006003F860006001FC60006000FE600060007F600060003FE00060003FE0006
0001FE00060000FE000600007E000600003E000600001E000600001E00FFF0000E00FFF0000600
241F7E9E29>I<001FF80000FFFF0001F81F8007E007E00FC003F01F8001F81F0000F83F0000FC
7F0000FE7E00007E7E00007EFE00007FFE00007FFE00007FFE00007FFE00007FFE00007FFE0000
7FFE00007FFE00007F7E00007E7F0000FE7F0000FE3F0000FC3F8001FC1F8001F80FC003F007E0
07E001F81F8000FFFF00001FF800201F7D9E27>I<FFFFFE00FFFFFF8007E00FE007E003F007E0
01F807E001F807E001FC07E001FC07E001FC07E001FC07E001FC07E001F807E001F807E003F007
E00FE007FFFF8007FFFE0007E0000007E0000007E0000007E0000007E0000007E0000007E00000
07E0000007E0000007E0000007E0000007E00000FFFF0000FFFF00001E1F7E9E24>I<FFFFF800
00FFFFFF000007E01FC00007E007E00007E003F00007E003F00007E003F80007E003F80007E003
F80007E003F80007E003F00007E003F00007E007E00007E01FC00007FFFF000007FFFC000007E0
3E000007E01F000007E01F800007E00FC00007E00FC00007E00FC00007E00FE00007E00FE00007
E00FE00007E00FE03007E00FF03007E00FF07007E007F860FFFF01FFE0FFFF007F80241F7E9E27
>82 D<03FC080FFF381E03F83800F8700078700038F00038F00018F00018F80000FC00007FC000
7FFE003FFF801FFFE00FFFF007FFF000FFF80007F80000FC00007C00003CC0003CC0003CC0003C
E00038E00078F80070FE01E0E7FFC081FF00161F7D9E1D>I<7FFFFFFC7FFFFFFC7C07E07C7007
E01C6007E00C6007E00CE007E00EC007E006C007E006C007E006C007E0060007E0000007E00000
07E0000007E0000007E0000007E0000007E0000007E0000007E0000007E0000007E0000007E000
0007E0000007E0000007E0000007E0000007E00003FFFFC003FFFFC01F1E7E9D24>I<FFFF01FF
E0FFFF01FFE007E0000C0007E0000C0007E0000C0007E0000C0007E0000C0007E0000C0007E000
0C0007E0000C0007E0000C0007E0000C0007E0000C0007E0000C0007E0000C0007E0000C0007E0
000C0007E0000C0007E0000C0007E0000C0007E0000C0007E0000C0007E0000C0007E0001C0003
F000180003F000380001F800300000FC00F000007E03C000001FFF80000003FC0000231F7E9E28
>I<FFFE003FF8FFFE003FF807E000038007E000030007F000070003F000060003F8000E0001F8
000C0001FC000C0000FC00180000FC001800007E003000007E003000003F006000003F00600000
3F80E000001F80C000001FC1C000000FC18000000FE180000007E300000007E300000003F60000
0003F600000003FE00000001FC00000001FC00000000F800000000F80000000070000000007000
00251F7F9E28>I<FFFE0FFFC0FFE0FFFE0FFFC0FFE00FC000FC000E000FE000FC000E0007E000
FE000C0007E000FE000C0003F000FE00180003F001FF00180003F001BF00180001F801BF003000
01F8031F80300001FC031F80700000FC031F80600000FC060FC06000007E060FC0C000007E0E0F
E0C000007E0C07E0C000003F0C07E18000003F1803F18000003F9803F38000001F9803F3000000
1FB001FB0000000FF001FE0000000FF001FE0000000FE000FE00000007E000FC00000007C0007C
00000007C0007C00000003C0007800000003800038000000018000300000331F7F9E36>I<FFFE
003FF8FFFE003FF807F000038007F000070003F800060001FC000C0001FC001C0000FE00180000
7F003000003F807000003F806000001FC0C000000FE1C000000FE180000007F300000003FF0000
0001FE00000001FC00000000FC00000000FC00000000FC00000000FC00000000FC00000000FC00
000000FC00000000FC00000000FC00000000FC00000000FC0000001FFFE000001FFFE000251F7F
9E28>89 D<07FC001FFF003F0F803F07C03F03E03F03E00C03E00003E0007FE007FBE01F03E03C
03E07C03E0F803E0F803E0F803E0FC05E07E0DE03FF9FE0FE07E17147F9319>97
D<FF0000FF00001F00001F00001F00001F00001F00001F00001F00001F00001F00001F00001F1F
C01F7FF01FE0F81F807C1F007E1F003E1F003E1F003F1F003F1F003F1F003F1F003F1F003F1F00
3E1F003E1F007C1F807C1EC1F81C7FE0181F8018207E9F1D>I<01FE0007FF801F0FC03E0FC03E
0FC07C0FC07C0300FC0000FC0000FC0000FC0000FC0000FC00007C00007E00003E00603F00C01F
81C007FF0001FC0013147E9317>I<0007F80007F80000F80000F80000F80000F80000F80000F8
0000F80000F80000F80000F801F8F80FFEF81F83F83E01F87E00F87C00F87C00F8FC00F8FC00F8
FC00F8FC00F8FC00F8FC00F87C00F87C00F87E00F83E01F81F07F80FFEFF03F8FF18207E9F1D>
I<01FE0007FF801F83E03F01F07E00F07E00F8FC00F8FC00F8FFFFF8FFFFF8FC0000FC0000FC00
007C00007E00003E00183F00380F807007FFE000FF8015147F9318>I<001F8000FFC001F3E003
E7E003C7E007C7E007C3C007C00007C00007C00007C00007C000FFFC00FFFC0007C00007C00007
C00007C00007C00007C00007C00007C00007C00007C00007C00007C00007C00007C00007C00007
C0003FFC003FFC0013207F9F10>I<01FC3C07FFFE0F079E1E03DE3E03E03E03E03E03E03E03E0
3E03E01E03C00F07800FFF0009FC001800001800001C00001FFF800FFFF007FFF81FFFFC3C007C
70003EF0001EF0001EF0001E78003C78003C3F01F80FFFE001FF00171E7F931A>I<FF0000FF00
001F00001F00001F00001F00001F00001F00001F00001F00001F00001F00001F0FC01F3FE01F61
F01FC0F81F80F81F00F81F00F81F00F81F00F81F00F81F00F81F00F81F00F81F00F81F00F81F00
F81F00F81F00F8FFE3FFFFE3FF18207D9F1D>I<1C003F007F007F007F003F001C000000000000
00000000000000FF00FF001F001F001F001F001F001F001F001F001F001F001F001F001F001F00
1F001F00FFE0FFE00B217EA00F>I<FF0000FF00001F00001F00001F00001F00001F00001F0000
1F00001F00001F00001F00001F01FE1F01FE1F00F01F01C01F03801F07001F1E001F38001F7C00
1FFE001FFF001F1F001E0F801E07C01E07E01E03F01E01F01E00F8FFC3FFFFC3FF18207E9F1C>
107 D<FF00FF001F001F001F001F001F001F001F001F001F001F001F001F001F001F001F001F00
1F001F001F001F001F001F001F001F001F001F001F001F00FFE0FFE00B207E9F0F>I<FE0FE03F
80FE1FF07FC01E70F9C3E01E407D01F01E807E01F01F807E01F01F007C01F01F007C01F01F007C
01F01F007C01F01F007C01F01F007C01F01F007C01F01F007C01F01F007C01F01F007C01F01F00
7C01F01F007C01F0FFE3FF8FFEFFE3FF8FFE27147D932C>I<FE0FC0FE3FE01E61F01EC0F81E80
F81F00F81F00F81F00F81F00F81F00F81F00F81F00F81F00F81F00F81F00F81F00F81F00F81F00
F8FFE3FFFFE3FF18147D931D>I<01FF0007FFC01F83F03E00F83E00F87C007C7C007CFC007EFC
007EFC007EFC007EFC007EFC007E7C007C7C007C3E00F83E00F81F83F007FFC001FF0017147F93
1A>I<FF1FC0FF7FF01FE1F81F80FC1F007E1F007E1F003E1F003F1F003F1F003F1F003F1F003F
1F003F1F003E1F007E1F007C1F80FC1FC1F81F7FE01F1F801F00001F00001F00001F00001F0000
1F00001F0000FFE000FFE000181D7E931D>I<FE3E00FE7F801ECFC01E8FC01E8FC01F8FC01F03
001F00001F00001F00001F00001F00001F00001F00001F00001F00001F00001F0000FFF000FFF0
0012147E9316>114 D<0FE63FFE701E600EE006E006F800FFC07FF83FFC1FFE03FE001FC007C0
07E007F006F81EFFFCC7F010147E9315>I<01800180018003800380038007800F803F80FFFCFF
FC0F800F800F800F800F800F800F800F800F800F800F860F860F860F860F8607CC03F801F00F1D
7F9C14>I<FF07F8FF07F81F00F81F00F81F00F81F00F81F00F81F00F81F00F81F00F81F00F81F
00F81F00F81F00F81F00F81F01F81F01F80F06F807FCFF03F8FF18147D931D>I<FFE07F80FFE0
7F801F001C000F8018000F80180007C0300007C0300003E0600003E0600001F0C00001F0C00001
F9C00000F9800000FF8000007F0000007F0000003E0000003E0000001C0000001C000019147F93
1C>I<FFE7FE1FE0FFE7FE1FE01F00F007001F00F803000F80F806000F80F8060007C1BC0C0007
C1BC0C0007C1BE0C0003E31E180003E31E180001F60F300001F60F300001F60FB00000FC07E000
00FC07E000007803C000007803C000007803C000003001800023147F9326>I<FFE1FF00FFE1FF
000F80700007C0E00007E0C00003E1800001F3800000FF0000007E0000003E0000003F0000007F
8000006F800000C7C0000183E0000381F0000701F8000E00FC00FF81FF80FF81FF8019147F931C
>I<FFE07F80FFE07F801F001C000F8018000F80180007C0300007C0300003E0600003E0600001
F0C00001F0C00001F9C00000F9800000FF8000007F0000007F0000003E0000003E0000001C0000
001C0000001800000018000078300000FC300000FC600000C0E00000E1C000007F8000001E0000
00191D7F931C>I<3FFFE03FFFE03C0FC0381FC0701F80603F00607E0060FE0000FC0001F80003
F00007E0600FE0600FC0601F80E03F00C07F01C07E03C0FFFFC0FFFFC013147F9317>I
E /Fi 42 122 df<FFFF80FFFF80FFFF80FFFF80FFFF80FFFF8011067F9017>45
D<000E00001E00007E0007FE00FFFE00FFFE00F8FE0000FE0000FE0000FE0000FE0000FE0000FE
0000FE0000FE0000FE0000FE0000FE0000FE0000FE0000FE0000FE0000FE0000FE0000FE0000FE
0000FE0000FE0000FE0000FE0000FE0000FE0000FE0000FE0000FE0000FE007FFFFE7FFFFE7FFF
FE17277BA622>49 D<00FF800003FFF0000FFFFC001F03FE003800FF007C007F80FE003FC0FF00
3FC0FF003FE0FF001FE0FF001FE07E001FE03C003FE000003FE000003FC000003FC000007F8000
007F000000FE000000FC000001F8000003F0000003E00000078000000F0000001E0000003C00E0
007000E000E000E001C001C0038001C0070001C00FFFFFC01FFFFFC03FFFFFC07FFFFFC0FFFFFF
80FFFFFF80FFFFFF801B277DA622>I<007F800003FFF00007FFFC000F81FE001F00FF003F80FF
003F807F803F807F803F807F801F807F800F007F800000FF000000FF000000FE000001FC000001
F8000007F00000FFC00000FFF0000001FC0000007E0000007F0000007F8000003FC000003FC000
003FE000003FE03C003FE07E003FE0FF003FE0FF003FE0FF003FC0FF007FC07E007F807C007F00
3F01FE001FFFFC0007FFF00000FF80001B277DA622>I<00000E0000001E0000003E0000007E00
0000FE000000FE000001FE000003FE0000077E00000E7E00000E7E00001C7E0000387E0000707E
0000E07E0000E07E0001C07E0003807E0007007E000E007E000E007E001C007E0038007E007000
7E00E0007E00FFFFFFF8FFFFFFF8FFFFFFF80000FE000000FE000000FE000000FE000000FE0000
00FE000000FE000000FE00007FFFF8007FFFF8007FFFF81D277EA622>I<0C0003000F803F000F
FFFE000FFFFC000FFFF8000FFFF0000FFFE0000FFFC0000FFE00000E0000000E0000000E000000
0E0000000E0000000E0000000E7FC0000FFFF8000F80FC000E003E000C003F0000001F8000001F
C000001FC000001FE000001FE018001FE07C001FE0FE001FE0FE001FE0FE001FE0FE001FC0FC00
1FC078003F8078003F803C007F001F01FE000FFFF80003FFF00000FF80001B277DA622>I<0007
F000003FFC0000FFFE0001FC0F0003F01F8007E03F800FC03F801FC03F801F803F803F801F003F
8000007F0000007F0000007F000000FF000000FF0FC000FF3FF800FF707C00FFC03E00FFC03F00
FF801F80FF801FC0FF001FC0FF001FE0FF001FE0FF001FE07F001FE07F001FE07F001FE07F001F
E03F001FE03F001FC01F801FC01F803F800FC03F0007E07E0003FFFC0000FFF000003FC0001B27
7DA622>I<380000003E0000003FFFFFF03FFFFFF03FFFFFF07FFFFFE07FFFFFC07FFFFF807FFF
FF0070000E0070000E0070001C00E0003800E0007000E000E0000000E0000001C0000003800000
07800000078000000F0000000F0000001F0000001F0000003F0000003E0000003E0000007E0000
007E0000007E0000007E000000FE000000FE000000FE000000FE000000FE000000FE000000FE00
0000FE0000007C0000003800001C297CA822>I<003FC00001FFF00003FFFC0007C07E000F003F
001E001F001E000F803E000F803E000F803F000F803F000F803FC00F003FF01F001FFC1E001FFE
3C000FFFF80007FFE00003FFF80001FFFC0001FFFE0007FFFF000F0FFF801E03FFC03C01FFC07C
007FE078001FE0F80007E0F80007E0F80003E0F80003E0F80003E0F80003C07C0003C07C000780
3F000F001FC03E000FFFFC0003FFF800007FC0001B277DA622>I<007F800001FFF00007FFF800
0FE0FC001F807E003F803F007F003F007F001F80FF001F80FF001FC0FF001FC0FF001FC0FF001F
E0FF001FE0FF001FE0FF001FE07F001FE07F003FE03F003FE01F807FE00F807FE007C1DFE003FF
9FE0007E1FE000001FE000001FC000001FC000001FC000003F801F003F803F803F003F803F003F
807E003F807C001F01F8001E03F0000FFFE00007FF800001FE00001B277DA622>I<0000038000
00000007C00000000007C0000000000FE0000000000FE0000000000FE0000000001FF000000000
1FF0000000003FF8000000003FF8000000003FF80000000073FC0000000073FC00000000F3FE00
000000E1FE00000000E1FE00000001C0FF00000001C0FF00000003C0FF80000003807F80000007
807FC0000007003FC0000007003FC000000E003FE000000E001FE000001E001FF000001C000FF0
00001FFFFFF000003FFFFFF800003FFFFFF80000780007FC0000700003FC0000700003FC0000E0
0001FE0000E00001FE0001E00001FF0001C00000FF0001C00000FF00FFFE001FFFFEFFFE001FFF
FEFFFE001FFFFE2F297EA834>65 D<00003FF001800003FFFE0380000FFFFF8780003FF007DF80
00FF8001FF8001FE00007F8003FC00003F8007F000001F800FF000000F801FE0000007801FE000
0007803FC0000007803FC0000003807FC0000003807F80000003807F8000000000FF8000000000
FF8000000000FF8000000000FF8000000000FF8000000000FF8000000000FF8000000000FF8000
000000FF80000000007F80000000007F80000000007FC0000003803FC0000003803FC000000380
1FE0000003801FE0000007000FF00000070007F000000E0003FC00001E0001FE00003C0000FF80
00F800003FF007E000000FFFFFC0000003FFFF000000003FF8000029297CA832>67
D<FFFFFFFFE0FFFFFFFFE0FFFFFFFFE003FC001FE003FC0007F003FC0001F003FC0001F003FC00
00F003FC00007003FC00007003FC00007003FC01C07803FC01C03803FC01C03803FC01C03803FC
03C00003FC03C00003FC0FC00003FFFFC00003FFFFC00003FFFFC00003FC0FC00003FC03C00003
FC03C00003FC01C00E03FC01C00E03FC01C00E03FC01C01C03FC00001C03FC00001C03FC00001C
03FC00003C03FC00003803FC00007803FC0000F803FC0001F803FC0003F803FC001FF8FFFFFFFF
F0FFFFFFFFF0FFFFFFFFF027297DA82D>69 D<FFFFFCFFFFFCFFFFFC01FE0001FE0001FE0001FE
0001FE0001FE0001FE0001FE0001FE0001FE0001FE0001FE0001FE0001FE0001FE0001FE0001FE
0001FE0001FE0001FE0001FE0001FE0001FE0001FE0001FE0001FE0001FE0001FE0001FE0001FE
0001FE0001FE0001FE0001FE0001FE00FFFFFCFFFFFCFFFFFC16297EA81A>73
D<0000FFE000000007FFFC0000003FC07F8000007F001FC00001FC0007F00003F80003F80007F0
0001FC000FF00001FE001FE00000FF001FE00000FF003FC000007F803FC000007F807FC000007F
C07F8000003FC07F8000003FC07F8000003FC0FF8000003FE0FF8000003FE0FF8000003FE0FF80
00003FE0FF8000003FE0FF8000003FE0FF8000003FE0FF8000003FE0FF8000003FE0FF8000003F
E07F8000003FC07FC000007FC07FC000007FC03FC000007F803FC000007F801FE00000FF001FE0
0000FF000FF00001FE0007F00001FC0003F80003F80001FC0007F00000FF001FE000003FC07F80
00000FFFFE00000000FFE000002B297CA834>79 D<FFFFFFF800FFFFFFFF00FFFFFFFFC003FC00
3FE003FC000FF003FC0007F803FC0007FC03FC0003FC03FC0003FE03FC0003FE03FC0003FE03FC
0003FE03FC0003FE03FC0003FE03FC0003FE03FC0003FC03FC0007FC03FC0007F803FC000FF003
FC003FE003FFFFFF8003FFFFFE0003FC00000003FC00000003FC00000003FC00000003FC000000
03FC00000003FC00000003FC00000003FC00000003FC00000003FC00000003FC00000003FC0000
0003FC00000003FC00000003FC000000FFFFF00000FFFFF00000FFFFF0000027297DA82F>I<FF
FFFFE00000FFFFFFFE0000FFFFFFFF800003FC007FE00003FC000FF00003FC0007F80003FC0007
FC0003FC0003FC0003FC0003FE0003FC0003FE0003FC0003FE0003FC0003FE0003FC0003FE0003
FC0003FE0003FC0003FC0003FC0007F80003FC0007F80003FC001FE00003FC007FC00003FFFFFE
000003FFFFF0000003FC00FC000003FC007F000003FC003F800003FC003F800003FC001FC00003
FC001FE00003FC001FE00003FC001FE00003FC001FE00003FC001FE00003FC001FF00003FC001F
F00003FC001FF00003FC001FF00703FC001FF80703FC000FF80703FC0007F80EFFFFF003FE1CFF
FFF001FFF8FFFFF0003FF030297DA834>82 D<007F806003FFF0E007FFF9E00F807FE01F001FE0
3E0007E07C0003E07C0001E0FC0001E0FC0001E0FC0000E0FE0000E0FE0000E0FF000000FFC000
007FFE00007FFFE0003FFFFC001FFFFE000FFFFF8007FFFFC003FFFFE000FFFFE00007FFF00000
7FF000000FF8000007F8000003F8600001F8E00001F8E00001F8E00001F8F00001F0F00001F0F8
0003F0FC0003E0FF0007C0FFE01F80F3FFFF00E0FFFE00C01FF0001D297CA826>I<FFFFF0003F
FF80FFFFF0003FFF80FFFFF0003FFF8003FE000001E00001FE000001C00001FF000003C00000FF
000003800000FF0000038000007F8000070000007F8000070000007FC0000F0000003FC0000E00
00003FE0001E0000001FE0001C0000001FF0001C0000000FF000380000000FF0003800000007F8
007000000007F8007000000007FC00F000000003FC00E000000003FE01E000000001FE01C00000
0001FF01C000000000FF038000000000FF038000000000FF8780000000007F8700000000007FCF
00000000003FCE00000000003FFE00000000001FFC00000000001FFC00000000000FF800000000
000FF800000000000FF8000000000007F0000000000007F0000000000003E0000000000003E000
0000000001C000000031297FA834>86 D<01FF800007FFF0000F81F8001FC07E001FC07E001FC0
3F000F803F8007003F8000003F8000003F8000003F80000FFF8000FFFF8007FC3F800FE03F803F
803F803F003F807F003F80FE003F80FE003F80FE003F80FE003F807E007F807F00DF803F839FFC
0FFF0FFC01FC03FC1E1B7E9A21>97 D<FFE0000000FFE0000000FFE00000000FE00000000FE000
00000FE00000000FE00000000FE00000000FE00000000FE00000000FE00000000FE00000000FE0
0000000FE00000000FE00000000FE1FE00000FE7FF80000FFE07E0000FF801F0000FF000F8000F
E000FC000FE000FE000FE0007F000FE0007F000FE0007F000FE0007F800FE0007F800FE0007F80
0FE0007F800FE0007F800FE0007F800FE0007F800FE0007F000FE0007F000FE0007F000FE000FE
000FE000FC000FF001F8000FF803F0000F9E07E0000F07FF80000E01FC0000212A7EA926>I<00
1FF80000FFFE0003F01F0007E03F800FC03F801F803F803F801F007F800E007F0000007F000000
FF000000FF000000FF000000FF000000FF000000FF000000FF0000007F0000007F0000007F8000
003F8001C01F8001C00FC0038007E0070003F01E0000FFFC00001FE0001A1B7E9A1F>I<00003F
F80000003FF80000003FF800000003F800000003F800000003F800000003F800000003F8000000
03F800000003F800000003F800000003F800000003F800000003F800000003F800001FE3F80000
FFFBF80003F03FF80007E00FF8000FC007F8001F8003F8003F8003F8007F0003F8007F0003F800
7F0003F800FF0003F800FF0003F800FF0003F800FF0003F800FF0003F800FF0003F800FF0003F8
007F0003F8007F0003F8007F0003F8003F8003F8001F8003F8000F8007F80007C00FF80003F03B
FF8000FFF3FF80003FC3FF80212A7EA926>I<003FE00001FFF80003F07E0007C01F000F801F80
1F800F803F800FC07F000FC07F0007C07F0007E0FF0007E0FF0007E0FFFFFFE0FFFFFFE0FF0000
00FF000000FF0000007F0000007F0000007F0000003F8000E01F8000E00FC001C007E0038003F8
1F0000FFFE00001FF0001B1B7E9A20>I<0007F0003FFC00FE3E01F87F03F87F03F07F07F07F07
F03E07F00007F00007F00007F00007F00007F00007F000FFFFC0FFFFC0FFFFC007F00007F00007
F00007F00007F00007F00007F00007F00007F00007F00007F00007F00007F00007F00007F00007
F00007F00007F00007F00007F00007F0007FFF807FFF807FFF80182A7EA915>I<00FF81F003FF
E7F80FC1FE7C1F80FC7C1F007C383F007E107F007F007F007F007F007F007F007F007F007F007F
007F003F007E001F007C001F80FC000FC1F8001FFFE00018FF800038000000380000003C000000
3E0000003FFFF8001FFFFF001FFFFF800FFFFFC007FFFFE01FFFFFF03E0007F07C0001F8F80000
F8F80000F8F80000F8F80000F87C0001F03C0001E01F0007C00FC01F8003FFFE00007FF0001E28
7E9A22>I<FFE0000000FFE0000000FFE00000000FE00000000FE00000000FE00000000FE00000
000FE00000000FE00000000FE00000000FE00000000FE00000000FE00000000FE00000000FE000
00000FE07F00000FE1FFC0000FE787E0000FEE03F0000FF803F0000FF803F8000FF003F8000FF0
03F8000FE003F8000FE003F8000FE003F8000FE003F8000FE003F8000FE003F8000FE003F8000F
E003F8000FE003F8000FE003F8000FE003F8000FE003F8000FE003F8000FE003F8000FE003F800
0FE003F800FFFE3FFF80FFFE3FFF80FFFE3FFF80212A7DA926>I<07000FC01FE03FE03FE03FE0
1FE00FC007000000000000000000000000000000FFE0FFE0FFE00FE00FE00FE00FE00FE00FE00F
E00FE00FE00FE00FE00FE00FE00FE00FE00FE00FE00FE00FE00FE00FE0FFFEFFFEFFFE0F2B7DAA
14>I<FFE00000FFE00000FFE000000FE000000FE000000FE000000FE000000FE000000FE00000
0FE000000FE000000FE000000FE000000FE000000FE000000FE01FFC0FE01FFC0FE01FFC0FE007
800FE00F000FE01E000FE03C000FE078000FE0E0000FE3C0000FE7C0000FEFE0000FFFE0000FFF
F0000FF3F8000FE3F8000FC1FC000FC0FE000FC07F000FC07F000FC03F800FC01FC00FC00FC00F
C00FE0FFFC3FFEFFFC3FFEFFFC3FFE1F2A7EA924>107 D<FFE0FFE0FFE00FE00FE00FE00FE00F
E00FE00FE00FE00FE00FE00FE00FE00FE00FE00FE00FE00FE00FE00FE00FE00FE00FE00FE00FE0
0FE00FE00FE00FE00FE00FE00FE00FE00FE00FE00FE00FE0FFFEFFFEFFFE0F2A7DA914>I<FFC0
7F800FF000FFC1FFE03FFC00FFC383F0707E000FC603F8C07F000FCC01F9803F000FD801FF003F
800FF001FE003F800FF001FE003F800FE001FC003F800FE001FC003F800FE001FC003F800FE001
FC003F800FE001FC003F800FE001FC003F800FE001FC003F800FE001FC003F800FE001FC003F80
0FE001FC003F800FE001FC003F800FE001FC003F800FE001FC003F800FE001FC003F800FE001FC
003F800FE001FC003F80FFFE1FFFC3FFF8FFFE1FFFC3FFF8FFFE1FFFC3FFF8351B7D9A3A>I<FF
C07F0000FFC1FFC000FFC787E0000FCE03F0000FD803F0000FD803F8000FF003F8000FF003F800
0FE003F8000FE003F8000FE003F8000FE003F8000FE003F8000FE003F8000FE003F8000FE003F8
000FE003F8000FE003F8000FE003F8000FE003F8000FE003F8000FE003F8000FE003F8000FE003
F800FFFE3FFF80FFFE3FFF80FFFE3FFF80211B7D9A26>I<003FE00001FFFC0003F07E000FC01F
801F800FC03F800FE03F0007E07F0007F07F0007F07F0007F0FF0007F8FF0007F8FF0007F8FF00
07F8FF0007F8FF0007F8FF0007F8FF0007F87F0007F07F0007F03F800FE03F800FE01F800FC00F
C01F8007F07F0001FFFC00003FE0001D1B7E9A22>I<FFE1FE0000FFE7FF8000FFFE07E0000FF8
03F0000FF001F8000FE000FC000FE000FE000FE000FF000FE0007F000FE0007F000FE0007F800F
E0007F800FE0007F800FE0007F800FE0007F800FE0007F800FE0007F800FE0007F000FE000FF00
0FE000FF000FE000FE000FE001FC000FF001F8000FF803F0000FFE0FE0000FE7FF80000FE1FC00
000FE00000000FE00000000FE00000000FE00000000FE00000000FE00000000FE00000000FE000
00000FE0000000FFFE000000FFFE000000FFFE00000021277E9A26>I<FFC1F0FFC7FCFFCE3E0F
D87F0FD87F0FF07F0FF03E0FF01C0FE0000FE0000FE0000FE0000FE0000FE0000FE0000FE0000F
E0000FE0000FE0000FE0000FE0000FE0000FE0000FE000FFFF00FFFF00FFFF00181B7E9A1C>
114 D<03FE300FFFF01E03F03800F0700070F00070F00070F80070FC0000FFE0007FFE007FFF80
3FFFE01FFFF007FFF800FFF80003FC0000FC60007CE0003CF0003CF00038F80038FC0070FF01E0
F7FFC0C1FF00161B7E9A1B>I<00700000700000700000700000F00000F00000F00001F00003F0
0003F00007F0001FFFF0FFFFF0FFFFF007F00007F00007F00007F00007F00007F00007F00007F0
0007F00007F00007F00007F00007F00007F03807F03807F03807F03807F03807F03803F03803F8
7001F86000FFC0001F8015267FA51B>I<FFE03FF800FFE03FF800FFE03FF8000FE003F8000FE0
03F8000FE003F8000FE003F8000FE003F8000FE003F8000FE003F8000FE003F8000FE003F8000F
E003F8000FE003F8000FE003F8000FE003F8000FE003F8000FE003F8000FE003F8000FE003F800
0FE003F8000FE007F80007E007F80007E00FF80003F03BFF8001FFF3FF80003FC3FF80211B7D9A
26>I<FFFE03FF80FFFE03FF80FFFE03FF8007F000700007F000700007F800F00003F800E00003
FC01E00001FC01C00001FC01C00000FE03800000FE038000007F070000007F070000007F8F0000
003F8E0000003FDE0000001FDC0000001FDC0000000FF80000000FF80000000FF800000007F000
000007F000000003E000000003E000000001C00000211B7F9A24>I<FFFE7FFC0FFEFFFE7FFC0F
FEFFFE7FFC0FFE0FE007E000E007F003F001C007F003F001C007F807F803C003F807F8038003F8
07F8038001FC0EFC070001FC0EFC070001FE1EFC0F0000FE1C7E0E0000FE1C7E0E0000FF383F1E
00007F383F1C00007F783F3C00003FF01FB800003FF01FB800003FF01FF800001FE00FF000001F
E00FF000000FC007E000000FC007E000000FC007E00000078003C00000078003C0002F1B7F9A32
>I<FFFC0FFF00FFFC0FFF00FFFC0FFF0007F003C00003F807800001FC07800000FE0F000000FF
1E0000007F3C0000003FF80000001FF00000000FF00000000FF000000007F000000007F8000000
0FFC0000001FFE0000001EFE0000003C7F000000783F800000F01FC00001E01FE00001C00FE000
03C007F000FFF01FFF80FFF01FFF80FFF01FFF80211B7F9A24>I<FFFE03FF80FFFE03FF80FFFE
03FF8007F000700007F000700007F800F00003F800E00003FC01E00001FC01C00001FC01C00000
FE03800000FE038000007F070000007F070000007F8F0000003F8E0000003FDE0000001FDC0000
001FDC0000000FF80000000FF80000000FF800000007F000000007F000000003E000000003E000
000001C000000001C000000003800000000380000038078000007C07000000FE0F000000FE0E00
0000FE1E000000FE3C0000007C780000003FE00000000FC000000021277F9A24>I
E /Fj 75 124 df<00FC000182000703000607000E02000E00000E00000E00000E00000E0000FF
FF000E07000E07000E07000E07000E07000E07000E07000E07000E07000E07000E07000E07000E
07000E07007F0FE0131A809915>12 D<007E1F8001C170400703C060060380E00E0380400E0380
000E0380000E0380000E0380000E038000FFFFFFE00E0380E00E0380E00E0380E00E0380E00E03
80E00E0380E00E0380E00E0380E00E0380E00E0380E00E0380E00E0380E00E0380E00E0380E07F
8FE3FC1E1A809920>14 D<60C0F1E0F9F068D0081008100810102010202040C1800C0B7F9913>
34 D<60F0F868080808101020C0050B7D990B>39 D<00800100020004000C0008001800300030
0030006000600060006000E000E000E000E000E000E000E000E000E000E0006000600060006000
300030003000180008000C00040002000100008009267D9B0F>I<800040002000100018000800
0C0006000600060003000300030003000380038003800380038003800380038003800380030003
00030003000600060006000C0008001800100020004000800009267E9B0F>I<60F0F070101010
20204080040B7D830B>44 D<FFC0FFC00A0280880D>I<60F0F06004047D830B>I<000C000C001C
0018001800380030003000700060006000E000C000C001C001800180038003000700060006000E
000C000C001C0018001800380030003000700060006000E000C000C0000E257E9B13>I<078018
603030303060186018E01CE01CE01CE01CE01CE01CE01CE01CE01CE01CE01CE01C601860187038
3030186007800E187E9713>I<03000700FF000700070007000700070007000700070007000700
0700070007000700070007000700070007000700FFF00C187D9713>I<0F80106020304038803C
C01CE01C401C003C003800380070006000C001800100020004040804100430083FF87FF8FFF80E
187E9713>I<0F8010E02070607870382038007800700070006000C00F8000E000700038003C00
3CE03CE03CC03C4038407030E00F800E187E9713>I<00300030007000F000F001700370027004
700C7008701070307020704070C070FFFF00700070007000700070007007FF10187F9713>I<30
183FF03FE03FC02000200020002000200027C03860203000380018001C001C401CE01CE01C8018
4038403030E00F800E187E9713>I<01E006100C1818383038300070006000E000E7C0E860F030
F018E018E01CE01CE01C601C601C701830183030186007C00E187E9713>I<40007FFE7FFC7FFC
400880108010802000400040008001800180010003000300030003000700070007000700070007
0002000F197E9813>I<078018603030201860186018601870103C303E600F8007C019F030F860
38401CC00CC00CC00CC00C6008201018600FC00E187E9713>I<07801860303070306018E018E0
18E01CE01CE01C601C603C303C185C0F9C001C00180018003870307060604021801F000E187E97
13>I<60F0F060000000000000000060F0F0701010102020408004177D8F0B>59
D<000C0000000C0000000C0000001E0000001E0000003F00000027000000270000004380000043
8000004380000081C0000081C0000081C0000100E0000100E00001FFE000020070000200700006
007800040038000400380008001C0008001C001C001E00FF00FFC01A1A7F991D>65
D<FFFF000E01C00E00E00E00700E00780E00780E00780E00780E00780E00F00E00E00E03C00FFF
800E01E00E00700E00780E003C0E003C0E003C0E003C0E003C0E00380E00780E00F00E01E0FFFF
80161A7E991B>I<003F0201C0C603002E0E001E1C000E1C0006380006780002700002700002F0
0000F00000F00000F00000F00000F000007000027000027800023800041C00041C00080E000803
003001C0C0003F00171A7E991C>I<FFFF000E01C00E00E00E00300E00380E001C0E001C0E000E
0E000E0E000F0E000F0E000F0E000F0E000F0E000F0E000F0E000F0E000E0E000E0E001E0E001C
0E00380E00380E00700E01C0FFFF00181A7E991D>I<FFFFF00E00700E00300E00100E00180E00
080E00080E00080E04000E04000E04000E0C000FFC000E0C000E04000E04000E04000E00040E00
040E00080E00080E00080E00180E00380E0070FFFFF0161A7E991A>I<FFFFE00E00E00E00600E
00200E00300E00100E00100E00100E04000E04000E04000E0C000FFC000E0C000E04000E04000E
04000E00000E00000E00000E00000E00000E00000E00000E0000FFF000141A7E9919>I<003F02
0001C0C60003002E000E001E001C000E001C00060038000600780002007000020070000200F000
0000F0000000F0000000F0000000F0000000F001FFC070000E0070000E0078000E0038000E001C
000E001C000E000E000E000300160001C06600003F82001A1A7E991E>I<FFE7FF0E00700E0070
0E00700E00700E00700E00700E00700E00700E00700E00700E00700FFFF00E00700E00700E0070
0E00700E00700E00700E00700E00700E00700E00700E00700E0070FFE7FF181A7E991D>I<FFE0
0E000E000E000E000E000E000E000E000E000E000E000E000E000E000E000E000E000E000E000E
000E000E000E000E00FFE00B1A7F990E>I<1FFC00E000E000E000E000E000E000E000E000E000
E000E000E000E000E000E000E000E000E000E040E0E0E0E0E041C061801E000E1A7D9914>I<FF
F0000E00000E00000E00000E00000E00000E00000E00000E00000E00000E00000E00000E00000E
00000E00000E00000E00000E00200E00200E00200E00600E00400E00400E00C00E03C0FFFFC013
1A7E9918>76 D<FF0003FC0F0003C00F0003C00B8005C00B8005C00B8005C009C009C009C009C0
09C009C008E011C008E011C008E011C0087021C0087021C0083841C0083841C0083841C0081C81
C0081C81C0081C81C0080F01C0080F01C0080F01C0080601C01C0601C0FF861FFC1E1A7E9923>
I<FE01FF0F00380F00100B80100B801009C01008E01008E010087010087010083810081C10081C
10080E10080E100807100803900803900801D00801D00800F00800700800700800301C0030FF80
10181A7E991D>I<007F000001C1C000070070000E0038001C001C003C001E0038000E0078000F
0070000700F0000780F0000780F0000780F0000780F0000780F0000780F0000780F00007807800
0F0078000F0038000E003C001E001C001C000E0038000700700001C1C000007F0000191A7E991E
>I<FFFF000E03C00E00E00E00700E00700E00780E00780E00780E00780E00700E00700E00E00E
03C00FFF000E00000E00000E00000E00000E00000E00000E00000E00000E00000E00000E0000FF
E000151A7E991A>I<007F000001C1C000070070000E0038001C001C003C001E0038000E007800
0F0070000700F0000780F0000780F0000780F0000780F0000780F0000780F0000780F000078070
00070078000F0038000E003C1C1E001C221C000E4138000741F00001E1C000007F80800000C080
0000C0800000E18000007F0000007F0000003E0000001C0019217E991E>I<FFFC00000E078000
0E01C0000E00E0000E00F0000E00F0000E00F0000E00F0000E00F0000E00E0000E01C0000E0780
000FFC00000E0600000E0300000E0180000E01C0000E01C0000E01C0000E01E0000E01E0000E01
E0000E01E0800E00F0800E007100FFE03E00191A7E991C>I<0FC21836200E6006C006C002C002
C002E00070007E003FE01FF807FC003E000E00070003800380038003C002C006E004D81887E010
1A7E9915>I<7FFFFF00701C0700401C0100401C0100C01C0180801C0080801C0080801C008000
1C0000001C0000001C0000001C0000001C0000001C0000001C0000001C0000001C0000001C0000
001C0000001C0000001C0000001C0000001C0000001C0000001C000003FFE000191A7F991C>I<
FFE1FF0E00380E00100E00100E00100E00100E00100E00100E00100E00100E00100E00100E0010
0E00100E00100E00100E00100E00100E00100E001006002007002003004001804000C180003E00
181A7E991D>I<FF801FC01E000F001C0006000E0004000E000400070008000700080007000800
038010000380100003C0300001C0200001C0200000E0400000E0400000E0400000708000007080
00003900000039000000390000001E0000001E0000001E0000000C0000000C00001A1A7F991D>
I<FF83FF0FF03C007801C01C007800801C007800800E007801000E007801000E009C010007009C
020007009C020007010E020007010E020003810E04000382070400038207040001C207080001C4
03880001C403880000E403900000E403900000E801D000007801E000007801E000007000E00000
7000E000003000C0000020004000241A7F9927>I<7FC0FF000F003C0007003000078020000380
600001C0400001E0800000E1800000710000007A0000003C0000001C0000001E0000001E000000
17000000278000004380000041C0000081E0000100E0000100700002007800040038000C001C00
1E003E00FF80FFC01A1A7F991D>I<FF801FE01E0007000E0006000F0004000700080007800800
03C0100001C0300001E0200000F04000007040000078800000388000001D0000001F0000000E00
00000E0000000E0000000E0000000E0000000E0000000E0000000E0000000E0000000E000000FF
E0001B1A7F991D>I<FEFEC0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0
C0C0C0C0C0FEFE07257D9B0B>91 D<1830204040804080810081008100B160F9F078F030600C0B
7B9913>I<FEFE0606060606060606060606060606060606060606060606060606060606060606
06FEFE0725809B0B>I<3F8070C070E020700070007007F01C7030707070E070E071E071E0F171
FB1E3C10107E8F13>97 D<FC00001C00001C00001C00001C00001C00001C00001C00001C00001C
00001CF8001F0E001E07001C03801C01801C01C01C01C01C01C01C01C01C01C01C01C01C03801C
03001E07001B0C0010F000121A7F9915>I<07F80C1C381C30087000E000E000E000E000E000E0
007000300438080C1807E00E107F8F11>I<007E00000E00000E00000E00000E00000E00000E00
000E00000E00000E0003CE000C3E00380E00300E00700E00E00E00E00E00E00E00E00E00E00E00
E00E00600E00700E00381E001C2E0007CFC0121A7F9915>I<07C01C3030187018600CE00CFFFC
E000E000E000E0006000300438080C1807E00E107F8F11>I<01F0031807380E100E000E000E00
0E000E000E00FFC00E000E000E000E000E000E000E000E000E000E000E000E000E000E007FE00D
1A80990C>I<0FCE187330307038703870387038303018602FC02000600070003FF03FFC1FFE60
0FC003C003C003C0036006381C07E010187F8F13>I<FC00001C00001C00001C00001C00001C00
001C00001C00001C00001C00001CF8001D0C001E0E001E0E001C0E001C0E001C0E001C0E001C0E
001C0E001C0E001C0E001C0E001C0E001C0E00FF9FC0121A7F9915>I<18003C003C0018000000
00000000000000000000FC001C001C001C001C001C001C001C001C001C001C001C001C001C001C
00FF80091A80990B>I<018003C003C001800000000000000000000000000FC001C001C001C001
C001C001C001C001C001C001C001C001C001C001C001C001C001C001C041C0E180E3007E000A21
82990C>I<FC00001C00001C00001C00001C00001C00001C00001C00001C00001C00001C3F801C
1E001C18001C10001C20001C40001DC0001FE0001CE0001C70001C78001C38001C1C001C1E001C
1F00FF3FC0121A7F9914>I<FC001C001C001C001C001C001C001C001C001C001C001C001C001C
001C001C001C001C001C001C001C001C001C001C001C00FF80091A80990B>I<FC7C1F001D8E63
801E0781C01E0781C01C0701C01C0701C01C0701C01C0701C01C0701C01C0701C01C0701C01C07
01C01C0701C01C0701C01C0701C0FF9FE7F81D107F8F20>I<FCF8001D0C001E0E001E0E001C0E
001C0E001C0E001C0E001C0E001C0E001C0E001C0E001C0E001C0E001C0E00FF9FC012107F8F15
>I<07E01C38300C700E6006E007E007E007E007E007E0076006700E381C1C3807E010107F8F13>
I<FCF8001F0E001E07001C03801C03801C01C01C01C01C01C01C01C01C01C01C01C01C03801C03
001E07001F0C001CF0001C00001C00001C00001C00001C00001C0000FF800012177F8F15>I<03
C2000C2600381E00300E00700E00E00E00E00E00E00E00E00E00E00E00E00E00700E00700E0038
1E001C2E0007CE00000E00000E00000E00000E00000E00000E00007FC012177F8F14>I<FCE01D
701E701E201C001C001C001C001C001C001C001C001C001C001C00FFC00C107F8F0F>I<1F2060
E04020C020C020F0007F003FC01FE000F080708030C030C020F0408F800C107F8F0F>I<040004
0004000C000C001C003C00FFC01C001C001C001C001C001C001C001C001C201C201C201C201C20
0E4003800B177F960F>I<FC7E001C0E001C0E001C0E001C0E001C0E001C0E001C0E001C0E001C
0E001C0E001C0E001C0E001C1E000C2E0007CFC012107F8F15>I<FF1F803C06001C04001C0400
1E0C000E08000E080007100007100007900003A00003A00001C00001C00001C00000800011107F
8F14>I<FF3F9F803C0E0700380E06001C1604001C1704001E170C000E2308000E2388000F2398
00074190000741D00003C1E0000380E0000380E0000180C0000100400019107F8F1C>I<FF3F80
3C1C001C18000E100007200007600003C00001C00001E00003E000027000043800083800181C00
381E00FC3FC012107F8F14>I<FF1F803C06001C04001C04001E0C000E08000E08000710000710
0007900003A00003A00001C00001C00001C000008000008000010000010000E10000E20000E400
0078000011177F8F14>I<7FF86070407040E041C041C00380070007000E081C081C0838107010
7030FFF00D107F8F11>I<FFFFC01201808913>I E /Fk 10 58 df<1F00318060C04040C060C0
60C060C060C060C060C060C060404060C031801F000B107F8F0F>48 D<0C003C00CC000C000C00
0C000C000C000C000C000C000C000C000C000C00FF8009107E8F0F>I<1F00618040C08060C060
0060006000C00180030006000C00102020207FC0FFC00B107F8F0F>I<1F00218060C060C000C0
008001800F00008000400060C060C060804060801F000B107F8F0F>I<0300030007000F000B00
1300330023004300C300FFE003000300030003001FE00B107F8F0F>I<20803F002C0020002000
20002F0030802040006000600060C06080C061801F000B107F8F0F>I<0780184030C060C06000
C000CF00F080E040C060C060C060406060C030801F000B107F8F0F>I<40007FE07FC080808080
01000200040004000C0008000800180018001800180018000B117E900F>I<1F00208040404040
404070803F000F00338061C0C060C060C060404060801F000B107F8F0F>I<1F00318060C0C040
C060C060C06040E021E01E600060004060C0608043003E000B107F8F0F>I
E /Fl 4 119 df<03CC063C0C3C181C3838303870387038E070E070E070E070E0E2C0E2C0E261
E462643C380F127B9115>97 D<01800380010000000000000000000000000000001C0026004700
47008E008E000E001C001C001C0038003800710071007100720072003C00091C7C9B0D>105
D<01F006080C080C1C18181C001F001FC00FF007F0007800386030E030C030806060C01F000E12
7D9111>115 D<1E06270E470E4706870287020E020E021C041C041C041C081808380818101820
0C4007800F127C9113>118 D E /Fm 48 123 df<007FC001C1C00303C00703C00E01C00E01C0
0E01C00E01C00E01C00E01C00E01C0FFFFC00E01C00E01C00E01C00E01C00E01C00E01C00E01C0
0E01C00E01C00E01C00E01C00E01C00E01C00E01C00E01C00E01C07FCFF8151D809C17>13
D<004000800100020006000C000C0018001800300030007000600060006000E000E000E000E000
E000E000E000E000E000E000E000E000600060006000700030003000180018000C000C00060002
000100008000400A2A7D9E10>40 D<800040002000100018000C000C0006000600030003000380
01800180018001C001C001C001C001C001C001C001C001C001C001C001C0018001800180038003
000300060006000C000C00180010002000400080000A2A7E9E10>I<60F0F07010101010202040
80040C7C830C>44 D<FFE0FFE00B0280890E>I<60F0F06004047C830C>I<030007003F00C70007
000700070007000700070007000700070007000700070007000700070007000700070007000700
070007000F80FFF80D1C7C9B15>49 D<03E00C301008200C20066006600660067006780C3E083F
B01FE007F007F818FC307E601E600FC007C003C003C003C00360026004300C1C1007E0101D7E9B
15>56 D<03C00C301818300C700C600EE006E006E007E007E007E007E0076007700F300F18170C
2707C700060006000E300C780C78187010203030C00F80101D7E9B15>I<000600000006000000
060000000F0000000F0000000F00000017800000178000001780000023C0000023C0000023C000
0041E0000041E0000041E0000080F0000080F0000180F8000100780001FFF80003007C0002003C
0002003C0006003E0004001E0004001E000C001F001E001F00FF80FFF01C1D7F9C1F>65
D<001F808000E0618001801980070007800E0003801C0003801C00018038000180780000807800
008070000080F0000000F0000000F0000000F0000000F0000000F0000000F0000000F000000070
0000807800008078000080380000801C0001001C0001000E000200070004000180080000E03000
001FC000191E7E9C1E>67 D<FFFFC0000F00F0000F003C000F000E000F0007000F0007000F0003
800F0003C00F0001C00F0001C00F0001E00F0001E00F0001E00F0001E00F0001E00F0001E00F00
01E00F0001E00F0001C00F0001C00F0003C00F0003800F0007800F0007000F000E000F001C000F
007000FFFFC0001B1C7E9B20>I<FFFFFC0F003C0F000C0F00040F00040F00060F00020F00020F
02020F02000F02000F02000F06000FFE000F06000F02000F02000F02000F02010F00010F00020F
00020F00020F00060F00060F000C0F003CFFFFFC181C7E9B1C>I<001F808000E0618001801980
070007800E0003801C0003801C00018038000180780000807800008070000080F0000000F00000
00F0000000F0000000F0000000F0000000F000FFF0F0000F807000078078000780780007803800
07801C0007801C0007800E00078007000B800180118000E06080001F80001C1E7E9C21>71
D<FFF03FE00F000F000F000C000F0008000F0010000F0020000F0040000F0080000F0100000F02
00000F0400000F0E00000F1F00000F2F00000F2780000F4780000F83C0000F01E0000F01E0000F
00F0000F00F8000F0078000F003C000F003C000F001E000F001F000F001F80FFF07FF01C1C7E9B
20>75 D<003F800000E0E0000380380007001C000E000E001C0007003C00078038000380780003
C0780003C0700001C0F00001E0F00001E0F00001E0F00001E0F00001E0F00001E0F00001E0F000
01E0700001C0780003C0780003C0380003803C0007801C0007000E000E0007001C000380380000
E0E000003F80001B1E7E9C20>79 D<07E0801C1980300580700380600180E00180E00080E00080
E00080F00000F800007C00007FC0003FF8001FFE0007FF0000FF80000F800007C00003C00001C0
8001C08001C08001C0C00180C00180E00300D00200CC0C0083F800121E7E9C17>83
D<7FFFFFC0700F01C0600F00C0400F0040400F0040C00F0020800F0020800F0020800F0020000F
0000000F0000000F0000000F0000000F0000000F0000000F0000000F0000000F0000000F000000
0F0000000F0000000F0000000F0000000F0000000F0000000F0000001F800003FFFC001B1C7F9B
1E>I<FFF07FC00F000E000F0004000F0004000F0004000F0004000F0004000F0004000F000400
0F0004000F0004000F0004000F0004000F0004000F0004000F0004000F0004000F0004000F0004
000F0004000F0004000F0004000700080007800800038010000180100000C020000070C000001F
00001A1D7E9B1F>I<FFE0FFE0FF1F001F003C1E001E00180F001F00100F001F00100F001F0010
07801F00200780278020078027802003C027804003C043C04003C043C04003E043C04001E081E0
8001E081E08001E081E08000F100F10000F100F10000F100F100007900FA00007A007A00007A00
7A00003E007C00003C003C00003C003C00003C003C00001800180000180018000018001800281D
7F9B2B>87 D<FEFEC0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0
C0C0C0C0C0C0FEFE07297C9E0C>91 D<FEFE060606060606060606060606060606060606060606
06060606060606060606060606060606FEFE0729809E0C>93 D<1FC000307000783800781C0030
1C00001C00001C0001FC000F1C00381C00701C00601C00E01C40E01C40E01C40603C40304E801F
870012127E9115>97 D<FC00001C00001C00001C00001C00001C00001C00001C00001C00001C00
001C00001C7C001D86001E03001C01801C01C01C00C01C00E01C00E01C00E01C00E01C00E01C00
E01C00C01C01C01C01801E030019060010F800131D7F9C17>I<07E00C301878307870306000E0
00E000E000E000E000E00060007004300418080C3007C00E127E9112>I<003F00000700000700
00070000070000070000070000070000070000070000070003E7000C1700180F00300700700700
600700E00700E00700E00700E00700E00700E00700600700700700300700180F000C370007C7E0
131D7E9C17>I<03E00C301818300C700E6006E006FFFEE000E000E000E0006000700230021804
0C1803E00F127F9112>I<00F8018C071E061E0E0C0E000E000E000E000E000E00FFE00E000E00
0E000E000E000E000E000E000E000E000E000E000E000E000E000E007FE00F1D809C0D>I<0003
8003C4C00C38C01C3880181800381C00381C00381C00381C001818001C38000C300013C0001000
003000001800001FF8001FFF001FFF803003806001C0C000C0C000C0C000C06001803003001C0E
0007F800121C7F9215>I<FC00001C00001C00001C00001C00001C00001C00001C00001C00001C
00001C00001C7C001C87001D03001E03801C03801C03801C03801C03801C03801C03801C03801C
03801C03801C03801C03801C03801C0380FF9FF0141D7F9C17>I<18003C003C00180000000000
00000000000000000000FC001C001C001C001C001C001C001C001C001C001C001C001C001C001C
001C001C00FF80091D7F9C0C>I<00C001E001E000C000000000000000000000000000000FE000
E000E000E000E000E000E000E000E000E000E000E000E000E000E000E000E000E000E000E000E0
60E0F0C0F1C061803E000B25839C0D>I<FC00001C00001C00001C00001C00001C00001C00001C
00001C00001C00001C00001C3FC01C0F001C0C001C08001C10001C20001C40001CE0001DE0001E
70001C78001C38001C3C001C1C001C0E001C0F001C0F80FF9FE0131D7F9C16>I<FC001C001C00
1C001C001C001C001C001C001C001C001C001C001C001C001C001C001C001C001C001C001C001C
001C001C001C001C001C00FF80091D7F9C0C>I<FC7E07E0001C838838001D019018001E01E01C
001C01C01C001C01C01C001C01C01C001C01C01C001C01C01C001C01C01C001C01C01C001C01C0
1C001C01C01C001C01C01C001C01C01C001C01C01C001C01C01C00FF8FF8FF8021127F9124>I<
FC7C001C87001D03001E03801C03801C03801C03801C03801C03801C03801C03801C03801C0380
1C03801C03801C03801C0380FF9FF014127F9117>I<03F0000E1C001806003003007003806001
80E001C0E001C0E001C0E001C0E001C0E001C06001807003803003001806000E1C0003F0001212
7F9115>I<FC7C001D86001E03001C01801C01C01C00C01C00E01C00E01C00E01C00E01C00E01C
00E01C01C01C01C01C01801E03001D06001CF8001C00001C00001C00001C00001C00001C00001C
0000FF8000131A7F9117>I<03C1000C3300180B00300F00700700700700E00700E00700E00700
E00700E00700E00700600700700700300F00180F000C370007C700000700000700000700000700
000700000700000700003FE0131A7E9116>I<FCE01D301E781E781C301C001C001C001C001C00
1C001C001C001C001C001C001C00FFC00D127F9110>I<1F9030704030C010C010E010F8007F80
3FE00FF000F880388018C018C018E010D0608FC00D127F9110>I<04000400040004000C000C00
1C003C00FFE01C001C001C001C001C001C001C001C001C001C101C101C101C101C100C100E2003
C00C1A7F9910>I<FC1F801C03801C03801C03801C03801C03801C03801C03801C03801C03801C
03801C03801C03801C03801C07800C07800E1B8003E3F014127F9117>I<FF07E03C03801C0100
1C01000E02000E020007040007040007040003880003880003D80001D00001D00000E00000E000
00E00000400013127F9116>I<FF3FCFE03C0F03801C0701801C0701001C0B01000E0B82000E0B
82000E1182000711C4000711C4000720C40003A0E80003A0E80003C0680001C0700001C0700001
803000008020001B127F911E>I<7F8FF00F03800F030007020003840001C80001D80000F00000
700000780000F800009C00010E00020E000607000403801E07C0FF0FF81512809116>I<FF07E0
3C03801C01001C01000E02000E020007040007040007040003880003880003D80001D00001D000
00E00000E00000E000004000004000008000008000F08000F10000F300006600003C0000131A7F
9116>I<7FFC70386038407040F040E041C003C0038007000F040E041C043C0C380870087038FF
F80E127F9112>I E /Fn 19 122 df<78FCFCFCFC7800000000000078FCFCFCFC7806127D910D>
58 D<00038000000380000007C0000007C0000007C000000FE000000FE000001FF000001BF000
001BF0000031F8000031F8000061FC000060FC0000E0FE0000C07E0000C07E0001803F0001FFFF
0003FFFF8003001F8003001F8006000FC006000FC00E000FE00C0007E0FFC07FFEFFC07FFE1F1C
7E9B24>65 D<001FE02000FFF8E003F80FE007C003E00F8001E01F0000E03E0000E03E0000607E
0000607C000060FC000000FC000000FC000000FC000000FC000000FC000000FC000000FC000000
7C0000607E0000603E0000603E0000C01F0000C00F80018007C0030003F80E0000FFFC00001FE0
001B1C7D9B22>67 D<FFFC07FFFFFC07FF0FC000E00FC001C00FC003800FC006000FC00C000FC0
38000FC070000FC0E0000FC1C0000FC3C0000FC7E0000FCFE0000FFBF0000FF3F8000FE1F8000F
C0FC000FC0FE000FC07E000FC03F000FC01F800FC01FC00FC00FC00FC007E00FC007F0FFFC3FFF
FFFC3FFF201C7E9B25>75 D<FFFC7FFE0FFCFFFC7FFE0FFC0FC007E000C00FC007F000C00FE003
F001C007E003F0018007E007F8018003F007F8030003F007F8030003F80CFC070001F80CFC0600
01F81CFE060001FC187E0E0000FC187E0C0000FC387F0C00007E303F1800007E303F1800007F60
1FB800003F601FB000003FE01FF000003FC00FF000001FC00FE000001FC00FE000000F8007C000
000F8007C000000F0003C0000007000380000007000380002E1C7F9B31>87
D<0FF8001C1E003E0F803E07803E07C01C07C00007C0007FC007E7C01F07C03C07C07C07C0F807
C0F807C0F807C0780BC03E13F80FE1F815127F9117>97 D<FF0000FF00001F00001F00001F0000
1F00001F00001F00001F00001F00001F00001F3F801FE1E01F80701F00781F003C1F003C1F003E
1F003E1F003E1F003E1F003E1F003E1F003C1F003C1F00781F80701EC1E01C3F00171D7F9C1B>
I<03FC000E0E001C1F003C1F00781F00780E00F80000F80000F80000F80000F80000F800007800
007801803C01801C03000E0E0003F80011127E9115>I<000FF0000FF00001F00001F00001F000
01F00001F00001F00001F00001F00001F001F9F00F07F01C03F03C01F07801F07801F0F801F0F8
01F0F801F0F801F0F801F0F801F07801F07801F03C01F01C03F00F0FFE03F9FE171D7E9C1B>I<
01FC000F07001C03803C01C07801C07801E0F801E0F801E0FFFFE0F80000F80000F80000780000
7C00603C00601E00C00F038001FC0013127F9116>I<03F8F00E0F381E0F381C07303C07803C07
803C07803C07801C07001E0F000E0E001BF8001000001800001800001FFF001FFFC00FFFE01FFF
F07801F8F00078F00078F000787000707800F01E03C007FF00151B7F9118>103
D<FF0000FF00001F00001F00001F00001F00001F00001F00001F00001F00001F00001F0FC01F31
E01F40F01F80F81F80F81F00F81F00F81F00F81F00F81F00F81F00F81F00F81F00F81F00F81F00
F81F00F8FFE7FFFFE7FF181D7F9C1B>I<1E003F003F003F003F001E0000000000000000000000
0000FF00FF001F001F001F001F001F001F001F001F001F001F001F001F001F001F00FFE0FFE00B
1E7F9D0E>I<01FC000F07801C01C03C01E07800F07800F0F800F8F800F8F800F8F800F8F800F8
F800F87800F07800F03C01E01E03C00F078001FC0015127F9118>111 D<FF3F80FFE1E01F80F0
1F00781F007C1F003C1F003E1F003E1F003E1F003E1F003E1F003E1F003C1F007C1F00781F80F0
1FC1E01F3F001F00001F00001F00001F00001F00001F0000FFE000FFE000171A7F911B>I<FE3E
00FE47001E8F801E8F801E8F801F07001F00001F00001F00001F00001F00001F00001F00001F00
001F00001F0000FFF000FFF00011127F9114>114 D<1FD830786018E018E018F000FF807FE07F
F01FF807FC007CC01CC01CE01CE018F830CFC00E127E9113>I<0300030003000300070007000F
000F003FFCFFFC1F001F001F001F001F001F001F001F001F001F0C1F0C1F0C1F0C0F08079803F0
0E1A7F9913>I<FFC1FCFFC1FC1F00601F80E00F80C00FC0C007C18007C18003E30003E30001F7
0001F60000FE0000FC0000FC00007800007800003000003000007000706000F86000F8C000F980
007300003E0000161A7F9119>121 D E /Fo 84 124 df<001F83E000F06E3001C078780380F8
780300F03007007000070070000700700007007000070070000700700007007000FFFFFF800700
700007007000070070000700700007007000070070000700700007007000070070000700700007
007000070070000700700007007000070070000700700007007000070070007FE3FF001D20809F
1B>11 D<003F0000E0C001C0C00381E00701E00701E00700000700000700000700000700000700
00FFFFE00700E00700E00700E00700E00700E00700E00700E00700E00700E00700E00700E00700
E00700E00700E00700E00700E00700E00700E07FC3FE1720809F19>I<003FE000E0E001C1E003
81E00700E00700E00700E00700E00700E00700E00700E00700E0FFFFE00700E00700E00700E007
00E00700E00700E00700E00700E00700E00700E00700E00700E00700E00700E00700E00700E007
00E00700E07FE7FE1720809F19>I<001F81F80000F04F040001C07C06000380F80F000300F00F
000700F00F00070070000007007000000700700000070070000007007000000700700000FFFFFF
FF0007007007000700700700070070070007007007000700700700070070070007007007000700
700700070070070007007007000700700700070070070007007007000700700700070070070007
00700700070070070007007007007FE3FE3FF02420809F26>I<70F8F8F8F8F8F8F87070707070
70707070702020202020000000000070F8F8F87005217CA00D>33 D<7038F87CFC7EFC7E743A04
02040204020804080410081008201040200F0E7E9F17>I<70F8FCFC7404040408081010204006
0E7C9F0D>39 D<0020004000800100020006000C000C0018001800300030003000700060006000
6000E000E000E000E000E000E000E000E000E000E000E000E00060006000600070003000300030
00180018000C000C000600020001000080004000200B2E7DA112>I<800040002000100008000C
00060006000300030001800180018001C000C000C000C000E000E000E000E000E000E000E000E0
00E000E000E000E000C000C000C001C001800180018003000300060006000C0008001000200040
0080000B2E7DA112>I<0006000000060000000600000006000000060000000600000006000000
06000000060000000600000006000000060000000600000006000000060000FFFFFFF0FFFFFFF0
000600000006000000060000000600000006000000060000000600000006000000060000000600
0000060000000600000006000000060000000600001C207D9A23>43 D<70F8FCFC740404040808
10102040060E7C840D>I<FFC0FFC00A027F8A0F>I<70F8F8F87005057C840D>I<000300030007
00060006000E000C000C001C0018001800380030003000700060006000E000C000C001C0018001
8001800380030003000700060006000E000C000C001C0018001800380030003000700060006000
E000C000C000102D7DA117>I<03F0000E1C001C0E001806003807007003807003807003807003
80F003C0F003C0F003C0F003C0F003C0F003C0F003C0F003C0F003C0F003C0F003C0F003C0F003
C07003807003807003807807803807001806001C0E000E1C0003F000121F7E9D17>I<01800380
0F80F3800380038003800380038003800380038003800380038003800380038003800380038003
8003800380038003800380038007C0FFFE0F1E7C9D17>I<03F0000C1C00100E00200700400780
800780F007C0F803C0F803C0F803C02007C00007C0000780000780000F00000E00001C00003800
00700000600000C0000180000300000600400C00401800401000803FFF807FFF80FFFF80121E7E
9D17>I<03F0000C1C00100E00200F00780F80780780780780380F80000F80000F00000F00000E
00001C0000380003F000003C00000E00000F000007800007800007C02007C0F807C0F807C0F807
C0F00780400780400F00200E001C3C0003F000121F7E9D17>I<000600000600000E00000E0000
1E00002E00002E00004E00008E00008E00010E00020E00020E00040E00080E00080E00100E0020
0E00200E00400E00C00E00FFFFF0000E00000E00000E00000E00000E00000E00000E0000FFE014
1E7F9D17>I<1803001FFE001FFC001FF8001FE000100000100000100000100000100000100000
11F000161C00180E001007001007800003800003800003C00003C00003C07003C0F003C0F003C0
E00380400380400700200600100E000C380003E000121F7E9D17>I<007C000182000701000E03
800C07801C0780380300380000780000700000700000F1F000F21C00F40600F80700F80380F803
80F003C0F003C0F003C0F003C0F003C07003C07003C07003803803803807001807000C0E00061C
0001F000121F7E9D17>I<4000007FFFC07FFF807FFF8040010080020080020080040000080000
080000100000200000200000400000400000C00000C00001C00001800003800003800003800003
8000078000078000078000078000078000078000078000030000121F7D9D17>I<03F0000C0C00
1006003003002001806001806001806001807001807803003E03003F06001FC8000FF00003F800
07FC000C7E00103F00300F806003804001C0C001C0C000C0C000C0C000C0C00080600180200100
1002000C0C0003F000121F7E9D17>I<03F0000E18001C0C00380600380700700700700380F003
80F00380F003C0F003C0F003C0F003C0F003C07007C07007C03807C0180BC00E13C003E3C00003
80000380000380000700300700780600780E00700C002018001070000FC000121F7E9D17>I<70
F8F8F8700000000000000000000070F8F8F87005147C930D>I<70F8F8F8700000000000000000
000070F0F8F878080808101010202040051D7C930D>I<7FFFFFE0FFFFFFF00000000000000000
000000000000000000000000000000000000000000000000FFFFFFF07FFFFFE01C0C7D9023>61
D<001F800000E0700001000800060006000800010008000100100F00802030C0402060404040C0
202041C01C2041C01C2081801C1083801C1083801C1083801C1083801C1083801C1083801C1081
801C1041C01C1041C01C1040C03C2020605C202030CC40100F0780080000000800000006000070
010001C000E01F00001FF0001C207D9F23>64 D<000100000003800000038000000380000007C0
000007C0000007C0000009E0000009E0000009E0000010F0000010F0000010F000002078000020
78000020780000403C0000403C0000403C0000801E0000801E0000FFFE0001000F0001000F0001
000F00020007800200078002000780040003C00E0003C01F0007E0FFC03FFE1F207F9F22>I<FF
FFE0000F80380007801E0007801F0007800F0007800F8007800F8007800F8007800F8007800F80
07800F0007801F0007801E0007803C0007FFF00007803C0007801E0007800F0007800F80078007
80078007C0078007C0078007C0078007C0078007C00780078007800F8007800F0007801F000F80
3C00FFFFF0001A1F7E9E20>I<000FC040007030C001C009C0038005C0070003C00E0001C01E00
00C01C0000C03C0000C07C0000407C00004078000040F8000000F8000000F8000000F8000000F8
000000F8000000F8000000F8000000F8000000780000007C0000407C0000403C0000401C000040
1E0000800E000080070001000380020001C0040000703800000FC0001A217D9F21>I<FFFFE000
0F803C0007801E000780070007800380078003C0078001E0078001E0078001F0078000F0078000
F0078000F8078000F8078000F8078000F8078000F8078000F8078000F8078000F8078000F80780
00F0078000F0078000F0078001E0078001E0078003C0078003800780070007800E000F803C00FF
FFE0001D1F7E9E23>I<FFFFFF000F800F00078003000780030007800100078001800780008007
80008007800080078080800780800007808000078080000781800007FF80000781800007808000
078080000780800007808000078000200780002007800020078000400780004007800040078000
C0078000C0078001800F800F80FFFFFF801B1F7E9E1F>I<FFFFFF000F800F0007800300078003
000780010007800180078000800780008007800080078000800780800007808000078080000780
80000781800007FF80000781800007808000078080000780800007808000078000000780000007
80000007800000078000000780000007800000078000000FC00000FFFE0000191F7E9E1E>I<00
0FE0200078186000E004E0038002E0070001E00F0000E01E0000601E0000603C0000603C000020
7C00002078000020F8000000F8000000F8000000F8000000F8000000F8000000F8000000F8007F
FCF80003E0780001E07C0001E03C0001E03C0001E01E0001E01E0001E00F0001E0070001E00380
02E000E0046000781820000FE0001E217D9F24>I<FFF8FFF80F800F8007800F0007800F000780
0F0007800F0007800F0007800F0007800F0007800F0007800F0007800F0007800F0007800F0007
FFFF0007800F0007800F0007800F0007800F0007800F0007800F0007800F0007800F0007800F00
07800F0007800F0007800F0007800F0007800F000F800F80FFF8FFF81D1F7E9E22>I<FFFC0FC0
078007800780078007800780078007800780078007800780078007800780078007800780078007
8007800780078007800780078007800FC0FFFC0E1F7F9E10>I<0FFFC0007C00003C00003C0000
3C00003C00003C00003C00003C00003C00003C00003C00003C00003C00003C00003C00003C0000
3C00003C00003C00003C00003C00003C00203C00F83C00F83C00F83C00F0380040780040700030
E0000F800012207E9E17>I<FFFC0FFC0FC003E007800180078001000780020007800400078008
0007801000078020000780400007808000078100000783000007878000078F80000793C0000791
E00007A1E00007C0F0000780F0000780780007803C0007803C0007801E0007801E0007800F0007
80078007800780078007C00FC007E0FFFC3FFC1E1F7E9E23>I<FFFE000FC00007800007800007
800007800007800007800007800007800007800007800007800007800007800007800007800007
800007800007800007800207800207800207800207800607800407800407800C07801C0F807CFF
FFFC171F7E9E1C>I<FF80001FF80F80001F800780001F0005C0002F0005C0002F0005C0002F00
04E0004F0004E0004F000470008F000470008F000470008F000438010F000438010F000438010F
00041C020F00041C020F00041C020F00040E040F00040E040F00040E040F000407080F00040708
0F000407080F000403900F000403900F000401E00F000401E00F000401E00F000E00C00F001F00
C01F80FFE0C1FFF8251F7E9E2A>I<FF803FF807C007C007C0038005E0010005E0010004F00100
0478010004780100043C0100043C0100041E0100040F0100040F010004078100040781000403C1
000401E1000401E1000400F1000400F1000400790004003D0004003D0004001F0004001F000400
0F0004000700040007000E0003001F000300FFE001001D1F7E9E22>I<001F800000F0F00001C0
380007801E000F000F000E0007001E0007803C0003C03C0003C07C0003E0780001E0780001E0F8
0001F0F80001F0F80001F0F80001F0F80001F0F80001F0F80001F0F80001F0F80001F0780001E0
7C0003E07C0003E03C0003C03C0003C01E0007800E0007000F000F0007801E0001C0380000F0F0
00001F80001C217D9F23>I<FFFFE0000F80780007801C0007801E0007800F0007800F8007800F
8007800F8007800F8007800F8007800F8007800F0007801E0007801C000780780007FFE0000780
000007800000078000000780000007800000078000000780000007800000078000000780000007
80000007800000078000000FC00000FFFC0000191F7E9E1F>I<001F800000F0F00001C0380007
801E000F000F000E0007001E0007803C0003C03C0003C07C0003E07C0003E0780001E0F80001F0
F80001F0F80001F0F80001F0F80001F0F80001F0F80001F0F80001F0F80001F0780001E0780001
E07C0003E03C0003C03C0F03C01E1087800E2047000F204F0007A03E0001E0380000F0F010001F
B01000003010000038300000387000003FF000001FE000001FE000000FC0000007801C297D9F23
>I<FFFF80000F80F0000780780007803C0007801E0007801E0007801F0007801F0007801F0007
801F0007801E0007801E0007803C00078078000780F00007FF80000781C0000780E0000780F000
0780700007807800078078000780780007807C0007807C0007807C0007807C0407807E0407803E
040FC01E08FFFC0F10000003E01E207E9E21>I<07E0800C1980100780300380600180600180E0
0180E00080E00080E00080F00000F000007800007F00003FF0001FFC000FFE0003FF00001F8000
07800003C00003C00001C08001C08001C08001C08001C0C00180C00380E00300F00600CE0C0081
F80012217D9F19>I<7FFFFFE0780F01E0600F0060400F0020400F0020C00F0030800F0010800F
0010800F0010800F0010000F0000000F0000000F0000000F0000000F0000000F0000000F000000
0F0000000F0000000F0000000F0000000F0000000F0000000F0000000F0000000F0000000F0000
000F0000000F0000001F800007FFFE001C1F7E9E21>I<FFFC3FF80FC007C00780038007800100
078001000780010007800100078001000780010007800100078001000780010007800100078001
000780010007800100078001000780010007800100078001000780010007800100078001000780
0100038002000380020001C0020001C0040000E008000070180000382000000FC0001D207E9E22
>I<FFF003FE1F8000F80F0000600F800060078000400780004003C0008003C0008003C0008001
E0010001E0010001F0010000F0020000F0020000F806000078040000780400003C0800003C0800
003C0800001E1000001E1000001F3000000F2000000F20000007C0000007C0000007C000000380
000003800000038000000100001F207F9E22>I<FFF07FF81FF01F800FC007C00F00078003800F
00078001000F0007C00100078007C00200078007C00200078007C0020003C009E0040003C009E0
040003C009E0040003E010F00C0001E010F0080001E010F0080001F02078080000F02078100000
F02078100000F0403C10000078403C20000078403C20000078C03E2000003C801E4000003C801E
4000003C801E4000001F000F8000001F000F8000001F000F8000001E00078000000E0007000000
0E00070000000C000300000004000200002C207F9E2F>I<7FF83FF80FE00FC007C0070003C002
0001E0040001F00C0000F0080000781000007C1000003C2000003E4000001E4000000F8000000F
8000000780000003C0000007E0000005E0000009F0000018F8000010780000207C0000603C0000
401E0000801F0001800F0001000780020007C0070003C01F8007E0FFE01FFE1F1F7F9E22>I<FF
F003FF1F8000F80F8000600780004007C0004003E0008001E0008001F0010000F0030000F80200
007C0400003C0400003E0800001E0800001F1000000FB0000007A0000007C0000003C0000003C0
000003C0000003C0000003C0000003C0000003C0000003C0000003C0000003C0000003C0000007
C000007FFE00201F7F9E22>I<7FFFF87C00F87000F06001E04001E0C003C0C003C0800780800F
80800F00001E00001E00003C00003C0000780000F80000F00001E00001E00003C00403C0040780
040F80040F000C1E000C1E00083C00183C0018780038F801F8FFFFF8161F7D9E1C>I<FEFEC0C0
C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0
FEFE072D7CA10D>I<080410082010201040204020804080408040B85CFC7EFC7E7C3E381C0F0E
7B9F17>I<FEFE0606060606060606060606060606060606060606060606060606060606060606
060606060606060606FEFE072D7FA10D>I<1FE000303000781800781C00300E00000E00000E00
000E0000FE00078E001E0E00380E00780E00F00E10F00E10F00E10F01E10781E103867200F83C0
14147E9317>97 D<0E0000FE00000E00000E00000E00000E00000E00000E00000E00000E00000E
00000E00000E3E000EC3800F01C00F00E00E00E00E00700E00700E00780E00780E00780E00780E
00780E00780E00700E00700E00E00F00E00D01C00CC300083E0015207F9F19>I<03F80E0C1C1E
381E380C70007000F000F000F000F000F000F00070007000380138011C020E0C03F010147E9314
>I<000380003F8000038000038000038000038000038000038000038000038000038000038003
E380061B801C0780380380380380700380700380F00380F00380F00380F00380F00380F0038070
03807003803803803807801C07800E1B8003E3F815207E9F19>I<03F0000E1C001C0E00380700
380700700700700380F00380F00380FFFF80F00000F00000F00000700000700000380080180080
0C010007060001F80011147F9314>I<007C00C6018F038F070607000700070007000700070007
00FFF0070007000700070007000700070007000700070007000700070007000700070007000700
7FF01020809F0E>I<0000E003E3300E3C301C1C30380E00780F00780F00780F00780F00780F00
380E001C1C001E380033E0002000002000003000003000003FFE001FFF800FFFC03001E0600070
C00030C00030C00030C000306000603000C01C038003FC00141F7F9417>I<0E0000FE00000E00
000E00000E00000E00000E00000E00000E00000E00000E00000E00000E3E000E43000E81800F01
C00F01C00E01C00E01C00E01C00E01C00E01C00E01C00E01C00E01C00E01C00E01C00E01C00E01
C00E01C00E01C0FFE7FC16207F9F19>I<1C001E003E001E001C00000000000000000000000000
0E007E000E000E000E000E000E000E000E000E000E000E000E000E000E000E000E000E000E00FF
C00A1F809E0D>I<00E001F001F001F000E0000000000000000000000000007007F000F0007000
700070007000700070007000700070007000700070007000700070007000700070007000700070
6070F060F0C061803F000C28829E0E>I<0E0000FE00000E00000E00000E00000E00000E00000E
00000E00000E00000E00000E00000E0FF00E03C00E03000E02000E04000E08000E10000E30000E
70000EF8000F38000E1C000E1E000E0E000E07000E07800E03800E03C00E03E0FFCFF815207F9F
18>I<0E00FE000E000E000E000E000E000E000E000E000E000E000E000E000E000E000E000E00
0E000E000E000E000E000E000E000E000E000E000E000E000E00FFE00B20809F0D>I<0E1F01F0
00FE618618000E81C81C000F00F00E000F00F00E000E00E00E000E00E00E000E00E00E000E00E0
0E000E00E00E000E00E00E000E00E00E000E00E00E000E00E00E000E00E00E000E00E00E000E00
E00E000E00E00E000E00E00E00FFE7FE7FE023147F9326>I<0E3E00FE43000E81800F01C00F01
C00E01C00E01C00E01C00E01C00E01C00E01C00E01C00E01C00E01C00E01C00E01C00E01C00E01
C00E01C0FFE7FC16147F9319>I<01F800070E001C03803801C03801C07000E07000E0F000F0F0
00F0F000F0F000F0F000F0F000F07000E07000E03801C03801C01C0380070E0001F80014147F93
17>I<0E3E00FEC3800F01C00F00E00E00E00E00F00E00700E00780E00780E00780E00780E0078
0E00780E00700E00F00E00E00F01E00F01C00EC3000E3E000E00000E00000E00000E00000E0000
0E00000E00000E0000FFE000151D7F9319>I<03E0800619801C05803C07803803807803807003
80F00380F00380F00380F00380F00380F003807003807803803803803807801C0B800E138003E3
80000380000380000380000380000380000380000380000380003FF8151D7E9318>I<0E78FE8C
0F1E0F1E0F0C0E000E000E000E000E000E000E000E000E000E000E000E000E000E00FFE00F147F
9312>I<1F9030704030C010C010C010E00078007F803FE00FF00070803880188018C018C018E0
30D0608F800D147E9312>I<020002000200060006000E000E003E00FFF80E000E000E000E000E
000E000E000E000E000E000E000E080E080E080E080E080610031001E00D1C7F9B12>I<0E01C0
FE1FC00E01C00E01C00E01C00E01C00E01C00E01C00E01C00E01C00E01C00E01C00E01C00E01C0
0E01C00E01C00E03C00603C0030DC001F1FC16147F9319>I<FF83F81E01E01C00C00E00800E00
800E008007010007010003820003820003820001C40001C40001EC0000E80000E8000070000070
0000700000200015147F9318>I<FF9FE1FC3C0780701C0300601C0380200E0380400E0380400E
03C0400707C0800704C0800704E080038861000388710003C8730001D0320001D03A0000F03C00
00E01C0000E01C0000601800004008001E147F9321>I<7FC3FC0F01E00701C007018003810001
C20000E40000EC00007800003800003C00007C00004E000087000107000303800201C00601E01E
01E0FF07FE1714809318>I<FF83F81E01E01C00C00E00800E00800E0080070100070100038200
03820003820001C40001C40001EC0000E80000E800007000007000007000002000002000004000
004000004000F08000F08000F100006200003C0000151D7F9318>I<3FFF380E200E201C403840
78407000E001E001C00380078007010E011E011C0338027006700EFFFE10147F9314>I<FFFFFC
1601808C17>I E /Fp 10 58 df<07C018303018701C600C600CE00EE00EE00EE00EE00EE00EE0
0EE00EE00E600C600C701C30181C7007C00F157F9412>48 D<03000700FF000700070007000700
07000700070007000700070007000700070007000700070007007FF00C157E9412>I<0F8030E0
40708030C038E0384038003800700070006000C00180030006000C08080810183FF07FF0FFF00D
157E9412>I<0FE030306018701C701C001C00180038006007E000300018000C000E000EE00EE0
0EC00C401830300FE00F157F9412>I<00300030007000F001F001700270047008701870107020
704070C070FFFE0070007000700070007003FE0F157F9412>I<20303FE03FC024002000200020
0020002F8030E020700030003800384038E038E0388030406020C01F000D157E9412>I<01F006
08080C181C301C70006000E000E3E0EC30F018F00CE00EE00EE00E600E600E300C3018183007C0
0F157F9412>I<40007FFE7FFC7FF8C00880108020004000800080010001000300020006000600
0E000E000E000E000E0004000F167E9512>I<07E018302018600C600C700C78183E101F600FC0
0FF018F8607C601EC00EC006C006C004600C38300FE00F157F9412>I<07C0183030186018E00C
E00CE00EE00EE00E601E301E186E0F8E000E000C001C70187018603020C01F800F157F9412>I
E /Fq 48 123 df<000FF000007FFC0001F80E0003E01F0007C03F000F803F000F803F000F801E
000F800C000F8000000F8000000F8000000F800000FFFFFF00FFFFFF000F801F000F801F000F80
1F000F801F000F801F000F801F000F801F000F801F000F801F000F801F000F801F000F801F000F
801F000F801F000F801F000F801F000F801F000F801F007FF0FFE07FF0FFE01B237FA21F>12
D<FFFCFFFCFFFCFFFC0E047F8C13>45 D<387CFEFEFE7C3807077C8610>I<00180000780001F8
00FFF800FFF80001F80001F80001F80001F80001F80001F80001F80001F80001F80001F80001F8
0001F80001F80001F80001F80001F80001F80001F80001F80001F80001F80001F80001F80001F8
0001F8007FFFE07FFFE013207C9F1C>49 D<03FC000FFF003C1FC07007E07C07F0FE03F0FE03F8
FE03F8FE01F87C01F83803F80003F80003F00003F00007E00007C0000F80001F00003E00003800
00700000E01801C0180380180700180E00380FFFF01FFFF03FFFF07FFFF0FFFFF0FFFFF015207D
9F1C>I<00FE0007FFC00F07E01E03F03F03F03F81F83F81F83F81F81F03F81F03F00003F00003
E00007C0001F8001FE0001FF000007C00001F00001F80000FC0000FC3C00FE7E00FEFF00FEFF00
FEFF00FEFF00FC7E01FC7801F81E07F00FFFC001FE0017207E9F1C>I<0000E00001E00003E000
03E00007E0000FE0001FE0001FE00037E00077E000E7E001C7E00187E00307E00707E00E07E00C
07E01807E03807E07007E0E007E0FFFFFEFFFFFE0007E00007E00007E00007E00007E00007E000
07E000FFFE00FFFE17207E9F1C>I<1000201E01E01FFFC01FFF801FFF001FFE001FF8001BC000
18000018000018000018000019FC001FFF001E0FC01807E01803E00003F00003F00003F80003F8
3803F87C03F8FE03F8FE03F8FC03F0FC03F07007E03007C01C1F800FFF0003F80015207D9F1C>
I<001F8000FFE003F07007C0F00F01F81F01F83E01F83E01F87E00F07C00007C0000FC0800FC7F
C0FCFFE0FD80F0FF00F8FE007CFE007CFC007EFC007EFC007EFC007E7C007E7C007E7C007E3C00
7C3E007C1E00F80F00F00783E003FFC000FF0017207E9F1C>I<6000007800007FFFFE7FFFFE7F
FFFC7FFFF87FFFF87FFFF0E00060E000C0C00180C00300C00300000600000C00001C0000180000
380000780000780000F00000F00000F00001F00001F00001F00003F00003F00003F00003F00003
F00003F00003F00001E00017227DA11C>I<387CFEFEFE7C380000000000000000387CFEFEFE7C
3807167C9510>58 D<000070000000007000000000F800000000F800000000F800000001FC0000
0001FC00000003FE00000003FE00000003FE00000006FF000000067F0000000E7F8000000C3F80
00000C3F800000183FC00000181FC00000381FE00000300FE00000300FE00000600FF000006007
F00000E007F80000FFFFF80000FFFFF800018001FC00018001FC00038001FE00030000FE000300
00FE000600007F000600007F00FFE00FFFF8FFE00FFFF825227EA12A>65
D<0003FE0080001FFF818000FF01E38001F8003F8003E0001F8007C0000F800F800007801F8000
07803F000003803F000003807F000001807E000001807E00000180FE00000000FE00000000FE00
000000FE00000000FE00000000FE00000000FE00000000FE000000007E000000007E000001807F
000001803F000001803F000003801F800003000F8000030007C000060003F0000C0001F8003800
00FF00F000001FFFC0000003FE000021227DA128>67 D<FFFFFF8000FFFFFFF00007F003FC0007
F0007E0007F0003F0007F0001F8007F0000FC007F00007E007F00007E007F00007F007F00003F0
07F00003F007F00003F007F00003F807F00003F807F00003F807F00003F807F00003F807F00003
F807F00003F807F00003F807F00003F807F00003F007F00003F007F00003F007F00007E007F000
07E007F0000FC007F0001F8007F0003F0007F0007E0007F003FC00FFFFFFF000FFFFFF80002522
7EA12B>I<FFFFFFFCFFFFFFFC07F000FC07F0003C07F0001C07F0000C07F0000E07F0000E07F0
000607F0180607F0180607F0180607F0180007F0380007F0780007FFF80007FFF80007F0780007
F0380007F0180007F0180007F0180307F0180307F0000307F0000607F0000607F0000607F0000E
07F0000E07F0001E07F0003E07F001FCFFFFFFFCFFFFFFFC20227EA125>I<FFFFFFF8FFFFFFF8
07F001F807F0007807F0003807F0001807F0001C07F0001C07F0000C07F0000C07F0180C07F018
0C07F0180007F0180007F0380007F0780007FFF80007FFF80007F0780007F0380007F0180007F0
180007F0180007F0180007F0000007F0000007F0000007F0000007F0000007F0000007F0000007
F00000FFFFE000FFFFE0001E227EA123>I<FFFFE0FFFFE003F80003F80003F80003F80003F800
03F80003F80003F80003F80003F80003F80003F80003F80003F80003F80003F80003F80003F800
03F80003F80003F80003F80003F80003F80003F80003F80003F80003F80003F80003F800FFFFE0
FFFFE013227FA115>73 D<FFFFE000FFFFE00007F0000007F0000007F0000007F0000007F00000
07F0000007F0000007F0000007F0000007F0000007F0000007F0000007F0000007F0000007F000
0007F0000007F0000007F0000007F0000007F0001807F0001807F0001807F0001807F0003807F0
003807F0007007F0007007F000F007F001F007F007F0FFFFFFF0FFFFFFF01D227EA122>76
D<FFF8001FFEFFFC001FFE07FC0000C007FE0000C006FF0000C0067F8000C0063FC000C0061FE0
00C0060FE000C0060FF000C00607F800C00603FC00C00601FE00C00600FE00C00600FF00C00600
7F80C006003FC0C006001FE0C006000FF0C0060007F0C0060007F8C0060003FCC0060001FEC006
0000FFC00600007FC00600007FC00600003FC00600001FC00600000FC006000007C006000003C0
06000003C0FFF00001C0FFF00000C027227EA12C>78 D<0007FC0000003FFF800000FC07E00003
F001F80007E000FC000FC0007E001F80003F001F80003F003F00001F803F00001F807F00001FC0
7E00000FC07E00000FC0FE00000FE0FE00000FE0FE00000FE0FE00000FE0FE00000FE0FE00000F
E0FE00000FE0FE00000FE0FE00000FE07E00000FC07F00001FC07F00001FC03F00001F803F8000
3F801F80003F000FC0007E0007E000FC0003F001F80000FC07E000003FFF80000007FC00002322
7DA12A>I<FFFFFF00FFFFFFE007F007F007F001FC07F000FC07F0007E07F0007E07F0007F07F0
007F07F0007F07F0007F07F0007F07F0007E07F0007E07F000FC07F001FC07F007F007FFFFE007
FFFF0007F0000007F0000007F0000007F0000007F0000007F0000007F0000007F0000007F00000
07F0000007F0000007F0000007F00000FFFF8000FFFF800020227EA126>I<FFFFFE0000FFFFFF
C00007F007F00007F001F80007F000FC0007F0007E0007F0007F0007F0007F0007F0007F0007F0
007F0007F0007F0007F0007F0007F0007E0007F000FC0007F001F80007F007F00007FFFFC00007
FFFF800007F00FE00007F007F00007F003F80007F001FC0007F001FC0007F001FC0007F001FC00
07F001FC0007F001FC0007F001FC0007F001FC0007F001FC0607F000FE0607F000FF0CFFFF803F
F8FFFF800FF027227EA12A>82 D<01FC0407FF8C1F03FC3C007C7C003C78001C78001CF8000CF8
000CFC000CFC0000FF0000FFE0007FFF007FFFC03FFFF01FFFF80FFFFC03FFFE003FFE0003FF00
007F00003F00003FC0001FC0001FC0001FE0001EE0001EF0003CFC003CFF00F8C7FFE080FF8018
227DA11F>I<FFFF800FFEFFFF800FFE07F00000C007F80000C003F800018003F800018001FC00
030001FC00030001FE00070000FE00060000FF000600007F000C00007F800C00003F801800003F
801800003FC03800001FC03000001FE03000000FE06000000FF060000007F0C0000007F0C00000
07F9C0000003F980000003FD80000001FF00000001FF00000000FE00000000FE00000000FE0000
00007C000000007C00000000380000000038000027227FA12A>86 D<07FC001FFF803F07C03F03
E03F01E03F01F01E01F00001F00001F0003FF003FDF01FC1F03F01F07E01F0FC01F0FC01F0FC01
F0FC01F07E02F07E0CF81FF87F07E03F18167E951B>97 D<FF000000FF0000001F0000001F0000
001F0000001F0000001F0000001F0000001F0000001F0000001F0000001F0000001F0000001F0F
E0001F3FF8001FF07C001F801E001F001F001F000F801F000F801F000FC01F000FC01F000FC01F
000FC01F000FC01F000FC01F000FC01F000FC01F000F801F001F801F801F001FC03E001EE07C00
1C3FF800180FC0001A237EA21F>I<00FF8007FFE00F83F01F03F03E03F07E03F07C01E07C0000
FC0000FC0000FC0000FC0000FC0000FC00007C00007E00007E00003E00301F00600FC0E007FF80
00FE0014167E9519>I<0001FE000001FE0000003E0000003E0000003E0000003E0000003E0000
003E0000003E0000003E0000003E0000003E0000003E0001FC3E0007FFBE000F81FE001F007E00
3E003E007E003E007C003E00FC003E00FC003E00FC003E00FC003E00FC003E00FC003E00FC003E
00FC003E007C003E007C003E003E007E001E00FE000F83BE0007FF3FC001FC3FC01A237EA21F>
I<00FE0007FF800F87C01E01E03E01F07C00F07C00F8FC00F8FC00F8FFFFF8FFFFF8FC0000FC00
00FC00007C00007C00007E00003E00181F00300FC07003FFC000FF0015167E951A>I<003F8000
FFC001E3E003C7E007C7E00F87E00F83C00F80000F80000F80000F80000F80000F8000FFFC00FF
FC000F80000F80000F80000F80000F80000F80000F80000F80000F80000F80000F80000F80000F
80000F80000F80000F80000F80000F80007FF8007FF80013237FA211>I<03FC1E0FFF7F1F0F8F
3E07CF3C03C07C03E07C03E07C03E07C03E07C03E03C03C03E07C01F0F801FFF0013FC00300000
3000003800003FFF801FFFF00FFFF81FFFFC3800FC70003EF0001EF0001EF0001EF0001E78003C
7C007C3F01F80FFFE001FF0018217E951C>I<FF000000FF0000001F0000001F0000001F000000
1F0000001F0000001F0000001F0000001F0000001F0000001F0000001F0000001F07E0001F1FF8
001F307C001F403C001F803E001F803E001F003E001F003E001F003E001F003E001F003E001F00
3E001F003E001F003E001F003E001F003E001F003E001F003E001F003E001F003E00FFE1FFC0FF
E1FFC01A237EA21F>I<1C003F007F007F007F003F001C000000000000000000000000000000FF
00FF001F001F001F001F001F001F001F001F001F001F001F001F001F001F001F001F001F001F00
FFE0FFE00B247EA310>I<FF000000FF0000001F0000001F0000001F0000001F0000001F000000
1F0000001F0000001F0000001F0000001F0000001F0000001F00FF801F00FF801F0038001F0060
001F01C0001F0380001F0700001F0E00001F1C00001F7E00001FFF00001FCF00001F0F80001F07
C0001F03E0001F01E0001F01F0001F00F8001F007C001F003C00FFE0FFC0FFE0FFC01A237EA21E
>107 D<FF00FF001F001F001F001F001F001F001F001F001F001F001F001F001F001F001F001F
001F001F001F001F001F001F001F001F001F001F001F001F001F001F001F00FFE0FFE00B237EA2
10>I<FF07F007F000FF1FFC1FFC001F303E303E001F403E403E001F801F801F001F801F801F00
1F001F001F001F001F001F001F001F001F001F001F001F001F001F001F001F001F001F001F001F
001F001F001F001F001F001F001F001F001F001F001F001F001F001F001F001F001F001F001F00
1F001F001F00FFE0FFE0FFE0FFE0FFE0FFE02B167E952F>I<FF07E000FF1FF8001F307C001F40
3C001F803E001F803E001F003E001F003E001F003E001F003E001F003E001F003E001F003E001F
003E001F003E001F003E001F003E001F003E001F003E001F003E00FFE1FFC0FFE1FFC01A167E95
1F>I<00FE0007FFC00F83E01E00F03E00F87C007C7C007C7C007CFC007EFC007EFC007EFC007E
FC007EFC007EFC007E7C007C7C007C3E00F81F01F00F83E007FFC000FE0017167E951C>I<FF0F
E000FF3FF8001FF07C001F803E001F001F001F001F801F001F801F000FC01F000FC01F000FC01F
000FC01F000FC01F000FC01F000FC01F000FC01F001F801F001F801F803F001FC03E001FE0FC00
1F3FF8001F0FC0001F0000001F0000001F0000001F0000001F0000001F0000001F0000001F0000
00FFE00000FFE000001A207E951F>I<FE1F00FE3FC01E67E01EC7E01E87E01E87E01F83C01F00
001F00001F00001F00001F00001F00001F00001F00001F00001F00001F00001F00001F0000FFF0
00FFF00013167E9517>114 D<0FF3003FFF00781F00600700E00300E00300F00300FC00007FE0
007FF8003FFE000FFF0001FF00000F80C00780C00380E00380E00380F00700FC0E00EFFC00C7F0
0011167E9516>I<0180000180000180000180000380000380000780000780000F80003F8000FF
FF00FFFF000F80000F80000F80000F80000F80000F80000F80000F80000F80000F80000F80000F
81800F81800F81800F81800F81800F830007C30003FE0000F80011207F9F16>I<FF01FE00FF01
FE001F003E001F003E001F003E001F003E001F003E001F003E001F003E001F003E001F003E001F
003E001F003E001F003E001F003E001F003E001F003E001F007E001F00FE000F81BE0007FF3FC0
01FC3FC01A167E951F>I<FFE01FE0FFE01FE00F8006000F8006000FC00E0007C00C0007E01C00
03E0180003E0180001F0300001F0300000F8600000F86000007CC000007CC000007FC000003F80
00003F8000001F0000001F0000000E0000000E00001B167F951E>I<FFE7FF07F8FFE7FF07F81F
007800C00F807801800F807C01800F807C018007C07E030007C0DE030007E0DE070003E0DF0600
03E18F060001F18F0C0001F38F8C0001FB079C0000FB07D80000FE03D800007E03F000007E03F0
00007C01F000003C01E000003800E000001800C00025167F9528>I<FFE07FC0FFE07FC00F801C
0007C0380003E0700003F0600001F8C00000F98000007F8000003F0000001F0000001F8000003F
C0000037C0000063E00000C1F00001C0F8000380FC0007007E000E003E00FF80FFE0FF80FFE01B
167F951E>I<FFE01FE0FFE01FE00F8006000F8006000FC00E0007C00C0007E01C0003E0180003
E0180001F0300001F0300000F8600000F86000007CC000007CC000007FC000003F8000003F8000
001F0000001F0000000E0000000E0000000C0000000C00000018000078180000FC380000FC3000
00FC60000069C000007F8000001F0000001B207F951E>I<7FFFF07FFFF07C03E07007C0600FC0
E01F80C01F00C03E00C07E0000FC0000F80001F00003F03007E03007C0300F80701F80703F0060
3E00E07C03E0FFFFE0FFFFE014167E9519>I E end
%%EndProlog
%%BeginSetup
%%Feature: *Resolution 300
TeXDict begin 
%%EndSetup
%%Page: 1 1
bop -149 45 a Fq(Visa)19 b(Proto)r(cols)f(for)h(Con)n(trolling)f(In)n
(ter-Organizational)f(Datagram)i(Flo)n(w:)25 b(Extended)18
b(Description)2081 27 y Fp(1)355 220 y Fo(Deb)q(orah)d(Estrin,)f(Je\013rey)h
(Mogul,)f(Gene)h(Tsudik,)g(Kamaljit)f(Anand)871 276 y(TR)i(88-50)1060
260 y Fp(2)821 539 y Fo(Deb)q(orah)f(Estrin)848 596 y(Gene)g(Tsudik)813
652 y(Kamaljit)f(Anand)669 765 y(Computer)h(Science)h(Departmen)o(t)645
822 y(Univ)o(ersit)o(y)d(of)i(Southern)h(California)627 878
y(Los)f(Angeles,)g(California)e(90089-0782)754 935 y(estrin@ob)q
(eron.usc.edu)748 991 y(tsudik@usc-cse.usc.edu)749 1047 y
(anand@usc-cse.usc.edu)839 1160 y(Je\013rey)i(Mogul)662 1273
y(Digital)e(Equipmen)o(t)i(Corp)q(oration)679 1330 y(W)l(estern)g(Researc)o
(h)h(Lab)q(oratory)746 1386 y(mogul@decwrl.dec.com)884 1690
y Fn(Abstract)176 1792 y Fm(The)g(increasing)h(use)g(of)e(in)o(ternet)o(w)o
(orking)h(proto)q(cols)g(to)g(connect)i(administrativ)o(ely)13
b(heterogeneous)114 1842 y(net)o(w)o(orks)d(has)f(raised)h(the)g(question)g
(of)f(ho)o(w)g(an)g(organization)f(can)i(con)o(trol)f(the)h(\015o)o(w)f(of)g
(information)d(across)114 1892 y(its)13 b(net)o(w)o(ork)h(b)q(oundaries.)19
b(One)14 b(metho)q(d)f(for)g(doing)g(so)h(is)f(the)h(use)h(of)e
Fl(visas)p Fm(,)g(a)g(cryptographic)h(tec)o(hnique)114 1941
y(for)k(authen)o(ticating)h(and)f(authorizing)g(a)h(\015o)o(w)f(of)g
(datagrams.)31 b(This)19 b(rep)q(ort)h(presen)o(ts)h(and)d(ev)n(aluates)114
1991 y(t)o(w)o(o)e Fl(visa)g Fm(proto)q(cols)g(-)g(one)h(that)f(requires)i
(distributed)f(state)g(information)d(in)h(gatew)o(a)o(ys)i(and)f(one)g(that)
114 2041 y(uses)i(additional)d(encryption)j(op)q(erations)f(instead)g(of)g
(distributed)g(state.)29 b(Applications)16 b(for)h(suc)o(h)g
Fl(visa)114 2091 y Fm(proto)q(cols)12 b(include)h(access)h(con)o(trol,)e
(accoun)o(ting)h(and)f(billing)f(for)h(pac)o(k)o(et)h(transit,)f(and)h(net)o
(w)o(ork)f(resource)114 2141 y(managemen)o(t.)176 2190 y(This)17
b(tec)o(hnical)h(rep)q(ort)g(is)g(based,)g(in)f(large)g(part,)h(up)q(on)g(a)f
(shorter)h(pap)q(er[8].)29 b(W)m(e)17 b(ha)o(v)o(e)g(extended)114
2240 y(the)c(discussion)h(of)e(design)h(issues)h(and)f(added)g(an)f(app)q
(endix)h(describing)h(a)e(visa)h(proto)q(col)f(using)h(dual-k)o(ey)114
2290 y(\(public)g(k)o(ey\))h(encryption.)114 2390 y Fn(Key)19
b(W)l(ords:)24 b Fm(Computer)16 b(net)o(w)o(orks,)i(net)o(w)o(ork)f(in)o
(terconnection,)h(net)o(w)o(ork)f(securit)o(y)m(,)g(access)i(con)o(trol,)114
2439 y(authen)o(tication,)13 b(cryptographic)h(proto)q(cols.)p
0 2478 780 2 v 52 2505 a Fk(1)69 2521 y Fj(This)h(researc)o(h)g(w)o(as)g
(funded)h(in)f(part)g(b)o(y)g(the)g(National)g(Science)g(F)m(oundation,)i
(Presiden)o(tial)e(Y)m(oung)g(In)o(v)o(estigator)g(Aw)o(ard,)0
2567 y(with)e(matc)o(hing)h(funds)h(from)e(GTE)h(Inc.)19 b(and)14
b(NCR)g(Inc.,)f(and)h(b)o(y)g(the)g(Univ)o(ersit)o(y)g(of)f(Southern)i
(California)e(F)m(acult)o(y)h(Researc)o(h)0 2612 y(Initiation)f(F)m(und.)k(P)
o(ortions)d(w)o(ere)e(funded)i(b)o(y)f(the)h(Digital)e(Equipmen)o(t)i(Corp)q
(oration)g(W)m(estern)f(Researc)o(h)h(Lab)q(oratory)m(.)52
2642 y Fk(2)69 2658 y Fj(This)9 b(rep)q(ort)h(is)e(sim)o(ultaneously)i
(published)h(as)e(Digital)g(Equipmen)o(t)h(Corp)q(oration)f(W)m(estern)h
(Researc)o(h)g(Lab)q(oratory)h(Researc)o(h)0 2704 y(Rep)q(ort)j(88/5.)964
2828 y Fo(1)p eop
%%Page: 2 2
bop 114 45 a Fn(Cop)o(yrigh)o(t)8 b Fm(\(C\))k(1988)e(b)o(y)h(The)h(Univ)o
(ersit)o(y)f(of)g(Southern)h(California,)d(Digital)g(Equipmen)o(t)h(Corp)q
(oration,)114 95 y(Deb)q(orah)k(Estrin,)g(Gene)g(Tsudik,)f(Kamaljit)e(Anand.)
964 2828 y Fo(2)p eop
%%Page: 3 3
bop 0 45 a Fi(Con)n(ten)n(ts)0 186 y Fh(1)42 b(In)o(tro)q(duction)1568
b(4)68 282 y Fo(1.1)46 b(P)o(olicies)c Fg(:)22 b(:)h(:)f(:)g(:)h(:)f(:)g(:)h
(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g
(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)64
b Fo(6)68 377 y(1.2)46 b(Net)o(w)o(ork)14 b(en)o(vironmen)o(t)46
b Fg(:)22 b(:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h
(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)64
b Fo(6)68 473 y(1.3)46 b(Design)14 b(goals)h Fg(:)22 b(:)g(:)h(:)f(:)g(:)h(:)
f(:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h
(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)64
b Fo(7)68 569 y(1.4)46 b(Structure)15 b(of)g(this)f(rep)q(ort)45
b Fg(:)22 b(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f
(:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)64
b Fo(8)0 710 y Fh(2)42 b(Visa)17 b(proto)q(cols)1529 b(8)68
805 y Fo(2.1)46 b(Notation)15 b Fg(:)22 b(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g
(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f
(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)64 b
Fo(8)68 901 y(2.2)46 b(Comp)q(onen)o(ts)15 b Fg(:)22 b(:)g(:)h(:)f(:)g(:)h(:)
f(:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h
(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)64
b Fo(8)173 996 y(2.2.1)50 b(Visas)12 b Fg(:)22 b(:)g(:)h(:)f(:)g(:)h(:)f(:)g
(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f
(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)64 b
Fo(8)173 1092 y(2.2.2)50 b(A)o(CSs)44 b Fg(:)22 b(:)h(:)f(:)g(:)h(:)f(:)g(:)h
(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g
(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)64 b Fo(9)173
1188 y(2.2.3)50 b(Gatew)o(a)o(ys)31 b Fg(:)22 b(:)g(:)h(:)f(:)g(:)h(:)f(:)g
(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f
(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)64 b Fo(9)173 1283
y(2.2.4)50 b(Hosts)42 b Fg(:)22 b(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f
(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f
(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)42 b Fo(10)68 1379 y(2.3)k(Establishing)13
b(Authorization)45 b Fg(:)22 b(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)
g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)
42 b Fo(11)68 1474 y(2.4)k(Computing)14 b(visa)h(v)m(alues)25
b Fg(:)d(:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f
(:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)42
b Fo(11)0 1615 y Fh(3)g(Single-k)o(ey)16 b(proto)q(col)i(with)f(state)h
(information)f(in)g(gatew)o(a)o(ys)577 b(12)68 1711 y Fo(3.1)46
b(Creation)14 b(and)h(distribution)f(of)h(visa)f(k)o(eys)41
b Fg(:)22 b(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f
(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)42 b Fo(12)68 1807 y(3.2)k(V)l
(eri\014cation)14 b(of)h(visas)f Fg(:)22 b(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)
h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)42 b Fo(12)68 1902 y(3.3)k(Connection)15
b(rev)o(o)q(cation)28 b Fg(:)22 b(:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h
(:)f(:)g(:)h(:)42 b Fo(13)68 1998 y(3.4)k(Problems)41 b Fg(:)23
b(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g
(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f
(:)g(:)h(:)42 b Fo(13)0 2139 y Fh(4)g(Stateless)17 b(single-k)o(ey)f(proto)q
(col)1184 b(14)68 2234 y Fo(4.1)46 b(Ov)o(erview)15 b(of)f(the)i(stateless)e
(mec)o(hanism)28 b Fg(:)22 b(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f
(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)42 b
Fo(14)68 2330 y(4.2)k(Creation)14 b(of)g(visas)35 b Fg(:)22
b(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h
(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)42
b Fo(15)68 2426 y(4.3)k(V)l(eri\014cation)14 b(of)h(visas)f
Fg(:)22 b(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g
(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)42
b Fo(16)68 2521 y(4.4)k(Av)o(oiding)14 b(the)h(cost)g(of)g(visa)f(decryption)
38 b Fg(:)22 b(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)
h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)42 b Fo(16)68 2617
y(4.5)k(Rev)o(o)q(cation)41 b Fg(:)22 b(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f
(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h
(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)42 b Fo(17)964
2828 y(3)p eop
%%Page: 4 4
bop 68 45 a Fo(4.6)46 b(V)l(ariations)13 b(on)i(the)h(theme)30
b Fg(:)22 b(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f
(:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)42
b Fo(17)0 186 y Fh(5)g(Ev)m(aluation)18 b(and)g(comparison)f(of)g(single-k)o
(ey)e(proto)q(cols)682 b(17)68 282 y Fo(5.1)46 b(P)o(er-connection)15
b(costs)32 b Fg(:)23 b(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)
h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g
(:)h(:)42 b Fo(17)68 377 y(5.2)k(P)o(er-datagram)13 b(costs)20
b Fg(:)i(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g
(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)42
b Fo(18)68 473 y(5.3)k(Summary)36 b Fg(:)23 b(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g
(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f
(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)42 b
Fo(19)0 614 y Fh(6)g(Exp)q(erimen)o(tal)16 b(results)1353 b(20)68
710 y Fo(6.1)46 b(Visa)14 b(implemen)o(tation)26 b Fg(:)d(:)f(:)g(:)h(:)f(:)g
(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f
(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)42 b Fo(20)68 805
y(6.2)k(Exp)q(erimen)o(tal)14 b(con\014gurations)20 b Fg(:)i(:)g(:)h(:)f(:)h
(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g
(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)42 b Fo(20)68 901 y(6.3)k(Lab)q(oratory)14
b(measuremen)o(ts)27 b Fg(:)c(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f
(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h
(:)42 b Fo(24)68 996 y(6.4)k(In)o(ternet)15 b(measuremen)o(ts)21
b Fg(:)h(:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f
(:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)42
b Fo(26)68 1092 y(6.5)k(Analysis)24 b Fg(:)e(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f
(:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h
(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)42
b Fo(27)0 1233 y Fh(7)g(Other)18 b(design)e(issues)1387 b(27)68
1329 y Fo(7.1)46 b(Securit)o(y)30 b Fg(:)22 b(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f
(:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h
(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)42
b Fo(28)173 1424 y(7.1.1)50 b(Authen)o(ticating)14 b(hosts)h(and)g(acss)h
Fg(:)22 b(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f
(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)42 b Fo(28)173 1520 y(7.1.2)50
b(Denial)14 b(of)h(service)37 b Fg(:)22 b(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h
(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g
(:)h(:)f(:)g(:)h(:)42 b Fo(28)173 1615 y(7.1.3)50 b(Protecting)14
b(transit)g(organizations)f Fg(:)22 b(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h
(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)42
b Fo(29)173 1711 y(7.1.4)50 b(Co)o(v)o(ert)14 b(c)o(hannels)h(via)g(header)g
(\014elds)30 b Fg(:)23 b(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f
(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)42 b Fo(30)68 1807
y(7.2)k(Connection)15 b(setup)23 b Fg(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f
(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f
(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)42 b Fo(30)173 1902 y(7.2.1)50
b(Reducing)16 b(the)g(cost)e(of)h(connection)g(setup)32 b Fg(:)23
b(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g
(:)h(:)42 b Fo(31)173 1998 y(7.2.2)50 b(Details)14 b(of)h(the)g(REJECT)g(mec)
o(hanism)i Fg(:)22 b(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f
(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)42 b Fo(31)68 2093 y(7.3)k(Visas)14
b(and)i(fragmen)o(tation)21 b Fg(:)h(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f
(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)g(:)h(:)f(:)h(:)f(:)g(:)h(:)f(:)g(:)h
(:)f(:)g(:)h(:)42 b Fo(33)0 2234 y Fh(8)g(Conclusions)1558
b(33)0 2375 y(9)42 b(Ac)o(kno)o(wledgemen)o(ts)1393 b(33)0
2517 y(A)28 b(Public)17 b(k)o(ey)f(proto)q(col)i(without)f(state)h
(information)f(in)g(gatew)o(a)o(ys)493 b(35)964 2828 y Fo(4)p
eop
%%Page: 5 5
bop 0 45 a Fi(1)69 b(In)n(tro)r(duction)0 186 y Fo(The)17 b(lo)q(cal-area)e
(and)i(long-haul)e(net)o(w)o(orks)h(of)g(man)o(y)g(distinct)g(organizations)e
(can)j(b)q(e)g(joined)f(together)g(in)o(to)0 242 y(an)g Ff(internetwork)g
Fo(through)g(whic)o(h)g(datagrams)f(\015o)o(w)g(without)h(regard)f(to)h
(organizational)e(b)q(oundaries.)23 b(The)0 299 y(transparency)e(of)f(an)h
(in)o(ternet)o(w)o(ork)e(is)h(b)q(oth)h(a)g(blessing)f(and)h(a)g(curse:)32
b(a)20 b(blessing)g(b)q(ecause)i(it)e(pro)o(vides)0 355 y(univ)o(ersal)11
b(connectivit)o(y)g(without)f(requiring)h(application-sp)q(eci\014c)h(gatew)o
(a)o(ys,)e(and)i(a)f(curse)h(b)q(ecause)h(it)e(mak)o(es)0 412
y(it)j(m)o(uc)o(h)i(harder)f(to)f(con)o(trol)g(the)i(\015o)o(w)e(of)h
(information)e(b)q(et)o(w)o(een)j(organizations.)71 507 y(Early)h(in)o
(ternet)o(w)o(orks)f(ignored)h(the)i(issue)e(of)h(con)o(trol,)f(either)h(b)q
(ecause)h(they)f(connected)h(organizations)0 564 y(within)12
b(a)h(larger)g(administrativ)o(e)d(unit)j(\(suc)o(h)h(as)f(a)g(single)f(corp)
q(oration,)g(univ)o(ersit)o(y)l(,)g(or)h(go)o(v)o(ernmen)o(tal)f(b)q(o)q
(dy\))0 620 y(or)19 b(b)q(ecause)h(they)g(connected)g(researc)o(h)f
(institutions)f(with)h(little)f(need)i(to)f(limit)e(information)h(\015o)o(w.)
32 b(Cur-)0 676 y(ren)o(t)20 b(in)o(ternet)o(w)o(orks)f(connect)j
(organizations)c(that)i(ma)o(y)g(ha)o(v)o(e)h(comp)q(eting)f(in)o(terests.)36
b(Th)o(us,)22 b(w)o(e)e(can)h(no)0 733 y(longer)16 b(ignore)g(the)h(need)h
(for)e(con)o(trolling)e(in)o(ter-organizational)g(information)h(\015o)o(w.)24
b(Similarly)l(,)15 b(in)i(a)f(m)o(ulti-)0 789 y(organization)9
b(in)o(ternet)o(w)o(ork,)g(costs)h(m)o(ust)h(b)q(e)g(billed)f(to)g
(individual)g(organizations)f(or)h(departmen)o(ts,)h(resulting)0
846 y(in)k(a)g(gro)o(wing)e(need)k(for)d(secure)i(proto)q(cols)e(to)h(accoun)
o(t)f(for)h(datagram)f(tra\016c.)71 941 y(One)21 b(approac)o(h)g(is)f(to)g
(in)o(tro)q(duce)h(con)o(trols)f(at)g(a)g(n)o(um)o(b)q(er)i(of)e(lev)o(els)g
(in)h(the)g(proto)q(col)f(hierarc)o(h)o(y)l(.)36 b(W)l(e)0
998 y(w)o(ould)15 b(lik)o(e)f(to)g(preserv)o(e)i(the)f(useful)g(prop)q
(erties)g(of)g(datagram-lev)o(el)e(transparency)i(b)o(y)g(con)o(trolling)e
(the)i(\015o)o(w)0 1054 y(of)f(individual)g(datagrams.)k(W)l(e)d(assume)g
(that)f(higher-lev)o(el)g(con)o(trols)f(will)h(b)q(e)h(implemen)o(ted)g(as)f
(appropriate)0 1111 y(to)h(the)g(particular)f(applications)f(and)j
(organizations)d(in)o(v)o(olv)o(ed.)71 1206 y(T)l(o)h(pro)o(vide)h
(datagram-lev)o(el)e(con)o(trol,)h(Estrin)g(and)i(Tsudik)f(ha)o(v)o(e)f(prop)
q(osed)i(the)f Ff(Visa)g Fo(sc)o(heme[5].)k(Con-)0 1263 y(ceptually)l(,)d(a)g
(secret)g(k)o(ey)h(is)e(used)i(to)f(compute)h(an)f(unforgeable)g(mark)g
(placed)g(on)h(a)f(datagram)e(to)i(assure)g(a)0 1319 y(gatew)o(a)o(y)11
b(that)i(in)o(ter-organizational)d(transmission)h(of)i(that)f(datagram)g(is)g
(prop)q(erly)h(authorized.)19 b(This)13 b(mark)0 1376 y(is)k(called)f(a)h
Ff(visa)p Fo(,)g(b)o(y)g(analogy)e(with)i(the)g(stamp)f(made)h(on)g(a)g
(passp)q(ort)f(that)h(allo)o(ws)e(the)i(b)q(earer)g(to)g(cross)f(a)0
1432 y(b)q(order.)k(W)l(e)13 b(bind)h(eac)o(h)g(visa)f(to)g(a)g(single)g
(datagram)f(in)i(order)f(to)g(guaran)o(tee)g(the)h(authen)o(ticit)o(y)e(of)h
(datagram)0 1489 y(con)o(ten)o(ts.)19 b(Visas)14 b(w)o(ere)g(\014rst)g
(suggested)h(b)o(y)f(Da)o(vid)g(Reed,)h(and)g(do)q(cumen)o(ted)g(b)o(y)f(J.)h
(Mracek[12)o(].)k(A)14 b(detailed)0 1545 y(analysis)21 b(of)g(the)h(issues)g
(asso)q(ciated)f(with)g(in)o(ter-organizational)e(net)o(w)o(orks,)j(as)f(w)o
(ell)g(as)h(the)g(motiv)m(ations)0 1602 y(b)q(ehind)16 b(the)g(visa)e(sc)o
(heme,)h(can)g(b)q(e)h(found)g(in)f([7)o(].)71 1697 y(In)g(general,)g(a)g
(host)f(on)h(a)g(visa-con)o(trolled)f(net)o(w)o(ork)g(that)g(w)o(an)o(ts)g
(to)h(comm)o(unicate)f(across)h(its)f(organiza-)0 1754 y(tional)h(b)q
(oundary)i(initially)e(engages)h(in)h(a)f(high-lev)o(el)g(authorization)f
(and)i(authen)o(tication)e(pro)q(cedure)j(with)0 1810 y(the)g(Access)h(Con)o
(trol)e(Serv)o(ers)h(\(A)o(CSs\))g(on)g(b)q(oth)h(source)f(and)h(destination)
e(net)o(w)o(orks)g(\(see)h(\014gure)h(1\).)29 b(The)0 1867
y(need)19 b(for)e(\(and)h(particulars)f(of)t(\))g(A)o(CS)h(authorization)e
(is)i(determined)g(individually)f(b)o(y)h(the)h(o)o(wners)e(of)h(the)0
1923 y(end-p)q(oin)o(t)d(net)o(w)o(orks.)k(When)c(a)g(source-destination)f
(connection)h(has)g(b)q(een)h(appro)o(v)o(ed)f(b)o(y)g(an)g(A)o(CS)g(on)g
(eac)o(h)0 1979 y(net)o(w)o(ork,)20 b(the)h(A)o(CSs)f(allo)q(cate)g
Ff(visas)f Fo(to)h(the)h(requesting)f(host.)35 b(The)21 b(host)f(uses)h(the)g
(visas)e(to)h(stamp)g(all)0 2036 y(datagrams)14 b(b)q(elonging)h(to)g(that)g
(connection.)21 b(The)15 b(b)q(order)h(gatew)o(a)o(ys)e(\(\\visa-gatew)o(a)o
(ys"\))e(of)j(the)h(end-p)q(oin)o(t)0 2092 y(organizations)e(c)o(hec)o(k)j
(all)e(datagrams)g(for)g(appropriate)h(stamping,)f(and)h(pass)g(authorized)g
(datagrams)f(un)o(til)0 2149 y(a)g(visa)f(expires)h(or)g(is)f(rev)o(ok)o(ed.)
20 b(Eac)o(h)15 b(gatew)o(a)o(y)e(c)o(hec)o(ks)i(the)g(authorization)f(of)g
(a)h(datagram)f(to)g(en)o(ter)h(or)g(exit)0 2205 y(the)j(attac)o(hed)g(net)o
(w)o(ork,)f(not)g(whether)i(the)f(datagram)e(is)i(authorized)g(to)f(tra)o(v)o
(el)f(all)h(the)i(w)o(a)o(y)e(from)g(source)0 2262 y(to)e(destination.)21
b(Visa-gatew)o(a)o(ys)13 b(ma)o(y)i(also)g(use)h(visa)f(information)f(to)h
(ensure)h(that)f(the)h(prop)q(er)g(parties)f(are)0 2318 y(billed)g(for)f(the)
i(cost)e(of)h(carrying)f(the)i(datagrams.)71 2414 y(In)23 b(this)e(rep)q(ort)
h(w)o(e)g(presen)o(t)h(t)o(w)o(o)e(v)m(ariations)g(of)h(the)g(proto)q(col)f
(originally)f(prop)q(osed)j(b)o(y)f(Estrin)g(and)0 2470 y(Tsudik[5)o(].)33
b(One)21 b(is)e(an)h(impro)o(v)o(ed)f(v)o(ersion)g(of)g(the)h(original)e
(\(\\stateful"\))g(proto)q(col,)h(in)h(whic)o(h)f(the)h(A)o(CSs)0
2527 y(distribute)c(visas)g(to)g(the)g(gatew)o(a)o(ys)f(in)o(v)o(olv)o(ed.)23
b(The)17 b(other)f(\(\\stateless"\))f(v)m(arian)o(t)g(a)o(v)o(oids)h(the)g
(necessit)o(y)h(for)0 2583 y(distributed)h(state,)g(but)h(requires)g
(additional)e(encryption)h(steps.)30 b(W)l(e)19 b(then)g(analyze)f(the)h(dra)
o(wbac)o(ks)f(and)0 2640 y(adv)m(an)o(tages)e(of)h(these)g(t)o(w)o(o)f(proto)
q(cols)g(based)h(on)g(con)o(v)o(en)o(tional)e(single-k)o(ey)h(\(\\priv)m
(ate-k)o(ey"\))g(cryptograph)o(y)l(.)0 2696 y(\(A)d(public-k)o(ey)h(v)m
(ariation)e(of)i(the)f(stateless)g(proto)q(col)f(is)i(discussed)g(in)f(App)q
(endix)i(A.\))k(This)13 b(tec)o(hnical)g(rep)q(ort)964 2828
y(5)p eop
%%Page: 6 6
bop 240 550 a
 21313290 21313290 5065195 328908 34864332 12564316 startTexFig
240 550 a
%%BeginDocument: inetfig.idraw

/arrowHeight 8 def
/arrowWidth 4 def
/none null def
/numGraphicParameters 17 def
/stringLimit 65535 def

/Begin {
save
numGraphicParameters dict begin
} def

/End {
end
restore
} def

/SetB {
dup type /nulltype eq {
pop
false /brushRightArrow idef
false /brushLeftArrow idef
true /brushNone idef
} {
/brushDashOffset idef
/brushDashArray idef
0 ne /brushRightArrow idef
0 ne /brushLeftArrow idef
/brushWidth idef
false /brushNone idef
} ifelse
} def

/SetCFg {
/fgred idef
/fggreen idef
/fgblue idef
} def

/SetCBg {
/bgred idef
/bggreen idef
/bgblue idef
} def

/SetF {
/printSize idef
/printFont idef
} def

/SetP {
dup type /nulltype eq {
pop true /patternNone idef
} {
/patternGrayLevel idef
patternGrayLevel -1 eq {
/patternString idef
} if
false /patternNone idef
} ifelse
} def

/BSpl {
0 begin
storexyn
newpath
n 1 gt {
0 0 0 0 0 0 1 1 true subspline
n 2 gt {
0 0 0 0 1 1 2 2 false subspline
1 1 n 3 sub {
/i exch def
i 1 sub dup i dup i 1 add dup i 2 add dup false subspline
} for
n 3 sub dup n 2 sub dup n 1 sub dup 2 copy false subspline
} if
n 2 sub dup n 1 sub dup 2 copy 2 copy false subspline
patternNone not brushLeftArrow not brushRightArrow not and and { ifill } if
brushNone not { istroke } if
0 0 1 1 leftarrow
n 2 sub dup n 1 sub dup rightarrow
} if
end
} dup 0 4 dict put def

/Circ {
newpath
0 360 arc
patternNone not { ifill } if
brushNone not { istroke } if
} def

/CBSpl {
0 begin
dup 2 gt {
storexyn
newpath
n 1 sub dup 0 0 1 1 2 2 true subspline
1 1 n 3 sub {
/i exch def
i 1 sub dup i dup i 1 add dup i 2 add dup false subspline
} for
n 3 sub dup n 2 sub dup n 1 sub dup 0 0 false subspline
n 2 sub dup n 1 sub dup 0 0 1 1 false subspline
patternNone not { ifill } if
brushNone not { istroke } if
} {
Poly
} ifelse
end
} dup 0 4 dict put def

/Elli {
0 begin
newpath
4 2 roll
translate
scale
0 0 1 0 360 arc
patternNone not { ifill } if
brushNone not { istroke } if
end
} dup 0 1 dict put def

/Line {
0 begin
2 storexyn
newpath
x 0 get y 0 get moveto
x 1 get y 1 get lineto
brushNone not { istroke } if
0 0 1 1 leftarrow
0 0 1 1 rightarrow
end
} dup 0 4 dict put def

/MLine {
0 begin
storexyn
newpath
n 1 gt {
x 0 get y 0 get moveto
1 1 n 1 sub {
/i exch def
x i get y i get lineto
} for
patternNone not brushLeftArrow not brushRightArrow not and and { ifill } if
brushNone not { istroke } if
0 0 1 1 leftarrow
n 2 sub dup n 1 sub dup rightarrow
} if
end
} dup 0 4 dict put def

/Poly {
3 1 roll
newpath
moveto
-1 add
{ lineto } repeat
closepath
patternNone not { ifill } if
brushNone not { istroke } if
} def

/Rect {
0 begin
/t exch def
/r exch def
/b exch def
/l exch def
newpath
l b moveto
l t lineto
r t lineto
r b lineto
closepath
patternNone not { ifill } if
brushNone not { istroke } if
end
} dup 0 4 dict put def

/Text {
ishow
} def

/idef {
dup where { pop pop pop } { exch def } ifelse
} def

/ifill {
0 begin
gsave
patternGrayLevel -1 ne {
fgred bgred fgred sub patternGrayLevel mul add
fggreen bggreen fggreen sub patternGrayLevel mul add
fgblue bgblue fgblue sub patternGrayLevel mul add setrgbcolor
eofill
} {
eoclip
originalCTM setmatrix
pathbbox /t exch def /r exch def /b exch def /l exch def
/w r l sub ceiling cvi def
/h t b sub ceiling cvi def
/imageByteWidth w 8 div ceiling cvi def
/imageHeight h def
bgred bggreen bgblue setrgbcolor
eofill
fgred fggreen fgblue setrgbcolor
l b translate w h scale
w h true [w 0 0 h neg 0 h] { patternproc } imagemask
} ifelse
grestore
end
} dup 0 8 dict put def

/istroke {
gsave
brushDashOffset -1 eq {
[] 0 setdash
1 setgray
} {
brushDashArray brushDashOffset setdash
fgred fggreen fgblue setrgbcolor
} ifelse
brushWidth setlinewidth
originalCTM setmatrix
stroke
grestore
} def

/ishow {
0 begin
gsave
0 2.5 originalCTM dtransform idtransform
/yoff exch def
/xoff exch def
printFont /Courier ne printSize 10 ne and { xoff yoff translate } if
printFont findfont printSize scalefont setfont
fgred fggreen fgblue setrgbcolor
/vertoffset printSize neg def {
0 vertoffset moveto show
/vertoffset vertoffset printSize sub def
} forall
grestore
end
} dup 0 3 dict put def

/patternproc {
0 begin
/patternByteLength patternString length def
/patternHeight patternByteLength 8 mul sqrt cvi def
/patternWidth patternHeight def
/patternByteWidth patternWidth 8 idiv def
/imageByteMaxLength imageByteWidth imageHeight mul
stringLimit patternByteWidth sub min def
/imageMaxHeight imageByteMaxLength imageByteWidth idiv patternHeight idiv
patternHeight mul patternHeight max def
/imageHeight imageHeight imageMaxHeight sub store
/imageString imageByteWidth imageMaxHeight mul patternByteWidth add string def
0 1 imageMaxHeight 1 sub {
/y exch def
/patternRow y patternByteWidth mul patternByteLength mod def
/patternRowString patternString patternRow patternByteWidth getinterval def
/imageRow y imageByteWidth mul def
0 patternByteWidth imageByteWidth 1 sub {
/x exch def
imageString imageRow x add patternRowString putinterval
} for
} for
imageString
end
} dup 0 12 dict put def

/min {
dup 3 2 roll dup 4 3 roll lt { exch } if pop
} def

/max {
dup 3 2 roll dup 4 3 roll gt { exch } if pop
} def

/arrowhead {
0 begin
transform originalCTM itransform
/taily exch def
/tailx exch def
transform originalCTM itransform
/tipy exch def
/tipx exch def
/dy tipy taily sub def
/dx tipx tailx sub def
/angle dx 0 ne dy 0 ne or { dy dx atan } { 90 } ifelse def
gsave
originalCTM setmatrix
tipx tipy translate
angle rotate
newpath
0 0 moveto
arrowHeight neg arrowWidth 2 div lineto
arrowHeight neg arrowWidth 2 div neg lineto
closepath
patternNone not { ifill } if
brushNone not { istroke } if
grestore
end
} dup 0 7 dict put def

/leftarrow {
0 begin
y exch get /taily exch def
x exch get /tailx exch def
y exch get /tipy exch def
x exch get /tipx exch def
brushLeftArrow { tipx tipy tailx taily arrowhead } if
end
} dup 0 4 dict put def

/rightarrow {
0 begin
y exch get /tipy exch def
x exch get /tipx exch def
y exch get /taily exch def
x exch get /tailx exch def
brushRightArrow { tipx tipy tailx taily arrowhead } if
end
} dup 0 4 dict put def

/midpoint {
0 begin
/y1 exch def
/x1 exch def
/y0 exch def
/x0 exch def
x0 x1 add 2 div
y0 y1 add 2 div
end
} dup 0 4 dict put def

/thirdpoint {
0 begin
/y1 exch def
/x1 exch def
/y0 exch def
/x0 exch def
x0 2 mul x1 add 3 div
y0 2 mul y1 add 3 div
end
} dup 0 4 dict put def

/subspline {
0 begin
/movetoNeeded exch def
y exch get /y3 exch def
x exch get /x3 exch def
y exch get /y2 exch def
x exch get /x2 exch def
y exch get /y1 exch def
x exch get /x1 exch def
y exch get /y0 exch def
x exch get /x0 exch def
x1 y1 x2 y2 thirdpoint
/p1y exch def
/p1x exch def
x2 y2 x1 y1 thirdpoint
/p2y exch def
/p2x exch def
x1 y1 x0 y0 thirdpoint
p1x p1y midpoint
/p0y exch def
/p0x exch def
x2 y2 x3 y3 thirdpoint
p2x p2y midpoint
/p3y exch def
/p3x exch def
movetoNeeded { p0x p0y moveto } if
p1x p1y p2x p2y p3x p3y curveto
end
} dup 0 17 dict put def

/storexyn {
/n exch def
/y n array def
/x n array def
n 1 sub -1 0 {
/i exch def
y i 3 2 roll put
x i 3 2 roll put
} for
} def



Begin
[ 0.923077 0 0 0.923077 0 0 ] concat
/originalCTM matrix currentmatrix def

Begin %I Pict
[ 0.8 0 0 0.8 60.2 -12.2731 ] concat

Begin %I CBSpl
2 0 0 [] 0 SetB
0 0 0 SetCFg
1 1 1 SetCBg
none SetP %I p n
[ 0.795068 0 0 0.795068 119.988 -412.204 ] concat
183 681
216 699
262 682
302 708
360 694
384 657
373 621
325 577
279 571
234 551
192 565
164 576
182 613
155 630
142 652
15 CBSpl
End

Begin %I CBSpl
2 0 0 [] 0 SetB
0 0 0 SetCFg
1 1 1 SetCBg
none SetP %I p n
[ 0.795068 0 0 0.795068 28.444 34.9459 ] concat
83 219
116 236
161 219
176 188
153 168
181 138
144 118
106 108
78 123
85 152
70 161
75 186
78 197
13 CBSpl
End

Begin %I CBSpl
2 0 0 [] 0 SetB
0 0 0 SetCFg
1 1 1 SetCBg
none SetP %I p n
[ 0.795068 0 0 0.795068 111.67 33.4099 ] concat
600 235
562 214
512 212
506 174
528 148
546 93
598 117
612 164
603 192
608 220
10 CBSpl
End

Begin %I Rect
2 0 0 [] 0 SetB
0 0 0 SetCFg
1 1 1 SetCBg
none SetP %I p n
[ 0.987055 0 0 0.987055 4.34955 1.92407 ] concat
28 182 56 210 Rect
End

Begin %I Rect
2 0 0 [] 0 SetB
0 0 0 SetCFg
1 1 1 SetCBg
none SetP %I p n
[ 0.987055 0 0 0.987055 4.34955 1.92407 ] concat
28 126 56 154 Rect
End

Begin %I Rect
2 0 0 [] 0 SetB
0 0 0 SetCFg
1 1 1 SetCBg
none SetP %I p n
[ 0.987055 0 0 0.987055 4.34955 1.92407 ] concat
616 189 644 217 Rect
End

Begin %I Rect
2 0 0 [] 0 SetB
0 0 0 SetCFg
1 1 1 SetCBg
none SetP %I p n
[ 0.987055 0 0 0.987055 4.34955 1.92407 ] concat
616 126 644 154 Rect
End

Begin %I Rect
2 0 0 [] 0 SetB
0 0 0 SetCFg
1 1 1 SetCBg
none SetP %I p n
[ 0.987055 0 0 0.987055 4.34955 1.92407 ] concat
532 224 574 266 Rect
End

Begin %I Rect
2 0 0 [] 0 SetB
0 0 0 SetCFg
1 1 1 SetCBg
none SetP %I p n
[ 0.987055 0 0 0.987055 4.34955 1.92407 ] concat
91 231 133 273 Rect
End

Begin %I Poly
2 0 0 [] 0 SetB
0 0 0 SetCFg
1 1 1 SetCBg
none SetP %I p n
[ 0.987055 0 0 0.987055 45.8059 8.83346 ] concat
105 84
133 84
147 63
133 42
105 42
91 63
105 84
7 Poly
End

Begin %I Poly
2 0 0 [] 0 SetB
0 0 0 SetCFg
1 1 1 SetCBg
none SetP %I p n
[ 0.987055 0 0 0.987055 398.185 8.83346 ] concat
105 84
133 84
147 63
133 42
105 42
91 63
105 84
7 Poly
End

Begin %I Line
1 0 0 [] 0 SetB
0 0 0 SetCFg
1 1 1 SetCBg
none SetP %I p n
[ 0.987055 0 0 0.987055 4.34955 1.92407 ] concat
112 231 112 231 Line
End

Begin %I Line
1 0 0 [] 0 SetB
0 0 0 SetCFg
1 1 1 SetCBg
none SetP %I p n
[ 0.987055 0 0 0.987055 4.34955 1.92407 ] concat
238 273 238 273 Line
End

Begin %I Line
1 0 0 [] 0 SetB
0 0 0 SetCFg
1 1 1 SetCBg
none SetP %I p n
[ 0.987055 0 0 0.987055 4.34955 1.92407 ] concat
238 266 238 266 Line
End

Begin %I Line
1 0 0 [] 0 SetB
0 0 0 SetCFg
1 1 1 SetCBg
none SetP %I p n
[ 0.987055 0 0 0.987055 4.34955 1.92407 ] concat
112 231 112 218 Line
End

Begin %I Line
1 0 0 [] 0 SetB
0 0 0 SetCFg
1 1 1 SetCBg
none SetP %I p n
[ 0.987055 0 0 0.987055 4.34955 1.92407 ] concat
56 196 88 196 Line
End

Begin %I Line
1 0 0 [] 0 SetB
0 0 0 SetCFg
1 1 1 SetCBg
none SetP %I p n
[ 0.987055 0 0 0.987055 4.34955 1.92407 ] concat
56 140 90 147 Line
End

Begin %I Line
1 0 0 [] 0 SetB
0 0 0 SetCFg
1 1 1 SetCBg
none SetP %I p n
[ 0.987055 0 0 0.987055 4.34955 1.92407 ] concat
140 133 140 133 Line
End

Begin %I Line
1 0 0 [] 0 SetB
0 0 0 SetCFg
1 1 1 SetCBg
none SetP %I p n
[ 0.987055 0 0 0.987055 4.34955 1.92407 ] concat
141 130 161 91 Line
End

Begin %I Line
1 0 0 [] 0 SetB
0 0 0 SetCFg
1 1 1 SetCBg
none SetP %I p n
[ 0.987055 0 0 0.987055 4.34955 1.92407 ] concat
189 70 258 70 Line
End

Begin %I Line
1 0 0 [] 0 SetB
0 0 0 SetCFg
1 1 1 SetCBg
none SetP %I p n
[ 0.987055 0 0 0.987055 4.34955 1.92407 ] concat
553 224 553 205 Line
End

Begin %I Line
1 0 0 [] 0 SetB
0 0 0 SetCFg
1 1 1 SetCBg
none SetP %I p n
[ 0.987055 0 0 0.987055 4.34955 1.92407 ] concat
597 203 616 203 Line
End

Begin %I Line
1 0 0 [] 0 SetB
0 0 0 SetCFg
1 1 1 SetCBg
none SetP %I p n
[ 0.987055 0 0 0.987055 4.34955 1.92407 ] concat
593 140 616 140 Line
End

Begin %I Line
1 0 0 [] 0 SetB
0 0 0 SetCFg
1 1 1 SetCBg
none SetP %I p n
[ 0.987055 0 0 0.987055 4.34955 1.92407 ] concat
540 134 518 91 Line
End

Begin %I Line
1 0 0 [] 0 SetB
0 0 0 SetCFg
1 1 1 SetCBg
none SetP %I p n
[ 0.987055 0 0 0.987055 4.34955 1.92407 ] concat
490 70 405 70 Line
End

Begin %I Text
0 0 0 SetCFg
/Helvetica 12 SetF
[ 1 0 0 1 147 78 ] concat
[
(GWa)
] Text
End

Begin %I Text
0 0 0 SetCFg
/Helvetica 12 SetF
[ 1 0 0 1 504 77 ] concat
[
(GWb)
] Text
End

Begin %I Text
0 0 0 SetCFg
/Helvetica 12 SetF
[ 1 0 0 1 510 64 ] concat
[
()
] Text
End

Begin %I Text
0 0 0 SetCFg
/Helvetica 14 SetF
[ 1 0 0 1 105 182 ] concat
[
(Org. A)
] Text
End

Begin %I Text
0 0 0 SetCFg
/Helvetica 14 SetF
[ 1 0 0 1 540 176 ] concat
[
(Org. B)
] Text
End

Begin %I Text
0 0 0 SetCFg
/Helvetica 14 SetF
[ 1 0 0 1 303 97 ] concat
[
(Internet)
] Text
End

Begin %I Text
0 0 0 SetCFg
/Helvetica 12 SetF
[ 1 0 0 1 101 260 ] concat
[
(ACSa)
] Text
End

Begin %I Text
0 0 0 SetCFg
/Helvetica 12 SetF
[ 1 0 0 1 533 253 ] concat
[
(ACSb)
] Text
End

Begin %I Text
0 0 0 SetCFg
/Helvetica 12 SetF
[ 1 0 0 1 35 203 ] concat
[
(Hx)
] Text
End

Begin %I Text
0 0 0 SetCFg
/Helvetica 12 SetF
[ 1 0 0 1 35 148 ] concat
[
(Hy)
] Text
End

Begin %I Text
0 0 0 SetCFg
/Helvetica 12 SetF
[ 1 0 0 1 616 211 ] concat
[
(Hq)
] Text
End

Begin %I Text
0 0 0 SetCFg
/Helvetica 12 SetF
[ 1 0 0 1 616 148 ] concat
[
(Hr)
] Text
End

End %I eop

End %I eop






%%EndDocument
 240 550 a
 endTexFig
275 2148 a Fo(Figure)15 b(1:)k(Tw)o(o)c(in)o(terconnected)g(organizations)e
(running)i(the)h(visa)e(proto)q(col.)964 2828 y(6)p eop
%%Page: 7 7
bop 0 45 a Fo(is)16 b(based,)g(in)g(large)f(part,)h(up)q(on)h(a)f(shorter)f
(pap)q(er[8].)23 b(W)l(e)16 b(ha)o(v)o(e)g(extended)h(the)f(discussion)g(of)g
(design)g(issues)0 102 y(and)f(added)h(an)f(app)q(endix)h(describing)f(a)g
(visa)g(proto)q(col)f(using)h(dual-k)o(ey)g(\(public)g(k)o(ey\))g
(encryption.)0 262 y Fq(1.1)56 b(P)n(olicies)0 387 y Fo(Visas)20
b(are)g(a)h Ff(me)n(chanism)e Fo(for)h(authen)o(ticating)g(the)g(source,)i
(destination,)f(and)f(con)o(ten)o(ts)g(of)h(a)f(datagram.)0
444 y(Authen)o(tication)13 b(in)g(itself)f(is)i(not)f(an)g(end)i(but)e(a)h
(means)f(for)g(implemen)o(ting)g(a)g(p)q(olicy)l(,)g(suc)o(h)h(as)f(access)h
(con)o(trol)0 500 y(or)i(accoun)o(ting.)22 b(An)16 b(access)g(con)o(trol)f(p)
q(olicy)l(,)h(applied)g(to)f(datagrams,)g(requires)h(a)f(gatew)o(a)o(y)g(to)g
(determine)h(if)0 557 y(the)f(authen)o(ticated)f(parties)h(are)f(indeed)i
(authorized)f(to)f(comm)o(unicate.)19 b(\(Visa)14 b(proto)q(cols)g(describ)q
(ed)i(in)f(this)0 613 y(rep)q(ort)h(allo)o(w)f(only)h(authorized)g(pairs)g
(of)g(hosts)g(to)g(b)q(e)h(authen)o(ticated\).)22 b(An)17 b(accoun)o(ting)f
(p)q(olicy)g(requires)g(a)0 670 y(gatew)o(a)o(y)c(to)h(c)o(harge)g(the)g
(resources)g(used)h(to)f(an)h(authen)o(ticated)e(host;)i(in)f(this)g(con)o
(text)g(a)g(visa)f(is)h(a)g(certi\014cate)0 726 y(that)j(the)h(host)f(has)h
(promised)f(to)g(pa)o(y)h(its)f(bills.)23 b(A)17 b(resource)g(managemen)o(t)f
(p)q(olicy)h(requires)f(a)h(gatew)o(a)o(y)e(to)0 783 y(ensure)f(that)e(the)h
(authen)o(ticated)g(host)g(has)g(not)g(used)g(up)h(its)e(quota)h(of)f
(resources)i(\(for)e(example,)h(if)f(datagram)0 839 y(c)o(harges)j(m)o(ust)f
(b)q(e)i(prepaid\).)71 935 y(In)i(the)h(visa)e(proto)q(cols)g(w)o(e)h
(describ)q(e,)i(gatew)o(a)o(ys)c(do)i(not)g(b)q(ear)h(sole)f(resp)q
(onsibilit)o(y)e(for)i(making)f(p)q(olicy)0 991 y(decisions.)k(By)16
b(issuing)f(a)g(visa,)g(an)h(A)o(CS)f(has)h(precomputed)g(a)g(decision)f(suc)
o(h)h(as)f(\\these)h(hosts)f(are)h(allo)o(w)o(ed)0 1048 y(to)f(comm)o
(unicate,")g(or)h(\\this)f(host)h(can)g(b)q(e)h(trusted)e(to)h(pa)o(y)g(its)f
(bills.")21 b(The)16 b(task)g(of)f(a)h(gatew)o(a)o(y)e(is)i(reduced)0
1104 y(to)k(ensuring)h(that)f(the)g(visa)g(is)g(v)m(alid)h(and)g(is)f(b)q
(eing)h(used)g(correctly;)h(the)f(exp)q(ensiv)o(e)g(part)f(of)h(the)f(p)q
(olicy)0 1160 y(implemen)o(tation)15 b(is)h(done)g(once)h(p)q(er)g
(connection,)f(b)o(y)h(the)f(A)o(CS,)g(rather)g(than)g(once)h(p)q(er)g
(datagram,)e(b)o(y)h(the)0 1217 y(gatew)o(a)o(y)l(.)71 1312
y(This)11 b(rep)q(ort)g(emphasizes)g(problems)h(of)f(access)g(con)o(trol;)g
(visa)g(proto)q(cols)f(describ)q(ed)j(here)f(are)f(designed)h(for)0
1369 y(that)j(purp)q(ose.)23 b(Accoun)o(ting)16 b(and)g(resource)g(managemen)
o(t)f(app)q(ear)h(to)g(b)q(e)g(simpler)g(problems;)f(for)g(example,)0
1425 y(one)f(ma)o(y)f(tolerate)f(mo)q(derate)h(\\leak)m(age",)g(resulting)f
(in)i(sligh)o(tly)d(incorrect)i(bills,)g(if)g(the)g(net)h(result)f(is)g(a)g
(lo)o(w)o(er)0 1482 y(o)o(v)o(erhead)k(cost)g(for)g(doing)g(the)h(billing.)26
b(Also,)17 b(it)g(is)g(necessary)h(to)f(authen)o(ticate)g(only)g(one)h(part)o
(y)e(\(the)i(one)0 1538 y(who)c(is)g(pa)o(ying\))f(if)g(the)i(only)e
(application)g(is)h(billing.)k(Therefore,)c(in)g(an)g(en)o(vironmen)o(t)g
(where)g(visas)f(are)h(used)0 1595 y(for)g(accoun)o(ting)f(and)i(not)f(for)f
(access)i(con)o(trol,)e(somewhat)g(di\013eren)o(t)h(proto)q(cols)f(ma)o(y)g
(b)q(e)i(appropriate;)f(this)f(is)0 1651 y(the)i(sub)s(ject)g(of)g(w)o(ork)f
(in)h(progress[9)o(].)0 1812 y Fq(1.2)56 b(Net)n(w)n(ork)18
b(en)n(vironmen)n(t)0 1937 y Fo(W)l(e)d(will)f(assume)h(that)f(the)h(in)o
(ternet)o(w)o(ork)f(closely)g(follo)o(ws)f(the)i(mo)q(del)g(of)g(the)g(D)o
(ARP)l(A)g(In)o(ternet[17],)f(whic)o(h)0 1993 y(is)k(substan)o(tially)f
(similar)f(to)i(the)h(Op)q(en)h(Systems)e(In)o(terconnection)h(\(OSI\))g(mo)q
(del[21)o(,)f(24].)29 b(The)19 b(essen)o(tial)0 2050 y(features)c(of)g(the)g
(en)o(vironmen)o(t)f(are:)68 2183 y Fe(\017)23 b Fo(Hosts)14
b(are)h(autonomous)f(and)i(cannot)f(necessarily)f(b)q(e)i(trusted.)68
2277 y Fe(\017)23 b Fo(Organizational)16 b(net)o(w)o(orks)h(are)h(connected)h
(b)o(y)g(gatew)o(a)o(ys;)e(b)q(et)o(w)o(een)i(an)o(y)f(pair)g(of)g(hosts)g
(in)g(di\013eren)o(t)114 2333 y(organizations)f(there)j(are)f(at)h(least)e(t)
o(w)o(o)h(gatew)o(a)o(ys,)f(one)i(b)q(elonging)f(to)h(eac)o(h)f(of)h(the)f
(organizations.)114 2390 y(Conceptually)l(,)14 b(the)h(connection)g(b)q(et)o
(w)o(een)g(t)o(w)o(o)f(organizations)e(is)j(a)f(pair)h(of)f(half-gatew)o(a)o
(ys)f(connected)114 2446 y(via)h(a)h(trusted)g(link.)k(Eac)o(h)c(half-gatew)o
(a)o(y)e(can)j(b)q(e)g(trusted)f(b)o(y)g(its)f(o)o(wn)h(organization)e(but)i
(not)g(b)o(y)g(an)o(y)114 2503 y(other)f(organization.)68 2596
y Fe(\017)23 b Fo(All)10 b(information)g(\015o)o(ws)h(via)f(datagrams.)17
b(A)12 b(datagram)e(consists)g(of)h(a)g Ff(he)n(ader)h Fo(that)f(includes)g
(addressing)114 2653 y(information)i(and)i(a)g(data)g(segmen)o(t)g(that)f(is)
h(not)g(in)o(telligible)d(to)j(gatew)o(a)o(ys.)964 2828 y(7)p
eop
%%Page: 8 8
bop 68 45 a Fe(\017)23 b Fo(A)11 b(datagram)f(ma)o(y)h(\015o)o(w)g(through)h
(sev)o(eral)e(\\un)o(trusted")h(organizations)f(on)h(its)g(w)o(a)o(y)g(to)g
(the)g(destination.)68 139 y Fe(\017)23 b Fo(Host)12 b(addresses,)g(b)q(oth)h
(source)g(and)f(destination,)g(can)h(b)q(e)g(forged.)19 b(It)12
b(is)g(not)g(p)q(ossible)h(\(using)f(hardw)o(are)114 195 y(metho)q(ds\))g(to)
g(determine)h(reliably)e(whic)o(h)i(host)f(actually)f(sen)o(t)h(a)h(datagram)
e(or)h(to)g(prev)o(en)o(t)g(a)g(datagram)114 252 y(from)18
b(b)q(eing)i(seen)g(b)o(y)f(unauthorized)h(hosts;)h(in)e(other)g(w)o(ords,)h
(man)o(y)f(Lo)q(cal-Area)g(Net)o(w)o(ork)f(\(LAN\))114 308
y(tec)o(hnologies)c(can)h(b)q(e)h(wire-tapp)q(ed.)68 402 y
Fe(\017)23 b Fo(Duplicate)12 b(datagrams)f(and)i(o)q(ccasional)f(lost)g
(datagrams)f(are)i(natural)f(consequences)i(of)e(using)h(a)f(data-)114
459 y(gram)h(net)o(w)o(ork.)18 b(Therefore,)c(if)f(a)h(malicious)f(host)g
(duplicates)h(datagrams)e(from)i(time)f(to)g(time,)h(w)o(e)f(are)114
515 y(willing)g(to)i(accept)g(the)g(co)o(v)o(ert)g(c)o(hannel)g(created)g(b)o
(y)g(this)g(metho)q(d.)0 676 y Fq(1.3)56 b(Design)18 b(goals)0
801 y Fo(The)f(purp)q(ose)g(of)f(the)g(visa)g(proto)q(cols)f(is)h(to)g(allo)o
(w)f(an)h(organization)e(to)i(gran)o(t)g(certain)f(privileges)h(to)g(select,)
0 857 y(trusted)g(hosts)g(and)g(to)g(pro)o(vide)g(a)g(means)g(for)g(prev)o
(en)o(ting)g(the)g(abuse)h(of)f(suc)o(h)g(privileges.)23 b(This)16
b(is)f(but)i(one)0 914 y(comp)q(onen)o(t)f(in)h(the)f(pro)o(vision)f(of)h
(complete)g(securit)o(y)l(.)23 b(The)17 b(success)g(of)f(a)g(visa-based)g
(system)g(assumes)g(the)0 970 y(abilit)o(y)d(to)i(trust)f(certain)h(hosts)g
(not)g(to)f(misuse)h(visas.)71 1066 y(Our)i(primary)e(goal)h(is)g(to)g(allo)o
(w)e(an)j(organization)e(to)h(con)o(trol)f(the)i(transmission)e(of)h
(datagrams)f(to)h(and)0 1122 y(from)g(hosts)g(in)h(other)g(organizations.)22
b(If)17 b(the)g(sp)q(eci\014c)h(hosts)e(in)o(v)o(olv)o(ed)g(can)h(b)q(e)h
(trusted)e(then)h(w)o(e)g(can)g(meet)0 1179 y(a)22 b(stronger)f(goal:)33
b(w)o(e)22 b(can)h(con)o(trol)e(the)h(transmission)e(of)i(datagrams)f(to)h
(and)g(from)g Ff(a)h(sp)n(e)n(ci\014c)d Fo(host)i(in)0 1235
y(another)16 b(organization.)22 b(In)17 b(a)f(datagram)f(net)o(w)o(ork,)g(as)
h(opp)q(osed)h(to)f(a)g(circuit-switc)o(hed)g(net)o(w)o(ork,)f(the)h(only)0
1292 y(information)h(a)o(v)m(ailable)h(ab)q(out)h(a)f(datagram)g(m)o(ust)g(b)
q(e)i(attac)o(hed)f(to)f(the)h(datagram)f(rather)g(than)h(inferred)0
1348 y(from)c(the)g(route)g(the)h(datagram)d(follo)o(ws.)19
b(Therefore,)c(w)o(e)g(can)g(state)g(these)h(goals)e(more)h(directly)f(as)h
(follo)o(ws.)0 1405 y(An)e(organization)e(can)i(guaran)o(tee)f(that:)18
b(a)12 b(datagram)f(can)i(lea)o(v)o(e)f(the)h(source)g(organization)d
Fg(O)1665 1412 y Fd(sr)q(c)1728 1405 y Fo(only)j(if)f Fg(O)1900
1412 y Fd(sr)q(c)0 1461 y Fo(has)h(authorized)g(the)h(sender)f(to)g(send)h
(datagrams)e(to)g(the)i(apparen)o(t)f(destination)f(host,)h(and)g(a)g
(datagram)f(can)0 1517 y(en)o(ter)17 b(the)g(destination)g(organization)e
Fg(O)732 1524 y Fd(dst)798 1517 y Fo(only)i(if)g Fg(O)979 1524
y Fd(dst)1045 1517 y Fo(has)g(authorized)g(the)g(sender)h(to)f(send)h
(datagrams)0 1574 y(to)c(the)h(apparen)o(t)g(destination)e(host.)20
b(Visa)14 b(proto)q(cols)g(also)g(allo)o(w)f(eac)o(h)i(con)o(trolling)d
(organization)h(to)i(rev)o(ok)o(e)0 1630 y(the)g(privileges)f(it)h(has)g
(gran)o(ted.)71 1726 y(Another)d(goal)f(is)h(to)f(add)i(no)f(cost)g(to)g(in)o
(tra-organizatio)o(nal)d(datagram)i(tra\016c,)h(nor)g(to)f(imp)q(ose)i
(additional)0 1782 y(securit)o(y)j(measures)h(up)q(on)g(hosts)f(that)h(do)f
(not)h(participate)e(in)i(in)o(ter-organizational)c(tra\016c.)24
b(Similarly)l(,)15 b(w)o(e)0 1839 y(wish)20 b(to)f(limit)f(the)i(o)o(v)o
(erhead)g(imp)q(osed)g(up)q(on)h(organizations)d(who)h(are)h(not)g(concerned)
h(with)e(con)o(trolling)0 1895 y(external)c(access.)71 1991
y(Finally)l(,)k(w)o(e)g(w)o(an)o(t)f(to)h(minimize)g(the)h(costs)f(imp)q
(osed)g(b)o(y)h(the)f(visa)g(proto)q(cols,)g(including:)29
b(additional)0 2047 y(p)q(er-pac)o(k)o(et)17 b(pro)q(cessing)g(time)f(in)h(b)
q(oth)g(hosts)f(and)h(gatew)o(a)o(ys,)e(additional)g(storage)h(requiremen)o
(ts)g(for)g(hosts)0 2104 y(and)c(gatew)o(a)o(ys,)e(extra)h(datagrams)g(sen)o
(t)g(during)h(connection)g(setup,)g(incremen)o(ts)f(in)h(the)g(length)f(of)h
(datagrams)0 2160 y(\(increasing)17 b(length)g(increases)h(latency)f(and)h
(decreases)h(throughput\),)e(costs)g(of)h(reco)o(v)o(ering)f(from)g(gatew)o
(a)o(y)0 2217 y(crashes,)e(and)g(complexit)o(y)f(of)h(the)g(implemen)o
(tations.)71 2312 y(The)h(securit)o(y)f(of)h(visa)f(proto)q(cols)g(dep)q
(ends)i(up)q(on)g(the)f(secure)g(op)q(eration)f(of)h(participating)e(A)o
(CSs,)i(gate-)0 2369 y(w)o(a)o(ys,)i(and)h(hosts,)g(as)g(w)o(ell)f(as)g(up)q
(on)i(secure)f(distribution)f(of)g(visas)g(from)h(A)o(CSs)f(to)h(gatew)o(a)o
(ys)e(and)i(hosts.)0 2425 y(Discussion)e(of)g(mec)o(hanisms)g(to)f(implemen)o
(t)h(suc)o(h)h(securit)o(y)f(is)g(b)q(ey)o(ond)h(the)f(scop)q(e)h(of)f(this)g
(rep)q(ort)g(and)h(can)0 2482 y(b)q(e)e(found)f(elsewhere[15].)964
2828 y(8)p eop
%%Page: 9 9
bop 0 45 a Fq(1.4)56 b(Structure)18 b(of)g(this)h(rep)r(ort)0
170 y Fo(The)11 b(remainder)f(of)h(this)f(rep)q(ort)g(is)g(organized)h(as)f
(follo)o(ws.)16 b(Section)11 b(2)f(describ)q(es)i(the)e(notation)g(and)h(the)
f(general)0 227 y(features)i(of)f(the)i(visa)e(proto)q(cols.)18
b(Section)12 b(3)g(describ)q(es)g(an)g(impro)o(v)o(ed)g(v)o(ersion)f(of)h
(the)g(original)e(single-k)o(ey)i(visa)0 283 y(proto)q(col)f(\(with)g(state)g
(information)f(in)h(gatew)o(a)o(ys\).)17 b(Section)12 b(4)f(describ)q(es)i(a)
e(stateless)g(v)m(ariation)f(of)i(the)f(single-)0 339 y(k)o(ey)19
b(proto)q(col.)29 b(Section)19 b(5)f(presen)o(ts)h(an)g(ev)m(aluation)f(and)h
(analysis)f(of)g(the)h(t)o(w)o(o)e(proto)q(cols.)30 b(Exp)q(erimen)o(tal)0
396 y(results)14 b(are)h(discussed)g(in)f(section)h(6.)k(Section)c(7)f(touc)o
(hes)h(up)q(on)g(sev)o(eral)f(design)h(issues)f(that)g(space)h(do)q(es)g(not)
0 452 y(p)q(ermit)g(us)g(to)g(co)o(v)o(er)f(in)h(detail.)k(Finally)l(,)14
b(section)h(8)f(summarizes)h(our)g(\014ndings.)0 635 y Fi(2)69
b(Visa)23 b(proto)r(cols)0 777 y Fq(2.1)56 b(Notation)0 902
y Fo(W)l(e)15 b(use)h(the)f(notation)f(of)h(Needham)g(and)h(Sc)o(hro)q
(eder[15])e(to)h(sho)o(w)g(encryption)g(op)q(erations;)f(for)g(example,)811
958 y Fe(f)p Fg(F)863 965 y Fp(0)882 958 y Fg(;)8 b(F)932 965
y Fp(1)951 958 y Fg(;)g(:::;)g(F)1061 965 y Fd(n)1082 958 y
Fe(g)1105 942 y Fd(K)0 1015 y Fo(denotes)16 b(the)g(encryption)f(of)g(a)h
(record)f(con)o(taining)f(\014elds)i Fg(F)1067 1022 y Fp(0)1103
1015 y Fo(through)f Fg(F)1304 1022 y Fd(n)1343 1015 y Fo(with)g(k)o(ey)h(K.)f
(F)l(or)g(activ)o(e)g(en)o(tities)0 1071 y(in)o(v)o(olv)o(ed)e(in)i(the)f
(visa)g(proto)q(cols,)f(w)o(e)h(use)h(the)g(sym)o(b)q(ol)e
Ff(H)i Fo(to)e(denote)i(a)f(host,)g Ff(O)g Fo(to)g(denote)h(an)f
(organization,)0 1128 y Ff(A)o(CS)e Fo(to)h(denote)g(an)h(Access)g(Con)o
(trol)d(Serv)o(er,)j(and)f Ff(GW)h Fo(to)f(denote)h(an)f(in)o
(ter-organization)e(gatew)o(a)o(y)l(.)18 b Ff(VKEY)0 1184 y
Fo(denotes)e(a)g(visa)g(k)o(ey)g(issued)h(b)o(y)f(an)g(A)o(CS)g(for)g(use)g
(in)h(creating)e(visas)g(in)i(the)f(stateful)f(visa)h(proto)q(col,)f(and)h
Ff(V)0 1241 y Fo(denotes)f(a)g(visa)g(issued)g(b)o(y)g(an)g(A)o(CS)g(for)g
(use)g(in)h(the)f(stateless)f(proto)q(col.)71 1336 y(An)o(y)e(of)f(these)i
(sym)o(b)q(ols)e(can)i(b)q(e)f(subscripted)h Ff(sr)n(c)e Fo(to)h(indicate)g
(the)g Ff(sour)n(c)n(e)f Fo(of)h(a)g(datagram,)f Ff(dst)h Fo(to)f(indicate)0
1393 y(the)k Ff(destination)g Fo(of)g(a)f(datagram,)g Ff(tr)n(ans)g
Fo(to)h(indicate)f(an)h(organization)f(through)g(whic)o(h)i(a)e(datagram)g
(passes)0 1449 y Ff(in)h(tr)n(ansit)e Fo(b)q(et)o(w)o(een)i(the)f(source)h
(and)f(destination)f(organizations,)f Ff(exit)i Fo(to)g(indicate)g(the)g
(gatew)o(a)o(y)f(via)g(whic)o(h)0 1506 y(a)j(datagram)f Ff(exits)i
Fo(an)f(organization,)f(and)h Ff(entr)h Fo(to)f(indicate)g(the)h(gatew)o(a)o
(y)d(via)i(whic)o(h)h(a)f(datagram)f Ff(enters)p Fo(.)0 1562
y(F)l(or)f(example,)g Fg(H)309 1569 y Fd(dst)373 1562 y Fo(denotes)h(the)f
(destination)g(host)g(of)g(a)g(datagram,)f(and)i Fg(GW)1419
1569 y Fd(exit)1496 1562 y Fo(denotes)g(a)f(visa-gatew)o(a)o(y)0
1619 y(of)h(the)g(source)g(organization)f(through)g(whic)o(h)h(a)g(datagram)f
(lea)o(v)o(es)g(that)h(organization's)e(net)o(w)o(ork.)0 1779
y Fq(2.2)56 b(Comp)r(onen)n(ts)0 1904 y Fo(Both)15 b(visa)g(proto)q(cols)g
(in)o(v)o(olv)o(e)f(the)i(follo)o(wing)d(comp)q(onen)o(ts:)21
b(visas,)14 b(access)i(con)o(trol)e(serv)o(ers,)h(gatew)o(a)o(ys,)f(and)0
1961 y(hosts.)19 b(These)d(comp)q(onen)o(ts)f(and)h(their)e(resp)q
(onsibilities)g(are)h(describ)q(ed)h(in)f(this)g(section.)0
2120 y Fh(2.2.1)52 b(Visas)0 2245 y Fo(A)12 b(visa)e(is)h(an)h(unforgeable)f
(stamp,)g(created)h(b)o(y)f(cryptographic)g(means,)h(that)f(is)g(attac)o(hed)
g(to)g(a)g(datagram.)17 b(Its)0 2301 y(presence)e(in)f(a)f(datagram)g
(indicates)g(that)g(the)h(datagram)f(is)g(allo)o(w)o(ed)g(to)g(lea)o(v)o(e)g
(\(or)g(en)o(ter\))g(an)h(organization's)0 2358 y(net)o(w)o(ork.)19
b(A)14 b(visa)g(can)h(b)q(e)g(v)m(alidated)g(b)o(y)f(the)h(gatew)o(a)o(ys)e
(of)h(the)h(organization)d(that)i(issued)h(the)g(visa)f(\(or)g(that)0
2414 y(issued)h(the)h(means)f(for)f(its)h(generation\))711
2398 y Fp(3)729 2414 y Fo(.)20 b(W)l(e)15 b(describ)q(e)h(ho)o(w)f(visa)f(v)m
(alues)i(are)f(computed)g(in)g(section)g(2.4.)p 0 2456 780
2 v 52 2483 a Fk(3)69 2499 y Fj(Estrin)g(and)g(Tsudik[5)q(])f(originally)g
(used)i(the)f(term)f(\\visa")i(to)e(indicate)h(the)g(cryptographic)h(k)o(ey)f
(used)h(b)o(y)f(the)g(source)g(and)0 2545 y(gatew)o(a)o(y)i(to)f(compute)h
(the)g(unforgeable)g(stamp.)27 b(\\Visa")17 b(no)o(w)f(indicates)h(the)f
(stamp)h(itself,)f(a)g(usage)h(closer)g(to)f(the)h(English)0
2590 y(meaning)d(of)e(the)h(w)o(ord.)964 2828 y Fo(9)p eop
%%Page: 10 10
bop 71 45 a Fo(Eac)o(h)17 b(datagram)g(carries)g(at)g(most)g(t)o(w)o(o)g
(visas)g(-)h(one)g(\()p Fg(V)1079 52 y Fd(exit)1141 45 y Fo(\))g(for)f(en)o
(tering)g(and)h(exiting)f(the)h(source)g(or-)0 102 y(ganization)c(net)o(w)o
(ork,)f(and)i(one)h(\()p Fg(V)622 109 y Fd(entr)690 102 y Fo(\))f(for)f(en)o
(tering)h(and)g(exiting)f(the)h(destination)f(organization)f(net)o(w)o(ork.)0
158 y(This)h(is)g(necessary)h(b)q(ecause)g(the)g(agen)o(ts)e(of)h(one)h
(organization)d(ma)o(y)i(not)g(trust)g(the)g(agen)o(ts)g(of)g(another)g
(orga-)0 214 y(nization,)e(so)g(source)g(and)h(destination)e(visas)h(for)g(a)
g(datagram)f(m)o(ust)h(b)q(e)h(issued)f(separately)g(b)o(y)g(the)h(resp)q
(ectiv)o(e)0 271 y(organizations)265 254 y Fp(4)283 271 y Fo(.)71
367 y(F)l(or)h(our)g(exp)q(erimen)o(tal)g(mo)q(di\014cation)g(of)g(the)h(In)o
(ternet)f(Proto)q(col)g(\(IP\)[18)n(],)g(visa-related)g(information)e(is)0
423 y(carried)18 b(in)g(the)g(OPTIONS)i(\014eld)e(of)g(the)h(IP)f(header,)h
(and)g(so)f(do)q(es)g(not)g(a\013ect)g(the)g(normal)f(pro)q(cessing)h(of)0
479 y(datagrams)11 b(\(see)i(2\).)18 b(Datagrams)11 b(tra)o(v)o(eling)f(b)q
(et)o(w)o(een)j(visa-hosts)f(that)g(do)h(not)f(require)h(visas)e(\(as)h
(decided)i(b)o(y)0 536 y(the)f(A)o(CSs)f(of)h(eac)o(h)g(organization\))d(con)
o(tain)i(dumm)o(y)h(visa)f(v)m(alues)h(in)f(the)h(appropriate)f(header)h
(\014elds)g(to)f(a)o(v)o(oid)0 592 y(calling)17 b(undue)i(atten)o(tion)e(to)h
(those)g(datagrams)e(that)i(w)o(arran)o(t)e(visa)i(protection;)g(only)g(the)g
(visa-gatew)o(a)o(ys)0 649 y(kno)o(w)g(whic)o(h)g(datagrams)f(need)i(to)f
(con)o(tain)f(v)o(eri\014ed)i(visas.)28 b(Other)19 b(IP)g(gatew)o(a)o(ys)d
(need)j(not)f(recognize)h(IP)0 705 y(options;)14 b(therefore,)h(visas)f(are)h
(transparen)o(t)f(to)g(non-visa)h(gatew)o(a)o(ys.)71 801 y(A)h(visa)f(k)o(ey)
h(is)f(allo)q(cated)g(to)g(an)h(iden)o(ti\014able)f(source-destination)g
(pair.)22 b(In)16 b(this)g(discussion)f(w)o(e)h(assume)0 857
y(that)i(the)h(uniformly-a)o(v)m(ailable)e(gran)o(ularit)o(y)g(of)h(con)o
(trol)g(and)h(iden)o(ti\014cation)f(is)g(a)h(host;)h(that)e(is,)h(visas)f
(are)0 914 y(allo)q(cated)c(for)h(\()p Fg(H)319 921 y Fd(sr)q(c)369
914 y Fo(,)p Fg(H)420 921 y Fd(dst)468 914 y Fo(\))g(pairs.)0
1073 y Fh(2.2.2)52 b(A)o(CSs)0 1198 y Fo(An)21 b(A)o(CS)g(is)f(a)g(host,)i
(usually)e(dedicated)h(for)f(securit)o(y)g(reasons,)i(that)e(is)g(primarily)f
(concerned)j(with)e(ac-)0 1254 y(cess)e(con)o(trol.)27 b(Eac)o(h)17
b(visa-con)o(trolled)g(organization)f(has)h(at)h(least)f(one)h(A)o(CS,)f
(resp)q(onsible)h(for)f(authorizing)0 1311 y(hosts)g(within)g(its)g
(organization)f(to)h(comm)o(unicate)h(with)f(hosts)g(in)h(other)f
(organizations)1597 1294 y Fp(5)1615 1311 y Fo(.)27 b(Multiple)17
b(A)o(CSs)0 1367 y(ma)o(y)h(b)q(e)i(necessary)f(for)f(a)o(v)m(ailabilit)o(y)e
(and)k(p)q(erformance)f(reasons.)30 b(Sp)q(eci\014c)21 b(p)q(olicies)d
(regarding)g(who)h(ma)o(y)0 1424 y(comm)o(unicate)14 b(with)g(whom)h(are)f
(em)o(b)q(o)q(died)h(within)f(A)o(CSs)h(and)g(are)f(not)h(addressed)g
(directly)f(in)g(this)h(rep)q(ort.)71 1519 y(Eac)o(h)d(A)o(CS)g(kno)o(ws)f
(of)h(a)g(n)o(um)o(b)q(er)g(of)g(lo)q(cal)g(visa-gatew)o(a)o(ys)d(that)j
(enforce)g(its)g(decisions.)18 b(A)o(CSs)12 b(are)g(trusted)0
1576 y(and)i(assumed)h(to)e(defend)j(against)c(attempted)i(abuse.)20
b(The)14 b(securit)o(y)g(of)g(the)g(o)o(v)o(erall)f(proto)q(col)g(requires)h
(that)0 1632 y(A)o(CSs)f(b)q(e)g(secure)g(and)g(that)g(they)f(emplo)o(y)h(an)
f(authen)o(ticated)h(and)g(secure)g(c)o(hannel)g(for)f(comm)o(unication)g
(with)0 1689 y(lo)q(cal)i(hosts)h(and)g(gatew)o(a)o(ys.)0 1848
y Fh(2.2.3)52 b(Gatew)o(a)o(ys)0 1973 y Fo(A)21 b(gatew)o(a)o(y)e(is)i(a)f
(host)h(dedicated)g(\(for)f(reasons)h(of)f(p)q(erformance)h(and)g(securit)o
(y\))f(to)h(pac)o(k)o(et)f(forw)o(arding.)0 2029 y(Gatew)o(a)o(ys)d(that)i
(use)g(the)g(visa)g(mec)o(hanism)f(to)h(enforce)g(access)g(con)o(trols)f(are)
h(called)g(visa-gatew)o(a)o(ys)1829 2013 y Fp(6)1846 2029 y
Fo(.)32 b(All)0 2086 y(in)o(ter-organization)11 b(connections)i(m)o(ust)g(b)q
(e)h(implemen)o(ted)f(with)f(visa-gatew)o(a)o(ys.)17 b(Eac)o(h)c(visa-gatew)o
(a)o(y)f(kno)o(ws)0 2142 y(the)g(A)o(CSs)g(in)g(its)g(organization,)e(is)i
(willing)e(to)i(accept)g(visa)g(assignmen)o(ts)f(from)g(these)h(A)o(CSs,)h
(and)f(trusts)f(their)0 2199 y(decisions)j(ab)q(out)h(authorizing)e(and)i
(terminating)e(sessions.)19 b(A)c(visa-gatew)o(a)o(y)d(allo)o(ws)h(an)o(y)h
(external)g(part)o(y)g(to)p 0 2238 780 2 v 52 2265 a Fk(4)69
2281 y Fj(In)d(this)f(rep)q(ort)h(w)o(e)g(assume)g(the)g(use)g(of)f
Fc(two-way)h(visas)p Fj(;)e(that)i(is,)g(a)f(single)h(visa)g(k)o(ey)g(is)f
(used)h(to)g(generate)g(visas)g(for)g(datagrams)0 2327 y(tra)o(v)o(eling)17
b(in)o(to)g(and)h(out)g(of)f(an)g(organization's)h(net)o(w)o(ork)f(b)q(et)o
(w)o(een)h(a)f(particular)g(source-destination)i(pair.)29 b(Ho)o(w)o(ev)o
(er,)18 b(if)e(an)0 2372 y(organization)g(w)o(an)o(ts)f(to)g(carry)g(out)g
(separate)h(authorization/authen)o(tication)h(dialogs)e(for)g(incoming)g(and)
h(outgoing)f(tra\016c,)g(it)0 2418 y(ma)o(y)e(do)h(so)f({)g(at)g(the)g(cost)g
(of)g(double)g(the)g(connection)h(setup)g(o)o(v)o(erhead.)52
2448 y Fk(5)69 2464 y Fj(If)e(a)h(participan)o(t)h(organization)g(do)q(es)f
(not)h(ha)o(v)o(e)f(an)g(A)o(CS,)g(its)f(hosts)i(will)d(still)h(b)q(e)h(able)
g(to)g(comm)o(unicate)h(with)e(the)i(hosts)f(of)0 2509 y(other)i
(organizations,)g(although)h(the)e(organization)h(in)g(question)g(will)e(b)q
(e)h(sub)r(ject)h(to)g(risks)f(asso)q(ciated)h(with)f(the)h(uncon)o(trolled)0
2555 y(access.)52 2585 y Fk(6)69 2601 y Fj(Some)d(gatew)o(a)o(ys)g(ma)o(y)g
(not)f(b)q(e)h(in)o(v)o(olv)o(ed)g(in)g(visa-enforcemen)o(t)g(\(for)f
(example,)h(gatew)o(a)o(ys)g(in)o(ternal)f(to)h(an)f(organization\).)18
b(W)m(e)0 2646 y(therefore)13 b(distinguish)h(b)q(et)o(w)o(een)f
Fc(visa-gateways)c Fj(and)14 b Fc(non-visa)d(gateways)p Fj(.)952
2828 y Fo(10)p eop
%%Page: 11 11
bop 0 45 a Fo(comm)o(unicate)17 b(with)f(an)o(y)h(registered,)g(in)o(ternal)f
(A)o(CS;)h(similarly)e(the)j(gatew)o(a)o(y)d(allo)o(ws)h(all)g(registered,)h
(lo)q(cal)0 102 y(A)o(CSs)e(to)g(comm)o(unicate)f(with)h(an)o(y)f(external)h
(part)o(y)928 85 y Fp(7)947 102 y Fo(.)71 197 y(Assuming)21
b(that)g(eac)o(h)h(organization)e(emplo)o(ys)h(a)g(visa-gatew)o(a)o(y)l(,)g
(eac)o(h)h(in)o(ter-organization)d(datagram)0 254 y(tra)o(v)o(els)e(through)i
(at)f(least)g(t)o(w)o(o)f(suc)o(h)i(gatew)o(a)o(ys.)29 b(Eac)o(h)18
b(visa-gatew)o(a)o(y)f(is)h(equipp)q(ed)i(with)e(some)h(means)f(of)0
310 y(v)o(erifying)d(a)i(visa.)23 b(Visa)16 b(proto)q(cols)g(describ)q(ed)h
(in)g(subsequen)o(t)g(sections)f(v)m(ary)h(in)f(the)h(particular)e(v)m
(alidation)0 367 y(tec)o(hniques)g(used.)71 462 y(A)20 b(visa-gatew)o(a)o(y)d
(m)o(ust)j(scrutinize)f(ev)o(ery)h(pac)o(k)o(et)f(it)h(receiv)o(es;)h
(datagrams)e(without)g(visas)g(cannot)g(b)q(e)0 519 y(forw)o(arded)h
(\(except)h(for)f(those)g(to)g(or)g(from)g(trusted)g(en)o(tities)g(of)g(the)h
(gatew)o(a)o(y's)d(o)o(wn)i(organization\).)34 b(In)0 575 y(sections)21
b(2.3)f(and)i(7.2.2)e(w)o(e)h(describ)q(e)h(a)f(mec)o(hanism)g(for)g(a)g
(gatew)o(a)o(y)f(to)g(inform)h(a)g(host)g(that)g(visas)f(are)0
631 y(required)12 b(for)f(an)h(in)o(ter-organizational)d(connection.)19
b(Datagrams)10 b(m)o(ust)h(b)q(e)i(dropp)q(ed)f(if)g(they)g(con)o(tain)f
(neither)0 688 y(a)k(v)m(alid)g(visa)g(nor)g(a)g(\\dumm)o(y")g(placeholder)g
(visa)g(indicating)f(that)h(a)g(host)g(wishes)g(to)g(b)q(e)h(informed)f(via)g
(this)0 744 y(mec)o(hanism.)71 840 y(If)20 b(the)f(t)o(w)o(o)g
(organizations')e(net)o(w)o(orks)i(are)g(not)h(directly)f(connected,)i(pac)o
(k)o(ets)e(will)g(pass)g(through)h(the)0 896 y(gatew)o(a)o(ys)d(of)h(transit)
g(net)o(w)o(orks.)30 b(Visa-gatew)o(a)o(ys)16 b(in)j(a)f(transit)g(net)o(w)o
(ork)g(trust)g(eac)o(h)h(other,)g(and)g(transfer)0 953 y(transit)e(pac)o(k)o
(ets)g(via)g(secure)i(c)o(hannels)f(to)f(prev)o(en)o(t)h(unauthorized)g(en)o
(trance)g(or)f(exit;)h(this)g(is)f(describ)q(ed)i(in)0 1009
y(more)14 b(detail)f(in)g(section)h(7.1.3.)k(Non-visa)13 b(gatew)o(a)o(ys)f
(in)i(transit)f(net)o(w)o(orks)g(treat)g(visa)g(datagrams)f(as)i(regular)0
1066 y(in)o(ternet)h(pac)o(k)o(ets.)0 1225 y Fh(2.2.4)52 b(Hosts)0
1350 y Fo(The)13 b(source)f(host)g(\()p Fg(H)379 1357 y Fd(sr)q(c)429
1350 y Fo(\))g(of)g(an)g(in)o(ter-organization)e(connection)j(m)o(ust)f
(obtain)f(a)h(pair)g(of)g(visas,)g(one)g(from)g(the)0 1406
y(A)o(CS)i(of)g(its)f(organization)f(\()p Fg(AC)s(S)592 1413
y Fd(sr)q(c)643 1406 y Fo(\))i(and)h(one)f(from)f(the)i(A)o(CS)f(of)f(the)i
(destination)e(organization)f(\()p Fg(AC)s(S)1870 1413 y Fd(dst)1920
1406 y Fo(\).)0 1463 y(These)18 b(visas)f(m)o(ust)g(b)q(e)h(included)g(in)f
(the)h(header)g(of)f(ev)o(ery)h(datagram)e(sen)o(t)h(from)g
Fg(H)1524 1470 y Fd(sr)q(c)1592 1463 y Fo(to)f(the)i(destination)0
1519 y(host,)c Fg(H)149 1526 y Fd(dst)198 1519 y Fo(.)71 1615
y(A)h(host,)f(unlik)o(e)h(a)g(gatew)o(a)o(y)l(,)f(do)q(es)h(not)g(ha)o(v)o(e)
g(to)g(ha)o(v)o(e)g(reliable)f(kno)o(wledge)h(of)g(the)g(lo)q(cal)g(A)o(CS's)
f(address;)0 1671 y(this)22 b(ma)o(y)g(instead)g(b)q(e)h(supplied)g(b)o(y)g
(a)f(gatew)o(a)o(y)f(when)i(a)f(host)h(attempts)e(to)h(comm)o(unicate)g
(across)g(the)0 1728 y(organizational)15 b(b)q(oundary)k(\(see)f(section)g
(2.3\).)27 b(The)18 b(host)g(m)o(ust)f(still)g(use)h(an)g(authen)o(tication)f
(proto)q(col)g(to)0 1784 y(mak)o(e)e(sure)g(it)f(is)h(really)f(talking)g(to)h
(the)g(A)o(CS.)71 1880 y(Since)h(datagram)e(reception)i(is)g(a)f(passiv)o(e)g
(op)q(eration,)g(the)h(destination)f(host)g(\()p Fg(H)1520
1887 y Fd(dst)1569 1880 y Fo(\))h(is)f(not)h(required)g(to)0
1936 y(initiate)e(an)o(y)h(actions.)k(Of)d(course,)f(in)g(almost)f(an)o(y)h
(proto)q(col,)f(datagrams)f(\015o)o(w)i(in)g(b)q(oth)h(directions,)e(so)h
(eac)o(h)0 1993 y(host)e(is)g(b)q(oth)g(a)g(source)h(and)f(a)g(destination.)
18 b(Therefore,)c(to)e(a)o(v)o(oid)g(additional)g(o)o(v)o(erhead)h(w)o(e)g
(assume)g(that)g(an)0 2049 y(organization)f(allo)o(ws)f(its)i(A)o(CS)g(to)g
(allo)q(cate)f Ff(two-way)j Fo(visas)e(automatically)e Ff(if)i
Fo(authen)o(tication)f(of)h(the)h(remote)0 2106 y(destination)g(is)h(not)g
(required.)71 2201 y(By)i(themselv)o(es,)h(visa)f(proto)q(cols)f(do)i(not)f
(pro)o(vide)h(for)f(m)o(ulti-lev)o(el)f(securit)o(y)l(,)h(nor)g(do)h(they)g
(eliminate)e(a)0 2258 y(v)m(ariet)o(y)h(of)g(co)o(v)o(ert)g(c)o(hannels.)27
b(In)19 b(the)f(absence)g(of)f(additional)f(host-lev)o(el,)i
(non-discretionary)e(con)o(trols,)h(an)0 2314 y(authorized)e(host)f(ma)o(y)g
(still)f(sub)o(v)o(ert)i(these)g(proto)q(cols)f(b)o(y)h(\\willingly")d
(serving)i(as)h(a)f(conduit)h(for)f(comm)o(uni-)0 2371 y(cations)g(b)q(et)o
(w)o(een)i(unauthorized)f(hosts.)p 0 2401 780 2 v 52 2428 a
Fk(7)69 2444 y Fj(Suc)o(h)j(trust)g(is)e(reasonable)j(b)q(ecause)f(A)o(CSs)f
(are)g(kno)o(wn)h(to)f(b)q(e)h(defensiv)o(e)g(and)f(to)h(enforce)f
(organization)h(p)q(olicy)m(.)30 b(Other)0 2490 y(sp)q(ecial)13
b(serv)o(ers)h(suc)o(h)f(as)g(a)g(name)h(serv)o(er)f(ma)o(y)g(b)q(e)g(giv)o
(en)h(a)f(similar)f(\\carte)h(blanc)o(he")h(for)f(external)g(comm)o
(unication)h(if)e(they)i(to)q(o)0 2535 y(are)f(kno)o(wn)h(to)f(b)q(e)g
(secure.)952 2828 y Fo(11)p eop
%%Page: 12 12
bop 0 45 a Fq(2.3)56 b(Establishing)17 b(Authorization)0 170
y Fo(In)e(the)f(sc)o(heme)g(originally)e(prop)q(osed)j(in)e([5],)g
Fg(H)844 177 y Fd(sr)q(c)895 170 y Fo(,)h(when)g(op)q(ening)h(a)e(connection)
h(to)g Fg(H)1564 177 y Fd(dst)1613 170 y Fo(,)g(initially)e(sends)i(a)0
227 y(datagram)g(with)h(an)h(\\empt)o(y")f(visa;)g(if)g(the)h(datagram)e
(reac)o(hes)i(a)f(visa-gatew)o(a)o(y)l(,)e(the)j(gatew)o(a)o(y)e(replies)i
(with)0 283 y(a)h(REJECT)h(message)f(directing)f Fg(H)648 290
y Fd(sr)q(c)716 283 y Fo(to)h(an)g(appropriate)f(A)o(CS.)h(The)h(source)f
(host)g(requests)g(a)g(visa)g(from)0 339 y(that)i(A)o(CS,)g(whic)o(h)g(\(if)g
(necessary\))h(obtains)e(visas)h(from)g(A)o(CSs)g(in)h(other)f
(organizations,)f(distributes)h(visa)0 396 y(information)13
b(to)h(the)h(appropriate)f(gatew)o(a)o(ys,)f(and)i(returns)g(the)g(v)m(alid)f
(visas)g(to)h Fg(H)1466 403 y Fd(sr)q(c)1531 396 y Fo(\(and,)f(p)q(ossibly)l
(,)h Fg(H)1871 403 y Fd(dst)1920 396 y Fo(\).)0 452 y(The)i(purp)q(ose)g(of)f
(the)h(REJECT)g(mec)o(hanism)f(is)g(to)g(accommo)q(date)g(hosts)g(that)g(do)h
(not)f(kno)o(w)g(when)h(a)g(visa)0 509 y(is)e(required.)71
604 y(Ho)o(w)o(ev)o(er,)g(a)g(host)h(ma)o(y)f(already)h(kno)o(w)f(that)h(its)
f(in)o(tended)i(destination)e(is)g(in)h(a)g(di\013eren)o(t)f(organization,)0
661 y(either)i(b)q(ecause)h(it)f(has)g(previously)g(comm)o(unicated)g(with)f
(that)h(host)g(\(and)g(cac)o(hed)h(the)f(fact)g(that)g(at)f(some)0
717 y(p)q(oin)o(t)c(it)g(had)h(receiv)o(ed)g(a)g(REJECT\),)f(or)g(it)g(ma)o
(y)g(ha)o(v)o(e)h(disco)o(v)o(ered)f(this)g(through)h(some)f(external)g(mec)o
(hanism)0 774 y(\(for)19 b(example,)h(a)g(name)g(serv)o(er\).)33
b(If)20 b(so,)g(it)f(ma)o(y)g(comm)o(unicate)g(immediately)g(with)g(an)g(A)o
(CS)h(of)f(its)g(o)o(wn)0 830 y(organization)d(to)i(obtain)g(visas,)g(rather)
f(than)i(going)e(through)h(the)h(extra)e(t)o(w)o(o-pac)o(k)o(et)g(step)h(of)g
(attempting)0 887 y(to)f(send)i(the)f(initial)e(datagram)g(and)j(receiving)e
(a)h(REJECT.)g(The)g(REJECT)g(mec)o(hanism)g(is)f(a)h(\\fallbac)o(k")0
943 y(mec)o(hanism)j(to)g(inform)g(hosts)h(that)f(they)g(are)h(crossing)f(an)
g(organizational)f(b)q(oundary)l(,)j(rather)e(than)h(an)0 1000
y(in)o(tegral)16 b(part)g(of)h(connection)g(setup.)27 b(Note)17
b(that)f(a)h(REJECT)h(ma)o(y)e(actually)g(b)q(e)i(sen)o(t)f(in)g(the)g
(middle)g(of)g(a)0 1056 y(connection,)c(if)g(a)g(visa)g(expires)g(or)g(if)g
(a)g(gatew)o(a)o(y)f(table)h(o)o(v)o(er\015o)o(ws)f(and)h(activ)o(e)g(visas)g
(are)g(purged.)19 b(F)l(or)13 b(further)0 1112 y(detail)h(on)h(the)h(REJECT)f
(mec)o(hanism)g(see)g(section)g(7.2.2.)71 1208 y(Man)o(y)c(in)o
(ter-organizational)e(connections)j(are)f(brief:)18 b(in)12
b(the)g(In)o(ternet,)g(for)g(example,)g(most)f(suc)o(h)h(connec-)0
1265 y(tions)k(are)g(either)h(electronic)f(mail)f(transfers,)h(whic)o(h)h
(usually)f(in)o(v)o(olv)o(e)f(no)i(more)f(than)g(a)h(dozen)g(datagrams,)0
1321 y(or)i(name)g(translations,)e(whic)o(h)i(are)g(ev)o(en)g(briefer.)31
b(A)19 b(visa)f(authorizes)h(datagram)e(transmission)h(b)q(et)o(w)o(een)0
1377 y(t)o(w)o(o)12 b(hosts,)i(not)f(a)h(sp)q(eci\014c)g(high-lev)o(el)f
(connection.)20 b(Therefore,)14 b(w)o(e)f(do)h(not)f(require)h(hosts)f(to)g
(obtain)g(a)h(fresh)0 1434 y(visa)j(for)g(ev)o(ery)h(connection,)g(nor)f(do)h
(w)o(e)g(exp)q(ect)g(hosts)f(to)g(inform)g(the)h(gatew)o(a)o(ys)e(when)i(a)g
(visa-con)o(trolled)0 1490 y(connection)h(terminates.)31 b(Least-recen)o
(tly-used)20 b(mec)o(hanisms)f(can)g(k)o(eep)h(gatew)o(a)o(y)d(cac)o(hes)i
(or)g(tables)g(from)0 1547 y(\014lling)d(with)h(stale)f(data.)26
b(W)l(e)17 b(rely)g(up)q(on)h(the)g(A)o(CSs)f(to)f(enforce)i(sp)q(eci\014c)g
(visa)e(expiration)h(and)g(rev)o(o)q(cation)0 1603 y(p)q(olicies.)0
1764 y Fq(2.4)56 b(Computing)18 b(visa)g(v)m(alues)0 1889 y
Fo(A)e(visa)g(v)m(alue)g(m)o(ust)g(protect)g(against)e(sub)o(v)o(ersion)i(in)
g(t)o(w)o(o)f(w)o(a)o(ys.)22 b(First,)15 b(it)g(m)o(ust)h(pro)o(v)o(e)f(that)
h(the)g(source)g(of)0 1946 y(a)g(datagram)f(is)h(authorized)g(to)g(send)h
(datagrams)e(to)g(the)i(destination)e(\(in)h(other)g(w)o(ords,)g(that)f(an)i
(imp)q(oster)0 2002 y(cannot)e(p)q(ose)h(as)f(an)g(authorized)h(source)f
(merely)g(b)o(y)h(faking)e(its)h(in)o(ternet)g(address\).)20
b(Second,)c(it)f(m)o(ust)g(pro)o(v)o(e)0 2058 y(that)h(the)h(particular)e
(data)h(carried)g(in)h(a)f(datagram)f(is)i(the)f(same)h(data)f(that)g(the)g
(source)h(in)o(tended)g(to)f(send)0 2115 y(to)e(the)h(destination.)k(W)l(e)c
(refer)g(to)f(this)g(second)i(pro)q(of)e(as)h(\\data)f(in)o(tegrit)o(y)l(.")j
(In)f(general,)e(transformation)e(of)0 2171 y(a)j(data)f(v)m(alue)i(to)e
(guaran)o(tee)h(its)f(pro)o(v)o(enance)h(is)g(kno)o(wn)g(as)g(a)g(\\digital)e
(signature"[4)n(,)i(15)o(,)g(20].)71 2267 y(The)e(in)o(tegrit)o(y)f(of)h(a)g
(visa)g(proto)q(col)f(dep)q(ends)j(on)f(the)f(metho)q(d)h(b)o(y)f(whic)o(h)h
(the)f(visa)g(v)m(alues)h(are)f(calculated.)0 2323 y(T)l(o)e(a)o(v)o(oid)f
(\\pla)o(ybac)o(k)h(attac)o(ks",)f(a)h(visa)g(v)m(alue)g(m)o(ust)g(b)q(e)h
(deriv)o(ed)g(from)e(a)i(visa)e(k)o(ey)i(and)f(some)g(unique)h(prop)q(ert)o
(y)0 2380 y(of)22 b(eac)o(h)g(individual)g(datagram.)39 b(In)23
b(other)f(w)o(ords,)h Fg(v)r(isa)h Fo(=)h Fg(F)6 b Fo(\()p
Fg(v)r(isak)q(ey)r(;)i(datag)r(r)q(am)p Fo(\))20 b(where)j(F)e(is)h(some)0
2436 y(cryptographically)e(strong)h(one-w)o(a)o(y)g(\(trap)q(do)q(or\))g
(function)h(that)f(computes)h(a)g(cryptographic)f(signature)0
2493 y(of)g(the)g(datagram.)37 b(The)22 b(function)f(c)o(hosen)g(for)g(F)g(m)
o(ust)g(ha)o(v)o(e)g(go)q(o)q(d)g(cryptographic)f(prop)q(erties,)i(y)o(et)f
(b)q(e)0 2549 y(inexp)q(ensiv)o(e)e(to)f(compute.)31 b(In)19
b(this)g(rep)q(ort,)g(w)o(e)f(assume)h(that)f Fg(F)25 b Fo(is)18
b(a)h(function)f(suc)o(h)h(as)g(the)g(DES-based)0 2606 y(Message)c(Authen)o
(tication)f(Co)q(de)h(\(MA)o(C\)[2)n(].)71 2701 y(Note)j(that)g(the)i(sizes)e
(of)h(b)q(oth)g(visas)f(and)h(visa)g(k)o(eys)f(a\013ect)h(the)g(cost)f(of)h
(computing)f(visas;)i(they)f(also)952 2828 y(12)p eop
%%Page: 13 13
bop 0 45 a Fo(a\013ect)17 b(the)g(lik)o(eliho)q(o)q(d)f(that)h(a)g(visa)g
(system)g(can)g(b)q(e)h(compromised.)26 b(Unfortunately)l(,)17
b(although)g(signatures)0 102 y(and)d(k)o(eys)g(with)g(larger)f(sizes)h(are)g
(more)f(resistan)o(t)g(to)g(attac)o(k,)g(they)h(also)f(increase)i(the)f(cost)
f(of)h(computing)g Fg(F)6 b Fo(.)0 284 y Fi(3)69 b(Single-k)n(ey)22
b(proto)r(col)g(with)g(state)g(information)g(in)h(gatew)n(a)n(ys)0
425 y Fo(This)f(section)g(describ)q(es)h(the)g(\014rst)f(single-k)o(ey)f(v)m
(ariation)g(of)h(the)h(visa)e(proto)q(col,)i(deriv)o(ed)g(from)e(the)i(one)0
481 y(prop)q(osed)11 b(in)f([5)o(].)18 b(In)11 b(this)f(proto)q(col,)g(all)f
(non-transit)g(visa-gatew)o(a)o(ys)f(along)h(all)h(p)q(ossible)g(routes)g(of)
f(a)h(datagram)0 537 y(m)o(ust)j(con)o(tain)f(an)h(appropriate)f(en)o(try)h
(in)f(their)h(tables.)19 b(Therefore,)13 b(in)g(order)f(to)h(set)g(up)g(a)g
(path)g(b)q(et)o(w)o(een)g(t)o(w)o(o)0 594 y(hosts,)g(eac)o(h)i(suc)o(h)f
(gatew)o(a)o(y)e(m)o(ust)i(comm)o(unicate)f(with)h(its)f(organization's)f(A)o
(CS)h(to)h(obtain)f(the)h(visa)g(k)o(ey)g(for)0 650 y(the)h
(source-destination)g(pair.)71 746 y(This)f(is)f(the)i(distinctiv)o(e)e
(feature)h(that)g(separates)g(this)f(proto)q(col)h(from)f(the)i(stateless)e
(proto)q(col)g(discussed)0 802 y(later)g(in)g(the)h(rep)q(ort.)19
b(Here,)14 b(eac)o(h)g(comp)q(onen)o(t)f(\(hosts,)g(A)o(CSs,)h(and)f(gatew)o
(a)o(ys\))f(m)o(ust)h(main)o(tain)f(a)i Ff(visa-table)p Fo(,)0
859 y(a)h(database)g(of)f(activ)o(e)h(visa)f(information.)k(An)e(en)o(try)e
(in)h(the)h(visa)e(table)h(p)q(ertains)g(to)f(the)h(state)g(information)0
915 y(of)h(a)h(sp)q(eci\014c)g(in)o(ter-organization)e(connection.)24
b(In)17 b(the)g(stateless)f(proto)q(col,)g(in)g(return)h(for)f(sligh)o(tly)f
(greater)0 972 y(p)q(er-pac)o(k)o(et)d(header)g(length)g(and)g(encryption)g
(o)o(v)o(erhead,)g(only)g(the)g(hosts)f(m)o(ust)h(main)o(tain)e(reliable)h
(databases.)0 1028 y(The)16 b(stateless-proto)q(col)f(gatew)o(a)o(ys)f(use)i
(cac)o(hes)h(to)e(impro)o(v)o(e)g(their)h(p)q(erformance,)g(without)f
(requiring)h(extra)0 1085 y(pac)o(k)o(et)f(exc)o(hanges)g(for)g(database)f
(main)o(tenance.)0 1246 y Fq(3.1)56 b(Creation)18 b(and)h(distribution)f(of)h
(visa)f(k)n(eys)0 1370 y Fo(In)e(this)e(v)m(arian)o(t,)f(a)i
Ff(visa)h(key)e Fo(is)h(a)f(unique)i(v)m(alue)f(\(a)f(cryptographic)g(k)o
(ey\))h(assigned)f(b)o(y)h(an)g(A)o(CS)g(to)f(a)g(session)0
1427 y(b)q(et)o(w)o(een)i(t)o(w)o(o)f(hosts)g(on)h(distinct)f(net)o(w)o
(orks.)20 b(The)c(visa)f(v)m(alue)h(carried)g(in)f(the)h(datagram)e(is)i
(computed)g(as)f(a)0 1483 y(cryptographic)f(signature)h(of)g(a)f(datagram.)71
1579 y(Whenev)o(er)j(an)g(A)o(CS)g(issues)g(a)g(visa)f(k)o(ey)h(to)g(a)g
(host)f(via)h(a)g(VISA)o(GRANT)g(message,)g(it)g(m)o(ust)f(also)g(send)0
1635 y(the)h(visa)g(k)o(ey)g(to)g(all)f(the)i(b)q(order)g(visa-gatew)o(a)o
(ys)d(for)h(the)i(organization.)24 b(If)18 b(there)f(is)g(more)g(than)h(one)f
(A)o(CS)0 1692 y(for)e(an)h(organization,)e(it)h(migh)o(t)f(also)h(b)q(e)i
(useful)f(to)f(distribute)g(the)h(visa)f(information)f(to)h(other)g(A)o(CSs)h
(so)f(as)0 1748 y(to)g(impro)o(v)o(e)f(the)h(a)o(v)m(ailabilit)o(y)d(of)j
(the)g(information)f(in)h(the)g(case)g(of)g(host)g(failures)1452
1732 y Fp(8)1472 1748 y Fo(.)0 1909 y Fq(3.2)56 b(V)-5 b(eri\014cation)18
b(of)h(visas)0 2034 y Fo(Once)d(the)f(visa)f(k)o(eys)h(are)f(in)h(place,)g
Fg(H)681 2041 y Fd(sr)q(c)746 2034 y Fo(is)f(able)h(to)f(send)i(datagrams)d
(to)i Fg(H)1362 2041 y Fd(dst)1411 2034 y Fo(.)k(Ev)o(ery)c(outgoing)e
(datagram)0 2091 y(addressed)k(to)f Fg(H)304 2098 y Fd(dst)370
2091 y Fo(is)h(stamp)q(ed)g(with)f(b)q(oth)h(exit)f(and)h(en)o(trance)g
(visas,)f Fg(V)1335 2098 y Fd(exit)1414 2091 y Fo(and)h Fg(V)1531
2098 y Fd(entr)1600 2091 y Fo(.)25 b(Both)16 b(v)m(alues)h(are)0
2147 y(calculated)11 b(as)h(describ)q(ed)g(ab)q(o)o(v)o(e.)19
b Fg(GW)686 2154 y Fd(exit)760 2147 y Fo(and)12 b Fg(GW)924
2154 y Fd(entr)1005 2147 y Fo(eac)o(h)g(calculate)f Fg(V)1317
2154 y Fd(exit)1391 2147 y Fo(and)h Fg(V)1503 2154 y Fd(entr)1584
2147 y Fo(resp)q(ectiv)o(ely)g(\(using)0 2204 y(the)k(v)m(alues)h
Fg(v)r(k)q(ey)308 2211 y Fd(exit)387 2204 y Fo(and)f Fg(v)r(k)q(ey)568
2211 y Fd(entr)654 2204 y Fo(from)g(their)f(visa-tables\),)g(and)h(compare)g
(them)g(with)g(the)g(v)m(alues)h(found)0 2260 y(in)c(the)h(datagram.)j(If)d
(the)g(t)o(w)o(o)e(v)m(alues)h(matc)o(h,)g(the)h(datagram)d(is)i(passed,)h
(otherwise)f(it)f(is)h(REJECT)l(ed.)20 b(This)0 2316 y(pro)q(cedure)c(sim)o
(ultaneously)d(v)o(eri\014es)h(that)g(a)h(visa)f(is)g(v)m(alid,)g(that)g(a)h
(visa)e(allo)o(ws)g Fg(H)1465 2323 y Fd(sr)q(c)1530 2316 y
Fo(to)i(comm)o(unicate)f(with)0 2373 y Fg(H)38 2380 y Fd(dst)87
2373 y Fo(,)h(and)g(that)g(the)g(con)o(ten)o(ts)g(of)f(a)h(datagram)f(are)h
(those)g(that)f(w)o(ere)h(sen)o(t)g(b)o(y)g Fg(H)1448 2380
y Fd(sr)q(c)1499 2373 y Fo(.)p 0 2412 780 2 v 52 2439 a Fk(8)69
2455 y Fj(If)f(one-w)o(a)o(y)h(visas)g(are)g(used,)g(this)g(same)g(pro)q
(cedure)h(will)d(b)q(e)i(carried)g(out)g(in)g(rev)o(erse)g(when)g(the)f
(\014rst)h(return)h(datagram)f(is)0 2501 y(generated.)952 2828
y Fo(13)p eop
%%Page: 14 14
bop 0 45 a Fq(3.3)56 b(Connection)18 b(rev)n(o)r(cation)0 170
y Fo(Because)13 b(man)o(y)f(proto)q(cols)f(do)h(not)g(ha)o(v)o(e)g(an)g
(explicit)f(ending)i(phase)g(\(for)e(example,)h(the)h(delta-T)e(proto)q
(col[10)n(,)0 227 y(23)o(]\))k(an)f(A)o(CS)h(imp)q(oses)g(time)f(limits)f(on)
i(visas)f(that)g(it)h(issues.)k(The)c(time-limits)e(are)i(passed)g(along)f
(with)g(the)0 283 y(visa)i(k)o(eys)g(to)g(the)h(lo)q(cal)e(visa-gatew)o(a)o
(ys,)g(whic)o(h)h(delete)h(the)f(connection's)h(en)o(try)f(from)g(their)g
(visa)f(tables)h(as)0 339 y(so)q(on)h(as)g(the)g(connection)g(times)f(out.)26
b(A)17 b(host)f(that)h(an)o(ticipates)e(exceeding)j(the)f(time)g(limit)e(of)i
(its)f(curren)o(t)0 396 y(visa)h(ma)o(y)g(request)h(a)g(visa)f(extension)h(b)
q(efore)g(the)g(visa)g(expires,)g(in)g(order)f(to)h(a)o(v)o(oid)e
(reapplication)h(dela)o(ys.)0 452 y(In)k(addition)e(to)h(exceeded)h(time)f
(or)g(resource)g(limits,)f(a)h(REV)o(OKE)h(message)f(ma)o(y)f(b)q(e)i(used)g
(to)f(rev)o(ok)o(e)f(a)0 509 y(visa.)g(A)c(REV)o(OKE)g(message,)f(triggered)g
(b)o(y)h(a)f(request)h(from)f Fg(H)1154 516 y Fd(sr)q(c)1204
509 y Fo(,)h Fg(H)1270 516 y Fd(dst)1319 509 y Fo(,)f(or)g(an)h(A)o(CS)g
(itself,)e(is)h(sen)o(t)h(to)f(the)0 565 y(appropriate)f(gatew)o(a)o(ys)e(b)o
(y)j(the)g(A)o(CS.)f(The)h(system)f(is)g(vulnerable)g(to)g(the)h(exten)o(t)f
(that)g(REV)o(OKE)h(messages)0 622 y(ma)o(y)g(b)q(e)i(dropp)q(ed)h(or)d(dela)
o(y)o(ed.)0 783 y Fq(3.4)56 b(Problems)0 908 y Fo(The)19 b(main)f(dra)o(wbac)
o(k)f(of)h(this)g(proto)q(col)g(is)g(that)g(eac)o(h)g(visa-gatew)o(a)o(y)e(b)
q(et)o(w)o(een)j(a)f(pair)g(of)g(comm)o(unicating)0 964 y(hosts)d(m)o(ust)f
(include)i(a)f(visa-table)f(en)o(try)h(for)f(that)h(host-pair.)k(This)14
b(is)h(undesirable)g(b)q(ecause:)68 1109 y Fe(\017)23 b Fo(The)f(setup)f(mec)
o(hanism)h(used)g(to)f(get)g(visas)g(in)o(to)g(the)g(visa-tables)g(generates)
g(a)g(n)o(um)o(b)q(er)h(of)g(extra)114 1166 y(datagrams.)h(A)o(t)16
b(least)g(t)o(w)o(o)f(visas)h(m)o(ust)g(b)q(e)i(sen)o(t)e(from)g(A)o(CSs)h
(to)f(gatew)o(a)o(ys,)f(requiring)h(at)g(least)g(that)114 1222
y(man)o(y)e(datagrams)446 1206 y Fp(9)465 1222 y Fo(.)68 1316
y Fe(\017)23 b Fo(One)14 b(of)g(the)g(commonly-held)g(adv)m(an)o(tages)f(of)h
(datagram)e(net)o(w)o(orks)h(is)g(their)h(abilit)o(y)e(to)h(e\016cien)o(tly)h
(and)114 1373 y(dynamically)k(switc)o(h)g(pac)o(k)o(ets)h(along)g(m)o
(ultiple)f(routes,)h(th)o(us)h(pro)o(viding)e(some)h(imm)o(unit)o(y)f(to)h
(failed)114 1429 y(gatew)o(a)o(ys)g(or)h(links,)h(and)g(spreading)g(load)f
(across)g(the)h(a)o(v)m(ailable)f(bandwidth)h(of)f(a)h(w)o(ell-connected)114
1485 y(net)o(w)o(ork.)32 b(In)21 b(order)e(to)h(tak)o(e)f(adv)m(an)o(tage)g
(of)h(routing)e(redundancy)j(when)g(using)e(visas,)h(ev)o(ery)g(lo)q(cal)114
1542 y(visa-gatew)o(a)o(y)d(along)i(an)o(y)g(p)q(oten)o(tial)g(route)g(is)h
(giv)o(en)f(the)h(visa)f(information)f(at)h(setup)h(time,)g(whic)o(h)114
1598 y(can)c(p)q(oten)o(tially)f(result)h(in)g(\()p Fg(M)g
Fo(+)11 b Fg(N)5 b Fo(\))15 b(datagrams)g(to)h(b)q(e)h(sen)o(t)f(b)o(y)h
(source's)f(and)g(destination's)f(A)o(CSs)114 1655 y(to)i(their)g(resp)q
(ectiv)o(e)g(visa-gatew)o(a)o(ys)e(\(M)i(and)h(N)g(are)f(the)g(n)o(um)o(b)q
(er)h(of)g(visa-gatew)o(a)o(ys)d(in)i(eac)o(h)h(of)f(the)114
1711 y(organizations')12 b(net)o(w)o(orks\).)68 1805 y Fe(\017)23
b Fo(A)18 b(gatew)o(a)o(y)f(m)o(ust)h(main)o(tain)f(its)h(visa-table,)g(whic)
o(h)h(can)f(p)q(oten)o(tially)f(b)q(e)j(quite)e(large)g(\()p
Fg(O)q Fo(\()p Fg(n)p Fo(\))f(in)i(the)114 1862 y(n)o(um)o(b)q(er)d(of)g
(comm)o(unicating)f(host)g(pairs\).)22 b(T)l(able)16 b(o)o(v)o(er\015o)o(w)f
(is)h(not)f(fatal,)g(but)h(when)h(a)f(purged)g(en)o(try)114
1918 y(turns)d(out)f(to)h(b)q(e)g(activ)o(e,)g(part)f(of)h(the)g(setup)g(mec)
o(hanism)g(m)o(ust)f(b)q(e)i(rein)o(v)o(ok)o(ed.)k(The)c(storage)d(o)o(v)o
(erhead)114 1974 y(of)h(visa-tables)g(is)g(p)q(er)i(visa-gatew)o(a)o(y)l(,)d
(not)h(simply)h(p)q(er)g(gatew)o(a)o(y-pair,)e(since)i(the)g(t)o(w)o(o)f
(gatew)o(a)o(ys)f(b)q(elong)114 2031 y(to)j(di\013eren)o(t)h(organizations)e
(and)i(cannot)g(trust)g(one)g(another.)68 2125 y Fe(\017)23
b Fo(When)12 b(a)g(visa-gatew)o(a)o(y)d(crashes,)j(unless)h(its)e(visa-table)
g(is)g(held)h(in)g(stable)f(storage)g(it)g(m)o(ust)h(b)q(e)g(reloaded)114
2181 y(from)21 b(the)h(organization's)e(A)o(CS.)i(If)h(the)f(A)o(CS)g
(crashes)g(as)g(w)o(ell,)h(the)f(setup)h(mec)o(hanism)f(m)o(ust)f(b)q(e)114
2238 y(rein)o(v)o(ok)o(ed)f(for)g(ev)o(ery)h(activ)o(e)f(connection.)37
b(The)21 b(resulting)f(burst)h(in)g(o)o(v)o(erhead)f(tra\016c)g(is)h(lik)o
(ely)f(to)114 2294 y(create)15 b(congestion.)p 0 2334 780 2
v 52 2361 a Fk(9)69 2376 y Fj(This)d(is)g(in)g(addition)h(to)f(whatev)o(er)h
(datagrams)g(need)g(b)q(e)g(exc)o(hanged)h(b)q(et)o(w)o(een)f(the)f(source)h
(host)g(and)g(the)f(A)o(CSs)g(in)o(v)o(olv)o(ed)h(in)0 2422
y(order)g(to)g(authorize)h(the)f(visas.)952 2828 y Fo(14)p
eop
%%Page: 15 15
bop 0 45 a Fi(4)69 b(Stateless)21 b(single-k)n(ey)h(proto)r(col)0
186 y Fo(In)d(order)f(to)f(a)o(v)o(oid)g(some)h(of)f(the)h(problems)g(listed)
g(in)g(section)f(3.4,)h(w)o(e)f(presen)o(t)i(a)e(di\013eren)o(t)h(visa)f
(proto)q(col)0 242 y(without)e(the)g(requiremen)o(t)h(that)f(the)g(gatew)o(a)
o(ys)f(kno)o(w)h(ab)q(out)h(ev)o(ery)f(visa.)21 b(This)15 b(means)h(that)f(w)
o(e)g(no)h(longer)0 299 y(ha)o(v)o(e)j(to)g(pa)o(y)g(the)g(costs)g(for)f
(setting)h(up)g(and)h(storing)e(visa-tables,)h(although)f(the)i(p)q(er-pac)o
(k)o(et)f(pro)q(cessing)0 355 y(costs)c(are)g(sligh)o(tly)e(higher,)h(and)i
(rev)o(o)q(cation)e(is)h(more)f(disruptiv)o(e.)71 451 y(The)g(primary)g
(di\013erence)g(b)q(et)o(w)o(een)h(the)g(t)o(w)o(o)e(proto)q(cols)g(is)h
(where)h(the)f(gatew)o(a)o(ys)f(\014nd)i(the)g(authorization)0
507 y(information.)j(In)e(the)f(\014rst,)g(or)f Ff(stateful)h
Fo(proto)q(col,)f(a)h(gatew)o(a)o(y)f(k)o(eeps)h(all)f(authorization)g
(information)f(ab)q(out)0 564 y(activ)o(e)i(connections)i(in)f(its)f
(visa-table,)g(whic)o(h)h(m)o(ust)g(b)q(e)h(loaded)f(b)o(y)g(the)g(A)o(CS.)g
(In)h(the)f(second,)h(or)e Ff(stateless)0 620 y Fo(proto)q(col,)22
b(the)f(authorization)f(information)g(is)h(attac)o(hed)g(b)o(y)g
(cryptographic)g(means)g(to)g(eac)o(h)h(datagram;)0 676 y(a)g(gatew)o(a)o(y)e
(needs)j(no)f(authorization)e(database.)40 b(In)22 b(e\013ect,)i(the)e(visa)f
(information)f(is)i(piggybac)o(k)o(ed)f(on)0 733 y(eac)o(h)d(datagram)e
(rather)h(than)h(b)q(eing)g(directly)f(comm)o(unicated)g(b)q(et)o(w)o(een)i
(A)o(CSs)e(and)h(gatew)o(a)o(ys.)26 b(A)18 b(digital)0 789
y(signature)d(system)g(is)g(used)h(to)f(main)o(tain)f(the)i(in)o(tegrit)o(y)e
(of)h(this)g(piggybac)o(k)o(ed)g(information,)e(and)j(cac)o(hing)f(is)0
846 y(used)h(to)e(reduce)i(the)g(amoun)o(t)e(of)h(encryption)g(o)o(v)o
(erhead.)71 941 y(The)21 b(particular)e(proto)q(col)h(describ)q(ed)i(here)g
(uses)f(a)f(single-k)o(ey)h(\(priv)m(ate-k)o(ey\))f(cryptosystem)g(suc)o(h)h
(as)0 998 y(DES[14)o(].)e(A)d(public-k)o(ey)f(v)o(ersion)g(is)f(quite)h
(similar;)e(see)j(App)q(endix)g(A.)0 1159 y Fq(4.1)56 b(Ov)n(erview)17
b(of)i(the)f(stateless)g(mec)n(hanism)0 1284 y Fo(Supp)q(ose)13
b(that)e Fg(H)308 1291 y Fd(sr)q(c)370 1284 y Fo(in)g Fg(O)454
1291 y Fd(sr)q(c)516 1284 y Fo(in)o(tends)g(to)g(send)i(a)e(datagram)f(to)h
Fg(H)1148 1291 y Fd(dst)1209 1284 y Fo(in)g Fg(O)1293 1291
y Fd(dst)1342 1284 y Fo(.)19 b(Before)11 b(sending)h(the)g(datagram,)0
1340 y Fg(H)38 1347 y Fd(sr)q(c)106 1340 y Fo(m)o(ust)17 b(obtain)g(a)g
(\\visa-pair",)f(consisting)g(of)h(an)h(exit)f(visa)f(for)h
Fg(O)1277 1347 y Fd(sr)q(c)1345 1340 y Fo(and)h(an)f(en)o(trance)h(visa)f
(for)f Fg(O)1888 1347 y Fd(dst)1937 1340 y Fo(.)0 1397 y(It)h(do)q(es)f(so)g
(b)o(y)h(con)o(tacting)e Fg(AC)s(S)595 1404 y Fd(sr)q(c)646
1397 y Fo(,)i(pro)o(ving)e(its)h(iden)o(tit)o(y)l(,)f(and)i(asking)e(for)h
(the)h(appropriate)e(visa-pair.)23 b(If)0 1453 y(comm)o(unication)12
b(is)h(in)g(fact)f(authorized,)h Fg(AC)s(S)830 1460 y Fd(sr)q(c)895
1453 y Fo(negotiates)f(with)g Fg(AC)s(S)1306 1460 y Fd(dst)1370
1453 y Fo(to)g(obtain)h(an)g(en)o(trance)g(visa)g(for)0 1510
y Fg(O)35 1517 y Fd(dst)84 1510 y Fo(,)i(issues)g(the)g(exit)g(visa)f(for)h
Fg(O)604 1517 y Fd(sr)q(c)654 1510 y Fo(,)g(and)g(returns)g(the)g(visa-pair)f
(to)h Fg(H)1285 1517 y Fd(sr)q(c)1335 1510 y Fo(.)71 1605 y(When)i
Fg(H)243 1612 y Fd(sr)q(c)309 1605 y Fo(sends)h(a)e(datagram)f(to)h
Fg(H)773 1612 y Fd(dst)822 1605 y Fo(,)h(it)e(\014rst)i(attac)o(hes)e(the)i
(visa)f(to)g(the)g(datagram)f(\(in)i(a)f(manner)0 1662 y(to)d(b)q(e)i
(describ)q(ed)g(shortly\))d(in)i(suc)o(h)g(a)f(w)o(a)o(y)g(that)g(the)h
(visa-gatew)o(a)o(ys)e(can)i(v)o(erify)f(that)g(the)h(comm)o(unication)e(is)0
1718 y(authorized.)19 b(This)11 b(v)o(eri\014cation)g(is)h(done)g
Ff(solely)f Fo(b)o(y)i(applying)e(cryptographic)g(mec)o(hanisms)h(to)g(the)g
(datagram;)0 1775 y(the)j(gatew)o(a)o(ys)f(need)i(not)f(main)o(tain)e(an)o(y)
i(databases.)71 1870 y(A)d(gatew)o(a)o(y)g(can)h(v)o(erify)f(that)g(a)g(visa)
h(attac)o(hed)f(to)g(a)h(datagram)e(is)h(v)m(alid)h(b)q(ecause)h(the)f(visa)f
(itself)g(is)g(signed)0 1927 y(b)o(y)h(the)g(issuing)g(A)o(CS.)g(Signature)f
(is)h(accomplished)g(b)o(y)g(encrypting)g(the)h(visa)e(with)h(a)g(k)o(ey)g
(kno)o(wn)g(only)f(to)h(the)0 1983 y(A)o(CSs)f(and)f(gatew)o(a)o(ys)f(of)i
(an)f(organization;)g(this)g(is)g(kno)o(wn)h(as)f(the)h(\\organization)e(k)o
(ey".)18 b(If)12 b(the)g(cryptosystem)0 2039 y(is)j(secure,)g(there)g(is)g
(no)g(c)o(hance)h(of)f(forgery)l(.)71 2135 y(It)c(is)g(harder)g(to)g(see)h
(ho)o(w)f(to)g(protect)g(against)f(a)h(malicious)f(host)h(that)g(obtains)f(a)
i(v)m(alid)f(visa)f(b)o(y)i(monitoring)0 2192 y(the)j(net)o(w)o(ork)f(and)h
(attac)o(hes)f(this)h(visa)f(to)g(its)g(o)o(wn)h(datagrams.)j(The)d(tric)o(k)
f(is)h(to)f(ha)o(v)o(e)h(the)g(source)g(host)f(sign)0 2248
y(ev)o(ery)19 b(datagram)e(using)i(a)f(secret)h(session)f(k)o(ey)h(kno)o(wn)g
(only)f(to)g(the)h(source)g(host)f(and)h(the)g(visa-gatew)o(a)o(ys)0
2304 y(\(and)j(to)f(the)h(A)o(CSs)g(trusted)g(b)o(y)g(those)f(gatew)o(a)o
(ys\).)39 b(This)21 b(k)o(ey)h(is)g(em)o(b)q(edded)h(in)f(the)g(visa)f(attac)
o(hed)h(to)0 2361 y(the)g(datagram,)f(but)h(b)q(ecause)h(the)f(visa)f(is)g
(encrypted)i(with)e(the)h(organization)d(k)o(ey)l(,)24 b(the)d(session)h(k)o
(ey)f(is)0 2417 y(not)f(a)o(v)m(ailable)g(to)g(in)o(terlop)q(ers.)35
b(It)21 b(is)f(a)o(v)m(ailable)g(to)g(the)g(visa-gatew)o(a)o(y)f(as)h(a)g
(side-e\013ect)h(of)f(v)o(erifying)g(the)0 2474 y(authen)o(ticit)o(y)f(of)i
(the)g(visa.)36 b(Because)21 b(this)f(k)o(ey)h(b)q(ecomes)h(kno)o(wn)e(to)g
Fg(AC)s(S)1383 2481 y Fd(dst)1454 2474 y Fo(and)h Fg(GW)1627
2481 y Fd(entr)1696 2474 y Fo(,)h(whic)o(h)f(ma)o(y)0 2530
y(not)c(b)q(e)h(en)o(tirely)e(trust)o(w)o(orth)o(y)g(to)g Fg(H)659
2537 y Fd(sr)q(c)710 2530 y Fo(,)h(a)g(new)h(signature)e(k)o(ey)h(should)h(b)
q(e)g(generated)f(for)g(eac)o(h)g(path,)h(and)0 2587 y(di\013eren)o(t)13
b(k)o(eys)h(should)g(b)q(e)g(used)h(for)e(exit)h(and)g(en)o(trance)g(visas.)k
(In)d(this)e(proto)q(col,)g(the)h(function)g(FSIG\()p Ff(data)p
Fo(\))0 2643 y(returns)k(a)h(signature)f(of)g(the)g(data)g(\(for)g(example,)h
(a)f(DES-based)h(Message)f(Authen)o(tication)g(Co)q(de\))g(using)0
2700 y(the)d(secret)g(session)g(k)o(ey)l(,)g(K.)952 2828 y(15)p
eop
%%Page: 16 16
bop 0 45 a Fq(4.2)56 b(Creation)18 b(of)h(visas)0 170 y Fg(H)38
177 y Fd(sr)q(c)98 170 y Fo(b)q(egins)11 b(the)f(pro)q(cess)g(of)g(visa)g
(creation)f(b)o(y)h(generating)f(t)o(w)o(o)g(signature)g(k)o(eys,)i
Fg(K)s(S)s(I)t(G)p Fo(1)1577 177 y Fd(H)1606 181 y Fb(sr)q(c)1662
170 y Fo(and)g Fg(K)s(S)s(I)t(G)p Fo(2)1902 177 y Fd(H)1931
181 y Fb(sr)q(c)1977 170 y Fo(.)0 227 y(It)17 b(then)g(con)o(tacts)g
Fg(AC)s(S)434 234 y Fd(sr)q(c)485 227 y Fo(,)g(pro)o(v)o(es)f(its)h(iden)o
(tit)o(y)877 210 y Fp(10)913 227 y Fo(,)g(passes)g(the)g(signature)f(k)o(eys)
h(to)f Fg(AC)s(S)1617 234 y Fd(sr)q(c)1669 227 y Fo(,)h(and)g(requests)0
283 y(a)j(visa-pair)f(for)h(use)h(with)f Fg(H)540 290 y Fd(dst)589
283 y Fo(.)35 b(If)21 b(comm)o(unication)e(is)h(authorized,)h
Fg(AC)s(S)1402 290 y Fd(sr)q(c)1474 283 y Fo(negotiates)e(with)h
Fg(AC)s(S)1900 290 y Fd(dst)0 339 y Fo(\(passing)15 b Fg(K)s(S)s(I)t(G)p
Fo(2)334 346 y Fd(H)363 350 y Fb(sr)q(c)409 339 y Fo(\))g(to)g(obtain)g(an)g
(en)o(trance)h(visa)f(for)g Fg(O)1085 346 y Fd(dst)1134 339
y Fo(,)g(issues)g(an)h(exit)f(visa)g(for)g Fg(O)1641 346 y
Fd(sr)q(c)1691 339 y Fo(,)g(and)h(returns)0 396 y(the)f(visa-pair)f(to)h
Fg(H)358 403 y Fd(sr)q(c)408 396 y Fo(.)71 491 y(The)g(exit)g(visa)f(issued)h
(b)o(y)h Fg(AC)s(S)641 498 y Fd(sr)q(c)707 491 y Fo(is)375
604 y Fg(V)402 611 y Fd(exit)477 604 y Fo(=)d Fe(f)p Fg(H)586
611 y Fd(sr)q(c)636 604 y Fg(;)8 b(H)695 611 y Fd(dst)744 604
y Fg(;)g(K)s(S)s(I)t(G)p Fo(1)921 611 y Fd(H)950 615 y Fb(sr)q(c)995
604 y Fg(;)g(E)s(X)t(P)e(I)t(RAT)g(I)t(O)q(N)t Fe(g)1380 586
y Fd(K)r(P)f(RI)s(V)1505 592 y Fb(O)1528 596 y(sr)q(c)0 679
y Fo(where)16 b Fg(K)s(P)6 b(RI)t(V)295 686 y Fd(O)322 690
y Fb(sr)q(c)386 679 y Fo(is)15 b(the)i(organization)d(k)o(ey)i(for)g
Fg(O)962 686 y Fd(sr)q(c)1012 679 y Fo(,)g(and)g(EXPIRA)l(TION)i(is)e(a)g
(timestamp)f(indicating)0 736 y(when)h(the)h(visa)e(expires;)h(this)f(allo)o
(ws)f(an)i(A)o(CS)g(to)f(limit)g(the)h(lifetime)e(of)i(the)g(visas)f(it)g
(issues,)h(since)g(\(in)g(this)0 792 y(proto)q(col\))f(explicit)h(visa)g(rev)
o(o)q(cation)f(is)i(exp)q(ensiv)o(e)g(\(see)f(section)h(4.5\))1252
776 y Fp(11)1288 792 y Fo(.)24 b(An)o(y)17 b(gatew)o(a)o(y)e(b)q(elonging)h
(to)g Fg(O)1900 799 y Fd(sr)q(c)0 849 y Fo(can)f(v)o(erify)e(that)h(the)h
(visa)f(w)o(as)f(actually)h(issued)g(b)o(y)h Fg(O)966 856 y
Fd(sr)q(c)1030 849 y Fo(b)o(y)g(computing)f Fe(f)p Fg(V)9 b(exit)p
Fe(g)1478 832 y Fd(K)r(P)c(RI)s(V)1603 838 y Fb(O)1626 842
y(sr)q(c)1690 849 y Fo(and)15 b(v)o(erifying)0 905 y(that)f
Fg(K)s(S)s(I)t(G)p Fo(1)254 912 y Fd(H)283 916 y Fb(sr)q(c)345
905 y Fo(pro)q(duces)i(the)f(data)g(signature)f(for)h(this)f(datagram.)71
1001 y(The)h(en)o(trance)g(visa)g(issued)g(b)o(y)g Fg(AC)s(S)734
1008 y Fd(dst)799 1001 y Fo(is)g(similar)372 1085 y Fg(V)399
1092 y Fd(entr)481 1085 y Fo(=)e Fe(f)p Fg(H)590 1092 y Fd(sr)q(c)640
1085 y Fg(;)8 b(H)699 1092 y Fd(dst)747 1085 y Fg(;)g(K)s(S)s(I)t(G)p
Fo(2)924 1092 y Fd(H)953 1096 y Fb(sr)q(c)999 1085 y Fg(;)g(E)s(X)t(P)e(I)t
(RAT)g(I)t(O)q(N)q Fe(g)1381 1066 y Fd(K)r(P)f(RI)s(V)1506
1072 y Fb(O)1529 1080 y(dst)0 1170 y Fo(and)15 b(lik)o(ewise)f(can)i(b)q(e)g
(v)o(eri\014ed)f(b)o(y)g(an)o(y)g(gatew)o(a)o(y)e(b)q(elonging)i(to)g
Fg(O)1181 1177 y Fd(dst)1230 1170 y Fo(.)71 1266 y(Note)g(that)g(b)q(ecause)h
(the)g(visas)e(are)i(signed)f(using)g(a)h(single-k)o(ey)f(system,)f
Fg(K)s(S)s(I)t(G)p Fo(1)1539 1273 y Fd(H)1568 1277 y Fb(sr)q(c)1630
1266 y Fo(and)i Fg(K)s(S)s(I)t(G)p Fo(2)1875 1273 y Fd(H)1904
1277 y Fb(sr)q(c)0 1322 y Fo(are)f(k)o(ept)g(secret.)71 1418
y(Once)g(it)f(has)h(a)f(visa-pair,)g Fg(H)586 1425 y Fd(sr)q(c)651
1418 y Fo(can)h(send)g(datagrams.)j(Assume)d(that)f(the)h(datagram)e(that)h
(it)g(wishes)h(to)0 1474 y(send)h(is)635 1531 y Fg(D)q(GRAM)h
Fo(=)c Fe(f)p Fg(H)t(E)s(AD)q(E)s(R;)8 b(DAT)e(A)p Fe(g)0 1605
y Fo(and)15 b(that)g(the)g(header)h(is)477 1690 y Fg(H)t(E)s(AD)q(E)s(R)10
b Fo(=)j Fe(f)p Fg(H)820 1697 y Fd(sr)q(c)871 1690 y Fg(;)8
b(H)930 1697 y Fd(dst)978 1690 y Fg(;)g(S)s(E)s(QN)d(U)g(M)r(;)j
Ff(other\014elds)p Fe(g)0 1775 y Fo(where)14 b(SEQNUM)g(is)g(an)f(ID)h(that)f
(is)h(unique)g(to)f(this)g(datagram)g(\(these)g(IDs)h(can)g(b)q(e)h(recycled)
f(after)f(a)h(p)q(erio)q(d)0 1831 y(at)h(least)f(as)h(long)f(as)h(the)g
(expiration)f(time)h(of)g(a)f(visa\).)71 1927 y Fg(H)109 1934
y Fd(sr)q(c)174 1927 y Fo(m)o(ust)h(create)g(a)g(\\safe")f(v)o(ersion)g(of)h
(the)g(datagram)f(as)h(follo)o(ws:)683 2012 y Fg(D)q(S)s(I)t(G)813
2019 y Fd(exit)887 2012 y Fo(=)e Fg(F)6 b(S)s(I)t(G)p Fo(\()p
Fe(f)p Fg(H)t(E)s(AD)q(E)s(R)o(;)i(DAT)e(A)p Fe(g)p Fg(;)h(K)s(S)s(I)s(G)p
Fo(1)1683 2019 y Fd(H)1712 2023 y Fb(s)o(r)q(c)1757 2012 y
Fo(\))676 2081 y Fg(D)q(S)s(I)t(G)806 2088 y Fd(entr)887 2081
y Fo(=)13 b Fg(F)6 b(S)s(I)t(G)p Fo(\()p Fe(f)p Fg(H)t(E)s(AD)q(E)s(R)o(;)i
(DAT)e(A)p Fe(g)p Fg(;)h(K)s(S)s(I)s(G)p Fo(2)1683 2088 y Fd(H)1712
2092 y Fb(s)o(r)q(c)1757 2081 y Fo(\))93 2149 y Fg(S)s(AF)f(E)s(H)t(D)q(R)11
b Fo(=)i Fe(f)p Fg(H)466 2156 y Fd(sr)q(c)516 2149 y Fg(;)8
b(H)575 2156 y Fd(dst)623 2149 y Fg(;)g(S)s(E)s(QN)d(U)g(M)r(;)j(V)920
2156 y Fd(exit)980 2149 y Fg(;)g(V)1028 2156 y Fd(entr)1096
2149 y Fg(;)g(D)q(S)s(I)t(G)1247 2156 y Fd(exit)1308 2149 y
Fg(;)g(D)q(S)s(I)t(G)1459 2156 y Fd(entr)1526 2149 y Fg(;)g
Ff(other\014elds)s Fe(g)928 2218 y Fg(S)s(AF)e(E)s(D)q(GRAM)16
b Fo(=)d Fe(f)p Fg(S)s(AF)6 b(E)s(H)t(D)q(R;)i(D)q(AT)e(A)p
Fe(g)71 2342 y Fg(D)q(S)s(I)t(G)201 2349 y Fd(exit)282 2342
y Fo(and)20 b Fg(D)q(S)s(I)t(G)505 2349 y Fd(entr)592 2342
y Fo(are)g(the)g(data)f(signatures.)32 b(They)20 b(are)f(constructed)h(so)f
(that)g(all)g(\014elds)g(of)0 2399 y(the)c(original)e(datagram)g(whose)i(v)m
(alues)g(m)o(ust)f(b)q(e)h(c)o(hec)o(k)o(ed)g(are)g(signed)g(b)o(y)f
Fg(H)1369 2406 y Fd(sr)q(c)1420 2382 y Fp(12)1457 2399 y Fo(.)20
b(The)15 b(safe)f(datagram)g(still)p 0 2433 780 2 v 37 2459
a Fk(10)69 2475 y Fj(Authen)o(tication)23 b(metho)q(ds)f(for)g(b)q(oth)h
(single-k)o(ey)f(and)h(public-k)o(ey)f(cryptosystems)h(are)f(describ)q(ed)h
(b)o(y)g(Needham)f(and)0 2521 y(Sc)o(hro)q(eder[15)r(,)12 b(16].)37
2551 y Fk(11)69 2567 y Fj(If)f(the)h(visa)g(is)f(encrypted)i(in)f(separate)g
(blo)q(c)o(ks,)h(the)f(EXPIRA)m(TION)e(\014eld)i(m)o(ust)g(not)g(b)q(e)g(in)g
(a)f(blo)q(c)o(k)h(b)o(y)h(itself,)d(as)i(this)g(w)o(ould)0
2612 y(allo)o(w)f(a)h(malicious)g(host)g(to)g(\\renew")g(an)g(expired)h(visa)
f(b)o(y)g(substituting)h(the)f(blo)q(c)o(k)g(from)g(an)g(unexpired)h(visa.)k
(The)12 b(\014elds)g(of)g(the)0 2658 y(visa)h(could)g(b)q(e)h(staggered)g
(across)f(blo)q(c)o(k)h(b)q(oundaries)g(to)f(prev)o(en)o(t)h(this)f(attac)o
(k.)37 2688 y Fk(12)69 2704 y Fj(It)g(ma)o(y)g(b)q(e)g(necessary)h(to)f
(include)h(copies)f(of)g(other)g(header)h(\014elds)f(in)g(the)g(data)g
(signatures;)h(see)f(section)g(7.1.4.)952 2828 y Fo(16)p eop
%%Page: 17 17
bop 0 45 a Fo(includes)13 b(the)f(con)o(ten)o(ts)g(of)g(the)h(original)d
(datagram)h(header)i(in)f(the)g(unencrypted)i(form,)e(so)g(it)g(can)g(b)q(e)h
(handled)0 102 y(b)o(y)k(non-visa)f(gatew)o(a)o(ys)f(without)h(additional)f
(mec)o(hanism.)24 b(The)18 b(new)f(\014elds)g(in)f(the)h(header)g(are)g
(purely)g(for)0 158 y(the)e(b)q(ene\014t)i(of)d(visa-gatew)o(a)o(ys.)0
319 y Fq(4.3)56 b(V)-5 b(eri\014cation)18 b(of)h(visas)0 444
y Fo(Once)e(the)f(safe)g(datagram)e(has)i(b)q(een)h(constructed,)f(it)f(is)g
(sen)o(t)h(along)f(whatev)o(er)g(route)h(has)g(b)q(een)h(c)o(hosen)f(b)o(y)0
500 y(the)j(usual)g(means,)g(and)g(ev)o(en)o(tually)f(reac)o(hes)h
Fg(GW)915 507 y Fd(exit)977 500 y Fo(.)31 b Fg(GW)1100 507
y Fd(exit)1182 500 y Fo(m)o(ust)18 b(v)o(erify)g(that)g(\(1\))g
Fg(V)1634 507 y Fd(exit)1715 500 y Fo(is)h(v)m(alid,)g(\(2\))0
557 y Fg(V)27 564 y Fd(exit)106 557 y Fo(allo)o(ws)c Fg(H)281
564 y Fd(sr)q(c)347 557 y Fo(to)h(send)h(datagrams)e(to)h Fg(H)828
564 y Fd(dst)877 557 y Fo(,)g(and)h(\(3\))e(the)i(con)o(ten)o(ts)f(of)g(the)g
(datagram)f(are)h(those)h(that)0 613 y(w)o(ere)e(sen)o(t)g(b)o(y)g
Fg(H)301 620 y Fd(sr)q(c)351 613 y Fo(.)20 b(The)c(\014rst)e(condition)h(is)g
(c)o(hec)o(k)o(ed)g(b)o(y)g(computing)339 715 y Fe(f)p Fg(H)400
722 y Fd(sr)q(c)450 715 y Fg(;)8 b(H)509 722 y Fd(dst)558 715
y Fg(;)g(K)s(S)s(I)t(G)p Fo(1)735 722 y Fd(H)764 726 y Fb(sr)q(c)809
715 y Fg(;)g(E)s(X)t(P)e(I)t(RAT)g(I)t(O)q(N)t Fe(g)k Fo(=)j
Fe(f)p Fg(V)c(exit)p Fe(g)1413 697 y Fd(K)r(P)c(RI)s(V)1538
703 y Fb(O)1561 707 y(sr)q(c)0 817 y Fo(and)19 b(v)o(erifying)f(that)g(the)h
(EXPIRA)l(TION)i(time)d(is)g(reasonable)h(and)g(has)f(not)h(passed;)i(also,)d
(if)g(the)h(visa)f(is)0 874 y(not)h(v)m(alid)f(then)i(the)f(extracted)g
Fg(K)s(S)s(I)t(G)p Fo(1)749 881 y Fd(H)778 885 y Fb(sr)q(c)843
874 y Fo(will)e(b)q(e)j(meaningless)e(and)i(consequen)o(tly)f(will)e(not)i
(pro)q(duce)0 930 y Fg(D)q(S)s(I)t(G)130 937 y Fd(exit)192
930 y Fo(.)g(The)14 b(second)h(condition)e(is)g(c)o(hec)o(k)o(ed)h(b)o(y)g(v)
o(erifying)f(that)g(the)h Fg(H)1329 937 y Fd(sr)q(c)1393 930
y Fo(and)g Fg(H)1518 937 y Fd(dst)1581 930 y Fo(extracted)g(from)f(the)0
987 y(visa)h(are)g(those)g(found)h(in)g(the)f(datagram)f(header.)21
b(The)14 b(third)g(condition)g(is)g(c)o(hec)o(k)o(ed)h(b)o(y)g
(reconstructing)f(the)0 1043 y(original)f(HEADER)j(and)f(using)g(the)g
Fg(K)s(S)s(I)t(G)p Fo(1)819 1050 y Fd(H)848 1054 y Fb(sr)q(c)910
1043 y Fo(extracted)g(from)f(the)h(visa)g(to)f(c)o(hec)o(k)i(that)429
1145 y Fg(F)6 b(S)s(I)t(G)p Fo(\()p Fe(f)p Fg(H)t(E)s(AD)q(E)s(R)o(;)i(DAT)e
(A)p Fe(g)p Fg(;)i(K)r(S)s(I)t(G)o Fo(1)1177 1152 y Fd(H)1206
1156 y Fb(sr)q(c)1251 1145 y Fo(\))k(=)h Fg(D)q(S)s(I)t(G)1459
1152 y Fd(exit)0 1247 y Fo(If)k(all)g(three)g(conditions)f(are)h(met,)g(then)
h(the)f(datagram)f(is)g(what)h(it)f(purp)q(orts)i(to)e(b)q(e,)i(and)f
(SAFEDGRAM)0 1304 y(ma)o(y)d(b)q(e)i(forw)o(arded)f(out)g(of)f(the)i
(organization.)71 1400 y(Ev)o(en)o(tually)i(the)h(datagram)f(reac)o(hes)h
Fg(GW)835 1407 y Fd(entr)904 1400 y Fo(,)h(whic)o(h)g(m)o(ust)e(v)o(erify)h
(that)g Fg(V)1449 1407 y Fd(entr)1537 1400 y Fo(is)g(v)m(alid,)g
Fg(V)1741 1407 y Fd(entr)1830 1400 y Fo(allo)o(ws)0 1456 y
Fg(H)38 1463 y Fd(sr)q(c)101 1456 y Fo(to)12 b(send)h(datagrams)f(to)g
Fg(H)567 1463 y Fd(dst)616 1456 y Fo(,)g(and)h(the)g(con)o(ten)o(ts)f(of)h
(the)f(datagram)g(are)g(those)g(that)g(w)o(ere)h(sen)o(t)f(b)o(y)h
Fg(H)1887 1463 y Fd(sr)q(c)1937 1456 y Fo(.)0 1512 y(These)i(conditions)g
(are)f(c)o(hec)o(k)o(ed)i(in)f(the)g(same)g(w)o(a)o(y)f(as)g(they)i(w)o(ere)e
(c)o(hec)o(k)o(ed)i(for)e(the)i(exit)e(visa.)19 b(If)c(they)h(hold,)0
1569 y(the)f(datagram)f(can)h(b)q(e)h(deliv)o(ered)f(to)g Fg(H)714
1576 y Fd(dst)763 1569 y Fo(.)0 1730 y Fq(4.4)56 b(Av)n(oiding)18
b(the)g(cost)h(of)g(visa)f(decryption)0 1855 y Fo(Because)f
Fg(V)202 1862 y Fd(entr)288 1855 y Fo(and)g Fg(V)405 1862 y
Fd(exit)484 1855 y Fo(are)g(constan)o(t)e(for)h(as)h(long)f(as)g(they)h(do)g
(not)f(expire,)h(a)f(gatew)o(a)o(y)f(can)i(cac)o(he)g(b)q(oth)0
1911 y(encrypted)f(and)f(decrypted)h(v)m(alues)f(of)f(the)h(visas)g(it)f
(uses.)20 b(When)15 b(a)g(datagram)e(arriv)o(es,)h(a)g(gatew)o(a)o(y)g(uses)h
(the)0 1968 y(encrypted)f(visa)e(found)i(in)f(the)g(datagram)f(as)h(a)g(k)o
(ey)g(to)f(\014nd)i(a)f(cac)o(he)g(en)o(try)l(.)19 b(If)14
b(an)f(en)o(try)g(exists,)f(the)i(gatew)o(a)o(y)0 2024 y(can)h(use)h(the)g
(con)o(ten)o(ts)e(of)h(the)h(decrypted)g(visa,)e(instead)h(of)g(pa)o(ying)f
(the)i(cost)f(of)g(visa)f(decryption)i(\(the)f(data)0 2081
y(signature)f(m)o(ust)h(still)f(b)q(e)h(c)o(hec)o(k)o(ed\).)71
2176 y(The)e(size)g(of)f(the)i(cac)o(he,)f(unlik)o(e)g(the)g(size)g(of)f(the)
i(visa-tables)d(used)j(in)f(the)g(stateful)f(proto)q(col,)g(is)h(relativ)o
(ely)0 2233 y(unimp)q(ortan)o(t.)31 b(In)20 b(the)f(ev)o(en)o(t)g(of)f(cac)o
(he)i(misses)e(only)h(one)g(additional)f(encryption)h(step)g(p)q(er)h
(datagram)d(is)0 2289 y(required,)d(instead)f(of)g(a)h(\015urry)g(of)f
(message)g(exc)o(hanges)976 2273 y Fp(13)1014 2289 y Fo(.)19
b(If)14 b(a)g(gatew)o(a)o(y)e(crashes)h(and)h(reb)q(o)q(ots,)g(it)f(need)h
(only)0 2345 y(retriev)o(e)h(its)h(organization's)e(k)o(ey)i(b)q(efore)g(con)
o(tin)o(uing)g(to)f(pro)q(cess)i(datagrams;)d(no)j(other)e(messages)h(need)h
(b)q(e)0 2402 y(exc)o(hanged.)p 0 2442 780 2 v 37 2468 a Fk(13)69
2484 y Fj(The)11 b(size)h(of)f(a)g(cac)o(he)h(en)o(try)g(is)f(t)o(wice)f(the)
i(size)f(as)g(in)g(the)h(stateful)f(proto)q(col;)h(this)f(is)g(b)q(ecause)i
(b)q(oth)f(cleartext)f(and)h(ciphertext)0 2530 y(v)o(ersions)i(of)e(visas)i
(are)f(cac)o(hed.)952 2828 y Fo(17)p eop
%%Page: 18 18
bop 0 45 a Fq(4.5)56 b(Rev)n(o)r(cation)0 170 y Fo(In)15 b(some)e(cases)h(it)
g(migh)o(t)f(b)q(e)h(necessary)h(to)e(rev)o(ok)o(e)g(a)h(visa.)19
b(The)14 b(primary)f(mec)o(hanism)h(for)f(rev)o(o)q(cation)g(is)h(the)0
227 y(expiration)h(time)g(con)o(tained)h(in)g(the)g(visa's)f(cleartext.)22
b(If)16 b(visas)f(are)h(issued)g(with)g(relativ)o(ely)e(short)h(lifetimes)0
283 y(\(on)h(the)g(order)g(of)f(min)o(utes)h(or)f(hours\))h(then)g(it)g(is)f
(unlik)o(ely)h(that)f(they)h(will)f(need)i(to)e(b)q(e)i(explicitly)e(rev)o
(ok)o(ed.)0 339 y(In)h(the)f(stateful)f(proto)q(col,)g(visas)g(ma)o(y)g(b)q
(e)i(rev)o(ok)o(ed)f(explicitly)l(.)j(In)e(the)f(stateless)f(proto)q(col,)g
(if)h(an)g(A)o(CS)g(m)o(ust)0 396 y(rev)o(ok)o(e)g(an)g(unexpired)i(visa,)d
(it)h(needs)i(to)d(c)o(ho)q(ose)i(a)f(new)h(organization)e(k)o(ey)h(and)h
(distribute)f(that)g(k)o(ey)g(to)g(all)0 452 y(b)q(oundary)f(gatew)o(a)o(ys)d
(and)i(A)o(CSs)g(of)f(its)h(organization.)k(Unfortunately)l(,)12
b(this)h(in)o(v)m(alidates)f(all)g(visas)g(issued)h(b)o(y)0
509 y(that)h(organization;)f(b)q(ecause)i(of)g(this,)f(and)h(b)q(ecause)g(a)g
(visa)f(migh)o(t)f(expire)i(b)q(efore)g(a)g(connection)f(is)h(\014nished,)0
565 y(all)f(visa)h(users)g(m)o(ust)f(b)q(e)i(prepared)g(to)f(reapply)g(for)f
(new)i(visas)e(at)g(an)o(y)h(p)q(oin)o(t)g(in)g(a)g(connection.)0
726 y Fq(4.6)56 b(V)-5 b(ariations)19 b(on)f(the)h(theme)0
851 y Fo(Visas)g(in)h(the)f(stateless)g(proto)q(col)g(ha)o(v)o(e)g(more)g(in)
o(ternal)g(structure)g(than)h(those)f(in)h(the)g(stateful)e(proto)q(col.)0
908 y(Because)e(that)e(structure)h(is)g(visible)g(only)g(to)f(the)h(A)o(CSs)h
(and)f(gatew)o(a)o(ys)e(of)i(their)g(issuing)g(organization,)e(this)0
964 y(allo)o(ws)g(some)i(\015exibilit)o(y)f(in)h(their)g(use.)71
1060 y(One)i(p)q(ossibilit)o(y)f(is)g(to)g(use)i(di\013eren)o(t)e
(cryptosystems)g(for)g(visa)h(generation)f(and)h(signature)f(generation.)0
1116 y(Since)g(signatures)e(co)o(v)o(er)g(en)o(tire)g(datagrams,)g(they)h
(are)f(b)q(est)i(done)f(with)g(an)f(inexp)q(ensiv)o(e)i(single-k)o(ey)e
(system)0 1172 y(suc)o(h)e(as)f(DES.)g(On)h(the)f(other)g(hand,)i(visas)d
(themselv)o(es)h(are)g(relativ)o(ely)f(small,)g(and)i(giv)o(en)f(the)g(cac)o
(hing)h(sc)o(heme)0 1229 y(describ)q(ed)18 b(in)f(section)g(4.4,)g(visa)f
(decryption)i(is)e(done)i(infrequen)o(tly)l(.)26 b(Visas)17
b(could)g(therefore)g(b)q(e)h(generated)0 1285 y(using)d(a)g(public-k)o(ey)g
(system)g(suc)o(h)g(as)g(RSA.)g(Use)h(of)e(a)h(public-k)o(ey)h
(organizational)c(k)o(ey)j(instead)g(of)g(a)f(single-)0 1342
y(k)o(ey)20 b(one)g(w)o(ould)g(reduce)h(the)f(danger)g(of)g(compromising)e
(the)i(secret)g(organizational)e(k)o(ey)l(,)j(since)f(it)g(w)o(ould)0
1398 y(nev)o(er)15 b(lea)o(v)o(e)g(the)g(A)o(CS.)71 1494 y(It)c(is)h(also)f
(p)q(ossible)g(to)h(include)g(additional)e(datagram-header)h(\014elds)h(in)g
(the)g(visa,)f(thereb)o(y)h(allo)o(wing)e(visas)0 1550 y(to)i(b)q(e)h(issued)
g(on,)g(for)f(example,)g(a)h(pro)q(cess-to-pro)q(cess)f(basis)g(rather)h
(than)f(a)g(host-to-host)g(basis.)18 b(Additional)0 1607 y(informational)12
b(\014elds)k(for)e(use)h(b)o(y)g(gatew)o(a)o(ys,)e(suc)o(h)i(as)g(a)g(limit)e
(on)i(the)g(pac)o(k)o(et)f(rate)h(or)f(pac)o(k)o(et)h(coun)o(t)g(for)f(the)0
1663 y(connection,)19 b(could)g(also)e(b)q(e)j(included)f(in)f(the)h(visa.)29
b(An)o(y)19 b(additional)e(visa)h(\014elds,)h(ho)o(w)o(ev)o(er,)f(increase)h
(the)0 1720 y(pro)q(cessing)c(time)g(in)g(b)q(oth)g(hosts)g(and)g(gatew)o(a)o
(ys,)e(and)i(risk)g(exceeding)h(limits)d(on)i(datagram)f(header)i(size.)0
1902 y Fi(5)69 b(Ev)l(aluation)23 b(and)h(comparison)f(of)g(single-k)n(ey)e
(proto)r(cols)0 2043 y Fo(In)14 b(this)f(section)g(w)o(e)h(ev)m(aluate)f(and)
h(compare)f(the)h(t)o(w)o(o)e(prop)q(osed)i(proto)q(cols)e(on)i(the)g(basis)f
(of)g(their)g(resp)q(ectiv)o(e)0 2099 y(o)o(v)o(erhead)h(costs.)19
b(W)l(e)14 b(separate)g(the)g(costs)g(in)o(to)f(p)q(er-connection)i(costs)f
(and)g(p)q(er-datagram)g(costs)g(for)f(autho-)0 2156 y(rized)k(datagrams.)25
b(P)o(er-connection)18 b(costs)f(include)g(the)h(extra)f(datagrams)f(exc)o
(hanged)i(among)e(visa)h(hosts,)0 2212 y(A)o(CSs,)k(and)f(gatew)o(a)o(ys;)g
(and)g(the)h(storage)d(requiremen)o(ts)i(in)g(gatew)o(a)o(ys)e(and)i(hosts.)
34 b(P)o(er-datagram)19 b(costs)0 2268 y(include)c(encryption)g(and)g
(decryption,)f(additional)g(pac)o(k)o(et)g(length)g(due)i(to)e(the)h(visas,)e
(and)i(table)g(lo)q(okups)f(in)0 2325 y(hosts)h(and)g(gatew)o(a)o(ys.)0
2486 y Fq(5.1)56 b(P)n(er-connection)17 b(costs)0 2611 y Fo(In)f(the)f
(stateful)f(proto)q(col,)g(there)h(are)g(sev)o(eral)g(kinds)g(of)g(p)q
(er-connection)g(costs:)952 2828 y(18)p eop
%%Page: 19 19
bop 56 45 a Fo(1.)22 b Fh(Negotiations)i(\(supp)q(orted)h(b)o(y)f(datagram)h
(exc)o(hanges\))g(b)q(et)o(w)o(een)f Fg(H)1544 52 y Fd(sr)q(c)1619
45 y Fh(and)h(the)g(A)o(CSs)114 102 y(in)o(v)o(olv)o(ed)p Fo(:)19
b(A)o(t)d(least)g(2)g(datagrams)f(m)o(ust)h(b)q(e)i(sen)o(t)e(to)g(request)h
(the)f(necessary)h(visas,)f(and)h(at)f(least)f(2)114 158 y(datagrams)e(are)i
(required)g(to)g(return)g(the)g(visas)g(to)f Fg(H)1067 165
y Fd(sr)q(c)1118 142 y Fp(14)1155 158 y Fo(.)56 251 y(2.)22
b Fh(Distribution)c(of)i(visas)f(from)g(A)o(CSs)g(to)h(gatew)o(a)o(ys)f
(\(more)h(datagram)h(exc)o(hanges\))p Fo(:)j(Visas)114 308
y(m)o(ust)13 b(b)q(e)h(passed)g(to)g(at)f(least)g(t)o(w)o(o)f(visa-gatew)o(a)
o(ys)g(\()p Fg(GW)1108 315 y Fd(exit)1184 308 y Fo(and)i Fg(GW)1350
315 y Fd(entr)1419 308 y Fo(\);)f(this)h(requires)f(at)g(least)g(t)o(w)o(o)
114 364 y(datagrams.)18 b(In)e(total,)e Fg(M)h Fo(+)c Fg(N)19
b Fo(suc)o(h)d(datagrams)e(are)h(sen)o(t)g(if)g(there)g(are)g
Fg(M)21 b Fo(p)q(oten)o(tial)14 b(exit)h(gatew)o(a)o(ys)114
421 y(and)g Fg(N)20 b Fo(p)q(oten)o(tial)14 b(en)o(trance)h(gatew)o(a)o(ys.)
56 514 y(3.)22 b Fh(T)l(able)15 b(storage)h(space)f(and)h(main)o(tenance)g
(costs)p Fo(:)j(Storage)12 b(o)o(v)o(erhead,)i(consisting)e(of)h(b)q(oth)h
(space)114 570 y(and)h(run)o(time)f(costs,)g(is)h(in)o(tro)q(duced)g(in)g
(this)f(proto)q(col)g(mainly)g(b)o(y)h(the)g(need)h(for)f(all)f(participan)o
(ts,)f(but)114 627 y(esp)q(ecially)h(gatew)o(a)o(ys,)e(to)i(k)o(eep)h
(visa-tables)e(tables.)19 b(Signi\014can)o(t)14 b(costs)g(are)g(asso)q
(ciated)f(with)h(b)q(oth)h(the)114 683 y(space)i(required)g(to)f(store)g(the)
h(table,)g(b)q(ecause)h(man)o(y)e(connections)h(ma)o(y)f(b)q(e)i(activ)o(e,)e
(and)h(the)g(cost)f(of)114 739 y(lo)q(okups,)e(since)i(one)f(is)g(p)q
(erformed)g(for)g(ev)o(ery)g(datagram)e(forw)o(arded.)71 882
y(In)i(the)h(stateless)e(proto)q(col,)g(some)g(p)q(er-connection)i(costs)f
(are)g(reduced:)56 1025 y(1.)22 b Fh(Distribution)i(of)i(visas)f(from)g(A)o
(CSs)f(to)j(gatew)o(a)o(ys)p Fo(:)33 b(This)23 b(is)f(not)g(done)h(at)f(all.)
41 b(The)22 b(only)114 1082 y(comm)o(unication)10 b(b)q(et)o(w)o(een)j(A)o
(CSs)f(and)g(gatew)o(a)o(ys)f(is)g(the)h(distribution)f(of)h(k)o(eys)g(at)f
(infrequen)o(t)h(in)o(terv)m(als.)56 1175 y(2.)22 b Fh(T)l(able)f(storage)h
(space)g(and)h(main)o(tenance)e(costs)p Fo(:)28 b(Since)19
b(the)g(only)g(state)f(stored)h(in)f(the)i(visa-)114 1232 y(gatew)o(a)o(ys)15
b(is)i(the)h(cac)o(he)g(of)f(decrypted)h(visas,)f(whic)o(h)g(can)h(b)q(e)g
(re\014lled)f(at)g(minimal)f(cost,)h(there)h(is)f(no)114 1288
y(need)g(to)f(main)o(tain)f(a)i(complete)f(table.)24 b(T)l(able)16
b(storage)g(space)h(can)f(b)q(e)i(allo)q(cated)e(to)g(the)g(exten)o(t)h(that)
114 1344 y(it)h(is)g(a)o(v)m(ailable.)30 b(Av)o(erage)18 b(p)q(er-datagram)g
(costs)g(will)g(increase)h(if)f(the)h(cac)o(he)g(size)g(is)f(so)h(small)e(as)
i(to)114 1401 y(signi\014can)o(tly)13 b(reduce)j(hit)f(ratios.)71
1544 y(The)i(stateless)g(proto)q(col)f(do)q(es)i(require)f(eac)o(h)h(A)o(CS)f
(to)g(p)q(erform)g(an)g(encryption)h(op)q(eration)e(to)h(create)g(a)0
1600 y(visa.)i(It)14 b(is)g(also)f(more)h(exp)q(ensiv)o(e,)h(in)f(the)h
(stateless)e(proto)q(col,)g(to)h(rev)o(ok)o(e)f(an)i(unexpired)g(visa)f(b)q
(ecause)h(there)0 1657 y(is)g(no)g(w)o(a)o(y)f(to)h(do)g(this)f(without)h
(rev)o(oking)f(all)g(unexpired)i(visas.)71 1752 y(Ov)o(erall,)i(the)h(minim)o
(um)f(n)o(um)o(b)q(er)i(of)e(datagrams)g(required)h(to)f(set)h(up)g(a)g
(connection)g(in)g(the)g(stateless)0 1809 y(proto)q(col)13
b(is)h(lo)o(w)o(er)f(at)g(least)g(b)o(y)h(t)o(w)o(o)f(\(more)h(precisely)l(,)
g(b)o(y)g Fg(M)f Fo(+)8 b Fg(N)d Fo(\))14 b(since)g(no)g(visa)f(distribution)
g(to)h(gatew)o(a)o(ys)0 1865 y(is)20 b(done.)35 b(In)21 b(addition,)f(the)h
(table)f(storage)f(space)h(and)h(main)o(tenance)f(costs)f(are)h(lo)o(w)o(er)f
(for)h(the)g(stateless)0 1922 y(proto)q(col.)0 2082 y Fq(5.2)56
b(P)n(er-datagram)18 b(costs)0 2207 y Fo(The)e(p)q(er-datagram)f(costs)g(for)
g(visas)g(are)h(the)f(additional)g(\014elds)h(in)f(datagrams,)f(table)h(lo)q
(ok-ups,)h(and)g(cryp-)0 2264 y(tographic)e(op)q(erations.)71
2359 y(Eac)o(h)22 b(datagram)f(m)o(ust)h(carry)g(header)h(\014elds)g(for)f(b)
q(oth)h(exit)f(and)h(en)o(trance)g(visas.)41 b(In)23 b(the)g(stateful)0
2416 y(proto)q(col,)c(space)h(is)f(required)g(only)g(for)g(t)o(w)o(o)f
(rather)h(small)f(visas,)i(eac)o(h)f(b)q(eing)h(a)f(data)g(signature.)32
b(In)20 b(the)0 2472 y(stateless)14 b(proto)q(col,)g(space)i(is)f(required)g
(not)g(only)g(for)g(t)o(w)o(o)f(data)h(signatures,)f(but)i(also)e(for)h(t)o
(w)o(o)f(rather)h(large)0 2529 y(visas,)e(eac)o(h)h(con)o(taining)e(\(in)h
(encrypted)i(form\))e(t)o(w)o(o)f(source)i(addresses,)g(a)f(signature)g(k)o
(ey)l(,)h(and)f(an)h(expiration)0 2585 y(time.)p 0 2615 780
2 v 37 2642 a Fk(14)69 2658 y Fj(In)d(practice,)h(an)o(y)g(visa)f(proto)q
(col)h(ma)o(y)f(require)h(additional)f(datagrams)h(to)g(b)q(e)f(generated)h
(in)f(order)h(for)f Fa(H)1640 2662 y Fb(sr)q(c)1697 2658 y
Fj(to)g(authen)o(ticate)0 2704 y(itself)h(to)h Fa(AC)s(S)222
2708 y Fb(sr)q(c)281 2704 y Fj(and)h Fa(AC)s(S)438 2708 y Fb(dst)482
2704 y Fj(.)952 2828 y Fo(19)p eop
%%Page: 20 20
bop 71 45 a Fo(In)13 b(our)g(implemen)o(tation)e(using)i(32-bit)f(DES)h(k)o
(eys,)g(the)g(visas)f(in)h(the)g(stateful)f(proto)q(col)g(together)g(require)
0 102 y(8)i(b)o(ytes,)f(while)h(in)g(the)g(stateless)f(proto)q(col,)f(the)i
(t)o(w)o(o)f(visas)g(and)h(data)g(signatures)f(together)g(require)h(40)f(b)o
(ytes)0 158 y(\(see)k(\014gure)g(2;)g(note)g(that)f(IP)h(requires)g(an)g
(additional)e(4)h(b)o(ytes)h(to)f(indicate)h(the)g(presence)h(of)e(this)g
(option\).)0 214 y(This)d(di\013erence)h(b)q(et)o(w)o(een)f(the)h(stateful)e
(and)i(stateless)e(proto)q(cols)g(cannot)h(b)q(e)h(ignored,)f(but)h(is)f(b)q
(ecoming)g(less)0 271 y(signi\014can)o(t)h(as)h(net)o(w)o(ork)f(bandwidths)h
(increase.)71 367 y(Both)i(proto)q(cols)g(require)h(essen)o(tially)e(the)i
(same)f(n)o(um)o(b)q(er)i(of)e(table)g(lo)q(okups;)i(the)f(cac)o(he)g(lo)q
(okups)g(done)0 423 y(in)f(the)g(stateless)f(proto)q(col)g(should)h(cost)f
(ab)q(out)h(the)g(same)f(as)h(the)g(table)f(lo)q(okups)h(required)g(in)g(the)
g(stateful)0 479 y(proto)q(col.)22 b(The)16 b(only)g(di\013erence)h(is)e(the)
i(size)f(of)g(the)g(lo)q(okup)g(k)o(ey)l(,)g(whic)o(h)g(is)g(t)o(wice)g(as)f
(large)h(in)g(the)g(stateless)0 536 y(proto)q(col.)71 631 y(The)e
(cryptographic)f(op)q(erations)h(required)g(dep)q(end)i(up)q(on)f(the)f(data)
g(in)o(tegrit)o(y)e(sc)o(heme)i(used.)21 b(They)14 b(also)0
688 y(dep)q(end)i(up)q(on)g(whether)f(the)g(op)q(eration)f(in)o(v)o(olv)o(es)
f(passing)i(o)o(v)o(er)f(the)h(en)o(tire)f(datagram)f(or)i(o)o(v)o(er)f(only)
g(part)g(of)0 744 y(the)k(datagram.)25 b(F)l(or)17 b(the)g(single-k)o(ey)g
(visa)g(proto)q(cols)f(describ)q(ed)j(in)e(this)g(rep)q(ort,)g(the)h
(cryptographic)f(costs)0 801 y(are:)27 b(4)19 b(cryptographic)g(op)q
(erations)f(for)g(the)i(stateful)e(proto)q(col,)g(6)h(op)q(erations)f(for)h
(the)g(stateless)f(proto)q(col)0 857 y(without)c(cac)o(he)h(hits,)f(and)h(4)f
(op)q(erations)g(for)h(the)f(stateless)g(proto)q(col)g(with)g(cac)o(he)h
(hits)f(\(see)h(table)f(2\).)20 b(These)0 914 y(v)m(alues)15
b(include)h(the)f(cryptographic)g(op)q(erations)f(at)g(the)i(source)f(host)g
(and)g(at)g(b)q(oth)g(in)o(terv)o(ening)f(gatew)o(a)o(ys.)71
1009 y(Using)19 b(this)g(analysis)g(w)o(e)h(see)g(that,)g(giv)o(en)f(a)g
(reasonable)h(cac)o(he)g(hit)f(rate)g(for)h(the)g(stateless)e(proto)q(col,)0
1066 y(the)h(p)q(er-datagram)g(encryption)g(costs)g(are)g(roughly)f(equal)h
(for)g(the)g(t)o(w)o(o)f(single-k)o(ey)h(visa)g(proto)q(cols.)31
b(The)0 1122 y(main)20 b(determinan)o(t)f(of)h(cryptographic)f(cost)h(is)g
(the)g(strength)g(of)g(the)g(signature)f(function,)i(and)g(th)o(us)f(the)0
1179 y(vulnerabilit)o(y)14 b(of)g(the)i(system,)e(rather)h(than)g(the)g
(particular)f(visa)g(proto)q(col.)0 1340 y Fq(5.3)56 b(Summary)0
1465 y Fo(In)22 b(summary)l(,)h(the)f(stateless)e(visa)h(proto)q(col)g(has)h
(lo)o(w)o(er)e(setup)i(costs,)g(p)q(ossibly)g(lo)o(w)o(er)e(storage)g(costs)i
(for)0 1521 y(the)c(gatew)o(a)o(ys)d(\(dep)q(ending)k(up)q(on)f(the)g(cac)o
(he)f(size\),)h(but)f(sligh)o(tly)f(higher)h(p)q(er-datagram)g(pro)q(cessing)
h(costs)0 1577 y(than)f(the)f(stateful)g(proto)q(col.)24 b(A)16
b(natural)g(consequence)i(of)e(this)h(statemen)o(t)e(is)i(that)f(the)g
(stateless)g(proto)q(col)0 1634 y(pro)o(vides)e(for)g(more)g(e\016cien)o(t)g
(handling)g(of)h(brief)f(connections,)g(since)h(its)e(setup)i(cost)f(is)g(lo)
o(w)o(er;)f(in)i(particular,)0 1690 y(the)21 b(critical)e(path)i(is)g
(shorter)f(b)o(y)h(one)g(pac)o(k)o(et-dela)o(y)l(.)36 b(F)l(or)21
b(longer)f(connections,)i(once)f(the)g(di\013erence)g(in)0
1747 y(setup)14 b(costs)f(has)g(b)q(een)i(amortized)d(and)i(the)f(gatew)o(a)o
(y)f(cac)o(hes)i(are)f(loaded,)g(the)h(stateless)e(proto)q(col)h(is)g(sligh)o
(tly)0 1803 y(less)i(e\016cien)o(t)f(b)q(ecause)i(it)f(requires)g(longer)f
(pac)o(k)o(et)g(headers.)20 b(A)c(c)o(hoice)e(b)q(et)o(w)o(een)i(the)f
(stateless)f(and)h(stateful)0 1860 y(proto)q(cols)10 b(ma)o(y)h(dep)q(end)h
(on)g(other)e(factors,)h(suc)o(h)g(as)g(the)h(higher)f(cost)f(of)h(selectiv)o
(e)g(rev)o(o)q(cation)f(in)h(the)g(stateless)0 1916 y(proto)q(col,)j(and)h
(the)g(higher)g(cost)g(of)g(gatew)o(a)o(y)e(table)i(o)o(v)o(er\015o)o(w)f(in)
h(the)g(stateful)f(proto)q(col.)19 b(Alternativ)o(ely)l(,)13
b(one)0 1973 y(could)j(implemen)o(t)f(a)h(h)o(ybrid)g(proto)q(col)e(that)i(w)
o(ould)f(emplo)o(y)g(either)h(the)g(stateless)f(or)g(the)h(stateful)f(proto)q
(col)0 2029 y(dep)q(ending)h(up)q(on)g(the)g(connection)f(t)o(yp)q(e.)71
2125 y(Either)22 b(proto)q(col)g(dep)q(ends)j(up)q(on)f(the)f(a)o(v)m
(ailabilit)o(y)e(of)h(a)h(high-p)q(erformance)h(cryptosystem.)43
b(While)0 2181 y(public-k)o(ey)16 b(metho)q(ds)g(do)g(not)f(y)o(et)g(app)q
(ear)h(to)f(meet)h(this)f(need)i(\(the)e(fastest)g(commercially)f(a)o(v)m
(ailable)h(hard-)0 2238 y(w)o(are,)f(the)i(Cylink)f(Corp)q(oration)f(CY1024,)
g(is)g(sp)q(eci\014ed)j(to)e(encrypt)h(up)g(to)f(2)g(Kbits/second[3)o(]\),)g
(single-k)o(ey)0 2294 y(systems)21 b(suc)o(h)g(as)g(DES)g(are)f(already)h
(capable)g(of)g(matc)o(hing)f(high-sp)q(eed)i(LAN)g(bandwidths)f(\(the)g(AMD)
0 2350 y(AMZ8068)14 b(is)g(sp)q(eci\014ed)j(to)d(encrypt)i(up)f(to)g(1.7)f
(Mb)o(ytes/second[13)o(]\).)952 2828 y(20)p eop
%%Page: 21 21
bop 0 45 a Fi(6)69 b(Exp)r(erimen)n(tal)21 b(results)0 186
y Fo(The)h(purp)q(ose)g(of)f(our)g(exp)q(erimen)o(ts)h(w)o(as)f(to)g(ev)m
(aluate)g(p)q(er-datagram,)h(connection)g(set)f(up,)i(and)f(o)o(v)o(erall)0
242 y(net)o(w)o(ork)11 b(costs)g(of)h(visa)f(proto)q(cols.)18
b(This)11 b(section)h(presen)o(ts)f(a)h(brief)g(description)f(of)h(our)f
(implemen)o(tation,)g(and)0 299 y(analyzes)16 b(p)q(erformance)h(measuremen)o
(ts)f(of)h(a)f(protot)o(yp)q(e)g(implemen)o(tation)f(of)h(b)q(oth)h(stateful)
e(and)i(stateless)0 355 y(proto)q(cols.)71 451 y(W)l(e)d(conducted)i(t)o(w)o
(o)d(sets)h(of)g(exp)q(erimen)o(ts,)g(the)h(\014rst)f(on)g(a)g(logical)f(in)o
(ternet)h(in)g(our)h(lab)q(oratory)d(at)i(USC,)0 507 y(and)f(the)g(second)h
(across)e(the)h(D)o(ARP)l(A)g(In)o(ternet.)20 b(The)13 b(lab)q(oratory)e
(data)i(pro)o(vide)f(a)h(basis)f(for)h(comparing)f(the)0 564
y(relativ)o(e)j(o)o(v)o(erheads)h(of)g(the)h(v)m(arious)f(visa)g(proto)q
(cols)f(presen)o(ted.)25 b(The)17 b(In)o(ternet)g(data)e(pro)o(v)o(e)h(the)h
(feasibilit)o(y)0 620 y(of)c(implemen)o(ting)g(visa)g(proto)q(cols)g(in)h(an)
f(op)q(erational)g(in)o(ternet)g(en)o(vironmen)o(t,)g(and)h(illustrate)e(the)
i(relativ)o(ely)0 676 y(lo)o(w)g(o)o(v)o(erhead)h(of)g(visas)f(in)h(a)g(con)o
(text)g(of)f(relativ)o(ely)g(high)h(transmission)e(dela)o(y)l(.)0
837 y Fq(6.1)56 b(Visa)19 b(implemen)n(tation)0 962 y Fo(F)l(or)e(b)q(oth)h
(lab)q(oratory)e(and)h(In)o(ternet)h(exp)q(erimen)o(ts,)g(visa)f(proto)q
(cols)f(w)o(ere)h(implemen)o(ted)h(as)f(mo)q(di\014cations)0
1019 y(to)g(the)i(IP)f(co)q(de)h(in)f(4.3BSD)f(Unix)h(running)g(on)g(IBM)h
(PC)e(R)l(Ts)1159 1002 y Fp(15)1197 1019 y Fo(.)29 b(Visa-gatew)o(a)o(ys,)16
b(hosts,)i(and)g(A)o(CSs)g(all)0 1075 y(used)i(R)l(Ts)g(with)f(4)g(megab)o
(ytes)g(of)g(in)o(ternal)g(memory)l(.)32 b(The)20 b(R)l(Ts)g(w)o(ere)f
(connected)i(to)e(an)g(Ethernet)h(with)0 1132 y(standard)g(Ungerman-Bass)g
(Ethernet)g(adaptors.)35 b(DES)20 b(encryption,)h(in)f(Electronic)g(Co)q
(de-Bo)q(ok)h(\(ECB\))0 1188 y(mo)q(de,)g(w)o(as)e(done)h(in)g(hardw)o(are)f
(using)h(protot)o(yp)q(e)f(cards)h(from)f(the)h(Information)f(T)l(ec)o
(hnology)g(Cen)o(ter)g(of)0 1245 y(Carnegie-Mellon)e(Univ)o(ersit)o(y)f
(\(CMU-ITC\).)h(Although)h(the)g(AMD)f(AMZ8068)g(c)o(hip)h(used)g(on)g(the)g
(card)g(is)0 1301 y(sp)q(eci\014ed)i(to)d(encrypt)i(up)g(to)f(1.7)f(Mb)o
(ytes/second[13)o(],)i(the)f(protot)o(yp)q(e)g(b)q(oard)g(itself)f(encrypts)i
(large)f(data)0 1357 y(blo)q(c)o(ks)d(at)f(only)h(200)g(Kb)o(ytes/second)g
(due)h(to)f(slo)o(w)f(I/O.)71 1453 y(The)h(IP)h(option)e(de\014nitions)h(for)
f(b)q(oth)i(visa)e(proto)q(cols)g(are)h(depicted)h(in)f(\014gure)g(2.)71
1549 y(W)l(e)j(encoun)o(tered)i(a)e(signi\014can)o(t)f(problem)i(with)e(our)i
(\014rst)f(implemen)o(tation)f(of)h(the)h(stateless)e(proto)q(col)0
1605 y({)22 b(w)o(e)f(exceeded)j(the)e(maxim)o(um)f(IP)h(header)g(size)g(of)g
(60)f(b)o(ytes!)40 b(In)23 b(order)e(to)h(implemen)o(t)f(the)h(stateless)0
1662 y(proto)q(col)16 b(within)g(existing)f(IP)l(,)i(w)o(e)g(cut)f(do)o(wn)h
(the)g(size)f(of)h(DES)f(k)o(eys)h(and)g(data)f(signatures)f(from)h(64)g(to)h
(32)0 1718 y(bits.)k(Although)15 b(clev)o(er)g(enco)q(ding)h(tec)o(hniques)g
(could)g(b)q(e)g(used)h(used)f(to)f(pac)o(k)g(additional)g(k)o(ey)g(bits)g
(in)o(to)g(the)0 1775 y(header,)j(the)g(stateless)e(proto)q(col)g(is)h(unlik)
o(ely)g(to)g(co)q(exist)g(with)f(an)o(y)i(other)f(IP)g(options,)g(due)h(to)f
(the)h(header)0 1831 y(length)d(limit.)0 1992 y Fq(6.2)56 b(Exp)r(erimen)n
(tal)16 b(con\014gurations)0 2117 y Fo(F)l(or)f(the)h(lab)q(oratory)e(exp)q
(erimen)o(ts,)h(w)o(e)g(created)h(logically)e(separate)h(net)o(w)o(orks)f(on)
i(top)f(of)g(a)h(single)f(ph)o(ysical)0 2173 y(net)o(w)o(ork)f(b)o(y)h
(manipulating)f(the)h(routing)g(databases)f(for)h(lo)q(cal)f(hosts)h(\(see)g
(\014gure)g(3\).)71 2269 y(Our)21 b(In)o(ternet)g(con\014guration)f
(consisted)g(of)h(net)o(w)o(orks)e(in)i(t)o(w)o(o)e(univ)o(ersities,)i(USC)g
(and)g(UCLA,)g(eac)o(h)0 2325 y(connected)16 b(to)f(the)g(ARP)l(Anet.)22
b(The)15 b(visa)g(net)o(w)o(orks)f(sit)h(within)f(campus)i(net)o(w)o(orks)e
(whic)o(h)h(eac)o(h)h(connect)g(to)0 2382 y(the)f(ARP)l(Anet)h(\(see)g
(\014gure)f(4\).)p 0 2424 780 2 v 37 2451 a Fk(15)69 2467 y
Fj(The)f(IBM)h(PC)f(R)m(T)g(scores)h(2690)g(on)f(the)h(\\Dhrystone)h(b)q(enc)
o(hmark",)g(compared)f(with)f(2993)h(for)f(SUN)g(3/50)h(and)g(1577)g(for)0
2512 y(Digital)d(Equipmen)o(t)i(Corp)q(oration)g(MicroV)m(ax)f(I)q(I.)952
2828 y Fo(21)p eop
%%Page: 22 22
bop 240 4 a
 21313290 21313290 9669918 328908 27036303 6380830 startTexFig
240 4 a
%%BeginDocument: stateful.idraw

/arrowHeight 8 def
/arrowWidth 4 def
/none null def
/numGraphicParameters 17 def
/stringLimit 65535 def

/Begin {
save
numGraphicParameters dict begin
} def

/End {
end
restore
} def

/SetB {
dup type /nulltype eq {
pop
false /brushRightArrow idef
false /brushLeftArrow idef
true /brushNone idef
} {
/brushDashOffset idef
/brushDashArray idef
0 ne /brushRightArrow idef
0 ne /brushLeftArrow idef
/brushWidth idef
false /brushNone idef
} ifelse
} def

/SetCFg {
/fgred idef
/fggreen idef
/fgblue idef
} def

/SetCBg {
/bgred idef
/bggreen idef
/bgblue idef
} def

/SetF {
/printSize idef
/printFont idef
} def

/SetP {
dup type /nulltype eq {
pop true /patternNone idef
} {
/patternGrayLevel idef
patternGrayLevel -1 eq {
/patternString idef
} if
false /patternNone idef
} ifelse
} def

/BSpl {
0 begin
storexyn
newpath
n 1 gt {
0 0 0 0 0 0 1 1 true subspline
n 2 gt {
0 0 0 0 1 1 2 2 false subspline
1 1 n 3 sub {
/i exch def
i 1 sub dup i dup i 1 add dup i 2 add dup false subspline
} for
n 3 sub dup n 2 sub dup n 1 sub dup 2 copy false subspline
} if
n 2 sub dup n 1 sub dup 2 copy 2 copy false subspline
patternNone not brushLeftArrow not brushRightArrow not and and { ifill } if
brushNone not { istroke } if
0 0 1 1 leftarrow
n 2 sub dup n 1 sub dup rightarrow
} if
end
} dup 0 4 dict put def

/Circ {
newpath
0 360 arc
patternNone not { ifill } if
brushNone not { istroke } if
} def

/CBSpl {
0 begin
dup 2 gt {
storexyn
newpath
n 1 sub dup 0 0 1 1 2 2 true subspline
1 1 n 3 sub {
/i exch def
i 1 sub dup i dup i 1 add dup i 2 add dup false subspline
} for
n 3 sub dup n 2 sub dup n 1 sub dup 0 0 false subspline
n 2 sub dup n 1 sub dup 0 0 1 1 false subspline
patternNone not { ifill } if
brushNone not { istroke } if
} {
Poly
} ifelse
end
} dup 0 4 dict put def

/Elli {
0 begin
newpath
4 2 roll
translate
scale
0 0 1 0 360 arc
patternNone not { ifill } if
brushNone not { istroke } if
end
} dup 0 1 dict put def

/Line {
0 begin
2 storexyn
newpath
x 0 get y 0 get moveto
x 1 get y 1 get lineto
brushNone not { istroke } if
0 0 1 1 leftarrow
0 0 1 1 rightarrow
end
} dup 0 4 dict put def

/MLine {
0 begin
storexyn
newpath
n 1 gt {
x 0 get y 0 get moveto
1 1 n 1 sub {
/i exch def
x i get y i get lineto
} for
patternNone not brushLeftArrow not brushRightArrow not and and { ifill } if
brushNone not { istroke } if
0 0 1 1 leftarrow
n 2 sub dup n 1 sub dup rightarrow
} if
end
} dup 0 4 dict put def

/Poly {
3 1 roll
newpath
moveto
-1 add
{ lineto } repeat
closepath
patternNone not { ifill } if
brushNone not { istroke } if
} def

/Rect {
0 begin
/t exch def
/r exch def
/b exch def
/l exch def
newpath
l b moveto
l t lineto
r t lineto
r b lineto
closepath
patternNone not { ifill } if
brushNone not { istroke } if
end
} dup 0 4 dict put def

/Text {
ishow
} def

/idef {
dup where { pop pop pop } { exch def } ifelse
} def

/ifill {
0 begin
gsave
patternGrayLevel -1 ne {
fgred bgred fgred sub patternGrayLevel mul add
fggreen bggreen fggreen sub patternGrayLevel mul add
fgblue bgblue fgblue sub patternGrayLevel mul add setrgbcolor
eofill
} {
eoclip
originalCTM setmatrix
pathbbox /t exch def /r exch def /b exch def /l exch def
/w r l sub ceiling cvi def
/h t b sub ceiling cvi def
/imageByteWidth w 8 div ceiling cvi def
/imageHeight h def
bgred bggreen bgblue setrgbcolor
eofill
fgred fggreen fgblue setrgbcolor
l b translate w h scale
w h true [w 0 0 h neg 0 h] { patternproc } imagemask
} ifelse
grestore
end
} dup 0 8 dict put def

/istroke {
gsave
brushDashOffset -1 eq {
[] 0 setdash
1 setgray
} {
brushDashArray brushDashOffset setdash
fgred fggreen fgblue setrgbcolor
} ifelse
brushWidth setlinewidth
originalCTM setmatrix
stroke
grestore
} def

/ishow {
0 begin
gsave
0 2.5 originalCTM dtransform idtransform
/yoff exch def
/xoff exch def
printFont /Courier ne printSize 10 ne and { xoff yoff translate } if
printFont findfont printSize scalefont setfont
fgred fggreen fgblue setrgbcolor
/vertoffset printSize neg def {
0 vertoffset moveto show
/vertoffset vertoffset printSize sub def
} forall
grestore
end
} dup 0 3 dict put def

/patternproc {
0 begin
/patternByteLength patternString length def
/patternHeight patternByteLength 8 mul sqrt cvi def
/patternWidth patternHeight def
/patternByteWidth patternWidth 8 idiv def
/imageByteMaxLength imageByteWidth imageHeight mul
stringLimit patternByteWidth sub min def
/imageMaxHeight imageByteMaxLength imageByteWidth idiv patternHeight idiv
patternHeight mul patternHeight max def
/imageHeight imageHeight imageMaxHeight sub store
/imageString imageByteWidth imageMaxHeight mul patternByteWidth add string def
0 1 imageMaxHeight 1 sub {
/y exch def
/patternRow y patternByteWidth mul patternByteLength mod def
/patternRowString patternString patternRow patternByteWidth getinterval def
/imageRow y imageByteWidth mul def
0 patternByteWidth imageByteWidth 1 sub {
/x exch def
imageString imageRow x add patternRowString putinterval
} for
} for
imageString
end
} dup 0 12 dict put def

/min {
dup 3 2 roll dup 4 3 roll lt { exch } if pop
} def

/max {
dup 3 2 roll dup 4 3 roll gt { exch } if pop
} def

/arrowhead {
0 begin
transform originalCTM itransform
/taily exch def
/tailx exch def
transform originalCTM itransform
/tipy exch def
/tipx exch def
/dy tipy taily sub def
/dx tipx tailx sub def
/angle dx 0 ne dy 0 ne or { dy dx atan } { 90 } ifelse def
gsave
originalCTM setmatrix
tipx tipy translate
angle rotate
newpath
0 0 moveto
arrowHeight neg arrowWidth 2 div lineto
arrowHeight neg arrowWidth 2 div neg lineto
closepath
patternNone not { ifill } if
brushNone not { istroke } if
grestore
end
} dup 0 7 dict put def

/leftarrow {
0 begin
y exch get /taily exch def
x exch get /tailx exch def
y exch get /tipy exch def
x exch get /tipx exch def
brushLeftArrow { tipx tipy tailx taily arrowhead } if
end
} dup 0 4 dict put def

/rightarrow {
0 begin
y exch get /tipy exch def
x exch get /tipx exch def
y exch get /taily exch def
x exch get /tailx exch def
brushRightArrow { tipx tipy tailx taily arrowhead } if
end
} dup 0 4 dict put def

/midpoint {
0 begin
/y1 exch def
/x1 exch def
/y0 exch def
/x0 exch def
x0 x1 add 2 div
y0 y1 add 2 div
end
} dup 0 4 dict put def

/thirdpoint {
0 begin
/y1 exch def
/x1 exch def
/y0 exch def
/x0 exch def
x0 2 mul x1 add 3 div
y0 2 mul y1 add 3 div
end
} dup 0 4 dict put def

/subspline {
0 begin
/movetoNeeded exch def
y exch get /y3 exch def
x exch get /x3 exch def
y exch get /y2 exch def
x exch get /x2 exch def
y exch get /y1 exch def
x exch get /x1 exch def
y exch get /y0 exch def
x exch get /x0 exch def
x1 y1 x2 y2 thirdpoint
/p1y exch def
/p1x exch def
x2 y2 x1 y1 thirdpoint
/p2y exch def
/p2x exch def
x1 y1 x0 y0 thirdpoint
p1x p1y midpoint
/p0y exch def
/p0x exch def
x2 y2 x3 y3 thirdpoint
p2x p2y midpoint
/p3y exch def
/p3x exch def
movetoNeeded { p0x p0y moveto } if
p1x p1y p2x p2y p3x p3y curveto
end
} dup 0 17 dict put def

/storexyn {
/n exch def
/y n array def
/x n array def
n 1 sub -1 0 {
/i exch def
y i 3 2 roll put
x i 3 2 roll put
} for
} def



Begin
[ 0.923077 0 0 0.923077 0 0 ] concat
/originalCTM matrix currentmatrix def

Begin %I Rect
1 0 0 [] 0 SetB
0 0 0 SetCFg
1 1 1 SetCBg
none SetP %I p n
[ 1 0 0 1 49 -77 ] concat
168 140 392 168 Rect
End

Begin %I Rect
1 0 0 [] 0 SetB
0 0 0 SetCFg
1 1 1 SetCBg
none SetP %I p n
[ 1 0 0 1 49 -105 ] concat
168 140 392 168 Rect
End

Begin %I Rect
1 0 0 [] 0 SetB
0 0 0 SetCFg
1 1 1 SetCBg
none SetP %I p n
[ 1 0 0 1 49 -133 ] concat
168 140 392 168 Rect
End

Begin %I Line
1 0 0 [] 0 SetB
0 0 0 SetCFg
1 1 1 SetCBg
none SetP %I p n
[ 1 0 0 1 49 -77 ] concat
224 168 224 140 Line
End

Begin %I Line
1 0 0 [] 0 SetB
0 0 0 SetCFg
1 1 1 SetCBg
none SetP %I p n
[ 1 0 0 1 49 -77 ] concat
280 168 280 140 Line
End

Begin %I Text
0 0 0 SetCFg
/Helvetica 12 SetF
[ 0.77193 0 0 0.77193 230.5 88.0351 ] concat
[
(IP option)
(type)
] Text
End

Begin %I Text
0 0 0 SetCFg
/Helvetica 12 SetF
[ 0.77193 0 0 0.77193 286.5 88.0351 ] concat
[
(IP option)
(length)
] Text
End

Begin %I Text
0 0 0 SetCFg
/Helvetica 12 SetF
[ 1 0 0 1 357 84 ] concat
[
(Padding)
] Text
End

Begin %I Text
0 0 0 SetCFg
/Helvetica 12 SetF
[ 0.990291 0 0 0.990291 287.5 55.9369 ] concat
[
(Exit Visa Stamp)
] Text
End

Begin %I Text
0 0 0 SetCFg
/Helvetica 12 SetF
[ 1 0 0 1 273 28 ] concat
[
(Entrance Visa Stamp)
] Text
End

Begin %I Text
0 0 0 SetCFg
/Helvetica 12 SetF
[ 1 0 0 1 217 105 ] concat
[
(0)
] Text
End

Begin %I Text
0 0 0 SetCFg
/Helvetica 12 SetF
[ 1 0 0 1 273 105 ] concat
[
(7)
] Text
End

Begin %I Text
0 0 0 SetCFg
/Helvetica 12 SetF
[ 1 0 0 1 329 105 ] concat
[
(15)
] Text
End

Begin %I Text
0 0 0 SetCFg
/Helvetica 12 SetF
[ 1 0 0 1 427 105 ] concat
[
(31)
] Text
End

Begin %I Text
0 0 0 SetCFg
/Helvetica 12 SetF
[ 1 0 0 1 189 56 ] concat
[
(4-7)
] Text
End

Begin %I Text
0 0 0 SetCFg
/Helvetica 12 SetF
[ 1 0 0 1 189 28 ] concat
[
(8-11)
] Text
End

Begin %I Text
0 0 0 SetCFg
/Helvetica 12 SetF
[ 1 0 0 1 161 84 ] concat
[
(bytes 0-3)
] Text
End

End %I eop


%%EndDocument
 240 4 a
 endTexFig
240 1508 a
 21313290 21313290 4538941 263127 34930114 15787622 startTexFig
240 1508 a
%%BeginDocument: stateless.idraw

/arrowHeight 8 def
/arrowWidth 4 def
/none null def
/numGraphicParameters 17 def
/stringLimit 65535 def

/Begin {
save
numGraphicParameters dict begin
} def

/End {
end
restore
} def

/SetB {
dup type /nulltype eq {
pop
false /brushRightArrow idef
false /brushLeftArrow idef
true /brushNone idef
} {
/brushDashOffset idef
/brushDashArray idef
0 ne /brushRightArrow idef
0 ne /brushLeftArrow idef
/brushWidth idef
false /brushNone idef
} ifelse
} def

/SetCFg {
/fgred idef
/fggreen idef
/fgblue idef
} def

/SetCBg {
/bgred idef
/bggreen idef
/bgblue idef
} def

/SetF {
/printSize idef
/printFont idef
} def

/SetP {
dup type /nulltype eq {
pop true /patternNone idef
} {
/patternGrayLevel idef
patternGrayLevel -1 eq {
/patternString idef
} if
false /patternNone idef
} ifelse
} def

/BSpl {
0 begin
storexyn
newpath
n 1 gt {
0 0 0 0 0 0 1 1 true subspline
n 2 gt {
0 0 0 0 1 1 2 2 false subspline
1 1 n 3 sub {
/i exch def
i 1 sub dup i dup i 1 add dup i 2 add dup false subspline
} for
n 3 sub dup n 2 sub dup n 1 sub dup 2 copy false subspline
} if
n 2 sub dup n 1 sub dup 2 copy 2 copy false subspline
patternNone not brushLeftArrow not brushRightArrow not and and { ifill } if
brushNone not { istroke } if
0 0 1 1 leftarrow
n 2 sub dup n 1 sub dup rightarrow
} if
end
} dup 0 4 dict put def

/Circ {
newpath
0 360 arc
patternNone not { ifill } if
brushNone not { istroke } if
} def

/CBSpl {
0 begin
dup 2 gt {
storexyn
newpath
n 1 sub dup 0 0 1 1 2 2 true subspline
1 1 n 3 sub {
/i exch def
i 1 sub dup i dup i 1 add dup i 2 add dup false subspline
} for
n 3 sub dup n 2 sub dup n 1 sub dup 0 0 false subspline
n 2 sub dup n 1 sub dup 0 0 1 1 false subspline
patternNone not { ifill } if
brushNone not { istroke } if
} {
Poly
} ifelse
end
} dup 0 4 dict put def

/Elli {
0 begin
newpath
4 2 roll
translate
scale
0 0 1 0 360 arc
patternNone not { ifill } if
brushNone not { istroke } if
end
} dup 0 1 dict put def

/Line {
0 begin
2 storexyn
newpath
x 0 get y 0 get moveto
x 1 get y 1 get lineto
brushNone not { istroke } if
0 0 1 1 leftarrow
0 0 1 1 rightarrow
end
} dup 0 4 dict put def

/MLine {
0 begin
storexyn
newpath
n 1 gt {
x 0 get y 0 get moveto
1 1 n 1 sub {
/i exch def
x i get y i get lineto
} for
patternNone not brushLeftArrow not brushRightArrow not and and { ifill } if
brushNone not { istroke } if
0 0 1 1 leftarrow
n 2 sub dup n 1 sub dup rightarrow
} if
end
} dup 0 4 dict put def

/Poly {
3 1 roll
newpath
moveto
-1 add
{ lineto } repeat
closepath
patternNone not { ifill } if
brushNone not { istroke } if
} def

/Rect {
0 begin
/t exch def
/r exch def
/b exch def
/l exch def
newpath
l b moveto
l t lineto
r t lineto
r b lineto
closepath
patternNone not { ifill } if
brushNone not { istroke } if
end
} dup 0 4 dict put def

/Text {
ishow
} def

/idef {
dup where { pop pop pop } { exch def } ifelse
} def

/ifill {
0 begin
gsave
patternGrayLevel -1 ne {
fgred bgred fgred sub patternGrayLevel mul add
fggreen bggreen fggreen sub patternGrayLevel mul add
fgblue bgblue fgblue sub patternGrayLevel mul add setrgbcolor
eofill
} {
eoclip
originalCTM setmatrix
pathbbox /t exch def /r exch def /b exch def /l exch def
/w r l sub ceiling cvi def
/h t b sub ceiling cvi def
/imageByteWidth w 8 div ceiling cvi def
/imageHeight h def
bgred bggreen bgblue setrgbcolor
eofill
fgred fggreen fgblue setrgbcolor
l b translate w h scale
w h true [w 0 0 h neg 0 h] { patternproc } imagemask
} ifelse
grestore
end
} dup 0 8 dict put def

/istroke {
gsave
brushDashOffset -1 eq {
[] 0 setdash
1 setgray
} {
brushDashArray brushDashOffset setdash
fgred fggreen fgblue setrgbcolor
} ifelse
brushWidth setlinewidth
originalCTM setmatrix
stroke
grestore
} def

/ishow {
0 begin
gsave
0 2.5 originalCTM dtransform idtransform
/yoff exch def
/xoff exch def
printFont /Courier ne printSize 10 ne and { xoff yoff translate } if
printFont findfont printSize scalefont setfont
fgred fggreen fgblue setrgbcolor
/vertoffset printSize neg def {
0 vertoffset moveto show
/vertoffset vertoffset printSize sub def
} forall
grestore
end
} dup 0 3 dict put def

/patternproc {
0 begin
/patternByteLength patternString length def
/patternHeight patternByteLength 8 mul sqrt cvi def
/patternWidth patternHeight def
/patternByteWidth patternWidth 8 idiv def
/imageByteMaxLength imageByteWidth imageHeight mul
stringLimit patternByteWidth sub min def
/imageMaxHeight imageByteMaxLength imageByteWidth idiv patternHeight idiv
patternHeight mul patternHeight max def
/imageHeight imageHeight imageMaxHeight sub store
/imageString imageByteWidth imageMaxHeight mul patternByteWidth add string def
0 1 imageMaxHeight 1 sub {
/y exch def
/patternRow y patternByteWidth mul patternByteLength mod def
/patternRowString patternString patternRow patternByteWidth getinterval def
/imageRow y imageByteWidth mul def
0 patternByteWidth imageByteWidth 1 sub {
/x exch def
imageString imageRow x add patternRowString putinterval
} for
} for
imageString
end
} dup 0 12 dict put def

/min {
dup 3 2 roll dup 4 3 roll lt { exch } if pop
} def

/max {
dup 3 2 roll dup 4 3 roll gt { exch } if pop
} def

/arrowhead {
0 begin
transform originalCTM itransform
/taily exch def
/tailx exch def
transform originalCTM itransform
/tipy exch def
/tipx exch def
/dy tipy taily sub def
/dx tipx tailx sub def
/angle dx 0 ne dy 0 ne or { dy dx atan } { 90 } ifelse def
gsave
originalCTM setmatrix
tipx tipy translate
angle rotate
newpath
0 0 moveto
arrowHeight neg arrowWidth 2 div lineto
arrowHeight neg arrowWidth 2 div neg lineto
closepath
patternNone not { ifill } if
brushNone not { istroke } if
grestore
end
} dup 0 7 dict put def

/leftarrow {
0 begin
y exch get /taily exch def
x exch get /tailx exch def
y exch get /tipy exch def
x exch get /tipx exch def
brushLeftArrow { tipx tipy tailx taily arrowhead } if
end
} dup 0 4 dict put def

/rightarrow {
0 begin
y exch get /tipy exch def
x exch get /tipx exch def
y exch get /taily exch def
x exch get /tailx exch def
brushRightArrow { tipx tipy tailx taily arrowhead } if
end
} dup 0 4 dict put def

/midpoint {
0 begin
/y1 exch def
/x1 exch def
/y0 exch def
/x0 exch def
x0 x1 add 2 div
y0 y1 add 2 div
end
} dup 0 4 dict put def

/thirdpoint {
0 begin
/y1 exch def
/x1 exch def
/y0 exch def
/x0 exch def
x0 2 mul x1 add 3 div
y0 2 mul y1 add 3 div
end
} dup 0 4 dict put def

/subspline {
0 begin
/movetoNeeded exch def
y exch get /y3 exch def
x exch get /x3 exch def
y exch get /y2 exch def
x exch get /x2 exch def
y exch get /y1 exch def
x exch get /x1 exch def
y exch get /y0 exch def
x exch get /x0 exch def
x1 y1 x2 y2 thirdpoint
/p1y exch def
/p1x exch def
x2 y2 x1 y1 thirdpoint
/p2y exch def
/p2x exch def
x1 y1 x0 y0 thirdpoint
p1x p1y midpoint
/p0y exch def
/p0x exch def
x2 y2 x3 y3 thirdpoint
p2x p2y midpoint
/p3y exch def
/p3x exch def
movetoNeeded { p0x p0y moveto } if
p1x p1y p2x p2y p3x p3y curveto
end
} dup 0 17 dict put def

/storexyn {
/n exch def
/y n array def
/x n array def
n 1 sub -1 0 {
/i exch def
y i 3 2 roll put
x i 3 2 roll put
} for
} def



Begin
[ 0.923077 0 0 0.923077 0 0 ] concat
/originalCTM matrix currentmatrix def

Begin %I Pict
[ 0.775389 0 0 0.775389 73.1108 -40.6872 ] concat

Begin %I Rect
1 0 0 [] 0 SetB
0 0 0 SetCFg
1 1 1 SetCBg
none SetP %I p n
[ 1 0 0 1 -105 203 ] concat
168 140 392 168 Rect
End

Begin %I Rect
1 0 0 [] 0 SetB
0 0 0 SetCFg
1 1 1 SetCBg
none SetP %I p n
[ 1 0 0 1 252 154 ] concat
168 140 392 168 Rect
End

Begin %I Rect
1 0 0 [] 0 SetB
0 0 0 SetCFg
1 1 1 SetCBg
none SetP %I p n
[ 1 0 0 1 252 182 ] concat
168 140 392 168 Rect
End

Begin %I Line
1 0 0 [] 0 SetB
0 0 0 SetCFg
1 1 1 SetCBg
none SetP %I p n
[ 1 0 0 1 -105 203 ] concat
224 168 224 140 Line
End

Begin %I Line
1 0 0 [] 0 SetB
0 0 0 SetCFg
1 1 1 SetCBg
none SetP %I p n
[ 1 0 0 1 -105 203 ] concat
280 168 280 140 Line
End

Begin %I Text
0 0 0 SetCFg
/Helvetica 12 SetF
[ 0.77193 0 0 0.77193 76.5 368.035 ] concat
[
(IP option)
(type)
] Text
End

Begin %I Text
0 0 0 SetCFg
/Helvetica 12 SetF
[ 0.77193 0 0 0.77193 132.5 368.035 ] concat
[
(IP option)
(length)
] Text
End

Begin %I Text
0 0 0 SetCFg
/Helvetica 12 SetF
[ 1 0 0 1 203 364 ] concat
[
(Padding)
] Text
End

Begin %I Text
0 0 0 SetCFg
/Helvetica 12 SetF
[ 1 0 0 1 63 385 ] concat
[
(0)
] Text
End

Begin %I Text
0 0 0 SetCFg
/Helvetica 12 SetF
[ 1 0 0 1 119 385 ] concat
[
(7)
] Text
End

Begin %I Text
0 0 0 SetCFg
/Helvetica 12 SetF
[ 1 0 0 1 175 385 ] concat
[
(15)
] Text
End

Begin %I Text
0 0 0 SetCFg
/Helvetica 12 SetF
[ 1 0 0 1 273 385 ] concat
[
(31)
] Text
End

Begin %I Text
0 0 0 SetCFg
/Helvetica 12 SetF
[ 1 0 0 1 7 364 ] concat
[
(bytes 0-3)
] Text
End

Begin %I Rect
1 0 0 [] 0 SetB
0 0 0 SetCFg
1 1 1 SetCBg
none SetP %I p n
[ 1 0 0 1 252 98 ] concat
168 140 392 168 Rect
End

Begin %I Rect
1 0 0 [] 0 SetB
0 0 0 SetCFg
1 1 1 SetCBg
none SetP %I p n
[ 1 0 0 1 252 126 ] concat
168 140 392 168 Rect
End

Begin %I Rect
1 0 0 [] 0 SetB
0 0 0 SetCFg
1 1 1 SetCBg
none SetP %I p n
[ 1 0 0 1 -105 -77 ] concat
168 140 392 168 Rect
End

Begin %I Rect
1 0 0 [] 0 SetB
0 0 0 SetCFg
1 1 1 SetCBg
none SetP %I p n
[ 1 0 0 1 -105 -49 ] concat
168 140 392 168 Rect
End

Begin %I Rect
1 0 0 [] 0 SetB
0 0 0 SetCFg
1 1 1 SetCBg
none SetP %I p n
[ 1 0 0 1 252 28 ] concat
168 140 392 168 Rect
End

Begin %I Rect
1 0 0 [] 0 SetB
0 0 0 SetCFg
1 1 1 SetCBg
none SetP %I p n
[ 1 0 0 1 252 56 ] concat
168 140 392 168 Rect
End

Begin %I Rect
1 0 0 [] 0 SetB
0 0 0 SetCFg
1 1 1 SetCBg
none SetP %I p n
[ 1 0 0 1 252 -28 ] concat
168 140 392 168 Rect
End

Begin %I Rect
1 0 0 [] 0 SetB
0 0 0 SetCFg
1 1 1 SetCBg
none SetP %I p n
[ 1 0 0 1 252 0 ] concat
168 140 392 168 Rect
End

Begin %I Rect
2 0 0 [] 0 SetB
0 0 0 SetCFg
1 1 1 SetCBg
none SetP %I p n
63 231 287 343 Rect
End

Begin %I Rect
2 0 0 [] 0 SetB
0 0 0 SetCFg
1 1 1 SetCBg
none SetP %I p n
[ 1 0 0 1 0 -112 ] concat
63 231 287 343 Rect
End

Begin %I Line
1 1 1 [] 0 SetB
0 0 0 SetCFg
1 1 1 SetCBg
none SetP %I p n
287 287 420 294 Line
End

Begin %I Line
1 1 1 [] 0 SetB
0 0 0 SetCFg
1 1 1 SetCBg
none SetP %I p n
287 175 420 168 Line
End

Begin %I Text
0 0 0 SetCFg
/Helvetica 12 SetF
[ 1 0 0 1 91 112 ] concat
[
(Exit Data Signature \(DSIGexit\))
] Text
End

Begin %I Text
0 0 0 SetCFg
/Helvetica 12 SetF
[ 1 0 0 1 77 84 ] concat
[
(Entrance Data Signature \(DSIGentr\))
] Text
End

Begin %I Text
0 0 0 SetCFg
/Helvetica 12 SetF
[ 1 0 0 1 469 343 ] concat
[
(Source Address \(Hsrc\))
] Text
End

Begin %I Text
0 0 0 SetCFg
/Helvetica 12 SetF
[ 1 0 0 1 462 315 ] concat
[
(Destination Address \(Hdst\))
] Text
End

Begin %I Text
0 0 0 SetCFg
/Helvetica 12 SetF
[ 1 0 0 1 469 287 ] concat
[
(Signature Key \(KSIGexit\))
] Text
End

Begin %I Text
0 0 0 SetCFg
/Helvetica 12 SetF
[ 1 0 0 1 490 259 ] concat
[
(Expiration time)
] Text
End

Begin %I Text
0 0 0 SetCFg
/Helvetica 14 SetF
[ 1 0 0 1 126 308 ] concat
[
(Encrypted)
(Exit)
(Visa)
] Text
End

Begin %I Text
0 0 0 SetCFg
/Helvetica 14 SetF
[ 1 0 0 1 126 196 ] concat
[
(Encrypted)
(Entrance)
(Visa)
] Text
End

Begin %I Text
0 0 0 SetCFg
/Helvetica 12 SetF
[ 1 0 0 1 35 322 ] concat
[
(4-19)
] Text
End

Begin %I Text
0 0 0 SetCFg
/Helvetica 12 SetF
[ 1 0 0 1 28 210 ] concat
[
(20-35)
] Text
End

Begin %I Text
0 0 0 SetCFg
/Helvetica 12 SetF
[ 1 0 0 1 28 112 ] concat
[
(36-39)
] Text
End

Begin %I Text
0 0 0 SetCFg
/Helvetica 12 SetF
[ 1 0 0 1 28 84 ] concat
[
(40-43)
] Text
End

Begin %I Text
0 0 0 SetCFg
/Helvetica 12 SetF
[ 1 0 0 1 357 315 ] concat
[
()
] Text
End

Begin %I Text
0 0 0 SetCFg
/Helvetica 12 SetF
[ 1 0 0 1 315 322 ] concat
[
(Encrypted with)
(Kpriv of Osrc)
] Text
End

Begin %I Text
0 0 0 SetCFg
/Helvetica 12 SetF
[ 1 0 0 1 315 203 ] concat
[
(Encrypted with)
(Kpriv of Odst)
] Text
End

Begin %I Text
0 0 0 SetCFg
/Helvetica 12 SetF
[ 1 0 0 1 469 217 ] concat
[
(Source Address \(Hsrc\))
] Text
End

Begin %I Text
0 0 0 SetCFg
/Helvetica 12 SetF
[ 1 0 0 1 462 189 ] concat
[
(Destination Address \(Hdst\))
] Text
End

Begin %I Text
0 0 0 SetCFg
/Helvetica 12 SetF
[ 1 0 0 1 490 133 ] concat
[
(Expiration time)
] Text
End

Begin %I Text
0 0 0 SetCFg
/Helvetica 12 SetF
[ 1 0 0 1 462 161 ] concat
[
(Signature Key \(KSIGentr\))
] Text
End

End %I eop

End %I eop


%%EndDocument
 240 1508 a
 endTexFig
640 3106 a Fo(Figure)15 b(2:)k(Visa)c(Option)g(De\014nitions)952
2828 y(22)p eop
%%Page: 23 23
bop 240 550 a
 21313290 21313290 4999413 460472 36837785 14669332 startTexFig
240 550 a
%%BeginDocument: labfig2.idraw

/arrowHeight 8 def
/arrowWidth 4 def
/none null def
/numGraphicParameters 17 def
/stringLimit 65535 def

/Begin {
save
numGraphicParameters dict begin
} def

/End {
end
restore
} def

/SetB {
dup type /nulltype eq {
pop
false /brushRightArrow idef
false /brushLeftArrow idef
true /brushNone idef
} {
/brushDashOffset idef
/brushDashArray idef
0 ne /brushRightArrow idef
0 ne /brushLeftArrow idef
/brushWidth idef
false /brushNone idef
} ifelse
} def

/SetCFg {
/fgred idef
/fggreen idef
/fgblue idef
} def

/SetCBg {
/bgred idef
/bggreen idef
/bgblue idef
} def

/SetF {
/printSize idef
/printFont idef
} def

/SetP {
dup type /nulltype eq {
pop true /patternNone idef
} {
/patternGrayLevel idef
patternGrayLevel -1 eq {
/patternString idef
} if
false /patternNone idef
} ifelse
} def

/BSpl {
0 begin
storexyn
newpath
n 1 gt {
0 0 0 0 0 0 1 1 true subspline
n 2 gt {
0 0 0 0 1 1 2 2 false subspline
1 1 n 3 sub {
/i exch def
i 1 sub dup i dup i 1 add dup i 2 add dup false subspline
} for
n 3 sub dup n 2 sub dup n 1 sub dup 2 copy false subspline
} if
n 2 sub dup n 1 sub dup 2 copy 2 copy false subspline
patternNone not brushLeftArrow not brushRightArrow not and and { ifill } if
brushNone not { istroke } if
0 0 1 1 leftarrow
n 2 sub dup n 1 sub dup rightarrow
} if
end
} dup 0 4 dict put def

/Circ {
newpath
0 360 arc
patternNone not { ifill } if
brushNone not { istroke } if
} def

/CBSpl {
0 begin
dup 2 gt {
storexyn
newpath
n 1 sub dup 0 0 1 1 2 2 true subspline
1 1 n 3 sub {
/i exch def
i 1 sub dup i dup i 1 add dup i 2 add dup false subspline
} for
n 3 sub dup n 2 sub dup n 1 sub dup 0 0 false subspline
n 2 sub dup n 1 sub dup 0 0 1 1 false subspline
patternNone not { ifill } if
brushNone not { istroke } if
} {
Poly
} ifelse
end
} dup 0 4 dict put def

/Elli {
0 begin
newpath
4 2 roll
translate
scale
0 0 1 0 360 arc
patternNone not { ifill } if
brushNone not { istroke } if
end
} dup 0 1 dict put def

/Line {
0 begin
2 storexyn
newpath
x 0 get y 0 get moveto
x 1 get y 1 get lineto
brushNone not { istroke } if
0 0 1 1 leftarrow
0 0 1 1 rightarrow
end
} dup 0 4 dict put def

/MLine {
0 begin
storexyn
newpath
n 1 gt {
x 0 get y 0 get moveto
1 1 n 1 sub {
/i exch def
x i get y i get lineto
} for
patternNone not brushLeftArrow not brushRightArrow not and and { ifill } if
brushNone not { istroke } if
0 0 1 1 leftarrow
n 2 sub dup n 1 sub dup rightarrow
} if
end
} dup 0 4 dict put def

/Poly {
3 1 roll
newpath
moveto
-1 add
{ lineto } repeat
closepath
patternNone not { ifill } if
brushNone not { istroke } if
} def

/Rect {
0 begin
/t exch def
/r exch def
/b exch def
/l exch def
newpath
l b moveto
l t lineto
r t lineto
r b lineto
closepath
patternNone not { ifill } if
brushNone not { istroke } if
end
} dup 0 4 dict put def

/Text {
ishow
} def

/idef {
dup where { pop pop pop } { exch def } ifelse
} def

/ifill {
0 begin
gsave
patternGrayLevel -1 ne {
fgred bgred fgred sub patternGrayLevel mul add
fggreen bggreen fggreen sub patternGrayLevel mul add
fgblue bgblue fgblue sub patternGrayLevel mul add setrgbcolor
eofill
} {
eoclip
originalCTM setmatrix
pathbbox /t exch def /r exch def /b exch def /l exch def
/w r l sub ceiling cvi def
/h t b sub ceiling cvi def
/imageByteWidth w 8 div ceiling cvi def
/imageHeight h def
bgred bggreen bgblue setrgbcolor
eofill
fgred fggreen fgblue setrgbcolor
l b translate w h scale
w h true [w 0 0 h neg 0 h] { patternproc } imagemask
} ifelse
grestore
end
} dup 0 8 dict put def

/istroke {
gsave
brushDashOffset -1 eq {
[] 0 setdash
1 setgray
} {
brushDashArray brushDashOffset setdash
fgred fggreen fgblue setrgbcolor
} ifelse
brushWidth setlinewidth
originalCTM setmatrix
stroke
grestore
} def

/ishow {
0 begin
gsave
0 2.5 originalCTM dtransform idtransform
/yoff exch def
/xoff exch def
printFont /Courier ne printSize 10 ne and { xoff yoff translate } if
printFont findfont printSize scalefont setfont
fgred fggreen fgblue setrgbcolor
/vertoffset printSize neg def {
0 vertoffset moveto show
/vertoffset vertoffset printSize sub def
} forall
grestore
end
} dup 0 3 dict put def

/patternproc {
0 begin
/patternByteLength patternString length def
/patternHeight patternByteLength 8 mul sqrt cvi def
/patternWidth patternHeight def
/patternByteWidth patternWidth 8 idiv def
/imageByteMaxLength imageByteWidth imageHeight mul
stringLimit patternByteWidth sub min def
/imageMaxHeight imageByteMaxLength imageByteWidth idiv patternHeight idiv
patternHeight mul patternHeight max def
/imageHeight imageHeight imageMaxHeight sub store
/imageString imageByteWidth imageMaxHeight mul patternByteWidth add string def
0 1 imageMaxHeight 1 sub {
/y exch def
/patternRow y patternByteWidth mul patternByteLength mod def
/patternRowString patternString patternRow patternByteWidth getinterval def
/imageRow y imageByteWidth mul def
0 patternByteWidth imageByteWidth 1 sub {
/x exch def
imageString imageRow x add patternRowString putinterval
} for
} for
imageString
end
} dup 0 12 dict put def

/min {
dup 3 2 roll dup 4 3 roll lt { exch } if pop
} def

/max {
dup 3 2 roll dup 4 3 roll gt { exch } if pop
} def

/arrowhead {
0 begin
transform originalCTM itransform
/taily exch def
/tailx exch def
transform originalCTM itransform
/tipy exch def
/tipx exch def
/dy tipy taily sub def
/dx tipx tailx sub def
/angle dx 0 ne dy 0 ne or { dy dx atan } { 90 } ifelse def
gsave
originalCTM setmatrix
tipx tipy translate
angle rotate
newpath
0 0 moveto
arrowHeight neg arrowWidth 2 div lineto
arrowHeight neg arrowWidth 2 div neg lineto
closepath
patternNone not { ifill } if
brushNone not { istroke } if
grestore
end
} dup 0 7 dict put def

/leftarrow {
0 begin
y exch get /taily exch def
x exch get /tailx exch def
y exch get /tipy exch def
x exch get /tipx exch def
brushLeftArrow { tipx tipy tailx taily arrowhead } if
end
} dup 0 4 dict put def

/rightarrow {
0 begin
y exch get /tipy exch def
x exch get /tipx exch def
y exch get /taily exch def
x exch get /tailx exch def
brushRightArrow { tipx tipy tailx taily arrowhead } if
end
} dup 0 4 dict put def

/midpoint {
0 begin
/y1 exch def
/x1 exch def
/y0 exch def
/x0 exch def
x0 x1 add 2 div
y0 y1 add 2 div
end
} dup 0 4 dict put def

/thirdpoint {
0 begin
/y1 exch def
/x1 exch def
/y0 exch def
/x0 exch def
x0 2 mul x1 add 3 div
y0 2 mul y1 add 3 div
end
} dup 0 4 dict put def

/subspline {
0 begin
/movetoNeeded exch def
y exch get /y3 exch def
x exch get /x3 exch def
y exch get /y2 exch def
x exch get /x2 exch def
y exch get /y1 exch def
x exch get /x1 exch def
y exch get /y0 exch def
x exch get /x0 exch def
x1 y1 x2 y2 thirdpoint
/p1y exch def
/p1x exch def
x2 y2 x1 y1 thirdpoint
/p2y exch def
/p2x exch def
x1 y1 x0 y0 thirdpoint
p1x p1y midpoint
/p0y exch def
/p0x exch def
x2 y2 x3 y3 thirdpoint
p2x p2y midpoint
/p3y exch def
/p3x exch def
movetoNeeded { p0x p0y moveto } if
p1x p1y p2x p2y p3x p3y curveto
end
} dup 0 17 dict put def

/storexyn {
/n exch def
/y n array def
/x n array def
n 1 sub -1 0 {
/i exch def
y i 3 2 roll put
x i 3 2 roll put
} for
} def



Begin
[ 0.923077 0 0 0.923077 0 0 ] concat
/originalCTM matrix currentmatrix def

Begin %I Pict
[ 0.818182 0 0 0.818182 62.7273 -28.8182 ] concat

Begin %I Rect
none SetB %I b n
0 0 0 SetCFg
1 1 1 SetCBg
0 SetP
28 198 636 204 Rect
End

Begin %I Rect
2 0 0 [] 0 SetB
0 0 0 SetCFg
1 1 1 SetCBg
none SetP %I p n
87 327 87 327 Rect
End

Begin %I Rect
2 0 0 [] 0 SetB
0 0 0 SetCFg
1 1 1 SetCBg
none SetP %I p n
[ 1 0 0 1 21 0 ] concat
49 98 91 140 Rect
End

Begin %I Rect
2 0 0 [] 0 SetB
0 0 0 SetCFg
1 1 1 SetCBg
none SetP %I p n
[ 1 0 0 1 28 0 ] concat
105 91 161 147 Rect
End

Begin %I Poly
2 0 0 [] 0 SetB
0 0 0 SetCFg
1 1 1 SetCBg
none SetP %I p n
[ 1 0 0 1 21 0 ] concat
189 119
217 147
245 147
273 119
245 91
217 91
210 98
7 Poly
End

Begin %I Rect
2 0 0 [] 0 SetB
0 0 0 SetCFg
1 1 1 SetCBg
none SetP %I p n
[ -1 0 0 -1 637 238 ] concat
49 98 91 140 Rect
End

Begin %I Rect
2 0 0 [] 0 SetB
0 0 0 SetCFg
1 1 1 SetCBg
none SetP %I p n
[ -1 0 0 -1 630 238 ] concat
105 91 161 147 Rect
End

Begin %I Poly
2 0 0 [] 0 SetB
0 0 0 SetCFg
1 1 1 SetCBg
none SetP %I p n
[ -1 0 0 -1 637 238 ] concat
189 119
217 147
245 147
273 119
245 91
217 91
210 98
7 Poly
End

Begin %I Line
2 0 0 [] 0 SetB
0 0 0 SetCFg
1 1 1 SetCBg
none SetP %I p n
[ 1 0 0 1 21 0 ] concat
70 203 70 140 Line
End

Begin %I Line
2 0 0 [] 0 SetB
0 0 0 SetCFg
1 1 1 SetCBg
none SetP %I p n
[ 1 0 0 1 21 0 ] concat
140 203 140 147 Line
End

Begin %I Line
2 0 0 [] 0 SetB
0 0 0 SetCFg
1 1 1 SetCBg
none SetP %I p n
[ 1 0 0 1 21 0 ] concat
231 203 231 147 Line
End

Begin %I Line
2 0 0 [] 0 SetB
0 0 0 SetCFg
1 1 1 SetCBg
none SetP %I p n
[ 1 0 0 1 -35 0 ] concat
532 203 532 147 Line
End

Begin %I Line
2 0 0 [] 0 SetB
0 0 0 SetCFg
1 1 1 SetCBg
none SetP %I p n
[ 1 0 0 1 -35 0 ] concat
602 203 602 140 Line
End

Begin %I Line
2 0 0 [] 0 SetB
0 0 0 SetCFg
1 1 1 SetCBg
none SetP %I p n
[ 1 0 0 1 -35 0 ] concat
441 203 441 147 Line
End

Begin %I Elli
1 0 0 [2 2 2 2 2 2 2 2] 15 SetB
0 0 0 SetCFg
1 1 1 SetCBg
none SetP %I p n
[ 1 0 0 1 14 -7 ] concat
168 119 140 63 Elli
End

Begin %I Text
0 0 0 SetCFg
/Helvetica 14 SetF
[ 1 0 0 1 217 224 ] concat
[
(Ethernet)
] Text
End

Begin %I Text
0 0 0 SetCFg
/Helvetica 14 SetF
[ 1 0 0 1 119 84 ] concat
[
(Logical Organization A)
] Text
End

Begin %I Text
0 0 0 SetCFg
/Helvetica 14 SetF
[ 1 0 0 1 84 126 ] concat
[
(Ha)
] Text
End

Begin %I Text
0 0 0 SetCFg
/Helvetica 14 SetF
[ 1 0 0 1 147 126 ] concat
[
(ACSa)
] Text
End

Begin %I Text
0 0 0 SetCFg
/Helvetica 14 SetF
[ 1 0 0 1 231 126 ] concat
[
(GWa)
] Text
End

Begin %I Text
0 0 0 SetCFg
/Helvetica 14 SetF
[ 1 0 0 1 392 126 ] concat
[
(GWb)
] Text
End

Begin %I Text
0 0 0 SetCFg
/Helvetica 14 SetF
[ 1 0 0 1 483 126 ] concat
[
(ACSb)
] Text
End

Begin %I Text
0 0 0 SetCFg
/Helvetica 14 SetF
[ 1 0 0 1 553 126 ] concat
[
(Hb)
] Text
End

Begin %I Elli
1 0 0 [2 2 2 2 2 2 2 2] 15 SetB
0 0 0 SetCFg
1 1 1 SetCBg
none SetP %I p n
[ 1 0 0 1 315 -7 ] concat
168 119 140 63 Elli
End

Begin %I Text
0 0 0 SetCFg
/Helvetica 14 SetF
[ 1 0 0 1 420 84 ] concat
[
(Logical Organization B)
] Text
End

Begin %I BSpl
1 0 1 [1 1 1 5 1 1 1 5] 16 SetB
0 0 0 SetCFg
1 1 1 SetCBg
0 SetP
98 140
119 210
119 210
203 210
203 210
224 133
6 BSpl
End

Begin %I BSpl
1 0 1 [1 1 1 5 1 1 1 5] 16 SetB
0 0 0 SetCFg
1 1 1 SetCBg
0 SetP
434 133
455 210
455 210
532 210
532 210
560 140
6 BSpl
End

Begin %I BSpl
1 0 1 [1 1 1 5 1 1 1 5] 16 SetB
0 0 0 SetCFg
1 1 1 SetCBg
0 SetP
280 133
308 210
308 210
357 210
357 210
378 133
6 BSpl
End

End %I eop

End %I eop


%%EndDocument
 240 550 a
 endTexFig
41 2148 a Fo(Figure)15 b(3:)k(Lab)q(oratory)c(con\014guration.)k(Logically)13
b(separate)i(net)o(w)o(orks)f(on)h(a)g(single)g(ph)o(ysical)f(net)o(w)o(ork.)
952 2828 y(23)p eop
%%Page: 24 24
bop 240 550 a
 21313290 21313290 5196759 460472 35785277 14077296 startTexFig
240 550 a
%%BeginDocument: uscucla.idraw

/arrowHeight 8 def
/arrowWidth 4 def
/none null def
/numGraphicParameters 17 def
/stringLimit 65535 def

/Begin {
save
numGraphicParameters dict begin
} def

/End {
end
restore
} def

/SetB {
dup type /nulltype eq {
pop
false /brushRightArrow idef
false /brushLeftArrow idef
true /brushNone idef
} {
/brushDashOffset idef
/brushDashArray idef
0 ne /brushRightArrow idef
0 ne /brushLeftArrow idef
/brushWidth idef
false /brushNone idef
} ifelse
} def

/SetCFg {
/fgred idef
/fggreen idef
/fgblue idef
} def

/SetCBg {
/bgred idef
/bggreen idef
/bgblue idef
} def

/SetF {
/printSize idef
/printFont idef
} def

/SetP {
dup type /nulltype eq {
pop true /patternNone idef
} {
/patternGrayLevel idef
patternGrayLevel -1 eq {
/patternString idef
} if
false /patternNone idef
} ifelse
} def

/BSpl {
0 begin
storexyn
newpath
n 1 gt {
0 0 0 0 0 0 1 1 true subspline
n 2 gt {
0 0 0 0 1 1 2 2 false subspline
1 1 n 3 sub {
/i exch def
i 1 sub dup i dup i 1 add dup i 2 add dup false subspline
} for
n 3 sub dup n 2 sub dup n 1 sub dup 2 copy false subspline
} if
n 2 sub dup n 1 sub dup 2 copy 2 copy false subspline
patternNone not brushLeftArrow not brushRightArrow not and and { ifill } if
brushNone not { istroke } if
0 0 1 1 leftarrow
n 2 sub dup n 1 sub dup rightarrow
} if
end
} dup 0 4 dict put def

/Circ {
newpath
0 360 arc
patternNone not { ifill } if
brushNone not { istroke } if
} def

/CBSpl {
0 begin
dup 2 gt {
storexyn
newpath
n 1 sub dup 0 0 1 1 2 2 true subspline
1 1 n 3 sub {
/i exch def
i 1 sub dup i dup i 1 add dup i 2 add dup false subspline
} for
n 3 sub dup n 2 sub dup n 1 sub dup 0 0 false subspline
n 2 sub dup n 1 sub dup 0 0 1 1 false subspline
patternNone not { ifill } if
brushNone not { istroke } if
} {
Poly
} ifelse
end
} dup 0 4 dict put def

/Elli {
0 begin
newpath
4 2 roll
translate
scale
0 0 1 0 360 arc
patternNone not { ifill } if
brushNone not { istroke } if
end
} dup 0 1 dict put def

/Line {
0 begin
2 storexyn
newpath
x 0 get y 0 get moveto
x 1 get y 1 get lineto
brushNone not { istroke } if
0 0 1 1 leftarrow
0 0 1 1 rightarrow
end
} dup 0 4 dict put def

/MLine {
0 begin
storexyn
newpath
n 1 gt {
x 0 get y 0 get moveto
1 1 n 1 sub {
/i exch def
x i get y i get lineto
} for
patternNone not brushLeftArrow not brushRightArrow not and and { ifill } if
brushNone not { istroke } if
0 0 1 1 leftarrow
n 2 sub dup n 1 sub dup rightarrow
} if
end
} dup 0 4 dict put def

/Poly {
3 1 roll
newpath
moveto
-1 add
{ lineto } repeat
closepath
patternNone not { ifill } if
brushNone not { istroke } if
} def

/Rect {
0 begin
/t exch def
/r exch def
/b exch def
/l exch def
newpath
l b moveto
l t lineto
r t lineto
r b lineto
closepath
patternNone not { ifill } if
brushNone not { istroke } if
end
} dup 0 4 dict put def

/Text {
ishow
} def

/idef {
dup where { pop pop pop } { exch def } ifelse
} def

/ifill {
0 begin
gsave
patternGrayLevel -1 ne {
fgred bgred fgred sub patternGrayLevel mul add
fggreen bggreen fggreen sub patternGrayLevel mul add
fgblue bgblue fgblue sub patternGrayLevel mul add setrgbcolor
eofill
} {
eoclip
originalCTM setmatrix
pathbbox /t exch def /r exch def /b exch def /l exch def
/w r l sub ceiling cvi def
/h t b sub ceiling cvi def
/imageByteWidth w 8 div ceiling cvi def
/imageHeight h def
bgred bggreen bgblue setrgbcolor
eofill
fgred fggreen fgblue setrgbcolor
l b translate w h scale
w h true [w 0 0 h neg 0 h] { patternproc } imagemask
} ifelse
grestore
end
} dup 0 8 dict put def

/istroke {
gsave
brushDashOffset -1 eq {
[] 0 setdash
1 setgray
} {
brushDashArray brushDashOffset setdash
fgred fggreen fgblue setrgbcolor
} ifelse
brushWidth setlinewidth
originalCTM setmatrix
stroke
grestore
} def

/ishow {
0 begin
gsave
0 2.5 originalCTM dtransform idtransform
/yoff exch def
/xoff exch def
printFont /Courier ne printSize 10 ne and { xoff yoff translate } if
printFont findfont printSize scalefont setfont
fgred fggreen fgblue setrgbcolor
/vertoffset printSize neg def {
0 vertoffset moveto show
/vertoffset vertoffset printSize sub def
} forall
grestore
end
} dup 0 3 dict put def

/patternproc {
0 begin
/patternByteLength patternString length def
/patternHeight patternByteLength 8 mul sqrt cvi def
/patternWidth patternHeight def
/patternByteWidth patternWidth 8 idiv def
/imageByteMaxLength imageByteWidth imageHeight mul
stringLimit patternByteWidth sub min def
/imageMaxHeight imageByteMaxLength imageByteWidth idiv patternHeight idiv
patternHeight mul patternHeight max def
/imageHeight imageHeight imageMaxHeight sub store
/imageString imageByteWidth imageMaxHeight mul patternByteWidth add string def
0 1 imageMaxHeight 1 sub {
/y exch def
/patternRow y patternByteWidth mul patternByteLength mod def
/patternRowString patternString patternRow patternByteWidth getinterval def
/imageRow y imageByteWidth mul def
0 patternByteWidth imageByteWidth 1 sub {
/x exch def
imageString imageRow x add patternRowString putinterval
} for
} for
imageString
end
} dup 0 12 dict put def

/min {
dup 3 2 roll dup 4 3 roll lt { exch } if pop
} def

/max {
dup 3 2 roll dup 4 3 roll gt { exch } if pop
} def

/arrowhead {
0 begin
transform originalCTM itransform
/taily exch def
/tailx exch def
transform originalCTM itransform
/tipy exch def
/tipx exch def
/dy tipy taily sub def
/dx tipx tailx sub def
/angle dx 0 ne dy 0 ne or { dy dx atan } { 90 } ifelse def
gsave
originalCTM setmatrix
tipx tipy translate
angle rotate
newpath
0 0 moveto
arrowHeight neg arrowWidth 2 div lineto
arrowHeight neg arrowWidth 2 div neg lineto
closepath
patternNone not { ifill } if
brushNone not { istroke } if
grestore
end
} dup 0 7 dict put def

/leftarrow {
0 begin
y exch get /taily exch def
x exch get /tailx exch def
y exch get /tipy exch def
x exch get /tipx exch def
brushLeftArrow { tipx tipy tailx taily arrowhead } if
end
} dup 0 4 dict put def

/rightarrow {
0 begin
y exch get /tipy exch def
x exch get /tipx exch def
y exch get /taily exch def
x exch get /tailx exch def
brushRightArrow { tipx tipy tailx taily arrowhead } if
end
} dup 0 4 dict put def

/midpoint {
0 begin
/y1 exch def
/x1 exch def
/y0 exch def
/x0 exch def
x0 x1 add 2 div
y0 y1 add 2 div
end
} dup 0 4 dict put def

/thirdpoint {
0 begin
/y1 exch def
/x1 exch def
/y0 exch def
/x0 exch def
x0 2 mul x1 add 3 div
y0 2 mul y1 add 3 div
end
} dup 0 4 dict put def

/subspline {
0 begin
/movetoNeeded exch def
y exch get /y3 exch def
x exch get /x3 exch def
y exch get /y2 exch def
x exch get /x2 exch def
y exch get /y1 exch def
x exch get /x1 exch def
y exch get /y0 exch def
x exch get /x0 exch def
x1 y1 x2 y2 thirdpoint
/p1y exch def
/p1x exch def
x2 y2 x1 y1 thirdpoint
/p2y exch def
/p2x exch def
x1 y1 x0 y0 thirdpoint
p1x p1y midpoint
/p0y exch def
/p0x exch def
x2 y2 x3 y3 thirdpoint
p2x p2y midpoint
/p3y exch def
/p3x exch def
movetoNeeded { p0x p0y moveto } if
p1x p1y p2x p2y p3x p3y curveto
end
} dup 0 17 dict put def

/storexyn {
/n exch def
/y n array def
/x n array def
n 1 sub -1 0 {
/i exch def
y i 3 2 roll put
x i 3 2 roll put
} for
} def



Begin
[ 0.923077 0 0 0.923077 0 0 ] concat
/originalCTM matrix currentmatrix def

Begin %I Pict
[ 0.794304 0 0 0.794304 67.9367 -9.44388 ] concat

Begin %I CBSpl
2 0 0 [] 0 SetB
0 0 0 SetCFg
1 1 1 SetCBg
none SetP %I p n
[ 0.805495 0 0 0.805495 117.155 -419.559 ] concat
183 681
216 699
262 682
302 708
360 694
384 657
373 621
325 577
279 571
234 551
192 565
164 576
182 613
155 630
142 652
15 CBSpl
End

Begin %I CBSpl
2 0 0 [] 0 SetB
0 0 0 SetCFg
1 1 1 SetCBg
none SetP %I p n
[ 0.805495 0 0 0.805495 25.728 38.8988 ] concat
600 235
562 214
512 212
506 174
528 148
546 93
598 117
612 164
603 192
608 220
10 CBSpl
End

Begin %I Rect
2 0 0 [] 0 SetB
0 0 0 SetCFg
1 1 1 SetCBg
none SetP %I p n
[ 1 0 0 1 0 -28 ] concat
28 126 56 154 Rect
End

Begin %I Rect
2 0 0 [] 0 SetB
0 0 0 SetCFg
1 1 1 SetCBg
none SetP %I p n
[ 1 0 0 1 -1 -22 ] concat
616 126 644 154 Rect
End

Begin %I Rect
2 0 0 [] 0 SetB
0 0 0 SetCFg
1 1 1 SetCBg
none SetP %I p n
[ 1 0 0 1 69 -60 ] concat
532 224 574 266 Rect
End

Begin %I Rect
2 0 0 [] 0 SetB
0 0 0 SetCFg
1 1 1 SetCBg
none SetP %I p n
[ 1 0 0 1 -62 -81 ] concat
91 231 133 273 Rect
End

Begin %I Poly
2 0 0 [] 0 SetB
0 0 0 SetCFg
1 1 1 SetCBg
none SetP %I p n
[ 1 0 0 1 42 7 ] concat
105 84
133 84
147 63
133 42
105 42
91 63
105 84
7 Poly
End

Begin %I Poly
2 0 0 [] 0 SetB
0 0 0 SetCFg
1 1 1 SetCBg
none SetP %I p n
[ 1 0 0 1 399 7 ] concat
105 84
133 84
147 63
133 42
105 42
91 63
105 84
7 Poly
End

Begin %I Line
1 0 0 [] 0 SetB
0 0 0 SetCFg
1 1 1 SetCBg
none SetP %I p n
238 273 238 273 Line
End

Begin %I Line
1 0 0 [] 0 SetB
0 0 0 SetCFg
1 1 1 SetCBg
none SetP %I p n
238 266 238 266 Line
End

Begin %I Line
1 0 0 [] 0 SetB
0 0 0 SetCFg
1 1 1 SetCBg
none SetP %I p n
189 70 258 70 Line
End

Begin %I Line
1 0 0 [] 0 SetB
0 0 0 SetCFg
1 1 1 SetCBg
none SetP %I p n
490 70 405 70 Line
End

Begin %I CBSpl
2 0 0 [] 0 SetB
0 0 0 SetCFg
1 1 1 SetCBg
none SetP %I p n
[ 0.805495 0 0 -0.805495 -259.272 304.101 ] concat
586 219
566 237
519 201
506 174
514 135
539 75
606 103
593 162
602 193
596 212
10 CBSpl
End

Begin %I Poly
2 0 0 [] 0 SetB
0 0 0 SetCFg
1 1 1 SetCBg
none SetP %I p n
[ 1 0 0 1 -66 170 ] concat
105 84
133 84
147 63
133 42
105 42
91 63
105 84
7 Poly
End

Begin %I Poly
2 0 0 [] 0 SetB
0 0 0 SetCFg
1 1 1 SetCBg
none SetP %I p n
[ 1 0 0 1 41 205 ] concat
105 84
133 84
147 63
133 42
105 42
91 63
105 84
7 Poly
End

Begin %I Poly
2 0 0 [] 0 SetB
0 0 0 SetCFg
1 1 1 SetCBg
none SetP %I p n
[ 1 0 0 1 379 198 ] concat
105 84
133 84
147 63
133 42
105 42
91 63
105 84
7 Poly
End

Begin %I Poly
2 0 0 [] 0 SetB
0 0 0 SetCFg
1 1 1 SetCBg
none SetP %I p n
[ 1 0 0 1 498 187 ] concat
105 84
133 84
147 63
133 42
105 42
91 63
105 84
7 Poly
End

Begin %I Rect
1 0 0 [] 0 SetB
0 0 0 SetCFg
1 1 1 SetCBg
0 SetP
[ 1 0 0 1 10 0 ] concat
92 42 96 302 Rect
End

Begin %I Rect
1 0 0 [] 0 SetB
0 0 0 SetCFg
1 1 1 SetCBg
0 SetP
[ 1 0 0 1 476 -1 ] concat
92 42 96 302 Rect
End

Begin %I Line
1 0 0 [] 0 SetB
0 0 0 SetCFg
1 1 1 SetCBg
0 SetP
[ 1 0 0 1 0 -2 ] concat
132 270 106 270 Line
End

Begin %I Line
1 0 0 [] 0 SetB
0 0 0 SetCFg
1 1 1 SetCBg
0 SetP
[ 1 0 0 1 0 -1 ] concat
81 234 103 234 Line
End

Begin %I Line
1 0 0 [] 0 SetB
0 0 0 SetCFg
1 1 1 SetCBg
0 SetP
160 247 173 227 Line
End

Begin %I Line
1 0 0 [] 0 SetB
0 0 0 SetCFg
1 1 1 SetCBg
0 SetP
[ 1 0 0 1 -1 0 ] concat
72 173 103 173 Line
End

Begin %I Line
1 0 0 [] 0 SetB
0 0 0 SetCFg
1 1 1 SetCBg
0 SetP
56 113 103 113 Line
End

Begin %I Line
1 0 0 [] 0 SetB
0 0 0 SetCFg
1 1 1 SetCBg
0 SetP
[ 1 0 0 1 0 -1 ] concat
175 132 162 92 Line
End

Begin %I Line
1 0 0 [] 0 SetB
0 0 0 SetCFg
1 1 1 SetCBg
0 SetP
500 240 486 217 Line
End

Begin %I Line
1 0 0 [] 0 SetB
0 0 0 SetCFg
1 1 1 SetCBg
0 SetP
493 129 521 91 Line
End

Begin %I Line
1 0 0 [] 0 SetB
0 0 0 SetCFg
1 1 1 SetCBg
0 SetP
[ 1 0 0 1 -1 1 ] concat
527 260 570 260 Line
End

Begin %I Line
1 0 0 [] 0 SetB
0 0 0 SetCFg
1 1 1 SetCBg
0 SetP
[ 1 0 0 1 -1 1 ] concat
590 249 573 249 Line
End

Begin %I Line
1 0 0 [] 0 SetB
0 0 0 SetCFg
1 1 1 SetCBg
0 SetP
601 184 572 184 Line
End

Begin %I Line
1 0 0 [] 0 SetB
0 0 0 SetCFg
1 1 1 SetCBg
0 SetP
615 118 572 118 Line
End

Begin %I Text
0 0 0 SetCFg
/Helvetica 14 SetF
[ 1 0 0 1 294 98 ] concat
[
(Internet)
] Text
End

Begin %I Text
0 0 0 SetCFg
/Helvetica 14 SetF
[ 1 0 0 1 163 198 ] concat
[
(USC)
(Campus)
] Text
End

Begin %I Text
0 0 0 SetCFg
/Helvetica 14 SetF
[ 1 0 0 1 456 196 ] concat
[
(UCLA)
(Campus)
] Text
End

Begin %I Text
0 0 0 SetCFg
/Helvetica 12 SetF
[ 1 0 0 1 141 78 ] concat
[
(GWusc)
] Text
End

Begin %I Text
0 0 0 SetCFg
/Helvetica 12 SetF
[ 1 0 0 1 496 78 ] concat
[
(GWucla)
] Text
End

Begin %I Text
0 0 0 SetCFg
/Helvetica 12 SetF
[ 1 0 0 1 608 198 ] concat
[
(ACS)
(ucla)
] Text
End

Begin %I Text
0 0 0 SetCFg
/Helvetica 12 SetF
[ 1 0 0 1 34 183 ] concat
[
(ACS)
(usc)
] Text
End

Begin %I Text
0 0 0 SetCFg
/Helvetica 12 SetF
[ 1 0 0 1 35 120 ] concat
[
(Hx)
] Text
End

Begin %I Text
0 0 0 SetCFg
/Helvetica 12 SetF
[ 1 0 0 1 620 127 ] concat
[
(Hy)
] Text
End

Begin %I Text
0 0 0 SetCFg
/Helvetica 12 SetF
[ 1 0 0 1 30 249 ] concat
[
(   GW)
(visa-usc)
] Text
End

Begin %I Text
0 0 0 SetCFg
/Helvetica 12 SetF
[ 1 0 0 1 140 281 ] concat
[
(   GW)
(lab-usc)
] Text
End

Begin %I Text
0 0 0 SetCFg
/Helvetica 12 SetF
[ 1 0 0 1 477 278 ] concat
[
(   GW)
(lab-ucla)
] Text
End

Begin %I Text
0 0 0 SetCFg
/Helvetica 12 SetF
[ 1 0 0 1 593 268 ] concat
[
(   GW)
(visa-ucla)
] Text
End

End %I eop

End %I eop


%%EndDocument
 240 550 a
 endTexFig
31 2148 a Fo(Figure)14 b(4:)20 b(In)o(ternet)15 b(con\014guration.)k(Ph)o
(ysical)14 b(connections)i(b)q(et)o(w)o(een)f(USC)g(and)h(UCLA)f(visa)g(net)o
(w)o(orks.)952 2828 y(24)p eop
%%Page: 25 25
bop 323 55 1305 2 v 322 112 2 57 v 331 112 V 947 112 V 956
112 V 956 112 V 1064 95 a Fo(Datagram)14 b(Size)h(\(b)o(ytes\))p
1618 112 V 1627 112 V 957 113 671 2 v 322 168 2 57 v 331 168
V 566 151 a(V)l(ersion)p 947 168 V 956 168 V 268 w(16)p 1051
168 V 50 w(64)p 1146 168 V 49 w(250)p 1264 168 V 49 w(500)p
1382 168 V 49 w(750)p 1500 168 V 49 w(900)p 1618 168 V 1627
168 V 323 170 1305 2 v 323 172 V 322 226 2 57 v 331 226 V 356
209 a(Without)f(VISA)p 947 226 V 956 226 V 333 w(10)p 1051
226 V 50 w(11)p 1146 226 V 72 w(21)p 1264 226 V 72 w(32)p 1382
226 V 72 w(42)p 1500 226 V 72 w(49)p 1618 226 V 1627 226 V
323 228 1305 2 v 322 284 2 57 v 331 284 V 356 267 a(Stateful)g(without)g
(encryption)p 947 284 V 956 284 V 75 w(12)p 1051 284 V 50 w(14)p
1146 284 V 72 w(23)p 1264 284 V 72 w(34)p 1382 284 V 72 w(46)p
1500 284 V 72 w(52)p 1618 284 V 1627 284 V 323 286 1305 2 v
322 342 2 57 v 331 342 V 356 325 a(Stateful)p 947 342 V 956
342 V 469 w(19)p 1051 342 V 50 w(23)p 1146 342 V 72 w(40)p
1264 342 V 72 w(61)p 1382 342 V 72 w(83)p 1500 342 V 72 w(95)p
1618 342 V 1627 342 V 323 344 1305 2 v 322 400 2 57 v 331 400
V 356 383 a(Stateless)g(without)g(encryption)p 947 400 V 956
400 V 58 w(14)p 1051 400 V 50 w(16)p 1146 400 V 72 w(25)p 1264
400 V 72 w(36)p 1382 400 V 72 w(48)p 1500 400 V 72 w(54)p 1618
400 V 1627 400 V 323 402 1305 2 v 322 459 2 57 v 331 459 V
356 442 a(Stateless)g(with)h(cac)o(he)g(hits)p 947 459 V 956
459 V 138 w(20)p 1051 459 V 50 w(25)p 1146 459 V 72 w(41)p
1264 459 V 72 w(63)p 1382 459 V 72 w(84)p 1500 459 V 72 w(96)p
1618 459 V 1627 459 V 323 460 1305 2 v 322 517 2 57 v 331 517
V 356 500 a(Stateless)f(with)h(no)g(cac)o(he)g(hits)p 947 517
V 956 517 V 75 w(24)p 1051 517 V 50 w(29)p 1146 517 V 72 w(44)p
1264 517 V 72 w(66)p 1382 517 V 72 w(88)p 1500 517 V 49 w(100)p
1618 517 V 1627 517 V 323 518 1305 2 v 302 596 a(T)l(able)g(1:)k(Round-trip)d
(datagram)e(times)g(for)h(the)g(lab)q(oratory)e(exp)q(erimen)o(t.)375
777 y(Figure)h(5:)20 b(Graphical)14 b(represen)o(tation)g(of)h(the)g(lab)q
(oratory)e(results.)0 910 y Fq(6.3)56 b(Lab)r(oratory)17 b(measuremen)n(ts)0
1035 y Fo(In)11 b(the)g(lab)q(oratory)f(exp)q(erimen)o(t)g(w)o(e)h(measured)g
(the)g(round-trip)g(datagram)e(times)h(for)g(b)q(oth)h(visa)f(and)h(non-visa)
0 1092 y(implemen)o(tations)16 b(under)j(conditions)e(of)h(similar)e(net)o(w)
o(ork)h(load.)27 b(W)l(e)18 b(measured)g(six)g(proto)q(col)f(v)m(ariations:)0
1148 y(no)d(visas,)f(the)g(stateful)g(and)h(stateless)f(visa)g(proto)q(cols)f
(without)h(encryption)h(\(to)e(measure)i(the)g(o)o(v)o(erhead)f(due)0
1205 y(to)k(the)h(additional)f(header)h(length)f(of)h(visa)f(pac)o(k)o
(ets\),)g(the)h(stateful)f(proto)q(col,)g(and)h(the)g(stateless)f(proto)q
(col)0 1261 y(with)e(and)g(without)f(cac)o(he)i(hits.)71 1357
y(After)j(the)g(initial)f(connection)h(setup,)i(datagram)d(round-trip)h(time)
g(w)o(as)g(measured)g(using)h(the)f(ICMP)0 1413 y(Ec)o(ho)j(proto)q(col[19)n
(].)40 b(In)23 b(this)e(proto)q(col,)i(a)e(request)h(datagram)f(tra)o(v)o
(els)f(from)i Fg(H)1492 1420 y Fd(sr)q(c)1564 1413 y Fo(to)g(the)g
Fg(H)1750 1420 y Fd(dst)1799 1413 y Fo(,)h(whic)o(h)0 1470
y(immediately)18 b(returns)h(a)f(reply)h(datagram.)30 b(W)l(e)19
b(used)h(ICMP)e(Ec)o(ho)h(instead)g(of)f(an)h(application)f(proto)q(col)0
1526 y(\(suc)o(h)d(as)g(\014le)f(transfer)h(or)f(remote)g(login\))g(to)g
(isolate,)f(as)i(m)o(uc)o(h)g(as)g(p)q(ossible,)f(the)h(o)o(v)o(erhead)f
(asso)q(ciated)h(with)0 1583 y(the)g(visa)g(proto)q(cols.)71
1678 y(T)l(able)f(1)g(sho)o(ws)g(measured)h(round-trip)g(datagram)e(times)h
(for)g(datagrams)f(of)h(v)m(arying)g(data)g(length.)20 b(The)0
1735 y(results)d(are)g(also)f(presen)o(ted)i(in)f(graphical)f(form)h(in)g
(\014gure)g(5.)26 b(The)18 b(sligh)o(t)e(p)q(erformance)h(adv)m(an)o(tage)g
(of)g(the)0 1791 y(stateful)d(proto)q(col)g(comes)h(from)g(the)g(shorter)g
(header)g(used,)h(compared)f(to)f(the)i(stateless)e(proto)q(col.)71
1887 y(A)j(signi\014can)o(t)g(p)q(ortion)g(of)g(the)g(visa)g(proto)q(col)g(o)
o(v)o(erhead)g(is)g(due)h(to)f(encryption.)27 b(T)l(able)17
b(2)h(summarizes)0 1943 y(the)e(p)q(er-datagram)f(cryptographic)g(costs)h
(for)f(the)h(three)h(v)m(ariations)d(describ)q(ed)j(in)f(sections)f(3)h(and)g
(4.)22 b(Note)0 2000 y(that)15 b(the)h(encryption)g(o)o(v)o(erhead)f(for)g
(the)h(stateless)f(proto)q(col)g(with)g(cac)o(he)h(hits)f(is)h(the)g(same)f
(as)h(that)f(for)g(the)0 2056 y(stateful)i(proto)q(col.)29
b(The)18 b(table)g(giv)o(es)f(one-w)o(a)o(y)h(o)o(v)o(erhead;)h(for)f(the)g
(round-trip)g(measuremen)o(ts)g(w)o(e)g(made,)0 2113 y(t)o(wice)c(as)h(man)o
(y)g(encryptions)g(are)g(p)q(erformed.)71 2208 y(Actual)f(measuremen)o(ts)h
(of)g(the)g(total)f(encryption)h(costs)g(are)f(sho)o(wn)h(in)g(table)g(3.)71
2304 y(These)i(measuremen)o(ts)g(corresp)q(ond)h(closely)f(to)g(calculations)
f(based)i(up)q(on)g(the)f(n)o(um)o(b)q(er)h(of)f(encryption)0
2360 y(op)q(erations.)41 b(F)l(or)23 b(example,)h(a)e(round-trip)g(for)g(a)h
(1)f(Kb)o(yte)h(datagram)e(requires)i(8)f(encryptions;)k(at)c(an)0
2417 y(encryption)13 b(rate)e(of)i(200)e(Kb)o(ytes/second,)i(encrypting)g(8K)
g(b)o(ytes)f(should)g(tak)o(e)g(40)g(ms.)19 b(The)13 b(measured)g(v)m(alue)0
2473 y(is)j(53)h(ms.)25 b(The)17 b(discrepancy)g(comes)g(from)f(p)q
(er-datagram)g(o)o(v)o(erhead)h(in)f(using)h(the)g(encryption)g(hardw)o(are,)
0 2530 y(whic)o(h)h(is)g(not)h(re\015ected)g(in)f(the)h(nominal)e(200)h(Kb)o
(yte/second)h(rate)f(\(measured)g(for)g(encryptions)h(of)f(m)o(uc)o(h)0
2586 y(larger)c(data)h(blo)q(c)o(ks\).)71 2682 y(Since)20 b(it)f(should)g(b)q
(e)i(p)q(ossible)e(to)g(emplo)o(y)g(the)h(AMZ8068)e(DES)h(c)o(hip)h(to)f
(encrypt)h(data)f(at)g(up)h(to)f(1.7)952 2828 y(25)p eop
%%Page: 26 26
bop 259 368 1433 2 v 258 424 2 57 v 267 424 V 818 424 V 827
424 V 826 424 V 1182 407 a Fo(V)l(ersion)p 1682 424 V 1691
424 V 827 426 865 2 v 258 481 2 57 v 267 481 V 442 464 a(Op)q(eration)p
818 481 V 827 481 V 209 w(Stateful)p 1031 481 V 49 w(Stateless)14
b(with)p 1357 481 V 49 w(Stateless)h(with)p 1682 481 V 1691
481 V 258 537 V 267 537 V 818 537 V 827 537 V 1031 537 V 1065
520 a(no)g(cac)o(he)h(hits)p 1357 537 V 97 w(cac)o(he)g(hits)p
1682 537 V 1691 537 V 259 539 1433 2 v 259 541 V 258 595 2
57 v 267 595 V 292 578 a Fg(H)330 585 y Fd(sr)q(c)395 578 y
Fo(creates)f Fg(V)574 585 y Fd(exit)p 818 595 V 826 595 V 912
578 a Fo(X)p 1031 595 V 1357 595 V 1682 595 V 1691 595 V 259
597 1433 2 v 258 653 2 57 v 267 653 V 292 636 a Fg(H)330 643
y Fd(sr)q(c)395 636 y Fo(creates)g Fg(V)574 643 y Fd(entr)p
818 653 V 826 653 V 912 636 a Fo(X)p 1031 653 V 1357 653 V
1682 653 V 1691 653 V 259 655 1433 2 v 258 712 2 57 v 267 712
V 292 695 a Fg(H)330 702 y Fd(sr)q(c)395 695 y Fo(creates)g
Fg(D)q(S)s(I)t(G)677 702 y Fd(exit)p 818 712 V 826 712 V 1031
712 V 1178 695 a Fo(X)p 1357 712 V 291 w(X)p 1682 712 V 1691
712 V 259 713 1433 2 v 258 770 2 57 v 267 770 V 292 753 a Fg(H)330
760 y Fd(sr)q(c)395 753 y Fo(creates)g Fg(D)q(S)s(I)t(G)677
760 y Fd(entr)p 818 770 V 826 770 V 1031 770 V 1178 753 a Fo(X)p
1357 770 V 291 w(X)p 1682 770 V 1691 770 V 259 771 1433 2 v
258 828 2 57 v 267 828 V 292 811 a Fg(GW)371 818 y Fd(exit)449
811 y Fo(c)o(hec)o(ks)g Fg(V)616 818 y Fd(exit)p 818 828 V
826 828 V 912 811 a Fo(X)p 1031 828 V 232 w(X)p 1357 828 V
1682 828 V 1691 828 V 259 829 1433 2 v 258 886 2 57 v 267 886
V 292 869 a Fg(GW)371 876 y Fd(entr)455 869 y Fo(c)o(hec)o(ks)g
Fg(V)622 876 y Fd(entr)p 818 886 V 826 886 V 912 869 a Fo(X)p
1031 886 V 232 w(X)p 1357 886 V 1682 886 V 1691 886 V 259 888
1433 2 v 258 944 2 57 v 267 944 V 292 927 a Fg(GW)371 934 y
Fd(exit)449 927 y Fo(c)o(hec)o(ks)g Fg(D)q(S)s(I)t(G)719 934
y Fd(exit)p 818 944 V 826 944 V 1031 944 V 1178 927 a Fo(X)p
1357 944 V 291 w(X)p 1682 944 V 1691 944 V 259 946 1433 2 v
258 1002 2 57 v 267 1002 V 292 985 a Fg(GW)371 992 y Fd(entr)455
985 y Fo(c)o(hec)o(ks)g Fg(D)q(S)s(I)t(G)725 992 y Fd(entr)p
818 1002 V 826 1002 V 1031 1002 V 1178 985 a Fo(X)p 1357 1002
V 291 w(X)p 1682 1002 V 1691 1002 V 259 1004 1433 2 v 258 1060
2 57 v 267 1060 V 292 1043 a(TOT)l(AL)h(NUMBER)p 818 1060 V
827 1060 V 245 w(4)p 1031 1060 V 242 w(6)p 1357 1060 V 303
w(4)p 1682 1060 V 1691 1060 V 259 1062 1433 2 v 487 1189 a(T)l(able)f(2:)k(P)
o(er-datagram)14 b(cryptographic)g(op)q(erations.)p 388 1908
1175 2 v 387 1964 2 57 v 396 1964 V 696 1947 a(Ov)o(erhead)i(due)g(to)f
(encryption)p 1553 1964 V 1562 1964 V 388 1966 1175 2 v 388
1968 V 387 2023 2 57 v 396 2023 V 995 2023 V 1004 2023 V 1003
2023 V 1029 2006 a(Datagram)e(Size)j(\(in)e(b)o(ytes\))p 1553
2023 V 1562 2023 V 1004 2024 558 2 v 387 2079 2 57 v 396 2079
V 623 2062 a(V)l(ersion)p 995 2079 V 1004 2079 V 259 w(16)p
1099 2079 V 49 w(64)p 1194 2079 V 50 w(500)p 1312 2079 V 149
w(1000)p 1553 2079 V 1562 2079 V 388 2081 1175 2 v 388 2083
V 387 2137 2 57 v 396 2137 V 421 2120 a(Stateful)p 995 2137
V 1004 2137 V 475 w(8)p 1099 2137 V 49 w(10)p 1194 2137 V 72
w(31)p 1312 2137 V 195 w(53)p 1553 2137 V 1562 2137 V 388 2139
1175 2 v 387 2195 2 57 v 396 2195 V 421 2178 a(Stateless)g(with)h(cac)o(he)g
(hits)p 995 2195 V 1004 2195 V 144 w(8)p 1099 2195 V 49 w(10)p
1194 2195 V 72 w(31)p 1312 2195 V 195 w(53)p 1553 2195 V 1562
2195 V 388 2197 1175 2 v 387 2253 2 57 v 396 2253 V 421 2236
a(Stateless)f(with)h(no)g(cac)o(he)h(hits)p 995 2253 V 1004
2253 V 57 w(13)p 1099 2253 V 49 w(15)p 1194 2253 V 72 w(36)p
1312 2253 V 195 w(58)p 1553 2253 V 1562 2253 V 388 2255 1175
2 v 187 2382 a(T)l(able)f(3:)20 b(P)o(er-datagram)13 b(encryption)j(costs)e
(of)h(stateful)f(and)i(stateless)e(visa)g(proto)q(cols.)952
2828 y(26)p eop
%%Page: 27 27
bop 331 55 1288 2 v 330 112 2 57 v 339 112 V 939 112 V 948
112 V 947 112 V 1056 95 a Fo(Datagram)13 b(Size)i(\(b)o(ytes\))p
1609 112 V 1618 112 V 948 113 671 2 v 330 168 2 57 v 339 168
V 566 151 a(V)l(ersion)p 939 168 V 948 168 V 260 w(16)p 1042
168 V 49 w(64)p 1138 168 V 49 w(250)p 1256 168 V 49 w(500)p
1373 168 V 49 w(750)p 1491 168 V 49 w(900)p 1609 168 V 1618
168 V 331 170 1288 2 v 331 172 V 330 226 2 57 v 339 226 V 365
209 a(Stateful)p 939 226 V 948 226 V 452 w(12)p 1042 226 V
49 w(14)p 1138 226 V 72 w(24)p 1256 226 V 72 w(36)p 1373 226
V 72 w(49)p 1491 226 V 72 w(56)p 1609 226 V 1618 226 V 331
228 1288 2 v 330 284 2 57 v 339 284 V 365 267 a(Stateless)f(with)h(no)g(cac)o
(he)g(hits)p 939 284 V 948 284 V 58 w(14)p 1042 284 V 49 w(17)p
1138 284 V 72 w(26)p 1256 284 V 72 w(38)p 1373 284 V 72 w(51)p
1491 284 V 72 w(58)p 1609 284 V 1618 284 V 331 286 1288 2 v
330 342 2 57 v 339 342 V 365 325 a(Stateless)f(with)h(cac)o(he)g(hits)p
939 342 V 948 342 V 121 w(14)p 1042 342 V 49 w(16)p 1138 342
V 72 w(26)p 1256 342 V 72 w(38)p 1373 342 V 72 w(51)p 1491
342 V 72 w(58)p 1609 342 V 1618 342 V 331 344 1288 2 v 331
346 V 0 424 a(T)l(able)g(4:)20 b(Pro)s(jected)15 b(round-trip)g(times)g(for)g
(the)g(lab)q(oratory)f(exp)q(erimen)o(t)i(with)f(1.0)f(Mb)o(yte/sec)h
(encryption)0 480 y(rate.)128 653 y(Figure)f(6:)20 b(Round-trip)15
b(tra)o(v)o(el)f(time)g(across)h(the)g(In)o(ternet)g(for)g(datagrams)f(of)g
(v)m(arying)h(length.)0 786 y(Mb)o(yte/sec.,)22 b(w)o(e)g(also)f(presen)o(t)h
(an)g(estimate,)g(in)g(table)f(6.3,)i(of)e(the)h(round-trip)g(times)f
(attainable)g(with)0 843 y(encryption)c(at)g(the)g(realistically)d
(attainable)i(rate)g(of)h(1.0)f(Mb)o(yte/sec;)i(this)e(illustrates)f(the)j
(imp)q(ortance)e(of)0 899 y(faster)e(DES)h(hardw)o(are.)71
995 y(The)j(connection)g(setup)h(time)f(for)f(the)i(stateful)e(visa)g(proto)q
(col)h(ranged)g(from)f(30)h(to)g(40)f(ms,)i(a)o(v)o(eraging)0
1051 y(ab)q(out)f(33)f(ms.)27 b(This)17 b(n)o(um)o(b)q(er)h(represen)o(ts)g
(the)g(time)f(from)g(when)h(the)g(\014rst)f(unstamp)q(ed)i(datagram)d(is)h
(sen)o(t)0 1108 y(to)f(the)h(time)g(that)f(the)h(visa)f(arriv)o(es)g(at)h
Fg(H)762 1115 y Fd(sr)q(c)812 1108 y Fo(,)g(allo)o(wing)e(stamp)q(ed)i
(datagrams)e(to)i(b)q(e)g(sen)o(t.)25 b(The)18 b(REJECT)0 1164
y(mec)o(hanism)c(is)f(emplo)o(y)o(ed,)h(but)g(the)g(A)o(CS)g(to)f(GW)g(comm)o
(unication)g(is)h(not)f(secured)i(b)o(y)f(encryption)g(or)f(other)0
1221 y(priv)m(acy)i(mec)o(hanisms.)0 1381 y Fq(6.4)56 b(In)n(ternet)18
b(measuremen)n(ts)0 1506 y Fo(The)d(lab)q(oratory)f(Ethernet)g(has)h(higher)g
(bandwidth,)g(and)g(is)g(more)f(ligh)o(tly)f(loaded,)i(than)g(the)g(t)o
(ypical)f(in)o(ter-)0 1563 y(organizational)i(net)o(w)o(ork.)30
b(Therefore,)19 b(w)o(e)f(also)g(conducted)i(exp)q(erimen)o(ts)f(o)o(v)o(er)f
(the)h(D)o(ARP)l(A)g(In)o(ternet)g(to)0 1619 y(demonstrate)g(the)g(visa)g
(proto)q(cols)g(in)g(a)g(more)g(realistic)f(con)o(text.)32
b(The)20 b(path)f(b)q(et)o(w)o(een)h(USC)g(and)g(UCLA)0 1676
y(includes)12 b(a)g(highly-congested,)g(lo)o(w-bandwidth)f(\(56)g(Kbit/sec\))
g(hop,)i(as)e(w)o(ell)g(as)h(sev)o(eral)f(non-visa)g(gatew)o(a)o(ys.)71
1771 y(In)16 b(this)g(con\014guration,)f(not)h(only)g(is)g(the)g(a)o(v)o
(erage)f(dela)o(y)h(m)o(uc)o(h)g(higher,)g(but)g(the)h Ff(varianc)n(e)e
Fo(in)h(queueing)0 1828 y(dela)o(y)d(is)f(larger)g(than)h(the)g(di\013erence)
g(b)q(et)o(w)o(een)h(the)f(visa)f(and)h(non-visa)g(proto)q(col)f(o)o(v)o
(erheads.)18 b(Consequen)o(tly)l(,)0 1884 y(w)o(e)f(m)o(ust)g(emphasize)h
(that)e(the)i(results)f Ff(c)n(annot)f Fo(b)q(e)j(used)f(to)e(compare)i(the)f
(v)m(arious)g(visa)g(proto)q(cols)f(to)h(one)0 1941 y(another,)g(but)h(are)g
(presen)o(ted)g(primarily)e(to)h(demonstrate)g(the)g(reduced)i
(signi\014cance)f(of)f(visa)g(o)o(v)o(erhead)g(in)0 1997 y(the)e(con)o(text)g
(of)g(other)f(sources)i(of)e(net)o(w)o(ork)h(dela)o(y)l(.)71
2093 y(In)h(order)g(to)f(obtain)h(the)g(most)f(meaningful)g(a)o(v)o(erage)g
(v)m(alues)h(for)g(visa)f(and)h(non-visa)g(proto)q(cols,)e(w)o(e)i(ran)0
2149 y(suites)d(of)g(measuremen)o(ts)g(at)f(di\013eren)o(t)h(times)f(of)h
(the)h(da)o(y)e(and)i(w)o(eek)f(in)g(searc)o(h)g(of)g(a)g(p)q(erio)q(d)h(of)f
(relativ)o(ely)e(lo)o(w)0 2206 y(dela)o(y)i(v)m(ariance.)20
b(The)14 b(n)o(um)o(b)q(ers)g(presen)o(ted)g(in)g(table)f(5)g(\(and)h
(graphically)e(in)i(\014gure)g(6\))f(are)h(from)f(a)g(suite)h(run)0
2262 y(during)k(a)f(three)h(hour)f(in)o(terv)m(al)g(when)h(dela)o(y)f(v)m
(aried)h(least.)26 b(In)19 b(addition,)e(w)o(e)g(excluded)h(the)g(highest)f
(dela)o(y)0 2319 y(v)m(alues)e(when)h(calculating)e(the)h(a)o(v)o(erages)f
(for)h(eac)o(h)g(proto)q(col.)71 2414 y(These)f(measuremen)o(ts)f(ma)o(y)g
(understate)h(the)f(cost)h(of)f(visa)g(proto)q(cols,)f(since)i(the)g
(encryption)g(op)q(erations)0 2471 y(in)o(v)o(olv)o(ed)19 b(w)o(ere)h
(probably)f(b)q(eing)i(p)q(erformed)f(in)g(parallel)e(with)i(the)g
(transmission)e(of)i(other)f(pac)o(k)o(ets)h(o)o(v)o(er)0 2527
y(a)d(congested)h(link.)27 b(In)18 b(an)g(uncongested)g(net)o(w)o(ork,)f
(through)h(gatew)o(a)o(ys)e(that)h(handle)g(only)h(visa-con)o(trolled)0
2584 y(datagrams,)f(this)g(parallelism)f(migh)o(t)g(not)i(b)q(e)g(a)o(v)m
(ailable,)f(and)h(the)g(additional)f(end-to-end)i(dela)o(y)e(imp)q(osed)0
2640 y(b)o(y)e(the)g(visa)g(proto)q(cols)f(could)h(b)q(e)h(as)f(large)f(as)h
(it)f(is)h(in)g(our)g(lab)q(oratory)e(exp)q(erimen)o(ts.)952
2828 y(27)p eop
%%Page: 28 28
bop 308 55 1334 2 v 307 112 2 57 v 316 112 V 916 112 V 925
112 V 925 112 V 1056 95 a Fo(Datagram)13 b(Size)j(\(b)o(ytes\))p
1633 112 V 1642 112 V 925 113 717 2 v 307 168 2 57 v 316 168
V 543 151 a(V)l(ersion)p 916 168 V 925 168 V 283 w(16)p 1043
168 V 72 w(64)p 1161 168 V 49 w(250)p 1279 168 V 49 w(500)p
1397 168 V 49 w(750)p 1515 168 V 49 w(900)p 1633 168 V 1642
168 V 308 170 1334 2 v 308 172 V 307 226 2 57 v 316 226 V 342
209 a(Without)e(VISA)p 916 226 V 925 226 V 316 w(120)p 1043
226 V 49 w(149)p 1161 226 V 49 w(280)p 1279 226 V 49 w(441)p
1397 226 V 49 w(609)p 1515 226 V 49 w(696)p 1633 226 V 1642
226 V 308 228 1334 2 v 307 284 2 57 v 316 284 V 342 267 a(Stateful)g(without)
g(encryption)p 916 284 V 925 284 V 58 w(131)p 1043 284 V 49
w(172)p 1161 284 V 49 w(298)p 1279 284 V 49 w(468)p 1397 284
V 49 w(616)p 1515 284 V 49 w(706)p 1633 284 V 1642 284 V 308
286 1334 2 v 307 342 2 57 v 316 342 V 342 325 a(Stateful)p
916 342 V 925 342 V 452 w(138)p 1043 342 V 49 w(176)p 1161
342 V 49 w(316)p 1279 342 V 49 w(478)p 1397 342 V 49 w(631)p
1515 342 V 49 w(719)p 1633 342 V 1642 342 V 308 344 1334 2
v 307 400 2 57 v 316 400 V 342 383 a(Stateless)g(with)g(no)i(cac)o(he)f(hits)
p 916 400 V 925 400 V 58 w(190)p 1043 400 V 49 w(228)p 1161
400 V 49 w(342)p 1279 400 V 49 w(507)p 1397 400 V 49 w(661)p
1515 400 V 49 w(745)p 1633 400 V 1642 400 V 308 402 1334 2
v 332 479 a(T)l(able)g(5:)20 b(Round-trip)15 b(datagram)f(times)g(for)h(the)g
(In)o(ternet)h(exp)q(erimen)o(t)0 663 y Fq(6.5)56 b(Analysis)0
787 y Fo(Our)21 b(results)f(demonstrate)g(the)g(function)h(of)f(the)h
(stateful)e(and)i(stateless)e(proto)q(cols)h(in)g(b)q(oth)h(lab)q(oratory)0
844 y(and)14 b(actual)g(in)o(ter-organizational)c(in)o(ternet)k(arrangemen)o
(ts.)k(They)d(sho)o(w)e(that,)g(while)h(the)g(o)o(v)o(erhead)g(for)f(our)0
900 y(implemen)o(tation)g(is)i(signi\014can)o(t,)f(it)g(is)h(not)g
(prohibitiv)o(e.)71 996 y(The)c(lab)q(oratory)f(results)h(pro)o(vide)g(a)g
(basis)g(for)g(comparing)g(the)h(proto)q(cols)e(to)h(one)h(another.)18
b(They)12 b(con\014rm)0 1052 y(our)22 b(prediction)g(that)f(the)i(stateless)e
(proto)q(col)g(p)q(erforms)h(nearly)g(as)g(w)o(ell)f(as)h(the)g(stateful)f
(one,)j(on)e(p)q(er-)0 1109 y(datagram)16 b(dela)o(y)l(,)h(only)g(when)h(the)
f(cac)o(he-hit)g(rate)g(is)g(reasonably)f(high.)27 b(\(In)17
b(the)h(op)q(erating)e(region)h(where)0 1165 y(the)f(n)o(um)o(b)q(er)h(of)f
(activ)o(e)f(con)o(v)o(ersations)g(is)g(greater)h(than)g(the)g(size)g(of)g(a)
g(gatew)o(a)o(y's)e(visa-table,)h(the)h(stateless)0 1222 y(proto)q(col)f(ma)o
(y)h(p)q(erform)h(b)q(etter)f(than)g(the)h(stateful)e(proto)q(col.\))23
b(These)17 b(results)f(also)f(sho)o(w)h(that)g(comparing)0
1278 y(the)h(cost)f(of)g(connection)h(setup)g(in)f(the)h(stateful)f(proto)q
(col)f(to)h(the)h(cost)f(of)h(setting)e(up)i(cac)o(he)g(en)o(tries)f(in)h
(the)0 1335 y(stateless)c(proto)q(col,)g(for)h(connections)h(in)o(v)o(olving)
d(only)i(a)g(few)h(datagrams,)d(the)j(stateless)e(proto)q(col)h(ma)o(y)f(ha)o
(v)o(e)0 1391 y(a)i(small)f(edge.)20 b(In)c(the)g(steady)f(state,)f(the)h
(di\013erence)g(in)h(dela)o(y)e(of)h(appro)o(ximately)f(2)h(msec)g(p)q(er)h
(datagram)d(is)0 1448 y(due)j(to)e(the)i(additional)d(length)i(of)g
(stateless-proto)q(col)e(visa)i(options.)71 1543 y(The)h(In)o(ternet)h
(results)f(demonstrate)g(that)g(when)h(visa)f(mec)o(hanisms)g(are)g(added)h
(to)f(subsets)h(of)f(existing)0 1600 y(In)o(ternet)k(gatew)o(a)o(ys)e(and)i
(hosts)g(b)q(oth)f(v)m(ariations)g(of)g(the)h(proto)q(col)f(w)o(ork)g
(without)g(in)o(terfering)f(with)i(non-)0 1656 y(visa,)e(lo)q(cal)g(net)o(w)o
(ork)g(or)g(in)o(ternet,)h(op)q(erations.)29 b(These)19 b(results)g(also)e
(demonstrate)h(that)g(the)h(o)o(v)o(erhead)f(of)0 1713 y(visa)c(proto)q(cols)
f(is)i(m)o(uc)o(h)f(less)h(signi\014can)o(t)e(in)i(high-dela)o(y)f(en)o
(vironmen)o(ts.)19 b(The)c(results)f(from)g(the)h(lab)q(oratory)0
1769 y(exp)q(erimen)o(ts)j(pro)o(vide)g(an)h(upp)q(er)g(b)q(ound)h(on)e(the)g
(o)o(v)o(erhead)g(of)g(visa)g(proto)q(cols;)h(the)f(relativ)o(e)f(o)o(v)o
(erhead)h(in)0 1825 y(actual)h(in)o(ter-organizational)e(net)o(w)o(orks)j
(will)e(b)q(e)j(lo)o(w)o(er,)f(since)g(o)o(v)o(er)g(suc)o(h)g(paths)g(the)h
(dela)o(ys)e(due)i(to)f(visa)0 1882 y(proto)q(cols)13 b(sta)o(y)g(\014xed,)i
(while)e(dela)o(ys)h(due)h(to)e(transmission)g(and)h(gatew)o(a)o(y)e(pro)q
(cessing)i(generally)g(are)g(higher.)71 1978 y(The)e(critical)e(prerequisite)
i(for)g(practical)e(application)h(of)h(visa)f(proto)q(cols)g(is)h(faster)f
(encryption)h(hardw)o(are.)0 2034 y(If)i(encryption)g(rates)e(are)i(not)f
(impro)o(v)o(ed)g(b)o(y)h(an)f(order)g(of)h(magnitude)f(o)o(v)o(er)g(that)g
(of)g(the)h(equipmen)o(t)f(w)o(e)h(used,)0 2090 y(visa-related)c(encryption)h
(pro)q(cessing)g(will)e(presen)o(t)i(an)g(o)o(v)o(erwhelming)f(burden)i(to)e
(high-sp)q(eed)i(gatew)o(a)o(ys)e(that)0 2147 y(can)15 b(otherwise)f(pro)q
(cess)h(sev)o(eral)f(thousand)g(pac)o(k)o(ets)g(p)q(er)i(second.)k(W)l(e)15
b(b)q(eliev)o(e)f(that)g(acceptable)h(encryption)0 2203 y(rates)f(are)h
(feasible)g(with)g(curren)o(t)g(tec)o(hnology)l(.)0 2386 y
Fi(7)69 b(Other)22 b(design)h(issues)0 2526 y Fo(In)14 b(this)e(section,)h(w)
o(e)g(discuss)g(sev)o(eral)g(issues)g(related)f(to)h(the)g(use)h(of)f(visa)f
(proto)q(cols,)g(in)h(the)g(areas)g(of)g(securit)o(y)l(,)0
2583 y(connection)i(setup,)g(and)h(datagram)d(fragmen)o(tation.)952
2828 y(28)p eop
%%Page: 29 29
bop 0 45 a Fq(7.1)56 b(Securit)n(y)0 170 y Fo(A)10 b(visa)g(proto)q(col)f(is)
h(only)g(one)h(comp)q(onen)o(t)f(in)g(a)h(system)f(for)f(pro)o(viding)h(net)o
(w)o(ork)f(securit)o(y)l(.)18 b(Other)10 b(mec)o(hanisms)0
227 y(and)20 b(p)q(olicies,)f(used)h(in)f(conjunction)g(with)g(a)g(visa)g
(proto)q(col,)f(determine)i(the)f(lev)o(el)g(of)g(securit)o(y)l(.)32
b(Here)19 b(w)o(e)0 283 y(consider)g(mec)o(hanisms)g(for)g(authen)o(ticating)
f(the)h(parties)g(to)f(a)h(visa)g(proto)q(col,)g(a)o(v)o(oiding)e
(denial-of-service)0 339 y(attac)o(ks,)c(protecting)i(transit)f
(organizations,)e(and)k(reducing)f(co)o(v)o(ert)f(c)o(hannels.)71
435 y(Securit)o(y)c(p)q(olicies,)g(as)g(em)o(b)q(o)q(died)h(in)g(an)f(A)o
(CS,)g(are)g(as)h(imp)q(ortan)o(t)e(as)h(securit)o(y)g(mec)o(hanisms.)18
b(As)10 b(describ)q(ed)0 491 y(in)k([6)o(],)f(access)h(con)o(trol)e
(decisions)i(are)f(most)g(appropriately)f(made)i(according)f(to)g(a)g(group)h
(or)f(class)g(a\016liation)0 548 y(and)i(asso)q(ciated)e(category)g(sets)h
(that)g(determine)h(access)f(righ)o(ts.)k(The)d(visa)e(proto)q(col)h(itself)f
(do)q(es)i(not)f(dictate)0 604 y(or)i(constrain)f(the)h(particulars)f(of)g
(the)i(authorization)d(p)q(olicies;)i(in)g(this)f(rep)q(ort)h(w)o(e)g(are)g
(describing)g(the)g(visa)0 661 y(in)o(terface)f(of)g(an)g(A)o(CS,)g(not)g
(the)h(A)o(CS)f(design)g(itself.)20 b(Regardless)15 b(of)g(the)g(p)q(olicy)g
(used,)h(the)g(visa)e(mec)o(hanism)0 717 y(assumes)h(only)g(that)f(a)h
(YES/NO)h(decision)f(is)f(pro)o(vided)h(b)o(y)h(the)f(A)o(CS.)71
813 y(Securit)o(y)d(p)q(olicies)h(and)g(mec)o(hanisms)f(for)h(application-sp)
q(eci\014c)f(access)i(con)o(trol)d(are)i(left)f(to)h(the)g(end-p)q(oin)o(t)0
869 y(hosts)i(and)g(applications;)e(visa)i(proto)q(cols)f(address)h(only)g
(con)o(trolling)e(access)i(to)g(the)g(hosts)g(on)g(a)g(net)o(w)o(ork.)0
1029 y Fh(7.1.1)52 b(Authen)o(ticating)17 b(hosts)g(and)h(acss)0
1153 y Fo(Hosts)d(and)h(A)o(CSs)f(m)o(ust)h(authen)o(ticate)e(themselv)o(es)i
(to)f(eac)o(h)h(other,)f(in)g(order)h(to)f(prev)o(en)o(t)g(an)h(unauthorized)
0 1210 y(host)d(from)f(obtaining)g(a)h(visa)g(from)f(an)h(A)o(CS,)g(or)g(to)f
(prev)o(en)o(t)h(a)g(malicious)f(host)h(from)f(imitating)f(an)j(A)o(CS)f(and)
0 1266 y(in)o(terp)q(osing)f(itself)f(b)q(et)o(w)o(een)i(a)f(gatew)o(a)o(y)f
(and)h(an)h(A)o(CS,)f(and)g(thereb)o(y)h(pro)o(viding)e(itself)h(with)g(a)g
(visa.)18 b(The)13 b(visa)0 1323 y(proto)q(cols)e(describ)q(ed)j(in)e(this)g
(rep)q(ort)h(do)f(not)g(sp)q(ecify)h(ho)o(w)f(a)g(host)h(authen)o(ticates)e
(itself)h(to)g(an)g(A)o(CS,)g(and)h(vice)0 1379 y(v)o(ersa.)28
b(The)19 b(authen)o(tication)e(pro)q(cess)h(ma)o(y)g(in)o(v)o(olv)o(e)f(a)h
(higher-lev)o(el)f(con)o(v)o(ersation)g(b)q(et)o(w)o(een)i(the)f(host)g(and)0
1436 y(the)e(A)o(CS,)g(whic)o(h)g(can)g(include)g(the)g(exc)o(hange)h(of)e
(passw)o(ords,)g(k)o(eys)h(or)g(other)g(authen)o(ticating)e(information.)0
1492 y(Dep)q(ending)g(on)f(lo)q(cal)f(p)q(olicies,)h(the)g(authen)o(tication)
f(pro)q(cess)h(ma)o(y)g(require)g(direct)g(comm)o(unication)e(with)i(the)0
1549 y(end-user;)j(alternativ)o(ely)l(,)d(some)i(information)e(ma)o(y)h(b)q
(e)i(pro)o(vided)f(b)o(y)g(the)h(system)e(on)i(the)f(user's)g(b)q(ehalf.)71
1644 y(Eac)o(h)i(organization)e(could)j(individually)e(c)o(ho)q(ose)i(the)f
(authen)o(tication)f(mec)o(hanism)h(used)h(b)o(y)g(its)f(A)o(CSs,)0
1701 y(but)h(this)f(w)o(ould)g(require)h(a)f(visa)g(implemen)o(tation)f(to)h
(b)q(e)h(tailored)f(to)g(a)g(sp)q(eci\014c)i(organization,)d(making)h(it)0
1757 y(hard)k(for)f(v)o(endors)g(to)h(supply)g(turn-k)o(ey)f(systems.)36
b(Also,)21 b(since)g(a)g(host)f(m)o(ust)g(obtain)g(an)h(en)o(trance)g(visa)0
1814 y(from)d(a)h(foreign)g(organization,)f(eac)o(h)h(participan)o(t)f(host)h
(\(or)f(an)h(A)o(CS)g(acting)g(on)g(its)f(b)q(ehalf)t(\))h(w)o(ould)f(ha)o(v)
o(e)0 1870 y(to)d(understand)i(the)e(authen)o(tication)g(proto)q(col)g(used)h
(b)o(y)g(the)g(A)o(CS)f(of)h(eac)o(h)g(organization)e(it)h(comm)o(unicates)0
1927 y(with.)71 2022 y(It)c(is)h(impractical)e(to)h(exp)q(ect)h(ev)o(ery)g
(source)g(host)f(to)g(\\sp)q(eak")h(an)f(un)o(b)q(ounded)j(set)d(of)h(A)o(CS)
f(authen)o(tication)0 2079 y(proto)q(cols;)i(it)h(is)g(nearly)g(as)g
(impractical)e(to)i(exp)q(ect)h(eac)o(h)g(A)o(CS)f(to)g(implemen)o(t)g(the)g
(authen)o(tication)f(proto)q(col)0 2135 y(of)19 b(eac)o(h)g(p)q(ossible)g
(foreign)f(organization.)30 b(The)20 b(simplest)e(solution)g(is)h(to)f(adopt)
h(a)g(standard)f(proto)q(col)h(for)0 2192 y(host-A)o(CS)c(\(and)g(A)o(CS-A)o
(CS\))g(comm)o(unication.)j(Suc)o(h)e(a)f(standard)g(is)f(a)h(sub)s(ject)g
(for)g(future)g(w)o(ork.)0 2351 y Fh(7.1.2)52 b(Denial)17 b(of)g(service)0
2476 y Fo(Visa)j(proto)q(cols)f(presen)o(t)i(the)f(p)q(ossibilit)o(y)f(of)h
(certain)g(no)o(v)o(el)f(denial-of-service)h(attac)o(ks.)34
b(F)l(or)20 b(example,)h(a)0 2532 y(malicious)d(host)h(could)h(in)o(terp)q
(ose)f(itself)g(b)q(et)o(w)o(een)h(a)f(victim)g(host)g(and)g(an)h(A)o(CS,)f
(and)h(\\issue")f(visas)g(that)0 2589 y(w)o(ould)10 b(pro)o(v)o(e)g(useless.)
18 b(In)o(terp)q(osition)10 b(can)g(b)q(e)h(prev)o(en)o(ted)g(b)o(y)g(a)f
(suitably)f(strong)h(host-to-A)o(CS)f(authen)o(tication)0 2645
y(proto)q(col.)952 2828 y(29)p eop
%%Page: 30 30
bop 71 45 a Fo(The)17 b(REJECT)g(mec)o(hanism)g(describ)q(ed)h(in)f(sections)
f(2.3)g(and)h(7.2.2)f(also)g(in)o(tro)q(duces)g(p)q(oten)o(tial)g(denial-)0
102 y(of-service)d(attac)o(ks.)18 b(A)c(malicious)f(host)g(could)h(send)g
(spurious)f(REJECTs)h(to)g(a)f(visa)g(host,)g(since)h(the)g(normal)0
158 y(b)q(eha)o(vior)f(of)g(the)g(visa)f(host)h(up)q(on)h(receipt)f(of)g(a)g
(REJECT)h(is)e(to)h(in)o(terrupt)f(the)i(connection)f(in)g(progress)g(un)o
(til)0 214 y(a)19 b(new)h(visa)f(is)g(obtained.)33 b(This)19
b(attac)o(k)g(can)g(b)q(e)i(prev)o(en)o(ted)f(b)o(y)f(the)h(use)g(of)f(an)h
(authen)o(tication)e(proto)q(col)0 271 y(b)q(et)o(w)o(een)e(hosts)e(and)i
(gatew)o(a)o(ys,)d(suc)o(h)i(as)g(public-k)o(ey)g(digital)f(signatures)g(on)h
(REJECT)h(messages.)71 367 y(Standardization)f(of)h(these)h(defenses)h(is)e
(a)h(sub)s(ject)f(for)g(future)h(w)o(ork.)24 b(En)o(vironmen)o(ts)15
b(where)i(denial-of-)0 423 y(service)e(is)g(of)f(su\016cien)o(t)h(concern)h
(should)f(use)g(secure)h(means)f(of)g(authen)o(tication)e(b)q(et)o(w)o(een)j
(hosts,)e(gatew)o(a)o(ys,)0 479 y(and)h(A)o(CSs.)0 636 y Fh(7.1.3)52
b(Protecting)17 b(transit)g(organizations)0 761 y Fo(Recall)12
b(that)g(a)h(transit)e(organization)g(is)h(one)h(through)f(whic)o(h)h(a)f
(datagram)f(\015o)o(ws,)i(but)f(that)g(do)q(es)h(not)g(con)o(tain)0
817 y(the)20 b(source)g(or)g(destination)f(hosts)g(of)h(that)f(datagram.)33
b(In)21 b(the)f(future,)h(w)o(e)e(an)o(ticipate)g(the)h(existence)g(of)0
873 y(p)q(olicy-sensitiv)o(e)12 b(routing)g(proto)q(cols)f(to)i(protect)f
(transit)f(net)o(w)o(orks,)h(while)h(visa)f(proto)q(cols)f(w)o(ould)i(b)q(e)g
(used)h(to)0 930 y(protect)g(endp)q(oin)o(t)h(net)o(w)o(orks[1)o(].)k(Ho)o(w)
o(ev)o(er,)14 b(in)g(the)h(in)o(terim,)f(if)g(visa)g(proto)q(cols)g(are)g
(used)i(to)e(protect)g(transit)0 986 y(services,)i(then)h(when)f(a)g
(datagram)f(\015o)o(ws)h(through)g(the)g(gatew)o(a)o(ys)f(of)h(a)g(transit)f
(organization)f Fg(O)1746 993 y Fd(tr)q(ans)1834 986 y Fo(,)i(they)0
1043 y(m)o(ust)f(ensure)h(that)f(the)h(datagram)e(is)h(in)h(fact)f(what)g(it)
g(app)q(ears)h(to)f(b)q(e,)h(rather)f(than)g(a)h(forgery)f(designed)h(to)0
1099 y(b)o(ypass)f(the)g(information-\015o)o(w)e(con)o(trols)h(of)h
Fg(O)824 1106 y Fd(tr)q(ans)912 1099 y Fo(.)71 1195 y(There)g(are)g(t)o(w)o
(o)f(problems)h(that)f(m)o(ust)h(b)q(e)h(solv)o(ed:)56 1312
y(1.)22 b(A)14 b(datagram)e(ma)o(y)i(lea)o(v)o(e)f Fg(O)609
1319 y Fd(tr)q(ans)711 1312 y Fo(app)q(earing)h(to)f(ha)o(v)o(e)h(originated)
f(in)h(another)g(organization)e Fg(O)1805 1319 y Fd(sr)q(c)1855
1312 y Fo(,)i(but)114 1368 y(migh)o(t)19 b(actually)h(b)q(e)h(a)f(forgery)g
(generated)h(b)o(y)f(a)h(host)f(in)g Fg(O)1220 1375 y Fd(tr)q(ans)1329
1368 y Fo(that)g(is)g(not)g(authorized)g(to)g(send)114 1425
y(datagrams)13 b(to)i Fg(O)427 1432 y Fd(dst)476 1425 y Fo(.)56
1512 y(2.)22 b(A)14 b(datagram)f(ma)o(y)h(en)o(ter)h Fg(O)614
1519 y Fd(tr)q(ans)716 1512 y Fo(apparen)o(tly)f(on)h(its)f(w)o(a)o(y)f(to)h
(another)g(organization)f Fg(O)1676 1519 y Fd(dst)1725 1512
y Fo(,)h(but)h(migh)o(t)114 1568 y(actually)f(b)q(e)h(mean)o(t)g(for)g(and)g
(receiv)o(ed)g(b)o(y)h(an)f(unauthorized)g(host)g(in)g Fg(O)1407
1575 y Fd(tr)q(ans)1495 1568 y Fo(.)71 1685 y(These)22 b(problems)g(only)g
(arise)g(for)g(visa-gatew)o(a)o(ys)e(at)h(the)i(b)q(orders)f(of)g
Fg(O)1414 1692 y Fd(tr)q(ans)1502 1685 y Fo(,)i(and)f(only)f(for)f(transit)0
1742 y(organizations)9 b(that)h(wish)h(to)f(con)o(trol)g(information)f(\015o)
o(w)990 1725 y Fp(16)1026 1742 y Fo(.)19 b(In)11 b(a)g(w)o(ell-organized)f
(in)o(ternet)o(w)o(ork,)f(most)h(transit)0 1798 y(tra\016c)20
b(should)h(tra)o(v)o(el)e(o)o(v)o(er)g(common)i(carriers)e(or)i(similar)d
(bac)o(kb)q(one)k(net)o(w)o(orks.)35 b(Carrier)19 b(organizations)0
1854 y(presumably)g(ha)o(v)o(e)f(no)h(in)o(terest)f(in)g(con)o(trolling)f
(information)g(\015o)o(w)h(\(as)g(opp)q(osed)h(to)f(resource)h(con)o(trol)f
(and)0 1911 y(billing,)c(whic)o(h)h(are)f(separate)h(issues\),)f(so)h(they)h
(need)g(not)e(exp)q(end)j(e\013ort)d(to)h(solv)o(e)f(these)h(t)o(w)o(o)f
(problems.)71 2007 y(T)l(o)e(protect)h(against)f(illegal)f(exits,)h(w)o(e)h
(require)g(that)f(an)h(in-transit)f(datagram)g(b)q(e)i Ff(se)n(ale)n(d)d
Fo(b)o(y)i(the)h(gatew)o(a)o(y)0 2063 y(through)c(whic)o(h)h(it)e(en)o(ters)i
(an)f(organization.)17 b(When)11 b(an)f(in-transit)f(datagram)g(tries)h(to)g
(lea)o(v)o(e)g(an)g(organization,)0 2119 y(the)15 b(exit)f(gatew)o(a)o(y)f(m)
o(ust)h(v)o(erify)g(that)g(it)g(is)h(prop)q(erly)f(sealed.)20
b(If)15 b(it)f(is,)g(then)h(it)f(cannot)h(ha)o(v)o(e)f(b)q(een)i(generated)0
2176 y(within)e(this)h(organization)e(and)j(th)o(us)f(the)g(exit-visa)f(need)
i(not)f(b)q(e)h(c)o(hec)o(k)o(ed.)71 2271 y(T)l(o)11 b(protect)f(against)g
(illegal)g(en)o(trances,)h(a)g(gatew)o(a)o(y)f(m)o(ust)g(not)h(allo)o(w)f(an)
h(apparen)o(tly)g(in-transit)e(datagram)0 2328 y(to)14 b(arriv)o(e)g(at)g(an)
o(y)h(un)o(trusted)g(host)g(within)f(its)g(organization.)k(If)d(the)g(net)o
(w)o(ork)f(can)h(b)q(e)h(tapp)q(ed)f(b)o(y)g(an)o(y)g(host,)0
2384 y(the)g(only)g(secure)h(w)o(a)o(y)e(of)h(doing)f(this)h(is)g(to)f
(encrypt)i(the)f(en)o(tire)g(datagram.)71 2480 y(T)l(ransit-sealing)c(could)j
(b)q(e)g(done)g(b)o(y)g(adding)f(a)g(signature,)g(computed)h(as)f(in)h
(section)f(4,)g(to)g(the)g(datagram)0 2536 y(header)i(at)e(the)i(en)o(trance)
f(gatew)o(a)o(y)l(.)k(Since)d(b)q(oth)f(parties)g(to)f(the)i(sealing)e(are)h
(visa-gatew)o(a)o(ys)e(of)i Fg(O)1748 2543 y Fd(tr)q(ans)1836
2536 y Fo(,)g(they)p 0 2570 780 2 v 37 2596 a Fk(16)69 2612
y Fj(In)g(certain)h(net)o(w)o(ork)g(tec)o(hnologies,)g(suc)o(h)g(as)f(a)h(p)q
(oin)o(t-to-p)q(oin)o(t)f(net)o(w)o(ork,)h(it)f(is)g(not)g(p)q(ossible)h(to)g
(fak)o(e)f(a)g(source)h(address)h(at)0 2658 y(the)c(data-link)h(la)o(y)o(er,)
f(or)g(to)g(receiv)o(e)h(a)f(datagram)h(mean)o(t)f(for)h(another)g(host.)k
(In)12 b(this)g(case,)h(the)f(t)o(w)o(o)g(problems)h(discussed)g(in)f(this)0
2704 y(section)h(do)h(not)f(arise.)952 2828 y Fo(30)p eop
%%Page: 31 31
bop 0 45 a Fo(trust)19 b(eac)o(h)i(other)e(and)h(can)h(use)f(a)g(single)f
(signature)g(k)o(ey)h(to)g(compute)g(the)g(seal.)34 b(But,)21
b(since)f(the)g(en)o(tire)0 102 y(datagram)f(is)i(b)q(eing)g(encrypted)g(an)o
(yw)o(a)o(y)f(to)g(a)o(v)o(oid)f(unauthorized)i(reception)g(while)f(it)g(tra)
o(v)o(erses)g Fg(O)1850 109 y Fd(tr)q(ans)1937 102 y Fo(,)0
158 y(there)f(is)g(no)g(need)h(to)f(p)q(erform)f(a)h(separate)g(sealing)f
(encryption.)32 b(This)19 b(metho)q(d,)h(in)e(e\013ect,)i(encapsulates)0
214 y(transit)13 b(datagrams)g(in)i(a)f(secure)i(p)q(oin)o(t-to-p)q(oin)o(t)d
(proto)q(col)h(b)q(et)o(w)o(een)h(gatew)o(a)o(ys)e(of)h Fg(O)1519
221 y Fd(tr)q(ans)1607 214 y Fo(,)g(adding)h(a)f(cost)g(of)0
271 y(2)k(encryption)h(op)q(erations)e(for)h(transit)f(sealing)h(and)g
(unsealing.)29 b(\(If)19 b(there)f(are)g Fg(N)1491 278 y Fd(T)1537
271 y Fo(transit)f(organizations)0 327 y(along)10 b(the)h(path)g(of)f(a)h
(datagram,)f(the)h(total)e(additional)h(cost)g(is)h(2)p Fg(N)1168
334 y Fd(T)1205 327 y Fo(encryption)g(op)q(erations.\))18 b(The)11
b(gatew)o(a)o(ys)0 384 y(can)k(use)h(an)o(y)f(suitably)f(e\016cien)o(t)h(and)
g(secure)h(encryption)f(mec)o(hanism)g(for)g(this)f(purp)q(ose.)0
543 y Fh(7.1.4)52 b(Co)o(v)o(ert)16 b(c)o(hannels)g(via)h(header)h(\014elds)0
668 y Fo(A)f(data)g(signature)f(metho)q(d)i(m)o(ust)f(co)o(v)o(er)f(not)h
(only)g(the)g(data)g(segmen)o(t,)g(but)g(an)o(y)g(datagram)f(header)i
(\014elds)0 724 y(whose)i(authen)o(ticit)o(y)f(cannot)h(b)q(e)h(c)o(hec)o(k)o
(ed)f(b)o(y)g(the)g(gatew)o(a)o(ys.)33 b(An)o(y)21 b(unc)o(hec)o(k)o(ed)g
(\014eld)f(lea)o(v)o(es)f(a)h(p)q(oten)o(tial)0 781 y(co)o(v)o(ert)12
b(c)o(hannel,)h(since)g(a)g(malicious)e(host)i(could)f(cop)o(y)h(a)g(v)m
(alid)f(datagram,)g(c)o(hange)h(the)g(unc)o(hec)o(k)o(ed)h(\014eld,)f(and)0
837 y(send)j(the)f(mo)q(di\014ed)h(cop)o(y)f(without)f(raising)g(suspicion.)
71 933 y(W)l(e)e(could)g(protect)f(against)g(this)g(b)o(y)h(including)g(the)g
(en)o(tire)f(datagram)g(header)h(under)h(the)f(data)f(signature,)0
989 y(but)16 b(in)g(most)f(in)o(ternet)o(w)o(orking)f(proto)q(cols)h(there)h
(are)f(some)h(header)g(\014elds)g(that)g(are)f(mo)q(di\014ed)i(b)o(y)e(the)i
(gate-)0 1046 y(w)o(a)o(ys,)11 b(and)i(hence)g(cannot)f(b)q(e)h(included)f
(in)g(the)h(signature.)18 b(\(All)11 b(gatew)o(a)o(ys)f(ma)o(y)i(ha)o(v)o(e)f
(to)h(mo)q(dify)g(the)g(header,)0 1102 y(not)j(just)g(visa-gatew)o(a)o(ys,)e
(and)i(w)o(e)h(assume)f(that)g(non-visa)g(gatew)o(a)o(ys)e(cannot)i
(regenerate)h(the)f(signature.)20 b(If)0 1159 y(a)15 b(public-k)o(ey)g(metho)
q(d)h(is)e(used,)i(not)f(ev)o(en)g(visa-gatew)o(a)o(ys)e(can)i(do)h(so.\))71
1254 y(In)f(the)h(IP)f(proto)q(col,)f(there)h(are)g(t)o(w)o(o)f(suc)o(h)i(v)m
(ariable)e(\014elds.)21 b(One)16 b(is)e(the)i(header)f(c)o(hec)o(ksum;)g
(this)g(cannot)0 1311 y(b)q(e)d(forged)f(b)q(ecause)h(it)f(is)g(a)g(function)
g(of)g(the)g(other)g(\014elds)g(in)h(the)f(header,)h(and)g(is)e(already)h
(recomputed)h(b)o(y)f(eac)o(h)0 1367 y(IP)17 b(gatew)o(a)o(y)l(.)24
b(The)17 b(other)g(is)g(the)g(8)f(bit)h(wide)g(\\Time-T)l(o-Liv)o(e")f
(\(TTL\))g(\014eld,)i(used)f(to)g(prev)o(en)o(t)g(datagrams)0
1424 y(from)h(follo)o(wing)f(routing)g(lo)q(ops.)30 b(The)19
b(TTL)g(m)o(ust)f(b)q(e)i(decremen)o(ted)f(b)o(y)g(eac)o(h)g(gatew)o(a)o(y)l
(,)f(and)h(m)o(ust)f(nev)o(er)0 1480 y(b)q(e)f(incremen)o(ted.)23
b(A)16 b(malicious)f(host)h(could)g(comm)o(unicate)g(appro)o(ximately)e(6)i
(or)g(7)g(bits)g(p)q(er)g(datagram)f(b)o(y)0 1537 y(manipulating)f(the)h
(initial)e(v)m(alue)j(of)f(the)g(TTL)g(\014eld)h(in)f(copies)g(of)f
(otherwise)h(v)m(alidly-signed)f(datagrams.)71 1632 y(If)j(this)f(co)o(v)o
(ert)g(c)o(hannel)h(is)f(considered)i(to)q(o)e(broad,)h(there)f(are)h(a)g(n)o
(um)o(b)q(er)g(of)f(steps)h(that)f(can)h(b)q(e)h(tak)o(en.)0
1689 y(The)13 b(visa-gatew)o(a)o(ys)e(could)j(mak)o(e)e(use)i(of)f(their)g
(kno)o(wledge)f(of)h(net)o(w)o(ork)f(top)q(ology)g(to)h(reduce)h(the)f(TTL)h
(v)m(alue)0 1745 y(to)d(near)g(the)g(minim)o(um)g(necessary)g(for)g(the)g
(datagram)f(to)h(safely)g(arriv)o(e)f(at)g Fg(H)1350 1752 y
Fd(dst)1399 1745 y Fo(.)19 b(Since)12 b(the)f(diameter)g(of)g(most)0
1802 y(in)o(ternet)o(w)o(orks)h(is)i(closer)g(to)f(15)h(than)g(255,)f(this)h
(reduces)h(the)f(width)g(of)g(the)g(co)o(v)o(ert)g(c)o(hannel)g(to)g(p)q
(erhaps)h(1)e(or)0 1858 y(2)i(bits)g(p)q(er)h(datagram;)e(unfortunately)l(,)g
(since)i(most)f(gatew)o(a)o(ys)e(cannot)j(kno)o(w)e(the)i(exact)f(route)g(a)g
(datagram)0 1915 y(will)i(follo)o(w,)h(this)g(approac)o(h)g(migh)o(t)g(lead)g
(to)g(complete)h(loss)e(of)i(datagrams)e(that)h(follo)o(w)e(a)j(sligh)o(tly)e
(longer)0 1971 y(route)c(than)g(exp)q(ected.)21 b(The)13 b(use)h(of)f
(\\Strict)f(Source)i(Routing")p Fh(??)19 b Fo(migh)o(t)12 b(su\016cien)o(tly)
h(constrain)f(the)i(routes,)0 2027 y(but)h(is)g(not)g(curren)o(tly)g
(practical)f(in)h(the)g(In)o(ternet.)71 2123 y(Alternativ)o(ely)l(,)i(since)i
(the)g(visas)f(themselv)o(es)g(will)g(stop)g(certain)g(kinds)h(of)g(lo)q(ops)
f(\(a)g(datagram)f(cannot)0 2179 y(reen)o(ter)g Fg(O)190 2186
y Fd(sr)q(c)240 2179 y Fo(,)g(nor)g(lea)o(v)o(e)g Fg(O)503
2186 y Fd(dst)552 2179 y Fo(,)g(b)q(ecause)h(it)e(do)q(es)i(not)f(carry)f
(visas)g(to)h(do)g(so\),)g Fg(GW)1509 2186 y Fd(exit)1588 2179
y Fo(and)h Fg(GW)1758 2186 y Fd(entr)1844 2179 y Fo(could)0
2236 y(eac)o(h)c(set)g(the)g(TTL)g(to)f(its)g(maxim)o(um)g(v)m(alue.)20
b(This)14 b(erases)f(an)o(y)h(manipulation,)e(but)j(it)e(violates)f(the)i
(letter)f(of)0 2292 y(the)h(IP)h(sp)q(eci\014cation,)f(and)g(migh)o(t)f
(confound)i(proto)q(cols)e(that)h(use)h(the)f(TTL)g(\014eld)h(to)e(limit)g
(the)h(lifetime)f(of)h(a)0 2349 y(datagram.)0 2510 y Fq(7.2)56
b(Connection)18 b(setup)0 2635 y Fo(There)c(is)g(a)g(tradeo\013)f(b)q(et)o(w)
o(een)i(the)f(cost)g(and)g(\015exibilit)o(y)f(of)h(connection)g(setup)h(mec)o
(hanisms.)k(Shortcuts)14 b(can)0 2691 y(b)q(e)j(programmed)e(in)o(to)g(the)i
(visa-gatew)o(a)o(ys)c(to)j(reduce)h(the)f(o)o(v)o(erhead.)23
b(A)o(t)15 b(the)i(same)f(time,)f(the)h(use)h(of)e(lazy)952
2828 y(31)p eop
%%Page: 32 32
bop 0 45 a Fo(ev)m(aluation)14 b(increases)h(the)h(o)o(v)o(erhead)f(for)f
(the)h(sak)o(e)g(of)g(increased)g(\015exibilit)o(y)l(.)0 204
y Fh(7.2.1)52 b(Reducing)17 b(the)h(cost)g(of)f(connection)h(setup)0
329 y Fo(In)f(the)g(simplest)e(case,)h(when)h Fg(H)584 336
y Fd(sr)q(c)651 329 y Fo(wishes)f(to)g(initiate)f(a)h(bi-directional)f
(connection)i(it)e(acquires)h(a)h(pair)e(of)0 385 y(visas,)c(sends)i(a)f
(datagram)e(to)h Fg(H)565 392 y Fd(dst)615 385 y Fo(,)h(and)g(then)g(m)o(ust)
g(w)o(ait)e(for)i(the)g(destination)f(to)g(go)g(through)h(the)g(pro)q(cess)g
(of)0 442 y(acquiring)i(its)g(o)o(wn)g(pair)g(of)g(visas.)19
b(This)14 b(can)h(result)f(in)g(long)g(connection)h(setup)g(times,)e(and)i
(in)f(particular)g(it)0 498 y(mak)o(es)g(it)g(m)o(uc)o(h)g(harder)g(to)g
(predict)h(the)f(round-trip)g(time)g(for)g(the)g(connection.)20
b(It)14 b(w)o(ould)g(b)q(e)h(more)f(e\016cien)o(t)0 555 y(if)h(the)g(return)g
(visas)f(could)i(b)q(e)g(issued)f(sim)o(ultaneously)e(with)i(the)g(forw)o
(ard)f(visas.)71 650 y(If)19 b(a)f(public-k)o(ey)h(visa)g(proto)q(col)e(is)i
(used)g(\(see)g(App)q(endix)h(A\),)f(this)g(is)f(easily)g(accomplished.)31
b(Supp)q(ose)0 707 y(that)19 b Fg(H)141 714 y Fd(sr)q(c)212
707 y Fo(has)h Fg(H)336 714 y Fd(dst)385 707 y Fo('s)g(public)g(k)o(ey)l(.)35
b(\(It)20 b(migh)o(t)f(ha)o(v)o(e)g(obtained)h(it)f(from)h(the)g(name)g(serv)
o(er)g(used)h(to)e(\014nd)0 763 y Fg(H)38 770 y Fd(dst)87 763
y Fo('s)12 b(address,)h(and)g(in)g(an)o(y)f(case)h(w)o(ould)f(need)h(it)f(to)
g(protect)h(its)e(comm)o(unications)h(with)g Fg(H)1633 770
y Fd(dst)1682 763 y Fo(\).)19 b(When)13 b Fg(H)1900 770 y Fd(sr)q(c)0
820 y Fo(requests)k(its)g(o)o(wn)g(visas,)g(it)g(can)h(also)e(pass)h
Fg(H)833 827 y Fd(dst)882 820 y Fo('s)h(public)f(k)o(ey)h(to)f
Fg(AC)s(S)1309 827 y Fd(sr)q(c)1377 820 y Fo(and)h(request)g(rev)o(erse)f
(visas)g(for)0 876 y Fg(H)38 883 y Fd(dst)103 876 y Fo(to)e(use.)21
b(If)16 b(the)g(A)o(CSs)f(appro)o(v)o(e,)g(they)h(return)g(b)q(oth)f(pairs)g
(of)h(visas)e(to)h Fg(H)1408 883 y Fd(sr)q(c)1459 876 y Fo(.)21
b(There)16 b(is)f(no)h(problem)f(in)0 933 y(doing)f(so,)h(since)g(only)f
Fg(H)440 940 y Fd(dst)504 933 y Fo(can)h(mak)o(e)g(use)g(of)f(its)h(visas.)j
Fg(H)1064 940 y Fd(sr)q(c)1130 933 y Fo(ma)o(y)c(then)h(pass)g(them)g(to)f
Fg(H)1639 940 y Fd(dst)1703 933 y Fo(in)h(the)g(initial)0 989
y(datagram)f(of)g(the)i(connection.)71 1085 y(If)21 b(a)f(priv)m(ate-k)o(ey)h
(stateless)f(visa)g(proto)q(col)g(is)h(used,)h Fg(H)1087 1092
y Fd(dst)1157 1085 y Fo(m)o(ust)f(generate)f(its)g(o)o(wn)h(secret)g
(signature)0 1141 y(k)o(eys,)d(and)f(so)g(it)g(m)o(ust)g(b)q(e)h(in)o(v)o
(olv)o(ed)f(in)g(the)h(generation)e(of)h(the)h(return)f(visas.)26
b Fg(AC)s(S)1540 1148 y Fd(dst)1608 1141 y Fo(m)o(ust)17 b(ask)g
Fg(H)1843 1148 y Fd(dst)1910 1141 y Fo(to)0 1197 y(participate)d(in)h
(creating)f(visas)g(p)q(erhaps)i(b)q(efore)f Fg(H)912 1204
y Fd(dst)976 1197 y Fo(kno)o(ws)g(that)f(it)g(is)h(ab)q(out)g(to)f(b)q(e)i
(called)e(b)o(y)h Fg(H)1778 1204 y Fd(sr)q(c)1829 1197 y Fo(.)k(This)0
1254 y(is)c(not)g(a)f(serious)h(problem,)g(but)g(it)f(requires)h(additional)f
(async)o(hron)o(y)h(at)f Fg(H)1349 1261 y Fd(dst)1398 1254
y Fo(.)71 1350 y(The)h(priv)m(ate-k)o(ey)f(stateful)g(visa)g(proto)q(col,)f
(and)i(other)f(priv)m(ate-k)o(ey)h(visa)f(proto)q(cols)f(that)h(do)h(not)f
(require)0 1406 y(hosts)i(to)h(generate)f(their)h(o)o(wn)f(k)o(eys,)h(ma)o(y)
f(a)o(v)o(oid)g(in)o(v)o(olving)f Fg(H)1137 1413 y Fd(dst)1203
1406 y Fo(in)i(this)f(async)o(hronous)h(manner.)25 b(In)18
b(this)0 1462 y(case,)h Fg(AC)s(S)210 1469 y Fd(dst)278 1462
y Fo(could)f(generate)g(the)g(required)g(k)o(eys)g(and)g(send)h(them)f(in)g
(a)g(signed,)g(encrypted)h(\\en)o(v)o(elop)q(e")0 1519 y(bac)o(k)c(to)g
Fg(H)200 1526 y Fd(sr)q(c)265 1519 y Fo(for)g(con)o(v)o(ey)o(ance)g(to)f
Fg(H)664 1526 y Fd(dst)713 1519 y Fo(.)0 1678 y Fh(7.2.2)52
b(Details)17 b(of)g(the)h(REJECT)g(mec)o(hanism)0 1803 y Fo(As)f(describ)q
(ed)h(in)f(section)g(2.3,)g(one)g(approac)o(h)g(to)g(connection)g(setup)g(is)
g(to)g(use)g(the)h(REJECT)f(mec)o(hanism)0 1859 y(to)d(disco)o(v)o(er)g(the)i
(need)f(for)g(visas,)e(rather)i(than)g(to)f(require)h Fg(H)1093
1866 y Fd(sr)q(c)1158 1859 y Fo(to)f(kno)o(w)h(in)g(adv)m(ance)g(if)g(a)g
(visa)f(is)g(required.)0 1916 y(This)h(is)f(ho)o(w)h(a)g(host)g(acquires)g(a)
g(visa)f(using)h(the)g(REJECT)h(mec)o(hanism:)56 2046 y(1.)22
b(When)f(a)f(host,)h Fg(H)451 2053 y Fd(sr)q(c)501 2046 y Fo(,)h(w)o(an)o(ts)
d(to)h(comm)o(unicate)g(with)f(a)i(another)f(host,)h Fg(H)1493
2053 y Fd(dst)1542 2046 y Fo(,)g(it)f(initially)e(sends)j(a)114
2103 y(datagram)e(addressed)i(to)g Fg(H)637 2110 y Fd(dst)707
2103 y Fo(with)f(a)h(sp)q(ecial)f(\\dumm)o(y")h(visa)f(in)h(the)g(datagram)e
(header.)37 b(This)114 2159 y(eliminates)11 b(the)j(need)g(for)e(eac)o(h)h
(host)g(to)g(kno)o(w)f(if)h(a)g(visa)f(is)h(required)g(for)f(comm)o
(unication)g(with)h(a)f(giv)o(en)114 2216 y(destination.)18
b(The)e(normal)e(routing)g(mec)o(hanism)h(is)g(used)h(to)e(c)o(ho)q(ose)h(a)g
(path)g(for)g(the)g(datagram.)56 2308 y(2.)22 b(The)16 b(datagram)f(reac)o
(hes)h(a)g(gatew)o(a)o(y)l(,)f Fg(GW)877 2315 y Fd(exit)939
2308 y Fo(,)h(on)h(the)f(b)q(oundary)h(of)e Fg(O)1405 2315
y Fd(sr)q(c)1456 2308 y Fo(.)23 b Fg(GW)1571 2315 y Fd(exit)1650
2308 y Fo(traps)15 b(the)h(data-)114 2365 y(gram)i(and)h(up)q(on)h(disco)o(v)
o(ering)e(that)h(it)g(is)f(not)h(stamp)q(ed)h(with)e(a)h(v)m(alid)g(visa,)g
(drops)g(it)g(and)g(sends)h(a)114 2421 y(sp)q(ecial)12 b(REJECT)h(message)g
(bac)o(k)f(to)g Fg(H)823 2428 y Fd(sr)q(c)874 2421 y Fo(.)19
b(The)13 b(REJECT)g(message,)f(among)g(other)h(things,)f(con)o(tains)114
2478 y(the)18 b(addresses)g(of)g(one)h(or)e(more)h(A)o(CSs)g(trusted)g(b)o(y)
g(that)g(gatew)o(a)o(y)l(,)f(eliminating)g(the)h(need)h(for)f
Fg(H)1900 2485 y Fd(sr)q(c)114 2534 y Fo(to)f(reliably)f(kno)o(w)h(the)h
(address)f(of)g(an)h(A)o(CS.)f(If)h(a)f(gatew)o(a)o(y)f(receiv)o(es)h(a)h
(datagram)e(that)h(has)g(neither)114 2591 y(a)h(v)m(alid)h(visa)g(nor)f(a)h
(dumm)o(y)g(visa,)g(then)h(the)f(source)g(host)g(presumably)g(do)q(es)g(not)g
(understand)h(the)114 2647 y(visa)f(proto)q(col)h(at)f(all;)j(instead)e(of)g
(sending)g(a)g(REJECT)h(message,)g(the)f(gatew)o(a)o(y)f(sends)i(an)f(ICMP)
114 2704 y(\\Destination)13 b(Unreac)o(hable")i(message.)952
2828 y(32)p eop
%%Page: 33 33
bop 56 45 a Fo(3.)22 b(Up)q(on)15 b(receiving)g(the)g(REJECT,)g
Fg(H)756 52 y Fd(sr)q(c)822 45 y Fo(sends)g(a)g(sp)q(ecial)g(REQUEST)h
(message)f(to)f(an)h(A)o(CS)g(\()p Fg(AC)s(S)1881 52 y Fd(sr)q(c)1932
45 y Fo(\))114 102 y(that)h(con)o(tains)g(addresses)h(of)f
Fg(H)687 109 y Fd(sr)q(c)754 102 y Fo(and)h Fg(H)882 109 y
Fd(dst)931 85 y Fp(17)969 102 y Fo(.)24 b(If)17 b(the)g(A)o(CS)g(c)o(hosen)g
(is)f(do)o(wn,)h Fg(H)1608 109 y Fd(sr)q(c)1675 102 y Fo(should)g(c)o(ho)q
(ose)114 158 y(a)i(di\013eren)o(t)g(A)o(CS)h(from)f(the)h(list)f(in)g(the)h
(REJECT)h(message,)f(and)g(try)f(again.)33 b(Because)21 b Fg(H)1807
165 y Fd(sr)q(c)1877 158 y Fo(and)114 214 y Fg(GW)193 221 y
Fd(exit)271 214 y Fo(ma)o(y)16 b(b)q(e)h(\\neigh)o(b)q(ors")e(of)h
(di\013eren)o(t)f(A)o(CSs)h(in)g(their)g(organization,)e(allo)o(wing)g
Fg(H)1698 221 y Fd(sr)q(c)1764 214 y Fo(to)i(c)o(ho)q(ose)114
271 y(the)11 b(A)o(CS)h(not)f(only)g(eliminates)f(the)i(need)g(for)f
Fg(GW)997 278 y Fd(exit)1071 271 y Fo(to)g(kno)o(w)g(whic)o(h)h(A)o(CSs)f
(are)g(up,)i(but)e(can)h(impro)o(v)o(e)114 327 y(p)q(erformance)17
b(b)q(ecause)h Fg(H)584 334 y Fd(sr)q(c)651 327 y Fo(migh)o(t)e(ha)o(v)o(e)h
(to)f(exc)o(hange)i(more)e(datagrams)g(with)g Fg(AC)s(S)1686
334 y Fd(sr)q(c)1755 327 y Fo(than)h(do)q(es)114 384 y Fg(GW)193
391 y Fd(exit)255 384 y Fo(.)56 478 y(4.)22 b Fg(AC)s(S)211
485 y Fd(sr)q(c)276 478 y Fo(authorizes)14 b(and)h(authen)o(ticates)f
Fg(H)898 485 y Fd(sr)q(c)963 478 y Fo(\(and)g(ma)o(yb)q(e)h
Fg(H)1251 485 y Fd(dst)1300 478 y Fo(\))f(and)h(sends)g(a)f(similar)f
(REQUEST)114 534 y(message)i(to)f Fg(H)382 541 y Fd(dst)447
534 y Fo(\(on)h(b)q(ehalf)g(of)g Fg(H)754 541 y Fd(sr)q(c)804
534 y Fo(\).)20 b(Because)c(this)f(datagram)f(is)h(sen)o(t)g(to)g
Fg(H)1558 541 y Fd(dst)1607 534 y Fo(,)g Fg(AC)s(S)1732 541
y Fd(sr)q(c)1798 534 y Fo(and)h(the)114 591 y(gatew)o(a)o(ys)d(of)i
Fg(O)394 598 y Fd(sr)q(c)459 591 y Fo(do)g(not)g(need)h(to)e(kno)o(w)h(the)g
(addresses)g(of)g(the)g(foreign)f(A)o(CSs.)20 b Fg(GW)1662
598 y Fd(exit)1740 591 y Fo(passes)15 b(this)114 647 y(datagram)g(b)q(ecause)
i(eac)o(h)g(visa)f(gatew)o(a)o(y)f(passes)h(datagrams)f(to)h(and)h(from)f
(its)g(lo)q(cal)g(A)o(CSs.)24 b Fg(AC)s(S)1899 654 y Fd(sr)q(c)114
703 y Fo(records)16 b(in)g(its)f(database)h(that)f(this)h(REQUEST)h(is)f(p)q
(ending;)h(p)q(ending)g(en)o(tries)f(are)g(\015ushed)h(p)q(erio)q(di-)114
760 y(cally)l(.)56 854 y(5.)22 b(If)g(the)g(destination)f(organization)g(is)g
(not)h(visa-con)o(trolled,)g(the)g(REQUEST)h(message)f(is)g(receiv)o(ed)114
910 y(b)o(y)17 b Fg(H)217 917 y Fd(dst)284 910 y Fo(whic)o(h)h(promptly)e
(replies)i(with)f(sp)q(ecial)g(VISA)o(GRANT)i(message)e(con)o(taining)f(a)i
(\\dumm)o(y")114 967 y(visa.)25 b(Otherwise,)17 b(the)g(REQUEST)h(message)f
(is)f(trapp)q(ed)i(b)o(y)f Fg(GW)1321 974 y Fd(entr)1390 967
y Fo(,)h(the)f(gatew)o(a)o(y)e(via)i(whic)o(h)g(the)114 1023
y(datagram)12 b(en)o(ters)i Fg(O)484 1030 y Fd(dst)533 1023
y Fo(.)20 b Fg(GW)645 1030 y Fd(entr)728 1023 y Fo(is)14 b(programmed)f(to)h
(reroute)g(the)g(REQUEST)h(message)f(to)f Fg(AC)s(S)1887 1030
y Fd(dst)1937 1023 y Fo(.)56 1117 y(6.)22 b Fg(AC)s(S)211 1124
y Fd(dst)276 1117 y Fo(receiv)o(es)15 b(the)g(REQUEST,)h(and,)f(after)g
(authen)o(ticating)f(and)h(authorizing)f Fg(H)1649 1124 y Fd(dst)1714
1117 y Fo(\(and)h(ma)o(yb)q(e)114 1173 y Fg(H)152 1180 y Fd(sr)q(c)202
1173 y Fo(\),)f(sends)i(either)e Fg(V)c(K)s(E)s(Y)639 1180
y Fd(entr)723 1173 y Fo(\(for)j(the)i(stateful)f(proto)q(col\),)f(or)i
Fg(V)1341 1180 y Fd(entr)1425 1173 y Fo(\(for)f(the)h(stateless)e(proto)q
(col\))114 1230 y(bac)o(k)h(to)h Fg(AC)s(S)372 1237 y Fd(sr)q(c)438
1230 y Fo(in)f(a)h(sp)q(ecial)f(VISA)o(GRANT)i(message)e(\(and)h(to)f
Fg(GW)1383 1237 y Fd(dst)1447 1230 y Fo(for)g(the)h(stateful)f(proto)q
(col\).)56 1324 y(7.)22 b Fg(AC)s(S)211 1331 y Fd(sr)q(c)281
1324 y Fo(receiv)o(es)e(the)f(VISA)o(GRANT)h(message)f(from)g
Fg(AC)s(S)1221 1331 y Fd(dst)1290 1324 y Fo(and)h(no)o(w)f(issues)g(either)g
Fg(V)10 b(K)s(E)s(Y)1888 1331 y Fd(exit)114 1380 y Fo(\(for)k(the)i(stateful)
f(proto)q(col\),)f(or)h Fg(V)736 1387 y Fd(exit)815 1380 y
Fo(\(for)f(the)i(stateless)f(proto)q(col\).)20 b(It)c(sends)g(b)q(oth)g
Fg(V)10 b(K)s(E)s(Y)1799 1387 y Fd(exit)1877 1380 y Fo(and)114
1437 y Fg(V)f(K)s(E)s(Y)255 1444 y Fd(entr)336 1437 y Fo(\(or)j
Fg(V)434 1444 y Fd(exit)508 1437 y Fo(and)h Fg(V)621 1444 y
Fd(entr)690 1437 y Fo(\))f(to)f Fg(H)810 1444 y Fd(sr)q(c)873
1437 y Fo(\(and)h(to)f Fg(GW)1107 1444 y Fd(sr)q(c)1170 1437
y Fo(for)g(the)i(stateful)e(proto)q(col\),)g(also)g(b)o(y)h(means)114
1493 y(of)g(a)g(VISA)o(GRANT)h(message.)19 b(The)12 b(\\p)q(ending)i
(REQUEST")f(records)f(in)g(the)h(databases)f(of)g(b)q(oth)h
Fg(H)1900 1500 y Fd(sr)q(c)114 1549 y Fo(and)i Fg(AC)s(S)299
1556 y Fd(sr)q(c)365 1549 y Fo(ma)o(y)g(b)q(e)h(remo)o(v)o(ed)e(at)h(this)g
(time.)56 1643 y(8.)22 b Fg(H)152 1650 y Fd(sr)q(c)216 1643
y Fo(adds)14 b(the)g(visa)g(information)e(con)o(tained)i(in)g(the)g(VISA)o
(GRANT)h(message)e(to)h(its)f(database,)h(asso-)114 1700 y(ciated)g(with)h
(the)g(foreign)g(host)f Fg(H)716 1707 y Fd(dst)765 1700 y Fo(.)71
1833 y(In)f(the)g(stateful)f(v)m(arian)o(t)f(of)i(the)g(visa)f(proto)q(col,)f
(during)i(this)f(pro)q(cedure)i(the)f(visa)f(information)f(m)o(ust)h(also)0
1889 y(b)q(e)k(distributed)f(to)f(the)h(gatew)o(a)o(ys;)e(this)i(is)g
(describ)q(ed)h(in)f(more)g(detail)f(in)h(section)g(3.1.)71
1985 y(After)f(this)h(pro)q(cedure,)h(all)e(the)h(in)o(terested)g(parties)f
(ha)o(v)o(e)h(the)g(visa)g(information)e(they)i(need.)71 2080
y(Note)h(that)g(neither)h Fg(H)476 2087 y Fd(sr)q(c)543 2080
y Fo(nor)f Fg(AC)s(S)722 2087 y Fd(sr)q(c)790 2080 y Fo(is)g(required)h(to)f
(use)h(the)g(REJECT)g(mec)o(hanism)f(to)g(acquire)h(the)0 2137
y(appropriate)9 b(A)o(CS)i(addresses.)18 b(Eac)o(h)11 b(is)f(free)g(to)g
(address)g(a)h(REQUEST)g(message)f(directly)g(to)f(the)i(appropriate)0
2193 y(A)o(CS,)j(if)g(its)f(address)i(is)f(kno)o(wn.)19 b(\(That)13
b(is,)h Fg(H)815 2200 y Fd(sr)q(c)880 2193 y Fo(sends)h(its)e(REQUEST)j(to)d
Fg(AC)s(S)1452 2200 y Fd(sr)q(c)1504 2193 y Fo(,)h(and)g Fg(AC)s(S)1715
2200 y Fd(sr)q(c)1781 2193 y Fo(sends)h(its)0 2250 y(datagram)g(to)g
Fg(AC)s(S)359 2257 y Fd(dst)409 2250 y Fo(.\))23 b(This)16
b(can)g(reduce)h(latency)f(of)g(visa)f(setup)i(b)o(y)f(up)g(to)g(3)g(pac)o(k)
o(et)g(transfers)f(\(since)h(in)0 2306 y(the)f(REJECT)h(proto)q(col)e(all)g
(of)h(the)g(pac)o(k)o(et)g(transfers)f(o)q(ccur)i(serially\).)p
0 2348 780 2 v 37 2375 a Fk(17)69 2391 y Fj(During)f(the)g(time)f(b)q(et)o(w)
o(een)h(steps)g(\(1\))f(and)i(\(3\),)e Fa(H)851 2395 y Fb(sr)q(c)911
2391 y Fj(ma)o(y)h(con)o(tin)o(ue)g(to)g(send)g(datagrams)g(to)g
Fa(H)1559 2395 y Fb(dst)1618 2391 y Fj(and)g(they)g(will)e(result)0
2437 y(in)h(REJECT)f(messages)i(sen)o(t)f(bac)o(k)h(b)o(y)f
Fa(GW)671 2441 y Fb(exit)728 2437 y Fj(.)20 b(Ho)o(w)o(ev)o(er,)13
b(in)h(order)h(to)e(prev)o(en)o(t)i(confusion,)g Fa(H)1473
2441 y Fb(sr)q(c)1532 2437 y Fj(should)g(ignore)f(all)f(but)i(the)0
2482 y(\014rst)e(REJECT)g(message.)k(T)m(o)c(do)g(this,)g Fa(H)638
2486 y Fb(sr)q(c)696 2482 y Fj(k)o(eeps)h(a)f(database)h(of)f(p)q(ending)h
(REQUESTs)f(that)g(it)g(has)g(issued.)952 2828 y Fo(33)p eop
%%Page: 34 34
bop 0 45 a Fq(7.3)56 b(Visas)19 b(and)g(fragmen)n(tation)0
170 y Fo(In)12 b(a)f(n)o(um)o(b)q(er)h(of)f(in)o(ternet)o(w)o(orking)e(proto)
q(cols,)i(including)g(IP)l(,)g(a)g(gatew)o(a)o(y)f(ma)o(y)h(ha)o(v)o(e)f(to)h
(fragmen)o(t)f(a)h(datagram)0 227 y(if)i(it)f(cannot)h(b)q(e)h(transmitted)e
(in)h(a)g(single)f(pac)o(k)o(et.)19 b(Data)12 b(signatures)h(complicate)f
(the)h(use)h(of)e(fragmen)o(tation;)0 283 y(with)k(data-signatures,)e(the)j
(fragmen)o(ts)e(m)o(ust)h(app)q(ear)g(to)g(ha)o(v)o(e)g(b)q(een)h(signed)f(b)
o(y)h Fg(H)1507 290 y Fd(sr)q(c)1557 283 y Fo(,)f(but)g(the)h(signatures)0
339 y(w)o(ould)g(ha)o(v)o(e)g(to)g(b)q(e)h(computed)g(b)o(y)g(the)f(fragmen)o
(ting)f(gatew)o(a)o(y)l(.)26 b(With)17 b(public-k)o(ey)g(signatures,)g(this)g
(is)g(im-)0 396 y(p)q(ossible,)d(since)h(only)f Fg(H)431 403
y Fd(sr)q(c)495 396 y Fo(can)h(compute)g(the)f(signature.)19
b(Ev)o(en)c(with)e(priv)m(ate-k)o(ey)i(visas,)e(fragmen)o(tation)f(is)0
452 y(a)j(problem)g(b)q(ecause)h(only)f(a)g(visa-gatew)o(a)o(y)e(can)i(do)g
(it)f(while)h(preserving)g(the)g(data)g(signatures.)71 548
y(F)l(ragmen)o(tation)c(is)i(at)g(b)q(est)h(a)f(necessary)h(evil[11)n(];)g
(it)e(is)h(almost)g(alw)o(a)o(ys)e(b)q(etter)j(to)f(set)g(datagram)f(sizes)i
(at)0 604 y Fg(H)38 611 y Fd(sr)q(c)88 604 y Fo(,)j(to)f(mak)o(e)g(the)h(b)q
(est)g(p)q(ossible)f(use)h(of)f(the)h(a)o(v)m(ailable)e(bandwidth)i(and)g(to)
f(pro)o(vide)g(ac)o(kno)o(wledgemen)o(ts)0 661 y(for)f(eac)o(h)g
(transmission)f(unit.)20 b(In)c(this)e(do)q(cumen)o(t,)i(rather)e(than)i(try)
e(to)h(devise)h(a)f(proto)q(col)f(for)g(fragmen)o(ting)0 717
y(visa-carrying)g(datagrams,)g(w)o(e)h(insist)g(that)g(the)h(source)f(host)h
(a)o(v)o(oid)e(sending)i(datagrams)e(that)h(will)f(ha)o(v)o(e)i(to)0
774 y(b)q(e)k(fragmen)o(ted.)31 b(\(Metho)q(ds)19 b(ha)o(v)o(e)f(b)q(een)i
(prop)q(osed)g(for)e(accomo)q(dating)h(fragmen)o(tation[22)m(].\))30
b(A)20 b(gatew)o(a)o(y)0 830 y(should)g(assist)f(in)g(this)h(b)o(y)g
(returning)f(an)h(error)f(datagram)g(when)h(it)f(is)h(unable)g(to)f(transmit)
g(a)g(datagram)0 887 y(without)e(fragmen)o(ting)g(it;)i(in)f(fact,)g(the)g
(IP)h(proto)q(col)e(includes)h(a)g(mec)o(hanism)g(for)g(doing)f(so)h
(\(through)g(the)0 943 y(ICMP)d(\\Destination)e(Unreac)o(hable/fragmen)o
(tation)g(needed")j(message[19)o(]\).)0 1125 y Fi(8)69 b(Conclusions)0
1266 y Fo(W)l(e)22 b(ha)o(v)o(e)g(describ)q(ed)h(t)o(w)o(o)e(v)m(ariations)f
(on)i(the)g(original)f(visa)g(sc)o(heme[5])g(for)h(con)o(trolling)e(datagram)
g(\015o)o(w)0 1323 y(b)q(et)o(w)o(een)h(organizations.)33 b(The)21
b(\014rst)f(in)o(v)o(olv)o(es)f(direct)h(transfer)g(of)g(authen)o(tication)f
(information)g(b)q(et)o(w)o(een)0 1379 y(A)o(CSs)d(and)g(gatew)o(a)o(ys,)e
(state)h(main)o(tenance)h(in)g(the)g(gatew)o(a)o(ys,)e(and)j(a)e
(cryptographic)h(mec)o(hanism)f(to)h(mark)0 1435 y(authorized)d(datagrams.)k
(In)d(the)f(second)g(v)m(ariation,)e(authen)o(tication)h(information)f(is)h
(\\piggybac)o(k)o(ed")g(on)h(the)0 1492 y(con)o(trolled)18
b(datagrams,)h(rather)f(than)i(directly)e(comm)o(unicated)h(b)q(et)o(w)o(een)
h(A)o(CSs)f(and)h(gatew)o(a)o(ys,)e(and)i(the)0 1548 y(gatew)o(a)o(ys)d(main)
o(tain)g(cac)o(hes)h(rather)g(than)g(true)h(databases.)28 b(The)19
b(t)o(w)o(o)e(proto)q(cols)h(v)m(ary)g(in)g(the)h(n)o(um)o(b)q(er)f(of)0
1605 y(datagrams)10 b(required)h(to)f(authorize)h(a)g(connection,)g(their)g
(b)q(eha)o(vior)g(under)h(load)e(and)h(during)h(failure)e(reco)o(v)o(ery)l(,)
0 1661 y(and)18 b(the)f(amoun)o(t)g(of)g(encryption)h(p)q(erformed)g(on)f
(eac)o(h)h(datagram;)f(exp)q(erimen)o(tal)g(results)g(illustrate)f(these)0
1718 y(tradeo\013s.)71 1813 y(Adaptation)h(of)i(visas)f(in)h(actual)f(in)o
(ternet)o(w)o(orks)f(dep)q(ends)j(on)f(sev)o(eral)f(prerequisites:)27
b(resolution)18 b(of)g(a)0 1870 y(few)j(design)g(c)o(hoices)g(and)h
(parameters,)f(the)g(widespread)h(a)o(v)m(ailabilit)o(y)c(of)j(inexp)q(ensiv)
o(e,)i(fast,)e(and)g(secure)0 1926 y(cryptosystems,)e(and)g(su\016cien)o(t)g
(co)q(ordination)f(among)g(organizations)f(to)i(mak)o(e)f(the)h(system)g(w)o
(orth)o(while.)0 1983 y(Visas)12 b(are)h(at)g(b)q(est)g(a)g(robust)g
Ff(me)n(chanism)f Fo(for)h(enforcing)f(information)g(\015o)o(w)g(con)o(trol)g
Ff(p)n(olicies)p Fo(;)h(the)g(c)o(hoice)g(and)0 2039 y(sp)q(eci\014cation)i
(of)g(these)g(p)q(olicies)g(will)f(presen)o(t)h(di\016cult)g(and)g(in)o
(teresting)f(problems.)0 2221 y Fi(9)69 b(Ac)n(kno)n(wledgemen)n(ts)0
2362 y Fo(Our)21 b(thanks)g(to)f(n)o(umerous)g(colleagues)g(in)h(the)g(In)o
(ternet)f(comm)o(unit)o(y)g(for)g(their)g(commen)o(ts)h(on)f(previous)0
2419 y(drafts,)j(including:)35 b(Bob)22 b(Braden,)j(Annette)e(deSc)o(hon,)i
(Mic)o(hael)c(Sc)o(hro)q(eder,)k(Rob)q(ert)e(Sansom)f(and)h(the)0
2475 y(anon)o(ymous)15 b(review)o(ers.)71 2571 y(P)o(articular)h
(appreciation)h(to:)26 b(P)o(aul)17 b(Crumley)h(of)g(the)g(Carnegie)g(Mellon)
f(Univ)o(ersit)o(y)g(ITC)h(for)g(making)0 2627 y(a)o(v)m(ailable)e(the)h(DES)
f(hardw)o(are)g(and)h(assisting)f(us)h(in)f(putting)h(it)f(to)g(w)o(ork,)g
(Mark)g(LaRouc)o(he)i(of)e(UCLA)i(for)0 2684 y(pro)o(viding)h(temp)q(orary)h
(access)g(to)f(UCLA)i(net)o(w)o(ork)e(facilities)f(in)i(supp)q(ort)g(of)g
(our)g(In)o(ternet)g(exp)q(erimen)o(ts,)952 2828 y(34)p eop
%%Page: 35 35
bop 0 45 a Fo(and)21 b(to)f(Mark)g(Bro)o(wn)g(of)g(the)g(USC)h(Computing)f
(Services)h(for)f(helping)g(to)g(con\014gure)h(our)g(exp)q(erimen)o(tal)0
102 y(lab)q(oratory)13 b(in)o(ternet.)952 2828 y(35)p eop
%%Page: 36 36
bop 0 45 a Fi(A)69 b(Public)21 b(k)n(ey)i(proto)r(col)g(without)e(state)i
(information)f(in)g(gatew)n(a)n(ys)0 186 y Fo(It)14 b(is)f(p)q(ossible)g(to)g
(construct)h(public-k)o(ey)g(v)m(arian)o(ts)e(of)i(visa)f(proto)q(cols.)18
b(In)c(this)f(app)q(endix,)i(w)o(e)e(sho)o(w)g(ho)o(w)h(this)0
242 y(migh)o(t)j(b)q(e)j(done.)30 b(Public-k)o(ey)19 b(metho)q(ds)f(ha)o(v)o
(e)h(certain)f(inheren)o(t)g(adv)m(an)o(tages)g(o)o(v)o(er)g(priv)m(ate-k)o
(ey)g(metho)q(ds,)0 299 y(but)h(to)q(da)o(y)g(they)h(are)f(m)o(uc)o(h)g(more)
g(exp)q(ensiv)o(e)h(to)e(implemen)o(t;)j(consequen)o(tly)l(,)f(practically)e
(a)o(v)m(ailable)g(data)0 355 y(rates)c(are)h(inadequate.)71
451 y(The)10 b(public)h(k)o(ey)f(v)m(arian)o(t)g(of)g(the)h(stateless)e
(proto)q(col)g(is)h(quite)h(similar)d(to)i(the)h(single-k)o(ey)f(stateless)f
(proto)q(col)0 507 y(\(see)14 b(section)h(4\).)k(As)14 b(b)q(efore,)h(it)e(b)
q(egins)i(with)f Fg(H)855 514 y Fd(sr)q(c)920 507 y Fo(con)o(tacting)f
Fg(AC)s(S)1237 514 y Fd(sr)q(c)1303 507 y Fo(to)h(request)g(the)h(issuance)f
(of)g(a)h(visa-)0 564 y(pair;)f(in)h(this)g(case,)g(instead)g(of)f(passing)h
(t)o(w)o(o)f(priv)m(ate)h(k)o(eys,)f Fg(H)1114 571 y Fd(sr)q(c)1180
564 y Fo(pro)o(vides)g(its)h(\(single\))f(public)h(k)o(ey)l(.)71
659 y(The)g(exit)g(visa)f(issued)h(b)o(y)h Fg(AC)s(S)641 666
y Fd(sr)q(c)707 659 y Fo(is)378 747 y Fg(V)405 754 y Fd(exit)480
747 y Fo(=)d Fe(f)p Fg(H)589 754 y Fd(sr)q(c)640 747 y Fg(;)8
b(H)699 754 y Fd(dst)747 747 y Fg(;)g(K)s(P)e(U)f(B)915 754
y Fd(H)944 758 y Fb(sr)q(c)992 747 y Fg(;)j(E)s(X)t(P)e(I)t(RAT)g(I)t(ON)f
Fe(g)1377 728 y Fd(K)r(P)g(RI)s(V)1501 734 y Fb(O)1524 738
y(sr)q(c)0 835 y Fg(K)s(P)h(U)f(B)147 842 y Fd(H)176 846 y
Fb(sr)q(c)244 835 y Fo(is)18 b(either)h(passed)g(b)o(y)f Fg(H)678
842 y Fd(sr)q(c)748 835 y Fo(to)g Fg(AC)s(S)904 842 y Fd(sr)q(c)974
835 y Fo(when)h(it)g(asks)f(for)g(a)h(visa,)f(or)h(more)f(lik)o(ely)g(is)g
(kno)o(wn)0 891 y(to)f Fg(AC)s(S)155 898 y Fd(sr)q(c)225 891
y Fo(as)h(part)f(of)h(the)g(mec)o(hanism)g(it)f(uses)i(to)e(con\014rm)h(the)h
(iden)o(tify)e(of)h Fg(H)1474 898 y Fd(sr)q(c)1524 891 y Fo(.)29
b(EXPIRA)l(TION)20 b(is)d(a)0 948 y(timestamp)d(indicating)g(when)i(the)f
(visa)g(expires.)71 1043 y(The)g(en)o(trance)g(visa)g(issued)g(b)o(y)g
Fg(AC)s(S)734 1050 y Fd(dst)799 1043 y Fo(is)g(similar:)376
1131 y Fg(V)403 1138 y Fd(entr)484 1131 y Fo(=)e Fe(f)p Fg(H)593
1138 y Fd(sr)q(c)643 1131 y Fg(;)8 b(H)702 1138 y Fd(dst)751
1131 y Fg(;)g(K)s(P)e(U)f(B)919 1138 y Fd(H)948 1142 y Fb(sr)q(c)996
1131 y Fg(;)j(E)s(X)t(P)e(I)t(RAT)g(I)t(ON)f Fe(g)1381 1112
y Fd(K)r(P)g(RI)s(V)1505 1118 y Fb(O)1528 1126 y(dst)0 1219
y Fo(and)15 b(lik)o(ewise)f(can)i(b)q(e)g(v)o(eri\014ed)f(b)o(y)g(an)o(y)g
(gatew)o(a)o(y)e(b)q(elonging)i(to)g Fg(O)1181 1226 y Fd(dst)1230
1219 y Fo(.)71 1315 y Fg(H)109 1322 y Fd(sr)q(c)174 1315 y
Fo(then)h(creates)f(the)g(\\safe")f(v)o(ersion)h(of)f(the)i(datagram)d(as)i
(follo)o(ws:)497 1402 y Fg(S)s(AF)6 b(E)s(D)q(AT)g(A)12 b Fo(=)h
Fe(f)p Fg(H)895 1409 y Fd(sr)q(c)945 1402 y Fg(;)8 b(H)1004
1409 y Fd(dst)1053 1402 y Fg(;)g(S)s(E)s(QN)d(U)g(M)r(;)j(DAT)e(A)p
Fe(g)1485 1384 y Fd(K)r(P)f(RI)s(V)1610 1390 y Fb(H)1635 1394
y(s)o(r)q(c)185 1471 y Fg(S)s(AF)h(E)s(H)t(D)q(R)11 b Fo(=)i
Fe(f)p Fg(H)558 1478 y Fd(sr)q(c)609 1471 y Fg(;)8 b(H)668
1478 y Fd(dst)716 1471 y Fg(;)g(S)s(E)s(QN)d(U)g(M)r(;)j(V)1012
1478 y Fd(exit)1072 1471 y Fg(;)g(V)1120 1478 y Fd(entr)1189
1471 y Fg(;)g(K)s(P)e(U)f(B)1357 1478 y Fd(H)1386 1482 y Fb(sr)q(c)1433
1471 y Fg(;)j Ff(other\014elds)s Fe(g)699 1540 y Fg(S)s(AF)e(E)s(D)q(GRAM)16
b Fo(=)d Fe(f)p Fg(S)s(AF)6 b(E)s(H)t(D)q(R;)i(S)s(AF)e(E)s(D)q(AT)g(A)p
Fe(g)71 1667 y Fo(SAFED)o(A)l(T)l(A)19 b(is)h(constructed)f(so)h(that)f(all)g
(\014elds)h(of)f(the)h(original)e(datagram)g(whose)i(v)m(alues)g(m)o(ust)f(b)
q(e)0 1724 y(c)o(hec)o(k)o(ed)c(are)f(signed)h(b)o(y)f Fg(H)480
1731 y Fd(sr)q(c)531 1724 y Fo(;)g(w)o(e)g(refer)h(to)e(this)h(as)h(the)f
Ff(data)j(signatur)n(e)p Fo(.)i(The)14 b(safe)h(datagram)e(still)g(includes)0
1780 y(the)20 b(con)o(ten)o(ts)g(of)g(the)g(original)f(datagram)f(header)j
(in)f(an)g(unencrypted)i(form,)e(so)g(it)g(can)g(b)q(e)h(handled)g(b)o(y)0
1836 y(non-visa)14 b(gatew)o(a)o(ys)f(without)g(additional)g(mec)o(hanism.)19
b Fg(H)1044 1843 y Fd(dst)1107 1836 y Fo(m)o(ust)14 b(b)q(e)h(able)f(to)g(in)
o(v)o(ert)g(the)g(\\signing")f(of)h(the)0 1893 y(data)g(segmen)o(t,)f(whic)o
(h)h(is)g(wh)o(y)g(a)g(cop)o(y)g(of)f Fg(K)s(P)6 b(U)f(B)898
1900 y Fd(H)927 1904 y Fb(sr)q(c)990 1893 y Fo(is)14 b(passed)g(in)g
(\\unsigned")g(form)g(in)g(SAFEHDR.)g(The)0 1949 y(other)h(new)g(\014elds)h
(in)f(the)g(safe)g(header)g(are)g(purely)h(for)e(the)h(b)q(ene\014t)i(of)e
(visa-gatew)o(a)o(ys.)71 2045 y(Once)k(the)f(safe)g(datagram)f(has)h(b)q(een)
h(constructed,)g(it)e(is)h(sen)o(t)g(along)f(the)h(c)o(hosen)h(route)f(b)o(y)
g(the)g(usual)0 2101 y(means,)f(and)g(reac)o(hes)g(gatew)o(a)o(y)f
Fg(GW)661 2108 y Fd(exit)723 2101 y Fo(.)26 b Fg(GW)841 2108
y Fd(exit)920 2101 y Fo(m)o(ust)17 b(v)o(erify)f(that)g(the)h(exit)g(visa)f
(is)g(v)m(alid,)h(the)g(exit)g(visa)0 2158 y(allo)o(ws)c Fg(H)173
2165 y Fd(sr)q(c)239 2158 y Fo(to)h(send)i(datagrams)e(to)g
Fg(H)714 2165 y Fd(dst)763 2158 y Fo(,)h(and)h(the)f(con)o(ten)o(ts)f(of)h
(the)g(datagram)f(are)h(those)g(that)f(w)o(ere)h(sen)o(t)0
2214 y(b)o(y)g Fg(H)101 2221 y Fd(sr)q(c)151 2214 y Fo(.)20
b(The)c(\014rst)f(condition)f(is)h(c)o(hec)o(k)o(ed)g(b)o(y)h(computing)361
2302 y Fe(f)p Fg(H)422 2309 y Fd(sr)q(c)472 2302 y Fg(;)8 b(H)531
2309 y Fd(dst)580 2302 y Fg(;)g(K)s(P)e(U)f(B)748 2309 y Fd(H)777
2313 y Fb(sr)q(c)824 2302 y Fg(;)j(E)s(X)t(P)e(I)t(RAT)g(I)t(O)q(N)f
Fe(g)k Fo(=)k Fe(f)p Fg(V)1317 2309 y Fd(exit)1379 2302 y Fe(g)1402
2283 y Fd(K)r(P)5 b(U)t(B)1516 2289 y Fb(O)1539 2293 y(sr)q(c)0
2390 y Fo(and)17 b(v)o(erifying)e(that)i(the)f(EXPIRA)l(TION)j(time)d(has)h
(not)f(passed.)25 b(Also,)16 b(if)g(the)h(visa)f(is)g(not)g(v)m(alid)h(then)g
(the)0 2446 y(extracted)12 b Fg(K)s(P)6 b(U)f(B)345 2453 y
Fd(H)374 2457 y Fb(sr)q(c)436 2446 y Fo(will)11 b(b)q(e)j(meaningless)e(and)h
(consequen)o(tly)g(will)e(not)h(pro)q(duce)i(correct)f(v)m(alues)f(for)h
Fg(H)1900 2453 y Fd(sr)q(c)0 2503 y Fo(and)k Fg(H)128 2510
y Fd(dst)195 2503 y Fo(when)g(the)g(third)g(condition)g(is)f(c)o(hec)o(k)o
(ed.)27 b(The)17 b(second)h(condition)e(is)h(c)o(hec)o(k)o(ed)h(b)o(y)f(v)o
(erifying)f(that)0 2559 y(the)k Fg(H)121 2566 y Fd(sr)q(c)191
2559 y Fo(and)g Fg(H)322 2566 y Fd(dst)391 2559 y Fo(extracted)g(from)f(the)h
(visa)f(are)g(those)h(found)g(in)g(the)g(datagram)e(header.)34
b(The)20 b(third)0 2616 y(condition)14 b(is)h(c)o(hec)o(k)o(ed)h(b)o(y)f
(using)g(the)g Fg(K)s(P)6 b(U)f(B)819 2623 y Fd(H)848 2627
y Fb(sr)q(c)912 2616 y Fo(extracted)15 b(from)f(the)i(visa)e(to)h(compute)366
2704 y Fe(f)p Fg(H)427 2711 y Fd(sr)q(c)477 2704 y Fg(;)8 b(H)536
2711 y Fd(dst)584 2704 y Fg(;)g(S)s(E)s(QN)d(U)g(M)r(;)j(D)q(AT)e(A)p
Fe(g)j Fo(=)k Fe(f)p Fg(S)s(AF)6 b(E)s(D)q(AT)g(A)p Fe(g)1397
2685 y Fd(K)r(P)f(U)t(B)1511 2691 y Fb(H)1536 2695 y(sr)q(c)952
2828 y Fo(36)p eop
%%Page: 37 37
bop 0 45 a Fo(and)16 b(then)g(v)o(erifying)f(that)g(the)h(\014elds)g(in)g
(the)f(datagram)g(header)h(\(sp)q(eci\014cally)f Fg(H)1447
52 y Fd(sr)q(c)1498 45 y Fo(,)g Fg(H)1564 52 y Fd(dst)1613
45 y Fo(,)h(and)g(SEQNUM\))0 102 y(matc)o(h)f(those)g(extracted.)71
197 y(If)e(all)e(three)i(conditions)f(are)h(met,)f(then)h(the)g(datagram)f
(is)g(what)g(it)g(purp)q(orts)h(to)f(b)q(e,)h(and)g(SAFEDGRAM)0
254 y(can)21 b(b)q(e)g(forw)o(arded)e(out)h(of)g(the)h(organization.)34
b(The)20 b(pro)q(cedure)i(follo)o(w)o(ed)d(when)h(the)h(datagram)e(reac)o
(hes)0 310 y Fg(GW)79 317 y Fd(entr)163 310 y Fo(is)c(analogous.)71
406 y(Because)i Fg(O)281 413 y Fd(dst)348 406 y Fo(ma)o(y)f(w)o(an)o(t)g(to)h
(ensure)h(that)e(no)h(unauthorized)h(hosts)e(on)h(its)g(net)o(w)o(ork)f(see)h
(the)h(con)o(ten)o(ts)0 462 y(of)d(the)g(datagram,)f Fg(GW)427
469 y Fd(entr)511 462 y Fo(ma)o(y)h(ha)o(v)o(e)g(to)f(encrypt)i(the)f(data)g
(segmen)o(t)g(one)g(more)g(time,)g(using)g Fg(K)s(P)6 b(U)f(B)1874
469 y Fd(H)1903 475 y Fb(dst)0 519 y Fo(so)14 b(that)f(only)g
Fg(H)288 526 y Fd(dst)351 519 y Fo(can)h(read)g(the)g(datagram)801
502 y Fp(18)837 519 y Fo(.)19 b Fg(GW)948 526 y Fd(entr)1032
519 y Fo(can)14 b(acquire)f Fg(K)s(P)6 b(U)f(B)1417 526 y Fd(H)1446
532 y Fb(dst)1508 519 y Fo(b)o(y)13 b(using)h(some)g(metho)q(d)0
575 y(external)g(to)g(the)h(visa)f(system,)g(or)g Fg(AC)s(S)715
582 y Fd(dst)780 575 y Fo(can)h(supply)g(this)f(k)o(ey)h(b)o(y)f(including)h
(it)f(as)g(an)h(additional)e(\014eld)i(in)0 631 y Fg(V)27 638
y Fd(entr)96 631 y Fo(.)71 727 y(When)g(SAFEDGRAM)g(\014nally)f(reac)o(hes)h
Fg(H)851 734 y Fd(dst)901 727 y Fo(,)f(the)i(actual)e(data)g(segmen)o(t)h
(can)g(b)q(e)h(extracted)f(using)g(the)0 784 y(cop)o(y)20 b(of)f
Fg(K)s(P)6 b(U)f(B)314 791 y Fd(H)343 795 y Fb(sr)q(c)411 784
y Fo(in)20 b(SAFEHDR,)f(p)q(erhaps)h(after)f(in)o(v)o(erting)f(the)i
(encryption)g(done)g(b)o(y)f Fg(GW)1778 791 y Fd(entr)1848
784 y Fo(.)33 b(By)0 840 y(p)q(ostp)q(oning)20 b(the)g(\014nal)f(decryption)h
(to)f(this)g(p)q(oin)o(t,)h(w)o(e)g(pro)o(vide)f(the)h(assurance)g(of)f
(digital)f(signatures)h(on)0 896 y(an)e(end-to-end)h(basis)e(with)g(minimal)g
(additional)f(cost.)24 b(Alternativ)o(ely)l(,)15 b Fg(GW)1388
903 y Fd(entr)1474 896 y Fo(is)i(the)g(last)f(gatew)o(a)o(y)f(that)0
953 y(needs,)h(for)f(the)h(purp)q(oses)g(of)g(in)o(ter-organizational)c
(information-\015o)o(w)i(con)o(trol,)g(to)h(in)o(v)o(ert)f(the)i(signature)f
(on)0 1009 y(the)d(data)g(segmen)o(t.)19 b(Therefore,)12 b(it)g(can)g
(reconstruct)g(the)h(original,)d(unsigned)j(datagram)e(at)g(this)h(p)q(oin)o
(t)g(\(since)0 1066 y(it)i(has)i(already)e(done)i(the)f(decryption\).)71
1161 y(This)c(v)m(arian)o(t)f(has)i(the)g(adv)m(an)o(tage)f(o)o(v)o(er)g
(priv)m(ate-k)o(ey)g(signatures)g(that)g Fg(H)1355 1168 y Fd(sr)q(c)1417
1161 y Fo(need)h(do)g(one)g(less)f(encryption)0 1218 y(\(generating)i(one)h
(signed)h(data)e(segmen)o(t)h(instead)g(of)g(t)o(w)o(o)e(signature)i(v)m
(alues\).)19 b(On)c(the)f(other)g(hand,)h Fg(H)1829 1225 y
Fd(dst)1892 1218 y Fo(\(or)0 1274 y Fg(GW)79 1281 y Fd(entr)148
1274 y Fo(\))g(do)q(es)h(ha)o(v)o(e)e(to)h(decrypt)g(the)h(data)e(segmen)o(t)
h(in)g(order)g(to)g(read)g(it.)0 1457 y Fi(References)445 1577
y Fo([1])21 b(Da)o(vid)13 b(Clark,)f Ff(Policy)i(R)n(outing)g(in)g(Internet)f
(Pr)n(oto)n(c)n(ols,)h(V)m(ersion)f(1.1)p Fo(,)g Fh(Unpub-)515
1633 y(lished)19 b(pap)q(er)p Fo(,)f(T)l(o)f(b)q(e)g(published)h(as)f(an)g
(In)o(ternet)h(RF)o(C)e(and)i(a)o(v)m(ailable)e(from)515 1690
y(the)21 b(author)e(at)h(MIT)g(Lab)q(oratory)g(for)f(Computer)h(Science,)i
(545)e(T)l(ec)o(hnology)515 1746 y(Sq.,)15 b(Cam)o(bridge)f(MA)h(02139.)445
1840 y([2])21 b(D.)16 b(W.)h(Da)o(vies)e(and)i(W.)f(L.)h(Price,)g
Ff(Se)n(curity)g(F)m(or)g(Computer)i(Networks)p Fo(,)d Fh(New)515
1896 y(Y)l(ork,)g(NY:)g(Wiley)p Fo(,)e(1984.)445 1990 y([3])21
b(W.)d(Di\016e,)f Ff(The)i(First)f(T)m(en)f(Y)m(e)n(ars)g(of)i(Public-Key)g
(Crypto)n(gr)n(aphy)p Fo(,)g Fh(Pro)q(ceed-)515 2047 y(ings)e(of)h(the)f
(IEEE)p Fo(,)f(v)o(ol.)e(76,)g(No.)h(5,)f(pp.)i(560-577,)d(Ma)o(y)h(1988.)445
2141 y([4])21 b(W.)e(Di\016e)g(and)g(M.)g(E.)g(Hellman,)g Ff(New)h(Dir)n(e)n
(ctions)f(in)h(Crypto)n(gr)n(aphy)p Fo(,)g Fh(IEEE)515 2197
y(T)l(ransactions)h(on)h(Information)e(Theory)p Fo(,)f(v)o(ol.)e(IT-22,)h
(No.)g(11,)g(pp.)h(644-)515 2253 y(654,)14 b(No)o(v)o(em)o(b)q(er,)h(1976.)
445 2347 y([5])21 b(D.)d(Estrin)f(and)h(G.)f(Tsudik,)h Ff(Visa)h(Scheme)f
(for)h(Inter-Or)n(ganization)f(Network)515 2404 y(Se)n(curity)p
Fo(,)13 b(IEEE,)h Fh(Pro)q(ceedings)g(of)i(the)g(IEEE)g(Symp)q(osium)e(on)h
(Securit)o(y)515 2460 y(and)j(Priv)m(acy)p Fo(,)c(pp.)h(174-183,)e(April,)i
(1987.)p 0 2500 780 2 v 37 2527 a Fk(18)69 2542 y Fa(O)98 2546
y Fb(dst)155 2542 y Fj(cannot)f(trust)e Fa(H)406 2546 y Fb(sr)q(c)464
2542 y Fj(to)g(encrypt)i(the)e(data)h(so)g(that)g(only)g Fa(H)1048
2546 y Fb(dst)1104 2542 y Fj(can)g(read)g(it,)f(so)g(this)h(encryption)g(can)
g(only)g(b)q(e)g(done)g(at)0 2588 y Fa(GW)66 2592 y Fb(entr)129
2588 y Fj(.)952 2828 y Fo(37)p eop
%%Page: 38 38
bop 445 45 a Fo([6])21 b(Deb)q(orah)36 b(Estrin,)j Ff(Contr)n(ols)33
b(for)i(Inter-Or)n(ganization)e(Networks)p Fo(,)40 b Fh(IEEE)515
102 y(T)l(ransactions)19 b(on)f(Soft)o(w)o(are)f(Engineering)p
Fo(,)e(V)l(ol.)g(SE-13,)h(No.)f(2,)h(pp.)g(249-)515 158 y(261,)e(F)l(ebruary)
l(,)h(1987.)445 251 y([7])21 b(D.)29 b(Estrin,)i Ff(Inter)n(c)n(onne)n(ction)
26 b(Pr)n(oto)n(c)n(ols)i(for)h(Inter)n(or)n(ganization)e(Networks)p
Fo(,)515 308 y(IEEE)21 b(Journal)e(on)h(Selected)g(Areas)g(in)g(Comm)o
(unications,)f(V)l(ol.)g(SA)o(C-5,)i(No.)515 364 y(9,)15 b(pp.)g(1480-1491,)e
(Decem)o(b)q(er)j(1987.)445 457 y([8])21 b(D.)g(Estrin,)g(J.)g(Mogul,)h(G.)e
(Tsudik,)i Ff(Visa)f(Pr)n(oto)n(c)n(ols)g(for)h(Contr)n(ol)r(ling)e(Inter-)
515 514 y(Or)n(ganization)12 b(Datagr)n(am)i(Flow)p Fo(,)e(T)l(o)f(app)q(ear)
g(in)h(IEEE)f(Journal)h(on)f(Selected)h(Ar-)515 570 y(eas)j(in)g(Comm)o
(unications,)f(Sp)q(ecial)h(Issue)h(on)f(Secure)h(Comm)o(unications,)d(1989.)
445 663 y([9])21 b(D.)c(Estrin)g(and)h(G.)f(Tsudik,)h Ff(Se)n(curity)h
(Issues)e(in)h(Policy)g(R)n(outing)p Fo(,)g(Univ)o(ersit)o(y)515
720 y(of)13 b(Southern)g(California,)e(Computer)h(Science)i(Departmen)o(t,)e
(T)l(ec)o(hnical)h(Rep)q(ort)515 776 y(TR)j(88-54,)e(Decem)o(b)q(er)h(1988.)
422 869 y([10])21 b(J.)g(G.)f(Fletc)o(her)h(and)g(R.)g(W.)f(W)l(atson,)h
Ff(Me)n(chanisms)f(for)i(a)g(R)n(eliable)e(Timer-)515 926 y(b)n(ase)n(d)j(Pr)
n(oto)n(c)n(ol)p Fo(,)g Fh(Computer)j(Net)o(w)o(orks)p Fo(,)c(v)o(ol.)f(2,)j
(No.)f(4/5,)g(pp.)g(271-290,)515 982 y(Septem)o(b)q(er/Octob)q(er,)f(1978,)d
(\(Also)f(in)i Ff(Pr)n(o)n(c.)f(Computer)i(Network)g(Pr)n(oto)n(c)n(ols)515
1039 y(Symp)n(osium)16 b Fo(C5.1-C5.17,)c(F)l(ebruary)j(1978.\))422
1132 y([11])21 b(C.)11 b(Ken)o(t)f(and)h(J.)g(Mogul,)f Ff(F)m(r)n
(agmentation)h(Consider)n(e)n(d)g(Harmful)p Fo(,)h Fh(Pro)q(ceedings)515
1188 y(of)18 b(the)g(A)o(CM)e(SIGCOMM)g(1987)p Fo(,)g(August,)e(1987.)422
1281 y([12])21 b(J.)13 b(Mracek,)f Ff(Network)j(A)n(c)n(c)n(ess)d(Contr)n(ol)
h(in)g(Multi-Net)h(Internet)f(T)m(r)n(ansp)n(ort)p Fo(,)e(S.B.)515
1338 y(Thesis,)k(M.I.T.)f(Departmen)o(t)h(of)g(Electrical)e(Engineering)i
(and)h(Computer)f(Sci-)515 1394 y(ence,)h(1983,)e(June.)422
1487 y([13])21 b Ff(A)n(dvanc)n(e)n(d)k(Micr)n(o)g(Devic)n(es)g(MOS)g(Micr)n
(opr)n(o)n(c)n(essors)f(and)i(Peripher)n(als)f(Data)515 1544
y(Bo)n(ok.)p Fo(,)15 b(Adv)m(anced)i(Micro)d(Devices,)h(Inc.,)g(Sunn)o(yv)m
(ale,)g(CA.)g(1987)422 1637 y([14])21 b Ff(F)m(e)n(der)n(al)11
b(Information)h(Pr)n(o)n(c)n(essing)e(Standar)n(ds)p Fo(,)h(National)e
(Bureau)i(of)f(Standards,)515 1693 y(Publication)k(46,)h(1977.)422
1786 y([15])21 b(R.)h(M.)f(Needham)h(and)g(M.)f(D.)g(Sc)o(hro)q(eder,)j
Ff(Using)d(Encryption)g(for)i(A)o(uthen-)515 1843 y(tic)n(ation)18
b(in)g(L)n(ar)n(ge)f(Networks)i(of)f(Computers)p Fo(,)g Fh(CA)o(CM)p
Fo(,)d(v)o(ol.)h(21,)h(No.)g(12,)g(pp.)515 1899 y(993-998,)11
b(Decem)o(b)q(er,)i(1978)f(\(note)g(Also)f(CSL-78-4,)i(Xero)o(x)f(P)o(alo)f
(Alto)g(Researc)o(h)515 1956 y(Cen)o(ter,)k(Septem)o(b)q(er)h(1978\))422
2049 y([16])21 b(R.)c(M.)g(Needham)g(and)g(M.)g(D.)f(Sc)o(hro)q(eder,)i
Ff(A)o(uthentic)n(ation)f(R)n(evisite)n(d)p Fo(,)f Fh(Op)q(er-)515
2105 y(ating)i(Systems)e(Review)p Fo(,)e(v)o(ol.)g(21,)g(No.7,)g(Jan)o(uary)l
(,)h(1987.)422 2198 y([17])21 b(M.)12 b(A.)g(P)o(adlipsky)l(,)g
Ff(A)i(Persp)n(e)n(ctive)e(on)i(the)g(ARP)m(ANET)e(R)n(efer)n(enc)n(e)g(Mo)n
(del)p Fo(,)g(SRI-)515 2255 y(NIC,)k(No.)e(871,)g(RF)o(C,)h(Septem)o(b)q(er,)
g(1982.)422 2348 y([18])21 b(J.)16 b(P)o(ostel,)d Ff(Internet)i(Pr)n(oto)n(c)
n(ol)p Fo(,)f(NIC,)h(RF)o(C)g(No.)g(791,)f(Septem)o(b)q(er)i(1981.)422
2441 y([19])21 b(J.)12 b(P)o(ostel,)e Ff(Internet)h(Contr)n(ol)h(Message)f
(Pr)n(oto)n(c)n(ol)p Fo(,)g(NIC,)g(RF)o(C)g(No.)g(792,)f(Septem-)515
2498 y(b)q(er)16 b(1981.)422 2591 y([20])21 b(R.)c(Riv)o(est,)f(A.)g(Shamir,)
f(and)i(L.)f(Adelman,)g Ff(A)i(Metho)n(d)f(for)h(Obtaining)e(Digital)515
2647 y(Signatur)n(es)k(and)g(Public-key)h(Cryptosystems)p Fo(,)e
Fh(CA)o(CM)p Fo(,)f(v)o(ol.)g(21,)i(No.)g(2,)g(pp.)515 2704
y(120-126,)14 b(F)l(ebruary)l(,)h(1978.)952 2828 y(38)p eop
%%Page: 39 39
bop 422 45 a Fo([21])21 b(A.)j(T)l(anen)o(baum,)h Ff(Computer)g(Networks)p
Fo(,)g(Pren)o(tice-Hall,)f(Englew)o(o)q(o)q(d)f(Cli\013s,)515
102 y(N.J.,)15 b(1981.)422 195 y([22])21 b(G.)14 b(Tsudik,)g
Ff(Internet)g(Datagr)n(am)j(A)o(uthentic)n(ation:)j(Implic)n(ations)14
b(of)i(F)m(r)n(agmen-)515 252 y(tation)e(and)g(Dynamic)g(R)n(outing)p
Fo(,)f(T)l(o)f(app)q(ear)h(in)f(IEEE)h(Journal)f(on)h(Selected)g(Ar-)515
308 y(eas)i(in)g(Comm)o(unications,)f(Sp)q(ecial)h(Issue)h(on)f(Secure)h
(Comm)o(unications,)d(1989.)422 402 y([23])21 b(R.)e(W.)e(W)l(atson,)h
Ff(Delta-T)h(Pr)n(oto)n(c)n(ol)f(Pr)n(eliminary)g(Sp)n(e)n(ci\014c)n(ation)p
Fo(,)f(UCRL,)i(No.)515 459 y(52881,)14 b(La)o(wrence)h(Liv)o(ermore)g(Lab)q
(oratory)l(,)f(No)o(v)o(em)o(b)q(er,)g(1979.)422 552 y([24])21
b(H.)15 b(Zimmermann,)f Ff(OSI)i(R)n(efer)n(enc)n(e)e(Mo)n(del)i(-)g(The)g
(ISO)f(Mo)n(del)h(of)h(A)o(r)n(chite)n(ctur)n(e)515 609 y(for)j(Op)n(en)e
(Systems)g(Inter)n(c)n(onne)n(ction)p Fo(,)d Fh(IEEE)22 b(T)l(ransactions)e
(on)h(Comm)o(u-)515 665 y(nication)p Fo(,)15 b(v)o(ol.)f(COM-28,)h(pp.)g
(425-432,)e(April)i(1980.)952 2828 y(39)p eop
%%Trailer
end
userdict /end-hook known{end-hook}if
%%EOF