A data masking tool can support a wide variety of data sources and execution mechanisms. For example, any of a wide variety of data masking techniques can be achieved via a web interface, API, command line, SOA, or the like. Connectivity to mainframe environments can be achieved. Multiple data source types and data to and from different technology platform types can be supported. The tool can support interfacing with a metadata management tool. High quality randomness can be provided by a Mersenne Twister random number generator. The tool can be useful for performing data masking during software testing without having to write data masking code.