KR20140047058A - 클라우드 공인인증 시스템 및 그 제공방법 - Google Patents

클라우드 공인인증 시스템 및 그 제공방법 Download PDF

Info

Publication number
KR20140047058A
KR20140047058A KR1020140011815A KR20140011815A KR20140047058A KR 20140047058 A KR20140047058 A KR 20140047058A KR 1020140011815 A KR1020140011815 A KR 1020140011815A KR 20140011815 A KR20140011815 A KR 20140011815A KR 20140047058 A KR20140047058 A KR 20140047058A
Authority
KR
South Korea
Prior art keywords
authentication
terminal
user
certificate
information
Prior art date
Application number
KR1020140011815A
Other languages
English (en)
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 박규영
Priority to KR1020140011815A priority Critical patent/KR20140047058A/ko
Publication of KR20140047058A publication Critical patent/KR20140047058A/ko

Links

Images

Classifications

    • 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/3263Cryptographic 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 involving certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements
    • 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/321Cryptographic 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 involving a third party or a trusted authority
    • 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/3247Cryptographic 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 involving digital signatures

Abstract

클라우드 공인인증 시스템 및 그 제공방법이 개시된다. 상기의 클라우드 공인인증 시스템은 사용자의 공개키를 저장하고 있는 사용자 DB, 사용자의 단말기로부터 상기 서비스의 서비스 요청이 수신되면, 상기 서비스를 요청한 상기 사용자를 인증하기 위한 인증대상정보를 포함하는 생성정보를 생성하기 위한 생성하기 위한 생성모듈, 상기 생성정보에 기초하여 수행되는 소정의 인증 프로세스를 통해 소정의 인증서버로부터 상기 생성모듈에 의해 생성된 상기 생성정보에 포함된 상기 인증대상정보를 포함하는 서명요청이 상기 사용자의 인증서를 저장하고 있는 인증기관 시스템으로 전달되어 상기 인증대상정보가 상기 인증기관 시스템에 의해 서명되면, 서명된 인증대상정보를 상기 인증기관 시스템 또는 소정의 인증 서버로부터 수신하기 위한 인터페이스 모듈, 및 수신된 상기 서명된 인증대상정보를 상기 사용자 DB에 저장된 상기 공개키를 이용해 검증하거나 검증된 결과를 상기 인증서버로부터 수신하여 상기 본인인증 여부를 판단하기 위한 검증모듈을 포함한다.

Description

