posted 10 years ago
Thinking about this from a chemistry viewpoint, there are two things that can be done: (1) lay down a thin (on the order of microns) layer of mineral oil, paraffin, beeswax, or whatever non-volatile organic is handy. This is not going to react with the concrete, just sit on top of it, clogging up the pores and preventing any water based liquids from sinking in. Of course, every time you wash the floor using a soap or detergent, a little bit of the coating disappears. Even if you wipe vigorously with water in a mop, the fibers of the mop may help to create a wax/water emulsion and remove a little bit of the coating. If you went this route, you would have to periodically renew the coating.
Method #2 is to put down a coating of a "drying" oil like linseed oil. Drying oils are ones with enough double bonds in the molecules to polymerize on the surface of the substrate, and after they polymerize, they aren't going to dissolve in mop water, no matter what chemicals you add to the water. The only way this coating is coming off is by friction, like a dance party of people with sand on their shoes. If you do decide to try a drying oil treatment, remember that the oil has to polymerize, until it does, it is just like a coating of mineral oil. There are two ways to initiate polymerization after you have applied the linseed oil, chemically, with a polymerization initiator like benzoyl peroxide, or UV light. A few days of direct sunlight on the floor (direct, not through window glass) should be enough UV to "dry" (polymerize really) the oil.
On edit: polyurethanes and epoxies may be a subset of method #2, if they polymerize after they are laid down on the surface. Chemists are into finding newer and better molecules to take the place of older techniques, so it is quite likely that they have improved on the centuries oil method of using linseed oil.