They are acid based and interact with the oxides (rust) and convert them to a stable organic compound that simply can't rust.
A friend of mine says to wipe the bare metal panel with kerosene to preserve it and avoid flash rust. All of the kerosene needs to come off with a degreaser before any primer. I have not tried this, so it's just something I heard about.
Now this next part, I have done myself. I'm no expert, so do some research before you act on my comments.
I wanted to prevent flash rust on some body panels with fresh bare metal, so I used a product called
Picklex 20. I have the MSDS for it if you want to see it. It's basically a phosphoric acid wash solution.
Anyway, you spray it on bare metal and scrub it around with a scotch-brite pad so that it's very thin. It will soak into small pores and convert light rust as well as preserve the metal from flash rust for at least a year if you keep the panel in a dry place.
The only real problem is that since it is an acid product, it is not compatable with etch primers (or any acid based primer for that matter). There are primers that ARE compatable, you just need to plan ahead.
My final plans for my panels are to select an epoxy primer and then re-sand or sandblast the panels if necessary in case of any compatability issues - but only if necessary.
The rust converters I have used will only convert rust that they come into contact with, but not the deeper layers. Therefore, all rust scale must be removed. If not, the surface rust converts to the black iron oxide coating as claimed by the product, but if you scratch below that surface, the rust is still there. To me, rust converters seem merely cosmetic and will not provide a lasting protection against rust.
I'm interested in hearing what experience others have had.