클라우드 공인인증 시스템 및 그 제공방법{Digital certificate system for cloud-computing environment and providing method thereof}
본 발명은 클라우드 공인인증 시스템 및 그 제공방법에 관한 것으로, (공인)인증서를 통한 본인인증을 클라우딩(clouding) 환경에서 수행할 수 있도록 하여 사용자의 편의성을 높이면서도, 보안성은 높일 수 있는 시스템 및 그 제공방법에 관한 것이다.
일반적으로, 유무선 통신 네트워크를 통해 소정의 서비스(예컨대, 금융기관을 통한 금융거래, 온라인 마켓에서의 구매, 결제 등)를 이용할 때, 서비스 제공 측에서는 현재 서비스를 요청하는 사용자가 정당한 사용자인지 여부를 확인할 필요가 있다. 즉, 요청되는 서비스 명의자인지 여부를 판단하는 본인인증을 수행한 후 서비스를 제공하게 된다. 이러한 본인인증이 정확히 되지 않으면, 정당한 사용자에게는 치명적인 손실이 발생할 수도 있다.
따라서, 보안성이 높은 본인인증을 수행하기 위한 다양한 노력들이 진행되고 있다.
예컨대, 종래에 액티브엑스(ActiveX) 등의 보안 솔루션을 통해 악성코드의 탐지, 피싱 방지 등을 수행하고자 하는 노력도 계속되고 있다. 그러나, 이러한 보안 솔루션은 상대적으로 고가여서 모든 서비스 제공자가 모든 사용자에게 보안 솔루션을 제공하는데 무리가 있는 것이 사실이며, 악성코드나 피싱의 유형은 날로 다양해지므로 보안솔루션 역시 계속 갱신 또는 업그레이드가 수행되어야 하며, 이러한 갱신 또는 업그레이드가 수행되어도 보안상의 취약점은 새롭게 발견되고 있다. 또한, 보안 솔루션이 액티브액스 등의 특정 브라우저에 종속적인 형태로 개발되는 경우에는, 상기 특정 브라우저를 이용하지 않는 사용자에게는 상기 보안 솔루션이 적용될 수 없다는 문제점도 있다.
한편, 본인인증의 방식으로는 로그인, 디지털 인증서(공인인증서), 보안카드, OTP 등 다양한 방식이 사용되고 있다. 특히, 공인인증서를 통한 인증방식은 상대적으로 간단하면서도 높은 보안성을 가지는 비대칭 암호화 방식으로 본인인증을 수행하므로, 널리 사용되고 있는 본인인증 방식이다.
하지만, 이러한 공인인증서(이하, '인증서')를 통한 본인인증 방식은 서비스를 제공받고자 하는 단말기에 상기 인증서가 설치되어 있어야 인증이 수행되는 방식이어서, 항상 인증서를 서비스를 제공받을 단말기에 설치하여야 하는 불편함이 존재하였다.
또한, 최근에는 유출된 개인정보를 이용하여 악의적 사용자(해커 또는 피싱주체)가 아예 타인 명의의 인증서를 발급받는 경우도 빈번히 발생하고 있으며, 이러한 문제점을 위한 대책으로 인증서의 발급횟수 또는 인증서의 설치 단말기의 개수를 제한하고자 하는 정책도 시행되거나 시행될 준비를 하고 있다. 이러한 대책으로 인해 다소 보안성이 증가할 수는 있으나 사용자의 편의성 또는 사용성은 현저히 감소하게 될 소지가 있다.
더구나, 최근에는 정당 명의자에게 발급된 인증서도 해킹당하는 사례도 발생하고 있는데, 이처럼 인증서가 해킹당하는 사례는 주로 인증서가 설치되는 단말기가 보안성이 떨어지는 문제점이 있기 때문이다. 특히, 인증을 위한 비밀번호의 입력등에 키보드나 마우스 등과 같은 입력장치를 이용하는 경우에는, 키로깅(key logging) 등을 통해 입력 값들이 악의적 사용자에게 유출될 수 있는 문제점이 있으며, 이처럼 비밀번호가 유출되는 경우에는 보안성은 현저히 낮아지게 된다.
이처럼 공인인증서를 통해서도 보안성이 낮아지는 문제점의 배경은 다음과 같다.
인터넷 뱅킹 서비스 상용화를 계기로 정보보안이 인터넷 뱅킹 서비스의 신뢰성에 직결되기 때문에 설계과정에서부터 금융거래의 안전성을 보장하기 위해 다양한 정보보안 기술들이 검토되었다.
특히 1997~98년도 당시 인터넷 뱅킹 사용자의 대다수가 MS Windows와 MS Internet Explorer를 사용하고 있었고 이미 그 당시에도 MS Internet Explorer에서는 브라우저가 보안토큰(HSM: Hardware Security Module)과 연동할 수 있도록 PKCS#11 프로토콜을 지원하고 있었기 때문에 보안토큰(HSM)을 사용하는 것이 기술적으로는 가장 이상적인 선택이었다.
금융기관의 인터넷 뱅킹 서비스 설계자들은 인터넷 뱅킹 사용자가 아무리 안전하게 암호화 키를 생성/보관한다고 해도 소프트웨어적으로 암호화 키를 다루는 것은 잠재적 위협 요소가 너무도 많다는 것을 이미 알고 있었던 것이다.
즉 해킹된 PC의 하드디스크나 메모리에 암호화 키를 보관하는 것은 아무런 소용이 없다는 것이다.
따라서 독립적인 하드웨어 장치 내부에서 공인인증서와 암호화된 개인키를 생성하고 보관하는 보안 방식-즉,보안토큰(HSM: Hardware Security Module)-을 사용하는 것이 가장 안전한 방법이라고 판단했다.
그러나 당시 보안토큰(HSM)의 가격이 대략 4~5만원으로 너무 고가였기 때문에, 금융기관들은 HSM의 높은 안전성에도 불구하고 HSM 구매부담이 인터넷 뱅킹 서비스 보급확산에 커다란 장애물이 될 것을 걱정하여 이 방식을 채택할 수 없었다.
대신 차선책으로서 인터넷 뱅킹 사용자가 자신의 PC에 공인인증서와 암호화된 개인키를 다운로드하여 저장한 후 금융거래 시 사용하도록 하고, 공인인증서와 암호호화된 개인키가 해커에게 노출되어 악용될 수 있는 위험에 대비하고자 일종의 고정형 OTP인 보안카드(씨크릿카드)를 사용자마다 지급하는 매우 저렴한 정보보호 방식을 채택하여 상용 서비스에 적용했다.
그런데 해커들은 영리해서 보안능력이 강력한 인터넷 뱅킹 서버에 대해서는 해킹을 거의 시도하지 않았다.
서버에 비해 보안이 훨씬 취약한 인터넷 뱅킹 사용자의 PC와 사용자의 허술함을 집중적으로 노리고 다양한 해킹 기법들을 만들어 이를 악용해왔다.
이에 금융기관들도 해킹에 대한 사후적 대응 및 예방을 목적으로 메모리 해킹 방지를 위한 키보드 보안 솔루션, 본인인증을 위한 OTP생성기 보급과 2채널 본인인증 기법 도입등 다양한 보완책을 사용하고 있다. 그러나 금융기관의 이와 같은 일련의 대응조치들은 옥상옥 또는 누더기위에 누더기를 붙이는 것과 마찬가지인 셈이다. 인터넷 뱅킹 조기 보급확산에 성공한 금융기관들이 뒤늦게 나마 안전성 강화를 위해 정보보안에 막대한 금액을 지출하고 있지만 그 정보보호 솔루션들이 미봉책은 될 수 있으나 본질적 해결책이 되기에는 역부족인 것이다.
금융기관들은 HSM을 사용하지 않는 저렴한 보안방식으로 단기간에 인터넷 뱅킹 사용자 기반의 확대라는 결실을 얻었지만, 금융기관들의 정보보안에 대한 부담은 나날이 커져가고 있는 실정이다.
2012년 현재 인터넷 뱅킹 서비스는 모바일 뱅킹으로까지 확산되어, 우리나라 국민들의 일상 생활 속에서 중요한 일부분으로 깊숙하게 자리잡았으며, 국민들의 보안에 대한 의식과 지불의사수준 또한 매우 높아진 상황이다. 또한 안전하면서도 동시에 편리한 인터넷 뱅킹 서비스에 대한 요구와 욕망(Needs and wants)이 높아지고 있다.
따라서, 본 발명에서는 인터넷 뱅킹 서비스의 보안을 위한 본질적 해결책으로서 HSM 서버 즉, 클라우드 방식의 인증 방식을 제공하는 기술적 사상이 요구된다.
즉, 인터넷 뱅킹 서비스의 보안강도를 획기적으로 높일 수 있는 궁극적 대안은 바로 인터넷 뱅킹 서비스 사용자 모두가 HSM(보안토큰)을 사용하는 것이다. 그러나 이렇게 하려면 금융기관이나 사용자 둘 중 한쪽에서 그 HSM 구매비용을 부담해야 하고, 사용자에게는 HSM(보안토큰)을 상시 휴대해야 하는 불편성이 문제로 남는데, 이러한 문제점을 해결할 수 있는 기술적 사상이 요구된다.
즉, 사용자가 서비스를 제공받을 단말기에 종속적이지 않게 인증서를 통한 본인인증을 수행할 수 있고, 인증서를 이용하는 본인인증절차가 웹 클라이언트(예컨대, 브라우저 등)에 종속적이지 않게 수행될 수 있고, 멀티채널 인증의 수행 및 보안성이 높은 외부 시스템에의 인증서 보관 등을 통해 보안성은 증가하고, 사용자의 사용 편의성도 크게 저하되지 않을 수 있도록 클라우딩 환경에서 인증서를 통한 본인인증을 수행할 수 있는 시스템 및 방법이 요구된다.
따라서, 본 발명이 이루고자 하는 기술적인 과제는 사용자의 단말기에 설치되어 왔던 인증서를 보안성이 높은 외부 시스템에 보관해두고, 본인인증이 필요한 시점에 상기 외부 시스템에 저장되어 있는 상태에서 인증서를 통한 본인인증을 수행할 수 있는 시스템 및 그 방법을 제공하는 것이다.
또한, 인증서를 통한 본인인증에 있어서, 웹 클라이언트에 종속적이지 않고 본인인증을 수행할 수 있는 시스템 및 그 방법을 제공하는 것이다.
또한, 서비스 요청자 본인의 단말기로 인증받은 인증단말을 소지하고 있는지를 검증함으로써, 서비스 요청 단말기에 인증서가 설치되지 않아도 됨으로 인해 야기될 수 있는 보안성의 저하를 막을 수 있으며 요청되는 서비스 명의자 본인에게만 서비스를 제공할 수 있도록 하는 시스템 및 그 방법을 제공하는 것이다.
또한, 서비스 요청 단말기와 인증 단말이 서로 다른 경우에는 스캔(또는 촬영)을 통해 인증에 필요한 정보의 전달이 이루어질 수 있도록 함으로써, 정보의 타이핑이나 클릭 등이 필요 없어 본인인증의 소요시간을 단축할 수 있으며, 네트워크를 통해 인증에 필요한 정보가 전달되는 경우 발생할 수 있는 공격에 상대적으로 안전할 수 있는 시스템 및 그 방법을 제공하는 것이다.
또한, 서비스 시스템으로부터 서비스 요청 단말기로 전송되는 정보가 소정의 2D 또는 3D 코드로 코드화되어 전송될 수 있으므로, 대용량의 데이터 전송이 안전하게 수행될 수 있으며, 인증단말 또는 인증서버에 의해서만 디코딩될 수 있으므로 정보의 유출 또는 공격에 상대적으로 안전할 수 있는 시스템 및 그 방법을 제공하는 것이다.
또한, 인증서를 통한 인증을 수행하면서 인증단말 및/또는 서비스 시스템의 인증도 수행함으로써 인증단말의 위조 또는 피싱 사이트 등을 통한 피해에 안전할 수 있는 시스템 및 그 방법을 제공하는 것이다.
또한, 인증서를 사용자의 단말기에 비해 상대적으로 보안성이 높은 소정의 인증기관 시스템에 보관한 채로, 인증서를 통한 본인인증을 수행할 수 있으므로 인증서의 사용뿐만 아니라 보관 자체에도 뛰어난 보안성을 제공할 수 있는 시스템 및 그 방법을 제공하는 것이다.
상기의 기술적 사상을 구현하기 위한 본 발명의 실시 예에 따른 클라우드 공인인증 시스템은 사용자의 공개키를 저장하고 있는 사용자 DB, 사용자의 단말기로부터 상기 서비스의 서비스 요청이 수신되면, 상기 서비스를 요청한 상기 사용자를 인증하기 위한 인증대상정보를 포함하는 생성정보를 생성하기 위한 생성하기 위한 생성모듈, 상기 생성정보에 기초하여 수행되는 소정의 인증 프로세스를 통해 소정의 인증서버로부터 상기 생성모듈에 의해 생성된 상기 생성정보에 포함된 상기 인증대상정보를 포함하는 서명요청이 상기 사용자의 인증서를 저장하고 있는 인증기관 시스템으로 전달되어 상기 인증대상정보가 상기 인증기관 시스템에 의해 서명되면, 서명된 인증대상정보를 상기 인증기관 시스템 또는 소정의 인증 서버로부터 수신하기 위한 인터페이스 모듈, 및 수신된 상기 서명된 인증대상정보를 상기 사용자 DB에 저장된 상기 공개키를 이용해 검증하거나 검증된 결과를 상기 인증서버로부터 수신하여 상기 본인인증 여부를 판단하기 위한 검증모듈을 포함한다.
다른 실시 예에 의하면, 상기 클라우드 공인인증 시스템은 사용자의 단말임이 인증된 인증단말의 인증단말 식별정보 및 상기 인증단말 식별정보와 매칭되도록 저장된 상기 사용자의 인증서 식별정보를 포함하는 서버 DB, 사용자의 단말기로부터 상기 서비스의 서비스 요청이 상기 서비스 시스템으로 전송되면, 상기 서비스 시스템에 의해 생성되며 상기 사용자를 인증하기 위한 인증대상정보를 포함하는 생성정보 중 적어도 일부, 상기 인증단말의 식별정보, 및 상기 인증서의 비밀번호를 포함하는 서비스 인증요청신호를 인증단말로부터 수신하기 위한 수신모듈, 및 수신된 서비스 인증요청신호에 포함된 상기 인증단말의 식별정보에 기초하여 상기 서버 DB에 저장된 상기 인증서 식별정보를 추출하고, 추출된 상기 인증서 식별정보, 상기 인증대상정보, 및 상기 비밀번호를 포함하는 서명 요청을 상기 인증기관 시스템으로 전송하기 위한 서명요청 모듈을 포함하며, 상기 서명 요청에 응답하여 상기 인증기관 시스템에 의해 서명된 인증대상정보가 상기 서비스 시스템로 전송되거나 또는 상기 인증서버로 수신되면, 전송된 상기 서명된 인증대상정보가 검증되어 상기 본인인증이 수행되는 것을 특징으로 한다.
또 다른 실시 예에 의하면, 상기 클라우드 공인인증 시스템은 사용자의 인증서를 저장하기 위한 인증서 DB, 사용자의 단말기로부터 상기 서비스 시스템으로 상기 서비스의 서비스 요청이 수신되어 상기 서비스 시스템에 의해 생성된 상기 사용자를 인증하기 위한 인증 대상 정보를 포함하는 생성정보가 생성된 후, 소정의 인증 프로세스를 통해 상기 생성정보에 포함된 상기 인증 대상 정보를 포함하는 서명요청을 소정의 인증서버로부터 수신하기 위한 서명요청 수신모듈, 및 수신된 서명요청에 응답하여 상기 서명요청에 포함된 인증서 비밀번호를 이용해 상기 인증대상정보를 서명하고, 서명된 인증대상정보를 상기 서비스 시스템 또는 상기 인증서버로 전송하기 위한 서명모듈을 포함하며, 상기 서명된 인증대상정보가 상기 서비스 시스템 또는 상기 인증서버로 전송되면, 전송된 상기 서명된 인증대상정보가 상기 서비스 시스템 또는 상기 인증서버에 의해 검증되어 상기 본인인증이 수행되는 것을 특징으로 한다.
또 다른 일 실시 예에 의하면, 상기 클라우드 공인인증 시스템은 사용자의 본인인증이 수행된 후 소정의 서비스를 수행하는 서비스 시스템, 상기 사용자의 단말임이 미리 인증된 인증단말, 인증서버, 및 상기 사용자의 인증서를 저장하고 있는 인증기관 시스템을 포함하며, 상기 서비스 시스템은 사용자의 단말기 -상기 사용자의 단말기는 상기 인증단말일 수도 있음- 로부터 상기 서비스의 서비스 요청이 수신되면, 상기 서비스를 요청한 상기 사용자를 인증하기 위한 인증대상정보를 포함하는 생성정보를 생성하여 상기 사용자의 단말기로 전송하고, 상기 인증단말은 상기 사용자의 단말기 또는 상기 서비스 시스템으로부터 상기 생성정보를 수신한 후, 상기 생성정보 중 적어도 일부, 상기 인증단말의 식별정보, 및 상기 인증서의 비밀번호를 포함하는 서비스 인증요청신호를 상기 인증서버로 출력하고, 상기 인증서버는 수신된 서비스 인증요청신호에 포함된 상기 인증단말의 식별정보에 기초하여 상기 인증서버의 서버 DB에 저장된 상기 인증서 식별정보를 추출하고, 추출된 상기 인증서 식별정보, 상기 인증대상정보, 및 상기 비밀번호를 포함하는 서명 요청을 상기 인증기관 시스템으로 전송하며, 상기 인증기관 시스템은 수신된 서명요청에 응답하여 상기 서명요청에 포함된 인증서 비밀번호를 이용해 상기 인증대상정보를 서명하고, 서명된 인증대상정보를 상기 서비스 시스템 또는 상기 인증서버로 전송하는 것을 특징으로 한다.
또 다른 일 실시 예에 의하면, 상기 클라우드 공인인증 시스템은 사용자의 본인인증이 수행된 후 소정의 서비스를 수행하는 서비스 시스템, 상기 사용자의 단말임이 미리 인증된 인증단말, 및 인증서버를 포함하며, 상기 서비스 시스템은 사용자의 단말기 -상기 사용자의 단말기는 상기 인증단말일 수도 있음- 로부터 상기 인증단말의 등록요청이 수신되면, 상기 사용자의 식별정보를 포함하는 제2생성정보를 생성하여 상기 사용자의 단말기로 전송하고, 상기 인증단말은 상기 사용자의 단말기 또는 상기 서비스 시스템으로부터 상기 제2생성정보를 수신한 후, 상기 제2생성정보 또는 상기 제2생성정보에 포함된 상기 사용자의 식별정보 중 어느 하나, 및 상기 인증단말 식별정보를 포함하는 단말 등록요청신호를 상기 인증 서버로 출력하고, 상기 인증서버는 소정의 단말 인증 시스템을 통해 상기 사용자 식별정보 및 상기 인증단말 식별정보가 서로 상응하는지를 판단한 후, 서로 상응하는 경우에 상기 인증단말의 식별정보를 상기 인증서버에 등록하는 것을 특징으로 한다.
또 다른 일 실시 예에 의하면, 상기 클라우드 공인인증 시스템은 사용자의 본인인증이 수행된 후 소정의 서비스를 수행하는 서비스 시스템, 상기 사용자의 단말임이 미리 인증된 인증단말, 인증서버, 및 상기 사용자의 인증서를 저장하고 있는 인증기관 시스템을 포함하며, 상기 서비스 시스템은 사용자의 단말기 -상기 사용자의 단말기는 상기 인증단말일 수도 있음- 로부터 상기 인증서의 등록요청이 수신되면, 상기 인증서의 인증서 식별정보를 포함하는 제3생성정보를 생성하여 상기 사용자의 단말기로 전송하고, 상기 인증단말은 상기 사용자의 단말기 또는 상기 서비스 시스템으로부터 상기 제3생성정보를 수신한 후, 상기 제3생성정보 또는 상기 제3생성정보에 포함된 상기 인증서 식별정보 중 어느 하나, 및 상기 인증단말 식별정보를 포함하는 인증서 등록요청신호를 상기 인증서버로 출력하고, 상기 인증서버는 상기 인증서버에 미리 등록된 상기 인증단말 식별정보와 상기 인증서 등록요청 신호에 포함된 상기 인증서 식별정보를 매칭하여 등록하는 것을 특징으로 한다.
상기 기술적 과제를 해결하기 위한 사용자의 본인인증이 수행된 후 소정의 서비스를 수행하는 서비스 시스템을 포함하는 클라우드 공인인증 시스템의 제공방법은 상기 서비스 시스템이 사용자의 단말기로부터 상기 서비스의 서비스 요청을 수신하는 단계, 상기 서비스 시스템이 상기 서비스를 요청한 상기 사용자를 인증하기 위한 인증대상정보를 포함하는 생성정보를 생성하는 단계, 상기 서비스 시스템이 상기 생성정보를 상기 사용자의 단말기로 전송하는 단계, 상기 서비스 시스템이 서명된 인증대상정보를 소정의 인증기관 시스템 또는 소정의 인증 서버로부터 수신하는 단계, 및 상기 서비스 시스템이 수신된 상기 서명된 인증대상정보를 검증하는 단계를 포함하며, 상기 사용자의 단말기로 전송된 상기 생성정보에 기초하여 소정의 인증 프로세스가 수행되면 상기 인증서버에 상기 인증대상정보를 포함하는 서명요청이 상기 사용자의 인증서를 저장하고 있는 상기 인증기관 시스템으로 전달되고, 상기 인증대상정보가 상기 인증기관 시스템에 의해 서명되는 것을 특징으로 한다.
상기 기술적 과제를 해결하기 위한 사용자의 본인인증이 수행된 후 소정의 서비스를 수행하는 서비스 시스템을 위해, 본인인증을 수행하기 위한 인증서버를 포함하는 클라우드 공인인증 시스템의 제공방법은 상기 인증서버가 상기 사용자의 단말임이 인증된 인증단말의 인증단말 식별정보 및 상기 인증단말 식별정보와 매칭되도록 상기 사용자의 인증서 식별정보를 저장하는 단계, 상기 인증서버가 상기 인증단말로부터 서비스 인증요청신호를 수신하는 단계, 상기 인증서버가 상기 서비스 인증요청신호에 포함된 상기 인증단말의 식별정보에 기초하여 상기 인증단말의 식별정보에 매칭되는 인증서 식별정보를 추출하는 단계, 및 상기 인증서버가 추출된 상기 인증서 식별정보, 상기 서비스 인증요청신호에 포함된 상기 인증대상정보, 및 상기 인증서의 비밀번호를 포함하는 서명요청을 상기 인증서를 저장하고 있는 인증기관 시스템으로 전송하는 단계를 포함하며, 상기 인증기관 시스템으로 상기 서명요청이 전송되면, 상기 인증기관 시스템에 의해 상기 비밀번호를 통한 상기 인증서의 개인키가 획득되고, 획득된 개인키에 의해 상기 인증대상정보가 서명되어 상기 서비스 시스템 또는 상기 인증서버로 출력되는 것을 특징으로 한다.
상기 기술적 과제를 해결하기 위한 사용자의 본인인증이 수행된 후 소정의 서비스를 수행하는 서비스 시스템을 위해, 본인인증을 수행하기 위한 인증기관 시스템을 포함하는 클라우드 공인인증 시스템의 제공방법은 상기 인증기관 시스템이 상기 사용자의 인증서를 저장하는 단계, 상기 인증기관 시스템이 소정의 인증서버로부터 인증대상정보, 상기 인증서의 식별정보, 및 상기 인증서의 비밀번호를 포함하는 서명요청을 수신하는 단계, 상기 인증기관 시스템이 수신된 서명요청에 응답하여, 상기 인증서의 비밀번호를 통해 상기 인증서의 개인키를 추출하는 단계, 상기 인증기관 시스템이 추출된 개인키를 이용하여 상기 인증대상정보를 서명하는 단계, 및 상기 인증기관 시스템이 서명된 인증대상정보를 상기 인증서버 또는 상기 서비스 시스템으로 출력하는 단계를 포함하며, 상기 서명요청은, 사용자의 단말기로부터 상기 서비스 시스템으로 상기 서비스의 서비스 요청이 수신되면, 상기 서비스 시스템에 의해 생성된 상기 인증대상정보를 포함하는 생성정보에 기초한 소정의 인증 프로세스가 상기 사용자의 단말임이 미리 인증된 인증단말 및 상기 인증서버를 통해 수행된 후 상기 인증기관 시스템을 출력되는 것을 특징으로 한다.
상기 기술적 과제를 해결하기 위한 사용자의 본인인증이 수행된 후 소정의 서비스를 수행하는 서비스 시스템, 상기 사용자의 단말임이 미리 인증된 인증단말, 인증서버, 및 상기 사용자의 인증서를 저장하고 있는 인증기관 시스템을 포함하는 클라우드 공인인증 시스템의 제공방법은 상기 서비스 시스템이 사용자의 단말기 -상기 사용자의 단말기는 상기 인증단말일 수도 있음- 로부터 상기 서비스의 서비스 요청이 수신되면, 상기 서비스를 요청한 상기 사용자를 인증하기 위한 인증대상정보를 포함하는 생성정보를 생성하여 상기 사용자의 단말기로 전송하는 단계, 상기 인증단말이 상기 사용자의 단말기 또는 상기 서비스 시스템으로부터 상기 생성정보를 수신한 후, 상기 생성정보 중 적어도 일부, 상기 인증단말의 식별정보, 및 상기 인증서의 비밀번호를 포함하는 서비스 인증요청신호를 상기 인증서버로 출력하는 단계, 상기 인증서버가 수신된 서비스 인증요청신호에 포함된 상기 인증단말의 식별정보에 기초하여 상기 인증서버의 서버 DB에 저장된 상기 인증서 식별정보를 추출하고, 추출된 상기 인증서 식별정보, 상기 인증대상정보, 및 상기 비밀번호를 포함하는 서명 요청을 상기 인증기관 시스템으로 전송하는 단계, 및 상기 인증기관 시스템이 수신된 서명요청에 응답하여 상기 서명요청에 포함된 인증서 비밀번호를 이용해 상기 인증서의 개인키를 추출하여 상기 인증대상정보를 서명하고, 서명된 인증대상정보를 상기 서비스 시스템 또는 상기 인증서버로 전송하는 단계를 포함한다.
상기 기술적 과제를 해결하기 위한 사용자의 본인인증이 수행된 후 소정의 서비스를 수행하는 서비스 시스템, 상기 사용자의 단말임이 미리 인증된 인증단말, 및 인증서버를 포함하는 클라우드 공인인증 시스템의 제공방법은 상기 서비스 시스템이 사용자의 단말기 -상기 사용자의 단말기는 상기 인증단말일 수도 있음- 로부터 상기 인증단말의 등록요청이 수신되면, 상기 사용자의 식별정보를 포함하는 제2생성정보를 생성하여 상기 사용자의 단말기로 전송하는 단계, 상기 인증단말이 상기 사용자의 단말기 또는 상기 서비스 시스템으로부터 상기 제2생성정보를 수신한 후, 상기 제2생성정보 또는 상기 제2생성정보에 포함된 상기 사용자의 식별정보 중 어느 하나, 및 상기 인증단말 식별정보를 포함하는 단말 등록요청신호를 상기 인증 서버로 출력하는 단계, 상기 인증서버가 소정의 단말 인증 시스템을 통해 상기 사용자 식별정보 및 상기 인증단말 식별정보가 서로 상응하는지를 판단한 후, 서로 상응하는 경우에 상기 인증단말의 식별정보를 상기 인증서버에 등록하는 단계를 포함한다.
상기 기술적 과제를 해결하기 위한 사용자의 본인인증이 수행된 후 소정의 서비스를 수행하는 서비스 시스템, 상기 사용자의 단말임이 미리 인증된 인증단말, 인증서버, 및 상기 사용자의 인증서를 저장하고 있는 인증기관 시스템을 포함하는 클라우드 공인인증 시스템의 제공방법은 상기 서비스 시스템이 사용자의 단말기 -상기 사용자의 단말기는 상기 인증단말일 수도 있음- 로부터 상기 인증서의 등록요청이 수신되면, 상기 인증서의 인증서 식별정보를 포함하는 제3생성정보를 생성하여 상기 사용자의 단말기로 전송하는 단계, 상기 인증단말이 상기 사용자의 단말기 또는 상기 서비스 시스템으로부터 상기 제3생성정보를 수신한 후, 상기 제3생성정보 또는 상기 제3생성정보에 포함된 상기 인증서 식별정보 중 어느 하나, 및 상기 인증단말 식별정보를 포함하는 인증서 등록요청신호를 상기 인증서버로 출력하는 단계, 상기 인증서버가 상기 인증서버에 미리 등록된 상기 인증단말 식별정보와 상기 인증서 등록요청 신호에 포함된 상기 인증서 식별정보를 매칭하여 등록하는 단계를 포함한다.
상기 클라우드 공인인증 시스템 제공방법은 프로그램을 기록한 컴퓨터 판독 가능한 기록매체에 저장될 수 있다.
상기 클라우드 공인인증 시스템은 인증서의 저장 위치 및 인증서 비밀번호를 입력받을 수 있는 UI를 제공하는 UI 제공 수단, 상기 UI 제공 수단에 의해 제공되는 클라우드 UI가 상기 시스템에 의해 선택되는 경우, 사용자의 식별정보를 입력받기 위한 입력 수단, 및 상기 식별정보가 입력되면 클라우드 UI에 상응하는 인증기관 시스템으로부터 상기 식별정보에 상응하는 인증서에 대한 정보를 수신하고, 수신된 인증서에 대한 정보를 디스플레이하기 위한 인증서 정보 획득수단을 포함한다.
본 발명의 기술적 사상에 따른 클라우드 공인인증 시스템 및 그 제공방법에 의하면 사용자는 서비스를 요청하는 단말기에 일일이 인증서를 설치해두지 않아도 본인인증을 수행할 수 있으므로 편의성의 현저한 향상이 존재하는 효과가 있다.
또한, 서비스를 요청하는 단말기가 인증서의 탐색, 공개키를 통한 암복호화 등의 인증 프로토콜을 수행할 필요가 없으므로, 종래의 액티브엑스 등과 같이 웹 클라이언트에 종속적이지 않으면서도 인증서를 통한 본인인증을 수행할 수 있는 효과가 있다.
또한, 서비스 요청자 본인의 단말기로 인증받은 인증단말을 소지해야만 본인인증이 되므로, 2채널 인증이 가능한 효과가 있으며 서비스 요청 단말기에 인증서가 설치되지 않아도 됨으로 인해 야기될 수 있는 보안성의 저하를 막을 수 있는 효과가 있다.
또한, 서비스 요청 단말기와 인증 단말이 서로 다른 경우에는 스캔(또는 촬영)을 통해 인증에 필요한 정보의 전달이 이루어질 수 있도록 함으로써, 정보의 타이핑이나 클릭 등이 필요 없어 본인인증의 소요시간을 단축할 수 있는 효과가 있다. 또한, 네트워크를 통해 인증에 필요한 정보가 전달되지 않으므로 네트워크를 통한 공격에 상대적으로 안전한 효과가 있다.
또한, 서비스 시스템으로부터 서비스 요청 단말기로 전송되는 정보가 소정의 2D 또는 3D 코드로 코드화되어 전송될 수 있으므로, 상대적으로 큰 데이터 전송도 빠른 시간내에 수행될 수 있으며, 이러한 코드는 상대적으로 안전한 인증단말 또는 인증서버에 의해서만 디코딩되므로 서비스 요청 단말기의 보안성이 낮아도 안전하게 본인인증이 수행될 수 있는 효과가 있다.
또한, 인증서를 통한 인증을 수행하면서 인증단말 및/또는 서비스 시스템의 인증도 수행할 수 있으므로 인증단말의 위조 및/또는 피싱 사이트를 통한 손실의 방지가 가능한 효과가 있다.
또한, 인증서를 사용자의 단말기에 비해 상대적으로 보안성이 높은 소정의 인증기관 시스템에 보관한 채로, 인증서를 통한 본인인증을 수행할 수 있으므로 인증서의 사용뿐만 아니라 보관 자체에도 뛰어난 보안성을 제공할 수 있는 효과가 있다.
본 발명의 기술적 사상을 이해하기 위한 도면의 개략적인 설명은 아래와 같다.
도 1은 본 발명의 실시 예에 따른 클라우드 공인인증 시스템의 개략적인 구성을 나타내는 도면이다.
도 2는 본 발명의 일 실시 예에 따른 클라우드 공인인증 시스템에 포함되는 서비스 시스템의 개략적인 구성을 나타내는 도면이다.
도 3은 본 발명의 실시 예에 따른 클라우드 공인인증 시스템에 포함되는 인증서버의 개략적인 구성을 나타내는 도면이다.
도 4는 본 발명의 실시 예에 따른 클라우드 공인인증 시스템에 포함되는 인증기관 시스템의 개략적인 구성을 나타내는 도면이다.
도 5는 본 발명의 실시 예에 따른 클라우드 공인인증 시스템에 포함되는 인증단말의 개략적인 구성을 나타내는 도면이다.
도 6은 본 발명의 실시 예에 따른 클라우드 공인인증 시스템 제공방법에 따라 소정의 서비스가 요청되는 경우에 본인인증을 수행하는 방법을 설명하기 위한 도면이다.
도 7은 본 발명의 실시 예에 따른 클라우드 공인인증 시스템 제공방법에 따라 사용자의 인증단말이 등록되는 과정을 설명하기 위한 도면이다.
도 8은 본 발명의 실시 예에 따른 클라우드 공인인증 시스템 제공방법에 따라 사용자의 인증서가 등록되는 과정을 설명하기 위한 도면이다.
도 9는 본 발명의 실시 예에 따른 클라우드 공인인증 시스템 제공방법에 따라 코드화된 생성정보를 설명하기 위한 도면이다.
도 10은 본 발명의 실시 예에 따른 클라우드 공인인증 시스템 제공방법에 따라 인증단말에 의해 인증서 비밀번호가 입력되는 방식을 설명하기 위한 도면이다.
도 11은 본 발명의 실시 예에 따른 클라우드 공인인증 시스템 제공방법이 적용되는 경우의 유저 인터페이스의 일 예를 나타낸다.
본 발명과 본 발명의 동작상의 이점 및 본 발명의 실시에 의하여 달성되는 목적을 충분히 이해하기 위해서는 본 발명의 바람직한 실시 예를 예시하는 첨부 도면 및 첨부 도면에 기재된 내용을 참조하여야만 한다.
또한, 본 명세서에 있어서는 어느 하나의 구성요소가 다른 구성요소로 데이터를 '전송'하는 경우에는 상기 구성요소는 상기 다른 구성요소로 직접 상기 데이터를 전송할 수도 있고, 적어도 하나의 또 다른 구성요소를 통하여 상기 데이터를 상기 다른 구성요소로 전송할 수도 있는 것을 의미한다.
반대로 어느 하나의 구성요소가 다른 구성요소로 데이터를 '직접 전송'하는 경우에는 상기 구성요소에서 다른 구성요소를 통하지 않고 상기 다른 구성요소로 상기 데이터가 전송되는 것을 의미한다.
이하, 첨부한 도면을 참조하여 본 발명의 바람직한 실시 예를 설명함으로써, 본 발명을 상세히 설명한다. 각 도면에 제시된 동일한 참조부호는 동일한 부재를 나타낸다.
도 1은 본 발명의 실시 예에 따른 클라우드 공인인증 시스템의 개략적인 구성을 나타내는 도면이다.
도 1을 참조하면, 본 발명의 실시 예에 따른 클라우드 공인인증 시스템(1)은 서비스 시스템(100), 인증서버(200), 인증기관 시스템(300), 및 인증단말(500)을 포함한다. 상기 클라우드 공인인증 시스템(1)은 상기 서비스 시스템(100)으로 서비스 요청을 수행하는 사용자의 단말기(400)를 더 포함할 수 있다. 상기 인증서버(200)는 상기 인증단말(500)이 상기 사용자 본인의 단말임을 인증하기 위해 소정의 단말 인증시스템(600)과 유무선 통신을 수행하여 본 발명의 기술적 사상을 구현할 수 있다.
도 1에는 상기 서비스 시스템(100)으로 서비스를 요청한 단말기 즉, 사용자의 단말기(400)와 인증단말(500)이 서로 다른 경우를 일 예로 도시하고 있지만, 상기 서비스를 요청하는 단말기와 상기 인증단말(500)은 동일한 단말기일 수도 있다. 즉, 사용자 본인의 단말기임이 미리 인증된 인증단말(500)이 상기 서비스 시스템(100)으로 소정의 서비스를 요청할 수도 있다.
상기 인증단말(500)은 일 실시 예에 의하면, 사용자의 모바일 단말기(예컨대, 핸드폰, 스마트 폰, PDA 등)로 구현될 수 있다. 하지만, 이에 한정되지는 않으며 본 발명의 기술적 사상을 구현하기 위해 필요한 데이터 프로세싱 능력 및 통신기능을 가지는 모든 형태의 데이트 프로세싱 장치가 상기 인증단말(500)로 구현될 수도 있다.
한편, 상기 사용자의 단말기(400)는 사용자가 상기 서비스 시스템(100)으로 서비스를 요청하기 위해 이용되는 모든 형태의 데이터 프로세싱 장치를 포함하는 의미로 정의될 수 있다.
이하, 본 명세서에서는 서비스를 요청하는 사용자의 단말기(400)와 인증단말(500)이 각각 별도로 구비되는 경우를 위주로 설명하지만, 본 발명의 권리범위가 이에 한정되지는 않는다.
상기 서비스 시스템(100)은 소정의 서비스를 상기 사용자의 단말기(400)로 제공하는 시스템일 수 있다. 상기 서비스 시스템(100)은 예컨대, 금융기관 시스템, 온라인 마켓 시스템, 공공기관 시스템 등 본인인증을 수행한 후 소정의 서비스를 상기 사용자의 단말기(400)로 제공할 수 있는 모든 형태의 데이터 프로세싱 장치를 포함하는 의미로 정의될 수 있다. 상기 사용자의 단말기(400)로 제공되는 서비스의 일 예로는 예컨대, 로그인, 금융거래(조회, 이체, 결제 등), 물품의 구매, 공공서비스(기록의 조회, 서류의 발급 등) 등 다양할 수 있다.
상기 서비스 시스템(100)은 (공인)인증서를 이용한 본인인증을 수행한 후, 본인인증이 성공하면 상기 사용자의 단말기(400)가 요청한 서비스를 제공할 수 있다. 종래의 인증서를 통한 본인인증 방식은 인증서가 서비스를 요청하는 단말기(예컨대, 사용자의 단말기(400))에 저장되어 있어야 상기 인증서를 통한 본인인증이 가능하였다. 인증서가 저장 또는 설치되어 있다고 함은, 상기 인증서의 정보(예컨대, 인증서 시리얼 넘버, 발급기관, 사용자 정보, 유효기간, 공개키, 발급기관의 서명 등) 및 상기 인증서의 개인키가 저장되어 있음을 의미할 수 있다. 상기 개인키는 인증서 비밀번호로 암호화되어 있을 수 있다. 또한, 서비스를 제공하는 시스템(예컨대, 서비스 시스템(100))에는 인증서의 정보가 미리 등록되어 있을 수 있으며, 상기 인증서의 정보에는 상기 인증서의 공개키가 포함될 수 있다. 이처럼, 종래의 방식은 사용자 측만이 개인키를 소지하고 있고, 공개키를 소지하고 있는 상대방과 소정의 정보를 암복화를 수행함으로써 본인인증을 수행하였다. 따라서, 종래의 방식은 서비스를 요청하는 사용자의 단말기(400)가 항상 인증서를 저장하고 있어야 본인인증이 가능하였고, 서비스가 가능하였다. 따라서, 인증서를 통한 본인인증을 수행하는 시스템에 소정의 서비스를 요청하기 위해서는 인증서가 설치된 단말기만을 이용하거나, 또는 인증서를 물리적으로 항상 휴대하고 다녀야 했다.
하지만, 본 발명의 기술적 사상에 의하면, 상기 서비스 시스템(100)이 사용자의 본인인증을 수행할 때, 서비스를 요청하는 단말기 즉, 사용자의 단말기(400)에 저장된 인증서가 아니라, 상기 사용자의 인증서를 보관하고 있는 다른 시스템 즉, 인증기관 시스템(300)에 저장된 상기 인증서를 이용하여 본인인증을 수행할 수 있다. 따라서, 사용자는 서비스를 이용할 때, 단말기에 종속적이지 않으며(즉, 인증서의 설치여부와 무관하게 서비스를 제공받을 수 있으며), 인증서를 휴대하고 다니지 않아도 되므로 편의성이 현저하게 상승하는 효과가 있다.
또한, 종래에 인증서가 해킹되는 주요 이유 중 하나는 인증서가 설치되는 단말기 자체가 보안성이 낮고, 공격에 취약한 단말기일 수 있다는 것이었다. 하지만, 본 발명의 기술적 사상에 의하면, 사용자의 인증서는 상기 인증기관 시스템(300)에 저장될 수 있으며, 상기 인증기관 시스템(300)은 높은 수준의 보안장치 및/또는 솔루션을 갖추고 있게 되므로 인증서의 해킹 위험의 방지 및 인증서 보관 자체의 안정성이 향상되는 효과가 있다. 따라서, 종래에는 다수가 사용하는 컴퓨터 등에는 자신의 인증서를 설치하는 것이 매우 위험하였으며 이동식 저장매체를 이용하는 경우에도 여전히 위험하였으나, 본 발명의 기술적 사상에 의하면 공공장소의 컴퓨터나 보안성이 낮은 시스템을 통해서도 인증서를 통한 본인인증을 수행하는데에 위험성은 매우 낮아지는 효과가 있다. 상기 인증기관 시스템(300)은 상기 사용자의 인증서를 저장하고 있는 것뿐만 아니라, 상기 인증서를 발급하는 기능도 수행할 수 있다. 즉, 상기 인증기관 시스템(300)은 인증서의 발급기관의 시스템일 수도 있다.
한편, 상기 서비스 시스템(100)이 인증서를 통해 상기 사용자의 본인인증을 수행하기 위해서는, 소정의 정보가 인증서를 저장하고 있는 시스템에 의해 서명되면, 서명된 정보를 수신하고 수신된 정보가 검증되어야 할 수 있다. 종래의 방식에 의하면, 인증서를 저장하고 있는 사용자의 단말기가 소정의 정보를 인증서의 개인키로 암호화하여 서명하고, 서명된 정보를 서비스를 제공하는 시스템에서 공개키로 복호화함으로써 본인인증이 수행되었다. 하지만, 본 발명의 기술적 사상에 의하면, 인증서는 상기 인증기관 시스템(300)이 소지하고 있으므로, 소정의 정보(후술할 인증대상정보)의 서명은 상기 인증기관 시스템(300)에 의해 수행될 수 있다. 한편, 서명된 정보의 검증을 상기 서비스 시스템(100)이 수행함으로써 본인인증이 수행될 수 있다. 구현 예에 따라서는, 서명된 정보의 검증은 소정의 인증서버(200)에 의해 수행될 수도 있다. 그러면, 상기 서비스 시스템(100)은 상기 인증서버(200)로부터 인증결과를 수신할 수도 있다. 물론, 상기 인증서버(200)가 상기 서명된 정보를 검증하기 위해서는, 상기 인증서버(200)가 인증서의 공개키를 소지하고 있어야 할 수 있다.
한편, 상기 인증서버(200)는 사용자의 단말기(400)를 이용하여 서비스를 요청하는 자가 미리 인증된 인증단말(500)을 소지하고 있는지를 확인할 수 있다. 따라서, 상기 인증서버(200)는 상기 인증단말(500)을 소지하지 않는 이상, 인증서의 비밀번호를 알고 있어도 본인인증이 성공적으로 수행되지 않도록 할 수 있다. 따라서, 인증서의 비밀번호를 알고 있는지 여부 및 인증단말(500)을 소지하고 있는지 여부를 통한 2채널 인증이 수행되는 효과가 있다. 또한, 상기 인증서버(200)는 상기 인증단말(500)이 위변조되었는지 여부 및/또는 상기 서비스 시스템(100)이 위변조되었는지 여부를 검증할 수도 있다. 따라서, 인증단말(500)이 모바일 폰인 경우, 복제폰 등을 통한 본인인증의 수행을 필터링할 수 있으며, 서비스 시스템(100)이 제공하는 소정의 웹 페이지와 유사한 피싱 사이트 등을 통한 악의적 공격이나 이로 인한 피해를 방지할 수 있는 효과가 있다.
또한, 상기 인증서버(200)는 사용자의 인증단말(500)을 등록하거나, 사용자의 인증서를 상기 인증단말(500)과 매칭하여 등록하는 역할을 수행할 수 있다. 따라서, 상기 인증서버(200)는 본 발명의 기술적 사상을 구현하기 위한 본인인증절차의 전체적인 제어 및 검증을 수행하는 기능을 할 수 있다. 인증단말(500)이 사용자의 모바일 폰인 경우, 상기 인증서버(200)는 단말 인증시스템(600)을 통해 상기 인증단말(500)을 등록할지 여부를 판단할 수 있다.
상기 단말 인증시스템(600)은 예컨대, 모바일 통신 서비스를 제공하는 이동통신사 시스템일 수 있다. 일반적으로 모바일 통신 서비스를 이용하기 위해서는 이동통신사 또는 대리점 등에 의한 본인의 대면 확인이 수행되므로, 이동통신사 시스템에는 신뢰할 수 있는 사용자 및 상기 사용자의 모바일 폰에 대한 정보가 유지관리되고 있다. 따라서, 상기 인증서버(200)는 상기 이동통신사 시스템을 통해 인증단말(500)로 등록 요청되는 단말이 사용자 본인의 단말인지를 확인하고 등록을 수행할 수 있다. 하지만, 상기 단말 인증시스템(600)은 사용자 및 사용자의 단말(즉, 인증단말(500))에 대한 정보를 유지 및/또는 관리하고 있는 어떠한 종류의 시스템으로도 구현 가능할 수 있다.
상기 사용자의 단말기(400)는 상기 서비스 시스템(100)으로 소정의 서비스를 요청할 수 있는 모든 형태의 데이터 프로세싱 장치를 의미할 수 있다. 상기 사용자의 단말기(400)는 상기 서비스 시스템(100)과 유무선 통신을 통해 본 발명의 기술적 사상을 구현하기 위한 소정의 정보를 송수신할 수 있다. 상기 사용자의 단말기(400)에는 상기 서비스 시스템(100)에 접속하여 소정의 서비스를 요청하기 위한 웹 클라이언트가 설치될 수 있다. 종래에 인증서를 통한 인증을 수행하기 위해서는 상기 웹 클라이언트는 인증서를 통한 본인인증을 수행할 수 있는 다양한 구성이 설치되어 있어야 했다. 예컨대, 방화벽, 키보드 보안, 공인인증서 보안 등을 위한 다양한 구성(예컨대, 액티브엑스(ActiveX) 등)이 상기 웹 클라이언트에 설치가능하거나 또는 연동가능하여야 했으며, 이러한 경우에는 상기 웹 클라이언트는 이러한 구성이 설치 또는 연동가능한 특정 웹 클라이언트에 한해 본인인증이 수행될 수 있었다. 또한, 웹 클라이언트에 종속적이지 않고 인증서를 통한 본인인증을 수행하기 위해서 종래의 서비스 시스템(100)의 입장에서는 사용자가 이용하는 다양한 웹 클라이언트별로 상기의 구성 또는 기능을 수행하는 솔루션을 개발하여 사용자의 단말기에 제공하여야 했다. 하지만, 본 발명의 기술적 사상에 의하면, 후술할 바와 같이 상기 서비스 시스템(100)에 설치된 웹 클라이언트는 단순히 상기 서비스 시스템(100)부터 수신되는 정보를 디스플레이하기만 하면 되므로, 웹 클라이언트에 종속적이지 않고 본 발명의 기술적 사상에 따른 본인인증을 수행할 수 있는 효과가 있다.
한편, 인증단말(500)은 상기 서비스 시스템(100)으로부터 직접 또는 상기 사용자의 단말기(400)를 통해 전달된 생성정보를 포함하는 소정의 요청신호를 생성하고, 생성된 요청신호를 상기 인증서버(200)로 전송하는 역할을 수행할 수 있다. 소정의 서비스에 대한 본인인증이 수행되는 경우에는, 상기 인증단말(500)은 상기 서비스 시스템(100)이 제공하는 소정의 서비스를 인증요청하는 서비스 인증요청신호를 상기 인증서버(200)로 출력할 수 있다. 또한, 후술할 바와 같이 인증단말(500)의 등록을 요청하거나 인증서의 등록을 요청하는 경우에는 각각 상응하는 단말등록 요청신호 또는 인증서 등록요청신호를 상기 인증서버(200)로 출력할 수 있다. 따라서, 본 발명의 기술적 사상에 의해 수행되는 프로세스는 상기 인증단말(500)에 의해 수행되어야 할 프로세스의 요청이 상기 인증서버(200)로 전송되고, 전송된 요청에 응답하여 상기 인증서버(200)가 요청에 상응하는 행위를 수행하는지에 따라 제어될 수 있다. 물론, 각 시점마다 수행되어야 할 프로세스가 어떠한 것인지는 상기 사용자의 단말기(400)가 어떠한 요청을 상기 서비스 시스템(100)으로 전송하는지에 따라 결정될 수 있음은 물론이다.
또한, 전술한 바와 같이 상기 사용자의 단말기(400)와 상기 인증단말(500)은 반드시 별도로 구비되어야 하는 것은 아니다. 일 실시 예에 의하면, 모바일 폰으로 구현되는 상기 인증단말(500)이 상기 서비스 시스템(100)으로 서비스 요청, 단말등록 요청, 및/또는 인증서 등록요청을 수행할 수도 있다. 또는, 데스크탑, 노트북 등이 인증단말(500)일 수도 있고, 이러한 경우에는 상기 인증단말(500)이 모바일 폰 등을 거치지 않고 직접 인증서버(200)로 다양한 인증요청 또는 등록요청을 수행할 수도 있다.
한편, 상기 서비스 시스템(100)으로 서비스를 요청하는 단말기 즉, 사용자의 단말기(400)와 상기 인증단말(500)이 별도로 구비되는 경우에는, 본 발명의 기술적 사상을 구현하기 위한 소정의 생성정보가 상기 사용자의 단말기(400)에서 상기 인증단말(500)로 전달될 필요가 있다. 이때 이러한 정보의 전달은 유무선 통신을 통해 수행되는 것이 아니라, 스캐닝 또는 촬영을 통해 수행될 수 있다. 따라서, 사용자는 정보의 전송을 위해 필요한 정보를 상기 사용자의 단말기(400)에 키보드 또는 마우스 등의 입력장치를 통해 입력할 필요가 없으므로, 유무선 통신이 공격의 대상이 되어 정보가 가로채기 당하는 위험이 줄어들 수 있으며 사용자가 직접 입력해야 하는 정보의 양이 줄어들므로 본인인증에 드는 불편함 또는 시간을 줄일 수 있는 효과도 있다.
또한, 상기 서비스 시스템(100)에서 상기 사용자의 단말기(400)로의 정보의 전달, 상기 사용자의 단말기(400)에서 상기 인증단말(500)로의 정보의 전달은 2D 또는 3D로 코드화된 소정의 2D 또는 3D 코드 형태로 이루어질 수 있다. 따라서, 이러한 코드를 디코딩할 수 있는 솔루션이 없는한 정보의 유출에 비교적 안전한 효과가 있다. 그리고, 이러한 디코딩 솔루션은 비교적 안전한 장치로 인정되는 상기 인증단말(500) 및/또는 상기 인증서버(200)에만 설치될 수 있으므로, 안전하고 대용량의 데이터가 효율적으로 전달될 수 있는 효과가 있다.
이하에서는 본 발명의 기술적 사상에 따른 상기 클라우드 공인인증 시스템(1)의 각각의 구체적인 구성에 대하여 살펴보도록 한다.
도 2는 본 발명의 일 실시 예에 따른 클라우드 공인인증 시스템에 포함되는 서비스 시스템의 개략적인 구성을 나타내는 도면이다.
도 2를 참조하면, 상기 서비스 시스템(100)은 생성모듈(110), 인터페이스 모듈(120), 검증모듈(130), 및 사용자 DB(140)를 포함한다. 상기 서비스 시스템(100)은 제1인증코드 생성모듈(150)을 더 포함할 수 있다.
본 명세서에서 모듈이라 함은, 본 발명의 기술적 사상을 수행하기 위한 하드웨어 및 상기 하드웨어를 구동하기 위한 소프트웨어의 기능적, 구조적 결합을 의미할 수 있다. 예컨대, 상기 '모듈'은 소정의 코드와 상기 소정의 코드가 수행되기 위한 하드웨어 리소스(resource)의 논리적인 단위를 의미할 수 있으며, 반드시 물리적으로 연결된 코드를 의미하거나, 한 종류의 하드웨어를 의미하는 것은 아님은 본 발명의 기술분야의 평균적 전문가에게는 용이하게 추론될 수 있다.
또한, 도 2 내지 도 4에는 서비스 시스템(100), 인증서버(200), 및 인증기관 시스템(300)을 하나의 장치처럼 도시하였지만, 반드시 어느 하나의 물리적 장치로 구현될 필요는 없다. 즉, 상기 서비스 시스템(100), 인증서버(200), 및 인증기관 시스템(300)은 각각 복수의 물리적 장치가 유기적으로 결합되어 구현되는 시스템일 수도 있다. 따라서, 상기 서비스 시스템(100), 인증서버(200), 및 인증기관 시스템(300) 각각에 포함된 구성 중 일부는 어느 하나의 물리적 장치로 구현되거나 설치되고, 나머지 일부는 다른 물리적 장치로 구현되거나 설치될 수도 있다.
상기 생성모듈(110)은 사용자의 단말기(400)로부터 소정의 서비스의 서비스 요청이 수신되면, 상기 서비스를 요청한 상기 사용자를 인증하기 위한 인증대상정보를 포함하는 생성정보를 생성할 수 있다. 또한, 상기 생성모듈(110)은 상기 서비스 시스템(100)으로부터 인증단말(500)의 등록요청이 수신되면, 등록에 필요한 정보를 포함하는 제2생성정보를 생성할 수도 있다. 또한, 상기 생성모듈(110)은 상기 서비스 시스템(100)으로부터 인증서의 등록요청이 수신되면, 인증서 등록에 필요한 정보를 포함하는 제3생성정보를 생성할 수도 있다.
상기 생성정보는 상기 사용자를 인증하는데 필요한 인증대상정보를 적어도 포함할 수 있다. 상기 인증대상정보는 상기 서비스를 요청한 사용자를 인증하기 위해 서명의 대상이 되는 정보일 수 있으며, 상기 서비스 시스템(100)의 종류 및 구현 예에 따라 다양할 수 있다. 예컨대, 상기 서비스가 금융거래인 경우에는 금융거래시에 필요한 정보(예컨대, 계좌, 사용자, 거래내역 정보 등)일 수 있다. 또는 상기 서비스가 소정의 물품 또는 서비스를 구매하기 위한 결제요청인 경우에는, 결제정보 등일 수도 있다. 구현 예에 따라서는, 상기 서비스 시스템(100)에서 인증을 하기 위해 별도로 생성하는 정보일 수도 있다. 어떠한 경우든, 상기 인증대상정보는 상기 인증기관 시스템(300)에 의해 서명의 대상이 되는 정보일 수 있으며, 상기 인증대상정보는 상기 서비스의 종류, 상기 서비스 시스템의 종류, 및/또는 구현 예에 따라 다양해질 수 있다. 상기 생성정보는 서비스 요청이 상기 사용자의 단말기(400)로부터 요청되면 상기 생성모듈(110)에 의해 생성되며, 생성된 상기 생성정보는 인증단말(500)을 통해 인증서버(200)로 전송되어, 상기 인증서버(200)에 의해 소정의 검증이 수행이 성공되면 상기 생성정보에 포함된 상기 인증대상정보의 서명요청이 수행될 수 있다.
한편, 상기 생성모듈(110)은 제2생성정보 및/또는 제3생성정보를 생성할 수도 있다.
상기 제2생성정보는 상기 사용자의 단말기(400)로부터 인증단말(500)의 등록요청이 수신될 때 상기 생성모듈(110)에 의해 생성되는 정보일 수 있다. 상기 제2생성정보는 상기 인증단말(500)의 등록에 필요한 정보를 포함할 수 있다. 상기 인증단말(500)의 등록에 필요한 정보는 상기 사용자의 식별정보(예컨대, 사용자의 이름, 생일 등)을 포함할 수 있다. 구현 예에 따라서는, 상기 인증단말(500)에 상응하는 전화번호가 포함될 수도 있다.
제3생성정보는 상기 사용자의 단말기(400)로부터 인증서의 등록요청이 수신될 때 상기 생성모듈(110)에 의해 생성되는 정보일 수 있다. 상기 제3생성정보는 상기 인증서의 등록에 필요한 정보를 포함할 수 있다. 상기 인증서의 등록에 필요한 정보는 상기 인증서 정보(예컨대, 인증서 식별번호(시리얼 넘버), 발급기관, 사용자 정보, 유효기간, 공개키, 발급기관의 서명)에 포함된 인증서 식별정보(예컨대, 인증서 식별번호, 발급기관 등)일 수 있다.
상기 생성모듈(110)에 의해 생성된 상기 제2생성정보, 상기 제3생성정보는 각각 인증단말(500)을 통해 상기 인증서버(200)로 전송되며, 소정의 검증이 수행되면, 제2생성정보에 포함된 정보에 기초한 인증단말(500)의 등록 및 제3생성정보에 포함된 정보에 기초한 인증서 등록이 상기 인증서버(200)에 의해 수행될 수 있다.
한편, 상기 생성정보, 상기 제2생성정보, 및/또는 상기 제3생성정보는 상기 인증서버(200)에 의해 검증되기 위한 소정의 제1인증코드를 더 포함할 수 있다. 상기 제1인증코드는 상기 생성정보, 상기 제2생성정보, 및/또는 상기 제3생성정보를 생성하는 상기 서비스 시스템(100)의 진위를 판단하기 위해 사용되는 정보일 수 있다. 예컨대, 상기 제1인증코드는 상기 인증서버(200)에 의해 배포된 소정의 OTP(One Time Password) 생성솔루션에 의해 생성되는 일련의 정보일 수 있으며, 상기 제1인증코드는 상기 제1인증코드 생성모듈(150)에 의해 생성될 수 있다. 또한, 상기 제1인증코드 생성모듈(150)에 의해 생성되는 상기 제1인증코드를 검증하기 위한 소정의 구성이 상기 인증서버(200)에 포함될 수 있으며, 이러한 구성은 후술하는 바와 같이 상기 인증서버(200)에 포함된 제1인증코드 검증모듈일 수 있다. 상기 제1인증코드 검증모듈은 예컨대, 서버 OTP 생성솔루션일 수 있다. 즉, 상기 제1인증코드 생성모듈(150)은 OTP 토큰의 기능을 수행하고, 상기 제1인증코드 검증모듈은 OTP 인증서버의 기능을 수행할 수 있다. 상기 제1인증코드는 상기 생성정보, 상기 제2생성정보, 및/또는 상기 제3생성정보의 생성시마다 변경될 수 있음은 본 발명의 기술분야의 평균적 전문가는 용이하게 추론할 수 있을 것이다. 따라서, 상기 생성정보, 상기 제2생성정보, 및/또는 상기 제3생성정보에 상기 제1인증코드가 포함되는 경우에는, 상기 서비스 시스템(100)의 진위여부가 검증될 수 있으며, 이를 통해 피싱 사이트 등을 통한 정보의 유출 또는 피해를 방지할 수 있는 효과가 있다. 물론, 상기 생성정보, 상기 제2생성정보, 및/또는 상기 제3생성정보에는 상기 서비스 시스템(100)을 식별할 수 있는 식별정보가 더 포함될 수 있음은 물론이다.
일 예에 의하면, 상기 생성정보, 상기 제2생성정보, 및/또는 상기 제3생성정보는 플레인(plain) 텍스트 정보일 수도 있지만, 2D 또는 3D로 표현되는 코드로 구현될 수도 있다. 이러한 경우, 상기 생성모듈(110)은 상기 생성정보, 상기 제2생성정보, 및/또는 상기 제3생성정보에 포함될 정보를 특정한 후, 특정된 정보를 코드화하여 상기 코드를 생성할 수 있다. 이처럼 상기 생성정보가 소정의 코드로 구현되는 경우, 많은 정보를 압축하여 전송할 수 있는 효과가 있고, 사용자의 입력장치에 의한 입력을 줄여주는 효과가 있다. 또한, 상기 코드를 디코딩할 수 있는 솔루션이 있어야만 정보의 획득이 가능해지므로, 상기 코드를 디코딩할 수 있는 솔루션을 신뢰할 수 있는 장치에만 제공함으로써 정보의 유출을 줄일 수 있는 효과가 있다.
상기 인터페이스 모듈(120)은 상기 생성정보에 포함된 인증대상정보가 소정의 인증 프로세스를 통해 상기 인증기관 시스템(300)으로 전달되고, 전달된 인증대상정보가 상기 인증기관 시스템(300)에 의해 서명되면, 서명된 인증대상정보를 상기 인증기관 시스템(300) 또는 상기 인증서버(200)로부터 수신할 수 있다.
상기 인증 프로세스는 상기 생성정보의 인증단말(500)로의 전달, 상기 인증단말(500)이 상기 인증서버(200)로 출력하는 서비스 인증요청신호, 상기 인증서버(200)에 의한 검증, 및 검증이 성공하는 경우에 상기 인증서버(200)가 상기 인증기관 시스템(300)으로 출력하는 서명요청의 일련의 프로세스를 포함할 수 있다.
상기 생성정보의 상기 인증단말(500)로의 전달은 상기 생성정보가 상기 인증단말(500)로 직접 또는 상기 사용자의 단말기(400)를 통해 전달되는 프로세스를 포함할 수 있다.
상기 인증단말(500)이 상기 인증서버(200)로 출력하는 서비스 인증요청신호에는 상기 생성정보의 적어도 일부, 인증서 비밀번호, 및 단말 식별정보를 포함할 수 있다. 상기 생성정보의 적어도 일부가 상기 서비스 인증요청신호에 포함된다고 함은, 상기 인증단말(500)이 상기 생성정보를 상기 서비스 시스템(100) 또는 상기 사용자의 단말기(400)로부터 전달받은 후, 상기 생성정보 자체를 상기 서비스 인증요청신호에 포함시켜 상기 인증서버(200)로 전송할 수도 있고, 상기 생성정보에 포함된 정보 중 필요한 정보(구현 예에 따라서는, 디코딩된 정보의 적어도 일부)(예컨대, 인증대상정보, 제1인증코드, 및/또는 상기 서비스 시스템(100)의 식별정보)만을 추출하여 상기 서비스 인증요청신호에 포함시켜 상기 인증서버(200)로 전송할 수도 있기 때문이다.
상기 생성정보가 소정의 코드로 구현되고, 상기 인증단말(500)이 상기 코드의 디코딩을 수행하는 경우에는, 상기 서비스 인증요청신호에는 상기 생성정보에 포함된 일부의 정보(예컨대, 인증대상정보, 제1인증코드, 및/또는 상기 서비스 시스템(100)의 식별정보)만이 포함되어 상기 인증서버(200)로 출력될 수 있다. 또한, 상기 코드의 디코딩이 상기 인증서버(200)에 의해 수행되는 경우에는, 상기 서비스 인증요청신호에는 상기 코드 자체가 포함되어 상기 인증서버(200)로 출력될 수도 있다.
한편, 상기 인증단말(500) 역시 상기 인증단말(500)의 진위 여부를 판단하기 위한 소정의 제2인증코드를 생성하고, 생성된 상기 제2인증코드를 상기 서비스 인증요청신호에 포함시킬 수 있다. 상기 제2인증코드 역시 OTP일 수 있으며, 상기 제2인증코드를 검증하기 위한 구성이 상기 인증서버(200)에 포함될 수 있다. 즉, 상기 인증서버(200)는 제2인증코드 검증모듈이 포함될 수 있으며, 상기 제2인증코드 검증모듈은 상기 제2인증코드를 검증하기 위한 OTP 서버역할을 수행할 수 있다. 이처럼 상기 제2인증코드를 통해 상기 인증단말(500)의 위변조 예컨대, 복제폰 등을 통해 본인인증을 수행하는 경우를 필터링할 수 있는 효과가 있다.
상기 검증모듈(130)은 상기 인증기관 시스템(300) 또는 상기 인증서버(200)로부터 서명된 인증대상정보를 수신하고, 수신된 상기 서명된 인증대상정보를 검증하는 역할을 수행할 수 있다. 상기 검증모듈(130)은 상기 서명된 인증대상정보를 검증하기 위해 상기 인증서의 공개키를 이용해 서명된 인증대상정보를 복호화하는 일련의 프로세스를 수행할 수 있다. 상기 인증서의 공개키를 이용해 서명된 인증대상정보가 복호화되는 경우에는 본인인증이 성공되었다고 판단할 수 있다. 서명된 인증대상정보는 상기 인증기관 시스템(300)으로부터 직접 수신할 수도 있고, 상기 인증서버(200)를 통해 수신할 수도 있다. 구현 예에 따라서는, 상기 인증서버(200)에 의해 상기 서명된 인증대상정보가 검증되고, 상기 검증모듈(130)은 상기 인증서버(200)로부터 검증결과만을 수신할 수도 있다. 상기 검증모듈(130)이 직접 검증을 수행하든 검증된 결과를 수신하든, 상기 검증모듈(130)에 의해 본인인증이 성공되었다고 판단되면, 상기 서비스 시스템(100)은 상기 사용자의 단말기(400)로 요청된 서비스(예컨대, 로그인, 금융거래, 온라인 구매 등)를 제공할 수 있다.
상기 사용자 DB(140)는 상기 사용자의 인증서가 등록되어 있을 수 있다. 상기 사용자의 인증서가 등록되어 있다고 함은, 상기 인증서의 인증서 정보가 등록되어 있음을 의미할 수 있으며, 상기 인증서 정보는 상기 인증서의 공개키에 대한 정보를 포함할 수 있다. 물론, 상기 사용자 DB(140)에는 사용자에 대한 다양한 정보(예컨대, 사용자 이름, 로그인 정보, 주소 등)가 더 저장될 수 있다. 상기 인증서의 등록은 상기 사용자의 단말기(400)에 의해 상기 서비스 시스템(100)으로 인증서 등록요청이 수신되고, 소정의 프로세스를 거쳐 상기 인증서버(200)에 의해 검증이 수행된 후에 상기 사용자 DB(140)에 등록될 수도 있고, 상기 사용자의 단말기(400)에 의해 직접 등록될 수도 있다.
도 3은 본 발명의 실시 예에 따른 클라우드 공인인증 시스템에 포함되는 인증서버의 개략적인 구성을 나타내는 도면이다.
도 3을 참조하면, 상기 인증서버(200)는 수신모듈(210), 서명요청 모듈(220), 및 서버 DB(230)를 포함한다. 상기 인증서버(200)는 제1인증코드 검증모듈(240), 제2인증코드 검증모듈(250), 단말 등록모듈(260), 인증서 등록모듈(270), 및/또는 제1디코딩 모듈(280)을 더 포함할 수 있다.
상기 서버 DB(230)는 상기 사용자의 단말임이 인증된 인증단말(500)의 인증단말 식별정보 및 상기 인증단말 식별정보와 매칭되도록 저장된 상기 사용자의 인증서 식별정보(예컨대, 인증서 발급기관에 대한 정보, 인증서 정보 등)를 저장할 수 있다. 또한, 상기 인증단말 식별정보는 상기 사용자의 식별정보(예컨대, 성명, 생일, 전화번호 등)과 매칭되어 상기 서버 DB(230)에 저장될 수도 있다. 상기 사용자의 식별정보 및 상기 인증단말 식별정보는 인증단말 등록프로세스를 통해 상기 서버 DB(230)에 미리 등록될 수 있으며, 상기 인증서 식별정보 역시 인증서 등록프로세스를 통해 상기 서버 DB(230)에 미리 등록될 수 있다.
또한, 본원발명의 기술적 사상은 복수의 서비스 시스템에 적용될 수도 있다. 즉, 상기 인증서버(200)에 인증되는 서비스 시스템은 복수일 수 있다. 따라서, 이때에는 서비스 시스템에 대한 정보가 상기 서버 DB(230)에 저장되어 있을 수 있다. 상기 서비스 시스템에 대한 정보는 예컨대, 상기 인증서버(200)에 의해 부여된 서비스 시스템의 식별정보, 통신 IP, 통신 PORT, 서비스 명칭 등에 대한 정보가 포함될 수 있다. 그리고 이러한 서비스 시스템에 대한 정보가 포함된 서비스 인증요청신호가 상기 인증서버(200)로 수신되면, 상기 인증서버(200)는 상기 서비스 시스템을 식별한 후 식별된 결과에 기초하여 상기 인증요청신호에 포함된 서비스 시스템(100)의 인증코드를 검증할 수 있다.
상기 수신모듈(210)은 사용자의 단말기(300)로부터 상기 서비스의 서비스 요청이 상기 서비스 시스템(100)으로 전송되면, 상기 서비스 시스템에 의해 생성된 생성정보 중 적어도 일부, 상기 인증단말의 식별정보, 및 상기 인증서의 비밀번호를 포함하는 서비스 인증요청신호를 상기 인증단말(500)로부터 수신할 수 있다. 또한, 상기 서비스 인증요청신호에는 상기 서비스 시스템(100)에 의해 생성된 제1인증코드가 더 포함될 수도 있다. 또한, 상기 서비스 인증요청신호에는 상기 인증단말(500)에 의해 생성된 제2인증코드가 더 포함될 수도 있다. 또한, 상기 생성정보에는 상기 서비스 시스템(100)의 식별정보가 더 포함될 수도 있다.
상기 생성정보가 전술한 바와 같은 소정의 코드로 구현되는 경우, 상기 서비스 인증요청신호는 상기 코드 자체가 포함될 수도 있다. 이러한 경우, 상기 코드는 상기 제1디코딩 모듈(280)에 의해 디코딩될 있다. 그러면, 상기 코드에 포함된 인증대상정보가 획득될 수 있다. 또한, 상기 코드에 제1인증코드 및/또는 상기 서비스 시스템(100)의 식별정보가 포함된 경우에는 상기 제1인증코드 및/또는 상기 서비스 시스템(100)의 식별정보가 획득될 수 있다. 한편, 상기 생성정보가 소정의 코드로 구현되는 경우, 상기 코드는 상기 인증단말(500)에 의해 디코딩될 수도 있다. 이러한 경우, 상기 서비스 인증요청신호에는 디코딩결과 획득된, 상기 인증대상정보, 제1인증코드, 및/또는 상기 서비스 시스템(100)의 식별정보가 포함될 수 있다. 상기 인증단말(500)의 식별정보는 상기 인증단말(500)에 의해 추출되어 상기 서비스 인증요청신호에 포함될 수 있다. 또한, 상기 인증서 비밀번호는 사용자로부터 입력되어 상기 인증단말(500)을 통해 상기 서비스 인증요청신호에 포함될 수 있다.
그러면, 상기 서명요청 모듈(220)은 수신된 상기 서비스 인증요청신호에 기초하여 인증요청을 검증할 수 있다. 인증요청의 검증은 우선, 상기 서버 DB(230)에 미리 등록된 인증단말(500)을 통해 상기 서비스 인증요청신호가 수신되었는지를 판단하는 과정을 포함할 수 있다. 따라서, 미리 등록되지 않은 단말 즉, 사용자의 인증단말(500)이 아닌 단말로부터 수신되는 소정의 서비스 요청에 대해, 상기 서명요청 모듈(220)은 인증실패라고 판단하고 판단결과를 상기 서비스 시스템(100)으로 출력할 수 있다. 이를 위해 상기 서명요청 모듈(220)은 상기 서비스 인증요청신호에 포함된 인증단말(500) 식별정보가 상기 서버 DB(230)에 미리 등록되어 있는지를 판단할 수 있다. 또는 서버 DB(230)에 포함된 상기 인증단말(500) 식별정보 및 이에 대응되는 사용자 식별정보와 상기 서비스 인증요청신호에 포함된 인증단말 식별정보 및 사용자 식별정보가 서로 상응하는지를 판단할 수도 있다.
이처럼 상기 서비스 인증요청신호가 등록된 인증단말(500)로부터 출력되었음이 검증된 경우, 상기 서명요청 모듈(220)은 상기 서비스 인증요청신호에 포함된 상기 인증단말의 식별정보에 기초하여 상기 서버 DB(230)에 저장된 상기 인증서 식별정보를 추출할 수 있다. 그리고, 추출된 상기 인증서 식별정보, 상기 인증대상정보, 및 상기 인증서의 비밀번호를 포함하는 서명 요청을 상기 인증기관 시스템(300)으로 전송할 수 있다.
한편, 전술한 바와 같이 상기 서명요청 모듈(220)은 상기 서비스 인증요청신호에 포함된 상기 제1인증코드 및/또는 상기 제2인증코드가 검증되어야 상기 서명요청을 상기 인증기관 시스템(300)으로 출력할 수도 있다. 이를 위해 상기 서명요청 모듈(220)은 상기 제1인증코드 검증모듈(240) 및/또는 상기 제2인증코드 검증모듈(250)로부터 검증결과를 수신할 수 있다. 그리고, 상기 제1인증코드 검증모듈(240) 및/또는 상기 제2인증코드 검증모듈(250)로부터 검증이 성공되었다는 신호를 수신하여야 상기 서명요청을 상기 인증기관 시스템(300)으로 전송할 수 있다.
상기 제1인증코드 검증모듈(240) 및/또는 상기 제2인증코드 검증모듈(250)은 전술한 바와 같이 상기 제1인증코드 및/또는 상기 제2인증코드를 검증하는 기능을 수행할 수 있다. 상기 제1인증코드 및/또는 상기 제2인증코드는 전술한 바와 같이 상기 서비스 시스템(100)에 미리 설치된 OTP 생성 솔루션에 의해 생성되는 OTP 및/또는 상기 인증단말(500)에 미리 설치된 OTP 생성 솔루션에 의해 생성되는 OTP일 수 있다. 또한, 상기 제1인증코드 검증모듈(240) 및/또는 상기 제2인증코드 검증모듈(250)은 각각 OTP 인증서버의 기능을 수행할 수 있다. 하지만, 이러한 OTP 방식 이외에도 상기 서비스 시스템(100) 및/또는 상기 인증단말(500)의 진위를 인증할 수 있는 어떠한 인증방식도 이용될 수 있음은 물론이다.
한편, 상기 수신모듈(210)은 전술한 바와 같은 인증단말(500) 등록요청에 상응하는 단말등록 요청신호 및/또는 인증서 등록요청에 상응하는 인증서 등록요청신호를 수신할 수도 있다.
상기 단말등록 요청신호에는 상기 서비스 시스템(100)에 의해 생성된 제2생성정보 및 상기 인증단말 식별정보가 포함될 수 있다. 상기 제2생성정보는 상기 서비스 시스템(100)을 통해 상기 서비스를 요청한 사용자의 식별정보(예컨대, 이름, 생일 등)가 포함될 수 있다. 구현 예에 따라서는, 상기 인증단말(500)에 상응하는 전화번호가 포함될 수도 있다. 상기 전화번호는 상기 서비스 시스템(100)에 미리 저장된 정보일 수 있다. 또한, 상기 제2생성정보는 전술한 바와 같이 소정의 코드로 구현될 수 있으며, 상기 코드는 상기 인증단말(500) 또는 상기 인증서버(200)에 포함된 제1디코딩 모듈(280)에 의해 디코딩될 수 있음은 상기 생성정보에서 설명한 바와 같다. 즉, 상기 단말등록 요청신호에는 상기 제2생성정보 자체가 포함될 수도 있고, 상기 제2생성정보에 포함된 상기 사용자의 식별정보가 포함될 수도 있다.
상기 단말등록 요청신호가 수신되면, 상기 단말 등록모듈(260)은 단말등록 요청신호에 포함된 인증단말(500) 식별정보(예컨대, 기기식별정보) 및 사용자 식별정보가 실제 소유관계에 부합하는 경우 즉, 사용자 식별정보에 상응하는 사용자가 인증단말(500) 식별정보에 상응하는 상기 인증단말(500)의 소유주인 경우, 상기 인증단말(500)의 식별정보를 상기 서버 DB(230)에 등록할 수 있다. 또한, 상기 단말 등록모듈(260)은 상기 인증단말(500) 식별정보(예컨대, 기기식별정보) 및 사용자 식별정보가 실제 소유관계에 부합하는지 여부는 상기 단말 인증시스템(600)을 통해 판단할 수 있다. 상기 단말 인증시스템(600)은 전술한 바와 같이 이동통신사 시스템일 수 있지만, 상기 인증단말(500)의 소유관계에 대한 정보를 저장하고 있는 어떠한 시스템도 상기 단말 인증시스템(600)이 될 수 있음은 물론이다. 또한, 상기 단말 등록모듈(260)은 상기 인증단말(500)의 식별정보 및 이에 상응하는 사용자 식별정보를 매칭하여 상기 서버 DB(230)에 등록할 수도 있다.
또한, 상기 단말등록 요청신호에도 전술한 바와 같이 상기 서비스 시스템(100)에 의해 생성된 제1인증코드 및/또는 상기 인증단말(500)에 의해 생성된 제2인증코드가 포함될 수도 있다. 그러면, 상기 단말 등록모듈(260)은 상기 제1인증코드 검증모듈(240) 및/또는 상기 제2인증코드 검증모듈(250)에 의해 상기 제1인증코드 및/또는 상기 제2인증코드가 검증되어야 상기 인증단말(500) 식별정보를 등록할 수도 있다. 상기 제1인증코드 및/또는 상기 제2인증코드를 이용한 상기 서비스 시스템(100) 및/또는 상기 인증단말(500)의 진위여부의 검증은 서비스 인증요청신호에서 설명한 바와 동일 또는 유사하므로 상세한 설명은 생략하도록 한다.
한편, 상기 수신모듈(210)이 상기 인증서 등록요청신호를 수신한 경우, 상기 인증서 등록모듈(270)은 상기 인증서를 상기 서버 DB(230)에 등록할 수 있다. 상기 인증서 등록요청신호에는 상기 서비스 시스템(100)에 의해 생성된 제3생성정보가 포함될 수 있다. 상기 제3생성정보는 인증서 식별정보를 포함할 수 있다. 상기 인증서 식별정보는 상기 서비스 시스템(100)에 미리 등록된 인증서 정보로부터 추출될 수 있다. 또는, 상기 서비스 시스템(100)에 미리 상기 인증서가 등록되어 있지 않는 경우에는, 상기 서비스 시스템(100)은 상기 인증기관 시스템(300)으로 인증서의 발급요청을 전송하고, 전송에 응답하여 상기 인증기관 시스템(300)으로부터 수신된 인증서 정보로부터 추출될 수도 있다. 또한, 상기 제3생성정보 전술한 바와 같은 소정의 코드로 구현될 수도 있다. 이러한 경우, 상기 인증서 등록요청신호에는 상기 제3생성정보 자체가 포함될 수도 있고, 상기 제3생성정보가 상기 인증단말(500)에 의해 디코딩된 후, 디코딩된 정보에 포함된 상기 인증서 식별정보가 상기 인증서 등록요청신호에 포함될 수도 있다. 상기 인증서 등록요청신호에는 상기 제3생성정보 자체가 포함되는 경우에는 상기 제3생성정보는 상기 인증서버(200)에 포함된 제1디코딩 모듈(280)에 의해 디코딩될 수 있다.
그러면, 상기 인증서 등록모듈(270)은 인증서 등록요청신호에 기초하여 인증서 식별정보를 인증단말(500) 식별정보와 매칭되도록 상기 서버 DB(230)에 등록할 수 있다. 상기 인증단말(500) 식별정보와 매칭하여 등록한다고 함은, 상기 인증단말(500) 식별정보와 매칭된 사용자 식별정보와 매칭하여 등록하는 경우를 포함하는 의미로 해석될 수 있다.
한편, 상기 인증서 등록요청신호에도 상기 서비스 시스템(100)에 의해 생성된 제1인증코드 및/또는 상기 인증단말(500)에 의해 생성된 제2인증코드가 포함될 수 있다. 그러면, 상기 제1인증코드 및/또는 상기 제2인증코드에 기초하여 상기 서비스 시스템(100) 및/또는 상기 인증단말(500)의 진위여부가 검증되어야 상기 인증서 식별정보가 상기 서버 DB(230)에 등록될 수도 있음은 전술한 바와 같다.
도 4는 본 발명의 실시 예에 따른 클라우드 공인인증 시스템에 포함되는 인증기관 시스템의 개략적인 구성을 나타내는 도면이다.
도 4를 참조하면, 상기 인증기관 시스템(300)은 서명요청 수신모듈(310), 서명모듈(320), 및 인증서 DB(330)를 포함한다. 상기 인증기관 시스템(300)은 인증서 전송모듈(340)을 더 포함할 수도 있다. 또한, 구현 예에 따라서는, 상기 인증서를 발급하기 위한 발급모듈(미도시)을 더 포함할 수도 있다. 상기 발급모듈(미도시)을 더 포함하는 경우, 상기 인증기관 시스템(300)은 인증서 발급기관의 역할도 수행하게 된다. 이처럼 인증기관 시스템(300)에서 인증서를 저장하도록 하고, 필요한 경우 사용자의 요청에 의해 인증서를 사용할 수 있도록 하는 경우, 상기 인증기관 시스템(300)은 소정의 HSM(Hardware Security Machine or Module)으로 구현될 수 있다. 따라서, 개인 유저들 각각이 고 비용으로 인해 안전성이 낮은 일반 데이터 하드 디스크 등의 스토리지 디바이스에 인증서를 저장하고 사용하는 경우에 비해 훨씬 높은 안정성을 제공할 수 있는 효과가 있다.
상기 인증기관 시스템(300)은 공인인증서의 발급기관에 의해 운영되어 본 발명의 기술적 사상을 구현할 수 있다. 구현 예에 따라서는, 상기 인증기관 시스템(300)은 상기 서비스 시스템(100)의 운영주체(예컨대, 금융기관, 상거래기관)에 운영되도록 구현될 수도 있다.
상기 서명요청 수신모듈(310)은 상기 인증서버(200)로부터 서명요청을 수신할 수 있다. 예컨대, 사용자의 단말기(300)로부터 상기 서비스 시스템(100)으로 서비스 요청이 전송되면, 상기 서비스 시스템(100)에 의해 생성된 상기 사용자를 인증하기 위한 인증대상정보를 포함하는 생성정보가 생성된다. 그러면, 소정의 인증 프로세스를 통해 상기 생성정보에 포함된 상기 인증 대상 정보를 포함하는 서명요청이 상기 인증서버(200)로부터 출력되어 상기 서명요청 수신모듈(310)로 수신될 수 있다.
그러면, 상기 서명모듈(320)은 수신된 서명요청에 응답하여 상기 서명요청에 포함된 인증서 비밀번호를 이용해 상기 인증대상정보를 서명할 수 있다. 이를 위해 상기 서명모듈(320)은 상기 인증서 비밀번호를 이용해 상기 서명요청에 포함된 인증서 식별정보에 상응하는 인증서로부터 개인키를 복호화할 수 있다. 그리고 복호화된 개인키를 이용하여 상기 서명요청에 포함된 인증대상정보를 암호화하는 서명프로세스를 수행할 수 있다. 서명모듈(320)은 서명된 인증대상정보를 상기 서비스 시스템(100) 또는 상기 인증서버(200)로 전송할 수 있다.
그러면, 전송된 상기 서명된 인증대상정보가 상기 서비스 시스템(100) 또는 상기 인증서버(200)에 의해 검증될 수 있다. 검증을 위해 상기 서비스 시스템(100) 또는 상기 인증서버(200)는 상기 인증서의 공개키를 저장하고 있을 수 있다. 또한, 상기 인증서버(200)에 의해 서명된 인증대상정보가 검증되는 경우에는, 상기 서비스 시스템(100)은 검증결과를 수신할 수도 있다. 그러면, 상기 서비스 시스템(100)은 검증이 성공한 후, 부인방지를 위해 검증결과를 상기 사용자의 단말기(400)로 전송할 수 있다.
상기 인증서 DB(330)에는 사용자의 인증서가 저장될 수 있다.
한편, 상기 인증기관 시스템(300)에는 인증서 전송모듈(340)이 더 포함될 수 있다. 상기 인증서 전송모듈(340)은 상기 서비스 시스템(100)으로부터 상기 인증서의 등록요청이 수신되는 경우, 상기 사용자의 인증서 정보를 상기 서비스 시스템(100)으로 전송할 수 있다. 만약, 상기 사용자의 인증서가 존재하지 않는 경우에는, 상기 발급모듈(미도시)에 의해 사용자의 인증서가 발급되는 과정이 더 수행될 수 있다. 물론, 이때에는 상기 발급모듈(미도시)은 상기 서비스 시스템(100) 및/또는 상기 사용자의 단말기(400)로부터 상기 인증서의 발급에 필요한 정보(예컨대, 사용자 정보 및 비밀번호 등)를 수신할 수 있다. 그리고 인증서 전송모듈(340)은 발급된 상기 인증서의 인증서 정보(또는 인증서 정보에 포함될 수 있는 인증서 식별정보)를 상기 서비스 시스템(100)으로 전송할 수 있다.
도 5는 본 발명의 실시 예에 따른 클라우드 공인인증 시스템에 포함되는 인증단말의 개략적인 구성을 나타내는 도면이다.
도 5를 참조하면, 상기 인증단말(500)은 식별정보 추출모듈(520) 및 요청모듈(540)을 포함한다. 상기 인증단말(500)은 상기 촬영모듈(510) 및/또는 상기 제2디코딩 모듈(530), 제2인증코드 생성모듈(550)을 더 포함할 수 있다.
상기 식별정보 추출모듈(520)은 상기 인증단말(500)의 식별정보를 추출할 수 있다. 상기 인증단말(500) 식별정보는 상기 인증단말(500)의 기기식별정보일 수 있다. 구현 예에 따라서는, 상기 인증단말(500)의 전화번호가 상기 인증단말(500)의 식별정보일 수도 있다. 어떠한 경우든, 상기 인증단말(500) 식별정보는 상기 인증단말(500)별로 고유한 정보일 수 있다.
상기 요청모듈(540)은 전술한 바와 같은 서비스 인증요청신호, 단말등록 요청신호, 및/또는 인증서 등록요청신호를 생성할 수 있다. 이때 상기 요청모듈(540)은 상기 인증단말(500)의 식별정보를 상기 서비스 인증요청신호, 상기 단말등록 요청신호, 및/또는 상기 인증서 등록요청신호에 포함시킬 수 있다. 그리고 생성된 신호를 상기 인증서버(200)로 출력할 수 있다.
한편, 상기 요청모듈(540)은 상기 인증단말(500)의 진위를 검증하기 위한 제2인증코드를 상기 서비스 인증요청신호, 상기 단말등록 요청신호, 및/또는 상기 인증서 등록요청신호에 포함시킬 수도 있다. 상기 제2인증코드는 상기 제2인증코드 생성모듈(550)에 의해 생성되어 상기 요청모듈(540)로 전송될 수 있다.
한편, 상기 촬영모듈(510)은 상기 사용자의 단말기(400)에 상기 생성정보, 상기 제2생성정보, 및/또는 상기 제3생성정보에 상응하는 코드가 디스플레이되는 경우, 상기 코드를 촬영할 수 있다. 그러면, 촬영된 상기 코드는 상기 제2디코딩 모듈(530)에 의해 디코딩될 수도 있다. 그리고 디코딩된 정보의 전부 또는 일부가 상기 요청모듈(540)에 의해 선택되어 상기 서비스 인증요청신호, 상기 단말등록 요청신호, 및/또는 상기 인증서 등록요청신호에 포함될 수도 있다.
물론, 상기 생성정보, 상기 제2생성정보, 및/또는 상기 제3생성정보가 소정의 코드로 구현되고, 상기 코드 자체가 상기 서비스 인증요청신호, 상기 단말등록 요청신호, 및/또는 상기 인증서 등록요청신호에 포함되는 경우에는 상기 제2디코딩 모듈(530)은 구비되지 않을 수도 있다.
이하에서는 도 6 내지 도 8을 참조하여 본 발명의 기술적 사상에 따른 클라우드 공인인증 시스템 제공방법이 수행되는 과정을 설명하기로 한다.
도 6은 본 발명의 실시 예에 따른 클라우드 공인인증 시스템 제공방법에 따라 소정의 서비스가 요청되는 경우에 본인인증을 수행하는 방법을 설명하기 위한 도면이다.
도 6에 도시된 서비스 인증 프로세스는 인증단말(500) 및 인증서가 상기 인증서버(200)에 등록된 후 수행될 수 있다.
도 6을 참조하면, 사용자의 단말기(400)는 서비스 시스템(100)으로 소정의 서비스를 요청할 수 있다(S10). 그러면, 상기 서비스 시스템(100)은 서비스 요청에 상응하는 생성정보를 생성할 수 있다(S20). 상기 생성정보는 서명의 대상이 되는 인증대상정보가 포함될 수 있다. 상기 인증대상정보는 서비스의 종류, 서비스 시스템(100)의 종류 및/또는 구현 예에 따라 다양할 수 있다. 예컨대, 상기 서비스가 금융거래 요청인 경우, 상기 인증대상정보는 금융거래정보(계좌, 사용자, 거래내역 등)일 수 있다. 또는 서비스 종류와 무관하게 상기 서비스 시스템(100)에 의해 결정되는 정보가 상기 인증대상정보(예컨대, 사용자의 식별정보 등)가 될 수도 있다.
한편, 상기 서비스 시스템(100)은 서비스 시스템(100)을 인증하기 위한 제1인증코드를 생성하고(S15), 생성된 상기 제1인증코드를 상기 생성정보에 포함시킬 수 있다. 상기 생성정보는 텍스트 정보일 수도 있지만, 2D 또는 3D로 표현되는 소정의 코드일 수도 있다.
그러면, 상기 서비스 시스템(100)은 상기 사용자의 단말기(400)로 상기 생성정보를 전송할 수 있다(S30). 전송된 생성정보는 인증단말(500)로 전달될 수 있다(S40). 구현 예에 따라 상기 서비스 시스템(100)으로부터 상기 인증단말(500)로 직접 상기 생성정보가 전송될 수도 있다. 물론, 상기 서비스 요청을 상기 인증단말(500)이 수행할 수도 있음은 전술한 바와 같다.
상기 생성정보가 소정의 코드로 구현되고, 상기 생성정보가 상기 사용자의 단말기(400)로 전송된 경우, 상기 사용자의 단말기(400)는 상기 생성정보를 디스플레이할 수 있다(S35). 이러한 일 예는 도 9에 도시된다.
도 9에 도시된 바와 같이 소정의 코드(10)가 상기 사용자의 단말기(400)로 전송되어 디스플레이될 수 있다.
그러면, 상기 생성정보의 전달은 상기 인증단말(500)이 상기 사용자의 단말기(400)에 디스플레이된 상기 코드(10)를 촬영함으로써 수행될 수 있다. 그러면, 상기 인증단말(500)에 상기 생성정보(즉, 상기 코드(10))가 도 9와 같이 상기 인증단말(500)에 전달될 수 있으며, 전달된 상기 생성정보(20) 역시 상기 인증단말(500)에 디스플레이될 수 있다.
그러면, 상기 인증단말(500)은 사용자에게 인증서 비밀번호를 요청할 수 있다. 이를 위해 상기 인증단말(500)은 인증서 비밀번호를 요청하는 소정의 UI를 상기 인증단말(500)에 디스플레이할 수 있으며, 그 결과는 도 10에 도시된 바와 같을 수 있다.
다시 도 6을 참조하면, 상기 생성정보를 전달받고, 인증서 비밀번호를 사용자로부터 입력받은 상기 인증단말(500)은 서비스 인증요청신호를 생성할 수 있다(S50). 또한, 상기 인증단말(500)은 상기 인증단말(500)을 인증하기 위한 제2인증코드를 생성한 후(S47), 생성된 상기 제2인증코드를 상기 서비스 인증요청신호에 포함시킬 수도 있다. 또한, 상기 생성정보가 상기 인증단말(500)에 의해 디코딩 되는 경우에는, 상기 생성정보가 상기 인증단말(500)에 의해 디코딩되고(S45), 디코딩된 결과 획득되는 상기 인증대상정보(제1인증코드 및/또는 서비스 시스템(100) 식별정보가 더 포함될 수 있음)가 상기 서비스 인증요청신호에 포함될 수도 있다.
생성된 서비스 인증요청신호가 상기 인증서버(200)로 전송되면(S60), 상기 인증서버(200)는 상기 서비스 인증요청신호에 기초하여 인증요청을 검증할 수 있다(S70). 상기 검증에는 상기 서비스 인증요청신호가 등록된 인증단말(500)로부터 수신되었는지 여부, 상기 서비스 시스템(100)의 진위여부, 상기 인증단말(500)의 진위여부를 판단하는 과정이 포함될 수 있다. 인증요청이 검증되면(S70), 상기 인증서버(200)는 서명요청을 상기 인증기관 시스템(300)으로 출력할 수 있다(S80). 구현 예에 따라서는, 상기 서비스 인증요청신호에 포함된 생성정보가 디코딩되는 과정이 더 수행된 후, 상기 서명요청에 포함될 정보가 특정될 수도 있다.
상기 서명요청은 상기 인증대상정보, 상기 인증서 식별정보, 및 상기 인증서 비밀번호를 포함할 수 있다.
수신된 상기 서명요청에 응답하여 상기 인증기관 시스템(300)은 상기 인증대상정보를 서명할 수 있다(S90). 그러면, 서명된 인증대상정보는 상기 서비스 시스템(100)으로 전송될 수 있다(S100). 전송에 응답하여 상기 서비스 시스템(100)은 서명된 인증대상정보를 검증할 수 있다(S110). 그리고 검증결과는 상기 사용자의 단말기(400)로 전송될 수 있다.
구현 예에 따라서는, 서명된 인증대상정보는 상기 인증서버(200)로 전송될 수도 있다(S100-1). 그러면, 상기 인증서버(200)는 수신된 상기 서명된 인증대상정보를 상기 서비스 시스템(100)으로 출력할 수도 있다. 구현 예에 따라서는, 상기 인증서버(200)가 상기 서명된 인증대상정보를 검증하고(S100-2), 검증결과를 상기 서비스 시스템(100)으로 전송할 수도 있다(S100-3). 그러면, 서비스 시스템(100)은 수신된 검증결과에 기초하여 본인인증이 성공여부를 판단하고, 요청된 서비스를 선택적으로 상기 사용자의 단말기(400)에 제공할 수 있다.
도 7은 본 발명의 실시 예에 따른 클라우드 공인인증 시스템 제공방법에 따라 사용자의 인증단말이 등록되는 과정을 설명하기 위한 도면이다.
도 7을 참조하면, 상기 사용자의 단말기(400)는 서비스 시스템(100)으로 인증단말(500)의 단말 등록요청을 전송할 수 있다(S200). 그러면, 상기 서비스 시스템(100)은 제2생성정보를 생성할 수 있다(S210). 상기 서비스 시스템(100)은 제1인증코드를 생성한 후(S205), 생성한 제1인증코드를 제2생성정보에 포함시킬 수도 있다. 상기 제2생성정보는 사용자 식별정보를 포함할 수 있다.
생성된 제2생성정보는 상기 사용자의 단말기(400)로 전송될 수 있다(S220). 구현 예에 따라서는, 상기 인증단말(500)로 직접 전송될 수도 있다.
전송된 제2생성정보는 상기 사용자의 단말기(400)에 디스플레이될 수 있으며(S225), 디스플레이된 상기 제2생성정보는 상기 인증단말(500)에 의해 촬영되어 전달될 수 있다(S230).
그러면, 상기 인증단말(500)은 전달된 상기 제2생성정보에 기초하여 단말등록 요청신호를 생성할 수 있다(S240). 상기 단말등록 요청신호에는 상기 사용자 식별정보 및 상기 인증단말(500)에 의해 추출된 상기 인증단말(500) 식별정보가 포함될 수 있다. 이때는, 상기 제2생성정보를 디코딩하는 과정이 먼저 수행될 수도 있다(S235). 또는 상기 제2생성정보 및 상기 인증단말(500) 식별정보가 포함될 수 있다. 또한, 상기 인증단말(500)은 제2인증코드를 생성한 후(S237), 생성된 제2인증코드를 상기 단말등록 요청신호에 포함시킬 수도 있다.
생성된 단말등록 요청신호는 상기 인증서버(200)로 전송될 수 있다(S250). 그러면, 상기 인증서버(200)는 검증을 수행할 수 있다(S255). 상기 검증은 상기 서비스 시스템(100)의 진위여부 및/또는 상기 인증단말(500)의 진위여부를 판단하는 과정이 포함될 수 있다.
그리고, 단말 인증시스템(600)을 통해 상기 인증단말(500)이 사용자의 소유인지를 확인하는 과정을 수행할 수 있다(S260). 확인결과 상기 인증단말(500) 식별정보에 상응하는 인증단말(500)이 상기 사용자 식별정보에 상응하는 사용자의 소유인 경우, 상기 인증서버(200)는 상기 인증단말(500)을 등록할 수 있다(S270).
도 8은 본 발명의 실시 예에 따른 클라우드 공인인증 시스템 제공방법에 따라 사용자의 인증서가 등록되는 과정을 설명하기 위한 도면이다.
도 8을 참조하면, 상기 사용자의 단말기(400)는 서비스 시스템(100)으로 인증서 등록요청을 전송할 수 있다(S300). 그러면, 상기 서비스 시스템(100)은 제3생성정보를 생성할 수 있다(S310). 상기 서비스 시스템(100)은 제1인증코드를 생성한 후(S305), 생성한 제1인증코드를 제3생성정보에 포함시킬 수도 있다. 상기 제2생성정보는 인증서 식별정보를 포함할 수 있다.
상기 서비스 시스템(100)은 상기 사용자의 인증서를 상기 인증기관 시스템(300)에 요청할 수 있다(S301). 상기 요청에는 사용자의 식별정보가 포함될 수 있다. 그러면, 상기 인증기관 시스템(300)은 상기 사용자의 인증서 식별정보(또는 인증서 정보)를 상기 서비스 시스템(100)으로 전송할 수 있다(S303). 상기 사용자의 인증서가 상기 인증기관 시스템(300)에 저장되어 있지 않은 경우에는 상기 인증기관 시스템(300)에 의해 상기 사용자의 인증서가 발급 및 저장되는 과정이 수행될 수도 있다(S302).
생성된 제3생성정보는 상기 사용자의 단말기(400)로 전송될 수 있다(S320). 구현 예에 따라서는, 상기 인증단말(500)로 직접 전송될 수도 있다.
전송된 제3생성정보는 상기 사용자의 단말기(400)에 디스플레이될 수 있으며(S325), 디스플레이된 상기 제3생성정보는 상기 인증단말(500)에 의해 촬영되어 전달될 수 있다(S330).
그러면, 상기 인증단말(500)은 전달된 상기 제3생성정보에 기초하여 인증서 등록요청신호를 생성할 수 있다(S340). 상기 인증서 등록요청신호에는 상기 인증서 식별정보 및 상기 인증단말(500)에 의해 추출된 상기 인증단말(500) 식별정보가 포함될 수 있다. 이때는, 상기 제23성정보를 디코딩하는 과정이 먼저 수행될 수도 있다(S335). 또는 상기 제3생성정보 및 상기 인증단말(500) 식별정보가 포함될 수 있다. 또한, 상기 인증단말(500)은 제3인증코드를 생성한 후(S337), 생성된 제2인증코드를 상기 인증서 등록요청신호에 포함시킬 수도 있다.
생성된 인증서 등록요청신호는 상기 인증서버(200)로 전송될 수 있다(S350). 그러면, 상기 인증서버(300)는 검증을 수행할 수 있다(S355). 상기 검증은 상기 서비스 시스템(100)의 진위여부 및/또는 상기 인증단말(500)의 진위여부를 판단하는 과정을 포함할 수 있다.
그리고, 검증이 수행되면, 상기 인증서버(200)는 상기 인증서를 등록할 수 있다(S360). 그리고, 상기 인증서를 등록하라는 신호를 상기 서비스 시스템(100)으로 전송할 수도 있다(S370). 그러면, 상기 서비스 시스템(100)도 상기 인증서를 등록할 수 있다. 구현 예에 따라서는, 상기 인증기관 시스템(300)으로부터 상기 인증서 정보가 수신되는 경우(S303), 상기 서비스 시스템(100)은 바로 상기 인증서를 등록할 수도 있다.
도 11은 본 발명의 실시 예에 따른 클라우드 공인인증 시스템 제공방법이 적용되는 경우의 유저 인터페이스의 일 예를 나타낸다.
도 11을 참조하면, 본 발명의 기술적 사상에 따른 클라우드 공인인증 시스템 제공방법이 적용되는 경우에는, 도 11에 도시된 바와 같은 유저 인터페이스(30)가 사용자의 단말기(400) 및/또는 인증단말(500)로 제공될 수 있다. 상기 유저 인터페이스(30)는 공인인증서 관리를 위한 사용자용 소프트웨어가 사용자에게 제공하는 UI를 나타낼 수 있다. 상기 사용자용 소프트웨어는 사용자의 공인인증서가 저장되는 위치를 선택할 수 있도록 하며, 저장되는 위치가 선택되면 자동으로 선택된 위치에 존재하는 인증서를 탐색한 후 사용자에게 제공할 수 있다. 그리고 탐색된 인증서 중 적어도 하나가 사용자에 의해 선택되는 경우, 선택된 인증서를 통한 인증을 수행할 수 있게 된다.
이때 본 발명의 기술적 사상에 의하면, 상기 사용자용 소프트웨어는 도 11에 도시된 바와 같이 인증서가 저장된 위치로써 본 발명의 기술적 사상에 따른 인증기관 시스템(300)을 선택할 수 있는 소정의 UI(클라우드 선택 UI, 31)를 더 포함할 수 있다. 그러면, 이때에는 상기 인증기관 시스템(300)에 저장된 인증서들 중 상기 사용자의 인증서만이 탐색될 수 있다. 이를 위해 상기 사용자용 소프트웨어는 사용자의 식별정보를 상기 인증기관 시스템(300)으로 전송할 수 있으며, 상기 인증기관 시스템(300)은 이에 응답하여 상기 사용자에 상응하는 적어도 하나의 인증서의 정보(예컨대, 인증서 종류, 사용자 식별정보, 만료일, 발급기관(인증기관 시스템의 주체)의 정보 등)를 도 11에 도시된 바와 같이 사용자의 단말기(400) 및/또는 인증단말(500)로 제공할 수 있다. 이를 위해 상기 사용자용 소프트웨어는 상기 UI(31)가 선택되면, 사용자의 식별정보를 입력받기 위한 소정의 UI를 상기 사용자의 단말기(400) 및/또는 인증단말(500)로 제공하고, 상기 UI를 통해 사용자의 식별정보를 입력받을 수도 있다.
또한, 인증서가 선택되면 인증서 비밀번호(암호)를 입력할 수 있는 소정의 UI가 도 11에 도시된 바와 같이 사용자에게 제공될 수 있다.
이후 상기 인증기관 시스템(300)에 저장되어 있는 상기 사용자의 인증서의 정보가 상기 사용자에 의해 선택되면, 상술한 바와 같은 절차에 의해 상기 사용자의 인증이 수행될 수 있다.
이를 위해 상기 사용자용 소프트웨어는 인증서의 저장 위치 및 인증서 비밀번호를 입력받을 수 있는 UI를 제공하는 UI 제공 수단, 상기 UI 제공 수단에 의해 제공되는 클라우드 UI(31)가 상기 사용자용 소프트웨어가 설치된 단말기(400 또는 500)를 통해 선택되는 경우, 사용자의 식별정보를 입력받기 위한 입력 수단, 및 식별정보가 입력되면 상기 인증기관 시스템(300)으로부터 상기 식별정보에 상응하는 인증서를 수신하고 수신된 정보를 디스플레이하기 위한 인증서 정보 획득수단을 포함할 수 있다. 그리고, 디스플레이된 인증서 정보 중 어느 하나가 선택되면 선택된 인증서 정보에 상응하는 인증서의 비밀번호가 상기 UI 제공 수단이 제공하는 비밀번호 UI에 의해 획득될 수 있다.
또한, 인증서의 발급 단계에서도 상기 사용자용 소프트웨어가 사용될 수 있으며, 이때에도 인증서의 발급위치로 상기 클라우드 UI(31)가 사용자의 단말기(400) 및/또는 인증단말(500)에 의해 선택될 수 있다. 그러면, 상기 인증기관 시스템(300)은 인증서를 발급하고 발급된 인증서와 상기 사용자용 소프트웨어를 통해 입력받은 개인키를 암호화하여 상기 인증기관 시스템(300)에 저장할 수 있다.
한편, 사용자가 소정의 단말기(예컨대, 400, 또는 500)에 설치되어 있는 인증서 즉, 인증서 정보와 암호화된 개인키를 상기 인증기관 시스템(300)으로 이동시키고자 할 수도 있다. 이러한 경우에는, 상기 사용자용 소프트웨어가 제공하는 소정의 UI를 통해 인증서의 이동요청 및 이동위치를 상기 단말기(400 또는 500)으로부터 수신할 수 있다. 그리고, 이동위치가 상기 인증기관 시스템(300)인 경우, 상기 사용자용 소프트웨어는 상기 인증서를 인증기관 시스템(300)으로 전송하고, 상기 단말기(400 또는 500)에 저장된 인증서를 삭제할 수 있다.
본 발명의 실시 예에 따른 클라우드 공인인증 시스템 제공방법은 컴퓨터로 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록 장치를 포함한다. 컴퓨터가 읽을 수 있는 기록매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 하드 디스크, 플로피 디스크, 광 데이터 저장장치 등이 있으며, 또한 캐리어 웨이브(예를 들어, 인터넷을 통한 전송)의 형태로 구현되는 것도 포함한다. 또한, 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다. 그리고 본 발명을 구현하기 위한 기능적인(functional) 프로그램, 코드 및 코드 세그먼트들은 본 발명이 속하는 기술분야의 프로그래머들에 의해 용이하게 추론될 수 있다.
본 발명은 도면에 도시된 일 실시 예를 참고로 설명되었으나 이는 예시적인 것에 불과하며, 본 기술 분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시 예가 가능하다는 점을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호 범위는 첨부된 등록청구범위의 기술적 사상에 의해 정해져야 할 것이다.

