Hi Richard!
Cycling in the sometimes corrosive alkali playa of the Great Basin, I've run into this problem myself.
I've replaced most of my bolts with stainless-steel equivalents. To keep the same appearance as the originals, I have sometimes turned the heads into a domed shape.
A few years back, I purchased some rubber plugs to fill the sockets in 5mm and 6mm allen (socket-head) bolts. These keep out moisture and fine dust that can concretize once it gets wet. I got mine from source in central China that has since gone away, but many new bikes come with identical plugs in their threadless stem caps. Most bike shops (here, anyway) consider them a nuisance and promptly throw them away. Occasionally, they are free for the asking -- or suddenly become the most valuable of floor sweepings to command high prices when asked-for!
Back in my uni days when such pre-made plugs were unavailable, I made my own, using the socket as a mold and RTV (Room-Temperature Vulcanizing silicone) as the media. The procedure is easy: Use a cotton-tipped swab to coat the socket with a light grease or Vaseline to serve as a mold release, then quirt some RTV in, making sure you start at the bottom and have no trapped air bubbles. In 48 hours, use a double-ended wooden cocktail toothpick to extract the plug, then invert and reinsert it in the socket, lying on a thin skim of grease or Vaseline -- Done. Moisture is no longer trapped in the socket well (where the concave surface makes plating the thinnest), so rust cannot get established or progress. If you start with a fresh allen bolt, it can serve as a mold for all the socket-head bolts on your bike, and you can make whatever size you wish.
As a small side benefit, it makes the ready fitting of an allen key for unauthorized removal that little bit more difficult -- few thieves carry wooden cocktail toothpicks with them.
As for stainless chainring bolts...Problem Solvers (a division of American distributor QBP - Quality Bike Products) has them. One example:
http://www.amazon.com/Problem-Solvers-Chainring-Bolts-Stainless/dp/B0025UH4BG I've purchased a number of these and found them helpful in stopping half the rust issue. Why only half? These are chainring
bolts, not the
pegs (sleeve nuts).
ActionTec make full Ti sets, available here:
http://www.actiontec.us/ti&steel.htm Be sure to use a Ti-compatible grease on the threads to prevent galling.
I have sourced stainless-steel chainring bolt/peg sets from Stronglight in the past, but not all were stainless, so it pays to check and confirm before ordering.
SJS Cycles' full selection of chainset spares is here:
http://www.sjscycles.co.uk/chainsets-spares-dept257_pg1/#page=...with stainless bolt/peg sets listed as well, including this example for single chainrings, likely to suit many Rohloff users:
http://www.sjscycles.co.uk/id-stainless-steel-chainring-bolts-m8-x-075-single-65-mm-nuts-pack-of-5-prod27216/When it comes to chainring bolts, size
does matter: They have to be matched in length to what you have, and they come in three basic flavors: Single, Double, and Triple (110/74 and 104/58 cranksets require Double bolts for the middle and outer rings; old-school concentric triples require Triple bolts to secure all three rings on one bolt/peg). Best to extract yours and measure the length of the threaded portion before ordering.
Hope this helps.
Best,
Dan.