KR20180013710A - 공개키 기반의 서비스 인증 방법 및 시스템 - Google Patents

공개키 기반의 서비스 인증 방법 및 시스템 Download PDF

Info

Publication number
KR20180013710A
KR20180013710A KR1020170081767A KR20170081767A KR20180013710A KR 20180013710 A KR20180013710 A KR 20180013710A KR 1020170081767 A KR1020170081767 A KR 1020170081767A KR 20170081767 A KR20170081767 A KR 20170081767A KR 20180013710 A KR20180013710 A KR 20180013710A
Authority
KR
South Korea
Prior art keywords
authentication
service
user
server
value
Prior art date
Application number
KR1020170081767A
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 (주)이스톰
Publication of KR20180013710A publication Critical patent/KR20180013710A/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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • H04L9/0825Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) using asymmetric-key encryption or public key infrastructure [PKI], e.g. key signature or public key certificates
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/382Payment protocols; Details thereof insuring higher security of transaction
    • G06Q20/3821Electronic credentials
    • G06Q20/38215Use of certificates or encrypted proofs of transaction rights
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • H04L63/0435Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload wherein the sending and receiving network entities apply symmetric encryption, i.e. same key used for encryption and decryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • H04L63/0442Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload wherein the sending and receiving network entities apply asymmetric encryption, i.e. different keys for encryption and decryption
    • 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/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
    • 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/3231Biological data, e.g. fingerprint, voice or retina
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/04Key management, e.g. using generic bootstrapping architecture [GBA]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/06Authentication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/083Network architectures or network communication protocols for network security for authentication of entities using passwords
    • H04L63/0838Network architectures or network communication protocols for network security for authentication of entities using passwords using one-time-passwords

Abstract

본 발명은 현재 사용하는 사용자 단말기가 올바른 서비스 서버에 접속하여 사용자 인증이 개시되었는지를 확인할 수 있는 방법 및 시스템을 제공한다. 보다 구체적으로 본 발명은 사용자 단말기의 서비스 접속 후 사용자 인증을 위하여 사용자 아이디를 서비스 서버에 입력하면, 서비스 서버는 서비스 인증값을 생성하여 사용자 단말기에 제시한 후, 서비스 인증값 또는 인증값을 생성할 수 있는 관련값을 PKI 기반 키로 암호화하여 인증 단말기로 전달하는 방법을 제공한다. 이후, 인증 단말기에서 사전에 보관하고 있는 PKI 기반 키로 해당 값을 검증하여 서비스로부터 전송된 값을 복호화하여 서비스 확인값 또는 관련값을 기반으로 한 서비스 확인값을 생성하여 사용자에게 표출함으로써 사용자 단말기가 정당한 서비스 서버와 연결되었는지 사용자가 직접 육안으로 확인할 수 있게 하는 서비스 인증 방법 및 시스템을 제공한다.

Description