Claims (6)

  1. 사용자의 본인인증이 수행된 후 소정의 서비스를 수행하는 서비스 시스템;
    상기 사용자의 단말임이 미리 인증된 인증단말; 및
    인증서버를 포함하며,
    상기 서비스 시스템은,
    사용자의 단말기 -상기 사용자의 단말기는 상기 인증단말일 수도 있음- 로부터 상기 인증단말의 등록요청이 수신되면, 상기 사용자의 식별정보를 포함하는 제2생성정보를 생성하여 상기 사용자의 단말기로 전송하고,
    상기 인증단말은,
    상기 사용자의 단말기 또는 상기 서비스 시스템으로부터 상기 제2생성정보를 수신한 후, 상기 제2생성정보 또는 상기 제2생성정보에 포함된 상기 사용자의 식별정보 중 어느 하나, 및 상기 인증단말 식별정보를 포함하는 단말 등록요청신호를 상기 인증 서버로 출력하고,
    상기 인증서버는,
    소정의 단말 인증 시스템을 통해 상기 사용자 식별정보 및 상기 인증단말 식별정보가 서로 상응하는지를 판단한 후, 서로 상응하는 경우에 상기 인증단말의 식별정보를 상기 인증서버에 등록하는 것을 특징으로 하는 클라우드 공인인증 시스템.
  2. 사용자의 본인인증이 수행된 후 소정의 서비스를 수행하는 서비스 시스템;
    상기 사용자의 단말임이 미리 인증된 인증단말;
    인증서버; 및
    상기 사용자의 인증서를 저장하고 있는 인증기관 시스템을 포함하며,
    상기 서비스 시스템은,
    사용자의 단말기 -상기 사용자의 단말기는 상기 인증단말일 수도 있음- 로부터 상기 인증서의 등록요청이 수신되면, 상기 인증서의 인증서 식별정보를 포함하는 제3생성정보를 생성하여 상기 사용자의 단말기로 전송하고,
    상기 인증단말은,
    상기 사용자의 단말기 또는 상기 서비스 시스템으로부터 상기 제3생성정보를 수신한 후, 상기 제3생성정보 또는 상기 제3생성정보에 포함된 상기 인증서 식별정보 중 어느 하나, 및 상기 인증단말 식별정보를 포함하는 인증서 등록요청신호를 상기 인증서버로 출력하고,
    상기 인증서버는,
    상기 인증서버에 미리 등록된 상기 인증단말 식별정보와 상기 인증서 등록요청 신호에 포함된 상기 인증서 식별정보를 매칭하여 등록하는 것을 특징으로 하는 클라우드 공인인증 시스템.
  3. 사용자의 본인인증이 수행된 후 소정의 서비스를 수행하는 서비스 시스템;
    상기 사용자의 단말임이 미리 인증된 인증단말; 및
    인증서버를 포함하는 클라우드 공인인증 시스템의 제공방법에 있어서,
    상기 서비스 시스템이 사용자의 단말기 -상기 사용자의 단말기는 상기 인증단말일 수도 있음- 로부터 상기 인증단말의 등록요청이 수신되면, 상기 사용자의 식별정보를 포함하는 제2생성정보를 생성하여 상기 사용자의 단말기로 전송하는 단계;
    상기 인증단말이 상기 사용자의 단말기 또는 상기 서비스 시스템으로부터 상기 제2생성정보를 수신한 후, 상기 제2생성정보 또는 상기 제2생성정보에 포함된 상기 사용자의 식별정보 중 어느 하나, 및 상기 인증단말 식별정보를 포함하는 단말 등록요청신호를 상기 인증 서버로 출력하는 단계;
    상기 인증서버가 소정의 단말 인증 시스템을 통해 상기 사용자 식별정보 및 상기 인증단말 식별정보가 서로 상응하는지를 판단한 후, 서로 상응하는 경우에 상기 인증단말의 식별정보를 상기 인증서버에 등록하는 단계를 포함하는 클라우드 공인인증 시스템 제공방법.
  4. 사용자의 본인인증이 수행된 후 소정의 서비스를 수행하는 서비스 시스템;
    상기 사용자의 단말임이 미리 인증된 인증단말;
    인증서버; 및
    상기 사용자의 인증서를 저장하고 있는 인증기관 시스템을 포함하는 클라우드 공인인증 시스템의 제공방법에 있어서,
    상기 서비스 시스템이 사용자의 단말기 -상기 사용자의 단말기는 상기 인증단말일 수도 있음- 로부터 상기 인증서의 등록요청이 수신되면, 상기 인증서의 인증서 식별정보를 포함하는 제3생성정보를 생성하여 상기 사용자의 단말기로 전송하는 단계;
    상기 인증단말이 상기 사용자의 단말기 또는 상기 서비스 시스템으로부터 상기 제3생성정보를 수신한 후, 상기 제3생성정보 또는 상기 제3생성정보에 포함된 상기 인증서 식별정보 중 어느 하나, 및 상기 인증단말 식별정보를 포함하는 인증서 등록요청신호를 상기 인증서버로 출력하는 단계;
    상기 인증서버가 상기 인증서버에 미리 등록된 상기 인증단말 식별정보와 상기 인증서 등록요청 신호에 포함된 상기 인증서 식별정보를 매칭하여 등록하는 단계를 포함하는 클라우드 공인인증 시스템 제공방법.
  5. 제3항 내지 제4항 중 어느 한 항에 기재된 방법을 수행하기 위한 프로그램을 기록한 컴퓨터 판독 가능한 기록매체.
  6. 인증서 관리를 위한 사용자용 소프트웨어가 설치된 시스템에 있어서,
    상기 시스템은,
    인증서의 저장 위치 및 인증서 비밀번호를 입력받을 수 있는 UI를 제공하는 UI 제공 수단;
    상기 UI 제공 수단에 의해 제공되는 클라우드 UI가 상기 시스템에 의해 선택되는 경우, 사용자의 식별정보를 입력받기 위한 입력 수단; 및
    상기 식별정보가 입력되면 클라우드 UI에 상응하는 인증기관 시스템으로부터 상기 식별정보에 상응하는 인증서에 대한 정보를 수신하고, 수신된 인증서에 대한 정보를 디스플레이하기 위한 인증서 정보 획득수단을 포함하는 클라우드 공인인증 시스템.
