A system , comprising: at least one computer; and at least one non-transitory computer-readable storage medium storing processor-executable instructions that, when executed by the at least one computer, cause the at least one computer to perform: receiving , via at least one network , a first communication from a device different from the at least one computer; identifying , from the first communication, a request to access a web resource; transmitting , via the at least one network , software code and location information to the device, without transmitting a visual representation of a challenge text, wherein the location information specifies a plurality of locations encoding the visual representation of a challenge text , and wherein the software code, when executed by an Internet browser, causes a plurality of graphical elements to be displayed at the plurality of locations in a webpage so that the webpage displays the challenge text ; receiving , via the at least one network , a second communication from the device; identifying , from the second communication, a response text; and providing the device with access to the web resource based on a comparison between the challenge text and the response text. at least one computer; and at least one non-transitory computer-readable storage medium storing processor-executable instructions that, when executed by the at least one computer, cause the at least one computer to perform: receiving , via at least one network , a first communication from a device different from the at least one computer; identifying , from the first communication, a request to access a web resource; transmitting , via the at least one network , software code and location information to the device, without transmitting a visual representation of a challenge text, wherein the location information specifies a plurality of locations encoding the visual representation of a challenge text , and wherein the software code, when executed by an Internet browser, causes a plurality of graphical elements to be displayed at the plurality of locations in a webpage so that the webpage displays the challenge text ; receiving , via the at least one network , a second communication from the device; identifying , from the second communication, a response text; and providing the device with access to the web resource based on a comparison between the challenge text and the response text. receiving , via at least one network , a first communication from a device different from the at least one computer; identifying , from the first communication, a request to access a web resource; transmitting , via the at least one network , software code and location information to the device, without transmitting a visual representation of a challenge text, wherein the location information specifies a plurality of locations encoding the visual representation of a challenge text , and wherein the software code, when executed by an Internet browser, causes a plurality of graphical elements to be displayed at the plurality of locations in a webpage so that the webpage displays the challenge text ; receiving , via the at least one network , a second communication from the device; identifying , from the second communication, a response text; and providing the device with access to the web resource based on a comparison between the challenge text and the response text. <EOS>