KR20190091529A - 검증 코드에 기초한 검증 방법 및 장치 - Google Patents

검증 코드에 기초한 검증 방법 및 장치 Download PDF

Info

Publication number
KR20190091529A
KR20190091529A KR1020197019777A KR20197019777A KR20190091529A KR 20190091529 A KR20190091529 A KR 20190091529A KR 1020197019777 A KR1020197019777 A KR 1020197019777A KR 20197019777 A KR20197019777 A KR 20197019777A KR 20190091529 A KR20190091529 A KR 20190091529A
Authority
KR
South Korea
Prior art keywords
verification
character
verification code
string
user
Prior art date
Application number
KR1020197019777A
Other languages
English (en)
Other versions
KR102194072B1 (ko
Inventor
차오 시우
레이 왕
싱 첸
추안지 리
용지 장
Original Assignee
알리바바 그룹 홀딩 리미티드
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 알리바바 그룹 홀딩 리미티드 filed Critical 알리바바 그룹 홀딩 리미티드
Publication of KR20190091529A publication Critical patent/KR20190091529A/ko
Application granted granted Critical
Publication of KR102194072B1 publication Critical patent/KR102194072B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • G06F21/36User authentication by graphic or iconic representation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0863Generation of secret information including derivation or calculation of cryptographic keys or passwords involving passwords or one-time passwords
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3226Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using a predetermined code, e.g. password, passphrase or PIN
    • H04L9/3228One-time or temporary data, i.e. information which is sent for every authentication or authorization, e.g. one-time-password, one-time-token or one-time-key
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2133Verifying human interaction, e.g., Captcha
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/06Authentication

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • User Interface Of Digital Computer (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Storage Device Security (AREA)
  • Document Processing Apparatus (AREA)

Abstract

본 출원의 구현예는 검증 코드에 기초한 검증 방법 및 장치를 개시한다. 방법은 검증 요청을 수신하는 단계; 검증 요청을 수신한 후에 미리 생성된 제 1 문자열을 획득하는 단계 - 제 1 문자열은 적어도 하나의 가변 문자를 포함함 - ; 가변 문자와 백업 문자 간의 미리 확립된 대응 관계에 기초하여 일부 또는 모든 가변 문자를 백업 문자로 치환하여 제 2 문자열을 획득하는 단계; 및 제 2 문자열에 기초하여 검증 코드를 생성하고, 검증 요청에 대응하는 사용자를 검증하는 단계를 포함한다. 본 출원의 구현예에 있어서, 사용자에 의한 검증 코드의 인식 정밀도가 증가될 수 있고, 검증 프로세스에서 소비되는 시간이 감소될 수 있다. 또한, 컴퓨터 프로그램에 의한 검증 코드의 인식의 어려움이 증가될 수 있고, 컴퓨터 프로그램이 허가되지 않은 동작을 수행할 가능성이 효과적으로 감소될 수 있다.

Description

검증 코드에 기초한 검증 방법 및 장치
본 출원은 컴퓨터 기술 분야에 관한 것이고, 특히 검증 코드에 기초한 검증 방법 및 장치에 관한 것이다.
현재, 자동 계정 생성방 방지 기술(Completely Automated Public Turing test to tell Computers and Humans Apart; CAPTCHA)로도 불리는, 검증 코드가 보안 증 방법으로서 널리 사용된다. 검증 코드는 오퍼레이터(operator)가 사용자인지 허가되지 않은 프로그램인지를 결정하는데 사용될 수 있다. 검증 코드는 사용자 계정에 로그인하기 위한 악의적인 시도, 열거(enumeration)를 통한 사용자 패스워드 크래킹, 또는 스크립트 제어를 통한 판매량 조작 또는 스피킹(speaking)과 같은 허가되지 않은 동작들을 방지할 수 있다.
기존의 기술에서는 허가되지 않은 프로그램이 검증 코드를 자동으로 인식하는 것을 방지하기 위해 검증 코드를 디스플레이하는 방법이 점점 복잡해지고 있다. 일반적으로, 이하의 방법사용하여 검증 코드가 디스플에이된다: 제 1 방법에서, 도 1a에 도시된 바와 같이, 검증 코드는 번호 또는 텍스트를 사용하여 표현되고, 검증 코드 디스플레이 영역에 배경이 추가되거나 번호 또는 텍스트가 왜곡되어 검증 코드의 간섭을 향상시킨다. 제 2 방법에서, 도 1b에 도시된 바와 같이, 복수의 화상 및 프롬프트 정보가 제공되어, 사용자가 프롬프트 정보에 기초하여 복수의 유사한 화상으로부터 대응하는 양의 특정 화상을 인식하게 한다.
그러나, 이전 방법에서, 비교적 복잡한 방법을 사용하여 검증 코드가 디스플레이되었다. 허가되지 않은 스크립트의 자동 인식이 방해받을 수 있지만, 사용자에게 또한 추가적인 간섭이 발생한다. 다르게 말하면, 이전 검증 코드가 사용자에게 디스플레이된 후, 사용자가 검증 코드를 잘못 인식할 가능성이 높아진다. 에러가 발생하면, 검증이 성공할 때까지 사용자는 검증 코드를 새로 고침하고 새로 생성된 검증 코드를 계속 인식해야한다. 분명히, 기존 기술에서의 이전 검증 프로세스는 긴 시간이 걸릴 수 있다. 특히, 인식 에러가 발생하면, 사용자는 반복적으로 검증을 수행할 필요가 있다.
본 출원의 구현예는, 사용자가 검증 코드를 잘못 인식할 가능성이 있기 때문에 검증 프로세스에서 비교적 긴 시간이 소비되는 기존 기술의 문제점을 완화시키기 위해, 검증 코드에 기초한 검증 방법을 제공한다.
본 출원의 구현예는, 사용자가 검증 코드를 잘못 인식할 가능성이 있기 때문에 검증 프로세스에서 비교적 긴 시간이 소비되는 기존 기술의 문제점을 완화시키기 위해, 검증 코드에 기초한 검증 장치를 제공한다.
다음의 기술 솔루션이 본 출원의 구현예에서 사용된다.
본 출원의 구현예는 검증 코드에 기초한 검증 방법을 제공하며, 이 검증 방법은: 검증 요청을 수신하는 단계; 검증 요청을 수신한 후에 미리 생성된 제 1 문자열을 획득하는 단계 - 제 1 문자열은 적어도 하나의 가변 문자를 포함함 - ; 가변 문자와 백업 문자 간의 미리 확립된 대응 관계에 기초하여 일부 또는 모든 가변 문자를 백업 문자로 치환하여 제 2 문자열을 획득하는 단계; 및 제 2 문자열에 기초하여 검증 코드를 생성하고, 검증 요청에 대응하는 사용자를 검증하는 단계를 포함한다.
본 출원의 구현예는 검증 코드에 기초한 검증 장치를 제공하며, 이 검증 장치는: 검증 요청을 수신하도록 구성된 수신 모듈; 검증 요청이 수신된 후에 미리 생성된 제 1 문자열을 획득하도록 구성된 취득 모듈 - 제 1 문자열은 적어도 하나의 가변 문자를 포함함 - ; 가변 문자와 백업 문자 간의 미리 확립된 대응 관계에 기초하여 일부 또는 모든 가변 문자를 백업 문자로 치환하여 제 2 문자열을 획득하도록 구성되는 치환 모듈; 및 제 2 문자열에 기초하여 검증 코드를 생성하고, 검증 요청에 대응하는 사용자를 검증하도록 구성된 검증 모듈을 포함한다.
본 출원의 구현예에서 사용된 기술적 해결책 중 적어도 하나는 다음의 유익한 효과를 달성할 수 있다:
서비스 제공자의 서버가 사용자를 검증할때, 서버는 검증 코드에 대해 문자 치환(character replacement) 동작을 수행한다. 사용자의 경우, 문자 치환를 통해 생성된 검증 코드는 검증 코드의 의미를 학습하는 측면에서 사용자에게 영향을 미치지는 않는다. 또한, 본 출원의 구현예에서의 검증 코드에서의 문자는 문자 왜곡, 색 변화 또는 배경 추가되지 않는다. 이와 같이, 사용자는 편리하고 정확하게 검증 코드를 인식할 수 있다. 컴퓨터 프로그램의 경우, 문자 치환 후에 얻어진 검증 코드는 복수의 문자 유형을 포함할 수 있으며, 통상적인 신택스를 따르지 않는다. 이와 같이, 컴퓨터 프로그램은 인식 알고리즘에 기초하여 검증 코드가 지시하는 콘텐츠를 효과적으로 인식하기가 어렵고, 따라서 컴퓨터 프로그램이 허가되지 않은 동작을 수행할 가능성을 효과적으로 감소시킬 수 있다.
본 출원의 구현예에서 제공된 검증 방법은, 기존 기술에서의 검증 방법과 비교하여, 검증 코드의 식별력을 증가시켜, 사용자가 검증 코드의 의미를 직관적으로 학습할 수 있게 한다. 그러므로, 사용자에 의한 검증 코드의 인식 정밀도가 증가될 수 있고, 검증 프로세스에서 소비되는 시간이 감소될 수 있다. 또한, 컴퓨터 프로그램에 의한 검증 코드의 인식의 어려움이 증가될 수 있고, 컴퓨터 프로그램이 허가되지 않은 동작을 수행할 가능성이 효과적으로 감소될 수 있다.
여기에 기술된 첨부 도면은 본 출원의 추가의 이해를 제공하기 위한 것이며 본 출원의 일부를 구성한다. 본 출원의 예시적인 구현 및 그 구현예의 설명은 본 출원을 설명하기 위한 것이며, 본 출원에 대한 제한을 부여하지 않는다. 첨부되는 도면에서:
도 1a 및 도 1b는 기존 기술에서의 검증 코드를 예시하는 개략도이다.
도 2a는 본 출원의 구현예에 따른, 검증 코드에 기초한 검증 프로세스가 기초되는 아키텍처를 예시하는 개략도이다.
도 2b는 본 출원의 구현예에 따른, 검증 코드에 기초한 검증을 위한 프로세스를 예시하는 개략도이다.
도 3은 본 출원의 구현예에 따른, 문자 치환에 사용된 검증 코드를 생성하는 방법이 기초되는 아키텍처를 예시하는 개략도이다.
도 4a 및 도 4b는 본 출원의 구현예에 따른, 상이한 검증 방법에서의 검증 인터페이스를 예시하는 개략도이다.
도 5는 본 출원의 구현예에 따른, 검증 코드에 기초한 검증 장치를 예시하는 개략적인 구조도이다.
본 출원의 목적, 기술적 해결책, 및 장점을 보다 명확하게하기 위해, 본 출원의 특정 구현예 및 첨부 도면을 참조하여 본 출원의 기술적 해결책을 포괄적으로 설명한다. 명백하게, 설명된 구현예는 본 출원의 구현예의 모두이기 보다는 단지 일부이다. 창조적인 노력없이 본 출원의 구현예에 기초하여 본 분야의 당업자에 의해 얻어진 다른 구현예들은 본 출원의 보호 범위 내에 있다.
본 출원의 구현예에서, 검증 프로세스는 도 2a에 도시된 아키텍처에 기초될 수 있고, 검증 프로세스는 온라인 서비스 제공자의 백 엔드(back end) 상의 서버에 의해 구현될 수 있다는 것이 주목할만 하다. 온라인 서비스 제공자는 웹사이트, 통신 오퍼레이터 또는 데이터 센터와 같은 온라인 서비스를 제공할 수 있은 서비스 제공자를 포함하지만 이에 한정되지 않는다. 검증 프로세스를 구현하는데 사용되는 서버는 보안 유지 관리를 담당하는 서버, 예를 들어 온라인 서비스 제공자의 백 엔드 상의 보안 센터 서버일 수 있다. 여기서 본 출원에 제한이 부과되지 않는다. 후속하는 설명에서 ,온라인 서비스 제공자의 백 엔드 상의 서버를 총괄적으로 서버로 칭한다.
사용자는 온라인 서비스 제공자가 제공하는 서비스를 이용하는 오퍼레이터로 이해될 수 있다. 본 출원의 구현예의 검증 시나리오에서, 허가된 오퍼레이터는 실제 사람이고, 허가되지 않은 오퍼레이터는 컴퓨터 스크립트, 프로그램 등이다는 것을 주목할만 하다.
본 출원의 구현에 제공된 기술적 해결책은 첨부 도면을 참조하여 이하 상세히 설명된다.
도 2b는 본 출원의 구현예에서의 검증 코드에 기초한 검증을 위한 프로세스를 도시한다. 프로세스는 이하의 단계를 포함한다.
S201. 검증 요청을 수신한다.
본 출원의 이러한 구현예에서, 검증 요청은 일반적으로 검증이 트리거된 후에 생성된다. 실제 동작에서, 검증 요청은 사용자에 의해 트리거되거나, 또는 실제 애플리케이션에서의 요구에 기초하여 서버에 의해 트리거될 수 있다.
가능한 시나리오에서, 사용자는 검증 요청을 능동적으로 전송할 수 있다. 이 경우, 검증 요청은 검증 코드에 기초한 검증을 위한 프로세스를 트리거하는데 사용된다. 이 시나리오의 구현에서, 검증 코드에 기초한 검증 프로세스는 계정 로그인에 사용될 수 있다. 다시 말해, 사용자가 로그인 인터페이스(예를 들어, 웹사이트의 계정 로그인 인터페이스)에 들어간 후에, 사용자가 검증 요청을 전송한 것으로 간주 할 수 있으며, 서버는 그에 상응하여 사용자가 전송한 검증 요청을 수신한다.
다른 가능한 시나리오에서, 서버는 대응하는 보안 규칙에 기초하여 사용자의 아이덴티티(identity)를 검증할 수 있다. 예를 들어, 서버는 미리 결정된 사이클에서 검증 코드를 능동적으로 생성한다. 대안적으로, 사용자의 일부 동작이 위험하다고 결정할 때, 서버는 검증 코드를 능동적으로 생성하고 사용자에 대한 검증을 개시하여, 동작이 컴퓨터 프로그램에 의해 수행되지 않았다고 결정한다. 명백하게, 여기서 본 출원에 제한이 부과되지 않는다.
S202. 검증 요청을 수신한 후에, 미리 생성된 제 1 문자열을 획득한다.
제 1 문자열은 적어도 하나의 가변 문자를 포함한다.
제 1 문자열은 숫자, 텍스트 등을 포함하는 마킹 문자열로서 이해될 수 있으며, 지시(indication) 기능을 가진다.
실제 애플리케이션 시나리오에서, 마킹 문자열은 컴퓨터 프로그램에 의해 쉽게 인식됨으로써, 검증 프로세스의 위험을 증가시킨다. 따라서, 본 출원의 구현예에서, 제 1 문자열은 가변 문자(variable character)를 포함하고, 가변 문자는 다른 문자로 치환되어 간섭 효과를 갖도록 할 수 있다.
S203. 가변 문자와 백업 문자(backup character) 간의 미리 확립된 대응 관계에 기초하여 일부 또는 모든 가변 문자를 백업 문자로 치환하여 제 2 문자열을 획득한다.
백업 문자는 가변 문자와 동일한 유형의 문자일 수 있다. 예를 들어, 백업 문자와 가변 문자 모두는 한자, 영자, 또는 숫자이다. 대안적으로, 백업 문자 및 가변 문자는 상이한 유형의 문자일 수 있다. 본 출원의 구현예에서, 한자는 핀인(pinyin)으로 변경될 수 있다. 예를 들어, "
Figure pct00001
"은 "hong"으로 변경될 수 있다. 다른 구현예에서, 특정 단어(또는 구절)는 동음이의어(homophonous) 단어(또는 구절)로 변경될 수 있다. 예를 들어, "
Figure pct00002
"은 "
Figure pct00003
"로 변경될 수 있다.
문자 치환 후에 획득된 제 2 문자열의 의미는 변경되지 않는다, 즉 사용자가 여전히 검증 코드의 의미를 학습하고 그 검증 코드에 기초하여 대응하는 동작을 수행할 수 있다는 것이 주목할만 하다.
S204. 제 2 문자열에 기초하여 검증 코드를 생성하고, 검증 요청에 대응하는 사용자를 검증한다.
실제 동작에서, 검증 코드는 화상(picture) 또는 텍스트 정보의 포맷으로 디스플레이될 수 있고, 사용자에게 특정 동작을 수행하도록 지시하는데 사용된다. 여기서 본 출원에 제한이 부과되지 않는다.
제 2 문자열은 문자 치환 후에 획득된 문자열이다. 따라서, 제 2 문자역에 기초하여 생성된 검증 코드는 간섭 효과를 가질 수 있다. 문자 왜곡, 색 변화, 또는 배경 추가와 같은 기존 기술의 간섭 방법과 비교할 때, 본 출원의 구현예에서 문자 치환 이후에 획득된 검증 코드의 의미는 변경되지 않는다. 또한, 복잡한 방법을 사용하여 검증 코드를 디스플레이하지 않기 때문에 사용자는 검증 코드의 의미를 학습할 수 있고 검증 코드를 쉽게 인식할 수 있다. 또한, 문자 치환이 수행되기 때문에, 머신이 검증 코드를 인식하는 것은 어렵다.
이전 설명에서, 검증 코드가 생성된 후에, 대응하는 오퍼레이터(즉, 사용자)에 대해 검증이 수행되어 오퍼레이터가 사용자인지 또는 컴퓨터 프로그램인지를 결정할 수 있다.
명백하게, 본 출원의 실현가능한 구현예에서, 검증 코드는 대응하는 검증 인터페이스(예를 들어, 로그인 인터페이스)에서 사용자에게 디스플레이될 수 있고, 사용자가 검증 코드에 기초하여 대응하는 동작을 수행한 후에, 마킹 검증 정보에 기초한 동작에 대해 검증이 수행된다.
이전 단계에 기포하여, 서비스 제공자의 서버가 사용자를 검증할 때, 서버는 검증 코드에 대해 문자 치환 동작을 수행한다. 사용자의 경우, 문자 치환를 통해 생성된 검증 코드는 검증 코드의 의미를 학습하는 측면에서 사용자에게 영향을 미치지는 않는다. 또한, 본 출원의 이 구현예에서의 검증 코드에서의 문자는 문자 왜곡, 색 변화 또는 배경 추가되지 않는다. 이와 같이, 사용자는 편리하고 정확하게 검증 코드를 인식할 수 있다. 컴퓨터 프로그램의 경우, 문자 치환 후에 얻어진 검증 코드는 복수의 문자 유형을 포함할 수 있으며, 통상적인 신택스를 따르지 않는다. 이와 같이, 컴퓨터 프로그램은 인식 알고리즘에 기초하여 검증 코드가 지시하는 콘텐츠를 효과적으로 인식하기가 어렵고, 따라서 컴퓨터 프로그램이 허가되지 않은 동작을 수행할 가능성을 효과적으로 감소시킬 수 있다.
본 출원의 이 구현예에서 제공된 검증 방법은, 기존 기술에서의 검증 방법과 비교하여, 검증 코드의 식별력을 증가시켜, 사용자가 검증 코드의 의미를 직관적으로 학습할 수 있게 한다. 그러므로, 사용자에 의한 검증 코드의 인식 정밀도가 증가될 수 있고, 검증 프로세스에서 소비되는 시간이 감소될 수 있다. 또한, 컴퓨터 프로그램에 의한 검증 코드의 인식의 어려움이 증가될 수 있고, 컴퓨터 프로그램이 허가되지 않은 동작을 수행할 가능성이 효과적으로 감소될 수 있다.
본 출원의 이러한 구현에서, 검증 코드에 대한 문자 치환이 수행된 후에 검증 코드의 의미가 변경되지 않기 때문에, 검증 코드의 문자는 실제로 동성이의어 문자 또는 동의어 문자로 치환된다는 것이 주목할만 하다. 즉, 가변 문자와 백업 문자 간의 대응 관계를 미리 확립하는 것은 구체적으로, 임의의 가변 문자의 적어도 하나의 동성이의어 문자 및/또는 동의어 문자를 결정하는 것, 결정된 동성이의어 문자 및/또는 동의어 문자를 가변 문자의 백업 문자로서 사용하는 것, 및 가변 문자와 백업 문자 간의 대응 관계를 확립하는 것을 포함한다.
상술된 제 1 문자열은 대응하는 검증 코드 생성 규칙에 기초하여 미리 생성되어 서버 측의 데이터베이스에 저장되는 것으로 간주될 수 있고, 도 3은 제 1 문자열을 생성하는 아키텍처의 개략도이다.
문자 치환 도중에, 일부 가변 문자만 치환될 수 있다. 예를 들어, 특정 검증 코드의 문자열은 "
Figure pct00004
"의 문자열일 수 있다. 문자열에서 6개의 중국어 문자가 모두 가변 문자라고 가정한다. 실제 동작에서는, 2개의 가변 문자 "
Figure pct00005
" 및 "
Figure pct00006
"만 치환될 수 있다. 2개의 가변 문자가 각각 백업 문자 "
Figure pct00007
" 및 "
Figure pct00008
"에 대응한다고 가정한다. 따라서, 가변 문자가 백업 문자로 치환된 후에 획득된 제 2 문자열은 "
Figure pct00009
"이다.
물론, 모든 문자가 치환될 수 있다. 예를 들어, 제 1 문자열 "
Figure pct00010
”에서 2개의 문자가 모두 가변 문자이고, 2개의 문자에 각각 대응하는 백업 문자는 핀인 "hong" 및 "qiu"이다고 가정한다. 문자 치환 후에 획득된 제 2 문자는 "hongqiu"이다.
실제 애플리케이션에서, 가변 문자가 상이한 백업 문자에 대응하면, 혼합 치환 방법이 사용될 수 있다. 예를 들어, 제 1 문자열 "
Figure pct00011
”이 "
Figure pct00012
"로 치환된다.
명백하게, 이전 치환 방법에 기초하여, 사용자는 검증 코드에서 문자가 나타낸 의미를 학습할 수 있지만, 컴퓨터 프로그램은 비교적 강한 간섭을 받는다.
실제 동작에서, 문자 치환 후에 획득된 제 2 문자열에 기초하여 대응하는 검증 코드가 생성될 수 있다. 제 2 문자열에 기초하여 검증 코드를 생성하는 것은 구체적으로, 제 2 문자열에 기초하여 지정된 포맷으로 검증 코드를 생성하는 것을 포함한다. 지정된 포맷은 화상 포맷 및 텍스트 포맷 중 적어도 하나를 포함한다.
실제 애플리케이션 시나리오에서, 사용자는 일반적으로 검증 코드에 기초하여 특정 동작을 수행한다. 예를 들어, 사용자가 특정 코드에 기초하여 대응하는 문자열을 입력하거나, 또는 사용자가 검증 코드가 지시하는 행동(behavior)에 기초하여 특정 동작을 수행한다. 그러나, 사용자가 문자열은 입력하는지 특정 동작을 수행하는지에 관계없이 서버는 검증을 수행할 필요가 있다. 검증 정확성을 보증하기 위해 서버는 검증 표준을 결정한다. 마킹 검증 정보는 검증 표준이며, 사용자의 동작이 검증 표준을 만족하는 경우에만 검증이 성공할 수 있음을 알 수 있다.
실제 어플리케이션 시나리오의 검증 방법에서, 사용자는 검증 인터페이스에 디스플레이된 검증 코드에 기초하여 대응하는 문자열을 입력할 수 있다. 이 방법에서, 마킹 검증 정보는 제 1 문자열이다. 검증 요청에 대응하는 사용자를 검증하는 것은 구체적으로, 사용자 검증 인터페이스에서 입력 영역을 생성하는 것, 검증 코드에 기초하여 입력 영역에 사용자에 의해 입력되고 검증되어야 하는 문자열을 획득하는 것, 및 제 1 문자열에 기초하여 검증되어야 하는 문자열을 검증하는 것을 포함한다.
즉, 도 4a는 이 방법에서의 검증 인터페이스를 도시한다. 검증 인터페이스는 검증 코드 및 대응하는 입력 영역을 포함한다는 것을 알 수 있다. 사용자는 검증을 위한 검증 코드에 기초하여 입력 영역에 대응하는 문자열을 입력한다. 명백하게는, 도 4a에서, 검증 코드 "
Figure pct00013
"(검증 코드에서 제 2 문자열임)에 기초하여 사용자가 입력 영역에 중국어 구절"
Figure pct00014
"(제 1 문자열이 "
Figure pct00015
"라고 가정한다)을 입력할 때만 검증이 성공할 수 있다.
실제 어플리케이션 시나리오의 다른 검증 방법에서, 사용자는 검증 인터페이스에 디스플레이된 검증 코드에 기초하여 대응하는 검증 동작을 수행할 수 있다. 이 방법에서, 마킹 검증 정보는 미리 결정된 마킹 동작 정보를 포함한다. 검증 요청에 대응하는 사용자를 검증하는 것은 구체적으로, 사용자 검증 인터페이스에서 동작가능한 검증 코드 디스플레이 영역을 생성하는 것, 검증 코드에 기초하여 검증 코드 디스플레이 영역에서 사용자에 의해 수행되고 검증되어야 하는 동작에 대응하고 검증되어야 하는 동작 정보를 취득하는 것, 및 마킹 동작 정보에 기초하여 검증되어야 하는 동작 정보를 검증하는 것을 포함한다.
도 4b는 이 방법에서의 검증 인터페이스를 도시한다. 검증 인터페이스는 검증 코드를 포함하는 동작가능한 검증 코드 디스플레이 영역을 포함한다는 것을 알 수 있다. 사용자는 검증 코드에 의해 지시된 행동에 기초하여 검증 코드 디스플레이 영역에서 검증되어야 하는 대응하는 동작을 수행할 수 있다. 도 4b에서, 마킹 동작 정보는 동작 제어 "2" 및 "4"가 탭되는 것이라고 가정한다. 이 경우에, 검증 코드 "아래의 화상에서
Figure pct00016
를 탭하세요"에 기초로하여 사용자가 검증 코드 디스플레이 영역에서 동작 제어 "2” 및 "4"를 탭한 후에 검증이 성공될 수 있다.
물론, 이전 2가지 방법은 단지 본 출원의 이 구현예에서의 검증 방법을 설명하기 위한 것이며, 본 출원에 제한을 부과하지 않는다.
본 출원의 구현예에 제공된 검증 방법이 상기 설명된다. 동일한 아이디어에 기초하여, 본 출원의 구현예는 검증 코드에 기초한 검증 장치를 더 제공한다.
도 5에 도시된 바와 같이, 검증 장치는 서비스 제공자의 서버 측 상에 배치되고, 장치는: 검증 요청을 수신하도록 구성된 수신 모듈(501); 검증 요청이 수신된 후에 미리 생성된 제 1 문자열을 획득하도록 구성된 취득 모듈(502) - 제 1 문자열은 적어도 하나의 가변 문자를 포함함 - ; 가변 문자와 백업 문자 간의 미리 확립된 대응 관계에 기초하여 일부 또는 모든 가변 문자를 백업 문자로 치환하여 제 2 문자열을 획득하도록 구성되는 치환 모듈(503); 및 제 2 문자열에 기초하여 검증 코드를 생성하고, 검증 요청에 대응하는 사용자를 검증하도록 구성된 검증 모듈(504)을 포함한다.
장치는, 임의의 가변 문자의 적어도 하나의 동성이의어 문자 및/또는 동의어 문자를 결정하고, 상기 결정된 동성이의어 문자 및/또는 동의어문자를 상기 가변 문자의 백업 문자로서 사용하여, 상기 가변 문자와 상기 백업 문자 간의 대응 관계를 확립하도록 구성된 확립 모듈(505)을 더 포함한다.
검증 모듈 (504)은 제 2 문자열에 기초하여 지정된 포맷으로 검증 코드를 생성하고, 여기서 지정된 포맷은 화상 포맷 및 텍스트 포맷 중 적어도 하나를 포함한다.
검증 모듈(504)은 사용자 검증 인터페이스에서 입력 영역을 생성하고, 검증 코드에 기초하여 입력 영역에 사용자에 의해 입력되고 검증되어야 하는 문자열을 획득하고, 제 1 문자열에 기초하여 검증되어야 하는 문자열을 검증한다.
검증 모듈(504)은 사용자 검증 인터페이스에서 동작가능한 검증 코드 디스플레이 영역을 생성하고, 검증 코드에 기초하여 검증 코드 디스플레이 영역에서 사용자에 의해 수행되고 검증되어야 하는 동작에 대응하고 검증되어야 하는 동작 정보를 취득하고, 미리 결정된 마킹 동작 정보에 기초하여 검증되어야 하는 동작 정보를 검증한다.
1990년대에는 기술 개선이 하드웨어 개선(예를 들어, 다이오드, 트랜지스터, 또는 스위치 등의 회로 구조에 대한 개선)인지 소프트웨어 개선(예를 들어, 방법 프로시저에 대한 개선)인지가 명백하게 구별될 수 있었다. 그러나, 기술이 발전함에 따라, 많은 방법 프로시저에 대한 현재의 개선이 하드웨어 회로 구조에 대한 직접적인 개선으로서 간주될 수도 있다. 설계자는 일반적으로 개선된 방법 프로시저를 하드웨어 회로에 프로그래밍하여 대응하는 하드웨어 회로 구조를 얻는다. 그러므로, 방법 프로시저가 하드웨어 엔티티 모듈을 사용해서 개선될 수 있다. 예를 들어, 프로그래머블 로직 디바이스(Programmable Logic Device; PLD)[예를 들어, 필드 프로그래머블 게이트 어레이(Field Programmable Gate Array; FPGA)]가 그러한 집적 회로이고, 그 PLD의 로직 기능은 디바이스 프로그래밍을 통해 사용자가 결정한다. 설계자는 주문형 집적 회로 칩을 설계하고 생산할 것을 칩 제조업자에게 요청하지 않고도 디지털 시스템을 PLD에 "집적"하기 위한 프로그래밍을 수행한다. 추가적으로, 현재, 이러한 유형의 프로그래밍은, 집적 회로 칩을 수동으로 제작하는 것보다는, 주로 "로직 컴파일러" 소프트웨어를 사용하여 구현된다. 이 소프트웨어는 프로그램을 개발하고 작성하는데 사용되는 소프트웨어 컴파일러와 유사하다. 오리지널 코드는 컴파일을 위해 특정 프로그래밍 언어로 작성되어야 한다. 이 언어는 하드웨어 디스크립션 언어(hardware description language; HDL)라고 한다. ABEL(Advanced Boolean Expression Language), AHDL(Altera Hardware Description Language), 컨플루언스(Confluence), CURL(Cornell University Programming Language), HDCal, JHDL(Java Hardware Description Language), Lava, Lola, MyHDL, PALASM, 및 RHDL(Ruby Hardware Description Language)와 같은 많은 HDL이 있다. VHDL(very-high-speed integrated circuit hardware description language) 및 Verilog가 가장 일반적으로 사용된다. 또한, 당업자는 방법 프로시저가 몇몇 설명된 하드웨어 디스크립션 언어를 이용하여 논리적으로 프로그래밍되고 집적 회로에 프로그래밍되면, 로직 방법 프로시저를 구현하는 하드웨어 회로가 쉽게 얻어질 수 있음을 이해해야 한다.
임의의 적절한 방법을 이용하여 컨트롤러가 구현될 수 있다. 예를 들어, 컨트롤러는 마이크로프로세서, 프로세서, 또는 마이크로프로세서, 또는 프로세서, 로직 게이트, 스위치, 주문형 집적 회로(Application Specific Integrated Circuit; ASIC), 프로그래머블 로직 컨트롤러, 또는 임베디드 마이크로프로세서에 의해 실행될 수 있는 컴퓨터 판독가능 프로그램 코드(예를 들어, 소프트웨어 또는 펌웨어)를 저장한 컴퓨터 판독가능 매체일 수 있다. 컨트롤러의 예는 다음의 마이크로프로세서: ARC 625D, 아트멜(Atmel) AT91SAM, 마이크로칩(Microchip) PIC18F26K20 및 실리콘 랩스(Silicone Labs) C8051F320를 포함하지만, 이들에 한정되지는 않는다. 또한, 메모리 컨트롤러는 메모리의 제어 로직의 일부로서도 구현될 수 있다. 당업자는 또한 컴퓨터 판독가능 프로그램 코드를 사용하여 컨트롤러를 구현하는 것 이외에, 컨트롤러로 하여금 로직 게이트, 스위치, 주문형 집적 회로, 프로그래머블 로직 컨트롤러, 및 임베디드 마이크로컨트롤러의 형태로 동일한 기능을 구현하게 하는 방법 단계에 대해 로직 프로그래밍이 수행될 수 있음을 안다. 따라서, 컨트롤러는 하드웨어 컴포넌트로서 간주될 수 있고, 컨트롤러에서 다양한 기능을 구현하도록 구성된 장치가 하드웨어 컴포넌트 내의 구조로서도 간주될 수 있다. 또는, 다양한 기능을 구현하도록 구성된 장치는 하드웨어 컴포넌트에서 방법 및 구조를 구현하는 소프트웨어 모듈 모두로서도 간주될 수 있다.
앞선 구현예에서 예시한 시스템, 장치, 모듈, 또는 유닛은 컴퓨터 칩 또는 엔티티를 사용하여 구현될 수 있거나, 또는 특정 기능을 갖는 제품을 사용하여 구현될 수 있다. 통상의 구현예의 디바이스는 컴퓨터이다. 컴퓨터는 예를 들어, 퍼스널 컴퓨터, 랩톱 컴퓨터, 셀룰러 폰, 카메라 폰, 스마트 폰, 퍼스널 디지털 어시스턴트, 미디어 플레이어, 내비게이션 디바이스, 이메일 디바이스, 게임 콘솔, 태블릿 컴퓨터, 웨어러블 디바이스, 또는 이들 디바이스 중의 임의의 조합을 포함할 수 있다.
설명의 용이함을 위해, 상술된 장치는 기능들을 다양한 유닛들로 분할함으로써 설명된다. 사실상, 본 출원이 구현될 때, 각 유닛의 기능은 소프트웨어 및/또는 하드웨어의 하나 이상의 부분(piece)에서 구현될 수 있다.
당업자는 본 출원의 구현이 방법, 시스템, 또는 컴퓨터 프로그램 제품으로서 제공될 수 있음을 이해해야 한다. 따라서, 본 출원은 하드웨어 단독 구현예, 소프트웨어 단독 구현예 또는 소프트웨어와 하드웨어의 조합의 구현예를 사용할 수 있다. 또한, 본 출원은 하나 이상의 컴퓨터 사용가능 저장 매체(디스크 메모리, CD-ROM, 또는 광학 메모리를 포함하지만 이에 한정되지는 않음) 상에 구현되는 컴퓨터 사용가능 프로그램 코드를 포함한 컴퓨터 프로그램 제품의 형태를 사용할 수 있다.
본 출원은 본 출원의 구현예에 기초한 방법, 디바이스(시스템), 및 컴퓨터 프로그램 제품의 흐름도 및/또는 블록도를 참조하여 설명된다. 흐름도 및/또는 블록도의 각 프로세스 및/또는 각 블록, 및 흐름도 및/또는 블록도의 프로세스 및/또는 블록의 조합을 구현하기 위해 컴퓨터 프로그램 명령어들이 사용될 수 있음을 주목할만 하다. 이들 컴퓨터 프로그램 명령어들은, 컴퓨터 또는 또다른 프로그래머블 데이터 프로세싱 디바이스의 프로세서에 의해 실행되는 명령어들이 흐름도의 하나 이상의 프로세스 및/또는 블록도의 하나 이상의 블록에서 특정 기능을 구현하기 위한 디바이스를 생성하도록, 범용 컴퓨터, 전용 컴퓨터, 임베디드 프로세서, 또는 또다른 프로그래머블 데이터 프로세싱 디바이스의 프로세서를 위해 제공될 수 있다.
이들 컴퓨터 프로그램 명령어들은 컴퓨터 또는 또다른 프로그래머블 데이터 프로세싱 디바이스에 특정 방식으로 동작하도록 명령할 수 있는 컴퓨터 판독가능 메모리에 저장되어, 컴퓨터 판독가능 메모리에 저장된 명령어들이 명령 디바이스를 포함하는 아티펙트(artifact)를 생성하도록 할 수 있다. 명령 디바이스는 흐름도의 하나 이상의 프로세스 및/또는 블록도의 하나 이상의 블록에서 특정 기능을 구현한다.
이들 컴퓨터 프로그램 명령어들은 컴퓨터 또는 또다른 프로그래머블 데이터 프로세싱 디바이스 상에 로딩되어, 일련의 동작 및 단계가 컴퓨터 또는 또다른 프로그래머블 디바이스 상에서 수행됨으로써 컴퓨터 구현 프로세싱을 생성하도록 할 수 있다. 따라서, 컴퓨터 또는 또다른 프로그래머블 디바이스 상에 실행되는 명령어들은 흐름도의 하나 이상의 프로세스 및/또는 블록도의 하나 이상의 블록에서 특정 기능을 구현하는 단계를 제공한다.
전형적인 구성에서, 컴퓨팅 디바이스는 하나 이상의 프로세서(CPU), 입/출력 인터페이스, 하나 이상의 네트워크 인터페이스, 및 하나 이상의 메모리를 포함한다.
메모리는 비영구적 메모리, 랜덤 액세스 메모리(random access memory; RAM), 비휘발성 메모리, 및/또는 예를 들어, 판독 전용 메모리(read-only memory; ROM) 또는 플래시 메모리(플래시 RAM)와 같은 컴퓨터 판독가능 매체 내의 또다른 형태를 포함할 수 있다. 메모리는 컴퓨터 판독가능 매체의 예이다.
컴퓨터 판독가능 매체는 임의의 방법 또는 기술을 사용하여 정보를 저장할 수 있는 영구적, 비영구적, 이동식 및 비이동식 매체를 포함한다. 정보는 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈 또는 다른 데이터일 수 있다. 컴퓨터 저장 매체의 예로는 상변화 랜덤 액세스 메모리(phase-change random access memory; PRAM), 정적 랜덤 액세스 메모리(static random access memory; SRAM), 동적 랜덤 액세스 메모리(dynamic random access memory; DRAM), 다른 유형의 랜덤 액세스 메모리(random access memory; RAM), 판독 전용 메모리(read-only memory; ROM), 전기적 소거가능 프로그래머블 판독 전용 메모리(electrically erasable programmable read-only memory; EEPROM), 플래시 메모리 또는 또다른 메모리 기술, 콤팩트 디스크 판독 전용 메모리(compact disc read-only memory; CD-ROM), 디지털 비디오 디스크(digital versatile disc; DVD) 또는 또다른 광학 저장 장치, 카세트 자기 테이프, 자기 테이프/자기 디스크 저장 장치 또는 또다른 자기 저장 디바이스, 또는 임의의 다른 비전송 매체를 포함하지만 이에 한정되지 않는다. 컴퓨터 저장 매체는 컴퓨터 디바이스에 의해 액세스가능한 정보를 저장하는데 사용될 수 있다. 본 명세서 내의 정의에 기초하여, 컴퓨터 판독가능 매체는 예를 들어, 변조된 데이터 신호 및 캐리어와 같은 일시적 컴퓨터 판독가능 매체(일시적 매체)를 포함하지 않는다.
"포함하다(include, comprise)" 및 이들의 어떤 다른 변형의 용어는 비배타적인 포함(inclusion)을 망라하는 것이 의도되어, 일련의 요소를 포함하는 프로세스, 방법, 제품, 또는 디바이스는 이들 요소를 포함할 뿐만 아니라, 명시적으로 열거되지 않은 다른 요소도 포함하거나 그러한 프로세스, 방법, 제품 또는 디바이스의 고유한 요소를 더 포함한다는 것을 또한 주목할만 하다. 제약이 더 없다면, "...를 포함한다"가 붙은 요소는 그 요소를 포함하는 프로세스, 방법, 제품 또는 디바이스에서의 추가적인 동일한 요소의 존재를 배제하지 않는다.
당업자는 본 출원의 구현이 방법, 시스템, 또는 컴퓨터 프로그램 제품으로서 제공될 수 있음을 이해해야 한다. 따라서, 본 출원은 하드웨어 단독 구현예, 소프트웨어 단독 구현예 또는 소프트웨어와 하드웨어의 조합의 구현예를 사용할 수 있다. 또한, 본 출원은 하나 이상의 컴퓨터 사용가능 저장 매체(디스크 메모리, CD-ROM, 또는 광학 메모리를 포함하지만 이에 한정되지는 않음) 상에 구현되는 컴퓨터 사용가능 프로그램 코드를 포함한 컴퓨터 프로그램 제품의 형태를 사용할 수 있다.
본 출원은 컴퓨터에 의해 실행되는 컴퓨터 실행가능한 명령어들, 예를 들어 프로그램 모듈의 일반적인 문맥으로 설명될 수 있다. 일반적으로, 프로그램 모듈은 특정 태스크를 실행하거나 특정 추상 데이터 타입을 구현하는 루틴, 프로그램, 객체, 컴포넌트, 데이터 구조 등을 포함한다. 본 애플리케이션은 분산 컴퓨팅 환경에서도 실행될 수 있다. 분산 컴퓨팅 환경에서, 태스크는 통신 네트워크를 통해 접속된 원격 처리 디바이스에 의해 수행된다. 분산 컴퓨팅 환경에서, 프로그램 모듈은 저장 디바이스를 포함하는 로컬 및 원격 컴퓨터 저장 매체 모두에 위치될 수 있다.
본 명세서에서의 구현예는 점진적인 방식으로 설명된다. 구현예의 동일하거나 유사한 부분에 대해서는 구현예들을 참조할 수 있다. 각 구현예는 다른 구현예와의 상이점에 중점을 둔다. 특히, 시스템 구현예는 기본적으로 방법 구현예와 유사하므로 간략하게 설명되었다. 관련 부분에 대해서는, 방법 구현예의 관련 설명을 참조할 수 있다.
앞선 설명은 단지 본 출원의 구현예이며, 본 출원을 제한하려는 것은 아니다. 당업자는 본 출원에 다양한 수정 및 변형을 이룰 수 있다. 본 출원의 사상 및 원리를 벗어나지 않고 이루어지는 임의의 수정, 등가의 대체 또는 개선은 본 출원의 청구 범위 내에 속하는 것이다.

Claims (10)

  1. 검증 코드에 기초한 검증 방법에 있어서,
    검증 요청을 수신하는 단계;
    상기 검증 요청을 수신한 후에 미리 생성된 제 1 문자열을 획득하는 단계 - 상기 제 1 문자열은 적어도 하나의 가변 문자(variable character)를 포함함 - ;
    가변 문자와 백업 문자(backup character) 간의 미리 확립된 대응 관계에 기초하여 일부 또는 모든 가변 문자를 백업 문자로 치환하여 제 2 문자열을 획득하는 단계; 및
    상기 제 2 문자열에 기초하여 검증 코드를 생성하고, 상기 검증 요청에 대응하는 사용자를 검증하는 단계
    를 포함하는, 검증 코드에 기초한 검증 방법.
  2. 제 1 항에 있어서,
    가변 문자와 백업 문자 간의 대응 관계를 미리 확립하는 것은,
    임의의 가변 문자의 적어도 하나의 동성이의어(homophonous) 문자 및/또는 동의어(synonymous) 문자를 결정하는 것; 및
    상기 가변 문자의 백업 문자로서 상기 결정된 동성이의어 문자 및/또는 동의어 문자를 사용하고, 상기 가변 문자와 상기 백업 문자 간의 대응 관계를 확립하는 것
    을 포함하는 것인, 검증 코드에 기초한 검증 방법.
  3. 제 2 항에 있어서,
    상기 제 2 문자열에 기초하여 검증 코드를 생성하는 단계는 구체적으로,
    상기 제 2 문자열에 기초하여 지정된 포맷으로 검증 코드를 생성하는 단계를 포함하고,
    상기 지정된 포맷은 화상 포맷 및 텍스트 포맷 중 적어도 하나를 포함하는 것인, 검증 코드에 기초한 검증 방법.
  4. 제 1 항에 있어서,
    상기 검증 요청에 대응하는 사용자를 검증하는 단계는 구체적으로,
    사용자 검증 인터페이스에서 입력 영역을 생성하는 단계,
    상기 검증 코드에 기초하여 상기 입력 영역에 상기 사용자에 의해 입력되고 검증되어야 하는 문자열을 획득하는 단계, 및
    상기 제 1 문자열에 기초하여, 검증되어야 하는 상기 문자열을 검증하는 단계
    를 포함하는 것인, 검증 코드에 기초한 검증 방법.
  5. 제 1 항에 있어서,
    상기 검증 요청에 대응하는 사용자를 검증하는 단계는 구체적으로,
    사용자 검증 인터페이스에서 동작가능한 검증 코드 디스플레이 영역을 생성하는 단계,
    동작에 대응하고 검증되어야 하는 동작 정보를 획득하는 단계 - 상기 동작은상기 검증 코드에 기초하여 상기 검증 코드 디스플레이 영역에서 상기 사용자에 의해 수행되고 검증되어야 하는 것임 - , 및
    미리 결정된 마킹 동작 정보에 기초하여, 검증되어야 하는 상기 동작 정보를 검증하는 단계
    를 포함하는 것인, 검증 코드에 기초한 검증 방법.
  6. 검증 코드에 기초한 검증 장치에 있어서,
    검증 요청을 수신하도록 구성된 수신 모듈;
    상기 검증 요청이 수신된 후에 미리 생성된 제 1 문자열을 획득하도록 구성된 취득 모듈 - 상기 제 1 문자열은 적어도 하나의 가변 문자를 포함함 - ;
    가변 문자와 백업 문자 간의 미리 확립된 대응 관계에 기초하여 일부 또는 모든 가변 문자를 백업 문자로 치환하여 제 2 문자열을 획득하도록 구성되는 치환 모듈; 및
    상기 제 2 문자열에 기초하여 검증 코드를 생성하고, 상기 검증 요청에 대응하는 사용자를 검증하도록 구성된 검증 모듈
    을 포함하는, 검증 코드에 기초한 검증 장치.
  7. 제 6 항에 있어서,
    임의의 가변 문자의 적어도 하나의 동성이의어 문자 및/또는 동의어 문자를 결정하고, 상기 결정된 동성이의어 문자 및/또는 동의어 문자를 상기 가변 문자의 백업 문자로서 사용하여, 상기 가변 문자와 상기 백업 문자 간의 대응 관계를 확립하도록 구성된 확립 모듈
    을 더 포함하는, 검증 코드에 기초함 검증 장치.
  8. 제 7 항에 있어서,
    상기 검증 모듈은 상기 제 2 문자열에 기초하여 지정된 포맷으로 검증 코드를 생성하고,
    상기 지정된 포맷은 화상 포맷 및 텍스트 포맷 중 적어도 하나를 포함하는 것인, 검증 코드에 기초한 검증 장치.
  9. 제 6 항에 있어서,
    상기 검증 모듈은 사용자 검증 인터페이스에서 입력 영역을 생성하고, 상기 검증 코드에 기초하여 상기 입력 영역에 상기 사용자에 의해 입력되고 검증되어야 하는 문자열을 획득하고, 상기 제 1 문자열에 기초하여 검증되어야 하는 상기 문자열을 검증하는 것인, 검증 코드에 기초한 검증 장치.
  10. 제 6 항에 있어서,
    상기 검증 모듈은 사용자 검증 인터페이스에서 동작가능한 검증 코드 디스플레이 영역을 생성하고, 상기 검증 코드에 기초하여, 동작에 대응하고 검증되어야 하는 동작 정보를 취득하고 - 상기 검증 코드 디스플레이 영역에서 상기 사용자에 의해 수행되고 검증되어야 하는 것임 - , 미리 결정된 마킹 동작 정보에 기초하여 검증되어야 하는 상기 동작 정보를 검증하는 것인, 검증 코드에 기초한 검증 장치.
KR1020197019777A 2016-12-08 2017-11-29 검증 코드에 기초한 검증 방법 및 장치 KR102194072B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN201611125263.0 2016-12-08
CN201611125263.0A CN106899411B (zh) 2016-12-08 2016-12-08 一种基于验证码的校验方法及装置
PCT/CN2017/113595 WO2018103564A1 (zh) 2016-12-08 2017-11-29 一种基于验证码的校验方法及装置

Publications (2)

Publication Number Publication Date
KR20190091529A true KR20190091529A (ko) 2019-08-06
KR102194072B1 KR102194072B1 (ko) 2020-12-23

Family

ID=59197816

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020197019777A KR102194072B1 (ko) 2016-12-08 2017-11-29 검증 코드에 기초한 검증 방법 및 장치

Country Status (10)

Country Link
US (1) US10719599B2 (ko)
EP (1) EP3554000B1 (ko)
JP (1) JP6894511B2 (ko)
KR (1) KR102194072B1 (ko)
CN (1) CN106899411B (ko)
ES (1) ES2882535T3 (ko)
PL (1) PL3554000T3 (ko)
SG (1) SG11201905215TA (ko)
TW (1) TWI756266B (ko)
WO (1) WO2018103564A1 (ko)

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106899411B (zh) 2016-12-08 2021-09-21 创新先进技术有限公司 一种基于验证码的校验方法及装置
CN109087368B (zh) * 2018-06-14 2023-04-07 创新先进技术有限公司 一种字符串图形化方法和装置
CN109117624A (zh) * 2018-08-03 2019-01-01 上海掌门科技有限公司 生成验证码图像的方法、电子设备和计算机可读介质
CN109359274B (zh) * 2018-09-14 2023-05-02 蚂蚁金服(杭州)网络技术有限公司 一种对批量生成的字符串进行识别的方法、装置及设备
CN109635256B (zh) * 2018-12-20 2023-07-11 上海掌门科技有限公司 用于校验数据的方法和装置
US10614207B1 (en) * 2019-07-09 2020-04-07 Capital One Services, Llc Generating captcha images using variations of the same object
US10496809B1 (en) 2019-07-09 2019-12-03 Capital One Services, Llc Generating a challenge-response for authentication using relations among objects
CN110677239B (zh) * 2019-08-26 2022-09-06 深圳市共进电子股份有限公司 一种验证码生成方法及装置
CN111177688B (zh) * 2019-12-26 2022-10-14 微梦创科网络科技(中国)有限公司 一种基于形似语言混合字体的安全认证方法及装置
CN111611767B (zh) * 2020-05-21 2023-04-25 北京百度网讯科技有限公司 验证方法和装置
CN111953647B (zh) * 2020-06-22 2022-09-27 北京百度网讯科技有限公司 安全校验方法、装置、电子设备和存储介质
CN111966669B (zh) * 2020-06-29 2024-03-15 浪潮通用软件有限公司 一种报表数据校验方法、设备及介质
CN114980119B (zh) * 2020-12-02 2024-06-11 支付宝(杭州)信息技术有限公司 一种设备之间的连接方法、装置及设备
CN112685725B (zh) * 2020-12-30 2022-12-06 上海掌门科技有限公司 一种安全验证的方法与设备
CN112966252B (zh) * 2021-04-26 2023-11-24 平安国际智慧城市科技股份有限公司 一种基于密码技术的客户端验证方法、装置、电子设备及介质
CN114465762A (zh) * 2021-12-24 2022-05-10 安徽航天信息有限公司 一种基于语境的验证码生成方法、装置及存储介质
CN115037515A (zh) * 2022-04-29 2022-09-09 北京龙腾佳讯科技股份公司 开放数据网中无状态验证码验证方法、装置及电子设备

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140196133A1 (en) * 2013-01-04 2014-07-10 Gary Stephen Shuster Cognitive-based captcha system
CN106156597A (zh) * 2015-04-16 2016-11-23 深圳市腾讯计算机系统有限公司 一种验证码的实现方法,及装置

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7890426B2 (en) 2004-11-19 2011-02-15 Vectorsgi, Inc. Method and system for verifying check images
US7552467B2 (en) * 2006-04-24 2009-06-23 Jeffrey Dean Lindsay Security systems for protecting an asset
US20110055585A1 (en) * 2008-07-25 2011-03-03 Kok-Wah Lee Methods and Systems to Create Big Memorizable Secrets and Their Applications in Information Engineering
CN101895542B (zh) * 2010-07-05 2013-03-20 北京畅游时空软件技术有限公司 一种验证码的获取方法及装置
CN102075507A (zh) * 2010-07-30 2011-05-25 百度在线网络技术(北京)有限公司 一种用于基于词句验证图进行用户验证的方法与设备
CN102687160B (zh) * 2010-08-31 2015-12-16 乐天株式会社 应答判定装置、应答判定方法、以及应答判定系统
CN101976430A (zh) * 2010-10-29 2011-02-16 赵俊平 一种图片验证码生成方法及其系统
US8885931B2 (en) * 2011-01-26 2014-11-11 Microsoft Corporation Mitigating use of machine solvable HIPs
CN104283682A (zh) * 2013-07-08 2015-01-14 深圳市腾讯计算机系统有限公司 一种利用验证码进行校验的方法、装置及系统
US9202076B1 (en) * 2013-07-26 2015-12-01 Symantec Corporation Systems and methods for sharing data stored on secure third-party storage platforms
CN104796252A (zh) * 2014-01-20 2015-07-22 北京大学 可变数据标签防伪的方法、装置及其认证的方法、系统
US10061914B2 (en) * 2014-11-14 2018-08-28 Mcafee, Llc Account recovery protocol
TWI546693B (zh) 2014-12-10 2016-08-21 英業達股份有限公司 整合驗證碼及密碼的登入系統及其方法
KR101647027B1 (ko) * 2015-03-02 2016-08-23 주식회사 사람들과사람들 기준지점 기반의 가변형 패턴을 이용한 사용자 인증 장치 및 그 방법
CN104794385A (zh) 2015-03-03 2015-07-22 新浪网技术(中国)有限公司 一种信息验证方法及装置
CN104883351B (zh) 2015-03-13 2019-02-12 小米科技有限责任公司 多因子认证方法和装置
CN106899411B (zh) * 2016-12-08 2021-09-21 创新先进技术有限公司 一种基于验证码的校验方法及装置

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140196133A1 (en) * 2013-01-04 2014-07-10 Gary Stephen Shuster Cognitive-based captcha system
CN106156597A (zh) * 2015-04-16 2016-11-23 深圳市腾讯计算机系统有限公司 一种验证码的实现方法,及装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Richard Bergmair 외 1명, Towards Human Interactive Proofs in the Text-Domain Using the Problem of Sense-Ambiguity for Security, ISC 2004, Springer, Berlin (2004.)* *

Also Published As

Publication number Publication date
EP3554000A4 (en) 2019-11-06
CN106899411B (zh) 2021-09-21
EP3554000B1 (en) 2021-05-19
TWI756266B (zh) 2022-03-01
JP6894511B2 (ja) 2021-06-30
ES2882535T3 (es) 2021-12-02
TW201822048A (zh) 2018-06-16
KR102194072B1 (ko) 2020-12-23
WO2018103564A1 (zh) 2018-06-14
PL3554000T3 (pl) 2021-11-02
CN106899411A (zh) 2017-06-27
US20190251243A1 (en) 2019-08-15
EP3554000A1 (en) 2019-10-16
US10719599B2 (en) 2020-07-21
SG11201905215TA (en) 2019-08-27
JP2020501279A (ja) 2020-01-16

Similar Documents

Publication Publication Date Title
KR102194072B1 (ko) 검증 코드에 기초한 검증 방법 및 장치
US10635809B2 (en) Authenticating application legitimacy
US11316702B2 (en) Verification-based service authorization
CN110445769B (zh) 业务系统的访问方法及装置
US10331871B2 (en) Password input interface
TWI752228B (zh) 資訊驗證處理方法、裝置、系統、客戶端及伺服器
KR20140092396A (ko) 모바일 플랫폼 상에서의 방향 인지 인증
TW201629821A (zh) 驗證使用者身份的方法、系統、用戶端及伺服器
CN107025393A (zh) 一种资源调用的方法及装置
US20210216664A1 (en) Service processing method and apparatus
CN108959865B (zh) 一种验证方法及装置
US9697341B1 (en) Method of enhanced account authentication management integrated with real time script shifting
US11349658B2 (en) Blockchain data processing method, apparatus, and device
US11282064B2 (en) Method and apparatus for displaying identification code of application
CN107483534B (zh) 一种业务处理的方法及装置
CN115688130B (zh) 数据处理方法、装置及设备
TWM500291U (zh) 電子裝置與伺服器

Legal Events

Date Code Title Description
A201 Request for examination
A302 Request for accelerated examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
N231 Notification of change of applicant
GRNT Written decision to grant