KR101674314B1 - Captcha를 이용한 일회성 보안 문자 인증 방법 - Google Patents
Captcha를 이용한 일회성 보안 문자 인증 방법 Download PDFInfo
- Publication number
- KR101674314B1 KR101674314B1 KR1020150116121A KR20150116121A KR101674314B1 KR 101674314 B1 KR101674314 B1 KR 101674314B1 KR 1020150116121 A KR1020150116121 A KR 1020150116121A KR 20150116121 A KR20150116121 A KR 20150116121A KR 101674314 B1 KR101674314 B1 KR 101674314B1
- Authority
- KR
- South Korea
- Prior art keywords
- data
- captcha
- authentication
- client
- response signal
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/31—User authentication
- G06F21/36—User authentication by graphic or iconic representation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic 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/3226—Cryptographic 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/3228—One-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
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Document Processing Apparatus (AREA)
Abstract
본 발명의 일 실시예로써, CAPTCHA를 이용한 일회성 보안 문자 인증 방법이 개시된다. 본 발명의 일 실시예에 따른 방법은 적어도 하나의 클라이언트로부터 인증관련 정보 제공을 요청받는 단계, 요청에 기초하여 인증관련 정보를 생성하는 단계, 생성된 인증관련 정보를 적어도 하나의 클라이언트로 전송하는 단계, 인증관련 정보를 제공받은 적어도 하나의 클라이언트로부터 응답 신호를 수신하는 단계 및 응답 신호에 기초하여 적어도 하나의 클라이언트에 대한 인증을 수행하는 단계를 포함할 수 있다.
Description
본 발명은 CAPTCHA를 이용한 일회성 보안 문자 인증 방법에 관한 것으로, 더욱 상세하게는 CAPTCHA 데이터와 데이터 연산정보 등을 이용하여 일회성 보안 문자의 보안성을 높이기 위한 방법에 관한 것이다.
인터넷 기술이 발전하면서, 다양한 서비스가 만들어지고 있다. 그 중 사생활 정보를 활용한 서비스도 많이 등장하여 높은 보안 기술이 함께 요구받고 있다. 매우 민감한 사생활 정보인 자산(asset) 관련 서비스가 대표적인 사례이다.
이런 서비스는 가입에서부터 많은 보안 문자나 비밀번호를 가지고 있다. 그리고 이런 보안 문자나 비밀번호를 거래 시 요구하여, 사용자를 인증하고 있다. 민감한 사생활 정보를 서비스하는 만큼, 이런 서비스는 범죄에 약용될 가능성이 높다. 서비스 시 송수신되는 네트워크 패킷을 도중에 후킹하여 보안 문자 및 비밀번호를 훔쳐보는 등 사례가 꾸준히 증가해왔고, 현재는 보안 문자 등을 서버와 클라이언트 간 암호화하여 송수신 하지만, 보안문자의 노출 위험성은 여전히 존재한다는 점에서 보안성 강화를 위한 방안 모색이 절실하다.
사람이 직접 보안 문자를 수기 등을 통하여 아날로그적으로 해석하는 것은 불가능에 가깝기 때문에 고사양의 컴퓨팅 장치와 같은 기계를 데이터 해석툴로써 사용한다는 점, 이러한 데이터 해석툴은 반복된 정보와 중복되지 않는 정보를 가지고 데이터를 빠르게 해석할 수 있다는 점에서 종래 기술은 데이터 편취 가능성이 여전히 존재한다. CAPTCHA는 고사양의 컴퓨팅 장치와 같은 기계와 사람을 효과적으로 구분해줄 수 있다는 점에서 본 발명은 CAPTCHA 데이터와 데이터 연산정보 등을 이용하여 일회성 보안 문자의 보안성을 높이고자 한다.
또한, 기존의 보안문자와 CAPTCHA가 지시하는 문자를 소정의 연산 방식을 통하여 연산된 결과를 사용자로 하여금 입력하도록 함으로써, 종래 대비 인증 강도를 높이고자 한다.
본 발명의 일 실시예로써, CAPTCHA를 이용한 일회성 보안 문자 인증 방법이 제공될 수 있다. 본 발명의 일 실시예에 따른 방법은, 적어도 하나의 클라이언트로부터 인증관련 정보 제공을 요청받는 단계, 요청에 기초하여 인증관련 정보를 생성하는 단계, 생성된 인증관련 정보를 적어도 하나의 클라이언트로 전송하는 단계, 인증관련 정보를 제공받은 적어도 하나의 클라이언트로부터 응답 신호를 수신하는 단계 및 응답 신호에 기초하여 적어도 하나의 클라이언트에 대한 인증을 수행하는 단계를 포함할 수 있다.
또한, 본 발명의 일 실시예에 따른 인증관련 정보는 CAPTCHA 데이터 및 데이터 연산정보를 포함하고, CAPTCHA 데이터에는 문자, 이미지 및 사운드 중 적어도 하나가 포함되며, 데이터 연산정보는 사칙연산, 데이터의 병합, 데이터의 분할 및 데이터의 정렬 중 적어도 하나에 대한 정보가 포함될 수 있다.
본 발명의 일 실시예에 따른 요청에 기초하여 인증관련 정보를 생성하는 단계는, CAPTCHA 데이터를 랜덤하게 생성하는 단계 및 생성된 CAPTCHA 데이터에 기초하여 데이터 연산정보를 생성하는 단계를 포함할 수 있다.
본 발명의 일 실시예에 따른 응답 신호는 CAPTCHA 데이터가 데이터 연산정보에 따라 연산된 결과를 나타내는 신호가 클라이언트로 인가되어 암호화된 신호일 수 있다.
또한, 본 발명의 일 실시예에 따른 응답 신호는 CAPTCHA 데이터와 보안문자가 데이터 연산정보에 따라 연산된 결과를 나타내는 신호가 클라이언트로 인가되어 암호화된 신호일 수 있다.
본 발명의 일 실시예에 따른 응답 신호에 기초하여 적어도 하나의 클라이언트에 대한 인증을 수행하는 단계는, CAPTCHA 데이터를 데이터 연산정보에 따라 연산하는 단계, 연산 결과와 수신된 응답 신호를 비교하는 단계, 비교 결과에 따라 적어도 하나의 클라이언트에 대한 인증을 수행하는 단계를 포함할 수 있다.
본 발명의 일 실시예에 따른 응답 신호에 기초하여 적어도 하나의 클라이언트에 대한 인증을 수행하는 단계는, CAPTCHA 데이터와 보안문자를 데이터 연산정보에 따라 연산하는 단계, 연산 결과와 수신된 응답 신호를 비교하는 단계, 비교 결과에 따라 적어도 하나의 클라이언트에 대한 인증을 수행하는 단계를 포함할 수 있다.
한편, 본 발명의 일 실시예로써, 전술한 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체가 제공될 수 있다.
본 발명은 CAPTCHA 기술을 이용하여 일회성 보안 문자의 보안성을 높이기 위한 것으로써, 고사양의 컴퓨터 등 자동화 툴에 의한 문자의 해석 가능성을 현저히 떨어뜨리는 기법에 관한 것이다. 추가 연산 양이 거의 없기 때문에 서버 관리자 측면에서 도입에 따른 비용적 부담이 없으며, 그 사용법 또한 매우 간단하여 사용자에게도 큰 불편 없이 사생활 정보를 보호 받을 수 있다.
암호화 시 무작위 수(random number)를 이용하는 점에 더하여 송수신되는 패킷에는 보안 문자가 포함되어 있지 않다는 점, 일회성 수(number) 등을 텍스트 형태가 아닌 이미지 형식으로 주고 받을 수 있다는 점에서 종래 대비 데이터(예컨대, 인증데이터 등) 보관 및 활용에 있어서 보안성을 더욱 향상시킬 수 있다.
본 발명의 일 실시예에 따른 CAPTCHA를 이용한 일회성 보안 문자 인증 방법은 인터넷 뱅킹, 신용 카드 결제, 사용자 인증과 같이 높은 보안을 요구하는 분야에 적용될 수 있다.
도 1은 종래의 보안 문자를 이용한 사용자 인증 과정을 나타낸다.
도 2는 본 발명의 일 실시예에 따른 CAPTCHA를 이용한 일회성 보안 문자 인증 방법의 순서도이다.
도 3은 CAPTCHA를 이용한 일회성 보안 문자 인증 방법의 일 예를 나타낸다.
도 2는 본 발명의 일 실시예에 따른 CAPTCHA를 이용한 일회성 보안 문자 인증 방법의 순서도이다.
도 3은 CAPTCHA를 이용한 일회성 보안 문자 인증 방법의 일 예를 나타낸다.
아래에서는 첨부한 도면을 참조하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 본 발명의 실시예를 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.
본 명세서에서 사용되는 용어에 대해 간략히 설명하고, 본 발명에 대해 구체적으로 설명하기로 한다.
본 발명에서 사용되는 용어는 본 발명에서의 기능을 고려하면서 가능한 현재 널리 사용되는 일반적인 용어들을 선택하였으나, 이는 당 분야에 종사하는 기술자의 의도 또는 판례, 새로운 기술의 출현 등에 따라 달라질 수 있다. 또한, 특정한 경우는 출원인이 임의로 선정한 용어도 있으며, 이 경우 해당되는 발명의 설명 부분에서 상세히 그 의미를 기재할 것이다. 따라서 본 발명에서 사용되는 용어는 단순한 용어의 명칭이 아닌, 그 용어가 가지는 의미와 본 발명의 전반에 걸친 내용을 토대로 정의되어야 한다.
명세서 전체에서 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있음을 의미한다. 또한, 명세서에 기재된 "...부", "모듈" 등의 용어는 적어도 하나의 기능이나 동작을 처리하는 단위를 의미하며, 이는 하드웨어 또는 소프트웨어로 구현되거나 하드웨어와 소프트웨어의 결합으로 구현될 수 있다. 또한, 명세서 전체에서 어떤 부분이 다른 부분과 "연결"되어 있다고 할 때, 이는 "직접적으로 연결"되어 있는 경우뿐 아니라, "그 중간에 다른 소자를 사이에 두고" 연결되어 있는 경우도 포함한다.
CAPTCHA(Completely Automated Public Turing test to tell Computers and Humans Apart, 완전 자동화된 사람과 컴퓨터 판별)는 "캡차"로 지칭될 수 있다. CAPTCHA는 HIP(Human Interaction Proof) 기술의 일종으로, 어떠한 사용자가 실제 사람인지 컴퓨터 프로그램인지를 구별하기 위해 사용되는 방법을 의미한다. 사람은 구별 가능하지만 컴퓨터는 구별하기 힘들게 의도적으로 비틀거나 덧칠한 그림을 주고 그 그림에 쓰여 있는 내용을 응답으로써 요구하는 방식이 주로 사용된다. 이것은 기존의 텍스트와 이미지를 일그러뜨린 형태로 변형한 후 인식 대상이 변형된 이미지로부터 기존 이미지를 도출해 낼 수 있는지를 확인하는 방식의 테스트의 일종이다. 컴퓨터 프로그램이 변형시킨 이미지는 사람이 쉽게 인식할 수 있지만 컴퓨터 프로그램은 변형된 이미지를 인식하지 못하므로 테스트를 통과하지 못한다면 테스트 대상이 사람이 아님을 판정할 수 있다. 흔히 웹사이트 회원가입 등을 할 때, 자동가입방지를 위하여 CAPTCHA의 내용을 응답으로써 요구하는 방식으로 활용된다. CAPTCHA는 기기가 사람을 대상으로 하는 테스트이므로 사람에 가까운 기기를 대상으로 하는 테스트인 튜링 테스트(Turing test)를 차용하여 리버스 튜링 테스트(Reverse Turing test)라고 지칭하기도 한다.
이하 첨부된 도면을 참고하여 본 발명을 상세히 설명하기로 한다.
도 1은 종래의 보안 문자를 이용한 사용자 인증 과정을 나타낸다.
사용자 인증 등에 있어서 보안 문자는 근래들어 더욱 다양하게 활용되고 있다. 이러한 보안 문자는 암호화되어 기기들 간 송수신되기 때문에 직접적으로 보안 문자가 무엇인지 알기 어려우나, 보안 문자는 사용자에 따라 유일하게 만들어지기 때문에, 사용자 인증 등의 횟수가 반복되어도 매번 같은 번호를 사용하도록 되어 있다. 또한, 보안 문자는 사용자 별로 유일하기 때문에 다른 사용자와의 중복 값을 제외한다면, 데이터를 편취한 자는 시간이 지남에 따라 특정 사용자와 관련된 보안 문자의 정보를 쉽사리 파악할 수 있으므로, 보안 문자만의 사용은 그 보안성이 점차 떨어질 수 있다.
종래 기술에 따르면, 사용자(user)는 컴퓨터, 스마트 폰 등과 같은 사용자 디바이스(user device)를 통하여 서버(예컨대, 서비스 제공사(provider), 인증 기관 등)로 자신의 식별을 위한 서비스 요청을 할 수 있다. 서버 측에서는 서비스 요청을 보내온 사용자에 대한 인증이 필요하다면, 해당 사용자에게 보안 문자를 송신할 것을 요청할 수 있다.
보안 문자 입력을 위한 인증 창(window)이 표시되면, 사용자는 자신에게 미리 할당된 보안 문자를 입력할 수 있다. 이러한 보안 문자는 종래의 암호화 기법에 따라 암호화되어 서버측으로 전송될 수 있다. 이러한 전송 과정에서 악의의 타 사용자는 데이터를 편취함으로써 해당 사용자(또는 특정 사용자)에 대한 보안 문자 정보를 획득하고, 획득된 보안 문자 정보가 많아지면 많아질수록 특정 사용자에 대한 보안 문자 해석 가능성도 전술한 바와 같이 함께 높아질 수 있다.
서버 측에서는 해당 사용자가 입력한 보안 문자를 미리 저장된 보안 문자 정보와 비교함으로써 해당 사용자의 인증을 수행할 수 있다. 다시 말해서, 미리 저장된 보안 문자 정보와 해당 사용자가 입력한 보안 문자가 동일하다면 해당 사용자에 대한 인증을 성공적으로 수행하고, 미리 저장된 보안 문자 정보와 해당 사용자가 입력한 보안 문자가 동일하지 않다면 해당 사용자에 대한 인증이 부정되고, 서버측에서는 해당 사용자에게 보안 문자를 재확인하여 입력하도록 알림 메시지, 알람 등을 통지할 수 있다.
서버 측에서 사용자 디바이스 측으로 요청하는 보안 문자는 매번 동일한 정보이고, 이로 인해 암호화된 결과도 일정 패턴을 가지게 된다. 이렇게 일정 패턴이 반복되면, 빅데이터 시대로 데이터 해석 기술과 컴퓨팅 성능이 향상되는 근래의 추세에 비추어 순식간에 해독(decrypt)될 수 있다.
도 2는 본 발명의 일 실시예에 따른 CAPTCHA를 이용한 일회성 보안 문자 인증 방법의 순서도이다.
본 발명의 일 실시예에 따른 CAPTCHA를 이용한 일회성 보안 문자 인증 방법은, 적어도 하나의 클라이언트로부터 인증관련 정보 제공을 요청받는 단계(S100), 요청에 기초하여 인증관련 정보를 생성하는 단계(S200), 생성된 인증관련 정보를 적어도 하나의 클라이언트로 전송하는 단계(S300), 인증관련 정보를 제공받은 적어도 하나의 클라이언트로부터 응답 신호를 수신하는 단계(S400) 및 응답 신호에 기초하여 적어도 하나의 클라이언트에 대한 인증을 수행하는 단계(S500)를 포함할 수 있다.
또한, 본 발명의 일 실시예에 따른 인증관련 정보는 CAPTCHA 데이터 및 데이터 연산정보를 포함하고, CAPTCHA 데이터에는 문자, 이미지 및 사운드 중 적어도 하나가 포함되며, 데이터 연산정보는 사칙연산, 데이터의 병합, 데이터의 분할 및 데이터의 정렬 중 적어도 하나에 대한 정보가 포함될 수 있다.
데이터 연산정보는 덧셈, 뺄셈, 곱셈 또는 나눗셈과 같은 사칙연산에 대한 정보를 포함할 수 있다. 예를 들어, CAPTCHA 데이터가 숫자 1200과 22가 각각 분리 표시된 텍스트 또는 이미지로써 생성될 수 있고, 데이터 연산정보로 덧셈 연산 정보가 인증관련 정보로써 생성되어 클라이언트 측으로 제공될 수 있다. 도 3과 관련하여 후술된 바와 같이, 클라이언트 측에서는 사용자는 숫자 1200과 22를 합산하고, 이에 대한 합산 결과인 1222를 응답 신호로써 입력하여 서버(또는 타 클라이언트) 측으로 송신할 수 있다.
또한, 데이터 연산정보는 데이터의 병합에 대한 정보를 포함할 수 있다. 데이터 병합에 대한 정보는 적어도 하나의 데이터에 포함된 일 요소를 추출하여 상호 조합하기 위한 정보를 포함할 수 있다. 예를 들어, CAPTCHA 데이터가 숫자 12과 14가 각각 분리 표시된 텍스트 또는 이미지로써 생성될 수 있고, 데이터 병합 정보가 "최소자리 수의 최소 결합"으로 생성되어 클라이언트 측으로 제공될 수 있다. 클라이언트 측에서는 사용자는 숫자 12의 최소자리 수인 2와 14의 최소자리 수인 4를 최소 결합한 24를 응답 신호로써 입력하여 서버(또는 타 클라이언트) 측으로 송신할 수 있다.
또한, 데이터 연산정보는 데이터의 분할에 대한 정보를 포함할 수 있다. 예를 들어, CAPTCHA 데이터가 숫자 "1222"와 "1214"가 각각 분리 표시되어 텍스트 또는 이미지로써 생성될 수 있고, 데이터 연산정보로 데이터의 분할 정보가 "두자리씩 분할"로 생성되어 클라이언트 측으로 제공될 수 있다. 클라이언트 측에서는 사용자는 숫자 12와 22, 숫자 12와 14로 각각 데이터를 분할하여 응답 신호로써 입력하여 서버(또는 타 클라이언트) 측으로 송신할 수 있다.
또한, 데이터 연산정보에는 데이터의 정렬에 대한 정보가 포함될 수 있다. 예를 들어, CAPTCHA 데이터가 "A1C2E22"와 "Q1U2EE1N4"가 각각 분리 표시되어 텍스트 또는 이미지로써 생성될 수 있고, 데이터 연산정보로 데이터의 정렬 정보가 "영문자가 숫자보다 선두에 배치"로 생성되어 클라이언트 측으로 제공될 수 있다. 클라이언트 측에서는 사용자는 영문자가 숫자보다 선두에 배치되도록 ACEQUEEN12221214로 데이터를 정렬하여 응답 신호로써 입력하여 서버(또는 타 클라이언트) 측으로 송신할 수 있다.
본 발명의 일 실시예에 따른 요청에 기초하여 인증관련 정보를 생성하는 단계(S200)는, CAPTCHA 데이터를 랜덤하게 생성하는 단계 및 생성된 CAPTCHA 데이터에 기초하여 데이터 연산정보를 생성하는 단계를 포함할 수 있다.
본 발명의 일 실시예에 따른 응답 신호는 CAPTCHA 데이터가 데이터 연산정보에 따라 연산된 결과를 나타내는 신호가 클라이언트로 인가되어 암호화된 신호일 수 있다. 암호화 기법은 일반적인 데이터 암호화 기법이 이용될 수 있다.
전술한 예와 같이, 예를 들어, CAPTCHA 데이터가 숫자 1200과 22가 각각 분리 표시된 텍스트 또는 이미지로써 생성될 수 있고, 데이터 연산정보로 덧셈 연산 정보가 인증관련 정보로써 생성되어 클라이언트 측으로 제공될 수 있다. 또한, CAPTCHA 데이터가 숫자 12과 14가 각각 분리 표시된 텍스트 또는 이미지로써 생성될 수 있고, 데이터 병합 정보가 "최소자리 수의 최소 결합"으로 생성되어 클라이언트 측으로 제공될 수 있다. 또한, CAPTCHA 데이터가 숫자 "1222"와 "1214"가 각각 분리 표시되어 텍스트 또는 이미지로써 생성될 수 있고, 데이터 연산정보로 데이터의 분할 정보가 "두자리씩 분할"로 생성되어 클라이언트 측으로 제공될 수 있다. 또한, CAPTCHA 데이터가 "A1C2E22"와 "Q1U2EE1N4"가 각각 분리 표시되어 텍스트 또는 이미지로써 생성될 수 있고, 데이터 연산정보로 데이터의 정렬 정보가 "영문자가 숫자보다 선두에 배치"로 생성되어 클라이언트 측으로 제공될 수 있다.
전술한 예에서, 클라이언트 측에서의 사용자는 CAPTCHA 데이터를 데이터 연산정보에 따라 연산하고, 연산 결과를 응답 신호로써 서버(또는 타 클라이언트) 측으로 송신할 수 있다.
본 발명의 일 실시예에 따른 응답 신호에 기초하여 적어도 하나의 클라이언트에 대한 인증을 수행하는 단계(S500)는, CAPTCHA 데이터를 데이터 연산정보에 따라 연산하는 단계, 연산 결과와 수신된 응답 신호를 비교하는 단계, 비교 결과에 따라 적어도 하나의 클라이언트에 대한 인증을 수행하는 단계를 포함할 수 있다.
본 발명의 일 실시예에 따라 서버 측에서는 CAPTCHA 데이터를 데이터 연산정보에 따라 연산하고, 연산 결과와 수신된 응답 신호를 비교하여 동일성 여부를 판단할 수 있다. 동일성 여부의 판단 결과는 클라이언트에 대한 인증을 위하여 사용될 수 있다. 예를 들면, CAPTCHA 데이터를 데이터 연산정보에 따라 연산한 결과와 수신된 응답 신호가 동일하다면 해당 클라이언트(또는 사용자)에 대한 인증을 성공적으로 수행하고, CAPTCHA 데이터를 데이터 연산정보에 따라 연산한 결과와 수신된 응답 신호가 동일하지 않다면 해당 사용자에 대한 인증이 부정될 수 있다.
또한, 본 발명의 일 실시예에 따른 응답 신호는 CAPTCHA 데이터와 보안문자가 데이터 연산정보에 따라 연산된 결과를 나타내는 신호가 클라이언트로 인가되어 암호화된 신호일 수 있다.
본 발명의 일 실시예에 따른 "보안 문자"란, 보안 요구자(예컨대, 서비스 제공자)에서 이미 알고 있는 번호, 또는 문자, 또는 문자열을 말하며, 이러한 번호, 또는 문자, 또는 문자열은 사용자 별로 미리 구분되어 부여되어 있다. 또한, 보안 문자는 사용자로부터 제공받은 데이터를 암호화해서 저장한 비밀번호 등과는 상이하다. 보안 문자를 예컨대, 인터넷 뱅킹 보안 카드 번호, 계좌 및 카드 번호, 신용카드 CVC 번호, ID 등을 일컬을 수 있다.
서버(예컨대, 서비스 제공사(provider), 인증 기관 등) 측에서는 적어도 하나의 클라이언트 측으로 단순히 보안 문자의 입력만을 요구하는 것이 아니라, CAPTCHA 데이터와 보안문자를 데이터 연산정보에 따라 연산하여 획득된 결과를 송신할 것을 요청할 수 있다. 다시 말해서, 사용자로 하여금 보안 문자를 직접 입력하는 것이 아닌 CAPTCHA 데이터와 보안문자를 데이터 연산정보에 따라 연산하여 획득된 결과를 입력하도록 함으로써, 서버와 클라이언트 간 송수신되는 패킷에는 보안 문자가 포함되어 있지 않다는 점, 일회성 수(number) 등을 텍스트 형태가 아닌 이미지 형식으로 주고 받을 수 있다는 점에서 종래 대비 데이터 보안성을 더욱 향상시킬 수 있다.
본 발명의 일 실시예에 따른 응답 신호에 기초하여 적어도 하나의 클라이언트에 대한 인증을 수행하는 단계(S500)는, CAPTCHA 데이터와 보안문자를 데이터 연산정보에 따라 연산하는 단계, 연산 결과와 수신된 응답 신호를 비교하는 단계, 비교 결과에 따라 적어도 하나의 클라이언트에 대한 인증을 수행하는 단계를 포함할 수 있다.
예를 들어, 사용자가 CAPTCHA 데이터로써 숫자 "1003"을 서버로부터 수신하고, 데이터 연산정보로써 덧셈 연산을 수신하였다면, 자신의 신용카드 CVC 번호인 "211"를 CAPTCHA 데이터인 숫자 "1003"와 합산하여 획득된 결과인 "1214"를 응답 신호로써 서버 등으로 송신할 수 있다. 서버 등에서는 DB와 같은 저장소에 저장된 개별 사용자의 보안문자와 생성된 인증관련 정보를 상호 연산하고, 클라이언트 측으로부터 수신된 응답 신호와 비교함으로써 사용자 인증을 수행할 수 있다. 다시 말해서, CAPTCHA 데이터와 보안문자를 데이터 연산정보에 따라 연산한 결과와 수신된 응답 신호가 동일하다면 해당 클라이언트(또는 사용자)에 대한 인증을 성공적으로 수행하고, CAPTCHA 데이터와 보안문자를 데이터 연산정보에 따라 연산한 결과와 수신된 응답 신호가 동일하지 않다면 해당 사용자에 대한 인증이 부정될 수 있다.
도 3은 CAPTCHA를 이용한 일회성 보안 문자 인증 방법의 일 예를 나타낸다.
본 발명의 일 실시예에 따라 CAPTCHA를 이용한 일회성 보안 문자 인증은, 다음과 같은 단계로 수행될 수 있다.
서버(예컨대, 서비스 제공사(provider), 인증 기관 등) 측에서는 적어도 하나의 클라이언트 측으로부터 인증 서비스를 요청받을 수 있다. 서버 측에서는 적어도 하나의 클라이언트로부터 인증관련 정보 제공을 요청받고, 수신된 요청에 기초하여 인증관련 정보를 생성할 수 있다. 다시 말해서, CAPTCHA 데이터 및 데이터 연산정보 중 적어도 하나가 생성될 수 있다. 또한, 연산 정보는 미리 생성되어 있고, CAPTCHA 데이터 생성 시마다 랜덤하게 선택될 수도 있다.
서버 측에서는 생성된 인증관련 정보를 클라이언트 측으로 송신할 수 있고, 클라이언트 측에서는 수신된 인증관련 정보에 따라 사용자로 하여금 응답 신호를 입력하게 하기 위한 입력 창을 디스플레이부(미도시)를 통하여 디스플레이할 수 있다. 사용자는 서버 측으로부터 제공받은 인증관련 정보를 인지하고, 인증관련 정보에 따라 인증을 위한 응답 신호를 사용자 디바이스(예컨대, 컴퓨터, 스마트 폰 등)로 입력하고, 이를 서버 측으로 송신할 수 있다. 입력된 응답 신호는 암호화 기법에 따라 다양하게 암호화될 수 있다.
서버 측에서는 생성된 인증관련 정보에 대한 연산을 통하여 연산 결과를 획득해두고, 인증관련 정보를 제공받은 적어도 하나의 클라이언트로부터 응답 신호를 수신하여 상호 비교할 수 있다. 비교 결과에 기초하여 클라이언트의 인증 여부가 결정될 수 있다.
본 발명의 일 실시예는 컴퓨터에 의해 실행되는 프로그램 모듈과 같은 컴퓨터에 의해 실행가능한 명령어를 포함하는 기록 매체의 형태로도 구현될 수 있다. 컴퓨터 판독 가능 매체는 컴퓨터에 의해 액세스될 수 있는 임의의 가용 매체일 수 있고, 휘발성 및 비휘발성 매체, 분리형 및 비분리형 매체를 모두 포함한다. 또한, 컴퓨터 판독가능 매체는 컴퓨터 저장 매체 및 통신 매체를 모두 포함할 수 있다. 컴퓨터 저장 매체는 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈 또는 기타 데이터와 같은 정보의 저장을 위한 임의의 방법 또는 기술로 구현된 휘발성 및 비휘발성, 분리형 및 비분리형 매체를 모두 포함한다. 통신 매체는 전형적으로 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈, 또는 반송파와 같은 변조된 데이터 신호의 기타 데이터, 또는 기타 전송 메커니즘을 포함하며, 임의의 정보 전달 매체를 포함한다.
전술한 본 발명의 설명은 예시를 위한 것이며, 본 발명이 속하는 기술분야의 통상의 지식을 가진 자는 본 발명의 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 쉽게 변형이 가능하다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다. 예를 들어, 단일형으로 설명되어 있는 각 구성 요소는 분산되어 실시될 수도 있으며, 마찬가지로 분산된 것으로 설명되어 있는 구성 요소들도 결합된 형태로 실시될 수 있다.
본 발명의 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 균등 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.
Claims (8)
- CAPTCHA를 이용한 일회성 보안 문자 인증 방법에 있어서,
적어도 하나의 클라이언트로부터 인증관련 정보 제공을 요청받는 단계;
상기 요청에 기초하여 상기 인증관련 정보를 생성하는 단계;
상기 생성된 인증관련 정보를 상기 적어도 하나의 클라이언트로 전송하는 단계;
상기 인증관련 정보를 제공받은 상기 적어도 하나의 클라이언트로부터 응답 신호를 수신하는 단계; 및
상기 응답 신호에 기초하여 상기 적어도 하나의 클라이언트에 대한 인증을 수행하는 단계를 포함하고,
상기 인증관련 정보는 CAPTCHA 데이터 및 데이터 연산정보를 포함하고,
상기 CAPTCHA 데이터에는 문자, 이미지 및 사운드 중 적어도 하나가 포함되며, 상기 데이터 연산정보는 사칙연산, 데이터의 병합, 데이터의 분할 및 데이터의 정렬 중 적어도 하나에 대한 정보가 포함되는 것을 특징으로 하는 CAPTCHA를 이용한 일회성 보안 문자 인증 방법.
- 삭제
- 제 1 항에 있어서,
상기 요청에 기초하여 상기 인증관련 정보를 생성하는 단계는,
상기 CAPTCHA 데이터를 랜덤하게 생성하는 단계; 및
상기 생성된 CAPTCHA 데이터에 기초하여 상기 데이터 연산정보를 생성하는 단계를 포함하는 것을 특징으로 하는 CAPTCHA를 이용한 일회성 보안 문자 인증 방법.
- 제 1 항에 있어서,
상기 응답 신호는 상기 CAPTCHA 데이터가 상기 데이터 연산정보에 따라 연산된 결과를 나타내는 신호가 상기 클라이언트로 인가되어 암호화된 것인 CAPTCHA를 이용한 일회성 보안 문자 인증 방법.
- 제 1 항에 있어서,
상기 응답 신호는 상기 CAPTCHA 데이터와 보안문자가 상기 데이터 연산정보에 따라 연산된 결과를 나타내는 신호가 상기 클라이언트로 인가되어 암호화된 것인 CAPTCHA를 이용한 일회성 보안 문자 인증 방법.
- 제 1 항에 있어서,
상기 응답 신호에 기초하여 상기 적어도 하나의 클라이언트에 대한 인증을 수행하는 단계는,
상기 CAPTCHA 데이터를 상기 데이터 연산정보에 따라 연산하는 단계;
상기 연산 결과와 상기 수신된 응답 신호를 비교하는 단계;
상기 비교 결과에 따라 상기 적어도 하나의 클라이언트에 대한 인증을 수행하는 단계를 포함하는 것을 특징으로 하는 CAPTCHA를 이용한 일회성 보안 문자 인증 방법.
- 제 1 항에 있어서,
상기 응답 신호에 기초하여 상기 적어도 하나의 클라이언트에 대한 인증을 수행하는 단계는,
상기 CAPTCHA 데이터와 보안문자를 상기 데이터 연산정보에 따라 연산하는 단계;
상기 연산 결과와 상기 수신된 응답 신호를 비교하는 단계;
상기 비교 결과에 따라 상기 적어도 하나의 클라이언트에 대한 인증을 수행하는 단계를 포함하는 것을 특징으로 하는 CAPTCHA를 이용한 일회성 보안 문자 인증 방법.
- 제 1 항의 방법을 구현하기 위한 프로그램이 기록된 컴퓨터로 판독 가능한 기록 매체.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020150116121A KR101674314B1 (ko) | 2015-08-18 | 2015-08-18 | Captcha를 이용한 일회성 보안 문자 인증 방법 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020150116121A KR101674314B1 (ko) | 2015-08-18 | 2015-08-18 | Captcha를 이용한 일회성 보안 문자 인증 방법 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR101674314B1 true KR101674314B1 (ko) | 2016-11-10 |
Family
ID=57484546
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020150116121A KR101674314B1 (ko) | 2015-08-18 | 2015-08-18 | Captcha를 이용한 일회성 보안 문자 인증 방법 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR101674314B1 (ko) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007525767A (ja) * | 2004-02-26 | 2007-09-06 | エフエムアール コーポレイション | ユーザ認証 |
KR20130022046A (ko) * | 2011-08-24 | 2013-03-06 | 한국전자통신연구원 | 프로필에 등록된 연락정보의 프라이버시를 강화하기 위한 방법 및 시스템 |
KR20130111039A (ko) * | 2012-03-30 | 2013-10-10 | (주)네오위즈게임즈 | 로그인 인증 장치, 방법 및 이를 저장한 기록 매체 |
-
2015
- 2015-08-18 KR KR1020150116121A patent/KR101674314B1/ko active IP Right Grant
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007525767A (ja) * | 2004-02-26 | 2007-09-06 | エフエムアール コーポレイション | ユーザ認証 |
KR20130022046A (ko) * | 2011-08-24 | 2013-03-06 | 한국전자통신연구원 | 프로필에 등록된 연락정보의 프라이버시를 강화하기 위한 방법 및 시스템 |
KR20130111039A (ko) * | 2012-03-30 | 2013-10-10 | (주)네오위즈게임즈 | 로그인 인증 장치, 방법 및 이를 저장한 기록 매체 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11405189B1 (en) | Systems and methods for trustworthy electronic authentication using a computing device | |
EP3631664B1 (en) | Secure biometric authentication using electronic identity | |
EP3138265B1 (en) | Enhanced security for registration of authentication devices | |
US9531710B2 (en) | Behavioral authentication system using a biometric fingerprint sensor and user behavior for authentication | |
US9032498B1 (en) | Method for changing authentication for a legacy access interface | |
EP2605567B1 (en) | Methods and systems for increasing the security of network-based transactions | |
US10848304B2 (en) | Public-private key pair protected password manager | |
EP1699205B1 (en) | Method and system for safely disclosing identity over the Internet | |
US9935953B1 (en) | Secure authenticating an user of a device during a session with a connected server | |
US20130205360A1 (en) | Protecting user credentials from a computing device | |
US11159321B2 (en) | Digital notarization using a biometric identification service | |
US9391982B1 (en) | Network authentication of multiple profile accesses from a single remote device | |
CN110770774A (zh) | 数据存储中的验证和加密方案 | |
JP2018502410A (ja) | 共通識別データ置換システムおよび方法 | |
US11936649B2 (en) | Multi-factor authentication | |
US20160125410A1 (en) | System and Method for Detecting and Preventing Social Engineering-Type Attacks Against Users | |
KR101360843B1 (ko) | 차세대 금융 거래 시스템 | |
KR20160037520A (ko) | 생체 인식 기반의 통합 인증 시스템 및 방법 | |
KR101674314B1 (ko) | Captcha를 이용한 일회성 보안 문자 인증 방법 | |
US20200204377A1 (en) | Digital notarization station that uses a biometric identification service | |
JP2023507568A (ja) | 悪意のあるプログラムコード注入に対する保護のためのシステム及び方法 | |
JP4022781B1 (ja) | パスワード管理装置、マルチログインシステム、Webサービスシステム、及びこれらの方法 | |
KR101792494B1 (ko) | 사용자 인증 방법 및 이를 수행하는 장치 | |
JP2019050014A (ja) | 口座開設システム、口座開設方法、及びプログラム | |
JP2008176762A (ja) | クライアント装置及びその方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |