how about a umbrella? a real one that opens wide.
 i read a bit about a hiker in the UK who did local country lanes 
 and he said a open umbrella works to stave off dogs.popped open
  between you and Fido he said it confuses them and acts as a shield.i assume he was talking about "barking at the garden gate"
 dogs who got loose and not charging packs of Mastiff's
  good for nice walks on rainy days too!