KR1020140011815A 2014-01-29 2014-01-29 클라우드 공인인증 시스템 및 그 제공방법 KR20140047058A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020140011815A KR20140047058A (ko) 2014-01-29 2014-01-29 클라우드 공인인증 시스템 및 그 제공방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020140011815A KR20140047058A (ko) 2014-01-29 2014-01-29 클라우드 공인인증 시스템 및 그 제공방법

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020120112270A Division KR101498120B1 (ko) 2012-10-10 2012-10-10 클라우드 공인인증 시스템 및 그 방법

Publications (1)

Publication Number Publication Date
KR20140047058A true KR20140047058A (ko) 2014-04-21

Family

ID=50653800

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020140011815A KR20140047058A (ko) 2014-01-29 2014-01-29 클라우드 공인인증 시스템 및 그 제공방법

Country Status (1)

Country Link
KR (1) KR20140047058A (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101879758B1 (ko) * 2017-06-14 2018-08-17 주식회사위즈베라 사용자 단말기별 사용자 디지털 인증서 발급 방법 및 그 인증서에 의한 인증 방법

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101879758B1 (ko) * 2017-06-14 2018-08-17 주식회사위즈베라 사용자 단말기별 사용자 디지털 인증서 발급 방법 및 그 인증서에 의한 인증 방법

Similar Documents

Publication Publication Date Title
RU2710897C2 (ru) Способы безопасного генерирования криптограмм
US9038196B2 (en) Method for authenticating a user requesting a transaction with a service provider
US9426134B2 (en) Method and systems for the authentication of a user
JP6012125B2 (ja) 問い合わせ型トランザクションによる強化された2chk認証セキュリティ
EP2859488B1 (en) Enterprise triggered 2chk association
CA2736582C (en) Authorization of server operations
CN109039652B (zh) 一种数字通证的生成及应用方法
CN112232814B (zh) 支付密钥的加密和解密方法、支付认证方法及终端设备
CN104662864A (zh) 使用了移动认证应用的用户方便的认证方法和装置
KR20130107188A (ko) 사운드 코드를 이용한 인증 서버 및 인증방법
CN102195932A (zh) 一种基于两个隔离设备实现网络身份认证的方法和系统
US20100257359A1 (en) Method of and apparatus for protecting private data entry within secure web sessions
WO2012034339A1 (zh) 一种实现网络支付的方法及移动终端
KR101498120B1 (ko) 클라우드 공인인증 시스템 및 그 방법
KR20160063250A (ko) 카드 디바이스를 사용한 네트워크 인증 방법
KR102407432B1 (ko) 디지털 id 보관 및 연계 서비스 장치
KR101708880B1 (ko) 통합 로그인 장치 및 통합 로그인 방법
JP5135331B2 (ja) 無線通信能力を有するpc用外部署名装置
KR20140047058A (ko) 클라우드 공인인증 시스템 및 그 제공방법
KR102542840B1 (ko) 오픈 api 기반의 금융 인증 서비스 제공 방법 및 시스템
WO2011060738A1 (zh) 一种确认cpu卡内数据的方法
Reddy et al. A comparative analysis of various multifactor authentication mechanisms
KR20150089960A (ko) 본인인증방법 및 이를 위한 디지털 시스템, 인증 시스템
KR101584219B1 (ko) 본인인증방법 및 이를 위한 디지털 시스템, 인증 시스템
KR101804845B1 (ko) 무선단말기에서의 otp인증방법

Legal Events

Date Code Title Description
A107 Divisional application of patent
WITN Withdrawal due to no request for examination