%!PS-Adobe-2.0 %%Creator: dvips 5.485 Copyright 1986-92 Radical Eye Software %%Title: main.dvi %%Pages: 21 1 %%BoundingBox: 0 0 612 792 %%EndComments %DVIPSCommandLine: /usr/local/tex/dvips main.dvi %%BeginProcSet: tex.pro /TeXDict 250 dict def TeXDict begin /N{def}def /B{bind def}N /S{exch}N /X{S N} B /TR{translate}N /isls false N /vsize 11 72 mul N /@rigin{isls{[0 -1 1 0 0 0] concat}if 72 Resolution div 72 VResolution div neg scale isls{Resolution hsize -72 div mul 0 TR}if Resolution VResolution vsize -72 div 1 add mul TR matrix currentmatrix dup dup 4 get round 4 exch put dup dup 5 get round 5 exch put setmatrix}N /@landscape{/isls true 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 pop}N /eop{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 65781.76 div /vsize X 65781.76 div /hsize X}N /p{show}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{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 0 N /rwiSeen false N /rhiSeen false N /letter{}N /note{}N /a4{}N /legal{}N}B /@scaleunit 100 N /@hscale{@scaleunit div /hsc X}B /@vscale{@scaleunit div /vsc X}B /@hsize{/hs X /CLIP 1 N}B /@vsize{/vs X /CLIP 1 N}B /@clip{/CLIP 2 N}B /@hoffset{/ho X}B /@voffset{/vo X}B /@angle{/ang X}B /@rwi{10 div /rwi X /rwiSeen true N}B /@rhi {10 div /rhi X /rhiSeen true N}B /@llx{/llx X}B /@lly{/lly X}B /@urx{/urx X}B /@ury{/ury X}B /magscale true def end /@MacSetUp{userdict /md known{userdict /md get type /dicttype eq{userdict begin md length 10 add md maxlength ge{/md md dup length 20 add dict copy def}if end 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 0 setgray}N /psfts{S 65781.76 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 count /ocount X /dcount countdictstack N}N /@setspecial{CLIP 1 eq{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 rwiSeen{rwi urx llx sub div rhiSeen{ rhi ury lly sub div}{dup}ifelse scale llx neg lly neg TR}{rhiSeen{rhi ury lly sub div dup scale llx neg lly neg TR}if}ifelse CLIP 2 eq{newpath llx lly moveto urx lly lineto urx ury lineto llx ury lineto closepath clip}if /showpage{}N /erasepage{}N /copypage{}N newpath}N /@endspecial{count ocount sub{pop}repeat countdictstack dcount sub{end}repeat grestore 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 40258431 52099146 1000 300 300 @start /Fa 1 49 df<060F0F0E1E1E1C3C383830707060E0C04008117F910A>48 D E /Fb 6 119 df<780018001800300030003000370078C0604060606060C0C0C0C0C0C0418063003C00 0B117E900E>98 D<040C0000000000705898983030606464683006127E910B>105 D<1C70278C2604260606060C0C0C0C0C0C0C181E3019C01800180030003000FC000F10808A10> 112 D<73C09C209860980018003000300030003000600060000B0B7E8A0E>114 D<381048308C309830183030603060306430E431E80E380E0B7E8A12>117 D<386048608C2098201820304030403040308011000E000B0B7E8A10>I E /Fc 12 119 df<07FE03F800E001C000E0010000E0020000E0080001C0100001C0200001C080 0001C1000003830000038F00000393800003A380000781C0000701C0000700E0000700E0000E00 70000E0070000E0038000E0038001C003C00FF80FF001D177F961E>75 D<071018F03070607060 60C060C060C06080C080C480C4C1C446C838700E0E7E8D13>97 D<7C0018001800180018003000 300030003000678068C070406060C060C060C060C06080C080C08180C10046003C000B177E960F >I<07C00C20107020706000C000C000C00080008000C010C02060C03F000C0E7E8D0F>I<07C01C 20301060106020FFC0C000C000C000C000C010402060C01F000C0E7E8D10>101 D<0300038003000000000000000000000000001C002400460046008C000C001800180018003100 3100320032001C0009177F960C>105 D<3E0C0C0C0C181818183030303060606060C0C8C8C8D0 7007177E960B>108 D<1C3C22462382230346030603060306030C060C060C0C0C081A3019E018 001800300030003000FC001014808D12>112 D<38F04518463846308C000C000C000C00180018 0018001800300030000D0E7F8D10>114 D<030003000600060006000600FFC00C000C000C0018 00180018001800300030803080310031001E000A147F930D>116 D<1C02002606004606004606 00860C000C0C000C0C000C0C001818001818801818801838800C5900078E00110E7F8D14>I<1C 04260E4606460686040C040C040C0418081808181018100C6007800F0E7F8D11>I E /Fd 3 116 df<007FFC01FF0007800078000780006000078000C0000F000180000F00020000 0F000400000F000800001E001000001E004000001E008000001E010000003C020000003C040000 003C1E0000003C3E000000785F000000788F0000007A0F0000007C07800000F807800000F007C0 0000F003C00000F003C00001E001E00001E001E00001E001E00001E000F00003C000F00003C000 F80003C000780003C000780007C000FC00FFFC07FF8028227EA129>75 D<3C07E01F0046183061 8047201880C087401D00E087801E00E087801C00E087001C00E00E003801C00E003801C00E0038 01C00E003801C01C007003801C007003801C007007001C007007043800E007083800E00E083800 E00E083800E006107001C006203000C003C026157E942B>109 D<007E00008100030080020180 06038006030006000007000007F80003FE0001FF00003F00000780000380700380F00300F00300 E002004004003018000FE00011157E9417>115 D E /Fe 47 124 df<387CFEFFFF7F3B030307 06060C1C18702008117C8610>44 D<387CFEFEFE7C3807077C8610>46 D<00180000780001F800 FFF800FFF80001F80001F80001F80001F80001F80001F80001F80001F80001F80001F80001F800 01F80001F80001F80001F80001F80001F80001F80001F80001F80001F80001F80001F80001F800 01F8007FFFE07FFFE013207C9F1C>49 D<03FC000FFF003C1FC07007E07C07F0FE03F0FE03F8FE 03F8FE01F87C01F83803F80003F80003F00003F00007E00007C0000F80001F00003E0000380000 700000E01801C0180380180700180E00380FFFF01FFFF03FFFF07FFFF0FFFFF0FFFFF015207D9F 1C>I<00FE0007FFC00F07E01E03F03F03F03F81F83F81F83F81F81F03F81F03F00003F00003E0 0007C0001F8001FE0001FF000007C00001F00001F80000FC0000FC3C00FE7E00FEFF00FEFF00FE FF00FEFF00FC7E01FC7801F81E07F00FFFC001FE0017207E9F1C>I<0000E00001E00003E00003 E00007E0000FE0001FE0001FE00037E00077E000E7E001C7E00187E00307E00707E00E07E00C07 E01807E03807E07007E0E007E0FFFFFEFFFFFE0007E00007E00007E00007E00007E00007E00007 E000FFFE00FFFE17207E9F1C>I<1000201E01E01FFFC01FFF801FFF001FFE001FF8001BC00018 000018000018000018000019FC001FFF001E0FC01807E01803E00003F00003F00003F80003F838 03F87C03F8FE03F8FE03F8FC03F0FC03F07007E03007C01C1F800FFF0003F80015207D9F1C>I< 001F8000FFE003F07007C0F00F01F81F01F83E01F83E01F87E00F07C00007C0000FC0800FC7FC0 FCFFE0FD80F0FF00F8FE007CFE007CFC007EFC007EFC007EFC007E7C007E7C007E7C007E3C007C 3E007C1E00F80F00F00783E003FFC000FF0017207E9F1C>I<6000007800007FFFFE7FFFFE7FFF FC7FFFF87FFFF87FFFF0E00060E000C0C00180C00300C00300000600000C00001C000018000038 0000780000780000F00000F00000F00001F00001F00001F00003F00003F00003F00003F00003F0 0003F00003F00001E00017227DA11C>I<000070000000007000000000F800000000F800000000 F800000001FC00000001FC00000003FE00000003FE00000003FE00000006FF000000067F000000 0E7F8000000C3F8000000C3F800000183FC00000181FC00000381FE00000300FE00000300FE000 00600FF000006007F00000E007F80000FFFFF80000FFFFF800018001FC00018001FC00038001FE 00030000FE00030000FE000600007F000600007F00FFE00FFFF8FFE00FFFF825227EA12A>65 DI<0003FE0080001FFF818000FF01E38001F8 003F8003E0001F8007C0000F800F800007801F800007803F000003803F000003807F000001807E 000001807E00000180FE00000000FE00000000FE00000000FE00000000FE00000000FE00000000 FE00000000FE000000007E000000007E000001807F000001803F000001803F000003801F800003 000F8000030007C000060003F0000C0001F800380000FF00F000001FFFC0000003FE000021227D A128>II70 D<0003FE0040001FFFC0C0007F00F1C001F8003FC003F0000FC007 C00007C00FC00003C01F800003C03F000001C03F000001C07F000000C07E000000C07E000000C0 FE00000000FE00000000FE00000000FE00000000FE00000000FE00000000FE00000000FE000FFF FC7E000FFFFC7F00001FC07F00001FC03F00001FC03F00001FC01F80001FC00FC0001FC007E000 1FC003F0001FC001FC003FC0007F80E7C0001FFFC3C00003FF00C026227DA12C>III75 D78 D<0007FC0000003FFF800000FC07E00003F001F80007E000FC000F C0007E001F80003F001F80003F003F00001F803F00001F807F00001FC07E00000FC07E00000FC0 FE00000FE0FE00000FE0FE00000FE0FE00000FE0FE00000FE0FE00000FE0FE00000FE0FE00000F E0FE00000FE07E00000FC07F00001FC07F00001FC03F00001F803F80003F801F80003F000FC000 7E0007E000FC0003F001F80000FC07E000003FFF80000007FC000023227DA12A>II<01FC0407FF8C1F03FC3C007C7C003C78001C 78001CF8000CF8000CFC000CFC0000FF0000FFE0007FFF007FFFC03FFFF01FFFF80FFFFC03FFFE 003FFE0003FF00007F00003F00003FC0001FC0001FC0001FE0001EE0001EF0003CFC003CFF00F8 C7FFE080FF8018227DA11F>83 D<7FFFFFFF807FFFFFFF807E03F80F807803F807807003F80380 6003F80180E003F801C0E003F801C0C003F800C0C003F800C0C003F800C0C003F800C00003F800 000003F800000003F800000003F800000003F800000003F800000003F800000003F800000003F8 00000003F800000003F800000003F800000003F800000003F800000003F800000003F800000003 F800000003F800000003F800000003F8000003FFFFF80003FFFFF80022227EA127>II<07FC001FFF803F07C03F03E03F01E03F01F01E01F000 01F00001F0003FF003FDF01FC1F03F01F07E01F0FC01F0FC01F0FC01F0FC01F07E02F07E0CF81F F87F07E03F18167E951B>97 D<00FF8007FFE00F83F01F03F03E03F07E03F07C01E07C0000FC00 00FC0000FC0000FC0000FC0000FC00007C00007E00007E00003E00301F00600FC0E007FF8000FE 0014167E9519>99 D<0001FE000001FE0000003E0000003E0000003E0000003E0000003E000000 3E0000003E0000003E0000003E0000003E0000003E0001FC3E0007FFBE000F81FE001F007E003E 003E007E003E007C003E00FC003E00FC003E00FC003E00FC003E00FC003E00FC003E00FC003E00 FC003E007C003E007C003E003E007E001E00FE000F83BE0007FF3FC001FC3FC01A237EA21F>I< 00FE0007FF800F87C01E01E03E01F07C00F07C00F8FC00F8FC00F8FFFFF8FFFFF8FC0000FC0000 FC00007C00007C00007E00003E00181F00300FC07003FFC000FF0015167E951A>I<003F8000FF C001E3E003C7E007C7E00F87E00F83C00F80000F80000F80000F80000F80000F8000FFFC00FFFC 000F80000F80000F80000F80000F80000F80000F80000F80000F80000F80000F80000F80000F80 000F80000F80000F80000F80000F80007FF8007FF80013237FA211>I<03FC1E0FFF7F1F0F8F3E 07CF3C03C07C03E07C03E07C03E07C03E07C03E03C03C03E07C01F0F801FFF0013FC0030000030 00003800003FFF801FFFF00FFFF81FFFFC3800FC70003EF0001EF0001EF0001EF0001E78003C7C 007C3F01F80FFFE001FF0018217E951C>II<1C003F007F007F007F003F001C000000000000000000000000000000FF00 FF001F001F001F001F001F001F001F001F001F001F001F001F001F001F001F001F001F001F00FF E0FFE00B247EA310>I 107 DIII<00FE0007FFC00F83E01E00F03E00F87C007C7C007C7C007CFC007EFC007EFC007EFC007EFC 007EFC007EFC007E7C007C7C007C3E00F81F01F00F83E007FFC000FE0017167E951C>II114 D<0FF3003FFF00781F00600700E00300E00300F00300FC00007FE000 7FF8003FFE000FFF0001FF00000F80C00780C00380E00380E00380F00700FC0E00EFFC00C7F000 11167E9516>I<0180000180000180000180000380000380000780000780000F80003F8000FFFF 00FFFF000F80000F80000F80000F80000F80000F80000F80000F80000F80000F80000F80000F81 800F81800F81800F81800F81800F830007C30003FE0000F80011207F9F16>IIIIII123 D E /Ff 30 121 df<7FFFC0FFFFE0FFFFE07FFFC013047D901A>45 D<3078FCFC783006067685 1A>I<00C001C001C003C007C00FC07FC0FDC071C001C001C001C001C001C001C001C001C001C0 01C001C001C001C001C001C001C001C001C07FFF7FFF7FFF101E7B9D1A>49 D<03F0000FFC001FFF003C0F807803C07001C0E000E0F000E0F000E06000E00000E00000E00001 C00001C0000380000780000F00000E00003C00007C0000F00001E00003C0000780000F00001E00 E03C00E07FFFE0FFFFE07FFFE0131E7D9D1A>I<01FC0007FF001FFF801E03C03C01C03C00E03C 00E00000E00000E00001C00003C000078001FF0001FF0001FFC00003E00000F000007000007800 0038000038600038F00038F00078E000707000F07E03E03FFFC00FFF0001FC00151E7E9D1A>I< 000F80001F80003B80003B8000738000F38000E38001C38003C3800383800783800F03800E0380 1E03803C0380380380780380F00380FFFFFEFFFFFEFFFFFE000380000380000380000380000380 000380003FF8007FFC003FF8171E7F9D1A>I<003E0001FF8003FFC007C1E00F00E01E0F703C3F F0387FF07070F870E07870E078E1C038E1C038E1C038E1C038E1C038E1C038E1C038E1C03870E0 7070E0707070E0387FE03C3FC01E0F000F003807C0F803FFF001FFE0003F00151E7E9D1A>64 D<003800007C00007C00006C0000EE0000EE0000EE0000C60000C60001C70001C70001C70001C7 000383800383800383800383800701C00701C007FFC007FFC00FFFE00E00E00E00E00E00E00E00 E01C00707F01FCFF83FE7F01FC171E7F9D1A>I<1FF0003FFC007FFE00780F0030070000038000 0380007F8007FF801FFF803F8380780380700380E00380E00380E00380700780780F803FFFFC1F FDFC07F0FC16157D941A>97 DI<00FF8003FFC00F FFE01F01E03C00C0780000700000700000E00000E00000E00000E00000E0000070000070000078 00703C00701F01F00FFFE003FFC000FE0014157D941A>I<001FC0001FC0001FC00001C00001C0 0001C00001C00001C00001C001F1C007FDC00FFFC01E0FC03C07C07803C07001C0E001C0E001C0 E001C0E001C0E001C0E001C0E001C07003C07003C03807C03E0FC01FFFFC07FDFC01F1FC161E7E 9D1A>I<01F80007FF000FFF801E07C03C01C07800E07000E0E00070E00070FFFFF0FFFFF0FFFF F0E000007000007000007800703C00701F01F00FFFE003FFC000FE0014157D941A>I<0007E000 1FF0003FF800787800F03000E00000E00000E00000E0007FFFF0FFFFF0FFFFF000E00000E00000 E00000E00000E00000E00000E00000E00000E00000E00000E00000E00000E00000E00000E0003F FF807FFFC03FFF80151E7F9D1A>I<01F87C07FFFE0FFFFE1E078C1C03803801C03801C03801C0 3801C03801C01C03801E07801FFF001FFE0039F8003800003800001C00001FFF801FFFE03FFFF8 78007C70001CE0000EE0000EE0000EE0000E70001C78003C3E00F81FFFF007FFC001FF0017217F 941A>II<00C00001E00001E00000C00000000000 00000000000000000000000000007FE0007FE0007FE00000E00000E00000E00000E00000E00000 E00000E00000E00000E00000E00000E00000E00000E00000E00000E0007FFF80FFFFC07FFF8012 1F7C9E1A>I107 DI<7CE0E000FFFBF8007FFFF8001F1F1C001E1E1C001E1E1C001C1C1C001C1C1C00 1C1C1C001C1C1C001C1C1C001C1C1C001C1C1C001C1C1C001C1C1C001C1C1C001C1C1C001C1C1C 007F1F1F00FF9F9F807F1F1F00191580941A>II<01F00007FC001FFF003E0F803C07807803C07001C0E000E0E000E0 E000E0E000E0E000E0E000E0F001E07001C07803C03C07803E0F801FFF0007FC0001F00013157D 941A>II<7F83F0FF8FF87FBFFC03 FC3C03F01803E00003C00003C00003800003800003800003800003800003800003800003800003 80000380007FFF00FFFF007FFF0016157E941A>114 D<07FB801FFF807FFF80780780E00380E0 0380E003807800007FC0003FFC0007FE00003F800007806001C0E001C0E001C0F003C0FC0780FF FF00EFFE00E3F80012157C941A>I<00C00001C00001C00001C00001C00001C00001C0007FFFE0 FFFFE0FFFFE001C00001C00001C00001C00001C00001C00001C00001C00001C00001C00001C070 01C07001C07001C07000E0E000FFE0007FC0001F00141C7F9B1A>II<7F83FCFFC7FE7F83FC0E00E00E00E00E00E007 01C00701C00701C003838003838003838001C70001C70001C70000EE0000EE0000EE00007C0000 7C0000380017157F941A>II<7FC7F87FCFFC7FC7F80703C003838003C70001EF0000FE00007C00007800003800007C 0000EE0001EE0001C7000383800783C00F01C07FC7FCFFC7FE7FC7FC17157F941A>I E /Fg 46 122 df<1C003E007F00FF80FF80FF807F003E001C0009097B8813>46 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<000003800000000007C00000000007C0000000 000FE0000000000FE0000000000FE0000000001FF0000000001FF0000000003FF8000000003FF8 000000003FF80000000073FC0000000073FC00000000F3FE00000000E1FE00000000E1FE000000 01C0FF00000001C0FF00000003C0FF80000003807F80000007807FC0000007003FC0000007003F C000000E003FE000000E001FE000001E001FF000001C000FF000001FFFFFF000003FFFFFF80000 3FFFFFF80000780007FC0000700003FC0000700003FC0000E00001FE0000E00001FE0001E00001 FF0001C00000FF0001C00000FF00FFFE001FFFFEFFFE001FFFFEFFFE001FFFFE2F297EA834>65 DI<00003FF001800003FFFE0380000FFFFF878000 3FF007DF8000FF8001FF8001FE00007F8003FC00003F8007F000001F800FF000000F801FE00000 07801FE0000007803FC0000007803FC0000003807FC0000003807F80000003807F8000000000FF 8000000000FF8000000000FF8000000000FF8000000000FF8000000000FF8000000000FF800000 0000FF8000000000FF80000000007F80000000007F80000000007FC0000003803FC0000003803F C0000003801FE0000003801FE0000007000FF00000070007F000000E0003FC00001E0001FE0000 3C0000FF8000F800003FF007E000000FFFFFC0000003FFFF000000003FF8000029297CA832>I< FFFFFFF80000FFFFFFFF8000FFFFFFFFE00003FC001FF80003FC0007FC0003FC0001FE0003FC00 00FF0003FC00007F8003FC00003FC003FC00001FC003FC00001FE003FC00001FE003FC00000FF0 03FC00000FF003FC00000FF003FC00000FF003FC00000FF803FC00000FF803FC00000FF803FC00 000FF803FC00000FF803FC00000FF803FC00000FF803FC00000FF803FC00000FF803FC00000FF8 03FC00000FF003FC00000FF003FC00000FF003FC00001FE003FC00001FE003FC00001FC003FC00 003FC003FC00007F8003FC00007F0003FC0001FE0003FC0003FC0003FC001FF800FFFFFFFFE000 FFFFFFFF8000FFFFFFFC00002D297DA835>II72 DI77 DI80 D82 D<007F806003FFF0E007FFF9E00F807FE01F001FE03E0007E07C0003E07C0001E0FC0001E0FC00 01E0FC0000E0FE0000E0FE0000E0FF000000FFC000007FFE00007FFFE0003FFFFC001FFFFE000F FFFF8007FFFFC003FFFFE000FFFFE00007FFF000007FF000000FF8000007F8000003F8600001F8 E00001F8E00001F8E00001F8F00001F0F00001F0F80003F0FC0003E0FF0007C0FFE01F80F3FFFF 00E0FFFE00C01FF0001D297CA826>I<7FFFFFFFFFC07FFFFFFFFFC07FFFFFFFFFC07F803FC03F C07E003FC007C078003FC003C078003FC003C070003FC001C0F0003FC001E0F0003FC001E0E000 3FC000E0E0003FC000E0E0003FC000E0E0003FC000E0E0003FC000E000003FC0000000003FC000 0000003FC0000000003FC0000000003FC0000000003FC0000000003FC0000000003FC000000000 3FC0000000003FC0000000003FC0000000003FC0000000003FC0000000003FC0000000003FC000 0000003FC0000000003FC0000000003FC0000000003FC0000000003FC0000000003FC000000000 3FC00000007FFFFFE000007FFFFFE000007FFFFFE0002B287EA730>II87 D<01FF800007FFF0000F81F8001FC07E001FC07E001FC03F000F803F8007003F8000003F800000 3F8000003F80000FFF8000FFFF8007FC3F800FE03F803F803F803F003F807F003F80FE003F80FE 003F80FE003F80FE003F807E007F807F00DF803F839FFC0FFF0FFC01FC03FC1E1B7E9A21>97 DI<001FF80000FFFE0003F01F0007E03F80 0FC03F801F803F803F801F007F800E007F0000007F000000FF000000FF000000FF000000FF0000 00FF000000FF000000FF0000007F0000007F0000007F8000003F8001C01F8001C00FC0038007E0 070003F01E0000FFFC00001FE0001A1B7E9A1F>I<00003FF80000003FF80000003FF800000003 F800000003F800000003F800000003F800000003F800000003F800000003F800000003F8000000 03F800000003F800000003F800000003F800001FE3F80000FFFBF80003F03FF80007E00FF8000F C007F8001F8003F8003F8003F8007F0003F8007F0003F8007F0003F800FF0003F800FF0003F800 FF0003F800FF0003F800FF0003F800FF0003F800FF0003F8007F0003F8007F0003F8007F0003F8 003F8003F8001F8003F8000F8007F80007C00FF80003F03BFF8000FFF3FF80003FC3FF80212A7E A926>I<003FE00001FFF80003F07E0007C01F000F801F801F800F803F800FC07F000FC07F0007 C07F0007E0FF0007E0FF0007E0FFFFFFE0FFFFFFE0FF000000FF000000FF0000007F0000007F00 00007F0000003F8000E01F8000E00FC001C007E0038003F81F0000FFFE00001FF0001B1B7E9A20 >I<0007F0003FFC00FE3E01F87F03F87F03F07F07F07F07F03E07F00007F00007F00007F00007 F00007F00007F000FFFFC0FFFFC0FFFFC007F00007F00007F00007F00007F00007F00007F00007 F00007F00007F00007F00007F00007F00007F00007F00007F00007F00007F00007F00007F00007 F0007FFF807FFF807FFF80182A7EA915>I<00FF81F003FFE7F80FC1FE7C1F80FC7C1F007C383F 007E107F007F007F007F007F007F007F007F007F007F007F007F003F007E001F007C001F80FC00 0FC1F8001FFFE00018FF800038000000380000003C0000003E0000003FFFF8001FFFFF001FFFFF 800FFFFFC007FFFFE01FFFFFF03E0007F07C0001F8F80000F8F80000F8F80000F8F80000F87C00 01F03C0001E01F0007C00FC01F8003FFFE00007FF0001E287E9A22>II<07000FC01FE03FE03FE03FE01FE00FC00700000000000000000000 0000000000FFE0FFE0FFE00FE00FE00FE00FE00FE00FE00FE00FE00FE00FE00FE00FE00FE00FE0 0FE00FE00FE00FE00FE00FE00FE0FFFEFFFEFFFE0F2B7DAA14>I<000700000F80001FC0003FE0 003FE0003FE0001FC0000F8000070000000000000000000000000000000000000000000001FFE0 01FFE001FFE0000FE0000FE0000FE0000FE0000FE0000FE0000FE0000FE0000FE0000FE0000FE0 000FE0000FE0000FE0000FE0000FE0000FE0000FE0000FE0000FE0000FE0000FE0000FE0000FE0 000FE0000FE0000FE0000FE07C0FE0FE0FE0FE0FC0FE1F80FE1F007C3E003FFC000FF000133784 AA15>IIIII<003FE00001FFFC0003F07E000FC01F80 1F800FC03F800FE03F0007E07F0007F07F0007F07F0007F0FF0007F8FF0007F8FF0007F8FF0007 F8FF0007F8FF0007F8FF0007F8FF0007F87F0007F07F0007F03F800FE03F800FE01F800FC00FC0 1F8007F07F0001FFFC00003FE0001D1B7E9A22>II114 D<03FE300FFFF01E03F03800F0700070F00070F00070F80070FC0000FFE0007FFE007FFF803FFF E01FFFF007FFF800FFF80003FC0000FC60007CE0003CF0003CF00038F80038FC0070FF01E0F7FF C0C1FF00161B7E9A1B>I<00700000700000700000700000F00000F00000F00001F00003F00003 F00007F0001FFFF0FFFFF0FFFFF007F00007F00007F00007F00007F00007F00007F00007F00007 F00007F00007F00007F00007F00007F03807F03807F03807F03807F03807F03803F03803F87001 F86000FFC0001F8015267FA51B>I II120 DI E /Fh 36 124 df<0000FC0000038300000E 0080001C03800038078000700780007003000070000000E0000000E0000000E0000000E0000000 E0000000E000003FFFFE0001C00E0001C00E0001C00E0001C00E0001C00E0003801C0003801C00 03801C0003801C0003801C0003801C000700380007003800070038000700380007003800070038 000E0070000F007800FFC3FF0019237FA21B>12 D<0000FE03F00003818E0C000E00B802001C01 F00E003803E01E007003C01E007001C00C007001C00000E003800000E003800000E003800000E0 03800000E003800000E00380003FFFFFFFF801C007003801C007003801C007003801C007003801 C007003803800E007003800E007003800E007003800E007003800E007003800E007007001C00E0 07001C00E007001C00E007001C00E007001C00E007001C00E00E003801C00F003C01E0FFE3FF9F FC27237FA229>14 D<1C3E7E7E3A02020404080810204080070F7D840E>44 DI<3078F8787005057C840E>I<0000040000000006000000000E000000 001E000000001E000000003E000000003F000000004F000000004F000000008F000000008F0000 00010F000000010780000002078000000207800000040780000004078000000807C000000803C0 00001003C000001003C000002003C000003FFFE000004001E000004001E000008001E000008001 E000010001E000010000F000020000F000060000F000040000F0000C0000F0003E0001F800FF80 0FFF8021237EA225>65 D<03FFE0FFF8003E000F80003C000F00003C000F00003C000F00003C00 0F00003C000F000078001E000078001E000078001E000078001E000078001E000078001E0000F0 003C0000F0003C0000F0003C0000FFFFFC0000F0003C0000F0003C0001E000780001E000780001 E000780001E000780001E000780001E000780003C000F00003C000F00003C000F00003C000F000 03C000F00003C000F000078001E00007C001F000FFFC3FFF0025227EA125>72 D<03FFF0003E00003C00003C00003C00003C00003C000078000078000078000078000078000078 0000F00000F00000F00000F00000F00000F00001E00001E00001E00001E00001E00001E00003C0 0003C00003C00003C00003C00003C00007800007C000FFFC0014227EA112>I<03FFFFC0003E00 F0003C0078003C003C003C003E003C001E003C003E0078003E0078003E0078003E0078003E0078 003C0078007C00F0007800F000F000F001E000F0078000FFFE0000F0000001E0000001E0000001 E0000001E0000001E0000001E0000003C0000003C0000003C0000003C0000003C0000003C00000 0780000007C00000FFFC00001F227EA121>80 D<03FFFF0000003E01E000003C007800003C003C 00003C003C00003C003E00003C003E000078003E000078003E000078003E000078003E00007800 7C00007800780000F000F00000F001E00000F007800000FFFC000000F00C000000F007000001E0 07000001E003800001E003800001E003C00001E003C00001E003C00003C007C00003C007C00003 C007C00003C007C00003C007C04003C007C080078007C08007C003E100FFFC01E3000000007C00 22237EA124>82 D<000FC0800030318000C00B0001800700038007000300030007000300070003 000E0002000E0002000F0002000F0000000F0000000F80000007E0000007FE000003FFC00001FF E000007FF000000FF8000000F8000000780000003C0000003C0000003C0020003C004000380040 00380040003800600030006000700060006000F000C000E8018000C607000081FC000019247DA2 1B>I<03FC000606000F03000F03800601800001C0000380000380007F8003E3800F03801C0380 380700780700F00708F00708F00F08F00F08F017107867A01F83C015157D9418>97 D<0780003F80000700000700000700000700000700000700000E00000E00000E00000E00000E00 000E00001C3F001CC1801D00C01E00601C00701C00703800783800783800783800783800783800 787000F07000F07000E07001E07001C0700380E80700C61C0081F00015237BA21B>I<00FF0003 81C00603C00C03C01C0180380000780000700000F00000F00000F00000F00000F00000E00000F0 0000F000807001007001003806001C180007E00012157C9416>I<00001E0000FE00001C00001C 00001C00001C00001C00001C00003800003800003800003800003800003800FC700383700700F0 0C00F01C00703800707800E07000E0F000E0F000E0F000E0F000E0E001C0E001C0E001C0E001C0 7003C07003C0380F801C33C007C3F817237CA21B>I<00FE000383800701C00C00E01C00E03800 E07800E07000E0FFFFE0F00000F00000F00000F00000E00000E00000F000407000803000801803 000E0C0003F00013157D9416>I<0003E0000E30001C700038F000307000700000700000700000 E00000E00000E00000E00000E00000E0003FFE0001C00001C00001C00001C00001C00003800003 80000380000380000380000380000700000700000700000700000700000700000E00000F0000FF F00014237FA20F>I<00000780001F88800070D18000E0E18001C0700003C0700003C070000780 F0000780F0000780F0000780E0000381E0000181C00002C30000027E0000040000000400000004 0000000600000007FF800007FFE00007FFF0001C007800300018006000180060001800C0001800 C0001800C0003000600060003000C0001C07800003FC00001921809518>I<00780003F8000070 0000700000700000700000700000700000E00000E00000E00000E00000E00000E00001C3F001CC 1801D00C01E00E01E00E01C00E03C01C03801C03801C03801C03801C03801C0700380700380700 380700380700380700380E00700F0078FFE7FF18237FA21B>I<007000F001F000F000E0000000 0000000000000000000000000001C00FC001C001C001C001C00380038003800380038003800700 070007000700070007000E000F00FFE00C227FA10E>I<007803F8007000700070007000700070 00E000E000E000E000E000E001C001C001C001C001C001C0038003800380038003800380070007 0007000700070007000E000F00FFE00D237FA20E>108 D<01C1F807E01FC60C183001D80E6038 01E007801C01E007801C01C007001C03C00F003803800E003803800E003803800E003803800E00 3803800E003807001C007007001C007007001C007007001C007007001C007007001C00700E0038 00E00F003C00F0FFE3FF8FFE27157F942A>I<01C3F01FCC1801D00C01E00E01E00E01C00E03C0 1C03801C03801C03801C03801C03801C0700380700380700380700380700380700380E00700F00 78FFE7FF18157F941B>I<007E000383800600C00C00E01C0070380070780078700078F00078F0 0078F00078F00078E000F0E000F0E000E0F001E07001C07003803807001C1C0007F00015157D94 18>I<00E1F8000FE60C0000E8060000F0070000E0038000E0038001C003C001C003C001C003C0 01C003C001C003C001C003C003800780038007800380070003800F0003801E0003801C00074038 000730E000070F80000700000007000000070000000E0000000E0000000E0000000E0000000E00 00001E000000FFC000001A1F80941B>I<00FC100382100701300E00F01C00F03800F07800E078 00E0F000E0F000E0F000E0F000E0F001C0F001C0F001C0F001C07003C07005C0380B801C338007 C380000380000380000380000700000700000700000700000700000F00007FE0141F7C941A>I< 01C7C01FC8E001D1E001E1E001E0C001C00003C000038000038000038000038000038000070000 0700000700000700000700000700000E00000F0000FFF00013157F9413>I<01F906070C031803 1801180118021C001FE00FF807FC007E000E4006400640066006600CE008D83087C010157E9413 >I<008000800080018001000300030007000F001F00FFF80E000E000E000E000E001C001C001C 001C001C001C0038103810381038103810382038201C4007800D1F7C9E13>I<0E0070FE07F00E 00F00E00700E00700E00701C00E01C00E01C00E01C00E01C00E01C00E03801C03801C03801C038 01C03803C03805C0380B801C13C007E3F815157C941B>III<1FF83FC003E01E0001C0180000E0100000E020000070400000788000 00390000001E0000001C0000000E0000001F0000003700000063800000C380000181C0000101E0 000200E0000E00F0003E00F800FF03FF001A157F941A>I<0FFC0FE001E0078000E0030000E002 0000E0040000E00400007008000070080000701000007030000078200000384000003840000038 8000003C8000001D0000001D0000001E0000001C0000000C000000080000000800000010000000 1000000020000000400000F0400000F0800000F1000000C20000003C0000001B1F80941A>I<07 FFF80780380600700C00E00801C0080380080700100E00001C0000380000700000E00001C02003 C0200380200700600E00401C00C03801C0700380FFFF8015157F9416>II E /Fi 54 122 df<00000FE0000030180000E01C0001C03C0001803C0003803800038000000380 000007000000070000000700000007000000070000000E000000FFFFE0000E00E0000E00E0000E 01C0001C01C0001C01C0001C01C0001C0380001C03800038038000380380003807000038070000 3807000070070800700E1000700E1000700E1000700E2000E0062000E003C000E0000000E00000 00C0000001C0000001C0000071800000F1800000F3000000620000003C0000001E2D82A21B>12 D<0007800000001C6003800030100780006010078000E010038000C010010001C07001000380F0 02000380F002000380600400070000080007000010000700006000073C00A00007E20310000781 041000070108080007011008000F022008001F842008001C782C08003C003E080038003E080078 001C0800780000080078000008007000001000F000001000700000200070000020007800004000 380000800038000100001C000200000E000C00000380700000007F80000021257BA325>38 D45 D<70F8F8F0E005057A840F>I<000000080000001800000030 0000003000000060000000C0000000C0000001800000018000000300000006000000060000000C 0000000C0000001800000030000000300000006000000060000000C00000018000000180000003 0000000300000006000000060000000C0000001800000018000000300000003000000060000000 C0000000C0000001800000018000000300000006000000060000000C0000000C00000018000000 30000000300000006000000060000000C0000000C0000000800000001D317FA419>I<000F8000 30C000E06001C0700380700300700700700F00700E00701E00701E00701C00F03C00F03C00F03C 00F07801E07801E07801E07801E0F003C0F003C0F003C0F00380E00780E00780E00700E00F00E0 0E00E01C00E01C00E0380060700030E0001F000014227AA019>I<0001000300030006001E002E 03CE001C001C001C001C0038003800380038007000700070007000E000E000E000E001C001C001 C001C003800380038003800780FFFC10217AA019>I<000FC000106000603800801800801C0100 1C02201E02101E04101E04101E04101E08203C08203C0840380840780880F00700E00001C00003 0000060000180000200000C0000100000200000400100800301000202000605F80C063FFC040FF 80807F00801E0017227CA019>I<000FC000307000C01801001C02001C04000C04401C08201C08 201C08201C08403808C0380700700000600001C000070000FC000007000003800003800001C000 01C00001C00003C06003C0F003C0F00380E00780800700800E00801C0040380020F0001F800016 227BA019>I<0000180000380000380000700000700000700000E00000E00000E00000C00001C0 000180000380000300000300000600000600000C00000C000018000010000031800061C0004380 0083800183800303800207000407000807003FC700403E00800FF0000E00000E00001C00001C00 001C00001C00003800003800003800003000152B7EA019>I<00400400703800FFF000FFE000BF 80008000010000010000010000010000020000020000023E0002C3000501800601C00401C00001 E00001E00001E00001E00001E00001E07003C0F003C0F003C0E00780800700800F00800E00401C 0040380030E0000F800016227BA019>I<07000F800F800F000E00000000000000000000000000 000000000000000000007000F800F800F000E00009157A940F>58 D<0000030000000300000007 000000070000000F0000000F0000001F0000002F0000002F0000004F0000004F80000087800000 878000010780000207800002078000040780000407800008078000080780001007800030078000 200780007FFF80004007C0008007C0008003C0010003C0030003C0020003C0040003C0040003C0 0C0003C03C0007C0FF003FFC1E237DA224>65 D<00FFFFE0000F0038000F001C000F001E001E00 0E001E000F001E000F001E000F003C000E003C001E003C001E003C003C00780078007800F00078 01E00078078000FFFF8000F001E000F000F000F0007801E0007801E0003801E0003C01E0003C03 C0007803C0007803C0007803C000F0078000F0078001E0078003C0078007000F801E00FFFFF000 20227DA122>I<00007F00800003808100000E00630000380027000070001F0000E0000E0001C0 000E000380000E000700000E000F000004000E000004001E000004003C000004003C0000080078 0000000078000000007800000000F000000000F000000000F000000000F000000000F000000000 E000000000E000002000E000002000E000004000E000004000F000008000700000800070000100 00380002000018000400001C0008000006003000000381C0000000FE000000212479A223>I<00 FFFFF000000F003C00000F000E00000F000700001E000380001E000380001E0001C0001E0001C0 003C0001C0003C0001E0003C0001E0003C0001E000780001E000780001E000780001E000780001 E000F00003C000F00003C000F00003C000F00003C001E000078001E000078001E000070001E000 0F0003C0000E0003C0001C0003C0003C0003C00038000780007000078000E000078001C0000780 0700000F801C0000FFFFF0000023227DA125>I<00FFFFFF80000F000780000F000180000F0001 80001E000180001E000180001E000100001E000100003C000100003C000100003C010100003C01 000000780200000078020000007806000000780E000000FFFC000000F00C000000F00C000000F0 0C000001E008000001E008000001E008040001E000080003C000080003C000080003C000100003 C000100007800020000780006000078000C000078001C0000F8007C000FFFFFF800021227DA121 >I<00FFFFFF000F000F000F0003000F0003001E0003001E0003001E0002001E0002003C000200 3C0002003C0102003C010000780200007802000078060000780E0000FFFC0000F00C0000F00C00 00F00C0001E0080001E0080001E0080001E0000003C0000003C0000003C0000003C00000078000 000780000007800000078000000F800000FFFC000020227DA120>I<00FFF87FFC000F00078000 0F000780000F000780001E000F00001E000F00001E000F00001E000F00003C001E00003C001E00 003C001E00003C001E000078003C000078003C000078003C000078003C0000FFFFF80000F00078 0000F000780000F000780001E000F00001E000F00001E000F00001E000F00003C001E00003C001 E00003C001E00003C001E000078003C000078003C000078003C000078003C0000F8007C000FFF8 7FFC0026227DA124>72 D<00FFF8000F00000F00000F00001E00001E00001E00001E00003C0000 3C00003C00003C0000780000780000780000780000F00000F00000F00000F00001E00001E00001 E00001E00003C00003C00003C00003C0000780000780000780000780000F8000FFF80015227DA1 13>I<00FFF807FC000F0001E0000F0001C0000F000100001E000200001E000400001E00100000 1E002000003C004000003C008000003C010000003C040000007808000000781800000078380000 00787C000000F0BC000000F23C000000F41E000000F81E000001F01F000001E00F000001E00F00 0001E00F800003C007800003C007800003C003C00003C003C000078003C000078001E000078001 E000078001E0000F8001F000FFF80FFE0026227DA125>75 D<00FFFC00000F8000000F0000000F 0000001E0000001E0000001E0000001E0000003C0000003C0000003C0000003C00000078000000 780000007800000078000000F0000000F0000000F0000000F0000001E0000001E0000001E00020 01E0002003C0004003C0004003C0008003C0008007800180078001000780030007800F000F803E 00FFFFFE001B227DA11F>I<00FF800007FC000F80000F80000F80001780000F80001780001780 002F000013C0002F000013C0004F000013C0008F000023C0009E000023C0011E000023C0011E00 0023C0021E000043C0043C000043C0043C000043C0083C000041E0083C000081E01078000081E0 2078000081E02078000081E04078000101E040F0000101E080F0000101E100F0000101E100F000 0200F201E0000200F201E0000200F401E0000200F801E0000400F803C0000400F003C0000400F0 03C0000C00E003C0001E00C007C000FFC0C07FFC002E227DA12C>I<00FF000FFC000F8001E000 0F800180000FC000800013C001000013C001000011E001000011E001000021E002000020F00200 0020F002000020F0020000407804000040780400004078040000403C040000803C080000803E08 0000801E080000801E080001001F100001000F100001000F10000100079000020007A000020007 A000020003E000020003E000040003C000040001C000040001C0000C0001C0001E00008000FFC0 00800026227DA124>I<0000FE0000078380000C00E0003800700070003800E0003801C0001C03 80001C0700001C0F00001E1E00001E1C00001E3C00001E3C00001E7800001E7800001E7800001E F000003CF000003CF000003CF0000078F0000078E0000078E00000F0E00000F0E00001E0E00001 C0F00003C0F00007807000070078000E0038001C001C0038000E00E0000703800001FC00001F24 79A225>I<00FFFFE0000F0038000F001E000F000E001E0007001E0007001E0007001E0007003C 000F003C000F003C000F003C001E0078001E0078003C00780078007800E000F003C000FFFE0000 F0000000F0000001E0000001E0000001E0000001E0000003C0000003C0000003C0000003C00000 078000000780000007800000078000000F800000FFF8000020227DA121>I<00FFFFC0000F0070 000F003C000F001C001E000E001E000E001E000F001E000F003C001E003C001E003C001E003C00 3C0078003800780070007801E00078078000FFFC0000F00E0000F0070000F0038001E003C001E0 03C001E003C001E003C003C0078003C0078003C0078003C0078007800F0007800F0107800F0107 8007020F800702FFF8038C000000F020237DA124>82 D<0001F020000E0C40001802C0003001C0 006001C000E0018000C0018001C0018001C0018003C0010003C0010003C0000003C0000003E000 0001F8000001FF000000FFE000007FF000001FF8000003FC0000007C0000003C0000001E000000 1E0000001E0020001C0020001C0020001C00200018006000380060003000700060007000C000C8 018000C607000081FC00001B247DA21B>I<1FFFFFF81E03C0381803C0183003C0182007801820 0780184007801040078010400F0010800F0010800F0010000F0000001E0000001E0000001E0000 001E0000003C0000003C0000003C0000003C00000078000000780000007800000078000000F000 0000F0000000F0000000F0000001E0000001E0000001E0000001E0000003E00000FFFF00001D22 77A123>I<3FFE03FF03C0007803C0006003C00020078000400780004007800040078000400F00 00800F0000800F0000800F0000801E0001001E0001001E0001001E0001003C0002003C0002003C 0002003C0002007800040078000400780004007800040070000800F0000800F000100070001000 70002000700040003000400038018000180200000E0C000003F00000202377A124>I<007FF81F F8000FC007C000078003000007C002000003C004000003C008000003E010000001E030000001E0 20000001F040000000F080000000F100000000FA000000007C000000007C000000007C00000000 3C000000003C000000007E000000009E000000011E000000031F000000060F000000040F000000 080F80000010078000002007C000004007C00000C003C000018003E000010001E000070001E000 1F0003F000FFC01FFE0025227EA124>88 D<00F8C00185C00705C00E03800E03801C03803C0380 380700780700780700780700F00E00F00E00F00E00F00E10F01C20701C20703C20305C40308C40 0F078014157B9419>97 D<03C03F8003800380038007000700070007000E000E000E000E001C00 1CF81D0C1E0E3C0638073807380F700F700F700F700FE01EE01EE01EE03CE038E038607060E031 C01F0010237BA216>I<007E0001C1000301800703800E07801C07803C00003800007800007800 00780000F00000F00000F00000F00000F00100700100700200300C001830000FC00011157B9416 >I<00003C0003F80000380000380000380000700000700000700000700000E00000E00000E000 00E00001C000F9C00185C00705C00E03800E03801C03803C0380380700780700780700780700F0 0E00F00E00F00E00F00E10F01C20701C20703C20305C40308C400F078016237BA219>I<00F803 840E021C023C0238027804F018FFE0F000F000E000E000E000E000E002E0026004701830600F80 0F157A9416>I<00003E0000470000CF00018F0001860003800003800003800007000007000007 00000700000700000E0000FFF0000E00000E00000E00001C00001C00001C00001C00001C000038 0000380000380000380000380000700000700000700000700000700000E00000E00000E00000E0 0000C00001C00001C000718000F18000F300006200003C0000182D82A20F>I<001F180030B800 E0B801C07001C0700380700780700700E00F00E00F00E00F00E01E01C01E01C01E01C01E01C01E 03800E03800E0780060B8006170001E700000700000700000E00000E00000E00701C00F01800F0 300060E0003F8000151F7E9416>I<00F0000FE00000E00000E00000E00001C00001C00001C000 01C000038000038000038000038000070000071F0007218007C0C00F00E00F00E00E00E00E00E0 1C01C01C01C01C01C01C01C0380380380380380380380704700708700E08700E10700610E00620 6003C016237DA219>I<00C001E001C001C0000000000000000000000000000000001C00230043 0043008700870087000E000E001C001C001C00380038003840708070807080710032001C000B21 7BA00F>I<00F0000FE00000E00000E00000E00001C00001C00001C00001C00003800003800003 80000380000700000701E0070210070C700E10F00E10F00E20600E40001D80001E00001FC0001C 7000383800383800381C00381C20703840703840703840701880E01880600F0014237DA216> 107 D<01E01FC001C001C001C0038003800380038007000700070007000E000E000E000E001C00 1C001C001C0038003800380038007000700070007100E200E200E200E200640038000B237CA20C >I<1C0F80F8002610C10C00476066060087807807008780780700870070070087007007000E00 E00E000E00E00E000E00E00E000E00E00E001C01C01C001C01C01C001C01C01C001C01C0382038 0380384038038070403803807080380380308070070031003003001E0023157B9428>I<1C0F00 2631C04740C08780E08780E08700E08700E00E01C00E01C00E01C00E01C01C03801C03801C0380 1C0704380708380E08380E103806107006203003C016157B941B>I<007E0001C3000381800701 C00E01C01C01E03C01E03801E07801E07801E07801E0F003C0F003C0F00380F00780700700700E 00700C0030180018700007C00013157B9419>I<01C1F002621804741C08780C08700E08700E08 701E00E01E00E01E00E01E00E01E01C03C01C03C01C03C01C07803807003807003C0E003C1C007 2380071E000700000700000E00000E00000E00000E00001C00001C00001C0000FFC000171F7F94 19>I<00F8400184C00705C00E03800E03801C03803C0380380700780700780700780700F00E00 F00E00F00E00F00E00F01C00701C00703C00305C0030B8000F3800003800003800007000007000 00700000700000E00000E00000E0000FFE00121F7B9416>I<1C1F002620804741C08783C08703 C08701808700000E00000E00000E00000E00001C00001C00001C00001C00003800003800003800 0038000070000030000012157B9415>I<00FC000183000200800401800C03800C03000C00000F 00000FF00007FC0003FE00003E00000F00000700700700F00600F00600E004004008002030001F C00011157D9414>I<00C001C001C001C001C003800380038003800700FFF8070007000E000E00 0E000E001C001C001C001C003800380038003810702070207040708031001E000D1F7C9E10>I< 1E00602300E04380E04381C08381C08701C08701C00703800E03800E03800E03801C07001C0700 1C07001C07081C0E10180E101C0E101C1E200C262007C3C015157B941A>I<1E03802307C04387 C04383C08381C08700C08700C00700800E00800E00800E00801C01001C01001C01001C02001C02 001C04001C08001C08000C300003C00012157B9416>I<1E0060E02300E1F04380E1F04381C0F0 8381C0708701C0308701C030070380200E0380200E0380200E0380201C0700401C0700401C0700 401C0700801C0700801C0701001C0F01000C0F020006138C0003E0F0001C157B9420>I<1E0030 2300704380704380E08380E08700E08700E00701C00E01C00E01C00E01C01C03801C03801C0380 1C03801C07001C07001C07001C0F000C3E0003CE00000E00000E00001C00601C00F03800F03000 E0600080C0004380003E0000141F7B9418>121 D E /Fj 3 53 df<0F8030E040708030C038E0 384038003800700070006000C00180030006000C08080810183FF07FF0FFF00D157E9412>50 D<0FE030306018701C701C001C00180038006007E000300018000C000E000EE00EE00EC00C4018 30300FE00F157F9412>I<00300030007000F001F001700270047008701870107020704070C070 FFFE0070007000700070007003FE0F157F9412>I E /Fk 19 122 df<0007F010001C0C300070 026000C001E0038000E0070000E00E0000600E0000601C0000403C000040380000407800000078 00000078000000F0000000F0000000F0000000F0000000F0000000F0000080F000010070000100 7000010038000200380004001C0004000C001800060020000380C000007F00001C1E7C9C1E>67 D<0FFFFC0000F80F0000F0038000F003C000F001C000F001C000F001C001E003C001E003C001E0 03C001E0038001E0070001E00E0003C03C0003FFE00003C0000003C0000003C0000003C0000007 80000007800000078000000780000007800000078000000F0000000F800000FFF000001A1C7E9B 1C>80 D<0FFFF80000F80E0000F0078000F003C000F001C000F001E000F001E001E003C001E003 C001E0038001E0070001E00E0001E03C0003FFE00003C0700003C0380003C03C0003C01C0003C0 1E0007803C0007803C0007803C0007803C0007803C0007803C080F003C100F801C10FFF01C2000 0007C01D1D7E9B1F>82 D<1FFFFFF03C07C0F03007803020078020600780204007802040078020 400F0020800F0020000F0000000F0000000F0000000F0000001E0000001E0000001E0000001E00 00001E0000001E0000003C0000003C0000003C0000003C0000003C0000003C000000780000007C 00001FFFE0001C1C7C9B1E>84 D<07F0001C18001E0C001C0E00180E00000E00000E0001FE000F 0E001C1C00301C00701C00E01C40E01C40E03C40E05C80709D803F0E0012127D9115>97 D<01F8071C0C1E181C38183000700070007000E000E000E000600060047008301018200FC00F12 7D9112>99 D<01F8070C0C061C073803300370037FFF7000E000E000E00060006002300430081C 3007C010127E9112>101 D<000F800039C00061C000E3C001C18001C00001C00001C000038000 0380000380003FF8000380000380000700000700000700000700000700000700000E00000E0000 0E00000E00000E00000E00001C00001E0000FFC000121D7F9C0D>I<07E00001E00001C00001C0 0001C00001C00001C00001C000038000038000038000038F8003B0C003C0E00780E00780E00700 E00700E00700E00700E00E01C00E01C00E01C00E01C00E01C00E01C01C03801E03C0FF9FF0141D 7F9C17>104 D<00C001C001C0018000000000000000000000000000001F800780038007000700 07000700070007000E000E000E000E000E000E001C001E00FF800A1D7F9C0C>I<07E001E001C0 01C001C001C001C001C00380038003800380038003800700070007000700070007000E000E000E 000E000E000E001C001E00FF800B1D7F9C0C>108 D<1F8FC0FC00079061060003E07607000780 780700078078070007007007000700700700070070070007007007000E00E00E000E00E00E000E 00E00E000E00E00E000E00E00E000E00E00E001C01C01C001E01E01E00FF8FF8FF8021127F9124 >I<1F8F8007B0C003C0E00780E00780E00700E00700E00700E00700E00E01C00E01C00E01C00E 01C00E01C00E01C01C03801E03C0FF9FF014127F9117>I<00FC000307000E01801C01C03800C0 3000C07000E07000E07000E0E001C0E001C0E001C0600180600380700700380E001C180007E000 13127E9115>I<1F9C07EE03CF078E078C07000700070007000E000E000E000E000E000E001C00 1E00FFC010127F9110>114 D<03F20C0E18061004300438043E001FE00FF007F8003C401C400C 400C6018E010D0608FC00F127F9110>I<020002000200060006000C001C003C00FFE01C001C00 380038003800380038003800700070407040704070407080708031001E000B1A7C9910>II<0FF0FE03C03801C03001C02001C06001C04001 E08000E08000E10000E10000E200007200007400007C0000780000700000300000200000200000 4000004000708000F10000F10000E60000780000171A809116>121 D E /Fl 42 124 df<6060F0F0F8F86868080808080808101010102020404080800D0C7F9C15>34 D45 D<00010003000600060006000C000C000C00180018001800300030 00300060006000C000C000C0018001800180030003000300060006000C000C000C001800180018 00300030003000600060006000C000C00010297E9E15>47 D<030007003F00C700070007000700 07000700070007000700070007000700070007000700070007000700070007000700070007000F 80FFF80D1C7C9B15>49 D<07C01830201C400C400EF00FF80FF807F8077007000F000E000E001C 001C00380070006000C00180030006010C01180110023FFE7FFEFFFE101C7E9B15>I<07E01830 201C201C781E780E781E381E001C001C00180030006007E00030001C001C000E000F000F700FF8 0FF80FF80FF00E401C201C183007E0101D7E9B15>I<03C00C301818300C700C600EE006E006E0 07E007E007E007E0076007700F300F18170C2707C700060006000E300C780C78187010203030C0 0F80101D7E9B15>57 D<000600000006000000060000000F0000000F0000000F00000017800000 178000001780000023C0000023C0000023C0000041E0000041E0000041E0000080F0000080F000 0180F8000100780001FFF80003007C0002003C0002003C0006003E0004001E0004001E000C001F 001E001F00FF80FFF01C1D7F9C1F>65 D<001F808000E0618001801980070007800E0003801C00 03801C00018038000180780000807800008070000080F0000000F0000000F0000000F0000000F0 000000F0000000F0000000F0000000700000807800008078000080380000801C0001001C000100 0E000200070004000180080000E03000001FC000191E7E9C1E>67 D73 D78 D80 D82 D<7FFFFFC0700F01C0600F00C0400F0040400F0040C00F0020800F0020800F00 20800F0020000F0000000F0000000F0000000F0000000F0000000F0000000F0000000F0000000F 0000000F0000000F0000000F0000000F0000000F0000000F0000000F0000000F0000001F800003 FFFC001B1C7F9B1E>84 DI<7FF0FFC00FC03E000780180003C0180003E0100001E0 200001F0600000F0400000788000007D8000003D0000001E0000001F0000000F0000000F800000 0F80000013C0000023E0000021E0000041F00000C0F8000080780001007C0003003C0002001E00 06001F001F003F80FFC0FFF01C1C7F9B1F>88 D91 D<080810102020404040 40808080808080B0B0F8F8787830300D0C7A9C15>II<1FC0003070007838 00781C00301C00001C00001C0001FC000F1C00381C00701C00601C00E01C40E01C40E01C40603C 40304E801F870012127E9115>97 DI<07E00C3018783078 70306000E000E000E000E000E000E00060007004300418080C3007C00E127E9112>I<003F0000 070000070000070000070000070000070000070000070000070000070003E7000C1700180F0030 0700700700600700E00700E00700E00700E00700E00700E00700600700700700300700180F000C 370007C7E0131D7E9C17>I<03E00C301818300C700E6006E006FFFEE000E000E000E000600070 02300218040C1803E00F127F9112>I<00F8018C071E061E0E0C0E000E000E000E000E000E00FF E00E000E000E000E000E000E000E000E000E000E000E000E000E000E000E000E007FE00F1D809C 0D>I<00038003C4C00C38C01C3880181800381C00381C00381C00381C001818001C38000C3000 13C0001000003000001800001FF8001FFF001FFF803003806001C0C000C0C000C0C000C0600180 3003001C0E0007F800121C7F9215>II<18003C003C0018 000000000000000000000000000000FC001C001C001C001C001C001C001C001C001C001C001C00 1C001C001C001C001C00FF80091D7F9C0C>I107 DIII<03F0000E1C0018060030 0300700380600180E001C0E001C0E001C0E001C0E001C0E001C06001807003803003001806000E 1C0003F00012127F9115>II114 D<1F9030704030C010C010E010F800 7F803FE00FF000F880388018C018C018E010D0608FC00D127F9110>I<04000400040004000C00 0C001C003C00FFE01C001C001C001C001C001C001C001C001C001C101C101C101C101C100C100E 2003C00C1A7F9910>IIII121 D123 D E /Fm 4 53 df<0C001C00EC000C000C000C000C000C000C000C000C000C000C000C000C000C 000C000C00FFC00A137D9211>49 D<1F0060C06060F070F030603000700070006000C001C00180 020004000810101020207FE0FFE00C137E9211>I<0FC030707038703870380038003000E00FC0 007000380018001C601CF01CF018E03860701FC00E137F9211>I<006000E000E0016002600660 0C600860106020606060C060FFFC0060006000600060006003FC0E137F9211>I E /Fn 47 124 df<001F83E000F06E3001C078780380F8780300F0300700700007007000070070 0007007000070070000700700007007000FFFFFF80070070000700700007007000070070000700 700007007000070070000700700007007000070070000700700007007000070070000700700007 0070000700700007007000070070007FE3FF001D20809F1B>11 D<003F0000E0C001C0C00381E0 0701E00701E0070000070000070000070000070000070000FFFFE00700E00700E00700E00700E0 0700E00700E00700E00700E00700E00700E00700E00700E00700E00700E00700E00700E00700E0 0700E07FC3FE1720809F19>I<001F81F80000F04F040001C07C06000380F80F000300F00F0007 00F00F00070070000007007000000700700000070070000007007000000700700000FFFFFFFF00 070070070007007007000700700700070070070007007007000700700700070070070007007007 000700700700070070070007007007000700700700070070070007007007000700700700070070 0700070070070007007007007FE3FE3FF02420809F26>14 D<7038F87CFC7EFC7E743A04020402 04020804080410081008201040200F0E7E9F17>34 D<0020004000800100020006000C000C0018 0018003000300030007000600060006000E000E000E000E000E000E000E000E000E000E000E000 E0006000600060007000300030003000180018000C000C000600020001000080004000200B2E7D A112>40 D<800040002000100008000C00060006000300030001800180018001C000C000C000C0 00E000E000E000E000E000E000E000E000E000E000E000E000C000C000C001C001800180018003 000300060006000C00080010002000400080000B2E7DA112>I<70F8FCFC740404040808101020 40060E7C840D>44 DI<70F8F8F87005057C840D>I<70F8F8F870000000 0000000000000070F8F8F87005147C930D>58 D<000100000003800000038000000380000007C0 000007C0000007C0000009E0000009E0000009E0000010F0000010F0000010F000002078000020 78000020780000403C0000403C0000403C0000801E0000801E0000FFFE0001000F0001000F0001 000F00020007800200078002000780040003C00E0003C01F0007E0FFC03FFE1F207F9F22>65 DI68 DI73 D78 D<07E0800C1980100780300380600180600180E00180E000 80E00080E00080F00000F000007800007F00003FF0001FFC000FFE0003FF00001F800007800003 C00003C00001C08001C08001C08001C08001C0C00180C00380E00300F00600CE0C0081F8001221 7D9F19>83 D<7FFFFFE0780F01E0600F0060400F0020400F0020C00F0030800F0010800F001080 0F0010800F0010000F0000000F0000000F0000000F0000000F0000000F0000000F0000000F0000 000F0000000F0000000F0000000F0000000F0000000F0000000F0000000F0000000F0000000F00 00000F0000001F800007FFFE001C1F7E9E21>I87 D<0804100820102010402040208040 80408040B85CFC7EFC7E7C3E381C0F0E7B9F17>92 D<1FE000303000781800781C00300E00000E 00000E00000E0000FE00078E001E0E00380E00780E00F00E10F00E10F00E10F01E10781E103867 200F83C014147E9317>97 D<0E0000FE00000E00000E00000E00000E00000E00000E00000E0000 0E00000E00000E00000E3E000EC3800F01C00F00E00E00E00E00700E00700E00780E00780E0078 0E00780E00780E00780E00700E00700E00E00F00E00D01C00CC300083E0015207F9F19>I<03F8 0E0C1C1E381E380C70007000F000F000F000F000F000F00070007000380138011C020E0C03F010 147E9314>I<000380003F80000380000380000380000380000380000380000380000380000380 00038003E380061B801C0780380380380380700380700380F00380F00380F00380F00380F00380 F003807003807003803803803807801C07800E1B8003E3F815207E9F19>I<03F0000E1C001C0E 00380700380700700700700380F00380F00380FFFF80F00000F00000F000007000007000003800 801800800C010007060001F80011147F9314>I<007C00C6018F038F0706070007000700070007 0007000700FFF00700070007000700070007000700070007000700070007000700070007000700 070007007FF01020809F0E>I<0000E003E3300E3C301C1C30380E00780F00780F00780F00780F 00780F00380E001C1C001E380033E0002000002000003000003000003FFE001FFF800FFFC03001 E0600070C00030C00030C00030C000306000603000C01C038003FC00141F7F9417>I<0E0000FE 00000E00000E00000E00000E00000E00000E00000E00000E00000E00000E00000E3E000E43000E 81800F01C00F01C00E01C00E01C00E01C00E01C00E01C00E01C00E01C00E01C00E01C00E01C00E 01C00E01C00E01C00E01C0FFE7FC16207F9F19>I<1C001E003E001E001C000000000000000000 000000000E007E000E000E000E000E000E000E000E000E000E000E000E000E000E000E000E000E 000E00FFC00A1F809E0C>I<00E001F001F001F000E0000000000000000000000000007007F000 F00070007000700070007000700070007000700070007000700070007000700070007000700070 007000706070F060F0C061803F000C28829E0E>I<0E0000FE00000E00000E00000E00000E0000 0E00000E00000E00000E00000E00000E00000E0FF00E03C00E03000E02000E04000E08000E1000 0E30000E70000EF8000F38000E1C000E1E000E0E000E07000E07800E03800E03C00E03E0FFCFF8 15207F9F18>I<0E00FE000E000E000E000E000E000E000E000E000E000E000E000E000E000E00 0E000E000E000E000E000E000E000E000E000E000E000E000E000E000E00FFE00B20809F0C>I< 0E1F01F000FE618618000E81C81C000F00F00E000F00F00E000E00E00E000E00E00E000E00E00E 000E00E00E000E00E00E000E00E00E000E00E00E000E00E00E000E00E00E000E00E00E000E00E0 0E000E00E00E000E00E00E000E00E00E00FFE7FE7FE023147F9326>I<0E3E00FE43000E81800F 01C00F01C00E01C00E01C00E01C00E01C00E01C00E01C00E01C00E01C00E01C00E01C00E01C00E 01C00E01C00E01C0FFE7FC16147F9319>I<01F800070E001C03803801C03801C07000E07000E0 F000F0F000F0F000F0F000F0F000F0F000F07000E07000E03801C03801C01C0380070E0001F800 14147F9317>I<0E3E00FEC3800F01C00F00E00E00E00E00F00E00700E00780E00780E00780E00 780E00780E00780E00700E00F00E00E00F01E00F01C00EC3000E3E000E00000E00000E00000E00 000E00000E00000E00000E0000FFE000151D7F9319>I<03E0800619801C05803C078038038078 0380700380F00380F00380F00380F00380F00380F003807003807803803803803807801C0B800E 138003E380000380000380000380000380000380000380000380000380003FF8151D7E9318>I< 0E78FE8C0F1E0F1E0F0C0E000E000E000E000E000E000E000E000E000E000E000E000E000E00FF E00F147F9312>I<1F9030704030C010C010C010E00078007F803FE00FF00070803880188018C0 18C018E030D0608F800D147E9312>I<020002000200060006000E000E003E00FFF80E000E000E 000E000E000E000E000E000E000E000E000E080E080E080E080E080610031001E00D1C7F9B12> I<0E01C0FE1FC00E01C00E01C00E01C00E01C00E01C00E01C00E01C00E01C00E01C00E01C00E01 C00E01C00E01C00E01C00E03C00603C0030DC001F1FC16147F9319>III<7FC3FC0F01E00701C0070180 03810001C20000E40000EC00007800003800003C00007C00004E000087000107000303800201C0 0601E01E01E0FF07FE1714809318>II<3FFF380E200E20 1C40384078407000E001E001C00380078007010E011E011C0338027006700EFFFE10147F9314> II E /Fo 7 117 df<0000E000000000E000000001F000000001F0000000 01F000000003F800000003F800000006FC00000006FC0000000EFE0000000C7E0000000C7E0000 00183F000000183F000000303F800000301F800000701FC00000600FC00000600FC00000C007E0 0000FFFFE00001FFFFF000018003F000018003F000030001F800030001F800060001FC00060000 FC000E0000FE00FFE00FFFE0FFE00FFFE0231F7E9E28>65 D<07FC001FFF003F0F803F07C03F03 E03F03E00C03E00003E0007FE007FBE01F03E03C03E07C03E0F803E0F803E0F803E0FC05E07E0D E03FF8FE0FE07E17147F9319>97 D I<01FE0007FF801F0FC03E0FC03E0FC07C0FC07C0300FC0000FC0000FC0000FC0000FC0000FC00 007C00007E00003E00603F00C01F81C007FF0001FC0013147E9317>I114 D<0FE63FFE701E600EE006E006F800FFC07FF83F FC1FFE03FE001FC007C007E007F006F81EFFFCC7F010147E9315>I<0180018001800380038003 8007800F803F80FFFCFFFC0F800F800F800F800F800F800F800F800F800F800F860F860F860F86 0F8607CC03F801F00F1D7F9C14>I E /Fp 14 118 df44 D46 D<0000FF00000007FFC000001FFFE000007FFFF00000FF 01F80001FC00FC0003F0007E0007E0003E000FC01FBE001F807FFF001F00FFFF003E01FFFF003E 03F0FF007C07E07F807C07C03F807C0F801F80FC0F801F80F81F000F80F81F000F80F81F000F80 F81F000F80F81F000F80F81F000F80F81F000F80F81F000F80FC0F801F007C0F801F007C07C03E 007C07E07E003E03F0FC003E01FFF8001F00FFF0001F807FE0000FC01F800007E000000003F000 000001FC000F8000FF007F00007FFFFE00001FFFF8000007FFE0000000FF0000212A7DA928>64 D<01FE000FFF803FFFC03FFFE03C03F03001F00001F80000F80000F80000F80000F80000F8007F F807FFF81FFFF83FE0F87F00F8FC00F8F800F8F800F8F800F8FC01F87E07F87FFFF83FFFF81FFC F80FE0F8151B7E9A1D>97 DI<007FC001FFF007FFFC0FFF FC1FC07C1F00083E00007C00007C00007C0000F80000F80000F80000F80000F80000F80000F800 007C00007C00007E00003E00001F000C1FC07C0FFFFC07FFFC01FFF0007F80161B7E9A1B>I<00 003E00003E00003E00003E00003E00003E00003E00003E00003E00003E00003E00003E00003E00 003E00003E00FC3E03FF3E07FFFE0FFFFE1FC1FE3F007E3E003E7C003E7C003EFC003EF8003EF8 003EF8003EF8003EF8003EF8003EF8003EFC003E7C003E7C003E3E007E3F00FE1FC1FE0FFFFE07 FFBE03FF3E00FC3E172A7EA91F>I<007E0003FF8007FFC00FFFE01F83F03F00F03E00787C0078 7C003878003CFFFFFCFFFFFCFFFFFCFFFFFCF80000F80000F800007800007C00007C00003E0000 3F000C1FC07C0FFFFC07FFFC01FFF0007F80161B7E9A1B>I<001FC0007FC000FFC001FFC003F0 0003E00007C00007C00007C00007C00007C00007C00007C00007C00007C000FFFE00FFFE00FFFE 0007C00007C00007C00007C00007C00007C00007C00007C00007C00007C00007C00007C00007C0 0007C00007C00007C00007C00007C00007C00007C00007C00007C00007C00007C000122A7FA912 >I104 D112 D114 D<03FC001FFF803FFFC07FFFC07C07C0F80080F80000F80000F8 0000FC00007F80007FF8003FFE001FFF0007FF8000FFC0000FE00007E00003E00003E04003E0E0 07E0FC0FC0FFFFC07FFF801FFE0003F800131B7E9A17>I117 D E /Fq 2 104 df<0000F80003C0000F00001E00003C00007800007800007800007800007800 007800007800007800007800007800007800007800007800007800007800007800007800007800 00780000780000F00000F00001E000078000FE0000FE000007800001E00000F00000F000007800 007800007800007800007800007800007800007800007800007800007800007800007800007800 007800007800007800007800007800007800003C00001E00000F000003C00000F8153C7CAC1E> 102 DI E /Fr 38 122 df<78FCFCFEFE7A02020202040404081010204007127B8511>44 DI<007F000001C1C0000780F0000F0078000E0038001C001C003C 001E003C001E003C001E0078000F0078000F0078000F0078000F00F8000F80F8000F80F8000F80 F8000F80F8000F80F8000F80F8000F80F8000F80F8000F80F8000F80F8000F80F8000F80F8000F 80F8000F80F8000F8078000F0078000F0078000F0078000F003C001E003C001E003C001E001C00 1C000E0038000F0078000780F00001C1C000007F000019297EA71E>48 D<00100000700001F000 0FF000FEF000F0F00000F00000F00000F00000F00000F00000F00000F00000F00000F00000F000 00F00000F00000F00000F00000F00000F00000F00000F00000F00000F00000F00000F00000F000 00F00000F00000F00000F00000F00000F00000F00000F00001F8007FFFE07FFFE013287BA71E> I<007F000003FFC0000701F0000C00F80010007C001C007C003E007E003E003E003E003E001E00 3E000C007E0000007C0000007C00000078000000F0000000E0000001C0000007000000FF000000 01E0000000F0000000780000003C0000003E0000001F0000001F0000001F8000001F8030001F80 78001F80FC001F80FC001F80FC001F00F8001F0040003F0040003E0030007C001800F8000F01F0 0003FFC000007F000019297EA71E>51 D<00006000000060000000E0000001E0000001E0000003 E0000003E0000005E0000009E0000009E0000011E0000021E0000021E0000041E0000081E00000 81E0000101E0000201E0000201E0000401E0000801E0000801E0001001E0003001E0002001E000 4001E000C001E000FFFFFF80FFFFFF800001E0000001E0000001E0000001E0000001E0000001E0 000001E0000001E0000003F000007FFF80007FFF8019287EA71E>I<20000000380000003FFFFF 803FFFFF803FFFFF007FFFFF006000020040000400400004004000080080001000800020000000 20000000400000008000000080000001000000030000000200000006000000060000000C000000 0C0000001C0000001C0000001C0000003800000038000000380000007800000078000000780000 0078000000F8000000F8000000F8000000F8000000F8000000F8000000F8000000F80000007000 00192A7DA81E>55 D<007F000001FFC0000381F000060078000C003C001C001C0018000E003800 0E0038000E0038000E003C000E003C000E003E001C001F8018001FC038000FF0600007F8C00003 FF800001FF0000007FC00000FFE000030FF8000603FC001C01FE0038007E0030003F0070000F00 70000780E0000780E0000380E0000380E0000380E0000380F0000300700007007800060038000C 001E0038000F80F00003FFE000007F000019297EA71E>I<007F000001FFC00007C1E0000F0070 001E0038001C003C003C001C0078001E0078001E00F8000F00F8000F00F8000F00F8000F00F800 0F80F8000F80F8000F80F8000F8078000F8078001F803C001F803C001F801C002F800E004F8007 00CF8003810F80007E0F8000000F0000000F0000000F0000001E0000001E0000001E0000003C00 1C003C003E0078003E0070003C00E0001801C0001C0780000FFE000003F8000019297EA71E>I< 00001800000000180000000018000000003C000000003C000000003C000000007E000000007E00 000000FF000000009F000000009F000000011F800000010F800000010F8000000207C000000207 C000000207C000000403E000000403E000000403E000000801F000000801F000001801F8000010 00F800001000F800002000FC000020007C00003FFFFC00007FFFFE000040003E000040003E0000 80001F000080001F000080001F000100000F800100000F800100000F8002000007C007000007C0 1F80000FE0FFF000FFFFFFF000FFFF282A7EA92D>65 D<0000FF00100007FFE030001FC0783000 3E000C7000F80006F001F00003F003E00001F007C00000F00F800000700F800000701F00000030 3F000000303E000000303E000000107E000000107E000000107C00000000FC00000000FC000000 00FC00000000FC00000000FC00000000FC00000000FC00000000FC00000000FC000000007C0000 00007E000000007E000000103E000000103E000000103F000000101F000000200F800000200F80 00006007C000004003E000008001F000018000F8000300003E000E00001FC038000007FFE00000 00FF8000242B7DA92B>67 DI73 D76 D78 D<0001FF0000000F01E000003C0078000078003C0000E0000E0001E0000F0003C0000780078000 03C00F800003E01F000001F01F000001F03E000000F83E000000F87E000000FC7E000000FC7C00 00007C7C0000007CFC0000007EFC0000007EFC0000007EFC0000007EFC0000007EFC0000007EFC 0000007EFC0000007EFC0000007E7C0000007C7E000000FC7E000000FC7E000000FC3E000000F8 3F000001F81F000001F01F000001F00F800003E007800003C007C00007C003E0000F8000F0001E 000078003C00003C007800000F01E0000001FF0000272B7DA92E>II<00FE010003FF83000F81E3001E0037003C001F0038000F007800070070000700F0 000300F0000300F0000300F0000100F8000100F8000100FC0000007C0000007F0000003FE00000 1FFF00000FFFE00007FFF80003FFFC00007FFE000007FF0000007F0000001F8000000F80000007 C0000007C0800003C0800003C0800003C0800003C0C00003C0C0000380C0000380E0000780F000 0700F8000E00EE001C00C3C07800C1FFF000803FC0001A2B7DA921>83 D<7FFFFFFFF87FFFFFFF F87C007C00F870007C003860007C001840007C000840007C0008C0007C000CC0007C000C80007C 000480007C000480007C000480007C000480007C000400007C000000007C000000007C00000000 7C000000007C000000007C000000007C000000007C000000007C000000007C000000007C000000 007C000000007C000000007C000000007C000000007C000000007C000000007C000000007C0000 00007C000000007C000000007C000000007C000000007C00000000FE000000FFFFFE0000FFFFFE 0026297EA82B>II87 D<01FC00000E0780001001C0003C00E000 3E00F0003E0078001C00780008007800000078000000780000007800007FF80003E078000F8078 001F0078003E0078007C00780078007820F8007820F8007820F8007820F800F8207C00F8203C01 3C401F063FC007F80F001B1A7E991E>97 D<07800000FF800000FF8000000F8000000780000007 800000078000000780000007800000078000000780000007800000078000000780000007800000 078000000783F000078C1C0007B0070007A0038007C003C0078001E0078001E0078000F0078000 F0078000F8078000F8078000F8078000F8078000F8078000F8078000F8078000F0078000F00780 01F0078001E0078001C007C003C00740078007200E0006181C000407E0001D2A7FA921>I<007F 8001C0700780080F003C1E007C3C007C3C00387C0010780000F80000F80000F80000F80000F800 00F80000F80000F800007800007C00003C00043C00041E00080F001007802001C0C0007F00161A 7E991B>I<00000F000001FF000001FF0000001F0000000F0000000F0000000F0000000F000000 0F0000000F0000000F0000000F0000000F0000000F0000000F0000000F00003F0F0001C0CF0003 802F000F001F001E001F001C000F003C000F007C000F0078000F0078000F00F8000F00F8000F00 F8000F00F8000F00F8000F00F8000F00F8000F0078000F0078000F003C000F003C000F001E001F 000E002F0007004F8001C18FF8007E0FF81D2A7EA921>I<007E0003C3800700E00E00F01C0070 3C00783C003878003C78003CF8003CF8003CFFFFFCF80000F80000F80000F80000F80000780000 7C00003C00043C00041E00080E001007002001C0C0007F00161A7E991B>I<001F000070C000E1 E001C3E003C3E00381C00780800780000780000780000780000780000780000780000780000780 00FFFE00FFFE000780000780000780000780000780000780000780000780000780000780000780 0007800007800007800007800007800007800007800007800007800007800007C000FFFE00FFFE 00132A7FA912>I<07000F801F801F800F80070000000000000000000000000000000000000007 807F807F800F800780078007800780078007800780078007800780078007800780078007800780 0780078007800780FFF8FFF80D297FA811>105 D<0781F800FC00FF860E030700FF98070C0380 0FA0079003C007A003D001E007C003E001E007C003E001E0078003C001E0078003C001E0078003 C001E0078003C001E0078003C001E0078003C001E0078003C001E0078003C001E0078003C001E0 078003C001E0078003C001E0078003C001E0078003C001E0078003C001E0078003C001E0078003 C001E0078003C001E0FFFC7FFE3FFFFFFC7FFE3FFF301A7F9933>109 D<0783F800FF8C1C00FF 900E000FA0070007A0078007C0078007C007800780078007800780078007800780078007800780 078007800780078007800780078007800780078007800780078007800780078007800780078007 800780078007800780FFFCFFFCFFFCFFFC1E1A7F9921>I<007F000001C1C000070070000E0038 001C001C003C001E003C001E0078000F0078000F00F8000F80F8000F80F8000F80F8000F80F800 0F80F8000F80F8000F80F8000F8078000F0078000F003C001E003C001E001E003C000E00380007 00700001C1C000007F0000191A7E991E>I<0783F000FF8C1C00FFB00F0007A0078007C003C007 8003E0078001E0078001F0078001F0078000F8078000F8078000F8078000F8078000F8078000F8 078000F8078000F0078001F0078001F0078001E0078003C007C003C007C0078007A00E0007983C 000787E00007800000078000000780000007800000078000000780000007800000078000000780 000007800000FFFC0000FFFC00001D267F9921>I<0787C0FF98E0FF91F00FA1F007C1F007C0E0 07C000078000078000078000078000078000078000078000078000078000078000078000078000 07800007800007800007800007C000FFFE00FFFE00141A7F9917>114 D<07F8401C06C03001C0 6000C06000C0E00040E00040F00040F800007E00007FF0003FFE000FFF0003FF80003FC00007C0 8001E08001E0C000E0C000E0C000E0E000C0F001C0F80180C4070083F800131A7E9918>I<0080 000080000080000080000180000180000180000380000380000780000F80001FFF80FFFF800780 000780000780000780000780000780000780000780000780000780000780000780000780000780 4007804007804007804007804007804007804003C08001C08000E100003E0012257FA417>I<07 800780FF80FF80FF80FF800F800F80078007800780078007800780078007800780078007800780 078007800780078007800780078007800780078007800780078007800780078007800780078007 8007800F8007800F800380178001C027C000E047FC003F87FC1E1A7F9921>II121 D E /Fs 24 124 df<00000FF03F000000780CE0800001E00FC3C00003801F87C00007003F07C0 000F003F03C0001E001E0100001E001E0000001E001E0000003C003C0000003C003C0000003C00 3C0000003C003C0000003C003C0000003C003C00000078007800000FFFFFFFF0000FFFFFFFF000 00780078000000780078000000780078000000F000F0000000F000F0000000F000F0000000F000 F0000000F000F0000000F000F0000001E001E0000001E001E0000001E001E0000001E001E00000 01E001E0000001E001E0000003C003C0000003C003C0000003C003C0000003C003C0000003C003 C0000003C003C0000007C007C000007FF87FFE0000FFF87FFE00002A2A7FA923>11 D<387C7EFC7C3807067B8511>46 D<00000FF00100007FFE030001FC07070007E0018E001F8000 5E003E00003E007C00003E00F800001E01F000001E03E000000C07C000000C07C000000C0F8000 000C1F8000000C1F0000000C3F000000083F000000007E000000007E000000007E000000007E00 000000FC00000000FC00000000FC00000000FC00000000FC00000000FC00000000FC00000000FC 000000207C000000207C000000207C000000403E000000403E000000801E000000801F00000100 0F8000020007C000040003E000180001F0003000007E01E000003FFF80000007FC0000282B7AA9 2B>67 D<01FFFFFFFF03FFFFFFFF000FC0007F000F80000F000F800007000F800007000F800003 000F800003001F000003001F000003001F000001001F000001001F000801001F000801003E0010 00003E001000003E001000003E003000003E00F000003FFFF000007FFFE000007C00E000007C00 6000007C006000007C002000007C00200200F800400400F800400400F800000400F800000800F8 00000800F800001801F000001001F000003001F000003001F000007001F00000E001F00003E003 F0000FE0FFFFFFFFC0FFFFFFFFC028297EA829>69 D<01FFFF03FFFE03FFFF07FFFE000FC0001F 80000F80001F00000F80001F00000F80001F00000F80001F00000F80001F00001F00003E00001F 00003E00001F00003E00001F00003E00001F00003E00001F00003E00003E00007C00003E00007C 00003E00007C00003E00007C00003E00007C00003FFFFFFC00007FFFFFF800007C0000F800007C 0000F800007C0000F800007C0000F800007C0000F80000F80001F00000F80001F00000F80001F0 0000F80001F00000F80001F00000F80001F00001F00003E00001F00003E00001F00003E00001F0 0003E00001F00003E00001F00003E00003F00007E000FFFF81FFFF00FFFF81FFFF002F297EA82D >72 D<01FFFF800003FFFF8000000FC00000000F800000000F800000000F800000000F80000000 0F800000001F000000001F000000001F000000001F000000001F000000001F000000003E000000 003E000000003E000000003E000000003E000000003E000000007C000000007C000000007C0000 00007C000000007C000000007C00002000F800004000F800004000F800004000F800008000F800 008000F800018001F000018001F000030001F000030001F000070001F0000E0001F0003E0003F0 01FE00FFFFFFFC00FFFFFFFC0023297EA825>76 D<0001FC020007FF06001E038E003800DC0070 007C00E0003C01E0001C03C0001C03C0001C0380000807800008078000080780000807C0000807 C0000007E0000003F0000003FE000001FFE00001FFFE0000FFFF00003FFF80000FFFC00000FFE0 00000FE0000003F0000001F0000001F0000001F0200000F0200000F0200000F0200000E0600001 E0600001E0700001C0700003C0780007807C000700E6001E00E3C07C00C1FFF000803FC0001F2B 7DA921>83 D<003FC00001C0F0000200380007803C0007C01E000F801E0007801E0002001E0000 001E0000001E0000001E00001FFC0001F83C0007C03C000F803C001E003C003E003C007C007820 F8007820F8007820F8007820F800F820F80178407C0278403E0C3F8007F01E001B1A7D991E>97 D<01E000003FE000003FE0000003C0000003C0000003C0000003C0000003C0000003C000000780 000007800000078000000780000007800000078000000F0000000F07E0000F1838000F600E000F 800F000F0007001F0007801E0007C01E0003C01E0003C01E0003C01E0003C03C0007C03C0007C0 3C0007C03C0007C03C0007803C000F8078000F8078000F0078001E0078001C0078003800740070 00E200E000C103800080FE00001A2A7AA921>I<001FF000700C01E00203801E07001F0F003E1E 001E3E00083C00007C00007C0000780000F80000F80000F80000F80000F80000F80000F8000078 00087800083C00101C00200E004007038001FC00181A7C991B>I<0000007800000FF800000FF8 000000F0000000F0000000F0000000F0000000F0000000F0000001E0000001E0000001E0000001 E0000001E0000001E0000003C0000FC3C0007833C001E00BC003800BC0070007C00F0007801E00 07803E0007803C0007807C0007807C00078078000F00F8000F00F8000F00F8000F00F8000F00F8 000F00F8001E00F8001E0078001E0078001E0038003E001C005E000E01BE0007063FE001F83FE0 1D2A7CA921>I<001F8000F0E001C03003803807003C0E001C1E001C3E001E3C001E7C001E7C00 1EFFFFFCF80000F80000F80000F80000F80000F80000F800007800087800083800101C00200E00 C007030001FC00171A7C991B>I<0000003C0007E0C2003C390E00701E0E00E01E0401E01E0003 E01F0003C01F0007C01F0007C01F0007C01F0007C01E0007C03E0007C03C0003C0780001C07000 02E1E000063F000004000000040000000C0000000C0000000E00000007FFF00003FFFC0003FFFE 000E001F0018000780380003807000038070000380E0000380E0000380E0000380E00007007000 0E0030001C001C0038000F01E00001FF00001F287F9A1E>103 D<000F000001FF000001FF0000 001E0000001E0000001E0000001E0000001E0000001E0000003C0000003C0000003C0000003C00 00003C0000003C00000078000000783F800078C1C0007900E0007A00F0007C00F000F800F000F8 00F000F000F000F000F000F000F000F000F001E001E001E001E001E001E001E001E001E001E001 E001E003C003C003C003C003C003C003C003C003C003C003C003C007C007C07FFC7FFCFFFCFFFC 1E2A7FA921>I<001C003E003E007E003E001C0000000000000000000000000000000000000078 07F807F800F800F800F000F000F000F000F000F001E001E001E001E001E001E003C003C003C003 C003C003C007C07FF8FFF80F297FA811>I<00781FC00FE00FF860E030700FF98070C03800FA00 79003C00FC007A003C00F4007A003C00F8007C003C00F00078003C00F00078003C00F00078003C 00F00078003C01E000F0007801E000F0007801E000F0007801E000F0007801E000F0007801E000 F0007803C001E000F003C001E000F003C001E000F003C001E000F003C001E000F003C001E000F0 07C003E001F07FFC3FFE1FFFFFFC7FFE3FFF301A7F9933>109 D<00783F800FF8C1C00FF900E0 00FA00F000FC00F000F800F000F800F000F000F000F000F000F000F000F000F001E001E001E001 E001E001E001E001E001E001E001E001E003C003C003C003C003C003C003C003C003C003C003C0 03C007C007C07FFC7FFCFFFCFFFC1E1A7F9921>I<001FC0000070700001C01C0003800E000700 0E000E000F001E0007803C0007803C0007807C0007807C00078078000F80F8000F80F8000F80F8 000F80F8000F80F8001F00F8001F00F8001E0078003C0078003C00380078001C00F0000E01C000 0707800001FC0000191A7C991E>I<001E0FC00003FE30700003FEC03C00003F001E00001E001E 00003E000F00003C000F80003C000F80003C000F80003C000F80003C000F800078000F80007800 0F800078000F800078000F800078000F000078001F0000F0001F0000F0003E0000F0003C0000F0 00780000F000F00000F800E00001E403C00001E207000001E1FC000001E000000001E000000001 E000000003C000000003C000000003C000000003C000000003C000000003C000000007C0000000 7FFC000000FFFC0000002126819921>I<00787C0FF98E0FFA1F00FA1F00FC1E00F81E00F80000 F80000F00000F00000F00001E00001E00001E00001E00001E00001E00003C00003C00003C00003 C00003C00003C00007C0007FFE00FFFE00181A7F9917>114 D<003F8401C06C03001C06000C0E 000C0C00081C00081E00081F00001FC0000FFE0007FF8003FFC000FFE0000FF00001F02000F060 00706000706000706000707000607000C0E80180C6070081FC00161A7E9918>I<002000002000 00200000600000400000C00000C00001C00001C00003C0000780001FFF80FFFF80078000078000 0780000F00000F00000F00000F00000F00000F00001E00001E00001E00001E00001E01001E0100 3C02003C02003C02003C02003C04001C04001C08000E100003E00011257BA417>I<07800780FF 80FF80FF80FF800F800F800F800F800F000F000F000F000F000F000F000F000F000F000F000F00 1E001E001E001E001E001E001E001E001E001E001E001E003C003C003C003C003C003C003C007C 003C007C003C00BC001C017C000E067FC003F87FC01A1A7B9921>I123 D E /Ft 80 125 df<001F83E000706E3000C07C780180F8780380F07807007000070070000700 7000070070000700700007007000070070000700700007007000FFFFFFC0070070000700700007 007000070070000700700007007000070070000700700007007000070070000700700007007000 070070000700700007007000070070000700700007007000070078007FE3FF801D2380A21C>11 D<001FC0000070200000C010000180380003807800070078000700300007000000070000000700 000007000000070000000700000007000000FFFFF8000700780007003800070038000700380007 003800070038000700380007003800070038000700380007003800070038000700380007003800 07003800070038000700380007003800070038007FE1FF80192380A21B>I<001FD80000703800 00C078000180780003807800070038000700380007003800070038000700380007003800070038 000700380007003800FFFFF8000700380007003800070038000700380007003800070038000700 380007003800070038000700380007003800070038000700380007003800070038000700380007 00380007003800070038007FF3FF80192380A21B>I<000FC07F00007031C08000E00B00400180 1E00E003803E01E007003C01E007001C00C007001C000007001C000007001C000007001C000007 001C000007001C000007001C0000FFFFFFFFE007001C01E007001C00E007001C00E007001C00E0 07001C00E007001C00E007001C00E007001C00E007001C00E007001C00E007001C00E007001C00 E007001C00E007001C00E007001C00E007001C00E007001C00E007001C00E007001C00E07FF1FF CFFE272380A229>I<000FE07F60007011C0E000E01B01E001803E01E003803E01E007001C00E0 07001C00E007001C00E007001C00E007001C00E007001C00E007001C00E007001C00E007001C00 E0FFFFFFFFE007001C00E007001C00E007001C00E007001C00E007001C00E007001C00E007001C 00E007001C00E007001C00E007001C00E007001C00E007001C00E007001C00E007001C00E00700 1C00E007001C00E007001C00E007001C00E007001C00E07FF1FFCFFE272380A229>I<003C0000 00006200000000C200000001810000000181000000038100000003810000000381000000038100 0000038200000003820000000384000000038800000001C800000001D000000001E003FF8001C0 007C0000E000380001E000300001F0002000027000400004700040000838008000183C00800030 1C010000701E020000700E020000F007040000F007880000F003880000F001D00100F000E00100 78007003003800B802003C031C04000E0C0E0C0003F003F00021257EA326>38 D<70F8FCFC7404040404080810102040060F7CA20E>I<00200040008001000300060004000C00 0C00180018003000300030007000600060006000E000E000E000E000E000E000E000E000E000E0 00E000E000E000E0006000600060007000300030003000180018000C000C000400060003000100 0080004000200B327CA413>I<800040002000100018000C000400060006000300030001800180 018001C000C000C000C000E000E000E000E000E000E000E000E000E000E000E000E000E000E000 C000C000C001C0018001800180030003000600060004000C00180010002000400080000B327DA4 13>I<70F8FCFC7404040404080810102040060F7C840E>44 DI<70F8F8 F87005057C840E>I<000080000180000180000300000300000300000600000600000600000C00 000C00000C0000180000180000180000300000300000300000600000600000600000C00000C000 00C0000180000180000180000180000300000300000300000600000600000600000C00000C0000 0C0000180000180000180000300000300000300000600000600000600000C00000C00000C00000 11317DA418>I<01F000071C000C06001803003803803803807001C07001C07001C07001C0F001 E0F001E0F001E0F001E0F001E0F001E0F001E0F001E0F001E0F001E0F001E0F001E0F001E0F001 E07001C07001C07001C07803C03803803803801C07000C0600071C0001F00013227EA018>I<00 8003800F80F3800380038003800380038003800380038003800380038003800380038003800380 0380038003800380038003800380038003800380038007C0FFFE0F217CA018>I<03F0000C1C00 1007002007804003C04003C08003E0F003E0F801E0F801E0F801E02003E00003E00003C00003C0 000780000700000E00001C0000180000300000600000C000018000010000020020040020080020 1800603000403FFFC07FFFC0FFFFC013217EA018>I<03F8000C1E001007002007804007C07807 C07803C07807C03807C0000780000780000700000F00000E0000380003F000001C00000F000007 800007800003C00003C00003E02003E07003E0F803E0F803E0F003C04003C0400780200780100F 000C1C0003F00013227EA018>I<000200000600000E00000E00001E00001E00002E00004E0000 4E00008E00008E00010E00020E00020E00040E00040E00080E00100E00100E00200E00200E0040 0E00800E00FFFFF8000E00000E00000E00000E00000E00000E00000E00001F0001FFF015217FA0 18>I<1000801E07001FFF001FFE001FF80013E000100000100000100000100000100000100000 10F800130E001407001803801003800001C00001C00001E00001E00001E00001E07001E0F001E0 F001E0E001C08001C04003C04003802007001006000C1C0003F00013227EA018>I<007E0001C1 000300800601C00E03C01C03C0180180380000380000780000700000700000F0F800F30C00F406 00F40300F80380F801C0F001C0F001E0F001E0F001E0F001E0F001E07001E07001E07001E03801 C03801C01803801C03000C0600070C0001F00013227EA018>I<4000006000007FFFE07FFFC07F FFC0400080C0010080010080020080020000040000080000080000100000300000200000600000 600000600000E00000C00000C00001C00001C00001C00001C00003C00003C00003C00003C00003 C00003C00003C00003C00001800013237DA118>I<01F800060E000803001001802001802000C0 6000C06000C06000C07000C07801803E01003F02001FC4000FF80003F80003FC00067F00083F80 100F803007C06001C06000E0C000E0C00060C00060C00060C000606000406000C0300080180300 0E0E0003F00013227EA018>I<01F000060C000C0600180700380380700380700380F001C0F001 C0F001C0F001E0F001E0F001E0F001E0F001E07001E07003E03803E01805E00C05E00619E003E1 E00001C00001C00001C0000380000380300300780700780600700C002018001030000FC0001322 7EA018>I<70F8F8F870000000000000000000000070F8F8F87005157C940E>I<70F8F8F8700000 00000000000000000070F8F8F87808080808101010204040051F7C940E>I<07E01838201C400E 800FF00FF00FF00F000F000E001C00380030006000C000C0008000800180010001000100010001 00010000000000000000000000038007C007C007C0038010237DA217>63 D<0001800000018000000180000003C0000003C0000003C0000005E0000005E000000DF0000008 F0000008F0000010F800001078000010780000203C0000203C0000203C0000401E0000401E0000 401E0000800F0000800F0000FFFF000100078001000780030007C0020003C0020003C0040003E0 040001E0040001E00C0000F00C0000F03E0001F8FF800FFF20237EA225>65 DI<0007E0100038183000E00630 01C00170038000F0070000F00E0000701E0000701C0000303C0000303C0000307C000010780000 1078000010F8000000F8000000F8000000F8000000F8000000F8000000F8000000F80000007800 0000780000107C0000103C0000103C0000101C0000201E0000200E000040070000400380008001 C0010000E0020000381C000007E0001C247DA223>IIII<0007F008003C0C1800E0021801C001B803 8000F8070000780F0000381E0000381E0000183C0000183C0000187C0000087800000878000008 F8000000F8000000F8000000F8000000F8000000F8000000F8000000F8001FFF780000F8780000 787C0000783C0000783C0000781E0000781E0000780F00007807000078038000B801C000B800E0 0318003C0C080007F00020247DA226>II I<03FFF0001F00000F00000F00000F00000F00000F00000F00000F00000F00000F00000F00000F 00000F00000F00000F00000F00000F00000F00000F00000F00000F00000F00000F00000F00000F 00700F00F80F00F80F00F80E00F01E00401C0020380018700007C00014237EA119>IIIII<000FE00000783C0000E00E0003C00780078003C00F0001E00E0000 E01E0000F03C0000783C0000787C00007C7C00007C7800003C7800003CF800003EF800003EF800 003EF800003EF800003EF800003EF800003EF800003EF800003E7800003C7C00007C7C00007C3C 0000783E0000F81E0000F00F0001E00F0001E0078003C003C0078000E00E0000783C00000FE000 1F247DA226>II<000FE0000078 3C0000E00E0003C00780078003C00F0001E00E0000E01E0000F03E0000F83C0000787C00007C7C 00007C7800003C7800003CF800003EF800003EF800003EF800003EF800003EF800003EF800003E F800003EF800003E7800003C7C00007C7C00007C3C0000783C0000781E0380F00E0420E00F0801 E0078813C003C8178000E80E00007C3C02000FEC0200000C0200000C0200000E0600000F0E0000 07FC000007FC000007F8000003F8000001E01F2D7DA226>II<03F0200C0C601802603001E07000E0600060E00060E00060E00020 E00020E00020F00000F000007800007F00003FF0001FFE000FFF0003FF80003FC00007E00001E0 0000F00000F0000070800070800070800070800070C00060C00060E000C0F000C0C80180C60700 81FC0014247DA21B>I<7FFFFFF87807807860078018400780084007800840078008C007800C80 078004800780048007800480078004000780000007800000078000000780000007800000078000 000780000007800000078000000780000007800000078000000780000007800000078000000780 000007800000078000000780000007800000078000000FC00003FFFF001E227EA123>IIII<7FF807 FF0007E001F80003C000E00003E000C00001E000800000F001000000F80300000078020000007C 040000003E0C0000001E080000001F100000000FB000000007A000000007C000000003E0000000 01E000000001F000000003F80000000278000000047C0000000C3E000000081E000000101F0000 00300F80000020078000004007C00000C003E000008001E000010001F000030000F000070000F8 001F8001FC00FFE007FFC022227FA125>I91 D93 D<0FE0001838003C0C003C0E001807000007000007 0000070000FF0007C7001E07003C0700780700700700F00708F00708F00708F00F087817083C23 900FC1E015157E9418>97 D<0E0000FE00001E00000E00000E00000E00000E00000E00000E0000 0E00000E00000E00000E00000E00000E1F000E61C00E80600F00300E00380E003C0E001C0E001E 0E001E0E001E0E001E0E001E0E001E0E001E0E001C0E003C0E00380F00700C80600C41C0083F00 17237FA21B>I<01FE000703000C07801C0780380300780000700000F00000F00000F00000F000 00F00000F00000F000007000007800403800401C00800C010007060001F80012157E9416>I<00 00E0000FE00001E00000E00000E00000E00000E00000E00000E00000E00000E00000E00000E000 00E001F8E00704E00C02E01C01E03800E07800E07000E0F000E0F000E0F000E0F000E0F000E0F0 00E0F000E07000E07800E03800E01801E00C02E0070CF001F0FE17237EA21B>I<01FC00070700 0C03801C01C03801C07801E07000E0F000E0FFFFE0F00000F00000F00000F00000F00000700000 7800203800201C00400E008007030000FC0013157F9416>I<003C00C6018F038F030F07000700 0700070007000700070007000700FFF80700070007000700070007000700070007000700070007 0007000700070007000700070007807FF8102380A20F>I<00007001F198071E180E0E181C0700 1C07003C07803C07803C07803C07801C07001C07000E0E000F1C0019F000100000100000180000 1800001FFE000FFFC00FFFE03800F0600030400018C00018C00018C000186000306000303800E0 0E038003FE0015217F9518>I<0E0000FE00001E00000E00000E00000E00000E00000E00000E00 000E00000E00000E00000E00000E00000E1F800E60C00E80E00F00700F00700E00700E00700E00 700E00700E00700E00700E00700E00700E00700E00700E00700E00700E00700E00700E0070FFE7 FF18237FA21B>I<1C001E003E001E001C00000000000000000000000000000000000E00FE001E 000E000E000E000E000E000E000E000E000E000E000E000E000E000E000E000E000E00FFC00A22 7FA10E>I<01C003E003E003E001C00000000000000000000000000000000001E00FE001E000E0 00E000E000E000E000E000E000E000E000E000E000E000E000E000E000E000E000E000E000E000 E000E000E060E0F0C0F18061803E000B2C82A10F>I<0E0000FE00001E00000E00000E00000E00 000E00000E00000E00000E00000E00000E00000E00000E00000E03FC0E01F00E01C00E01800E02 000E04000E08000E10000E38000EF8000F1C000E1E000E0E000E07000E07800E03C00E01C00E01 E00E00F00E00F8FFE3FE17237FA21A>I<0E00FE001E000E000E000E000E000E000E000E000E00 0E000E000E000E000E000E000E000E000E000E000E000E000E000E000E000E000E000E000E000E 000E000E000E00FFE00B237FA20E>I<0E1FC07F00FE60E183801E807201C00F003C00E00F003C 00E00E003800E00E003800E00E003800E00E003800E00E003800E00E003800E00E003800E00E00 3800E00E003800E00E003800E00E003800E00E003800E00E003800E00E003800E00E003800E0FF E3FF8FFE27157F942A>I<0E1F80FE60C01E80E00F00700F00700E00700E00700E00700E00700E 00700E00700E00700E00700E00700E00700E00700E00700E00700E00700E0070FFE7FF18157F94 1B>I<01FC000707000C01801800C03800E0700070700070F00078F00078F00078F00078F00078 F00078F000787000707800F03800E01C01C00E038007070001FC0015157F9418>I<0E1F00FE61 C00E80600F00700E00380E003C0E001C0E001E0E001E0E001E0E001E0E001E0E001E0E001E0E00 3C0E003C0E00380F00700E80E00E41C00E3F000E00000E00000E00000E00000E00000E00000E00 000E00000E0000FFE000171F7F941B>I<01F8200704600E02601C01603801E07800E07800E0F0 00E0F000E0F000E0F000E0F000E0F000E0F000E07000E07800E03801E01C01E00C02E0070CE001 F0E00000E00000E00000E00000E00000E00000E00000E00000E00000E0000FFE171F7E941A>I< 0E3CFE461E8F0F0F0F060F000E000E000E000E000E000E000E000E000E000E000E000E000E000F 00FFF010157F9413>I<0F8830786018C018C008C008E008F0007F803FE00FF001F8003C801C80 0C800CC00CC008E018D0308FC00E157E9413>I<02000200020002000600060006000E001E003E 00FFF80E000E000E000E000E000E000E000E000E000E000E000E040E040E040E040E040E040708 030801F00E1F7F9E13>I<0E0070FE07F01E00F00E00700E00700E00700E00700E00700E00700E 00700E00700E00700E00700E00700E00700E00700E00F00E00F006017003827800FC7F18157F94 1B>IIII< FFC1FE1E00780E00300E00200E002007004007004003808003808003808001C10001C10000E200 00E20000E200007400007400003800003800003800001000001000002000002000002000004000 F04000F08000F180004300003C0000171F7F941A>I<3FFFC0380380300780200700600E00401C 00403C0040380000700000E00001E00001C0000380400700400F00400E00C01C00803800807801 80700780FFFF8012157F9416>III E /Fu 35 124 df<0001E0000003E000000FE000007FE0001FFFE000FFFFE000FFBFE000E03FE0 00003FE000003FE000003FE000003FE000003FE000003FE000003FE000003FE000003FE000003F E000003FE000003FE000003FE000003FE000003FE000003FE000003FE000003FE000003FE00000 3FE000003FE000003FE000003FE000003FE000003FE000003FE000003FE000003FE000003FE000 003FE000003FE000003FE000003FE000003FE000003FE0007FFFFFF07FFFFFF07FFFFFF01C2E7A AD29>49 D<003FF00001FFFE0007FFFF800FC07FE01E001FF03C000FF87F0007FC7F8007FEFFC0 07FEFFC003FEFFC003FFFFC003FF7F8003FF7F8003FF3F0003FF000003FF000003FE000003FE00 0007FC000007FC00000FF800000FF000001FE000001FC000003F8000007F000000FE000001F800 0001F0000003E00000078007000F0007001E0007003C000F0078000E00F0000E01C0001E03FFFF FE07FFFFFE0FFFFFFE1FFFFFFE3FFFFFFE7FFFFFFCFFFFFFFCFFFFFFFCFFFFFFFC202E7CAD29> I<000FFC0000007FFF800001F01FE00003C00FF000070007F8000FE007FC000FF007FC001FF007 FE001FF807FE001FF807FE001FF807FE001FF807FE000FF007FC0007E007FC00018007FC000000 0FF80000000FF00000001FE00000001FC00000007F8000001FFE0000001FFC0000001FFF800000 001FF000000007F800000003FC00000003FE00000003FF00000001FF80000001FF800E0001FFC0 3F8001FFC07FC001FFC07FC001FFC0FFE001FFC0FFE001FFC0FFE001FF80FFE001FF80FFC003FF 007F8003FF003F0003FE001F0007FC000FE01FF80007FFFFE00001FFFF8000001FFC0000222E7D AD29>I<0000007800000000F800000001F800000003F800000007F800000007F80000000FF800 00001FF80000003FF80000007FF800000077F8000000F7F8000001E7F8000003C7F800000787F8 00000707F800000F07F800001E07F800003C07F800007807F800007007F80000F007F80001E007 F80003C007F800078007F8000F0007F8000F0007F8001E0007F8003C0007F800780007F800F000 07F800FFFFFFFFF0FFFFFFFFF0FFFFFFFFF000000FF80000000FF80000000FF80000000FF80000 000FF80000000FF80000000FF80000000FF80000000FF800000FFFFFF0000FFFFFF0000FFFFFF0 242E7EAD29>I<0000007C0000000000007C000000000000FE000000000000FE000000000000FE 000000000001FF000000000001FF000000000003FF800000000003FF800000000007FFC0000000 0007FFC00000000007FFC0000000000FFFE0000000000F7FE0000000001F7FF0000000001E3FF0 000000001E3FF0000000003E3FF8000000003C1FF8000000007C1FFC00000000780FFC00000000 780FFC00000000F80FFE00000000F007FE00000001F007FF00000001E003FF00000001E003FF00 000003E003FF80000003C001FF80000007C001FFC00000078000FFC00000078000FFC000000FFF FFFFE000000FFFFFFFE000001FFFFFFFF000001E00003FF000001E00003FF000003C00003FF800 003C00001FF800007C00001FFC00007800000FFC00007800000FFC0000F0000007FE0000F00000 07FE0001F0000007FF0003F8000003FF00FFFFC001FFFFFEFFFFC001FFFFFEFFFFC001FFFFFE37 317DB03E>65 DI<000003FF80018000003FFFF003800001FFFFFC0F800007FF007F1F80001FF8000F BF80003FE00003FF8000FF800000FF8001FF0000007F8003FE0000003F8007FC0000003F8007FC 0000001F800FF80000001F801FF80000000F801FF00000000F803FF000000007803FF000000007 807FF000000007807FE000000007807FE000000000007FE00000000000FFE00000000000FFE000 00000000FFE00000000000FFE00000000000FFE00000000000FFE00000000000FFE00000000000 FFE00000000000FFE000000000007FE000000000007FE000000000007FE000000000007FF00000 0003803FF000000003803FF000000003801FF000000003801FF800000007800FF8000000070007 FC000000070007FC0000000E0003FE0000001E0001FF0000003C0000FF8000007800003FE00000 F000001FF80003E0000007FF003F80000001FFFFFE000000003FFFF80000000003FF8000003131 7BB03C>I73 D77 DI<00000FFE0000000000FFFFE000000007FFFFFC0000001FFC07 FF0000003FE000FF800000FF80003FE00001FF00001FF00003FE00000FF80007FC000007FC0007 FC000007FC000FF8000003FE001FF8000003FF001FF0000001FF003FF0000001FF803FF0000001 FF803FF0000001FF807FE0000000FFC07FE0000000FFC07FE0000000FFC0FFE0000000FFE0FFE0 000000FFE0FFE0000000FFE0FFE0000000FFE0FFE0000000FFE0FFE0000000FFE0FFE0000000FF E0FFE0000000FFE0FFE0000000FFE0FFE0000000FFE0FFE0000000FFE07FE0000000FFC07FE000 0000FFC07FF0000001FFC07FF0000001FFC03FF0000001FF803FF0000001FF801FF8000003FF00 1FF8000003FF000FFC000007FE000FFC000007FE0007FE00000FFC0003FF00001FF80001FF8000 3FF00000FFC0007FE000003FE000FF8000001FFC07FF00000007FFFFFC00000000FFFFE0000000 000FFE00000033317BB03E>II82 D<001FF0018000FFFF038003FFFFC78007F00FFF800F8001FF801F00 007F803F00001F803E00000F807E00000F807E00000780FE00000780FE00000780FE00000380FF 00000380FF00000380FF80000000FFE00000007FFC0000007FFFE000007FFFFE00003FFFFFC000 1FFFFFF0001FFFFFF8000FFFFFFC0003FFFFFE0001FFFFFF00007FFFFF80001FFFFF800000FFFF C0000007FFC0000000FFE00000003FE00000003FE00000001FE06000001FE0E000000FE0E00000 0FE0E000000FE0E000000FC0F000000FC0F000000FC0F800001F80FC00001F80FF00003F00FFC0 007E00FFFC01FC00F1FFFFF800E03FFFE000C007FF000023317BB02E>I<3FFFFFFFFFFF003FFF FFFFFFFF003FFFFFFFFFFF003FE00FFC01FF007F000FFC003F807E000FFC001F807C000FFC000F 8078000FFC00078078000FFC00078070000FFC00038070000FFC00038070000FFC00038070000F FC000380E0000FFC0001C0E0000FFC0001C0E0000FFC0001C0E0000FFC0001C000000FFC000000 00000FFC00000000000FFC00000000000FFC00000000000FFC00000000000FFC00000000000FFC 00000000000FFC00000000000FFC00000000000FFC00000000000FFC00000000000FFC00000000 000FFC00000000000FFC00000000000FFC00000000000FFC00000000000FFC00000000000FFC00 000000000FFC00000000000FFC00000000000FFC00000000000FFC00000000000FFC0000000000 0FFC00000000000FFC00000000000FFC00000000000FFC00000000000FFC000000007FFFFFFF80 00007FFFFFFF8000007FFFFFFF800032307DAF39>I<007FF8000003FFFF000007FFFFC0000FE0 1FE0001FF007F0001FF003F8001FF003FC001FF001FE000FE001FE0007C001FE00010001FE0000 0001FE00000001FE000001FFFE00003FFFFE0001FFF1FE0007FE01FE000FF001FE001FC001FE00 3F8001FE007F8001FE00FF0001FE00FF0001FE00FF0001FE00FF0001FE00FF0003FE007F8003FE 007FC00EFE003FF03CFF000FFFF87FF807FFF03FF800FF800FF825207E9F28>97 D<01F8000000FFF8000000FFF8000000FFF80000000FF800000007F800000007F800000007F800 000007F800000007F800000007F800000007F800000007F800000007F800000007F800000007F8 00000007F800000007F800000007F80FF00007F87FFE0007F9FFFF8007FFE03FC007FF000FE007 FE0007F007F80003F807F80003FC07F80003FC07F80001FE07F80001FE07F80001FE07F80001FF 07F80001FF07F80001FF07F80001FF07F80001FF07F80001FF07F80001FF07F80001FF07F80001 FE07F80001FE07F80001FE07F80003FC07F80003FC07FC0007F807FE0007F007F7001FE007E3E0 7FC007C1FFFF0007807FFE0007001FE00028327EB12E>I<0007FF00007FFFE000FFFFF003FC03 F807F007FC0FE007FC1FE007FC3FC007FC3FC003F87FC001F07F8000407F800000FF800000FF80 0000FF800000FF800000FF800000FF800000FF800000FF8000007F8000007FC000007FC000003F C0000E3FE0000E1FE0001C0FF0001C07F8007803FF01F000FFFFE0007FFF800007FC001F207D9F 25>I<00000007E0000003FFE0000003FFE0000003FFE00000003FE00000001FE00000001FE000 00001FE00000001FE00000001FE00000001FE00000001FE00000001FE00000001FE00000001FE0 0000001FE00000001FE00000001FE0000FF81FE0007FFF1FE001FFFFDFE003FE03FFE007F800FF E00FE0003FE01FE0001FE03FC0001FE03FC0001FE07F80001FE07F80001FE07F80001FE0FF8000 1FE0FF80001FE0FF80001FE0FF80001FE0FF80001FE0FF80001FE0FF80001FE0FF80001FE07F80 001FE07F80001FE07F80001FE03FC0001FE03FC0001FE01FC0003FE00FE0007FE007F001FFE003 FC07DFF001FFFF9FFF007FFE1FFF000FF01FFF28327DB12E>I<0007FC0000003FFF800000FFFF E00003FC07F00007F801F8000FE000FC001FE0007E003FC0007E003FC0003F007FC0003F007F80 003F007F80003F80FF80003F80FF80003F80FFFFFFFF80FFFFFFFF80FFFFFFFF80FF80000000FF 80000000FF800000007F800000007F800000003FC00000003FC00003801FC00003801FE0000780 0FF0000F0007F8001E0003FE00FC0000FFFFF800003FFFE0000003FF000021207E9F26>I<0000 FF000007FFC0001FFFE0003FC7F0007F0FF800FE0FF801FE0FF801FC0FF803FC07F003FC03E003 FC01C003FC000003FC000003FC000003FC000003FC000003FC000003FC0000FFFFF800FFFFF800 FFFFF80003FC000003FC000003FC000003FC000003FC000003FC000003FC000003FC000003FC00 0003FC000003FC000003FC000003FC000003FC000003FC000003FC000003FC000003FC000003FC 000003FC000003FC000003FC000003FC000003FC000003FC000003FC00007FFFF0007FFFF0007F FFF0001D327EB119>I<001FF007E000FFFE3FF001FFFF7FF807F83FF1F80FE00FE1F80FE00FE0 F01FC007F0601FC007F0003FC007F8003FC007F8003FC007F8003FC007F8003FC007F8001FC007 F0001FC007F0000FE00FE0000FE00FE00007F83FC00007FFFF000006FFFE00000E1FF000000E00 0000001E000000001E000000001F000000001F800000001FFFFFC0000FFFFFF8000FFFFFFE0007 FFFFFF0003FFFFFF8007FFFFFFC01FFFFFFFE03F00007FE07E00000FF0FC000007F0FC000003F0 FC000003F0FC000003F0FC000003F07E000007E03F00000FC01FC0003F800FF801FF0007FFFFFE 0000FFFFF000001FFF8000252F7E9F29>I<01F800000000FFF800000000FFF800000000FFF800 0000000FF80000000007F80000000007F80000000007F80000000007F80000000007F800000000 07F80000000007F80000000007F80000000007F80000000007F80000000007F80000000007F800 00000007F80000000007F807F8000007F83FFF000007F87FFF800007F8F03FC00007F9C01FE000 07FB000FE00007FE000FF00007FE000FF00007FC000FF00007FC000FF00007F8000FF00007F800 0FF00007F8000FF00007F8000FF00007F8000FF00007F8000FF00007F8000FF00007F8000FF000 07F8000FF00007F8000FF00007F8000FF00007F8000FF00007F8000FF00007F8000FF00007F800 0FF00007F8000FF00007F8000FF00007F8000FF00007F8000FF000FFFFC1FFFF80FFFFC1FFFF80 FFFFC1FFFF8029327DB12E>I<03C0000FF0000FF0001FF8001FF8001FFC001FF8001FF8000FF0 000FF00003C00000000000000000000000000000000000000000000000000001F800FFF800FFF8 00FFF8000FF80007F80007F80007F80007F80007F80007F80007F80007F80007F80007F80007F8 0007F80007F80007F80007F80007F80007F80007F80007F80007F80007F80007F80007F80007F8 00FFFF80FFFF80FFFF8011337DB217>I<01F8000000FFF8000000FFF8000000FFF80000000FF8 00000007F800000007F800000007F800000007F800000007F800000007F800000007F800000007 F800000007F800000007F800000007F800000007F800000007F800000007F8007FFC07F8007FFC 07F8007FFC07F8001FC007F8001F0007F8003E0007F800780007F801F00007F803E00007F80780 0007F81F000007F83E000007F87C000007F9FE000007FBFF000007FFFF800007FF7FC00007FE3F E00007F81FE00007F01FF00007F00FF80007F007FC0007F003FE0007F001FF0007F000FF0007F0 00FF8007F0007FC007F0003FE007F0003FF0FFFF80FFFFFFFF80FFFFFFFF80FFFF28327EB12C> 107 D<01F800FFF800FFF800FFF8000FF80007F80007F80007F80007F80007F80007F80007F800 07F80007F80007F80007F80007F80007F80007F80007F80007F80007F80007F80007F80007F800 07F80007F80007F80007F80007F80007F80007F80007F80007F80007F80007F80007F80007F800 07F80007F80007F80007F80007F80007F80007F80007F80007F800FFFFC0FFFFC0FFFFC012327D B117>I<03F007F8000FF000FFF03FFF007FFE00FFF07FFF80FFFF00FFF0F03FC1E07F800FF1C0 1FE3803FC007F3000FE6001FC007F6000FFC001FE007FE000FFC001FE007FC000FF8001FE007FC 000FF8001FE007F8000FF0001FE007F8000FF0001FE007F8000FF0001FE007F8000FF0001FE007 F8000FF0001FE007F8000FF0001FE007F8000FF0001FE007F8000FF0001FE007F8000FF0001FE0 07F8000FF0001FE007F8000FF0001FE007F8000FF0001FE007F8000FF0001FE007F8000FF0001F E007F8000FF0001FE007F8000FF0001FE007F8000FF0001FE007F8000FF0001FE007F8000FF000 1FE0FFFFC1FFFF83FFFFFFFFC1FFFF83FFFFFFFFC1FFFF83FFFF40207D9F45>I<03F007F80000 FFF03FFF0000FFF07FFF8000FFF0F03FC0000FF1C01FE00007F3000FE00007F6000FF00007FE00 0FF00007FC000FF00007FC000FF00007F8000FF00007F8000FF00007F8000FF00007F8000FF000 07F8000FF00007F8000FF00007F8000FF00007F8000FF00007F8000FF00007F8000FF00007F800 0FF00007F8000FF00007F8000FF00007F8000FF00007F8000FF00007F8000FF00007F8000FF000 07F8000FF00007F8000FF000FFFFC1FFFF80FFFFC1FFFF80FFFFC1FFFF8029207D9F2E>I<0007 FE0000003FFFC00000FFFFF00003FC03FC0007F000FE000FE0007F001FC0003F803FC0003FC03F C0003FC07F80001FE07F80001FE07F80001FE0FF80001FF0FF80001FF0FF80001FF0FF80001FF0 FF80001FF0FF80001FF0FF80001FF0FF80001FF07F80001FE07F80001FE07F80001FE03FC0003F C03FC0003FC01FE0007F800FE0007F0007F801FE0003FE07FC0001FFFFF800003FFFC0000007FE 000024207E9F29>I<03F03F00FFF07FC0FFF1FFE0FFF3C7F00FF38FF807F70FF807F60FF807FE 0FF807FC07F007FC03E007FC008007F8000007F8000007F8000007F8000007F8000007F8000007 F8000007F8000007F8000007F8000007F8000007F8000007F8000007F8000007F8000007F80000 07F8000007F80000FFFFE000FFFFE000FFFFE0001D207E9F22>114 D<00FF870007FFEF001FFF FF003F007F003C001F0078000F00F8000700F8000700F8000700FC000700FF000000FFF800007F FFC0003FFFF0003FFFFC000FFFFE0007FFFF0001FFFF80001FFF800000FFC000001FC060000FC0 E00007C0E00007C0F00007C0F8000780F8000F80FE000F00FF803E00FFFFFC00F3FFF800C07FC0 001A207D9F21>I<00380000380000380000380000380000780000780000780000F80000F80001 F80003F80007F8001FF800FFFFFEFFFFFEFFFFFE07F80007F80007F80007F80007F80007F80007 F80007F80007F80007F80007F80007F80007F80007F80007F80007F80007F80707F80707F80707 F80707F80707F80707F80703F80E03FC0E01FE1C00FFF8007FF0000FE0182E7EAD20>I<01F800 03F000FFF801FFF000FFF801FFF000FFF801FFF0000FF8001FF00007F8000FF00007F8000FF000 07F8000FF00007F8000FF00007F8000FF00007F8000FF00007F8000FF00007F8000FF00007F800 0FF00007F8000FF00007F8000FF00007F8000FF00007F8000FF00007F8000FF00007F8000FF000 07F8000FF00007F8000FF00007F8000FF00007F8000FF00007F8001FF00007F8001FF00003F800 3FF00003F8006FF00001FE03CFF80000FFFF8FFF80007FFF0FFF80000FFC0FFF8029207D9F2E> I119 D123 D E end %%EndProlog %%BeginSetup TeXDict begin %%EndSetup %%Page: 1 1 0 bop 367 90 a Fu(Coun)n(tering)26 b(Abuse)h(of)h(Name{Based)691 182 y(Authen)n(tication)1260 156 y Ft(1)397 349 y Fs(Christoph)20 b(L.)g(Sc)n(h)n(uba)h(and)f(Eugene)f(H.)h(Spa\013ord)728 475 y Fr(CO)n(AST)h(Lab)r(oratory)541 550 y(Departmen)n(t)e(of)h(Computer)f (Sciences)750 625 y(Purdue)h(Univ)n(ersit)n(y)587 700 y(W)-5 b(est)19 b(Lafa)n(y)n(ette,)h(IN)f(47907-1398)624 774 y Fq(f)p Fp(schuba,spaf)p Fq(g)p Fp(@cs.purdue.)o(edu)889 959 y Fo(Abstract)279 1044 y Fn(Authen)o(tication)f(for)f(access)h(con)o(trol)f(pro)q(cedures)h(is) g(usually)g(based)g(on)f(the)h(iden-)211 1100 y(tit)o(y)f(of)h(participating) h(en)o(tities.)28 b(In)18 b(some)g(comm)o(unications)g(systems,)g(iden)o (tities)h(are)211 1157 y(partially)13 b(or)e(wholly)h(resolv)o(ed)h(using)f (hostnames)f(or)g(mac)o(hine)i(addresses)f(in)g(the)g(under-)211 1213 y(lying)17 b(proto)q(col)f(suite.)23 b(Access)17 b(con)o(trol)e(lists)i (and)f(rev)o(o)q(cation)g(lists)h(are)f(often)g(de\014ned)211 1269 y(on)g(the)h(basis)f(of)g(hostnames,)g(whereb)o(y)g(the)h(comm)o (unication)g(subsystem)f(at)g(run)o(time)211 1326 y(utilizes)h(mac)o(hine)f (addresses.)279 1382 y(After)d(comm)o(unications)i(b)q(et)o(w)o(een)f(t)o(w)o (o)e(mac)o(hines)j(are)e(established,)j(hosts)d(iden)o(tify)211 1439 y(eac)o(h)19 b(other)g(b)o(y)h(their)f(proto)q(col)h(addresses.)32 b(T)l(o)19 b(map)g(this)h(address)f(to)g(a)g(high{lev)o(el)211 1495 y(name,)f(whic)o(h)h(can)f(then)h(b)q(e)f(compared)g(with)h(access)f (con)o(trol)f(or)h(rev)o(o)q(cation)g(lists)h(to)211 1552 y(gran)o(t)f(or)g (den)o(y)i(access,)f(a)g(resolution)h(pro)q(cess)f(is)g(initiated.)33 b(The)19 b(abstraction)g(from)211 1608 y(proto)q(col)d(addresses)h(to)e (high{lev)o(el)j(hostnames)e(is)h(necessary)f(to)g(hide)i(details)f(of)f (het-)211 1665 y(erogeneous)d(comm)o(unication)h(subsystems,)e(and)i(of)e (dynamic)i(net)o(w)o(ork)e(con\014gurations)211 1721 y(from)18 b(the)g(application)i(la)o(y)o(er)f(where)g(a)f(uniform,)h(high{lev)o(el)i (naming)e(sc)o(heme)f(is)h(de-)211 1778 y(sired.)279 1834 y(If)f (cryptographic)f(capabilities)j(are)e(used)g(that)e(iden)o(tify)j(sub)s (ject{ob)s(ject)e(in)o(terac-)211 1890 y(tions,)j(authen)o(tication)h (usually)g(do)q(es)f(not)f(dep)q(end)i(on)f(host)f(iden)o(ti\014cation.)35 b(Where)211 1947 y(host)17 b(iden)o(ti\014cation)j(is)e(part)f(of)g(the)h (authen)o(tication,)g(a)g(crucial)h(link)g(in)f(the)g(c)o(hain)g(of)211 2003 y(authen)o(tication)h(is)g(the)f(asso)q(ciation)h(b)q(et)o(w)o(een)g (hostnames)f(and)g(their)h(resp)q(ectiv)o(e)h(ad-)211 2060 y(dresses.)g(The)15 b(v)m(alidit)o(y)i(of)e(the)g(authen)o(tication)h(can)f (b)q(e)h(trusted)f(only)h(as)f(m)o(uc)o(h)g(as)g(the)211 2116 y(binding)i(pro)q(cess)f(itself.)279 2173 y(In)i(the)f(In)o(ternet)h(this)g (name)f(resolution)h(is)g(pro)o(vided)g(b)o(y)f(a)g(widely{implemen)o(ted)211 2229 y(distributed)f(database)e(system:)19 b(the)c(Domain)f(Name)h(System)f (\(DNS\).)g(Dynamic)h(con-)211 2286 y(\014guration)g(b)q(eha)o(vior,)h (system)f(e\016ciency)l(,)i(and)e(v)o(olume)h(of)f(binding)i(requests)e (demand)211 2342 y(late)i(binding)i(b)q(et)o(w)o(een)f(hostnames)f(and)g (addresses,)g(and)h(cac)o(hing)g(of)e(the)i(mappings.)211 2399 y(Therefore,)c(bindings)i(are)d(established)j(\\just)e(in)h(time")f(on)g(a)g (need)h(basis)f(and)g(are)g(k)o(ept)211 2455 y(v)m(alid)j(for)d(a)h(limited)i (p)q(erio)q(d)g(of)e(time.)p 89 2536 720 2 v 145 2567 a Fm(1)164 2582 y Fl(submitted)e(to)h(the)g(t)o(w)o(en)o(t)o(y-second)h(ann)o(ual)e Fk(T)m(elecomm)o(unicatio)o(ns)f(P)o(olicy)h(Researc)o(h)i(Conference)p eop %%Page: 2 2 1 bop 279 82 a Fn(This)15 b(pap)q(er)g(describ)q(es)g(problems)g(of)f (name{based)h(authen)o(tication)f(requiring)i(late)211 139 y(binding)21 b(suc)o(h)e(as)f(that)h(pro)o(vided)g(b)o(y)g(the)g(DNS)g(for)f (hostname{to{address)g(asso)q(cia-)211 195 y(tions.)23 b(Because)16 b(forw)o(ard)f(mappings)i(\(where)f(the)g(address)g(is)h(a)f(relation)g(of)g (the)g(host-)211 252 y(name\))c(and)h(rev)o(erse)f(mappings)i(are)e(main)o (tained)h(in)h(unrelated)f(parts)f(of)g(the)h(database,)211 308 y(three)k(lev)o(els)h(of)f(mo)q(di\014cation)h(are)f(p)q(ossible:)25 b(mo)q(di\014ed)18 b(forw)o(ard)e(mapping,)i(mo)q(di\014ed)211 364 y(bac)o(kw)o(ard)10 b(mapping,)i(or)e(b)q(oth.)18 b(The)11 b(mo)q(di\014cation)h(of)e(asso)q(ciations)h(enables)h(the)f(sp)q(o)q(of-)211 421 y(ing)16 b(of)e(hostnames)h(in)h(sessions)g(that)e(dep)q(end)j(on)e(the)h (DNS.)279 477 y(W)l(e)j(state)f(the)g(problem)h(in)h(an)e(abstract)g(w)o(a)o (y)f(and)i(in)h(the)e(concrete)h(case)g(of)f(the)211 534 y(DNS.)c(W)l(e)g (analyze)h(the)f(conditions)i(that)d(facilitate)j(the)e(exploitation)h(of)f (the)g(problem)211 590 y(and)h(explain)i(the)e(w)o(eaknesses)g(that)g(are)g (presen)o(t)g(in)h(the)f(DNS.)279 647 y(W)l(e)h(then)h(explore)f(some)g(p)q (ossible)i(solutions)f(to)e(the)h(problem.)23 b(All)18 b(our)e(prop)q(osed) 211 703 y(solutions)k(are)e(ev)m(aluated)j(b)o(y)e(a)f(n)o(um)o(b)q(er)i(of)f (criteria)g(to)g(compare)g(e\013ects)f(of)h(the)g(so-)211 760 y(lutions.)36 b(Eac)o(h)19 b(of)h(the)g(solutions)h(will)h(either)f(consist)f (of)g(mec)o(hanisms)g(that)g(enable)211 816 y(arbitrarily)g(c)o(hosen)g(p)q (olicies,)j(or)c(it)h(will)h(require)f(the)g(implemen)o(tation)h(of)e(a)h (certain)211 873 y(p)q(olicy)l(.)k(W)l(e)16 b(emphasize)i(the)e(solutions)h (to)e(impro)o(v)o(e)h(existing)h(name)f(serv)o(ers)g(b)o(y)g(mo)q(d-)211 929 y(ifying)i(them)g(in)g(a)f(w)o(a)o(y)g(that)f(they)i(rely)g(on)f(less)h (trust,)f(and)h(to)f(em)o(b)q(ed)h(crytographic)211 985 y(metho)q(ds)d(in)o (to)g(the)h(name)f(resolution)h(pro)q(cess.)89 1152 y Fu(1)83 b(In)n(tro)r(duction)89 1261 y Ft(The)19 b(In)o(ternet)f(is)h(a)h(widespread) f(conglomeration)g(of)g(h)o(undreds)h(of)f(thousands)i(of)f(in)o(tercon-)89 1322 y(nected)e(heterogeneous)h(net)o(w)o(orks)f(and)h(hosts.)29 b(The)18 b(design)h(of)g(the)f(In)o(ternet)f(is)i(based)g(on)g(a)89 1382 y(proto)q(col)e(hierarc)o(h)o(y)l(.)j(There)c(exist)f(m)o(ultiple)e (implem)o(en)o(tati)o(ons)h(of)j(these)f(proto)q(cols.)162 1442 y(Computers)21 b(comm)o(uni)o(cate)e(with)i(eac)o(h)f(other)i(on)g(the)f (basis)h(of)f(di\013eren)o(t)g(t)o(yp)q(es)g(of)g(ad-)89 1502 y(dresses;)27 b(on)d(the)f(ph)o(ysical)f(la)o(y)o(er)g(using)i(lo)o(w{lev)o (el)d(ph)o(ysical)i(addresses)h(according)f(to)h(the)89 1562 y(hardw)o(are)15 b(devices)f(used,)h(on)g(the)f(data)i(link)e(to)h(presen)o (tation)g(la)o(y)o(er)e(on)i(a)h(\014rst{lev)o(el)d(abstrac-)89 1623 y(tion)20 b(using)h(host)g(addresses)g(suc)o(h)f(as)h(IP)f(addresses) 1101 1604 y Fj(2)1121 1623 y Ft(,)h(and)g(on)g(the)f(application)g(la)o(y)o (er)f(on)i(a)89 1683 y(second{lev)o(el)15 b(abstraction)i(using)f(high{lev)o (el,)e(pronounceable)j(hostnames.)162 1743 y(The)22 b(task)g(of)g(naming)f (hosts)h(and)h(net)o(w)o(ork)e(domains)g(is)g(addressed)h(b)o(y)g(creating)f (a)h(hi-)89 1803 y(erarc)o(hical)15 b(relation)i(b)q(et)o(w)o(een)e(domains,) h(with)h(hosts)h(as)f(the)f(furthest)h(descendan)o(ts)g(from)e(an)89 1863 y(arti\014cial)d(ro)q(ot)i(domain.)19 b(By)12 b(app)q(ending)i(the)e (domain)g(lab)q(els)h(one)g(after)f(the)h(other)g(to)g(the)f(host)89 1923 y(lab)q(els)i(on)i(the)e(path)h(up)g(to)g(the)f(ro)q(ot)i(in)e(the)g (hierarc)o(hical)f(tree,)h(a)h(unique,)f(memoriz)o(able,)d(and)89 1984 y(usually)18 b(pronounceable)h(iden)o(ti\014er)e(is)i(created:)26 b(the)18 b(hostname.)28 b(One)19 b(of)g(the)f(managemen)o(t)89 2044 y(tasks)f(in)f(the)g(In)o(ternet)f(is)h(the)g(mapping)f(of)i(lo)o(w)o (er{lev)o(el)c(addresses)k(to)g(these)f(hostnames.)162 2104 y(The)g(mapping,)f(or)h(binding,)g(of)g(IP)f(addresses)i(to)f(hostnames)g(b)q (ecame)e(a)j(ma)s(jor)e(problem)89 2164 y(in)f(the)f(rapidly)h(gro)o(wing)g (In)o(ternet.)19 b(Note)14 b(that)g(this)g(pap)q(er)h(do)q(es)f(not)h(deal)e (with)h(the)g(mapping)89 2224 y(b)q(et)o(w)o(een)f(addresses)h(on)h(the)e(ph) o(ysical)g(la)o(y)o(er)g(and)h(transp)q(ort)i(la)o(y)o(er,)c(whic)o(h)h(is)h (solv)o(ed)f(b)o(y)h(ARP)1870 2206 y Fj(3)89 2285 y Ft(in)20 b(the)g(TCP/IP)h(In)o(ternet)e(Proto)q(col)i(Suite,)g(but)f(with)g(the)g (mapping)g(b)q(et)o(w)o(een)f(hostnames)89 2345 y(and)e(IP)f(addresses.)p 89 2417 720 2 v 145 2448 a Fm(2)164 2463 y Fl(\\32-bit)c(addresses)k (assigned)f(to)e(hosts)i(that)f(w)o(an)o(t)f(to)h(participate)g(in)f(a)h (TCP/IP)g(in)o(ternet")h([Com91)m(])145 2497 y Fm(3)164 2513 y Fl(\\Address)f(Resolution)e(Proto)q(col)g({)h(used)g(to)g(dynamically)c (bind)k(a)f(high{lev)o(el)g(IP)h(address)g(to)g(a)f(lo)o(w{lev)o(el)89 2562 y(ph)o(ysical)h(hardw)o(are)i(address")g([Com91)m(])977 2715 y Ft(2)p eop %%Page: 3 3 2 bop 162 82 a Ft(This)18 b(higher{lev)o(el)d(binding)j(e\013ort)f(w)o(en)o (t)g(through)i(di\013eren)o(t)d(stages)j(of)e(dev)o(elopmen)o(t)e(up)89 142 y(to)f(the)f(curren)o(tly)e(used)j(Domain)e(Name)g(System)f(\(DNS\).)i (The)g(DNS)h(is)f(a)g(distributed)g(naming)89 203 y(resolution)g(system)f (used)h(b)o(y)g(most)g(net)o(w)o(ork)f(services)g(a)o(v)m(ailable)h (throughout)h(the)f(In)o(ternet.)19 b(It)89 263 y(w)o(orks)d(transparen)o (tly)g(for)g(the)f(user)h(who)h(sends)f(email,)d(accesses)j(another)h(host)f (via)g Fi(telnet)i Ft(or)89 323 y Fi(rlo)n(gin)p Ft(,)d(or)g(transfers)h (some)e(\014les)h(via)g Fi(ftp)g Ft(b)q(et)o(w)o(een)f(hosts.)22 b(The)15 b(DNS)g(pro)o(vides)f(name)g(binding)89 383 y(in)19 b(b)q(oth)i(directions:)27 b(giv)o(en)19 b(a)h(hostname,)g(it)f(returns)h (the)g(appropriate)g(IP)g(addresses,)g(and)89 443 y(vice)15 b(v)o(ersa.)162 504 y(Before)c(hosts)i(gran)o(t)f(net)o(w)o(ork)g(services)e (to)j(users,)f(an)g(authen)o(tication)g(pro)q(cess)g(tak)o(es)g(place,)89 564 y(where)19 b(the)g(users')g(access)g(righ)o(ts,)g(and)g(the)g(iden)o(tit) o(y)e(of)j(connecting)f(hosts)h(get)f(scrutinized,)89 624 y(according)f(to)g (pro)o(vider)f(p)q(olicies.)24 b(There)18 b(are)f(man)o(y)f(notions)j(on)f (ho)o(w)g(access)f(righ)o(ts)h(can)g(b)q(e)89 684 y(sp)q(eci\014ed.)i (Examinations)13 b(can)i(b)q(e)f(based)h(on)g(iden)o(ti\014cation)e(b)o(y)g (hostname,)h(login)g(name,)f(and)89 744 y(login)20 b(passw)o(ord.)34 b(In)20 b(some)f(cases)h(it)f(su\016ces)h(to)g(pro)o(vide)g(the)f(righ)o(t)h (names,)g(and)g(access)g(is)89 804 y(gran)o(ted)c(without)h(sp)q(ecifying)f (an)o(y)g(passw)o(ord)h(at)g(all.)162 865 y(Some)j(Berk)o(eley)f Fh(r{commands)h Ft(\(see)h([Ste90,)h(c)o(hapter)f(14]\))g(o\013er)h(net)o(w)o (ork)f(services)f(for)89 925 y(whic)o(h)j(it)h(is)g(su\016cien)o(t)f(to)h(v)o (erify)e(user)j(name)d(and)j(hostname)f(to)g(gain)h(complete)d(access.)89 985 y(As)f(the)g(remote)e(user)i(name)f(is)g(sp)q(eci\014ed)h(b)o(y)f(the)h (connecting)g(site,)g(the)g(authen)o(tication)f(is)89 1045 y(additionally)c(based)h(up)q(on)g(the)f(name)f(of)i(the)f(connecting)g(mac)o (hine.)j(A)d(mac)o(hine)e(that)j(o\013ers)89 1105 y(services)d(can)h(acquire) f(information)g(ab)q(out)j(the)d Fi(so)n(cket)i Ft(that)g(is)f(used)g(b)o(y)f (the)h(connecting)g(site.)89 1166 y(A)20 b(so)q(c)o(k)o(et)f(is)h(an)g (abstraction)h(for)f(a)g(net)o(w)o(ork)g(service)e(access)i(p)q(oin)o(t)g (\(NSAP\):)f(in)h(UNIX)1827 1148 y Fj(4)1865 1166 y Ft(a)89 1226 y(tuple)c(consisting)h(of)g(IP)g(address,)g(p)q(ort,)g(and)g(proto)q (col)h(used)f(b)o(y)f(the)g(remote)f(site.)22 b(T)l(o)c(v)o(erify)89 1286 y(the)e(hostname,)f(it)h(is)g(the)g(task)h(of)f(the)g(DNS)g(to)h(map)e (the)h(IP)g(address)h(to)g(the)f(hostname.)162 1346 y(Because)23 b(the)g(DNS)h(is)f(distributed)g(among)g(man)o(y)f(thousands)j(of)f(hosts,)i (it)d(can)h(b)q(e)g(a)89 1406 y(critical)13 b(mistak)o(e)f(to)j(blindly)e (trust)i(the)g(resolv)o(ed)e(binding.)21 b(This)14 b(pap)q(er)i(in)o(v)o (estigates)d(p)q(olicies)89 1467 y(and)j(mec)o(hanism)o(s)d(to)i(solv)o(e)g (the)g(problem)e(of)j(trust)f(in)g(the)g(Domain)f(Name)f(System.)20 b(Some)14 b(of)89 1527 y(these)j(p)q(olicies)f(and)i(mec)o(hanisms)d(migh)o (t)g(b)q(e)j(abstractable)f(to)h(distributed)f(naming)f(services)89 1587 y(in)g(general.)162 1647 y(Although)d(this)f(problem)f(has)i(b)q(een)g (kno)o(wn)g(for)f(some)g(y)o(ears)g(no)o(w,)h(not)g(man)o(y)e(publications)89 1707 y(deal)18 b(with)g(it.)26 b([Bel90)o(])17 b(and)i([Sc)o(h93])e(are)h (the)g(principal)f(accoun)o(ts)h(that)h(w)o(e)e(can)h(men)o(tion)e(as)89 1768 y(related)g(w)o(ork.)22 b([Bel90)o(])17 b(demonstrates)f(the)g(sub)o(v)o (ersion)g(of)h(system)e(securit)o(y)h(using)h(the)f(DNS)89 1828 y(and)k(discusses)g(p)q(ossible)f(defenses)h(against)g(the)f(attac)o(k)h (and)g(limitations)d(on)j(their)f(applica-)89 1888 y(bilit)o(y)l(.)24 b(The)18 b(pap)q(er)h(follo)o(ws)f(suggestions)h(from)e(P)o(aul)h(V.)f(Mo)q (c)o(k)m(ap)q(etris,)h(the)f(designer)h(of)g(the)89 1948 y(DNS.)g(In)g([Sc)o (h93])g(the)g(details)g(of)h(the)f(exploitation)g(of)h(the)f(w)o(eakness)h (are)f(w)o(ork)o(ed)g(out)h(and)89 2008 y(sev)o(eral)c(approac)o(hes)h(to)g (solv)o(e)f(the)h(w)o(eakness)f(in)h(the)f(DNS)h(are)g(discussed)f(with)h (emphasis)e(on)89 2068 y(hardening)20 b(the)g(name)f(serv)o(er)g(impleme)o(n) o(tations)f(and)i(the)g(usage)h(of)g(strong)g(cryptographic)89 2129 y(metho)q(ds)16 b(for)g(authen)o(tication.)p 89 2201 720 2 v 145 2232 a Fm(4)164 2247 y Fl(UNIX)e(is)g(a)f(trademark)g(of)h(No)o(v)o (ell)977 2715 y Ft(3)p eop %%Page: 4 4 3 bop 89 90 a Fu(2)83 b(The)27 b(Problem)89 215 y Fg(2.1)70 b(Statemen)n(t)21 b(of)i(the)f(Problem)89 307 y Ft(Authen)o(ticit)o(y)16 b(is)k(based)f(on)h(the)f(iden)o(tit)o(y)e(of)j(some)e(en)o(tit)o(y)l(.)29 b(This)19 b(en)o(tit)o(y)e(has)j(to)g(pro)o(v)o(e)f(that)89 367 y(it)g(is)g(gen)o(uine.)30 b(In)19 b(man)o(y)e(net)o(w)o(ork)i (applications)g(the)h(iden)o(tit)o(y)d(of)i(participating)g(en)o(tities)f(is) 89 427 y(simply)e(determined)g(b)o(y)i(their)f(names)h(or)g(addresses.)28 b(High{lev)o(el)16 b(applications)j(use)f(mainly)89 487 y(names)f(for)g (authen)o(tication)h(purp)q(oses,)g(b)q(ecause)g(address)g(lists)f(are)h(m)o (uc)o(h)d(harder)j(to)g(create,)89 548 y(understand,)f(and)f(main)o(tain)f (than)i(name)e(lists.)162 608 y(Assuming)f(an)j(en)o(tit)o(y)c(w)o(an)o(ts)j (to)g(sp)q(o)q(of)h(the)f(iden)o(tit)o(y)d(of)j(some)e(other)i(en)o(tit)o(y)l (,)d(it)j(is)f(in)g(some)89 668 y(cases)h(enough)g(to)g(c)o(hange)g(the)f (mapping)g(b)q(et)o(w)o(een)g(its)g(lo)o(w{lev)o(el)f(address)i(and)g(its)g (high{lev)o(el)89 728 y(name.)k(That)d(means)e(that)h(an)h(attac)o(k)o(er)e (can)h(fak)o(e)g(the)f(name)g(of)i(someone)e(b)o(y)g(mo)q(difying)g(the)89 788 y(asso)q(ciation)j(of)g(his)f(address)h(from)e(his)h(o)o(wn)h(name)e(to)h (the)g(name)f(he)h(w)o(an)o(ts)h(to)f(imp)q(ersonate.)89 849 y(Once)f(an)h(attac)o(k)o(er)f(has)h(done)g(that,)f(an)i(authen)o(ticator)e (can)h(no)g(longer)f(distinguish)h(b)q(et)o(w)o(een)89 909 y(the)e(true)g(and)h(the)g(fak)o(ed)f(en)o(tit)o(y)l(.)k(This)c(describ)q(es) g(the)h(fundamen)o(tal)e(problem)f(on)j(whic)o(h)f(this)89 969 y(pap)q(er)e(is)g(based:)20 b Fh(If)12 b(the)g(binding)h(pro)q(cess)g(b)q (et)o(w)o(een)f(names)f(and)j(addresses)f(cannot)g(b)q(e)g(trusted)89 1029 y(fully)l(,)i(no)h(one)h(can)f(rely)f(on)i(an)g(authen)o(tication)f(pro) q(cess)h(on)f(a)h(high{lev)o(el.)89 1174 y Fg(2.2)70 b(The)22 b(Problem)g(in)g(the)g(DNS)89 1266 y Ft(T)l(o)h(understand)h(the)e(metho)q(d) g(ho)o(w)i(to)f(deceiv)o(e)d(the)j(DNS)g(w)o(e)f(\014rst)h(giv)o(e)f(an)h (example)e(for)89 1326 y(a)i(v)m(alid)g(name)f(resolution)h(in)g(the)f(DNS.)h (The)g(resolution)g(is)g(based)g(on)h(the)e(clien)o(t{serv)o(er)89 1386 y(paradigm.)e(An)o(y)14 b(pro)q(cess)h(that)h(accepts)e(a)h(connection)g (from)e(another)j(host)f(receiv)o(es)e(from)g(its)89 1447 y(lo)o(w)o(er)h (proto)q(col)h(la)o(y)o(er)e(the)i(connecting)f(host's)h(IP)g(address.)21 b(The)15 b(pro)q(cess)g(then)g(calls)f(its)g(lo)q(cal)89 1507 y(resolv)o(er)j(with)h(this)g(IP)g(address)h(as)g(an)g(argumen)o(t)e(and)i (requests)e(the)h(according)h(hostname.)89 1567 y(The)14 b(resolv)o(er)e (forms)h(a)h(query)f(for)h(the)f(giv)o(en)g(IP)h(address)g(and)g(w)o(aits)g (to)g(retriev)o(e)e(the)h(resp)q(onse)89 1627 y(con)o(taining)18 b(the)h(answ)o(er)f(to)h(its)g(query)f(from)f(the)h(default)h(name)e(serv)o (er.)27 b(This)19 b(name)e(serv)o(er)89 1687 y(could)g(b)q(e)g(running)g(on)g (the)f(same)g(host)i(with)e(the)h(resolv)o(er)f(soft)o(w)o(are,)g(on)h(a)h (host)f(in)g(the)f(lo)q(cal)89 1747 y(domain)e(of)i(the)e(resolv)o(er,)g(or)i (on)f(a)h(host)f(outside)g(the)g(lo)q(cal)g(domain.)20 b(The)15 b(selection)f(of)i(whic)o(h)89 1808 y(name)e(serv)o(er)h(to)h(con)o(tact)g (dep)q(ends)g(on)g(the)f(name)g(or)h(address)g(to)g(b)q(e)g(resolv)o(ed.)k (The)c(decision)89 1868 y(pro)q(cess)h(ab)q(out)g(this)g(c)o(hoice)d(is)j(sp) q(eci\014ed)e(in)h([Mo)q(c87)q(,)f(sections)i(4.3.2,)f(5.3.3].)162 1928 y(Queries)g(to)h(name)f(serv)o(ers)g(from)f(a)j(resolv)o(er)d(come)g(in) i(t)o(w)o(o)f(\015a)o(v)o(ors:)23 b Fh(recursiv)o(e)15 b Ft(and)i Fh(itera-)89 1988 y(tiv)o(e)p Ft(.)i(In)14 b(recursiv)o(e)f(resolution,)i(a)f (resolv)o(er)g(sends)h(a)g(recursiv)o(e)d(query)i(to)h(a)g(name)e(serv)o(er.) 20 b(The)89 2048 y(queried)12 b(name)h(serv)o(er)f(then)i(has)g(the)g (obligation)g(to)f(resp)q(ond)i(with)e(the)h(answ)o(er)g(to)g(that)g(query)89 2109 y(or)h(an)f(error)h(co)q(de.)20 b(If)14 b(a)h(name)e(serv)o(er)g(cannot) i(resolv)o(e)e(the)h(query)f(lo)q(cally)l(,)h(it)f(calls)h(its)g(resolv)o(er) 89 2169 y(and)h(queries)e(recursiv)o(ely)f(another)j(name)e(serv)o(er.)20 b(This)15 b(is)f(rep)q(eated)g(un)o(til)f(one)i(queried)e(name)89 2229 y(serv)o(er)20 b(supplies)g(the)h(answ)o(er)g(or)g(an)g(error)g(co)q(de) g(that)g(then)f(tra)o(v)o(els)g(the)h(rev)o(erse)e(path.)35 b(In)89 2289 y(iterativ)o(e)13 b(resolution,)j(the)f(con)o(tacted)g(name)f (serv)o(er)g(returns)i(an)f(answ)o(er)h(to)g(the)f(query)f(to)i(the)89 2349 y(requesting)i(resolv)o(er.)27 b(This)19 b(is)g(a)g(referral)e(to)i (another)h(name)d(serv)o(er)h(that)h(is)f(more)g(lik)o(ely)e(to)89 2410 y(kno)o(w)h(the)g(answ)o(er,)g(or)g(an)h(error)f(co)q(de)g(to)h(signal)f (the)g(o)q(ccurrence)f(of)i(an)f(exception)f(or)h(error.)89 2470 y(The)f(rep)q(eated)g(resolution)h(attempts)e(are)h(p)q(erformed)f(b)o (y)h(the)g(lo)q(cal)g(resolv)o(er.)162 2530 y(Man)o(y)g(securit)o(y)g (problems)f(of)i(the)f(TCP/IP)i(proto)q(col)f(suite)f(build)h(on)g(the)f (abilit)o(y)f(of)i(the)89 2590 y(attac)o(k)o(er)i(to)h(sp)q(o)q(of)i(the)e (IP)f(address)i(of)f(a)h(trusted)f(mac)o(hine,)e(as)i(describ)q(ed)g(in)f ([Bel89)o(].)32 b(As)977 2715 y(4)p eop %%Page: 5 5 4 bop 201 1145 a @beginspecial 0 @llx 0 @lly 378 @urx 252 @ury 3780 @rwi @setspecial %%BeginDocument: setup.eps /$F2psDict 200 dict def $F2psDict begin $F2psDict /mtrx matrix put /l {lineto} bind def /m {moveto} bind def /s {stroke} bind def /n {newpath} bind def /gs {gsave} bind def /gr {grestore} bind def /clp {closepath} bind def /graycol {dup dup currentrgbcolor 4 -2 roll mul 4 -2 roll mul 4 -2 roll mul setrgbcolor} bind def /col-1 {} def /col0 {0 0 0 setrgbcolor} bind def /col1 {0 0 1 setrgbcolor} bind def /col2 {0 1 0 setrgbcolor} bind def /col3 {0 1 1 setrgbcolor} bind def /col4 {1 0 0 setrgbcolor} bind def /col5 {1 0 1 setrgbcolor} bind def /col6 {1 1 0 setrgbcolor} bind def /col7 {1 1 1 setrgbcolor} bind def end /$F2psBegin {$F2psDict begin /$F2psEnteredState save def} def /$F2psEnd {$F2psEnteredState restore end} def $F2psBegin 0 setlinecap 0 setlinejoin -9.0 270.0 translate 0.900 -0.900 scale 1.000 setlinewidth n 99 19 m 99 39 l gs col-1 s gr n 99 279 m 99 299 l gs col-1 s gr n 339 19 m 339 39 l gs col-1 s gr n 339 279 m 339 299 l gs col-1 s gr 0.500 setlinewidth n 159 59 m 279 59 l gs col-1 s gr n 271.000 57.000 m 279.000 59.000 l 271.000 61.000 l gs 2 setlinejoin col-1 s gr 1.000 setlinewidth [6.000000] 0 setdash n 379 19 m 419 19 l gs col-1 s gr [] 0 setdash [6.000000] 0 setdash n 59 19 m 14 19 l gs col-1 s gr [] 0 setdash [6.000000] 0 setdash n 379 299 m 419 299 l gs col-1 s gr [] 0 setdash [6.000000] 0 setdash n 59 299 m 14 299 l gs col-1 s gr [] 0 setdash n 59 19 m 139 19 l gs col-1 s gr n 299 19 m 379 19 l gs col-1 s gr n 59 299 m 139 299 l gs col-1 s gr n 299 299 m 379 299 l gs col-1 s gr [6.000000] 0 setdash n 259 299 m 299 299 l gs col-1 s gr [] 0 setdash [6.000000] 0 setdash n 139 299 m 179 299 l gs col-1 s gr [] 0 setdash [6.000000] 0 setdash n 259 19 m 299 19 l gs col-1 s gr [] 0 setdash [6.000000] 0 setdash n 139 19 m 179 19 l gs col-1 s gr [] 0 setdash 0.500 setlinewidth n 46 39 m 39 39 39 72 7 arcto 4 {pop} repeat 39 79 152 79 7 arcto 4 {pop} repeat 159 79 159 46 7 arcto 4 {pop} repeat 159 39 46 39 7 arcto 4 {pop} repeat clp gs 0.95 setgray fill gr gs col-1 s gr n 286 39 m 279 39 279 72 7 arcto 4 {pop} repeat 279 79 392 79 7 arcto 4 {pop} repeat 399 79 399 46 7 arcto 4 {pop} repeat 399 39 286 39 7 arcto 4 {pop} repeat clp gs 0.95 setgray fill gr gs col-1 s gr n 46 239 m 39 239 39 272 7 arcto 4 {pop} repeat 39 279 152 279 7 arcto 4 {pop} repeat 159 279 159 246 7 arcto 4 {pop} repeat 159 239 46 239 7 arcto 4 {pop} repeat clp gs 0.95 setgray fill gr gs col-1 s gr n 286 239 m 279 239 279 272 7 arcto 4 {pop} repeat 279 279 392 279 7 arcto 4 {pop} repeat 399 279 399 246 7 arcto 4 {pop} repeat 399 239 286 239 7 arcto 4 {pop} repeat clp gs 0.95 setgray fill gr gs col-1 s gr n 77.000 87.000 m 79.000 79.000 l 81.000 87.000 l gs 2 setlinejoin col-1 s gr n 79 79 m 79 239 l gs col-1 s gr n 81.000 231.000 m 79.000 239.000 l 77.000 231.000 l gs 2 setlinejoin col-1 s gr 1 setlinecap [1 3.000000] 3.000000 setdash n 9 189 m 429 189 l gs col-1 s gr [] 0 setdash 0 setlinecap n 319 239 m 323.644 205.212 323.644 190.212 319 179 curveto 316.081 171.953 306.047 161.919 299 159 curveto 259.136 142.488 178.864 175.512 139 159 curveto 131.953 156.081 121.919 146.047 119 139 curveto 114.356 127.788 114.356 112.788 119 79 curveto gs col-1 s gr n 115.929 86.653 m 119.000 79.000 l 119.892 87.198 l gs 2 setlinejoin col-1 s gr /Courier-Bold findfont 12.00 scalefont setfont 314 74 m gs 1 -1 scale (boromir) col-1 show gr /Courier-Bold findfont 12.00 scalefont setfont 74 74 m gs 1 -1 scale (aragorn) col-1 show gr /Courier-Bold findfont 12.00 scalefont setfont 349 209 m gs 1 -1 scale (attack.dom) col-1 show gr /Courier-Bold findfont 12.00 scalefont setfont 349 179 m gs 1 -1 scale (defend.dom) col-1 show gr /Times-Roman findfont 12.00 scalefont setfont 44 54 m gs 1 -1 scale (user:) col-1 show gr /Courier-Bold findfont 12.00 scalefont setfont 74 54 m gs 1 -1 scale (alice) col-1 show gr /Courier-Bold findfont 12.00 scalefont setfont 314 54 m gs 1 -1 scale (bob) col-1 show gr /Times-Roman findfont 12.00 scalefont setfont 144 149 m gs 1 -1 scale (Hi! I am) col-1 show gr /Courier-Bold findfont 12.00 scalefont setfont 189 149 m gs 1 -1 scale (bob@boromir.defend.dom) col-1 show gr /Times-Roman findfont 12.00 scalefont setfont 284 54 m gs 1 -1 scale (user:) col-1 show gr /Times-Roman findfont 12.00 scalefont setfont 284 74 m gs 1 -1 scale (host:) col-1 show gr /Times-Roman findfont 12.00 scalefont setfont 44 74 m gs 1 -1 scale (ns:) col-1 show gr /Times-Roman findfont 12.00 scalefont setfont 84 214 m gs 1 -1 scale (exchange of DNS packets) col-1 show gr /Courier-Bold findfont 12.00 scalefont setfont 149 99 m gs 1 -1 scale (alice@aragorn) col-1 show gr /Times-Roman findfont 12.00 scalefont setfont 244 99 m gs 1 -1 scale (trusts) col-1 show gr /Courier-Bold findfont 12.00 scalefont setfont 279 99 m gs 1 -1 scale (bob@boromir) col-1 show gr /Courier-Bold findfont 12.00 scalefont setfont 69 264 m gs 1 -1 scale (caradhras) col-1 show gr /Courier-Bold findfont 12.00 scalefont setfont 314 264 m gs 1 -1 scale (dwimmerlaik) col-1 show gr /Times-Roman findfont 12.00 scalefont setfont 284 264 m gs 1 -1 scale (host:) col-1 show gr /Times-Roman findfont 12.00 scalefont setfont 44 264 m gs 1 -1 scale (ns:) col-1 show gr $F2psEnd %%EndDocument @endspecial 556 1300 a Ft(Figure)16 b(1:)21 b(Example)15 b(top)q(ology)i(of) g(mac)o(hines)89 1435 y(hosts)j(trust)f(eac)o(h)g(other,)g(usually)f(on)i (the)f(basis)g(of)g(hostnames,)g(an)h(attac)o(k)o(er)e(can)h(tak)o(e)f(the)89 1495 y(easier)i(approac)o(h)h(and)g(sp)q(o)q(of)h(a)f(host's)g(name)e (instead)h(of)h(its)f(IP)g(address.)35 b(The)20 b(pro)q(cess)h(is)89 1555 y(depicted)15 b(in)h(\014gure)g(1.)162 1615 y(Assume)11 b(that)i(user)f Ff(alice@arag)o(orn)o(.de)o(fen)o(d.)o(dom)d Ft(trusts)k(user)f Ff(bob@boromi)o(r.d)o(ef)o(end)o(.)89 1675 y(dom)18 b Ft(via)g(the)h Fh(.rhosts)g Ft(mec)o(hanism)o(.)26 b(If)18 b(a)h(host)h(named)e Ff(boromir.d)o(ef)o(end)o(.do)o(m)e Ft(accesses)i(an-)89 1735 y(other)j(host)g(named)e Ff(aragorn.de)o(fen)o(d.d) o(om)p Ft(,)f(host)j Ff(aragorn)d Ft(accepts)i(the)g(connection)g(and)89 1796 y(retriev)o(es)i(address)j(information)d(ab)q(out)j(the)f(connecting)g (host)g Ff(boromir)p Ft(.)42 b(Host)24 b Ff(aragorn)89 1856 y Ft(reads)c(host)g Ff(boromir)p Ft('s)d(IP)j(address)g(and)h(con)o(v)o(erts) d(it)i(in)o(to)f(a)h(regular)g(hostname.)31 b(T)l(o)20 b(bind)89 1916 y(the)f(righ)o(t)h(name)e(to)i(the)f(IP)h(address,)h(host)f Ff(aragorn)d Ft(starts)j(a)g(DNS)g(query)f(in)g(the)g(rev)o(erse)89 1976 y(lo)q(okup)c(tree,)f(the)h(database)h(p)q(ortion)g(that)f(con)o(tains)g (the)g(IP)f(address)i(to)f(hostname)g(mapping)89 2036 y(information.)162 2097 y(F)l(or)23 b(a)g(pair)g(of)g(mac)o(hines)d Ff(caradhras.a)o(tta)o(ck.)o (do)o(m)g Ft(and)j Ff(dwimmerlai)o(k.a)o(tta)o(ck)o(.do)o(m)89 2157 y Ft(under)17 b(the)g(p)q(o)o(w)o(er)h(of)g(an)f(attac)o(k)o(er,)g(with) g Ff(caradhras)d Ft(running)k(a)f(primary)f(name)g(serv)o(er)h(for)89 2217 y(a)e(certain)f(zone,)g(and)i Ff(dwimmerla)o(ik)11 b Ft(trying)k(to)g (fak)o(e)f Ff(boromir)p Ft('s)e(iden)o(tit)o(y)l(,)g(it)j(is)f(easy)h(to)g (mak)o(e)89 2277 y Ff(aragorn)f Ft(b)q(eliev)o(e)h Ff(dwimmerlai)o(k)f Ft(w)o(as)j Ff(boromir)p Ft(.)k Ff(dwimmerla)o(ik)13 b Ft(connects)k(to)g Ff(aragorn)d Ft(and)89 2337 y(claims)e(to)i(b)q(e)g Ff(boromir)p Ft(,)d Ff(aragorn)g Ft(retriev)o(es)h Ff(dwimmerlai)o(k)p Ft('s)f(IP)i (address)i Ff(111.22.33)o(.4)10 b Ft(and)89 2398 y(queries)i(the)i(name)e Ff(4.33.22.11)o(1.i)o(n-)o(add)o(r.a)o(rpa)e Ft(from)i(the)h(DNS.)g(One)g (single)g(en)o(try)g(in)g(the)89 2458 y(authoritativ)o(e)18 b(data)h(for)g(the)g(rev)o(erse)e(lo)q(okup)i(tree)f(for)h Ff(caradhras)p Ft(')o(s)d(zone)j(sp)q(eci\014es)f(the)g(IP)89 2518 y(address{to{name)h(mapping)e(b)q(et)o(w)o(een)g Ff(4.33.22.111)o(.in)o (-ad)o(dr)o(.ar)o(pa)e Ft(and)j Ff(dwimmerlaik)o Ft(.)89 2578 y(If)d(the)h(attac)o(k)o(er)e(replaces)h(this)h(line)f(b)o(y)g(a)h(mapping)f (b)q(et)o(w)o(een)g Ff(4.33.22.1)o(11.)o(in-)o(add)o(r.)o(arp)o(a)977 2715 y Ft(5)p eop %%Page: 6 6 5 bop 89 82 a Ft(and)17 b Ff(boromir)p Ft(,)c Ff(aragorn)p Ft('s)h(resolution)i(attempt)f(will)g(\014nally)h(gran)o(t)h Ff(dwimmerlai)o(k)c Ft(access)k(to)89 142 y Ff(aragorn)p Ft(.)162 203 y(This)e(sho)o(ws)g(the)g(simplicit)n(y)d(of)j(an)g(attac)o(k)f(that)h (is)g(based)g(up)q(on)g(trust)g(placed)f(in)h(the)f(data)89 263 y(pro)o(vided)h(b)o(y)h(DNS.)f(It)g(is)h(based)g(on)h(a)f(w)o(eakness)g (in)g(the)f(DNS,)h(not)g(an)g(easily)f(\014xable)h(bug)g(in)89 323 y(the)g(implem)o(en)o(tati)o(on)e(of)j(a)f(particular)g(net)o(w)o(ork)g (service.)162 383 y(One)c(widely)f(accepted)g(w)o(a)o(y)g(of)i(dealing)e (with)h(this)g(problem)e(is)i(adding)h(an)f(additional)g(DNS)89 443 y(query)i(of)i(the)f(determined)e(hostname)i(to)g(the)g(serv)o(er)f(co)q (de)i(and)g(comparing)e(the)h(returned)g(IP)89 504 y(addresses)22 b(against)h(the)e(original)h(IP)f(address)h(for)g(a)g(matc)o(h.)36 b(This)22 b(only)f(adds)i(marginally)89 564 y(to)f(the)f(qualit)o(y)f(of)h (securit)o(y;)h(it)f(do)q(es)h(not)g(pro)o(vide)e(complete)g(securit)o(y)l(.) 34 b(An)21 b(attac)o(k)o(er)g(can)89 624 y(piggybac)o(k)16 b(additional)h(resource)f(records)g(to)h(the)f(answ)o(er)h(pac)o(k)o(et)e(to) i(the)g(\014rst)f(query)l(.)21 b(Doing)89 684 y(so,)26 b(the)f(attac)o(k)o (er)e(p)q(oisons)j(the)e(victim')o(s)e(cac)o(he)h(with)i(false)f (information,)g(suc)o(h)g(that)h(the)89 744 y(forw)o(ard)17 b(lo)q(okup)g(w)o(ould)f(not)h(disclose)e(the)h(attac)o(k.)89 889 y Fg(2.3)70 b(W)-6 b(eaknesses)89 981 y Ft(In)21 b(this)f(paragraph)j(w)o (e)e(describ)q(e)f(the)h(conditions)g(that)g(facilitate)f(a)h(break{in.)35 b(The)21 b(DNS)89 1041 y(is)e(w)o(eak)h(in)f(sev)o(eral)g(places.)31 b(W)l(e)19 b(examine)e(the)j(problems)e(of)i(name{based)f(authen)o(tication) 89 1101 y(pro)q(cesses,)26 b(trusting)e(information)f(that)i(comes)d(from)h (an)i(un)o(trust)o(w)o(orth)o(y)e(authorit)o(y)l(,)i(and)89 1162 y(accepting)14 b(additional,)h(p)q(ossibly)g(incorrect)f(information)g (that)i(w)o(as)f(not)h(requested,)d(but)j(that)89 1222 y(seems)f(to)h(pro)o (vide)g(adv)m(an)o(tages)h(for)g(run)o(time)d(p)q(erformance.)89 1352 y Fe(2.3.1)55 b(Assumptions)18 b(to)g(F)-5 b(acilitate)18 b(Break{ins)89 1444 y Ft(In)g(our)g(setup)g(w)o(e)g(assume)f(that)i(the)f (attac)o(k)o(er)f(has)h(complete)e(con)o(trol)i(o)o(v)o(er)f(mac)o(hine)f Ff(cara-)89 1504 y(dhras.atta)o(ck.)o(do)o(m)e Ft(running)j(a)h(legitimate)c (primary)h(name)h(serv)o(er)g(for)h(a)h(DNS)f(zone.)23 b(This)89 1564 y(strong)18 b(assumption)f(do)q(es)h(not)f(alw)o(a)o(ys)g(need)g(to)h(b) q(e)f(satis\014ed.)24 b(It)17 b(is)g(simply)e(the)h(easiest)h(w)o(a)o(y)89 1625 y(for)h(an)h(attac)o(k)o(er)e(if)h(he)g(con)o(trols)g(a)h(primary)d (name)h(serv)o(er,)h(b)q(ecause)g(of)g(its)g(capabilities)f(and)89 1685 y(the)f(fact)g(that)h(other)f(mac)o(hines)e(b)q(eliev)o(e)h(name)g(serv) o(ers.)162 1745 y(Dep)q(ending)g(on)h(the)f(top)q(ology)h(of)f(a)h(real)e (net)o(w)o(ork)h(it)f(is)h(su\016cien)o(t)f(if)g(an)i(attac)o(k)o(er)e(con)o (trols)89 1805 y(one)i(of)g(the)f(authoritativ)o(e)g(name)f(serv)o(ers)h(for) h(the)f(particular)g(zone:)21 b(the)15 b(one)h(that)g(is)f(queried)89 1865 y(\014rst)k(b)o(y)f(the)h(remote)e(resolv)o(er.)27 b(It)18 b(is)h(not)g(m)o(uc)o(h)d(more)i(di\016cult)f(for)i(an)g(attac)o(k)o(er)f(to) h(satisfy)89 1926 y(this)d(second)h(assumption)e(than)i(the)f(\014rst)h(one.) 162 1986 y(The)k(con)o(trol)g(m)o(ust)f(include)f(the)i(abilit)o(y)f(to)h(up) q(date)h(the)e(asso)q(ciated)i(in)o(v)o(erse)e(mapping)89 2046 y(tree.)g(The)13 b(attac)o(k)o(er)g(migh)o(t)f(ha)o(v)o(e)h(successfully)g (sub)o(v)o(erted)f(suc)o(h)i(a)g(mac)o(hine)e(or)i(simply)d(b)q(e)j(the)89 2106 y(legitimate)i(o)o(wner)i(of)h(it.)27 b(In)19 b(the)f(follo)o(wing)g (discussion)h(w)o(e)f(will)f(assume)h(that)h(the)f(attac)o(k)o(er)89 2166 y(has)f(suc)o(h)f(access)g(to)h(a)f(primary)f(name)g(serv)o(er.)89 2296 y Fe(2.3.2)55 b(Authen)n(tication)18 b(via)g(Hostnames)89 2389 y Ft(W)l(e)c(explained)f(in)h(the)g(in)o(tro)q(duction)g(that)g(users)h (need)e(to)i(b)q(e)f(authorized)g(b)o(y)g(net)o(w)o(ork)f(service)89 2449 y(pro)o(viders)20 b(b)q(efore)g(they)g(can)h(use)f(the)g(service.)33 b(This)20 b(authen)o(tication)g(is)g(usually)h(based)f(on)89 2509 y(the)d(v)o(eri\014cation)e(of)j(the)e(user's)h(login)g(name)e(along)j (with)f(the)g(asso)q(ciated)h(passw)o(ord)g(and)f(the)89 2569 y(hostname)j(of)g(the)g(mac)o(hine)e(on)j(whic)o(h)e(the)h(user)g(starts)h (his)g(requests.)32 b(Net)o(w)o(orks)20 b(\(as)g(w)o(ell)977 2715 y(6)p eop %%Page: 7 7 6 bop 89 82 a Ft(as)20 b(systems)e(in)h(general\))g(ma)o(y)f(b)q(e)i (classi\014ed)f(in)o(to)g(di\013eren)o(t)f(partitions:)28 b(Closed)19 b(Net)o(w)o(orks,)89 142 y(Op)q(en)d(Net)o(w)o(orks,)f(and)i(T)l(rusted)g (Net)o(w)o(orks)e([PL91)q(].)162 203 y(Closed)22 b(Net)o(w)o(orks)f(can)h(b)q (e)f(accessed)h(only)f(within)g(certain)g(b)q(oundaries.)39 b(Sessions)22 b(are)89 263 y(con)o(trolled)h(and)h(secured)f(in)h(accordance) f(with)h(the)g(rules)f(implied)e(b)o(y)i(an)h(organization's)89 323 y(p)q(olicy)l(.)19 b(In)10 b(a)h(Closed)g(Net)o(w)o(ork,)g(the)f(lo)q (cations)i(of)f(all)f(resources)h(are)g(w)o(ell)e(kno)o(wn)j(and)f(sp)q (eci\014ed.)162 383 y(Op)q(en)k(Net)o(w)o(orks)g(are)g(regions)h(separated)f (b)o(y)g(b)q(oundaries)h(from)e(their)h(surroundings,)h(but)89 443 y(the)h(transfer)h(of)g(information)f(across)h(these)g(b)q(oundaries)g (is)g(allo)o(w)o(ed.)24 b(They)18 b(are)f(augmen)o(ted)89 504 y(b)o(y)e(publicly)f(accessible)g(parts)i(or)g(connections)f(to)h(net)o(w)o (orks)f(o)o(wned)g(b)o(y)g(other)g(companies)g(or)89 564 y(organizations.)21 b(These)14 b(t)o(w)o(o)f(extensions)h(mak)o(e)d(this)j(t)o(yp)q(e)f(of)h(net) o(w)o(ork)f(vulnerable)f(to)i(external)89 624 y(threats.)162 684 y(T)l(rusted)k(Net)o(w)o(orks)f(in)o(tro)q(duce)g(the)g(concept)g(that)h (net)o(w)o(ork)f(access)g(is)h(con)o(trolled)e(at)i(the)89 744 y(en)o(try)j(no)q(de.)41 b(In)22 b(the)g(case)g(of)h(large)g(in)o (ternational)e(net)o(w)o(orks,)i(main)o(tainabilit)o(y)d(and)j(con-)89 804 y(trollabilit)o(y)16 b(are)j(imp)q(ortan)o(t)e(issues.)28 b(Adopting)18 b(the)g(T)l(rusted)h(Net)o(w)o(ork)e(concept)h(allo)o(ws)g(the) 89 865 y(decomp)q(osition)12 b(of)i(a)g(large)f(net)o(w)o(ork,)g(gro)o(wing)h (to)o(w)o(ards)g(an)f(unmanageable)g(complexit)o(y)l(,)d(in)o(to)89 925 y(relativ)o(ely)i(small)g(national)j(or)g(regional)f(net)o(w)o(orks,)g (eac)o(h)f(supp)q(orted)j(b)o(y)d(lo)q(cal)h(sta\013,)i(and)e(eac)o(h)89 985 y(pro)o(vided)h(with)h(its)g(o)o(wn)h(net)o(w)o(ork)f(access)g(con)o (trol.)21 b(The)16 b(adv)m(an)o(tages)h(are)f(increased)g(con)o(trol-)89 1045 y(labilit)o(y)l(,)d(main)o(tainabilit)o(y)l(,)g(manageabilit)o(y)l(,)g (and)k(simpli\014cation)d(of)i(c)o(hange)g(managemen)o(t.)i(A)89 1105 y(T)l(rusted)12 b(Net)o(w)o(ork)f(can)h(b)q(e)g(regarded)g(globally)f (as)i(a)f(single)f(Closed)h(Net)o(w)o(ork,)f(but)h(from)f(a)h(lo)q(cal)89 1166 y(p)q(oin)o(t)k(of)g(view,)f(the)g(in)o(terconnected)f(net)o(w)o(orks)i (stand)g(widely)f(op)q(en)h(with)g(all)f(the)h(applicable)89 1226 y(securit)o(y)f(threats.)162 1286 y(The)g(In)o(ternet)e(is)h(a)h(system) e(of)i(T)l(rusted)g(Net)o(w)o(orks)f(within)g(Op)q(en)h(Net)o(w)o(orks.)k (This)c(allo)o(ws)89 1346 y(the)d(danger)g(that)h(once)f(someone)f(has)i (falsely)e(gained)h(access)g(to)h(one)f(mac)o(hine,)e(it)i(is)f(m)o(uc)o(h)f (sim-)89 1406 y(pler)k(to)h(sub)o(v)o(ert)f(others.)21 b(The)14 b(term)f Fh(net{sur\014ng)j Ft(describ)q(es)e(the)h(journey)f(through)i(a)f (n)o(um)o(b)q(er)89 1467 y(of)20 b(sub)o(v)o(erted)e(systems)g(with)h(the)g (goal)h(of)g(sub)o(v)o(erting)f(others.)31 b(Within)18 b(T)l(rusted)i(Net)o (w)o(orks)89 1527 y(users)h(are)g(authen)o(ticated)f(solely)g(b)o(y)g(their)g (login)h(name)f(and)h(connecting)g(hostname.)34 b(The)89 1587 y(login)21 b(name)f(is)h(sp)q(eci\014ed)g(b)o(y)f(the)h(connecting)g(site,)g (and)h(therefore)e(can)i(b)q(e)f(falsi\014ed,)g(suc)o(h)89 1647 y(that)g(the)f(only)g(reliable)f(information)g(left)h(for)h(the)f (addressed)h(mac)o(hine)d(is)i(the)g(connecting)89 1707 y(mac)o(hine's)13 b(IP)j(address.)21 b(The)16 b(addressed)g(mac)o(hine)e(then)h(maps)g(the)h (IP)f(address)i(in)o(to)e(a)h(host-)89 1768 y(name)i(using)h(the)g(DNS.)g(If) f(an)i(attac)o(k)o(er)e(manages)h(to)g(sub)o(v)o(ert)f(this)h(name)f(binding) h(call,)f(he)89 1828 y(can)e(falsify)f(the)h(name)f(of)h(a)g(mac)o(hine)e (within)h(the)h(T)l(rusted)g(Net)o(w)o(ork)f(and)i(therefore)e(succeed)89 1888 y(in)h(his)g(attac)o(k.)89 2018 y Fe(2.3.3)55 b(T)-5 b(rusting)19 b(a)g(Not)f(T)-5 b(rust)n(w)n(orth)n(y)20 b(Source)89 2110 y Ft(Using)f(the)h(DNS)f(to)h(map)f(the)g(IP)g(address)i(pro)o(vided)e(b)o(y) g(lo)o(w)o(er{lev)o(el)e(proto)q(col)j(la)o(y)o(ers)e(in)o(to)89 2170 y(the)i(applicable)g(hostname,)h(the)g(addressed)g(host)g(blindly)f (trusts)h(the)f(information)g(that)h(is)89 2231 y(pro)o(vided)f(b)o(y)h(the)f (DNS.)h(Information)e(that)j(comes)d(from)h(sources)h(outside)g(of)g(the)g (trusted)89 2291 y(area)g(is)f(trusted.)34 b(That)21 b(is)f(a)h(sev)o(ere)e (violation)h(of)g(the)g(partitioning)h(concept.)33 b(Only)20 b(truly)89 2351 y(authoritativ)o(e)c(information)f(should)i(b)q(e)f(trusted.) 977 2715 y(7)p eop %%Page: 8 8 7 bop 89 82 a Fe(2.3.4)55 b(Believing)16 b(Additional,)i(Not)g(Authoritativ)n (e)g(Information)89 175 y Ft(E\016ciency)e(is)i(one)g(of)h(the)e(stated)i (goals)g(of)f(the)g(DNS.)f(The)h(DNS)g(proto)q(col)h(pac)o(k)o(ets)e(con)o (tain)89 235 y(an)h(additional)g(answ)o(er)g(section.)24 b(Using)18 b(this,)f(name)f(serv)o(ers)h(can)h(pro)o(vide)f(resource)g(records)89 295 y(con)o(taining)22 b(information)f(that)i(could)f(b)q(e)h(useful)f(in)g (future)g(requests,)h(but)f(that)h(w)o(ere)f(not)89 355 y(explicitly)15 b(requested.)24 b(There)17 b(are)g(situations)h(where)g(these)f(additional)g (records)h(aid)f(system)89 415 y(e\016ciency)l(.)40 b(If)22 b(the)h(answ)o(er)h(to)f(a)h(query)e(is)h(a)h(referral)e(to)h(another)h(name) e(serv)o(er,)h(then)g(it)89 475 y(is)g(b)q(ene\014cial)f(to)h(add)h(that)f (name)f(serv)o(er's)f(IP)i(addresses)h(to)f(the)g(resp)q(onse.)42 b(That)23 b(sa)o(v)o(es)89 536 y(the)g(lo)q(okup)h(of)f(the)g(name)f(serv)o (er's)g(asso)q(ciated)j(IP)e(addresses,)i(once)e(its)g(name)f(is)h(found.)89 596 y(Additional)15 b(resource)h(records)h(are)f(cac)o(hed)g(for)g(future)g (use.)162 656 y(As)j(w)o(e)g(rely)g(on)h(the)f(correctness)g(of)h(these)f (additional)g(records)h(once)f(w)o(e)g(use)g(them,)f(w)o(e)89 716 y(trust)k(information)f(that)i(comes)d(from)h(a)i(source)f(p)q(ossibly)g (outside)g(of)g(the)g(trusted)g(scop)q(e.)89 776 y(That)17 b(is)f(another)h(violation)f(of)g(the)g(partitioning)g(concept.)89 943 y Fu(3)83 b(P)n(olicies)26 b(and)i(Mec)n(hanisms)d(as)i(Solutions)89 1052 y Ft(W)l(e)16 b(iden)o(tify)f(p)q(olicies)h(and)h(mec)o(hanisms)d(that)j (serv)o(e)f(as)h(solutions)g(or)g(that)h(simply)c(augmen)o(t)89 1113 y(the)j(lev)o(el)f(of)i(securit)o(y)e(of)i(the)g(authen)o(tication)f (pro)q(cess.)26 b(Because)17 b(man)o(y)g(factors)h(con)o(tribute)89 1173 y(to)j(the)f(securit)o(y)f(breac)o(h)h(encoun)o(tered)g(in)g(this)g(pap) q(er)h(and)g(all)f(of)h(them)e(are)i(necessary)f(for)89 1233 y(the)d(w)o(eakness)g(to)h(exist,)e(it)g(is)h(su\016cien)o(t)f(to)i (eliminate)c(at)k(least)f(one)g(of)h(them.)k(That)c(sounds)89 1293 y(easy)e(to)g(accomplish,)e(but)i(is)g(a)h(di\016cult)d(task)j(in)e (practice,)g(b)q(ecause)h(eliminating)e(an)o(y)i(one)g(of)89 1353 y(the)j(factors)i(brings)f(with)f(it)g(a)h(disadv)m(an)o(tageous)i (trade{o\013)f(with)e(functionalit)o(y)l(,)g(e\016ciency)l(,)89 1414 y(or)e(con)o(v)o(enience.)162 1474 y(W)l(e)k(describ)q(e)g(ev)m (aluation)h(criteria)e(and)i(presen)o(t)f(for)h(eac)o(h)f(of)g(our)h (solutions)g(necessary)89 1534 y(additional)h(bac)o(kground,)h(follo)o(w)o (ed)e(b)o(y)h(a)g(description)f(of)h(the)g(idea)f(of)h(the)g(solution.)41 b(W)l(e)89 1594 y(mak)o(e)13 b(the)i(distinction)f(b)q(et)o(w)o(een)g(mec)o (hanisms)e(that)j(enable)g(the)g(implem)o(e)o(n)o(tation)e(of)i(p)q(olicies) 89 1654 y(and)23 b(solutions)h(that)f(consist)g(solely)f(of)h(the)f(implem)o (en)o(tation)e(of)j(a)g(certain)f(p)q(olicy)l(.)40 b(Eac)o(h)89 1714 y(solution)17 b(is)f(examined)e(and)j(discussed)f(using)g(applicable)g (ev)m(aluation)g(criteria.)162 1775 y(It)21 b(is)f(imp)q(ortan)o(t)g(not)h (to)h(view)e(these)g(solutions)h(as)h(stand{alone.)36 b(In)21 b(di\013eren)o(t)f(com)o(bi-)89 1835 y(nations)i(they)e(ac)o(hiev)o(e)g(sev)o (eral)g(degrees)h(of)g(securit)o(y)l(.)34 b(It)21 b(is)g(a)g(go)q(o)q(d)j (idea)c(to)i(implem)o(en)n(t)d(a)89 1895 y(com)o(bination)c(of)i(the)f (presen)o(ted)f(solutions,)i(to)g(obtain)g(a)g(greater)f(lev)o(el)e(of)j (con\014dence)f(in)g(the)89 1955 y(securit)o(y)f(of)h(the)g(DNS.)89 2100 y Fg(3.1)70 b(Ev)l(aluation)23 b(Criteria)89 2192 y Ft(In)13 b(solving)g(the)f(problem)g(w)o(e)g(are)h(striving)g(for)g Fh(compatibilit)o(y)d(with)j(the)g(original)f(design)h(goals)p Ft(.)89 2252 y(In)i(the)g(case)g(of)g(the)g(DNS)g(these)g(goals)h(are)f Fh(data)h(consistency)f Ft(\(to)g(pro)o(vide)g(a)g(consisten)o(t)g(view)89 2312 y(of)g(the)f(name)g(space)g(to)h(b)q(e)g(used)f(to)h(refer)f(to)h (resources\),)f Fh(e\016ciency)f Ft(\(to)i(handle)f(the)g(immense)89 2373 y(v)o(olume)9 b(of)j(data)h(and)f(resolution)f(requests\),)h(a)g Fh(distributed)f(c)o(haracter)g Ft(of)h(the)f(implem)o(en)o(tati)o(on)89 2433 y(\(to)i(pro)o(vide)f(fault)h(tolerance)g(and)g(distributed)g(authorit)o (y)f(and)i(main)o(tenance\),)d Fh(generalit)o(y)h Ft(\(to)89 2493 y(pro)o(vide)g(a)h(general)f(usefulness)g(that)h(satis\014es)g (pragmatic)f(reasons)h(lik)o(e)e(implem)o(en)o(tati)o(on)f(costs)89 2553 y(and)15 b(administrativ)o(e)c(e\013ort\),)k(and)f Fh(indep)q(endence)f Ft(\(to)i(pro)o(vide)e(a)i(p)q(ortable)f(system)f(that)h(do)q(es)977 2715 y(8)p eop %%Page: 9 9 8 bop 89 82 a Ft(not)22 b(dep)q(end)f(on)g(underlying)g(hardw)o(are)g(or)h (comm)o(uni)o(cation)d(tec)o(hnology)l(.\))35 b(Eac)o(h)21 b(of)g(these)89 142 y(goals)f(represen)o(ts)e(a)h(criterion)e(in)i(itself.)27 b(Indeed,)18 b(the)h(ultimate)d(goal)k(is)e(to)h(guaran)o(tee)g(data)89 203 y(consistency)l(,)13 b(but)h(not)h(only)e(in)h(the)g(data)g(base)h(but)f (also)g(during)g(the)g(mapping)f(pro)q(cess.)21 b(That)89 263 y(means)11 b(that)i(w)o(e)f(w)o(an)o(t)g(to)h(prev)o(en)o(t)d(the)i(p)q (ossibilit)o(y)g(of)g(malicious)e(soft)o(w)o(are)j(in)o(tro)q(ducing)f(wrong) 89 323 y(asso)q(ciations)20 b(without)e(the)g(data)h(base)g(ev)o(er)d(seeing) i(c)o(hanges.)27 b(The)19 b(correctness)e(of)i(this)f(run)89 383 y(time)c(b)q(eha)o(vior)i(is)g(m)o(uc)o(h)e(harder)j(to)f(ensure)g(than)h (the)f(in)o(tegrit)o(y)f(of)h(the)g(data)h(base.)162 443 y(W)l(e)j(consider)f (the)g Fh(qualit)o(y)g(of)h(a)g(solution)g Ft(to)g(b)q(e)f(a)h(measuremen)o (t)d(of)j(the)f(radius)h(of)g(ap-)89 504 y(plicabilit)o(y)g(of)j(the)g (solution.)41 b(The)22 b Fh(feasibilit)o(y)f(of)i(an)g(implem)o(en)o(tation)d Ft(of)j(a)g(solution)g(de-)89 564 y(termines)17 b(ho)o(w)i(m)o(uc)o(h)e (e\013ort)j(is)f(needed)f(to)i(apply)f(the)g(solution)g(to)h(an)f(unmo)q (di\014ed)g(v)o(ersion)89 624 y(of)g(a)f(state{of{the{art)i(name)d(serv)o (er.)27 b(The)18 b Fh(complexit)o(y)d(of)k(its)f(implem)o(en)n(tation)e Ft(denotes)j(if)89 684 y(mo)q(di\014cations)h(in)g(di\013eren)o(t)f(areas)i (are)g(in)o(v)o(olv)o(ed)d(and)j(ho)o(w)f(complicated)e(their)i(in)o (teraction)89 744 y(is.)h(Solutions)16 b(migh)o(t)d(not)j(b)q(e)g(suitable)f (in)g(ev)o(ery)f(organizational)i(en)o(vironmen)o(t.)i(W)l(e)d(call)g(this)89 804 y(criterion)i Fh(applicabilit)o(y)f(in)h(an)i(organization)p Ft(.)27 b(The)18 b Fh(transparency)g(of)g(the)g(solution)g Ft(in)o(v)o(olv)o(es)89 865 y(the)e(soft)o(w)o(are)g(in)o(terface)f(and)i (the)f(user)g(in)o(terface)f(to)h(the)g(system.)k(A)15 b(solution)i(that)g (do)q(es)g(not)89 925 y(require)e(c)o(hanges)i(to)g(the)g(DNS)f(proto)q(col)i (is)e(preferable)g(o)o(v)o(er)f(one)i(that)g(do)q(es.)23 b(User)16 b(appro)o(v)m(al)89 985 y(of)h(an)o(y)h(mo)q(di\014cation)e(that)i(is)f(not)g (transparen)o(t)h(is)f(a)h(crucial)e(p)q(oin)o(t.)24 b(W)l(e)17 b(com)o(bine)e(these)i(as-)89 1045 y(p)q(ects)g(in)g(the)g(term)e Fh(acceptabilit)o(y)g(b)o(y)i(the)g(user)p Ft(.)24 b(An)17 b(imp)q(ortan)o(t)f(p)q(oin)o(t)h(in)g(the)g(in)o(tro)q(duction)89 1105 y(of)22 b(c)o(hanges)g(to)g(systems)e(is)i(the)f Fh(transition)h(pro)q (cess)g Ft(from)f(the)g(original)h(state)g(\(b)q(efore)f(the)89 1166 y(solution)c(is)f(applied\))f(to)i(the)f(new)g(state.)89 1310 y Fg(3.2)70 b(The)22 b(Berk)n(eley)f(P)n(atc)n(h)89 1402 y Ft(W)l(e)d(brie\015y)f(explained)h(the)g(Berk)o(eley)d(soft)o(w)o(are)k (patc)o(h)f(in)g(section)g(1)g(without)h(calling)e(it)h(the)89 1462 y(Berk)o(eley)10 b(patc)o(h.)20 b(This)13 b(\014rst)g(attempted)f (defense,)g(dev)o(elop)q(ed)g(at)h(the)g(Univ)o(ersit)o(y)d(of)j(Berk)o(eley) l(,)89 1523 y(CA)h(,)f(consists)h(of)g(mo)q(di\014cations)g(of)g(the)f (r-command)f(daemons.)20 b(The)14 b(idea)g(is)g(to)g(v)m(alidate)f(the)89 1583 y(in)o(v)o(erse)j(mapping)g(tree)h(b)o(y)f(lo)q(oking)i(at)g(the)f (corresp)q(onding)h(no)q(de)g(on)g(the)f(forw)o(ard)h(mapping)89 1643 y(tree.)i(S.)c(Bello)o(vin)e(describ)q(es)i(the)g(metho)q(d)g(used)g(b)o (y)g(the)g(patc)o(h)g(in)g([Bel92)o(])g(as)h(follo)o(ws:)284 1756 y(T)l(o)e(detect)e(this,)h(w)o(e)g(p)q(erform)f(a)h(cross{c)o(hec)o(k;)g (using)g(the)g(returned)g(name,)e(w)o(e)211 1816 y(do)17 b(a)h(forw)o(ard)f (c)o(hec)o(k)e(to)j(learn)e(the)h(legal)f(address)i(for)f(that)g(host.)24 b(If)17 b(that)g(name)211 1876 y(is)f(not)g(listed,)f(or)h(if)g(the)f (addresses)i(do)g(not)f(matc)o(h,)e(alarms,)h(gongs,)i(and)g(to)q(csins)211 1936 y(are)f(sounded.)162 2049 y(The)c(\014x)g(is)h(easily)e(installed)g(and) i(not)g(v)o(ery)e(complex.)18 b(Its)12 b(compatibilit)o(y)d(with)j(the)g (existing)89 2109 y(DNS)17 b(proto)q(col)h(is)e(another)i(adv)m(an)o(tage.)24 b(The)17 b(transition)g(pro)q(cess)h(to)f(mo)o(v)o(e)e(to)i(services)f(that) 89 2169 y(con)o(tain)i(the)g(patc)o(h)g(is)g(not)h(di\016cult,)e(but)h (requires)g(some)f(w)o(ork.)27 b(Although)19 b(w)o(e)e(regard)i(this)89 2230 y(patc)o(h)h(as)h(an)g(obligatory)f(mo)q(di\014cation)g(to)h(daemons)e (lik)o(e)g Fi(rlo)n(gind)h Ft(and)h Fi(rshd)p Ft(,)f(it)g(is)g(limited)89 2290 y(in)d(its)g(scop)q(e.)25 b(The)17 b(cac)o(he)g(of)g(a)h(running)g(name) e(serv)o(er)g(can)h(still)g(b)q(e)g(p)q(oisoned)h(b)o(y)f(supplying)89 2350 y(additional)j(unrequested)f(records)g(as)h(the)g(exp)q(erimen)o(ts)d (describ)q(ed)i(in)g([Sc)o(h93,)h(section)f(3.5])89 2410 y(pro)o(v)o(e.)162 2470 y(The)f(Berk)o(eley)d(patc)o(h)j(utilizes)e(a)i(principle)e(that)i(can)g (b)q(e)g(applied)f(outside)h(of)g(the)g(UNIX)89 2530 y(domain.)h(The)13 b(idea)g(is)f(to)h(p)q(erform)f(a)h(cross-c)o(hec)o(k)f(of)h(the)g(\014rst)g (mapping)f(in)g(the)h(rev)o(erse)e(order.)89 2591 y(In)k(a)h(consisten)o(t)f (state,)h(forw)o(ard)g(and)g(bac)o(kw)o(ard)f(mapping)g(data)h(are)g(managed) f(b)o(y)g(the)g(same)977 2715 y(9)p eop %%Page: 10 10 9 bop 89 82 a Ft(authorit)o(y)l(.)32 b(Th)o(us)20 b(tamp)q(ering)f(with)h (only)g(one)g(of)g(the)g(t)o(w)o(o)g(directions)f(of)h(mapping)g(can)g(b)q(e) 89 142 y(detected.)162 203 y(The)d(patc)o(h)f(is)g(a)h(solution)g(if)f(trust) h(can)f(b)q(e)h(extended)f(only)g(within)g(the)g(scop)q(e)h(of)g(author-)89 263 y(itativ)o(e)e(data,)j(and)f(if)f(the)h(attac)o(k)o(er)f(do)q(es)i(not)f (use)g(the)f(more)g(sophisticated)h(attac)o(k)f(metho)q(d.)89 323 y(If)g(the)h(attac)o(k)o(er)f(supplies)h(the)g(additional)g(address)h (record)e(with)h(the)g(answ)o(er)g(to)h(the)e(rev)o(erse)89 383 y(lo)q(okup,)h(it)f(means)f(that)i(he)g(con)o(trols)f(b)q(oth)h(lo)q (okup)h(directions,)d(and)i(that)g(trust)g(is)f(extended)89 443 y(to)h(p)q(ossibly)f(un)o(trust)o(w)o(orth)o(y)g(sources.)89 588 y Fg(3.3)70 b(Examining)22 b(Berk)n(eley)f Fs(r{Commands)89 680 y Ft(In)16 b(this)f(paragraph)j(w)o(e)e(discuss)g(the)g(UNIX{sp)q (eci\014c)e(w)o(a)o(y)h(of)h(impleme)o(n)o(ting)d(a)j(T)l(rusted)h(Net-)89 740 y(w)o(ork.)j(The)14 b(Berk)o(eley)c(r{commands)i(extensiv)o(ely)f(use)i (the)g Fi(.rhosts)g Ft(and)h Fi(/etc/hosts.e)n(quiv)g Ft(\014les)89 800 y(to)j(increase)g(con)o(v)o(enien)o(t)d(net)o(w)o(ork)j(access.)23 b(In)17 b(paragraph)i(2.3.2,)e(w)o(e)f(discussed)h(the)g(T)l(rusted)89 861 y(Net)o(w)o(ork)e(concept.)22 b(R{commands)15 b(suc)o(h)h(as)h(remote)e (login)h(and)h(remote)e(shell)g(o\013er)i(the)g(p)q(os-)89 921 y(sibilit)o(y)12 b(to)i(extend)f(trust)i(to)f(other)g(mac)o(hines.)k (Users)c(and)h(system)d(administrators)h(can)i(build)89 981 y(individual)j(net)o(w)o(orks)g(of)i(trust.)30 b(This)19 b(pro)o(v)o(es)f (dangerous)j(in)e(some)f(cases.)29 b([GS91)q(,)19 b(c)o(hapter)89 1041 y(11])e(discusses)f(securit)o(y)f(problems)g(with)h(the)g(UNIX)e(trust)j (mec)o(hanism)o(.)162 1101 y(The)e(existence)e(of)j(these)e(structures)h(of)h (trust)f(is)g(necessary)f(for)i(the)e(break{in)h(to)h(happ)q(en.)89 1162 y(Ob)o(viously)l(,)23 b(the)g(break{in)h(is)f(prev)o(en)o(ted)e(if)i(w)o (e)g(prohibit)g(the)g(usage)h(of)f(trusted)g(hosts)i(or)89 1222 y(trusted)e(users)h(completely)l(.)39 b(It)23 b(is)g(tec)o(hnically)e(p) q(ossible)i(to)h(disallo)o(w)f(the)g(usage)h(of)g Fh(trust)89 1282 y Ft(in)19 b(Berk)o(eley)e(r{commands.)30 b(The)19 b(c)o(hoice)g(can)g (b)q(e)h(made)e(b)o(y)h(the)h(system)e(administrator)h(at)89 1342 y(compile)10 b(time.)18 b(Ho)o(w)o(ev)o(er,)11 b(b)q(eing)i(able)f(to)h (access)g(other)g(mac)o(hines)d(without)j(passw)o(ords)i(mak)o(es)89 1402 y(the)j(w)o(ork)h(in)f(a)h(net)o(w)o(orking)f(en)o(vironmen)o(t)e (easier.)28 b(Once)18 b(used)h(to)g(the)g(comfort,)e(not)i(man)o(y)89 1463 y(users)h(agree)g(to)g(sacri\014ce)f(their)g(con)o(v)o(enience)f(for)i (the)f(prev)o(en)o(tion)g(of)h Fi(hyp)n(othetic)n(al)f Ft(securit)o(y)89 1523 y(concerns.)32 b(The)20 b(trade{o\013)h(hereb)o(y)e(w)o(ould)h(con)o (tain)f(the)h(loss)g(of)g(con)o(v)o(enien)o(t,)e(and)j(in)e(man)o(y)89 1583 y(cases,)13 b(necessary)g(to)q(ols)h(for)f(trouble)g(free)f(connection)h (to)g(hosts)h(that)g(are)f(accessed)f(frequen)o(tly)l(.)162 1643 y(A)23 b(less)f(safe)h(solution)h(w)o(ould)e(b)q(e)i(to)f(limit)d(trust) j(to)g(lo)q(cally)g(administered)d(zones,)25 b(i.e.)89 1703 y(authoritativ)o(e)20 b(zones,)h(where)g(the)f(Berk)o(eley)e(patc)o(h)j(w)o (orks)g(reliably)l(.)33 b(As)20 b(w)o(e)g(disco)o(v)o(ered)f(in)89 1764 y(paragraph)h(3.2,)f(limiting)d(trust)j(to)g(certain)f(zones)h(\014xes)f (the)h(\015a)o(w.)28 b(An)19 b(organization)g(could)89 1824 y(issue)g(the)g(p)q(olicy)g(that)h(only)f(lo)q(cal)g(trust)h(is)f(allo)o(w)o (ed.)30 b(In)19 b(some)g(organizations)h(this)f(can)h(b)q(e)89 1884 y(considered)d(a)h(reasonable)g(approac)o(h)h(if)e(hardly)g(an)o(y)h (remote)e(accesses)h(that)i(are)e(directed)g(to)89 1944 y(hosts)j(in)g(the)f (lo)q(cal)h(zone)f(are)h(originated)f(outside)h(of)g(the)f(lo)q(cal)h(zone.) 31 b(Additional)19 b(mec)o(ha-)89 2004 y(nisms)f(w)o(ould)g(b)q(e)h (necessary)g(to)g(enforce)f(the)h(p)q(olicy)l(,)f(suc)o(h)g(as)i(p)q(erio)q (dical)e(c)o(hec)o(ks)g(of)h Fi(.rhosts)89 2065 y Ft(or)g(a)g(mo)q(di\014ed)e (r{command)g(implem)o(en)n(tation)f(where)i(users)h(cannot)g(directly)e(mo)q (dify)g(their)89 2125 y(database)22 b(of)f(trusted)f(mac)o(hines,)g(but)g(ha) o(v)o(e)g(to)h(use)g(a)g(sp)q(ecial)f(program.)34 b(The)21 b(trust)f(asso-)89 2185 y(ciations)f(m)o(ust)f(then)h(b)q(e)h(k)o(ept)e(in)h (a)h(protected)f(data)h(area)g(of)g(the)f(op)q(erating)h(system.)29 b(This)89 2245 y(program)13 b(could)g(\014lter)g(out{of{zone)h(en)o(tries)e (at)i(the)f(time)e(the)i(user)g(w)o(an)o(ted)g(to)h(en)o(ter)e(them.)18 b(It)89 2305 y(w)o(ould)d(also)h(con)o(tain)f(the)f(p)q(ossibilit)o(y)h(of)g (managing)g(setup)g(c)o(hanges)g(cen)o(trally)l(.)k(This)d(solution)89 2365 y(actually)g(prop)q(oses)h(an)g(automatized)e(pro)q(cedure)h(to)h (implem)o(en)o(t)c(an)k(organization's)f(p)q(olicy)l(.)162 2426 y(If)d(the)g(nature)h(of)f(connections)g(allo)o(ws)h(a)f(p)q(olicy)g (suc)o(h)g(as)h(describ)q(ed)f(ab)q(o)o(v)o(e,)g(impleme)o(n)o(ti)o(ng)89 2486 y(it)k(is)g(a)h(ma)s(jor)e(e\013ort.)25 b(Some)16 b(system)g(scripts)h (ha)o(v)o(e)f(to)i(b)q(e)f(written)g(to)h(ensure)f(prop)q(er)h(usage,)89 2546 y(op)q(erating)i(system)e(co)q(de)h(and)h(r{command)d(co)q(de)j(m)o(ust) e(b)q(e)h(mo)q(di\014ed,)f(and)i(a)g(new)f(user)g(in-)965 2715 y(10)p eop %%Page: 11 11 10 bop 89 82 a Ft(terface)17 b(has)h(to)h(b)q(e)f(dev)o(elop)q(ed.)24 b(Users)18 b(ha)o(v)o(e)f(to)h(b)q(e)g(trained)f(on)h(ho)o(w)h(to)f(apply)f (the)h(c)o(hanged)89 142 y(facilit)o(y)13 b(and)i(ha)o(v)o(e)f(to)h(b)q(e)g (made)f(familiar)f(with)i(the)f(new)h(p)q(olicy)f(and)i(the)e(new)h(user)g (in)o(terface.)89 203 y(Adv)m(an)o(tages)k(of)h(this)f(new)g(approac)o(h)g (are)h(compatibilit)o(y)15 b(with)k(the)g(existing)f(DNS)h(proto)q(col)89 263 y(and)e(additional)f(b)q(ene\014ts)h(in)f(further)f(securit)o(y)g (related)h(issues.)162 323 y(Although)i(w)o(e)g(concen)o(trate)f(on)i(the)f (Berk)o(eley)d(r{commands)i(in)h(this)g(paragraph,)i(w)o(e)d(do)89 383 y(not)j(forget)f(that)h(there)f(are)g(other)g(w)o(a)o(ys)g(to)h(exploit)e (the)h(\015a)o(w.)31 b(F)l(or)19 b(example,)f(in)o(tercepting)89 443 y(electronic)12 b(mail)h(is)g(a)i(target)f(of)h(attac)o(k)o(ers;)e(esp)q (ecially)g(electronic)f(mail)h(that)h(is)g(exc)o(hanged)f(b)o(y)89 504 y(securit)o(y)i(agencies)i(and)h(securit)o(y)d(related)h(organizations.) 25 b(Electronic)15 b(mail)h(dep)q(ends)h(on)g(the)89 564 y(DNS.)162 624 y(The)c(Massac)o(h)o(usetts)h(Institute)e(of)i(T)l(ec)o(hnology)l(,)f (together)g(with)g(IBM)f(and)i(Digital)f(Equip-)89 684 y(men)o(t)18 b(Corp)q(oration)k(dev)o(elop)q(ed)c(in)i(1983)h(Kerb)q(eros,)g(an)g(authen)o (tication)e(system)f(that)j(uses)89 744 y(Data)14 b(Encryption)f(Standard)i (\(see)e([NBS77)o(]\))g(cryptograph)o(y)g(to)h(transmit)e(sensitiv)o(e)g (informa-)89 804 y(tion)18 b(on)h(a)g(net)o(w)o(ork,)f(suc)o(h)g(as)h (clear-text)f(passw)o(ords.)29 b(Although)19 b(Kerb)q(eros)g(is)f(an)h (excellen)o(t)89 865 y(solution)e(to)g(sev)o(eral)e(di\016cult)h(problems,)f (it)h(has)h(shortcomings)f(that)i(limit)13 b(its)k(usefulness)f(in)89 925 y(resp)q(ect)g(to)h(our)f(problem.)k(A)c(discussion)g(of)h(its)f (shortcomings)g(can)g(b)q(e)g(found)h(in)f([GS91)q(].)162 985 y(Ov)o(erall,)c(a)h(v)o(ery)f(w)o(eak)h(p)q(oin)o(t)g(in)g(Berk)o(eley)d (deriv)o(ed)i(UNIX)f(systems)h(is)h(the)g(usage)h(of)f(trust.)89 1045 y(This)18 b(pap)q(er)g(exploits)f(only)g(one)h(of)g(sev)o(eral)f(kno)o (wn)h(\015a)o(ws)g(based)g(up)q(on)h(trust.)26 b(Using)17 b(trust{)89 1105 y(based)h(mec)o(hanism)o(s)c(requires)i(thinking)h(ab)q(out)h(a)g(c)o (hange)f(in)g(individual)e(p)q(olicies)i(in)f(dealing)89 1166 y(with)g(gran)o(ting)h(trust)f(to)h(others.)k(W)l(e)16 b(can)h(conclude,)e(b) o(y)h(citing)f(S.)h(Bello)o(vin)e(\([Bel90)o(]\):)284 1267 y(If)f(a)h(host)g(trusts)g(another)f(host)h(not)g(named)f(in)g(a)g(lo)q(cal)h (zone,)f(its)g(name)f(serv)o(er)211 1328 y(cannot)17 b(protect)f(it.)89 1472 y Fg(3.4)70 b(Restricti)o(ng)21 b(Public)g(Information)i(Access)89 1564 y Ft(What)13 b(mak)o(es)e(the)h(break{in)g(p)q(ossible)h(in)f(the)g (\014rst)h(place)f(is)g(gathering)h(necessary)f(information)89 1624 y(ab)q(out)19 b(hostnames)e(of)h(trusting)g(mac)o(hines)d(and)k(user)e (names)g(on)h(di\013eren)o(t)e(systems)h(trusting)89 1685 y(eac)o(h)f(other.) 162 1745 y(W)l(e)11 b(are)h(not)g(discussing)f(random)h(patterns)f(of)h (trust)g(that)g(migh)o(t)e(exist)g(b)q(et)o(w)o(een)h(hosts,)i(but)89 1805 y(common)d(patterns)j(using)g(a)g(systematic)e(approac)o(h.)21 b(In)12 b(a)h(cluster)f(of)h(time{sharing)e(mac)o(hines,)89 1865 y(eac)o(h)18 b(mac)o(hine)f(is)i(lik)o(ely)d(to)j(extend)f(trust)h(to)g (all)g(its)f(p)q(eers.)29 b(This)19 b(pattern)g(is)g(not)g(common)89 1925 y(to)24 b(the)f(general)g(user)h(p)q(opulation,)i(but)d(it)g(is)h (applicable)e(to)i(systems)e(programming)g(and)89 1986 y(op)q(erational)c (sta\013.)25 b(Another)17 b(t)o(ypical)f(pattern)i(is)f(the)g(o)q(ccurrence)f (of)i(\014le)f(serv)o(ers)f(that)i(trust)89 2046 y(their)10 b(clien)o(ts,)g(who)i(serv)o(e)e(as)h(a)h(source)f(of)g(extra)g(CPU)g (cycles.)18 b(Dataless)12 b(clien)o(ts)d(will)h(frequen)o(tly)89 2106 y(trust)i(administrativ)o(e)e(mac)o(hines)g(to)j(p)q(ermit)d(soft)o(w)o (are)i(main)o(tenance.)18 b(Some)11 b(systems)g(still)g(use)89 2166 y(the)i(same)g Fi(/etc/hosts.e)n(quiv)i Ft(\014les)e(on)h(man)o(y)e (hosts)i(just)g(to)g(simplify)c(systems)j(administration.)162 2226 y(Generally)23 b(accessable)h(programs)g(can)g(aid)h(in)e(disco)o(v)o (ering)g(the)h(desired)f(information:)89 2287 y(there)12 b(are)i(net)o(w)o (ork)e(monitoring)g(and)i(information)e(to)q(ols)i(\(suc)o(h)f(as)g Fi(snmptnetstat)p Ft(,)i Fi(tr)n(ac)n(er)n(oute)p Ft(,)89 2347 y(or)j(the)g(DNS)g(itself)s(\),)g(user)g(information)f(services)g(\(suc)o(h)g (as)i Fi(\014nger)p Ft(\),)g(and)g(UNIX)d(services)h(in)89 2407 y(general)i(\(suc)o(h)g(as)h Fi(ftp)p Ft(,)g Fi(smtp)p Ft(,)f(or)h Fi(rp)n(cinfo)p Ft(.\))30 b(Other)19 b(sources)h(of)f (information)g(migh)o(t)e(include)89 2467 y(published)k(material)e (describing)i(net)o(w)o(ork)g(top)q(ology)i(that)e(is)h(a)o(v)m(ailable)e (for)i(example)d(from)89 2527 y(some)c(academic)g(departmen)o(ts.)162 2588 y(The)23 b(men)o(tioned)f(collection)f(of)j(to)q(ols)g(sho)o(ws)g(that)g (it)f(is)g(a)g(di\016cult)f(task)i(to)g(limit)c(in-)965 2715 y(11)p eop %%Page: 12 12 11 bop 89 82 a Ft(formation)22 b(access)h(without)h(sacri\014cing)f(the)f (legitimate)f(utilization)h(of)h(net)o(w)o(ork)g(services.)89 142 y(Prev)o(en)o(ting)15 b(someone)h(from)f(gathering)i(information)f(is)g (nearly)g(imp)q(ossible.)k(T)l(o)q(o)e(man)o(y)d(ser-)89 203 y(vices)j(rely)g(on)i(address)g(information,)e(and)i(w)o(e)e(conjecture)h (that)g(most)g(users)g(w)o(ould)g(not)h(b)q(e)89 263 y(happ)o(y)f(if)f(they)g (w)o(ere)g(depriv)o(ed)f(of)i(useful)f(to)q(ols)h(suc)o(h)g(as)g(electronic)e (mail)g(or)i(news)f(readers.)89 323 y(The)i(idea)f(of)h(op)q(en)h(systems)d (requires)h(op)q(en)i(access)e(to)i(information)d(services)h(and)h(address)89 383 y(information.)29 b(Therefore,)19 b(most)f(system)g(administrators)h(ha)o (v)o(e)f(decided)g(that)i(the)f(b)q(ene\014ts)89 443 y(of)e(these)e (utilities)g(out)o(w)o(eigh)h(the)g(risks.)89 588 y Fg(3.5)70 b(Adjusting)22 b(DNS)h(Up)r(date)g(In)n(terv)l(als)89 680 y Ft(Some)c(sites)h(ha)o(v)o(e)g(connections)g(c)o(hie\015y)f(with)h(mac)o (hines)e(outside)j(of)f(their)g(zones)g(that)h(sta)o(y)89 740 y(stable)14 b(in)f(the)h(sense)f(that)h(hostname)g(to)g(IP)f(address)i (mapping)e(will)f(sta)o(y)i(the)g(same)e(for)i(a)h(long)89 800 y(time.)24 b(The)18 b(idea)f(is)h(to)g(en)o(ter)f(long)h(time{to{liv)o(e) d(v)m(alues)j(in)o(to)f(the)h(resource)f(records,)h(v)m(alues)89 861 y(that)13 b(exceed)f(the)h(curren)o(tly)e(impleme)o(n)o(ted)f(threshold)j (of)g(1)h(w)o(eek.)19 b(Limits)11 b(could)i(b)q(e)h(increased)89 921 y(up)g(to)g(6,)h(12)f(mon)o(ths,)f(or)i(ev)o(en)e(longer,)h(dep)q(ending) g(on)g(the)g(situation.)20 b(If)14 b(this)g(data)g(is)g(en)o(tered)89 981 y(with)20 b(great)h(care)g(to)g(ensure)f(correctness)g(of)h(the)g (mappings,)g(the)f(DNS)g(based)i(break{in)e(is)89 1041 y(prev)o(en)o(ted.)162 1101 y(This)i(approac)o(h)g(is)f(limited)d(b)o(y)j(its)g(scop)q(e)h(of)f (applicabilit)o(y)l(,)f(but)i(it)f(is)g(a)h(solution)f(with)89 1162 y(man)o(y)d(adv)m(an)o(tages.)32 b(It)18 b(go)q(es)j(with)e(the)g (curren)o(t)f(DNS)i(proto)q(col)g(and)g(can)f(b)q(e)h(implem)o(e)o(n)o(ted)89 1222 y(without)f(m)o(uc)o(h)e(e\013ort)j(b)o(y)e(simply)f(c)o(hanging)j(the)e (constan)o(t)i(in)f(the)f(name)g(serv)o(er)g(co)q(de)i(that)89 1282 y(determines)14 b(the)i(maxim)o(um)c(time{to{liv)o(e)i(for)j(cac)o(he)e (en)o(tries)h(and)h(recompiling)d(the)i(system.)89 1342 y(As)j(all)f (necessary)h(en)o(tries)f(are)h(k)o(ept)f(in)h(the)g(lo)q(cal)g(cac)o(he,)f (the)h(system)e(pro)o(vides)i(v)o(ery)f(quic)o(k)89 1402 y(replies)d(to)i (queries.)k(It)16 b(hardly)h(ev)o(er)e(uses)i(the)f(net)o(w)o(ork)g(and)h (therefore)f(sa)o(v)o(es)g(bandwidth)h(on)89 1463 y(the)f(medium)d(for)j (other)h(tasks.)162 1523 y(This)k(approac)o(h)h(has)f(the)g(problem)e(of)i(v) m(alidating)g(mappings)f(b)q(efore)h(they)f(are)h(cac)o(hed.)89 1583 y(Ho)o(w)e(can)h(it)e(b)q(e)i(ensured)f(that)h(the)f(mappings)g(are)g (correct)g(in)f(the)i(\014rst)f(place?)30 b(Certainly)l(,)89 1643 y(a)18 b(false)f(en)o(try)f(w)o(ould)i(sta)o(y)f(for)h(a)f(long)h(time,) d(and)j(the)f(attac)o(k)o(er's)g(address)h(w)o(ould)f(b)q(e)h(\014nally)89 1703 y(noted.)23 b(But)17 b(do)q(es)h(that)f(really)f(help,)g(once)h(misc)o (hief)d(is)i(done?)25 b(It)16 b(migh)o(t)f(aid)i(in)g(prosecution)89 1764 y(e\013orts,)f(but)h(only)f(little)e(in)i(prev)o(en)o(tion.)162 1824 y(Extending)i(TTL)i(v)m(alues)e(to)h(a)g(long)g(p)q(erio)q(d)g(of)g (time)d(is)i(a)h(safe)g(and)g(feasible)f(metho)q(d)f(in)89 1884 y(en)o(vironmen)o(ts)12 b(where)i(the)g(additional)g(condition)g(of)h (static)f(mappings)g(with)g(long)h(lifetimes)c(is)89 1944 y(giv)o(en.)22 b(Ho)o(w)o(ev)o(er,)15 b(in)i(this)g(scenario)g(the)f(DNS)h(seems)f(not)h(to) h(b)q(e)f(the)f(righ)o(t)h(approac)o(h,)g(but)h(a)89 2004 y(lo)q(cally)d(w)o (ell{administered)f(static)i(mapping)f(mec)o(hanism.)162 2065 y(One)21 b(of)g(the)g(original)g(reasons)h(to)g(in)o(tro)q(duce)e(the)h(DNS)g (w)o(as)h(to)f(manage)g(the)g(dynamic)89 2125 y(b)q(eha)o(vior)c(of)h(c)o (hanges)g(in)f(the)g(data)h(base.)25 b(This)18 b(approac)o(h)g(\014xes)f (mappings)g(for)h(a)f(long)h(time)89 2185 y(and)e(uses)g(a)g(p)q(o)o(w)o (erful)e(distributed)h(database)i(system)d(for)i(an)g(infrequen)o(tly)d(o)q (ccuring)i(up)q(date)89 2245 y(pro)q(cess.)33 b(Although)20 b(w)o(e)f(are)h(not)g(talking)g(ab)q(out)h(a)f(static)g(mapping)f(in)h(this)f (paragraph,)k(a)89 2305 y(w)o(ell{main)o(tained)12 b Fi(HOSTS.TXT)k Ft(\014le)f(or)g(a)g(h)o(ybrid)g(approac)o(h)g(w)o(ould)g(ha)o(v)o(e)g(the)f (functionalit)o(y)89 2365 y(required)h(with)h(less)g(o)o(v)o(erhead.)162 2426 y(It)23 b(could)h(b)q(e)f(suggested)i(to)f(abandon)h(the)e(DNS)h(and)g (either)f(return)g(to)h(the)f(previous)89 2486 y(system)c(with)i(a)g(static)g (host)g(table,)h(or)f(mo)o(v)o(e)e(on)i(to)g(another)h(system)d(that)i(has)h (y)o(et)e(to)h(b)q(e)89 2546 y(dev)o(elop)q(ed.)f(W)l(e)14 b(are)g(not)h(going)h(to)f(discuss)f(p)q(ossible)h(future)f(dev)o(elopmen)o (t)e(of)i(the)h(DNS)f(here,)965 2715 y(12)p eop %%Page: 13 13 12 bop 89 82 a Ft(but)16 b(returning)g(to)h(the)f(previous)g(system.)162 142 y(In)c(this)f(approac)o(h,)i(mappings)f(can)g(c)o(hange)f(frequen)o(tly)l (,)g(but)h(c)o(hanges)g(ha)o(v)o(e)f(to)h(b)q(e)g(rep)q(orted)89 203 y(to)21 b(a)g(cen)o(tral)f(authorit)o(y)g(that)h(manages)f(the)h(whole)f (DNS)h(space)g(in)f(con)o(trast)h(to)g(the)f(DNS)89 263 y(approac)o(h)k(of)f (managing)f(zones)h(through)h(delegated)e(lo)q(cal)h(authorities.)41 b(This)23 b(w)o(ould)g(not)89 323 y(solv)o(e)17 b(the)g(problem,)e(b)q (ecause)j(the)f(problem)f(is)h(not)h(the)f(DNS,)g(but)h(inadequate)f(metho)q (ds)g(of)89 383 y(host)i(authen)o(tication.)28 b(IP)18 b(addresses)h(of)g (trusted)g(mac)o(hines)d(could)j(still)e(b)q(e)i(imitated.)26 b(This)89 443 y(is)16 b(a)h(somewhat)f(harder)g(task,)g(but)h(the)f(tec)o (hniques)f(ha)o(v)o(e)g(b)q(een)h(kno)o(wn)h(for)g(quite)e(some)g(time)89 504 y(\(see)h([Mor85]\).)162 564 y(W)l(ould)e(it)f(b)q(e)g(safer)h(to)f (transmit)g(up)q(dates)h(to)g(a)f(cen)o(tral)g(site?)20 b(Electronic)12 b(mail,)g(telephone)89 624 y(calls,)h(or)h(con)o(v)o(en)o(tional)e(pap)q(er)h (are)h(not)g(necessarily)e(a)i(reliable)d(w)o(a)o(y)j(to)f(transmit)f (mapping)h(in-)89 684 y(formation)h(up)q(dates.)22 b(The)14 b(long)h(time)e(dela)o(y)h(un)o(til)f(cen)o(trally)g(made)h(c)o(hanges)h(are) g(propagated)89 744 y(through)g(the)g(net)o(w)o(ork)e(w)o(ould)i(condemn)e (the)h(database)i(to)f(b)q(e)f(in)g(an)h(inheren)o(tly)e(inconsisten)o(t)89 804 y(state.)22 b(The)17 b(system)e(w)o(ould)h(again)h(con)o(tain)g(all)e (the)i(disadv)m(an)o(tages)g(whic)o(h)f(w)o(ere)g(the)g(reasons)89 865 y(for)g(dev)o(eloping)g(the)g(curren)o(t)f(DNS.)162 925 y(But)d(b)q(esides)g(these)g(ob)o(vious,)h(tec)o(hnical,)e(and)i(w)o(ell{kno) o(wn)e(reasons,)j(there)e(is)g(a)g(signi\014can)o(t)89 985 y(argumen)o(t)h(wh)o(y)g(no)h(one)g(can)g(p)q(ossibly)g(b)q(e)g(in)f(fa)o(v)o (or)g(of)h(reinstalling)f(the)g(previous)h(system:)k(the)89 1045 y(sheer)h(size)f(of)h(the)g(In)o(ternet.)29 b Fi(HOSTS.TXT)20 b Ft(w)o(as)g(abandoned)g(b)q(ecause)f(200,000)i(hosts)f(w)o(as)89 1105 y(to)q(o)13 b(m)o(uc)o(h)d(to)i(b)q(e)h(managed.)19 b(Are)11 b(curren)o(tly)g(o)o(v)o(er)g(2.2)h(million)e(\(see)h([Lot94)q(]\))h(easier)g (to)g(handle?)89 1166 y(Certainly)j(not.)162 1226 y(Abandoning)f(the)f(DNS)h (w)o(ould)f(drag)h(the)f(name)f(resolution)h(task)h(in)f(the)g(In)o(ternet)f (out)i(of)g(a)89 1286 y(functioning)f(state)h(with)f(a)h(not)g(easily)e (exploitable)g(securit)o(y)g(breac)o(h,)h(in)o(to)g(an)h(unmanageable,)89 1346 y(not)k(w)o(orking)g(state)g(of)g(prehistoric)e(system)h(design.)25 b(W)l(e)18 b(think)f(that)h(w)o(ould)f(do)i(more)d(harm)89 1406 y(than)h(ignoring)f(the)g(problem.)89 1551 y Fg(3.6)70 b(Hardening)23 b(Name)e(Serv)n(ers)89 1643 y Fe(3.6.1)55 b(Keeping)18 b(Additional)g(Information)89 1736 y Ft(A)i(\014rst)g(idea)g(is)g(to)g (extensiv)o(ely)e(log)i(remote)e(login)j(attempts)e(with)h(all)f(asso)q (ciated)i(address)89 1796 y(and)g(name)d(information.)32 b(Or)19 b(ev)o(en)g(more:)28 b(to)20 b(tag)h(cac)o(he)e(en)o(tries)g(with)g(their)h (origin.)32 b(The)89 1856 y(latter)19 b(is)g(an)i(easily)d(ac)o(hiev)o(ed)g (mo)q(di\014cation)h(that)h(costs)g(additional)g(memory)c(space)k(in)f(the)89 1916 y(cac)o(he.)h(This)c(metho)q(d)f(mak)o(es)g(it)g(easier)g(to)h(trac)o(k) g(false)f(database)i(en)o(tries)e(for)h(the)g(purp)q(ose)h(of)89 1976 y(debugging)g(wrong)g(zone)f(data)i(or)e(in)o(v)o(estigating)f(a)i(DNS)f (based)h(break{in.)89 2106 y Fe(3.6.2)55 b(Prev)n(en)n(tion)18 b(of)h(Cac)n(he)h(P)n(oisoning)89 2199 y Ft(Prev)o(en)o(ting)14 b(the)h(cac)o(he)f(from)h(con)o(tamination)f(is)h(not)h(feasible)e(from)g (within)h(the)g(name)f(serv)o(er)89 2259 y(co)q(de,)24 b(as)f(there)f(is)h (no)g(w)o(a)o(y)f(of)h(a)g(priori)f(determining)f(if)h(an)o(y)g(giv)o(en)g (additional)h(record)f(is)89 2319 y(trust)o(w)o(orth)o(y)14 b(or)h(not.)21 b(W)l(e)14 b(could)g(start)h(treating)f(sp)q(ecial)g(cases)h (of)f(when)h(to)g(allo)o(w)f(or)g(disallo)o(w)89 2379 y(additional)i (information.)162 2439 y(The)h(default)g(safe)g(b)q(eha)o(vior)h(w)o(ould)f (b)q(e)g(to)h(disallo)o(w)e(the)h(cac)o(hing)g(of)g(unrequested)g(infor-)89 2500 y(mation,)i(and)i(to)f(allo)o(w)g(it)f(only)h(in)f(cases)h(where)g(the)f (information)g(is)h(necessary)l(,)g(and)g(then)89 2560 y(only)c(for)h(the)f (curren)o(t)f(resolution.)965 2715 y(13)p eop %%Page: 14 14 13 bop 89 82 a Fe(3.6.3)55 b(Con)n(text)19 b(Cac)n(he)89 175 y Ft(There)11 b(are)h(other,)h(more)d(sophisticated)i(approac)o(hes)g(p)q (ossible:)20 b(if)11 b(some)g(additional)h(or)g(author-)89 235 y(itativ)o(e)g(records)h(are)g(returned)g(together)g(with)g(a)h(resource) f(record,)g(they)f(could)h(b)q(e)h(in)o(terpreted)89 295 y(only)k(in)f(the)h (con)o(text)f(of)h(that)g(resource)g(record.)26 b(The)18 b(di\013erence)f(b)q (et)o(w)o(een)g(the)g(default)h(safe)89 355 y(b)q(eha)o(vior)13 b(approac)o(h)h(and)g(this)f(one)g(is)g(that)h(in)f(the)g(former,)e(resource) i(records)h(are)f(only)g(cac)o(hed)89 415 y(when)k(they)f(w)o(ere)g (requested)g(or)h(necessary)g(additional)g(information,)e(whereas)i(in)g(the) f(latter)89 475 y(approac)o(h)g(the)f(new)g(en)o(tries)f(get)i(cac)o(hed,)e (but)h(can)h(b)q(e)f(retriev)o(ed)f(from)g(the)h(cac)o(he)f(only)h(in)g(the) 89 536 y(same)k(con)o(text)h(in)g(whic)o(h)g(they)g(w)o(ere)g(en)o(tered.)33 b(F)l(or)21 b(example,)e(an)i Ff(address)d Ft(record)i(in)g(the)89 596 y(additional)f(section)g(of)g(a)g(resp)q(onse)h(to)g(a)f Ff(mail)24 b(exchange)16 b Ft(record)j(request)g(should)g(only)g(b)q(e)89 656 y(used)c(for)h(deliv)o(ering)d(mail.)19 b(The)c(information)f(w)o(ould)h (not)g(b)q(e)g(acceptable)g(for)g(a)h(remote)d(login)89 716 y(to)h(another)h(host,)g(or)g(generally)e(usable)h(for)g(other)h(services.)k (A)14 b(glue)g Ff(address)d Ft(record)j(coming)89 776 y(along)k(with)e(a)i Ff(name)24 b(server)15 b Ft(record)h(w)o(ould)h(only)g(b)q(e)g(used)g(for)g (follo)o(w{up)g(queries,)f(b)q(ecause)89 837 y(that)k(is)g(the)f(con)o(text)g (in)h(whic)o(h)f(it)g(w)o(as)h(supplied.)31 b Ff(Address)18 b Ft(records)h(along)i(with)f Ff(pointer)89 897 y Ft(records)c(should)h(nev)o (er)d(b)q(e)j(cac)o(hed,)d(b)q(ecause)j(there)e(is)h(no)g(legal)g(con)o(text) f(in)h(whic)o(h)f(they)h(ha)o(v)o(e)89 957 y(to)h(b)q(e)f(returned)g(in)g(a)g (single)g(resp)q(onse.)162 1017 y(This)24 b(whole)f(approac)o(h)h(leads)f(to) h(the)f(question)g(of)h(whether)f(w)o(e)f(still)h(need)g(the)g(addi-)89 1077 y(tional)18 b(section)f(at)i(all.)25 b(If)18 b(only)g(certain)f(com)o (binations)f(of)j(resource)e(records)h(are)g(allo)o(w)o(ed)f(as)89 1138 y(a)22 b(resp)q(onse)g(to)g(a)g(query)l(,)f(wh)o(y)g(not)h(consequen)o (tly)e(eliminate)f(the)i(idea)g(of)h(additional,)h(un-)89 1198 y(requested)17 b(information)g(completely)l(,)e(and)k(adapt)g(the)f(proto)q (col)h(to)g(accommo)q(date)d(the)i(new)89 1258 y(ideas,)e(namely)e(a)j (certain)e(limited)f(n)o(um)o(b)q(er)g(of)j(t)o(yp)q(es)f(of)g(asso)q (ciations?)162 1318 y(First)i(of)h(all,)g(that)g(w)o(ould)g(require)e(a)i (proto)q(col)h(c)o(hange,)f(whic)o(h)f(is)g(something)g(w)o(e)g(try)h(to)89 1378 y(a)o(v)o(oid.)41 b(Some)21 b(of)i(the)g(original)g(design)g(goals)h(of) f(the)f(DNS)h(also)h(imply)c(that)k(elimi)o(nating)89 1439 y(the)18 b(additional)h(section)f(w)o(ould)g(not)h(b)q(e)g(a)g(go)q(o)q(d)h (approac)o(h.)29 b(The)18 b(system)f(w)o(ould)i(lose)f(some)89 1499 y(of)i(its)f(generalit)o(y)l(,)f(b)q(ecause)h(the)h(additional)f (section)g(migh)o(t)e(b)q(ecome)h(v)o(ery)g(useful)h(in)g(future)89 1559 y(applications)e(of)g(the)f(DNS)h(without)g(con)o(taining)g(an)o(y)f (securit)o(y)g(threats.)23 b(The)17 b(system)e(w)o(ould)89 1619 y(certainly)10 b(lose)i(e\016ciency)l(.)17 b(Here)10 b(w)o(e)h(see)h (again)g(an)g(imp)q(ortan)o(t)f(trade-o\013)h(that)g(w)o(e)f(ha)o(v)o(e)g (already)89 1679 y(men)o(tioned)e(in)i(previous)g(sections:)19 b(an)12 b(increase)e(in)h(systems)f(securit)o(y)g(and)i(a)g(decline)d(in)i (system)89 1740 y(p)q(erformance)k(vs.)21 b(go)q(o)q(d)e(system)14 b(p)q(erformance)h(and)i(a)g(p)q(ossible)f(lac)o(k)g(of)g(securit)o(y)l(.)162 1800 y(It)k(is)f(therefore)h(justi\014able)f(to)h(tak)o(e)g(the)f(approac)o (h)i(of)f(hardening)g(the)g(name)f(serv)o(er)f(b)o(y)89 1860 y(treating)j(more)f(sp)q(ecial)h(cases,)h(and)g(b)o(y)f(increasing)g(the)g (complexit)o(y)d(of)k(the)f(in)o(ternal)f(data)89 1920 y(bases,)k(instead)e (of)g(hardening)h(it)e(b)o(y)h(implem)o(en)o(t)o(ing)e(the)h(same)h(ideas)g (accepting)f(proto)q(col)89 1980 y(c)o(hanges.)89 2110 y Fe(3.6.4)55 b(Authorit)n(y)19 b(Cac)n(he)89 2203 y Ft(A)c(further)g(approac)o(h)h(w)o (ould)g(b)q(e)f(to)h(cac)o(he)e(data)j(only)e(if)g(the)g(source)g(of)h(a)g (record)f(is)g(kno)o(wn)h(to)89 2263 y(b)q(e)i(authoritativ)o(e)f(for)h(that) g(zone.)25 b(W)l(e)18 b(giv)o(e)e(an)i(example)e(for)i(that:)24 b(If)17 b(a)h(name)f(serv)o(er)f Ff(ara-)89 2323 y(gorn.defen)o(d.d)o(om)8 b Ft(receiv)o(es)i(a)i Ff(pointer)e Ft(record)h(from)g(some)g(host)i Ff(caradhras)o(.at)o(tac)o(k.d)o(om)o Ft(,)89 2383 y(and)j(the)f(DNS)g (message)g(also)h(con)o(tains)f(an)h Ff(address)d Ft(record)i(in)g(its)g (additional)g(section,)g(then)89 2443 y(the)h(name)g(serv)o(er)f Ff(aragorn)f Ft(w)o(ould)j(b)q(eliev)o(e)d(and)j(cac)o(he)f(this)g (information)g(only)g(if)g(it)g(already)89 2503 y(kno)o(ws)e(that)g(the)f (source)h(name)e(serv)o(er)h Ff(caradhras)d Ft(is)k(authoritativ)o(e)f(for)g (the)h(according)g(zone.)89 2564 y(A)g(name)e(serv)o(er)h(follo)o(wing)h (this)g(strategy)g(w)o(ould)g(create)g(its)g(o)o(wn)g(tree)f(of)i (authoritativ)o(e)e(name)965 2715 y(14)p eop %%Page: 15 15 14 bop 89 82 a Ft(serv)o(ers.)39 b(This)23 b(tree)f(w)o(ould)g(ha)o(v)o(e)g (to)h(lose)f(subtrees)h(according)f(to)h(the)f(expiration)g(of)h(the)89 142 y(lifetime)13 b(of)j(some)g(no)q(de)g(\(name)f(serv)o(er\).)162 203 y(This)20 b(approac)o(h)g(ho)o(w)o(ev)o(er)e(has)i(a)g(serious)g(\015a)o (w)g(in)f(it.)30 b(Serv)o(ers)19 b(determine)e(if)i(DNS)g(mes-)89 263 y(sages)g(are)f(gen)o(uine)f(b)o(y)h(c)o(hec)o(king)e(a)i(certain)f (\015ag)i(in)f(the)g(header)f(of)i(the)e(DNS)h(message:)24 b(the)89 323 y Ff(authoritat)o(ive)e(answer)11 b Ft(bit.)20 b(This)14 b(\015ag)g(is)f(only)g(v)m(alid)h(in)f(resp)q(onses)h(and)g(sp)q (eci\014es)f(that)h(the)89 383 y(resp)q(onding)20 b(name)f(serv)o(er)f(is)i (an)g(authorit)o(y)f(for)h(the)f(domain)g(name)f(in)h(question.)31 b(Nothing)89 443 y(prev)o(en)o(ts)11 b(an)o(y)i(attac)o(k)o(er)e(who)j (supplies)e(sp)q(eci\014cally)f(man)o(ufactured)g(pac)o(k)o(ets)h(in)g(the)h (\014rst)g(place)89 504 y(from)i(setting)h(this)g(bit)g(regardless)h(of)f (its)g(v)m(alidit)o(y)l(.)89 633 y Fe(3.6.5)55 b(Conditional)19 b(Cac)n(he)g(Use)89 726 y Ft(The)d(Berk)o(eley)d(patc)o(h)j(\(see)g (paragraph)i(3.2\))e(can)g(fail)f(in)h(the)g(case)g(that)g(the)g(cac)o(he)f (is)h(already)89 786 y(p)q(oisoned.)29 b(An)19 b(idea)f(to)h(strengthen)g (the)g(Berk)o(eley)d(patc)o(h)i(is)h(to)g(pro)o(vide)e(the)i(p)q(ossibilit)o (y)f(to)89 846 y(resolv)o(e)e(queries)h(without)h(using)g(the)f(cac)o(he.)25 b(That)18 b(could)g(b)q(e)f(used)h(b)o(y)f(the)h(Berk)o(eley)d(patc)o(h.)89 906 y(The)f(system)e(call)h(executing)f(the)h(forw)o(ard)i(lo)q(okup)f(w)o (ould)g(for)f(example)f(set)h(a)h(\015ag)h(to)f(indicate)89 967 y(that)h(the)g(cac)o(he)g(con)o(ten)o(ts)f(should)i(not)f(b)q(e)h(used)f (for)g(the)g(follo)o(wing)g(resolution.)21 b(This)15 b(metho)q(d)89 1027 y(again)20 b(decreases)f(the)g(e\016ciency)e(of)j(the)f(system,)f(but)h (it)g(prev)o(en)o(ts)f(the)h(exploitation)g(of)g(the)89 1087 y(w)o(eakness.)h(One)12 b(could)h(also)g(think)g(of)g(a)g(system)e(call)h(to) h(\015ush)g(the)g(cac)o(he)f(follo)o(w)o(ed)g(b)o(y)g(a)h(reload)89 1147 y(of)j(the)g(database,)h(similar)d(to)i(the)g(signal)g(SIGHUP)f(that)i (a)f(system)f(administrator)g(can)h(send)89 1207 y(to)h(the)f(BIND)f(implem)o (en)n(tation)f(of)j(the)f(name)f(serv)o(er)g(to)h(ac)o(hiev)o(e)f(the)h (same.)89 1337 y Fe(3.6.6)55 b(Discussion)89 1430 y Ft(A)18 b(v)o(ery)f(thorough)j(analysis)f(of)g(the)f(proto)q(col)h(is)g(needed)f(to)h (determine)c(the)k(cases)f(in)h(whic)o(h)89 1490 y(additional)g(resource)f (records)g(are)h(legal)f(and)h(cannot)g(do)g(an)o(y)g(harm,)e(or)i(ha)o(v)o (e)f(to)h(b)q(e)g(stored)89 1550 y(in)d(di\013eren)o(t)f(con)o(texts.)162 1610 y(One)20 b(of)h(the)g(design)f(goals)i(of)f(the)f(DNS)g(is)h(hereb)o(y)e (in)h(danger:)31 b(generalit)o(y)l(.)h(The)21 b(DNS)89 1670 y(should)14 b(not)h(con)o(tain)e(an)o(y)h(unnecessary)g(restrictions)f (regarding)h(its)g(purp)q(ose)g(or)g(applications.)89 1731 y(If)g(the)f(impleme)o(n)o(tor)e(of)k(the)f(DNS)g(w)o(ere)f(to)i(decide)d (whic)o(h)i(com)o(binations)f(of)h(resource)g(records)89 1791 y(w)o(ould)i(b)q(e)h(allo)o(w)o(ed,)d(the)i(DNS)h(migh)o(t)d(b)q(e)i (constrained)h(in)f(a)g(w)o(a)o(y)g(that)h(it)e(is)h(no)h(longer)f(useful)89 1851 y(for)h(certain)e(applications.)22 b(A)16 b(decline)f(in)h(system)f(p)q (erformance)g(w)o(ould)i(result)f(from)f(the)h(fact)89 1911 y(that)g(name)f(serv)o(ers)g(w)o(ould)i(b)q(eliev)o(e)d(and)i(therefore)g (cac)o(he)f(less)g(data)i(|)f(data)h(that)g(migh)o(t)d(b)q(e)89 1971 y(needed)i(later.)162 2031 y(Hardening)h(name)e(serv)o(ers)i(consists)g (of)g(sev)o(eral)f(p)q(ossible)h(mo)q(di\014cations,)f(some)g(of)h(whic)o(h) 89 2092 y(seem)i(promising,)i(ev)o(en)f(though)i(their)e(application)h (decreases)f(the)h(system's)e(p)q(erformance)89 2152 y(and)e(increases)f(its) g(complexit)o(y)-5 b(.)89 2296 y Fg(3.7)70 b(Cryptographic)23 b(Metho)r(ds)g(for)h(Authen)n(tication)89 2389 y Ft(In)19 b(this)g(paragraph) i(w)o(e)e(describ)q(e)g(the)g(arc)o(hitecture)e(of)j(an)g(authen)o(tication)f (system)f(em)o(b)q(ed-)89 2449 y(ded)f(in)o(to)f(the)h(DNS.)f(Note)g(that)i (the)e(algorithms)g(and)i(metho)q(ds)e(describ)q(ed)g(in)h(the)f(follo)o (wing)89 2509 y(paragraphs)g(yield)d(as)i(m)o(uc)o(h)d(securit)o(y)h(as)i(p)q (ossible.)21 b(Ho)o(w)o(ev)o(er)12 b(they)i(are)g(not)h(p)q(erfect.)20 b(Most)15 b(of)89 2569 y(the)j(algorithms)f(rely)g(at)i(some)e(p)q(oin)o(t)h (on)h(conjectures)e(in)h(n)o(um)o(b)q(er)e(theory)i(that)h(are)f(neither)965 2715 y(15)p eop %%Page: 16 16 15 bop 89 82 a Ft(pro)o(v)o(en)16 b(nor)h(con)o(tradicted,)e(or)i(on)h(the)e (fact)g(that)h(brute)g(force)f(attac)o(ks)h(are)f(computationally)89 142 y(infeasible.)k(F)l(or)c(a)h(discussion)f(of)h(this)f(see)g([Den82].)162 203 y(W)l(e)j(ha)o(v)o(e)f(to)i(meet)d(the)h(requiremen)o(ts)e(of)k(data)g (in)o(tegrit)o(y)d(of)i(the)g(message)f(and)i(of)f(orig-)89 263 y(inator)g(authen)o(tication.)27 b(In)18 b(the)g(follo)o(wing)g(w)o(e)g (will)f(elab)q(orate)i(on)g(these)f(t)o(w)o(o)g(requiremen)o(ts)89 323 y(and)g(presen)o(t)e(tec)o(hniques)f(for)j(their)e(p)q(ossible)h(implem)o (en)o(tation.)j(The)d(algorithms)g(and)g(cryp-)89 383 y(tosystems)c(that)i(w) o(e)f(c)o(hose)g(are)g(t)o(ypical)f(represen)o(tativ)o(es)f(of)j(the)f(class) g(of)h(algorithms)e(that)i(are)89 443 y(applicable.)20 b(They)c(are)h(b)o(y)e (far)i(not)g(the)f(only)g(p)q(ossible)g(c)o(hoice.)89 573 y Fe(3.7.1)55 b(Data)19 b(In)n(tegrit)n(y)89 666 y Ft(Data)f(in)o(tegrit)o(y)d (in)i(a)h(comm)o(uni)o(cation)c(system)i(prev)o(en)o(ts)g(against)i(activ)o (e)e(wiretapping,)h(that)89 726 y(means)10 b(a)i(recipien)o(t)d(is)i(pro)o (vided)f(with)h(the)g(assurance)h(that)g(the)f(con)o(ten)o(t)f(of)h(a)h (receiv)o(ed)d(message)89 786 y(is)16 b(iden)o(tical)e(to)j(the)f(con)o(ten)o (t)g(of)g(the)g(message)g(sen)o(t)f(b)o(y)h(its)g(originator.)162 846 y(W)l(e)h(w)o(an)o(t)g(to)g(ensure)g(the)g(in)o(tegrit)o(y)e(of)i (transmitted)f(DNS)h(messages)f(along)i(with)f(a)g(time)89 906 y(stamp)i(to)h(protect)f(against)h(repla)o(y)f(attac)o(ks.)31 b(W)l(e)19 b(concen)o(trate)f(on)i(a)g(certain)f(tec)o(hnique)f(to)89 967 y(detect)d(unauthorized)i(message)e(alteration)h(that)h(is)f(e\016cien)o (t)e(and)j(considerably)f(secure.)162 1027 y(In)k(case)g(of)g(alteration)g (detection,)f(reco)o(v)o(ery)f(actions)j(could)e(b)q(e)h(to)h(ignore)f(the)f (receiv)o(ed)89 1087 y(DNS)k(message)g(and)h(issue)f(an)h(additional)g(query) l(.)42 b(Our)23 b(approac)o(h)i(is)e(based)h(on)g(message)89 1147 y(digest)19 b(algorithms.)28 b(Message)19 b(digests,)h(or)f(synon)o (ymously)e(\014ngerprin)o(ts)i(or)g(signatures,)h(are)89 1207 y(the)d(result)g(of)h(the)f(application)g(of)g(a)h(one-w)o(a)o(y)g(hash)g (functions)f(that)h(computes)e(a)i(c)o(hec)o(ksum)89 1267 y(of)f(its)f(input) g(data.)162 1328 y(MD5)k(and)f(the)g(Snefru)g(algorithm)g(are)g(examples)e (for)i(message)g(digest)g(algorithms)f(\(see)89 1388 y([Riv92)o(,)c (Mer89].\))20 b(Message)14 b(digest)f(algorithms)g(are)h(easy)g(to)g (compute,)e(are)i(only)f(a)h(few)g(b)o(ytes)89 1448 y(p)q(er)h(message,)f (are)h(computationally)e(hard)j(to)f(in)o(v)o(ert,)e(and)j(usually)e(require) g(a)h(certain)g(size)f(of)89 1508 y(input)i(data.)162 1568 y(An)g(originator)h(w)o(ould)g(calculate)e(the)h(message)g(digest)g(of)h(a)g (DNS)f(message)f(immediatel)o(y)89 1629 y(b)q(efore)f(it)g(is)g(sen)o(t)g (out.)21 b(The)15 b(recipien)o(t)d(w)o(ould)i(recalculate)f(the)h(message)g (digest)g(and)h(compare)89 1689 y(the)h(resulting)g(v)m(alue)g(with)g(the)g (one)g(calculated)g(b)o(y)f(the)h(originator.)22 b(In)16 b(case)g(of)h(a)g (mismatc)n(h,)89 1749 y(the)k(receiv)o(er)e(w)o(ould)j(conclude)e(that)i(he)f (receiv)o(ed)f(a)h(mo)q(di\014ed)g(DNS)g(message.)36 b(He)21 b(w)o(ould)89 1809 y(discard)16 b(it.)162 1869 y(But)i(ho)o(w)h(do)q(es)f (the)g(message)g(digest)g(calculated)f(b)o(y)h(the)g(originator)h(reac)o(h)e (the)h(receiv)o(er)89 1930 y(without)h(mo)q(di\014cation?)29 b(The)19 b(message)f(digest)g(algorithms)g(are)h(publicly)e(kno)o(wn)i(and)h (an)o(y-)89 1990 y(one)k(tamp)q(ering)e(with)i(a)g(message)e(could)i(easily)e (mo)q(dify)h(the)g(asso)q(ciated)h(message)f(digest)89 2050 y(accordingly)l(.)i(T)l(o)18 b(sho)o(w)g(ho)o(w)g(this)g(can)g(b)q(e)f(prev)o (en)o(ted)f(w)o(e)i(discuss)f(a)i(metho)q(d)d(for)i(originator)89 2110 y(authen)o(tication)f(in)g(the)g(follo)o(wing)g(paragraph.)27 b(Message)18 b(digests)f(together)h(with)f(originator)89 2170 y(authen)o(tication)12 b(giv)o(e)f(a)h(v)o(ery)f(strong)i(guaran)o(tee)f(for) g(the)g(detectabilit)o(y)d(of)k(activ)o(e)d(wiretapping.)89 2300 y Fe(3.7.2)55 b(Originator)18 b(Authen)n(tication)162 2393 y Ft(Originator)c(authen)o(tication)f(p)q(ermits)f(the)i(recipien)o(t)d (of)j(a)g(message)f(to)h(reliably)f(determine)89 2453 y(if)j(the)g (originator)h(of)f(a)h(message)e(is)h(who)h(he)f(claims)f(to)h(b)q(e.)162 2513 y(W)l(e)d(explain)f(brie\015y)g(a)h(pro)q(cedure)g(that)h(guaran)o(tees) f(the)g(originator's)h(authen)o(ticit)o(y)l(.)k(In)12 b(an)89 2573 y(asymmetric)c(cryptosystem)i(a)i(pair)f(of)h(distinct)f(but)h (mathematical)o(ly)c(related)j(k)o(eys)g(is)g(used)h(for)965 2715 y(16)p eop %%Page: 17 17 16 bop 241 899 a @beginspecial 0 @llx 0 @lly 359 @urx 206 @ury 3590 @rwi @setspecial %%BeginDocument: dig_sig_val.eps /$F2psDict 200 dict def $F2psDict begin $F2psDict /mtrx matrix put /l {lineto} bind def /m {moveto} bind def /s {stroke} bind def /n {newpath} bind def /gs {gsave} bind def /gr {grestore} bind def /clp {closepath} bind def /graycol {dup dup currentrgbcolor 4 -2 roll mul 4 -2 roll mul 4 -2 roll mul setrgbcolor} bind def /col-1 {} def /col0 {0 0 0 setrgbcolor} bind def /col1 {0 0 1 setrgbcolor} bind def /col2 {0 1 0 setrgbcolor} bind def /col3 {0 1 1 setrgbcolor} bind def /col4 {1 0 0 setrgbcolor} bind def /col5 {1 0 1 setrgbcolor} bind def /col6 {1 1 0 setrgbcolor} bind def /col7 {1 1 1 setrgbcolor} bind def end /$F2psBegin {$F2psDict begin /$F2psEnteredState save def} def /$F2psEnd {$F2psEnteredState restore end} def $F2psBegin 0 setlinecap 0 setlinejoin -4.0 211.0 translate 0.900 -0.900 scale 1.000 setlinewidth n 319 39 m 319 59 l gs col-1 s gr n 321.000 51.000 m 319.000 59.000 l 317.000 51.000 l gs 2 setlinejoin col-1 s gr n 319 79 m 319 99 l gs col-1 s gr n 321.000 91.000 m 319.000 99.000 l 317.000 91.000 l gs 2 setlinejoin col-1 s gr n 319 179 m 319 159 l gs col-1 s gr n 317.000 167.000 m 319.000 159.000 l 321.000 167.000 l gs 2 setlinejoin col-1 s gr n 319 219 m 319 199 l gs col-1 s gr n 317.000 207.000 m 319.000 199.000 l 321.000 207.000 l gs 2 setlinejoin col-1 s gr n 79 39 m 79 59 l gs col-1 s gr n 81.000 51.000 m 79.000 59.000 l 77.000 51.000 l gs 2 setlinejoin col-1 s gr n 79 79 m 79 99 l gs col-1 s gr n 81.000 91.000 m 79.000 99.000 l 77.000 91.000 l gs 2 setlinejoin col-1 s gr n 79 119 m 79 179 l gs col-1 s gr n 81.000 171.000 m 79.000 179.000 l 77.000 171.000 l gs 2 setlinejoin col-1 s gr n 79 199 m 79 219 l gs col-1 s gr n 81.000 211.000 m 79.000 219.000 l 77.000 211.000 l gs 2 setlinejoin col-1 s gr n 279 19 m 359 19 l gs col-1 s gr n 39 19 m 119 19 l gs col-1 s gr 0.500 setlinewidth n 21 179 m 14 179 14 192 7 arcto 4 {pop} repeat 14 199 137 199 7 arcto 4 {pop} repeat 144 199 144 186 7 arcto 4 {pop} repeat 144 179 21 179 7 arcto 4 {pop} repeat clp gs col-1 s gr n 108 154 m 98 179 l gs col-1 s gr n 102.828 172.315 m 98.000 179.000 l 99.114 170.829 l gs 2 setlinejoin col-1 s gr n 274 154 m 284 179 l gs col-1 s gr n 282.886 170.829 m 284.000 179.000 l 279.172 172.315 l gs 2 setlinejoin col-1 s gr n 261 179 m 254 179 254 192 7 arcto 4 {pop} repeat 254 199 377 199 7 arcto 4 {pop} repeat 384 199 384 186 7 arcto 4 {pop} repeat 384 179 261 179 7 arcto 4 {pop} repeat clp gs col-1 s gr [4.000000] 0 setdash n 164 229 m 234 229 l gs col-1 s gr [] 0 setdash n 226.000 227.000 m 234.000 229.000 l 226.000 231.000 l gs 2 setlinejoin col-1 s gr [4.000000] 0 setdash n 164 29 m 234 29 l gs col-1 s gr [] 0 setdash n 226.000 27.000 m 234.000 29.000 l 226.000 31.000 l gs 2 setlinejoin col-1 s gr n 11 59 m 4 59 4 72 7 arcto 4 {pop} repeat 4 79 147 79 7 arcto 4 {pop} repeat 154 79 154 66 7 arcto 4 {pop} repeat 154 59 11 59 7 arcto 4 {pop} repeat clp gs col-1 s gr n 251 59 m 244 59 244 72 7 arcto 4 {pop} repeat 244 79 387 79 7 arcto 4 {pop} repeat 394 79 394 66 7 arcto 4 {pop} repeat 394 59 251 59 7 arcto 4 {pop} repeat clp gs col-1 s gr /Times-Bold findfont 12.00 scalefont setfont 59 14 m gs 1 -1 scale (Sender:) col-1 show gr /Times-Bold findfont 12.00 scalefont setfont 294 14 m gs 1 -1 scale (Receiver:) col-1 show gr /Times-Bold findfont 12.00 scalefont setfont 294 154 m gs 1 -1 scale (hash value) col-1 show gr /Times-Bold findfont 24.00 scalefont setfont 309 139 m gs 1 -1 scale (=?) col-1 show gr /Times-BoldItalic findfont 12.00 scalefont setfont 359 154 m gs 1 -1 scale (s'') col-1 show gr /Times-BoldItalic findfont 12.00 scalefont setfont 119 159 m gs 1 -1 scale (K) col-1 show gr /Times-BoldItalic findfont 12.00 scalefont setfont 129 164 m gs 1 -1 scale (priv) col-1 show gr /Times-BoldItalic findfont 12.00 scalefont setfont 239 159 m gs 1 -1 scale (K) col-1 show gr /Times-BoldItalic findfont 12.00 scalefont setfont 249 164 m gs 1 -1 scale (pub) col-1 show gr /Times-Bold findfont 12.00 scalefont setfont 19 194 m gs 1 -1 scale (asymmetric encryption) col-1 show gr /Times-Bold findfont 12.00 scalefont setfont 259 194 m gs 1 -1 scale (asymmetric decryption) col-1 show gr /Times-BoldItalic findfont 12.00 scalefont setfont 194 219 m gs 1 -1 scale (s') col-1 show gr /Times-BoldItalic findfont 12.00 scalefont setfont 194 19 m gs 1 -1 scale (m) col-1 show gr /Times-Bold findfont 12.00 scalefont setfont 54 34 m gs 1 -1 scale (message) col-1 show gr /Times-Bold findfont 12.00 scalefont setfont 274 34 m gs 1 -1 scale (received message) col-1 show gr /Times-BoldItalic findfont 12.00 scalefont setfont 109 34 m gs 1 -1 scale (m) col-1 show gr /Times-BoldItalic findfont 12.00 scalefont setfont 394 234 m gs 1 -1 scale (s') col-1 show gr /Times-BoldItalic findfont 12.00 scalefont setfont 379 34 m gs 1 -1 scale (m) col-1 show gr /Times-Bold findfont 12.00 scalefont setfont 4 234 m gs 1 -1 scale (encrypted message digest) col-1 show gr /Times-BoldItalic findfont 12.00 scalefont setfont 149 234 m gs 1 -1 scale (s') col-1 show gr /Times-Bold findfont 12.00 scalefont setfont 249 234 m gs 1 -1 scale (received encrypted digest) col-1 show gr /Times-Bold findfont 12.00 scalefont setfont 39 114 m gs 1 -1 scale (message digest) col-1 show gr /Times-BoldItalic findfont 12.00 scalefont setfont 129 114 m gs 1 -1 scale (s) col-1 show gr /Times-Bold findfont 12.00 scalefont setfont 279 114 m gs 1 -1 scale (message digest) col-1 show gr /Times-BoldItalic findfont 12.00 scalefont setfont 369 114 m gs 1 -1 scale (s) col-1 show gr /Times-Bold findfont 12.00 scalefont setfont 14 74 m gs 1 -1 scale (message digest algorithm) col-1 show gr /Times-Bold findfont 12.00 scalefont setfont 254 74 m gs 1 -1 scale (message digest algorithm) col-1 show gr $F2psEnd %%EndDocument @endspecial 424 1055 a Ft(Figure)16 b(2:)21 b(Digital)16 b(signature)h (generation)f(and)h(v)m(alidation)89 1189 y(encryption)11 b(and)i (decryption.)19 b(One)11 b(k)o(ey)g(is)h(priv)m(ate)f(and)i(k)o(ept)e(secret) g(b)o(y)g(the)h(sender,)g(the)g(other)89 1249 y(one)k(is)h(publicly)d(kno)o (wn.)22 b(Data)17 b(encrypted)e(with)h(a)h(sender's)f(priv)m(ate)g(k)o(ey)f (can)i(b)q(e)f(decrypted)89 1309 y(using)j(his)g(public)g(k)o(ey)l(,)f(and)h (vice)f(v)o(ersa.)30 b(These)19 b(k)o(eys)f(are)h(usually)g(large)g(in)o (teger)f(n)o(um)o(b)q(ers,)89 1369 y(sev)o(eral)h(h)o(undred)h(decimal)d (digits)j(long)h(with)e(sp)q(ecial,)h(mathematical)d(prop)q(erties.)33 b Fh(P)o(ohlig-)89 1430 y(Hellman)14 b Ft(and)j Fh(RSA)e Ft(are)i(examples)d (of)i(asymmetric)d(cryptosystems)i(\(see)h([PH78,)g(RSA78]\).)162 1490 y(Figure)i(2)g(depicts)f(digital)h(signature)g(generation)g(and)h(v)m (alidation;)f(a)h(more)d(detailed)h(ex-)89 1550 y(planation)j(can)g(b)q(e)g (found)g(in)f([Sc)o(h94,)h(section)f(17.6].)32 b(The)20 b(sender)f(digitally) g(signs)h(data)g Fd(m)89 1610 y Ft(b)o(y)g(encrypting)g(the)h(hash)g(v)m (alue)f Fd(s)h Ft(of)g(the)g(data)g(using)g(his)g(priv)m(ate)f(k)o(ey)g(comp) q(onen)o(t)f Fd(K)1821 1617 y Fc(pr)q(iv)89 1670 y Ft(and)e(sends)h(\(E)368 1677 y Fc(K)398 1682 y Fb(pr)q(iv)460 1670 y Ft(\()p Fd(s)p Ft(\),)p Fd(m)p Ft(\).)k(The)17 b(receiv)o(er)e(v)m(alidates)h(the)h(data)h (in)e(a)h(three)f(step)h(pro)q(cess.)24 b(He)89 1731 y(computes)14 b(the)h(hash)h(v)m(alue)f Fd(s)g Ft(of)h(the)f(data)h Fd(m)p Ft(,)f(decrypts)g(the)g(hash)h Fd(s)1399 1713 y Fa(0)1426 1731 y Ft(that)f(arriv)o(ed)g(using)g(the)89 1791 y(signer's)h(public)f(k)o(ey)g Fd(K)538 1798 y Fc(pub)610 1791 y Ft(and)i(compares)f(the)g(results)g(D)1196 1798 y Fc(K)1226 1804 y Fb(pub)1278 1791 y Ft(\()p Fd(s)1320 1773 y Fa(0)1331 1791 y Ft(\))h(and)f Fd(s)p Ft(.)162 1851 y(Wh)o(y)21 b(do)g(w)o(e)f(calculate)g(a)i(message)e(digest)g(at)i(all)e(and) i(not)f(simply)e(encrypt)h(and)h(then)89 1911 y(transmit)h(the)i(whole)f (message?)43 b(The)23 b(main)f(p)q(oin)o(t)i(here)f(is)g(the)g(di\013erence)g (b)q(et)o(w)o(een)f(the)89 1971 y(run)o(time)16 b(costs)i(of)g(creating)g(a)g (message)f(digest)h(and)h(encrypting)e(a)h(message,)f(dep)q(ending)h(on)89 2032 y(the)e(length)g(of)h(the)f(original)g(message.)162 2092 y(Run)o(time)h(costs)i(for)g(public)f(k)o(ey)g(encryption)g(are)h(rather)g (high.)30 b(Man)o(y)18 b(CPU)h(cycles)f(are)89 2152 y(needed.)37 b(Therefore)21 b(w)o(e)g(w)o(an)o(t)h(to)f(reduce)g(the)h(size)e(of)i(the)g (data)g(p)q(ortion)h(that)f(has)g(to)g(b)q(e)89 2212 y(encrypted:)e(in)c(our) h(case)f(the)g(output)h(of)f(the)g(message)g(digest)g(algorithm.)162 2272 y(Run)o(time)c(costs)j(for)f(the)g(hash)h(functions)g(are)f(rather)g (small)f(compared)g(to)i(those)f(of)h(public)89 2333 y(k)o(ey)c(encryption.) 19 b(It)12 b(is)g(therefore)f(imp)q(ortan)o(t)g(to)i(note)f(that)g(it)g(is)g (more)f(e\016cien)o(t)f(to)i(pad)h(a)f(short)89 2393 y(DNS)i(message,)g (calculate)g(its)g(\014ngerprin)o(t,)g(and)h(then)g(encrypt)f(the)g (\014ngerprin)o(t,)g(than)h(simply)89 2453 y(to)e(encrypt)g(the)g(whole)g (DNS)g(message.)19 b(Message)14 b(digest)f(lengths)g(are)g(generally)f (shorter)h(than)89 2513 y(t)o(ypical)i(DNS)h(messages.)965 2715 y(17)p eop %%Page: 18 18 17 bop 89 82 a Fe(3.7.3)55 b(P)n(assing)20 b(Creden)n(tials)e(to)g(Pro)n(v)n (e)h(Authorit)n(y)89 175 y Ft(The)14 b(crucial)g(p)q(oin)o(t)g(in)g(the)g (previously)g(describ)q(ed)f(proto)q(col)j(is)e(the)g(imp)q(ortance)f(of)i (the)f(public)89 235 y(k)o(ey)e(of)i(the)f(sender.)20 b(If)13 b(an)h(attac)o(k)o(er)e(can)i(con)o(vince)e(the)h(receiv)o(er)e(to)i(use)h(k) o(ey)e Fd(K)1581 217 y Fa(0)1577 247 y Fc(public)1684 235 y Ft(instead)i(of)89 295 y Fd(K)130 302 y Fc(public)224 295 y Ft(,)j(whereb)o(y)f(the)h(attac)o(k)o(er)g(p)q(ossesses)h(the)f(related)g Fd(K)1226 277 y Fa(0)1222 307 y Fc(pr)q(iv)q(ate)1337 295 y Ft(,)g(the)g(attac)o(k)o(er)g(can)g(sub)o(v)o(ert)89 355 y(the)k(proto)q(col) i(suc)o(h)e(that)h(the)f(receiv)o(er)f(will)g(b)q(e)i(fo)q(oled)g(in)o(to)f (accepting)g(the)h(in)o(tegrit)o(y)d(and)89 415 y(origin)i(of)h(the)f (message.)36 b(This)21 b(demonstrates)g(that)g(it)g(is)g(imp)q(ortan)o(t)g (to)g(devise)g(a)g(sc)o(heme)89 475 y(that)c(protects)g(against)h(this)f (threat.)23 b(W)l(e)17 b(solv)o(e)f(this)h(problem)e(b)o(y)i(the)f(impleme)o (n)o(tation)e(of)k(a)89 536 y(distributed)e(sc)o(heme)d(for)k(the)f(v)m (alidation)g(of)h(public)e(k)o(ey)g(comp)q(onen)o(t)g(certi\014cates.)162 596 y(The)e(name)f(serv)o(er)g(sending)h(the)g(DNS)g(message)f(has)i(to)g (pro)o(vide)e(creden)o(tials)g(signed)h(b)o(y)f(its)89 656 y(paren)o(t)18 b(domain,)f(to)h(con)o(vince)f(the)g(recipien)o(t)f(of)i(its)g (authorit)o(y)g(o)o(v)o(er)f(the)g(domain)g(for)i(whic)o(h)89 716 y(it)d(just)g(resolv)o(ed)f(a)i(mapping.)162 776 y(The)d(use)g(of)h(suc)o (h)f(a)g(certi\014cate)f(transforms)h(the)g(problem)f(of)h(establishing)g (the)g(credibilit)o(y)89 837 y(of)23 b(one)g(en)o(tit)o(y)e(in)o(to)h(the)h (problem)e(of)i(establishing)f(the)h(credibilit)o(y)c(of)k(the)g(en)o(tit)o (y)e(issuing)89 897 y(the)f(certi\014cate.)32 b(This)21 b(problem)e(is)h(v)o (ery)f(closely)g(related)h(to)h(the)f(problem)f(of)h(distributing)89 957 y(public)14 b(k)o(ey)f(certi\014cates.)20 b(The)14 b(CCITT)i(recomme)o (ndation)c(X.509)j(sho)o(ws)h(a)f(w)o(a)o(y)f(to)h(solv)o(e)f(this)89 1017 y(problem.)19 b(In)c(X.509,)g(a)h(certi\014cate)e(binds)h(a)g(public)g (k)o(ey)e(to)j(a)g(directory)e(name)g(and)h(iden)o(ti\014es)89 1077 y(a)i(part)o(y)f(that)g(v)o(ouc)o(hes)g(for)g(the)g(binding.)162 1138 y(W)l(e)g(can)g(adopt)h(this)f(mec)o(hanism)o(,)d(suc)o(h)j(that)g(a)g (certi\014cate)f(binds)h(all)g(name)e(serv)o(ers)i(that)89 1198 y(are)i(authoritativ)o(e)f(for)h(a)h(certain)e(zone)h(to)g(this)g(zone)g (of)g(authorit)o(y)f(and)i(iden)o(ti\014es)d(the)i(zone)89 1258 y(that)13 b(v)o(ouc)o(hes)f(for)h(the)f(binding.)20 b(X.509)13 b(imp)q(oses)f(no)h(constrain)o(ts)g(on)g(the)f(seman)o(tic)f(or)i(syn)o (tac-)89 1318 y(tic)h(relationship)h(b)q(et)o(w)o(een)g(a)g(certi\014cate)f (issuer)h(and)h(a)g(sub)s(ject.)k(Ho)o(w)o(ev)o(er,)13 b(in)i(our)h(approac)o (h,)89 1378 y(the)g(certi\014cation)g(system)g(tak)o(es)g(the)h(form)e(of)i (a)h(single)e(ro)q(oted)h(tree.)23 b(Eac)o(h)16 b(no)q(de)i(represen)o(ts)89 1439 y(a)f(zone.)22 b(Sev)o(eral)15 b(name)g(serv)o(ers)h(serv)o(e)f(as)i (certi\014cation)f(authorities)g(for)h(eac)o(h)f(zone,)g(b)q(ecause)89 1499 y(all)f(serv)o(ers)g(that)h(w)o(ere)f(in)o(tro)q(duced)g(to)h(increase)f (the)h(reliabilit)o(y)c(of)k(the)g(database)h(system)d(are)89 1559 y(capable)i(of)h(v)m(alid)f(and)g(authoritativ)o(e)g(referrals.)162 1619 y(A)h(certi\014cate)f(for)i(a)g(zone)f(consists)h(of)g(all)f(IP)g (addresses)h(of)g(authoritativ)o(e)f(name)f(serv)o(ers)89 1679 y(for)g(that)f(zone,)g(signed)h(with)f(the)g(priv)m(ate)g(k)o(ey)f(of)i(the)f (name)f(serv)o(ers)g(for)i(the)f(paren)o(t)g(domain.)89 1740 y(An)o(y)f(resolv)o(er)g(that)i(receiv)o(es)d(a)j(DNS)f(message)g(receiv)o (es)e(as)j(part)g(of)f(it)g(this)g(certi\014cate.)20 b(After)89 1800 y(obtaining)14 b(the)f(public)g(k)o(ey)f(for)i(the)f(paren)o(t)g(zone)g (of)h(the)f(queried)g(zone,)g(the)g(resolv)o(er)g(can)g(then)89 1860 y(v)o(erify)i(the)h(v)m(alidit)o(y)f(of)h(the)h(referral.)j(But)c(to)h (v)o(erify)e(the)h(authorit)o(y)g(of)h(the)f(paren)o(t)g(zone,)g(the)89 1920 y(resolv)o(er)f(has)i(to)g(ask)f(this)g(zone)h(for)f(creden)o(tials.)162 1980 y(This)j(v)m(alidation)g(pro)q(cess)h(for)f(certi\014cates)f(is)h(done)g (recursiv)o(ely)e(up)i(the)g(zone)g(hierarc)o(h)o(y)89 2040 y(tree)e(that)h(coincides)f(with)h(the)f(certi\014cation)g(hierarc)o(h)o(y)l (,)f(starting)j(at)f(the)f(name)g(serv)o(er)g(that)89 2101 y(pro)o(vides)h(the)g(queried)g(mapping.)27 b(The)19 b(recursion)f(will)g (stop)h(at)g(some)f(p)q(oin)o(t,)h(either)e(at)i(the)89 2161 y(ro)q(ot,)f(or)f(at)h(some)e(in)o(termediate)e(no)q(de)k(that)f(w)o(as)h (certi\014ed)e(b)q(efore.)24 b(The)17 b(certi\014cates)f(that)i(a)89 2221 y(name)d(serv)o(er)g(holds)h(are)g(sub)s(ject)g(to)g(timeouts,)e(just)i (lik)o(e)f(the)g(resource)h(records)g(that)h(sp)q(ecify)89 2281 y(bindings)c(of)f(this)h(name)e(serv)o(er.)19 b(The)12 b(certi\014cate)f(for)i(the)f(ro)q(ot)i(m)o(ust)d(b)q(e)h(transmitted)f(b)o (y)h(some)89 2341 y(trusted,)i(out-of-band)i(mec)o(hanism)o(.)i(F)l(or)c (example,)e(the)h(ro)q(ot)i(certi\014cate)e(could)g(b)q(e)h(published)89 2402 y(in)i(an)h(in)o(ternational)e(newspap)q(er.)162 2462 y(Ev)o(en)k(if)f(an)i(attac)o(k)o(er)e(manages)h(to)g(get)g(a)h(v)m(alid)f (certi\014cate)e(of)j(a)f(name)f(serv)o(er)g(it)h(w)o(an)o(ts)89 2522 y(to)d(imp)q(ersonate,)e(and)i(has)g(the)f(capabilit)o(y)f(to)i(also)g (sp)q(o)q(of)h(this)e(name)f(serv)o(er's)g(IP)i(address,)f(it)89 2582 y(is)j(still)g(not)h(p)q(ossible)f(for)h(the)f(attac)o(k)o(er)g(to)h (imp)q(ersonate)e(another)i(host.)29 b(As)18 b(w)o(e)g(sa)o(w)h(in)f(the)965 2715 y(18)p eop %%Page: 19 19 18 bop 89 82 a Ft(previous)14 b(paragraph)i(3.7.2,)e(a)h(DNS)f(message)f(is)h (encrypted)f(with)i(the)e(name)g(serv)o(er's)g(priv)m(ate)89 142 y(k)o(ey)k(b)q(efore)i(it)f(is)g(sen)o(t)g(out.)29 b(The)18 b(creden)o(tials)g(are)g(part)h(of)g(the)f(message)g(and)h(are)g(therefore)89 203 y(also)11 b(encrypted.)19 b(An)10 b(attac)o(k)o(er)g(cannot)i(construct)f (the)f(correctly)g(encrypted)g(message)g(without)89 263 y(breaking)16 b(the)g(asymmetric)d(cryptosystem)i(used.)89 393 y Fe(3.7.4)55 b(Discussion)89 485 y Ft(The)16 b(v)m(alidation)g(of)h(in)o(tegrit)o(y)d(and) j(originator)g(of)f(the)g(message,)f(and)i(its)e(underlying)h(pattern)89 545 y(of)i(certi\014cations)g(stating)g(trust,)g(are)g(the)g(features)g(that) g(mak)o(e)f(this)g(approac)o(h)i(secure.)26 b(The)89 605 y(follo)o(wing)21 b(discussion)g(sho)o(ws)i(its)e(disadv)m(an)o(tages.)37 b(Some)20 b(of)i(them)e(are)h(serious)h(enough)g(to)89 666 y(restrain)16 b(from)f(an)i(implem)o(en)o(tati)o(on)d(of)j(this)f(approac)o(h)h(at)f(the)g (curren)o(t)g(time.)162 726 y(The)24 b(whole)g(pro)q(cedure)f(is)h(time)d (and)k(space)f(consuming.)43 b(Man)o(y)23 b(rather)h(long)g(public)89 786 y(k)o(eys)16 b(ha)o(v)o(e)g(to)h(b)q(e)g(stored)g(\(at)g(least)g(200)h (decimal)c(digits)j(long)g(eac)o(h)g(to)g(mak)o(e)e(the)h(public)g(k)o(ey)89 846 y(encryption)21 b(reasonably)h(strong.\))37 b(Obtaining)22 b(memory)c(for)k(them,)f(as)h(w)o(ell)e(as)i(additional)89 906 y(cac)o(he)17 b(memory)e(for)i(larger)h(resource)f(records,)h(is)f(not)i (a)f(problem)e(in)h(curren)o(t)g(arc)o(hitectures.)89 967 y(The)j(k)o(eys)f (m)o(ust)f(b)q(e)i(obtained)g(b)q(efore)g(they)g(can)g(b)q(e)g(used.)32 b(S.)19 b(Ken)o(t)g(describ)q(es)h(in)f([Ken93])89 1027 y(certi\014cate)c (based)i(k)o(ey)e(managemen)o(t)f(for)i(usage)h(in)f(Priv)m(acy)g(Enhanced)g (Mail)g(\(PEM\).)162 1087 y(W)l(e)f(will)f(not)h(go)h(in)o(to)f(more)e (detail)i(regarding)g(the)g(k)o(ey)f(distribution)g(pro)q(cess.)22 b(The)15 b(regis-)89 1147 y(tration)e(pro)q(cess)g(that)f(has)i(to)e(o)q (ccur)h(out{of{band)h(is)f(rather)f(cum)o(b)q(ersome.)17 b(The)12 b(calculations)89 1207 y(to)18 b(encrypt)g(and)g(decrypt)f(message)h(digests) g(ma)o(y)e(tak)o(e)h(to)q(o)j(long)e(to)g(supp)q(ort)h(the)f(e\016ciency)89 1267 y(goal)f(of)g(the)g(DNS.)f(The)h(additional)g(data)g(that)g(has)h(to)f (b)q(e)g(transmitted)e(w)o(ould)i(not)g(degrade)89 1328 y(p)q(erformance)c (to)q(o)j(badly)l(,)e(esp)q(ecially)f(if)g(faster)i(transmission)f(media)e(b) q(ecomes)i(broadly)g(a)o(v)m(ail-)89 1388 y(able,)22 b(but)g(the)f (calculation)g(o)o(v)o(erhead)g(for)h(encryption)f(and)h(decryption)f(cannot) h(easily)f(b)q(e)89 1448 y(amortized.)f(Ho)o(w)o(ev)o(er,)14 b(the)i Fh(RSA)g Ft(cryptosystem)e(is)i(a)o(v)m(ailable)g(in)g(hardw)o(are)h (and)g(a)f(dramatic)89 1508 y(p)q(erformance)g(increase)h(can)h(b)q(e)g (observ)o(ed,)f(compared)f(with)i(a)g(soft)o(w)o(are)f(implem)o(en)o(tation)e (of)89 1568 y(the)h(same)f(algorithms.)162 1629 y(The)21 b(implem)o(en)o (tation)d(of)k(suc)o(h)f(a)g(solution)h(is)e(a)i(ma)s(jor)e(e\013ort.)36 b(The)22 b(whole)f(k)o(ey)f(man-)89 1689 y(agemen)o(t)i(problem)g(is)h (complex)f(and)i(it)f(also)h(requires)e(additional)i(administrativ)o(e)d (e\013ort.)89 1749 y(Resolv)o(er)14 b(routines)h(and)h(name)e(serv)o(er)g (routines)h(ha)o(v)o(e)f(to)i(b)q(e)f(mo)q(di\014ed,)f(along)i(with)f(the)g (DNS)89 1809 y(proto)q(col.)21 b(The)14 b(impleme)o(n)o(tation)e(is)i (feasible,)f(though)i(v)o(ery)e(complex.)18 b(Another)c(dra)o(wbac)o(k)g(is) 89 1869 y(the)h(transition)g(phase)g(that)h(is)f(necessary)f(b)q(ecause)i(of) f(proto)q(col)h(c)o(hanges.)21 b(Decreased)14 b(p)q(erfor-)89 1930 y(mance)e(b)q(ecause)i(of)h(calculations)e(necessary)h(to)g(sign,)g (encrypt)f(and)i(decrypt)e(messages)g(w)o(ould)89 1990 y(b)q(e)j(noticeable)g (b)o(y)f(users)i(and)g(real-time)d(applications.)162 2050 y(Curren)o(tly)l(,) i(the)h(metho)q(d)g(seems)f(to)i(b)q(e)f(infeasible,)f(b)q(ecause)i(of)f(its) g(large)h(computational)89 2110 y(o)o(v)o(erhead.)i(F)l(urther)c(dra)o(wbac)o (ks)g(are)h(the)f(necessary)f(proto)q(col)i(c)o(hanges)g(and)f(the)g (complexit)o(y)89 2170 y(of)11 b(prop)q(er)h(k)o(ey)e(and)h(certi\014cate)f (managemen)o(t.)17 b(Ho)o(w)o(ev)o(er)9 b(with)i(further)g(adv)m(ances)g(in)g (pro)q(cessor)89 2231 y(sp)q(eed)24 b(and)g(some)f(reasonable)h(relaxation)g (on)g(requiremen)o(ts)d(for)j(strong)h(encryption)e(\(i.e.)89 2291 y(shorter)d(k)o(eys)f(increase)g(p)q(erformance)g(of)h Fh(RSA)g Ft(dramatically\))e(this)i(approac)o(h)g(can)g(b)q(ecome)89 2351 y(v)o(ery)15 b(attractiv)o(e)g(in)h(the)g(near)g(future.)965 2715 y(19)p eop %%Page: 20 20 19 bop 89 90 a Fu(4)83 b(Conclusions)25 b(and)j(Outlo)r(ok)89 200 y Ft(Where)19 b(host)h(iden)o(ti\014cation)f(is)g(part)h(of)g(the)f (authen)o(tication)g(b)q(et)o(w)o(een)g(comm)o(uni)o(cating)e(en-)89 260 y(tities)h(the)g(v)m(alidit)o(y)g(of)h(the)g(authen)o(tication)f(pro)q (cess)i(can)f(only)f(b)q(e)i(trusted)e(as)i(m)o(uc)o(h)d(as)i(the)89 320 y(resolution)c(pro)q(cess)h(that)f(supplies)g(the)g(bindings)g(b)q(et)o (w)o(een)g(high{lev)o(el)e(hostnames)i(and)h(lo)o(w{)89 381 y(lev)o(el)e(host)j(addresses.)162 441 y(This)f(is)g(a)h(signi\014can)o(t)f (problem,)e(b)q(ecause)j(it)e(exp)q(oses)i(probably)g(h)o(undreds)f(of)g (thousands)89 501 y(of)h(hosts)g(that)f(are)h(curren)o(tly)d(connected)i(to)h (the)f(In)o(ternet)f(to)h(the)g(threat)g(of)h(break-ins.)162 561 y(W)l(e)g(discussed)g(solutions)g(to)h(the)f(problem)e(with)i(the)g (concrete)f(instance)h(of)g(the)g(Domain)89 621 y(Name)g(System.)26 b(W)l(e)18 b(stressed)h(hardening)g(curren)o(t)f(implem)o(e)o(n)o(tations)e (of)j(the)f(name)g(serv)o(ers)89 682 y(and)k(put)f(emphasis)g(on)g(the)g(dev) o(elopmen)o(t)e(of)i(a)h(future)f(sc)o(heme)e(that)i(uses)h(cryptographic)89 742 y(metho)q(ds)16 b(to)g(giv)o(e)g(a)g(strong)i(guaran)o(tee)e(for)h (detection)e(of)h(sp)q(o)q(ofed)i(bindings.)89 908 y Fu(Ac)n(kno)n(wledgemen) n(ts)89 1018 y Ft(W)l(e)g(w)o(ould)g(lik)o(e)e(to)j(thank)f(CO)o(AST)g(sp)q (onsors)i(BNR,)d(T)l(riden)o(t)g(Data)i(Systems,)e(and)h(the)g(US)89 1078 y(Air)e(F)l(orce,)h(and)g(the)g(F)l(ulbrigh)o(t)f(Commission)f(for)j (supp)q(ort)g(that)g(aided,)e(in)h(part,)g(this)g(w)o(ork.)89 1138 y(Thanks)d(to)f(Stev)o(en)f(Bello)o(vin)f(whose)j(v)m(aluable)f(commen)n (ts)e(are)i(most)f(appreciated,)h(Dan)h(T)l(rin-)89 1198 y(kle)d(who)h(sho)o (w)o(ed)g(us)g(ho)o(w)g(to)g(master)e(some)h(of)h(the)f(subtle)g (di\016culties)f(of)i(the)f(DNS,)g(and)h(J.R.R.)89 1258 y(T)l(olkien)j(whose) i(fan)o(tasy)g(pro)o(vided)e(the)h(hostnames.)89 1425 y Fu(References)119 1534 y Ft([Bel89])23 b(Stev)o(en)11 b(M.)g(Bello)o(vin.)g Fi(Se)n(curity)j (Pr)n(oblems)f(in)h(the)f(TCP/IP)g(Pr)n(oto)n(c)n(ol)f(Suite)p Ft(.)j(A)l(T&T)289 1594 y(Bell)g(Lab)q(oratories,)j(Murra)o(y)d(Hill,)f(New)i (Jersey)l(,)f(April)g(1989.)119 1696 y([Bel90])23 b(Stev)o(en)e(M.)h(Bello)o (vin.)35 b Fi(Using)24 b(the)f(Domain)g(Name)g(System)g(for)f(System)h(Br)n (e)n(ak-)289 1756 y(ins)p Ft(.)d(A)l(T&T)15 b(Bell)e(Lab)q(oratories,)k (Murra)o(y)e(Hill,)e(New)h(Jersey)l(,)g(1990.)21 b(\(unpublished)289 1817 y(tec)o(hnical)15 b(rep)q(ort\).)119 1918 y([Bel92])23 b(Stev)o(en)18 b(M.)f(Bello)o(vin.)25 b(There)18 b(Be)g(Dragons.)29 b(In)18 b Fi(UNIX)i(Se)n(curity)f(Symp)n(osium)g(III)289 1978 y(Pr)n(o)n(c)n(e)n(e)n(dings)p Ft(,)c(pages)i(1{16,)h(Baltimore,)13 b(MD,)j(1992.)89 2080 y([Com91])23 b(Douglas)13 b(E.)d(Comer.)i Fi(Internetworking)i(with)f(TCP/IP)p Ft(.)f(Pren)o(tice-Hall,)e(Englew)o(o)q (o)q(d)289 2140 y(Cli\013s,)16 b(New)g(Jersey)l(,)f(second)i(edition,)e (1991.)103 2242 y([Den82])24 b(Doroth)o(y)g(E.)f(Denning.)41 b Fi(Crypto)n(gr)n(aphy)21 b(and)j(Data)f(Se)n(curity)p Ft(.)42 b(Addison-W)l(esley)289 2302 y(Publishing)17 b(Compan)o(y)l(,)e(Inc.,)f (1982.)124 2404 y([GS91])24 b(Simson)14 b(Gar\014nk)o(el)g(and)g(Gene)g (Spa\013ord.)20 b Fi(Pr)n(actic)n(al)15 b(UNIX)h(Se)n(curity)p Ft(.)j(O'Reilley)11 b(&)289 2464 y(Asso)q(ciates,)17 b(Inc.)e(Sebastop)q(ol,) i(CA.,)e(1991.)965 2715 y(20)p eop %%Page: 21 21 20 bop 103 82 a Ft([Ken93])23 b(Stephen)29 b(T.)f(Ken)o(t.)57 b Fi(RF)o(C-1422)28 b(Privacy)h(Enhanc)n(ement)h(for)f(Internet)h(Ele)n(c-) 289 142 y(tr)n(onic)16 b(Mail:)21 b(Part)15 b(II:)f(Certi\014c)n(ate-Base)n (d)j(Key)e(Management)p Ft(.)k(Net)o(w)o(ork)13 b(W)l(orking)289 203 y(Group,)k(F)l(ebruary)f(1993.)115 304 y([Lot94])25 b(Mark)18 b(Lottor.)25 b(In)o(ternet)17 b(Domain)f(Surv)o(ey)h(Jan)h(94.)25 b(SRI)17 b(In)o(ternational,)g(Jan)o(uary)289 364 y(1994.)104 466 y([Mer89])23 b(Ralph)17 b(C.)f(Merkle.)j(Snefru.)i(Xero)o(x)16 b(Corp)q(oration,)h(P)o(alo)g(Alto,)e(CA,)g(1989.)97 568 y([Mo)q(c87])24 b(P)o(aul)g(Mo)q(c)o(k)m(ap)q(etris.)42 b Fi(RF)o(C-1034)23 b(Domain)h(Names)g(-)h(Conc)n(epts)f(and)g(F)l(acilities)p Ft(.)289 628 y(Net)o(w)o(ork)16 b(W)l(orking)g(Group,)h(No)o(v)o(em)o(b)q(er) c(1987.)101 730 y([Mor85])24 b(R.)18 b(T.)g(Morris.)27 b(A)17 b(W)l(eakness)h(in)g(the)g(4.2BSD)g(UNIX)f(TCP/IP)i(Soft)o(w)o(are.)26 b(Com-)289 790 y(puting)15 b(Science)e(T)l(ec)o(hnical)h(Rep)q(ort)h(No.)f (117,)i(A)l(T&T)e(Bell)f(Lab)q(oratories,)j(Murra)o(y)289 850 y(Hill,)f(New)g(Jersey)l(,)g(F)l(ebruary)h(1985.)91 952 y([NBS77])23 b(NBS.)d(Data)c(Encryption)g(Standard.)21 b(National)15 b(Bureau)g(of)h (Standards,)h(W)l(ashing-)289 1012 y(ton)g(D.C.,)f(Jan.)g(1977.)23 b(FIPS)16 b(PUB)f(46.)119 1114 y([PH78])24 b(S.)19 b(P)o(ohlig)f(and)i(M.)e (Hellman.)26 b(An)18 b(Impro)o(v)o(ed)e(Algorithm)h(for)i(Computing)f(Loga-) 289 1174 y(rithms)d(o)o(v)o(er)h Fe(GF)p Ft(\(p\))g(and)h(its)g (Cryptographic)g(Signi\014cance.)j Fi(IEEE)e(T)l(r)n(ansactions)289 1234 y(on)g(Information)f(The)n(ory)p Ft(,)e(IT-24\(1\):106{10,)k(Jan)o(uary) e(1978.)126 1336 y([PL91])24 b(R.)14 b(P)o(aans)g(and)g(H.)f(de)g(Lange.)18 b(Auditing)13 b(the)g(SNA/SNI)g(En)o(vironmen)o(t.)h Fi(Computer)289 1396 y(&)k(Se)n(curity)p Ft(,)e(10\(3\):251{61,)j(Ma)o(y)d(1991.)114 1498 y([Riv92])23 b(Ronald)14 b(L.)g(Riv)o(est.)h Fi(RF)o(C-1321)f(The)h(MD5) g(Message-Digest)h(A)o(lgorithm)p Ft(.)h(Net)o(w)o(ork)289 1558 y(W)l(orking)g(Group,)g(April)e(1992.)90 1660 y([RSA78])23 b(R.)d(Riv)o(est,)g(A.)g(Shamir,)f(and)i(L.)g(Adleman.)31 b(A)20 b(Metho)q(d)h(for)g(Obtaining)f(Digital)289 1720 y(Signatures)g(and)f(Public) e(Key)h(Cryptosystems.)28 b Fi(Communic)n(ations)19 b(of)h(the)g(A)o(CM)p Ft(,)289 1780 y(21\(2\):120{6,)f(F)l(ebruary)d(1978.)115 1882 y([Sc)o(h93])23 b(Christoph)17 b(L.)e(Sc)o(h)o(uba.)20 b(Addressing)c(W)l (eaknesses)f(in)g(the)h(Domain)f(Name)f(System)289 1942 y(Proto)q(col.)32 b(Master's)19 b(thesis,)g(Purdue)h(Univ)o(ersit)o(y)l(,)d(W)l(est)i(Lafa)o(y) o(ette,)h(IN,)e(August)289 2002 y(1993.)115 2104 y([Sc)o(h94])23 b(Bruce)16 b(Sc)o(hneier.)j Fi(Applie)n(d)f(Crypto)n(gr)n(aphy)p Ft(.)h(John)e(Wiley)d(&)j(Sons,)f(Inc.,)f(1994.)121 2205 y([Ste90])24 b(Ric)o(hard)c(W.)f(Stev)o(ens.)31 b Fi(UNIX)21 b(Network)h(Pr)n(o)n(gr)n (amming)p Ft(.)30 b(Pren)o(tice-Hall,)18 b(Engle-)289 2266 y(w)o(o)q(o)q(d)g(Cli\013s,)e(New)g(Jersey)l(,)f(1990.)120 2367 y([T)l(ol65])24 b(John)g(R.)e(R.)g(T)l(olkien.)39 b Fi(The)23 b(L)n(or)n(d)f(of)h(the)g(R)o(ings)p Ft(.)40 b(Hough)o(ton)24 b(Mi\017in,)e(Boston,)289 2428 y(second)17 b(edition,)e(1965.)965 2715 y(21)p eop %%Trailer end userdict /end-hook known{end-hook}if %%EOF