공개키 기반의 서비스 인증 방법 및 시스템{PUBLIC KEY INFRASTRUCTURE BASED SERVICE AUTHENTICATION METHOD AND SYSTEM}
본 발명은 인증 방법 및 시스템에 관한 것으로서, 보다 구체적으로는 공개키 기반의 서비스 인증 방법 및 시스템에 관한 것이다.
수십개의 온라인 서비스와 모바일 기기가 일상생활에서 활용되면서 모바일 기기를 이용하여 사용자 인증을 대신할 수 있는 차세대 인증기술들이 도입되고 있다. 가장 대표적인 기술 중 하나는 사용자의 스마트폰에 부착된 생체정보 인식기와 PKI(Public Key Infrastructure)기반 기술을 응용한 FIDO(Fast IDentity Online)와 같은 사용자 인증 기술이다.
이러한 모바일 단말기를 이용한 PKI 기반 사용자 인증기술은 통상적으로 다음과 같은 방식으로 동작한다. 사용자가 서비스에 가입할 때마다 별도의 본인 생체정보 등록과 같은 본인 확인 절차를 거쳐, 모바일 단말기에서 한쌍의 비대칭키를 생성하여 사용자의 비밀키는 사용자의 모바일 단말기에서 보관하고, 서비스 서버에게는 사용자의 공개키를 전송하는 방식이다. 추후 사용자가 해당 서비스에 접속하여 아이디를 입력하면, 서비스 서버는 접속 시점에 사전에 지정된 또는 임의의 시도값을 사용자의 단말기에 전송하고, 사용자 단말기에서 사용자가 등록해놓은 생체값 확인과 같은 본인 확인 절차를 거치면 사용자 단말기는 수신한 시도값에 사용자의 개인키로 사인하여 서버로 전송한다. 이에 따라, 서비스 서버는 서버가 보관하고 있던 사용자의 공개키로 해당 값을 검증하여, 정당한 사용자가 정당한 인증 단말기로 사용자 인증을 수행하였는지 확인하는 사용자 인증절차를 수행한다.
그러나 기존 모바일 기반 사용자 인증 기술은 올바른 사용자가 올바른 모바일 인증기를 통하여 서비스 서버에 접속하는지를 인증하는 것이지, 현재 사용자가 사용하는 서비스 단말기가 올바른 서비스 서버에 연결되어 사용자 인증요청이 개시되었는지까지를 확인하지는 못한다.
일 예로 모바일 단말기에 서비스앱과 인증앱이 하나로 연결되어 구동되지 않고 각각 나누어서 구동되거나, PC 단말기에서 웹서비스로 온라인 서비스에 접속하면서 모바일 단말기의 인증앱으로 사용자 접속에 대한 인증을 수행하는 경우, 사용자가 정상적인 서비스 단말기로 정상적인 서비스 서버를 접속하였는지 확인하지 않은 채 모바일 단말기로 들어오는 사용자 확인에 대한 요청을 수행할 수 있다.
따라서 사용자가 서비스 서버로부터 사용자 인증앱이 설치된 단말기에 사용자 인증 요청이 들어오게 되면 현재 서비스 단말기가 정상적인 서비스에 연결되어 사용자 요청이 들어온 것인지 확인할 수 없다. 이때 만일, 최초 사용자의 서비스 단말기가 정상적인 서비스 서버가 아닌 잘못된 서비스에 접속하고, 그 시점에 해커가 사용자 아이디를 해커의 서비스 단말기에 입력하게 되면, 올바른 사용자의 모바일 인증앱에 사용자 확인 요청이 들어오게 된다. 이러한 경우, 사용자는 자신의 접속으로 오해하고 사용자 확인을 수행하여 사용자 대신 해커의 접속시도에 대한 인증을 수행해주는 경우도 발생할 수 있다.
이를 보다 구체적으로 설명하면, 최초 사용자가 서비스 단말기에서 파밍 웹사이트나 파밍된 모바일앱으로 서비스에 접속하여 아이디를 입력하면, 그 시점에 해커가 습득한 아이디로 실제 서비스 서버에 접속하여 사용자 아이디를 입력하고, 사용자가 소지한 모바일 인증앱 단말기에 사용자 인증요청이 작동되면, 사용자는 자신의 접속에 따른 인증 요청으로 간주하고 생체값 입력과 같은 본인 확인 절차를 실시해주어, 해커의 서비스 단말기가 실제 서비스 서버에게 인증을 받게 되는 것이다.
따라서 모바일 인증기를 통해서 서비스와 인증이 분리되어 운영될 때, 변조된 서비스에 의해서 인증이 개시되는 것을 사용자가 확인하지 않고 인증하게 되면, 적용된 사용자 인증기술이 아무리 보안성이 뛰어나다 하더라도 서비스 보안에 치명적인 문제점이 발생하게 된다.
그동안 사용자 단말기가 올바른 서비스를 만났는지 확인하는 인증방법으로는 QR 코드를 기반으로 검증하는 방식과 서비스 OTP(Service One Time Password)를 기반으로 검증하는 방식이 있었다.
QR 코드를 기반으로 검증하는 방식은 사용자가 서비스에 접속하여 사용자 아이디를 입력하면 서비스 서버가 생성한 QR 코드를 사용자의 서비스 단말기에 표출하고, 사용자의 모바일 인증앱의 카메라를 이용하여 감지한 값을 서비스 서버에 전송하는 방식이었다. 그러나 QR 코드를 이용하는 방식은 카메라로 센싱하는 번잡함과 함께 하나의 모바일 단말기로 서비스앱과 인증앱을 동시에 이용하는 모바일 업무환경에서는 자신의 카메라로 자신의 화면을 센싱할 수 없는 한계점이 발생한다.
또한 서비스 OTP를 기반으로 서비스를 검증하는 방식은 사용자가 서비스에 접속하여 아이디를 입력하면 서비스 서버가 생성한 OTP값을 사용자의 서비스 단말기에 표출하고, 사용자의 모바일 검증앱을 통해서 OTP값을 생성하여 서비스가 정상적인 서비스인지를 확인하는 방법이었다. 그러나 서비스 OTP를 이용하는 방식도 OTP 특성상 인증값이 숫자로만 표현되어야 하여 접속한 서비스의 이름이나 서비스가 제시하는 서비스 항목명(서비스내의 기능명, 거래명, 계약문서, 거래자명, 거래금액 등)으로 사용자에게 직접적으로 대조할 수 있게 표현하지 못하는 한계점이 있었다.
따라서 사용자 단말기가 올바른 서비스 서버나 서비스의 올바른 하위서비스에 접속하여 사용자 인증이 개시된 것인지 확인할 수 있는 PKI 기반의 서비스 인증 기술이 필요하다.
본 발명은 현재 사용하는 사용자 단말기가 올바른 서비스 서버에 접속하여 사용자 인증이 개시되었는지를 확인할 수 있는 방법 및 시스템을 제공한다.
보다 구체적으로 본 발명은 사용자 단말기의 서비스 접속 후 사용자 인증을 위하여 사용자 아이디를 서비스 서버에 입력하면, 서비스 서버는 서비스 인증값을 생성하여 사용자 단말기에 제시한 후, 서비스 인증값 또는 인증값을 생성할 수 있는 관련값을 PKI 기반 키로 암호화하여 인증 단말기로 전달하는 방법을 제공한다. 이후, 인증 단말기에서 사전에 보관하고 있는 PKI 기반 키로 해당 값을 검증하여 서비스로부터 전송된 값을 복호화하여 서비스 확인값 또는 관련값을 기반으로 한 서비스 확인값을 생성하여 사용자에게 표출함으로써 사용자 단말기가 정당한 서비스 서버와 연결되었는지 사용자가 직접 육안으로 확인할 수 있게 하는 서비스 인증 방법 및 시스템을 제공한다.
본 발명의 일 측면에 따르면, PKI 기반 기술을 이용한 모바일 인증기술을 구성하는데 있어서 현재 사용하는 서비스 단말기가 올바른 서비스 서버에 접속하여 사용자 인증이 개시되었는지를 확인하는 PKI 기반의 인증기앱과 인증 서버가 제공된다.
여기서, 서비스와 사용자 인증을 확인하는 PKI 기반의 인증 서버는,
사용자 아이디를 수신하여 사전에 주어진 조건에 따라서 서비스 인증코드를 생성한 후 서비스 서버를 경유하여 사용자의 서비스 단말기에 제시한 후, 서비스 인증값 또는 인증값을 생성할 수 있는 관련값을 PKI 기반 키로 암호화하여 인증단말기로 전달하고, 인증기앱으로부터 수신된 암호화된 사용자 인증값을 복호화하여 사전에 지정된 사용자 인증값과 일치하는 경우 서비스 서버에게 인증 성공 메시지를 전달한다.
여기서, 상기 서비스에 사용되는 PKI 기반의 인증기앱은,
인증 서버로부터 수신한 암호화된 서비스 인증값을 인증단말기에서 사전에 보관하고 있는 PKI 기반 키로 해당 값을 복호화하여 서비스 확인값 또는 관련값을 기반으로 서비스 확인값을 생성하여 사용자에게 표출하고, 해당 서비스 단말기가 정당한 서비스 서버와 연결되었는지 사용자가 직접 확인할 수 있게 하며, 사용자의 동의 절차를 위한 본인확인과정을 거치면 사전에 지정된 조건에 따라 사용자 인증값을 생성하고 보관하고 있던 PKI 기반 키로 암호화하여 인증 서버로 암호화된 사용자 인증값을 전달한다.
본 발명의 실시 예에 의하면, PKI 기반 기술을 이용한 모바일 인증기술을 사용하는데 있어서, 현재 사용하는 사용자 단말기가 올바른 서비스 서버에 접속하여 사용자 인증이 개시되었는지 사용자가 명시적으로 확인할 수 있어 중간자 공격에 따른 인증요청에 대비할 수 있는 효과가 있다.
또한, 기존에 QR 코드 기반으로 사용자 단말기와 인증기 앱이 나누어서 수행하던 방식을 하나의 단말기에서 수행할 수 있게 함으로써, 보다 안전한 모바일 기반 인증환경을 구성할 수 있는 효과가 있다.
또한, 기존에 OTP(One time password)가 숫자로만 표현되어야 하는 한계를 뛰어넘어서, 서비스를 인증하는데 있어서 접속한 서비스의 이름이나 서비스가 제시하는 서비스 항목명을 사용자에게 직접적으로 표현하여 의미적으로도 해당 서비스를 사용자가 직접 대조할 수 있는 표현이 가능한 효과가 있다.
도 1은 본 발명의 실시예에 따른 PKI 기반의 서비스 인증 방법 및 시스템을 설명하기 위한 도면.
도 2 ~ 도 7은 본 발명의 실시예의 PKI 기반의 서비스 인증 방법에 따라 인증을 수행하는 과정에서 화면 상에 표출되는 예시 화면들.
본 발명은 다양한 변환을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변환, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.
본 발명을 설명함에 있어서, 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다. 또한, 본 명세서의 설명 과정에서 이용되는 숫자(예를 들어, 제1, 제2 등)는 하나의 구성요소를 다른 구성요소와 구분하기 위한 식별기호에 불과하다.
또한, 명세서 전체에서, 일 구성요소가 다른 구성요소와 "연결된다" 거나 "접속된다" 등으로 언급된 때에는, 상기 일 구성요소가 상기 다른 구성요소와 직접 연결되거나 또는 직접 접속될 수도 있지만, 특별히 반대되는 기재가 존재하지 않는 이상, 중간에 또 다른 구성요소를 매개하여 연결되거나 또는 접속될 수도 있다고 이해되어야 할 것이다.
또한, 명세서 전체에서, 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다. 또한, 명세서에 기재된 "부", "모듈" 등의 용어는 적어도 하나의 기능이나 동작을 처리하는 단위를 의미하며, 이는 하나 이상의 하드웨어나 소프트웨어 또는 하드웨어 및 소프트웨어의 조합으로 구현될 수 있음을 의미한다. 또한 본 명세서에서 표현하는 Push ID는 통상적으로 모바일 앱 개발자들이 표현하는 Push Token을 의미하며, 푸시 메세지 서비스는 구글이나 애플사 등과 같은 모바일 운영체제에서 앱별로 제공하는 메시지 서비스를 말한다.
도 1은 본 발명의 실시예에 따른 PKI 기반의 서비스 인증 방법 및 시스템을 설명하기 위한 도면이고, 도 2 ~ 도 7은 본 발명의 실시예의 PKI 기반의 서비스 인증 방법에 따라 인증을 수행하는 과정에서 화면 상에 표출되는 예시 화면들이다. 이하, 도 1을 중심으로 도 2 ~ 도 7을 참조하여, 본 발명의 실시예들을 상세히 설명하기로 한다.
도 1을 참조하면, 본 발명의 실시예에 따른 PKI 기반의 서비스 인증 시스템은, 클라이언트에게 서비스를 제공하는 서비스 서버(110), 계정정보 DB(120), PKI 기반의 인증서버(130), 상기 서비스 서버에 접속하는 서비스 클라이언트(200), PKI 기반의 인증을 수행하기 위한 인증기앱(210)을 포함할 수 있다.
여기서, 상기 서비스 클라이언트(200)는 서비스 서버(110)에 접속하기 위해 사용자가 사용하는 컴퓨팅 디바이스로서, 사용자의 PC, 스마트폰 등의 각종 단말기를 통칭한다. 또한 상기 인증기앱(210)은 본 발명의 실시예에 따라 서비스 인증 및 사용자 인증을 수행하기 위한 용도로 제작된 애플리케이션 프로그램(즉, 인증 용도의 에이전트 프로그램)을 의미한다. 이러한 인증기앱(210)은 사용자가 자신의 인증단말기(예를 들어, 스마트폰 등)에 직접 설치할 수도 있지만, 전용 인증단말기로서 별도 구비될 수도 있음은 물론이다. 즉, 서비스 클라이언트(200)는 PKI 기반 인증기앱(210)과 별도로 구성된 PC의 웹브라우져일 수도 있고, 모바일 서비스앱일 수 있으며, 서비스 클라이언트(200)와 PKI 기반 인증기앱(210)이 하나로 통합된 모바일앱일 수 있음도 자명한 것이다. 또한 계정정보 DB(120)도 구현 방식에 따라 서비스 서버(110)와 통합 운영될 수도 있음은 자명하다.
또한, 도 1에서는 서비스 클라이언트(200)와 인증기앱(210)이 물리적으로 분리된 객체로서 도시하였지만, 반드시 이와 같을 필요는 없다. 예를 들어서, 서비스 클라이언트(200)가 사용자의 스마트폰이고, 해당 스마트폰에 인증기앱(210)이 설치되는 경우에는 하나의 객체 내에 구현될 수도 있는 것이다. 본 명세서에 첨부된 도면을 기준으로 설명하면, 도 2, 도 4, 도 6은 서비스 클라이언트(200)가 PC 등과 같은 사용자가 이용하는 특정 서비스 단말기이고, 인증기앱(210)이 사용자가 소지한 스마트폰에 설치된 경우를 예시하고 있다. 이러한 경우, 서비스 클라이언트(200)는 서비스 서버(110)와 웹 어플리케이션을 통해서 접속하고, 인증기앱(210)은 모바일 환경에서 서비스 인증 및 사용자 인증 동작을 수행하게 될 것이다(본 발명의 실시예에 따른 제1 케이스). 다른 예로, 도 5 및 도 7은 서비스 클라이언트(200)도 사용자가 소지한 스마트폰이고, 해당 스마트폰에 인증기앱(210)이 설치된 경우를 예시하고 있다. 이러한 경우, 서비스 서버(110)와의 접속은 물론 인증 동작도 모두 모바일 환경에서 이루어지게 될 것이다(본 발명의 실시예에 따른 제2 케이스).
서비스 서버(110)는 서비스 클라이언트(200)의 요청에 대응하는 구성부로 실질적인 서비스를 제공하는 구성부이다. 최초 클라이언트가 접속을 시도하면 사용자 아이디를 요구하고[도 1의 S1 및 S2 참조], 계정정보 DB(120)에서 아이디가 확인되면[도 1의 S3 및 S4 참조], PKI 인증서버(130)에게 해당 아이디를 전달하고 서비스 인증코드를 요청한다[도 1의 S5 참조].
이때, PKI로 사용되는 기반기술이 인증기앱(210)이 구동되어 있어야 하는 상황이라면 계정정보 DB(120)에서 아이디를 확인한 이후, 별도의 Push 서버(미도시)를 통해서 인증 요청이 접수되었다는 푸시 메시지를 PKI 기반 인증기앱(210)으로 보내고, 해당 푸시 메시지를 수신한 사용자가 앱을 구동하였다는 신호가 들어오면 아이디 전달과 함께 인증 코드 요청을 전개할 수 도 있음은 자명하다.
또한 서비스 인증코드를 요청하는데 있어서 서비스 인증코드 이외에 다른 서비스 서버가 현재 수행하려고 하는 기능명을 추가하여 인증코드를 요청 할 수 있다. 즉, 서비스 서버가 현재 인증을 받으려고 하는 동작명을 전송하는 것이다. 예를 들어 아이디를 보낼 때, 사이트 URL에 기능명을 '로그인'이라고 붙여서 전송하거나 특정 계약서에 인증을 받는 것이라면 계약서명, 계약서 파일위치, 계약서 문서화일, 계약주체 등을 추가로 포함하여 보낼 수도 있다.
PKI 인증서버(130)는 사전에 주어진 조건에 따라서 서비스 인증코드를 생성할 수 있다[도 1의 S6 참조]. 이때, 사전에 주어진 조건은 임의의 숫자를 생성하는 것일 수도 있고, OTP와 같은 별도의 사용자별로 사전에 지정된 대칭키로 해당 아이디의 OTP값을 생성하는 것일 수도 있으며, 사전에 지정한 계약서번호 생성규칙에 따라서 '계약2016-일련번호'등으로 생성될 수도 있고, 서비스 서버가 서비스 인증을 요청하는 문자열 '사이트명(예를 들어, estorm.co.kr), 기능명 Login' 등과 같이 사전에 지정된 그 어떤 형식의 문자열일 수도 있다.
이후, PKI 인증서버(130)는 생성된 서비스 인증코드를 수신자의 아이디에 상응하여 미리 할당된 공개키로 암호화하여 해당 아이디의 PKI 기반 인증기앱(210)이 설치된 단말기로 전달한다[도 1의 S7 및 S8 참조]. 이때, 전달 방식은 소켓통신이나 푸시 메시지 등 그 어떤 통신방식으로도 전달이 가능함은 자명하다.
또한 이때, PKI 인증서버(130)는 생성된 서비스 인증코드를 서비스 서버(110)로 전달함으로써, 해당 서비스 인증코드가 서비스 서버(110)에서 제공하는 화면을 통해서 사용자에게 게시될 수 있도록 한다[도 1의 S9 및 S10 참조]. 이 경우, 서비스 인증 및 사용자 인증에 관한 화면 대기가 이루어진다[도 1의 S11 참조].
서비스 서버(110)가 제공하는 화면을 통해서 서비스 인증 코드가 게시되는 것에 관한 화면 예시가 도 2의 (a)에 도시되고 있다. 다른 화면 예시로서, 도 4의 (a) 및 도 5의 (a)에는 서비스 인증 코드와 함께 해당 서비스 접속과 관련된 기타 정보(즉, 서비스 서버의 URL, 서비스명, 인증 목적, 인증을 요청한 사용자 등)도 더 표출되는 경우를 예시하고 있다. 또 다른 화면 예시로서, 도 6의 (a) 및 도 7의 (a)에는 서비스 인증 코드(본 예시에서는 계약 인증 코드임)와 함께 해당 계약과 관련된 기타 정보(즉, 계약서 위치, 계약명, 계약번호, 계약자 및 피계약자, 계약서 본문값 등)가 더 표출되는 경우를 예시하고 있다.
이에 따라, PKI 기반의 인증기앱(210)은 전달된 암호화된 값을 자신의 비밀키로 복호화하고, 해당 문자열을 사전에 지정된 방식으로 처리하여 사용자가 서비스 인증코드를 확인할 수 있도록 표시하면서 사용자의 동의를 구한다[도 1의 S12, S13, S14 참조]. 이때, 복호화된 해당 문자열은 서비스 인증을 위한 인증값 자체일 수도 있고, 서비스 인증값을 생성할 수 있는 OTP 생성 변수일 수도 있으며, 사이트명에 기능명을 조합한 문자열일 수도 있고, 계약번호에 계약금액과 계약자명이 명시된 문자열 등 그 제한이 없다.
여기서, 서비스 인증코드를 확인하는데 있어서 사용자의 동의 방식은 사전에 정의된 방식에 따라서 다양하게 적용될 수 있다. 일예로 사용자 동의는 사용자 본인을 확인할 수 있는 생체정보 확인기능으로서 지문인식, 음성인식, 얼굴인식, PIN 확인 등 스마트폰에서 수행 가능한 다양한 본인확인 기능이 적용될 수 있음은 자명하다. 이에 관한 일 예로서 도 3은 지문인식을 통한 본인확인 방법이 도시되고 있다.
사용자의 인증코드 확인이 이루어지면, 인증기앱(210)은 사전에 지정된 조건에 따라서 사용자 인증값을 생성하고[도 1의 S15 참조], 인증기에서 사용 가능한 해당 아이디의 개인키로 사용자 인증값을 암호화하여 인증서버(130)에 전달한다[도 1의 S16 및 S17 참조]. 이때, 사전에 지정된 조건은 서비스 인증시 수령하였던 문자열을 그대로 사용할 수 있고, 수령한 문자열에 시간과 같은 임의의 가변값을 적용하여 변경할 수 도 있고, 서버와 사전에 사용자 인증에 사용하기로한 동일한 조건에 의해서 생성될 수 있음은 자명하다.
PKI 인증서버(130)는 인증기앱(210)이 전송한 암호화된 값을 해당 아이디의 공개키를 이용하여 복원하고, 사전에 지정한 조건에 따라서 생성한 사용자 인증코드와 비교하여 일치하는 경우 정당한 인증기앱(210)으로부터 데이터가 들어왔다는 것을 확인한후, 서비스 서버에게 인증결과(즉, 인증 승인)을 전송한다[도 1의 S18 및 S19 참조]. 서비스 서버는 인증승인에 따라서 서비스를 개시한다[도 1의 S20 참조]. 예를 들어, 인증 목적이 로그인인 경우에는 해당 사용자에 의한 서비스 접속을 승인하는 것이 될 것이고, 인증 목적이 계약 체결인 경우에는 사용자 동의 의사에 따른 계약 체결을 승인하는 것이 될 것이다.
이상에서는 서비스 인증을 구현하는데 있어서 PKI 인증서버에서 보관하고 있는 사용자의 공개키로 서비스 인증값을 암호화하여 PKI 인증기앱에서 사용자의 비밀키로 복호화하는 경우를 설명하였다, 다만 이와 반대로 PKI 인증서버에서 서버의 비밀키로 암호화하고 PKI 인증기앱에서 서버의 공개키로 복호화할 수 있음도 자명하다. 즉, 서비스 인증은 서버의 비밀키로 인증을 시작하여 사용자의 PKI 인증기앱이 보관하던 서버의 공개키로 복호화하여 서비스 화면과 인증기 화면에 표시된 서비스 인증값이 일치하는지 여부를 사용자에게 확인하도록 동의를 구하고, 이를 사용자가 확인하는 경우 자신의 PKI 인증기앱이 사전에 지정된 방식으로 사용자 인증값을 생성하여, 사용가능한 사용자 개인키로 사용자 인증값을 암호화한 후 PKI 인증서버로 전송할 수 있다.
또한 서비스서버가 사용자 인증이 아닌 계약서에 사용자의 개인키로 날인하는 서비스를 구현하는 경우 상기흐름과 전체적인 흐름은 유사하나 아이디와 함께 전자적 계약서파일을 PKI 인증서버로 함께 전달할 수 있다. 이때, PKI 인증서버는 해당 계약서 파일의 해쉬값을 생성한후 사용자의 공개키로 암호화하여 PKI 인증기앱으로 전달하고, PKI 인증기앱은 자신의 비밀키로 해당 해쉬값을 복호화한후, 사용자 동의가 이루어지면 사용자의 비밀키로 해쉬값을 암호화하여 PKI 인증 서버로 전송할 수 있다. 이에 따라 PKI 인증서버는 수신한 암호화된 해쉬값을 해당 사용자의 공개키로 복호화하고, 서버에서 전송했던 해쉬값과 비교하여 일치하는 경우 서비스 서버에게 계약이 체결된 것을 통보하는 것으로 추가 구현할 수 있음도 자명하다.
또한 구성에 따라서 사용자가 동의하는 방법이 모바일 기기내에 장착된 지문인식과 같은 생체인식 기능이라면, 제조사의 지문인식기가 화면에 표시될 때 서비스 제공자 또는 서비스 제공자의 기능명이 함께 표시되어 지문인식시 사용자가 무엇에 동의하는지 확인해 줄 수 있게 제조사 레벨에서 구현할 수 있음도 자명하다. 이에 관한 화면 예시가 도 5의 (b) 및 (c), 도 7의 (b) 및 (c)에 도시되어 있다.
상술한 본 발명의 실시예에 따른 공개키 기반의 서비스 인증 방법은 컴퓨터로 읽을 수 있는 기록 매체에 컴퓨터가 읽을 수 있는 코드로서 구현되는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록매체로는 컴퓨터 시스템에 의하여 해독될 수 있는 데이터가 저장된 모든 종류의 기록 매체를 포함한다. 예를 들어, ROM(Read Only Memory), RAM(Random Access Memory), 자기 테이프, 자기 디스크, 플래쉬 메모리, 광 데이터 저장장치 등이 있을 수 있다. 또한, 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 통신망으로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 읽을 수 있는 코드로서 저장되고 실행될 수 있다.
이상에서는 본 발명의 실시예를 참조하여 설명하였지만, 해당 기술 분야에서 통상의 지식을 가진 자라면 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 쉽게 이해할 수 있을 것이다.

