13. A computer system for determining if a user of a computer system is a human or an automated program, the computer system comprising: one or more computer processors; one or more computer readable storage media; program instructions stored on the computer readable storage media for execution by at least one of the one or more computer processors, the program instructions comprising: program instructions to acquire at least one image depicting a first string of characters including at least a first set of one or more characters and a second set of one or more characters; program instructions to assign a first substitute character to be used as input for each of the second set of one or more characters; program instructions to present the at least one image to a user; program instructions to present, in association with the at least one image, an indication of the first substitute character and an indication of when to use the first substitute character to the user, wherein the first substitute character is a different character than any of the second set of one or more characters; program instructions to receive a second string of characters from the user; program instructions to determine whether the second string of characters substantially matches, within a predetermined threshold, the first string of characters based on the first substitute character assigned to each of the second set of one or more characters; and program instructions to determine whether the user is a human based on whether the second string of characters substantially matches, within a predetermined threshold, the first string of characters.
15. The computer system of claim 13 , wherein the first string of characters further includes a third set of one or more characters, further comprising: program instructions, stored on at least one of the one or more computer readable storage media for execution by at least one of the one or more processors, to assign a second substitute character to be used as input for each of the third set of one or more characters; and program instructions, stored on at least one of the one or more computer readable storage media for execution by at least one of the one or more processors, to present an indication of the second substitute character and an indication of when to use the second substitute character to the user.