여러 그룹이 1990년대 후반과 2000년대 초반에 초기 형태의 CAPTCHA 기술을 동시에 개발했습니다. 각 그룹은 인터넷에서 불법적인 활동을 위해 봇을 사용하는 해커들의 광범위한 문제를 해결하기 위해 노력했습니다. 예를 들어, 검색 엔진 AltaVista에서 일하는 컴퓨터 과학자들은 봇이 회사의 링크 데이터베이스에 악성 웹 주소를 추가하는 것을 막고자 했습니다.
IT 회사인 Sanctum의 연구원들은 1997년에 최초의 CAPTCHA 스타일 시스템을 제출했습니다. 그러나 Luis von Ahn과 Manuel Blum이 이끄는 Carnegie Mellon University의 컴퓨터 과학 연구원 그룹이 2003년에 CAPTCHA라는 용어를 처음 도입했습니다. 이 팀은 수백만 개의 가짜 이메일 계정에 가입하는 스팸봇과 관련된 회사의 문제에 대해 이야기한 Yahoo 임원으로부터 이 기술에 대한 영감을 받았습니다.
Yahoo의 문제를 해결하기 위해 von Ahn과 Blum은 다음을 수행하는 컴퓨터 프로그램을 만들었습니다.
- 임의의 텍스트 문자열을 생성합니다.
- 해당 텍스트의 왜곡된 이미지('CAPTCHA 코드'라고 함)를 생성합니다.
- 사용자에게 이미지를 표시합니다.
- 사용자에게 양식 필드에 텍스트를 입력한 다음 '로봇이 아닙니다.'라는 문구 옆의 확인란을 클릭하여 항목을 제출하도록 요청합니다.
당시의 OCR 기술은 이렇게 왜곡된 텍스트를 해독하는 데 어려움을 겪었기 때문에 봇은 CAPTCHA 챌린지를 통과할 수 없었습니다. 사용자가 올바른 문자열을 입력하면 사용자가 사람이라고 확실하게 가정할 수 있으며 계정 등록 또는 웹 양식 제출을 완료할 수 있습니다.
Yahoo는 Carnegie Mellon의 기술을 구현하여 모든 사용자가 이메일 주소를 등록하기 전에 CAPTCHA 테스트를 통과하도록 요구했습니다. 이를 통해 스팸봇 활동이 크게 줄어들었고 다른 기업들도 웹 양식을 보호하기 위해 보안 문자를 채택하기 시작했습니다. 그러나 시간이 지남에 따라 해커는 완료된 CAPTCHA 챌린지의 데이터를 사용하여 CAPTCHA 테스트를 안정적으로 통과할 수 있는 알고리즘을 개발했습니다. 이는 CAPTCHA 개발자와 사이버 범죄자 간의 지속적인 경쟁의 시작을 의미했고, 이는 CAPTCHA 기능의 발전을 촉진했습니다.