Claims (7)

  1. 인증 시스템으로서,
    온라인 서비스 서버에 관한 인증 절차를 대행하는 인증 서버와, 모바일 기기에 설치되며 상기 온라인 서비스 서버에 접속하는 접속 단말기에 관한 인증 절차를 수행하는 모바일 인증앱을 포함하고,
    상기 인증 서버는,
    상기 접속 단말기를 통한 상기 온라인 서비스 서버로의 사용자의 서비스 요청에 상응하여 서비스 인증코드를 생성하고, 상기 온라인 서비스 서버가 상기 서비스 인증코드를 서비스 화면 상에 게시할 수 있도록 상기 서비스 인증코드를 상기 온라인 서비스 서버로 전송하고, 상기 사용자가 상기 모바일 인증앱의 화면을 통해서 상기 서비스 인증코드를 확인할 수 있도록 PKI(Public Key Infrastructure) 기반의 암호화를 수행하여 암호화된 서비스 인증코드 또는 암호화된 서비스 인증코드 관련값을 상기 모바일 인증앱으로 전송하는, 인증 시스템.
  2. 제1항에 있어서,
    상기 인증 서버는,
    상기 온라인 서비스 서버로부터 상기 접속 단말기로부터 전달된 상기 사용자의 계정 정보를 수신하고, 상기 수신된 사용자 계정 정보에 상응하여 사전에 할당된 공개키 및 상기 인증 서버의 서버 개인키 중 어느 하나로 상기 생성된 서비스 인증코드 또는 상기 서비스 인증코드 관련값을 암호화하고,
    상기 모바일 인증앱은,
    상기 암호화하여 수신된 서비스 인증코드 또는 상기 서비스 인증코드 관련값을 상기 사용자 계정 정보에 상응하여 사용되는 비밀키 및 상기 인증 서버에 상응하여 사전에 할당된 공개키 중 어느 하나를 이용하여 상기 PKI 기반으로 복호화하고, 상기 사용자의 서비스 인증코드 확인을 통한 서비스 인증을 수행할 수 있도록 상기 서비스 인증코드를 앱 화면을 통해서 게시하는, 인증 시스템.
  3. 제2항에 있어서,
    상기 서비스 인증코드 확인을 통한 상기 서비스 인증은 FIDO(Fast Identity Online) 기반의 인증 방식과 함께 통합 구현되는 것을 특징으로 하는, 인증 시스템.
  4. 제2항에 있어서,
    상기 모바일 인증앱은,
    상기 서비스 인증 코드 확인을 통한 상기 서비스 인증이 완료된 경우, 사전 지정된 조건에 따라 사용자 인증값을 생성하고, 생성된 사용자 인증값을 상기 인증 서버로 전송하고,
    상기 인증 서버는,
    상기 모바일 인증앱에서의 사용자 인증값의 생성 조건에서와 동일한 생성 조건을 이용하여 생성한 확인용 인증값을 생성하며, 상기 수신된 사용자 인증값과 상기 확인용 인증값 간의 비교를 통해서 사용자 인증을 수행하고, 인증 수행 결과를 상기 온라인 서비스 서버로 통지하는, 인증 시스템.
  5. 제1항에 있어서,
    상기 인증 서버는, 상기 온라인 서비스 서버로부터 수신된 해당 서비스 관련 정보를 활용하여 사전 지정된 조건에 따라 상기 서비스 인증코드를 생성하고,
    상기 서비스 관련 정보는, 상기 온라인 서비스 서버의 상기 서비스 화면 및 상기 모바일 인증앱의 화면을 통해 상기 서비스 인증 코드와 함께 게시되는 것을 특징으로 하는, 인증 시스템.
  6. 제5항에 있어서,
    인증 목적이 접속 인증인 경우,
    상기 서비스 관련 정보는, 서비스 서버의 웹 주소 정보, 접속 서비스명, 상기 인증 목적, 인증 요청자 중 적어도 하나를 포함되는, 인증 시스템.
  7. 제5항에 있어서,
    인증 목적이 계약 인증인 경우,
    상기 서비스 관련 정보는, 계약명, 계약번호, 계약자, 피계약자, 계약서 본문값 중 적어도 하나를 포함하는, 인증 시스템.
