Patent attributes
This disclosure includes techniques for using distributed computing over a network to resolve difficult computational problems. Anonymization of the data allows computing devices in the distributed computing system to solve the computational problem without exposing private aspects of the data. Individual computing devices receive instructions and data that correspond to a piece of a larger computational problem. In one implementation, a user may request a webpage from a web server and receive the webpage along with commands in a scripting language that instructs the user's computer to process a piece of the larger computational problem. The web server may assign the piece of the problem to the user's computer based on processing capabilities of the user's computer. Combining solutions received from multiple distributed computing devices and reversing the anonymization process yields a solution to the computational problem.