You might want to try Parkerizing. It is an extremely durable and corrosion resistant finish and it is very easy to do: Purchase some manganese(for a black finish. zinc parkerizing concentrate produces a gray to silver finish.) parkerizing concentrate (Brownell's, Midway, Calvan's, Shooters Solutions) Mix with distilled water according to directions, sandblast the parts or you can use Birchwood Casey blue remover which is phosphoric acid(so is Krud Kutter concrete cleaner and etcher), degrease/rinse the parts, plug the barrel on each end, heat the solution 180 to 200 degrees, dip the parts in, wait 15mins, take parts out, rinse in plain water, and oil liberally. Done. A nice charcoal black finish. This process is the factory finish used on many military rifles .
The dipping tank must be either stainless steel, or you can use PVC pipe with a water heater element in the bottom. Several guys on here and myself have this type of set-up and it works great. Just use a 3" to 6" PVC pipe about 45 inches long or so, get a reducing coupling to 2" and a 2" PVC bushing with female 1" pipe threads. Purchase a 1500 watt 110 volt water heater element.(all at Lowes)PVC glue all the pipe components, except the female threaded bushing. The threads on the water heater element and the bushing are not a perfect match, but you can force them to screw in, just make sure you hold it straight while doing so. It will seal, I have made two of them with no leaking. After you thread the element into the bushing and before you glue it in, mask the glue area and paint the electrode with several coats of BBQ high heat paint( I had to learn this the hard way, the solution will eat the copper electrode, and the copper will kill the solution.) now glue it in and hook a up a 110 cord. I used plain old DWV PVC white pipe, some guys used black ABS pipe because it has a higher temp rating. Plain PVC works fine, and whether you use this or the ABS make sure you never plug it in unless there is solution in it.(the solution keeps it from melting. You can boil water in a plastic pop bottle over an open flame and it will not melt--same principle.) Also, do not boil the solution. You can use a meat or candy thermometer to keep a check on the temp. I also used a cheap rotary light dimming switch as a "thermostat", but it isn't necessary, just put the parts in at the low temp, and when it gets to high temp unplug it, monitor temp and plug back in if needed until 15 mins are up. The "thermostat" makes it nice though, you can set it to a pre-determined temp setting and walk off and do something else while its heating and not have to keep a close eye on it. This set-up will boil over very quickly(learned this the hard way too;D )without one.
Hope this helps.