KR1020170081767A 2016-07-28 2017-06-28 공개키 기반의 서비스 인증 방법 및 시스템 KR20180013710A (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR20160096494 2016-07-28
KR1020160096494 2016-07-28

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020200016796A Division KR102160892B1 (ko) 2020-02-12 2020-02-12 공개키 기반의 서비스 인증 방법 및 시스템

Publications (1)

Publication Number Publication Date
KR20180013710A true KR20180013710A (ko) 2018-02-07

Family

ID=61017135

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020170081767A KR20180013710A (ko) 2016-07-28 2017-06-28 공개키 기반의 서비스 인증 방법 및 시스템

Country Status (3)

Country Link
US (1) US20200196143A1 (ko)
KR (1) KR20180013710A (ko)
WO (1) WO2018021708A1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102048025B1 (ko) * 2019-04-25 2019-11-22 주식회사 티이이웨어 인증 프로토콜에 기반하여 문서를 안전하고 편리하게 승인하는 시스템 및 방법
KR102063931B1 (ko) * 2019-11-04 2020-01-08 주식회사 지오유 리버스 otp 인증 서비스를 제공하는 인증 장치 및 방법

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2022508010A (ja) 2018-10-02 2022-01-19 キャピタル・ワン・サービシーズ・リミテッド・ライアビリティ・カンパニー 非接触カードの暗号化認証のためのシステムおよび方法
AU2020370497A1 (en) * 2019-10-23 2022-06-09 Signicat As Method and system for completing cross-channel transactions
JP2022034321A (ja) * 2020-08-18 2022-03-03 富士フイルムビジネスイノベーション株式会社 情報処理装置及び情報処理プログラム
EP4053720A1 (en) * 2021-03-03 2022-09-07 Thales DIS France SA Secure online authentication method using mobile id document
US11564266B1 (en) * 2022-07-11 2023-01-24 Starkeys Llc Permission-based controlling network architectures and systems, having cellular network components and elements modified to host permission controlling schemas designed to facilitates electronic peer-to-peer communication sessions methods for use thereof
US11477654B1 (en) * 2022-05-31 2022-10-18 Starlogik Ip Llc Access controlling network architectures and systems, having cellular network components and elements modified to host access controlling schemas designed to transform and/or facilitate cellular communication signals in accordance with novel cellular communications protocols with multi-part multi-functional address signaling, and methods for use thereof

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20150097059A (ko) * 2014-02-17 2015-08-26 크루셜텍 (주) 지문 인증을 통한 결제 방법, 사용자 단말기 및 결제 중계 서버
KR101651607B1 (ko) * 2014-05-20 2016-09-06 주식회사 케이티 익명 아이디를 사용하는 원클릭 사용자 인증 방법 및 시스템
KR20160055388A (ko) * 2014-11-08 2016-05-18 김경진 서비스 제공사 인증 및 보안 통신이 가능한 환경 기반의 공동앱을 구성하는 방법
KR101611872B1 (ko) * 2015-11-05 2016-04-12 에스지에이솔루션즈 주식회사 Fido와 인증서를 이용한 인증 방법
KR101637863B1 (ko) * 2016-01-05 2016-07-08 주식회사 코인플러그 본인인증용 정보 보안 전송시스템 및 방법

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102048025B1 (ko) * 2019-04-25 2019-11-22 주식회사 티이이웨어 인증 프로토콜에 기반하여 문서를 안전하고 편리하게 승인하는 시스템 및 방법
KR102063931B1 (ko) * 2019-11-04 2020-01-08 주식회사 지오유 리버스 otp 인증 서비스를 제공하는 인증 장치 및 방법

Also Published As

Publication number Publication date
US20200196143A1 (en) 2020-06-18
WO2018021708A1 (ko) 2018-02-01

Similar Documents

Publication Publication Date Title
US11223948B2 (en) Anonymous authentication and remote wireless token access
EP3280090B1 (en) User authentication method and device
JP6586446B2 (ja) 通信端末および関連システムのユーザーの識別情報を確認するための方法
EP2885904B1 (en) User-convenient authentication method and apparatus using a mobile authentication application
US9117324B2 (en) System and method for binding a smartcard and a smartcard reader
US8171531B2 (en) Universal authentication token
KR20180013710A (ko) 공개키 기반의 서비스 인증 방법 및 시스템
US20190251561A1 (en) Verifying an association between a communication device and a user
KR20170043520A (ko) 비대칭 암호화를 이용하여 otp를 구현하기 위한 시스템 및 방법
CN112468506A (zh) 获取、下发电子证件的实现方法和装置
US11329824B2 (en) System and method for authenticating a transaction
US11455621B2 (en) Device-associated token identity
KR101656458B1 (ko) 본인 확인 및 본인 인증을 위한 인증 방법 및 시스템
KR102160892B1 (ko) 공개키 기반의 서비스 인증 방법 및 시스템
KR20180034199A (ko) 싱글 사인 온 서비스 기반의 상호 인증 방법 및 시스템
KR20170042137A (ko) 인증 서버 및 방법
KR101879842B1 (ko) Otp를 이용한 사용자 인증 방법 및 시스템
KR101639794B1 (ko) 본인 확인 및 본인 인증을 위한 인증 방법 및 시스템
KR101705293B1 (ko) 비밀스런 인증데이터 관리가 필요 없는 인증시스템 및 방법
KR20170099339A (ko) 보안 회원가입 및 로그인 호스팅 서비스 제공 시스템 및 그 방법
KR101804845B1 (ko) 무선단말기에서의 otp인증방법
JP6560649B2 (ja) 認証サーバ、端末装置、システム、認証方法、及びプログラム
JP2023010223A (ja) 情報管理システム、情報管理方法、サーバ装置、及びプログラム
KR20140143987A (ko) 모바일 디바이스를 통한 사용자 주도적 통합인증 시스템 및 개인정보 제공 방법

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
X091 Application refused [patent]
AMND Amendment
A107 Divisional application of patent