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

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

Info

Publication number
WO2018021708A1
WO2018021708A1 PCT/KR2017/006994 KR2017006994W WO2018021708A1 WO 2018021708 A1 WO2018021708 A1 WO 2018021708A1 KR 2017006994 W KR2017006994 W KR 2017006994W WO 2018021708 A1 WO2018021708 A1 WO 2018021708A1
Authority
WO
WIPO (PCT)
Prior art keywords
authentication
service
user
server
value
Prior art date
Application number
PCT/KR2017/006994
Other languages
English (en)
French (fr)
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 US16/321,040 priority Critical patent/US20200196143A1/en
Publication of WO2018021708A1 publication Critical patent/WO2018021708A1/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
    • 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
    • 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
    • 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

Definitions

  • the present invention relates to an authentication method and system, and more particularly, to a public key-based service authentication method and system.
  • next-generation authentication technologies are being introduced to replace user authentication using mobile devices.
  • a user authentication technology such as a biometric information reader attached to a user's smart phone and a fast IDentity Online (FIDO) using a public key infrastructure (PKI) -based technology.
  • FIDO fast IDentity Online
  • PKI public key infrastructure
  • PKI-based user authentication technology using such a mobile terminal typically operates in the following manner. Whenever a user subscribes to the service, the user undergoes a verification process such as registration of his / her own biometric information, and a pair of asymmetric keys are generated on the mobile terminal, and the user's secret key is stored on the user's mobile terminal. The public key is transmitted. If the user later accesses the service and inputs the ID, the service server transmits a predetermined or random attempt value to the user's terminal at the time of access, and confirms the user's identity such as biometrics registered by the user at the user's terminal. After passing through, the user terminal signs the received challenge value with the user's private key and sends it to the server. Accordingly, the service server verifies the corresponding value with the public key of the user stored in the server, and performs a user authentication procedure to confirm whether the legitimate user has performed user authentication with the legitimate authentication terminal.
  • a verification process such as registration of his / her own biometric information, and a pair
  • the existing mobile-based user authentication technology authenticates whether the correct user connects to the service server through the correct mobile authenticator, and does not check whether the service terminal used by the current user is connected to the correct service server to initiate the user authentication request. .
  • the service app and the authentication app are connected to the mobile terminal instead of being driven as one, each of them is driven separately, or when the user authenticates the user access with the authentication app of the mobile terminal while accessing the online service through the web service from the PC terminal. Can perform a request for user confirmation coming into the mobile terminal without checking whether the normal service server is connected to the normal service terminal.
  • a first user accesses a service through a farming website or a farmed mobile app and inputs an ID from the service terminal
  • the user accesses the real service server using the ID acquired by the hacker at that time and inputs a user ID.
  • the user authentication request is activated on the mobile authentication app terminal possessed by the user
  • the user is regarded as an authentication request according to his connection and performs an identity verification procedure such as biometric value input, so that the hacker's service terminal is the actual service server. Will be certified.
  • the QR code generated by the service server is displayed on the user's service terminal, and the value detected using the camera of the user's mobile authentication app is displayed. It was sent to the service server.
  • the QR code method has a limitation in that it is difficult to sense its own screen with its own camera in a mobile work environment using both a service app and an authentication app at the same time with one mobile terminal.
  • the method of verifying a service based on the service Authenticator expresses the OTP value generated by the service server to the user's service terminal when the user accesses the service and inputs an ID, and generates the OTP value through the user's mobile verification app. How to check if the service is a normal service.
  • the method of using the service OTP also requires the authentication value to be expressed only as a number due to the nature of the OTP. Therefore, the user can use the name of the connected service or the service item name (the function name, transaction name, contract document, trader name, transaction amount, etc.) that the service presents. There was a limitation that could not be expressed in direct contrast.
  • the present invention provides a method and system that can be used to determine whether user authentication is initiated by accessing a correct service server.
  • the service server when the user ID is input to the service server for user authentication after service access of the user terminal, the service server generates a service authentication value and presents the service authentication value to the user terminal to generate a service authentication value or authentication value.
  • a PKI-based authenticator app and an authentication server for verifying whether user authentication is initiated by accessing a correct service server are provided. do.
  • the PKI-based authentication server for verifying service and user authentication
  • the encrypted service authentication value received from the authentication server is decrypted with the PKI-based key previously stored in the authentication terminal, and the service confirmation value is generated based on the service confirmation value or the related value and displayed to the user.
  • User can directly check whether the service is connected to the right service server, and if the user's consent process is performed for the user's consent, the user's authentication value is generated according to the pre-specified conditions and encrypted with the PKI-based key that was stored and encrypted with the authentication server. The passed user authentication value.
  • the user in using a mobile authentication technology using a PKI-based technology, the user can explicitly confirm whether the user authentication is initiated by accessing the correct service server to the user terminal that is being used in accordance with the man-in-the-middle attack. It is effective to prepare for authentication request.
  • the existing OTP One time password
  • the existing OTP is beyond the limit that must be expressed only in numbers, and in the authentication of the service, express the name of the connected service or the service item name suggested by the service directly to the user semantically. It is possible to express the service so that the user can directly contrast the service.
  • FIG. 1 is a view for explaining a PKI-based service authentication method and system according to an embodiment of the present invention.
  • 2 to 7 are exemplary screens displayed on the screen in the process of performing authentication in accordance with the PKI-based service authentication method of an embodiment of the present invention.
  • one component when one component is referred to as “connected” or “connected” with another component, the one component may be directly connected or directly connected to the other component, but in particular It is to be understood that, unless there is an opposite substrate, it may be connected or connected via another component in the middle.
  • Push ID represented in the present specification means a push token that is typically expressed by mobile app developers, and a push message service refers to a message service provided by an app in a mobile operating system such as Google or Apple.
  • FIG. 1 is a view for explaining a PKI-based service authentication method and system according to an embodiment of the present invention, Figures 2 to 7 in the process of performing authentication according to the PKI-based service authentication method of an embodiment of the present invention Example screens displayed on the screen.
  • FIGS. 2 to 7 illustrate embodiments of the present invention in detail with reference to FIGS. 2 to 7 with reference to FIG. 1.
  • the PKI-based service authentication system according to an embodiment of the present invention, the service server 110, the account information DB 120, PKI-based authentication server 130 that provides a service to the client, the The service client 200 accessing the service server may include an authenticator app 210 for performing PKI-based authentication.
  • the service client 200 is a computing device used by a user to access the service server 110, and collectively refers to various terminals such as a user's PC, a smartphone, and the like.
  • the authenticator app 210 refers to an application program (that is, an agent program for authentication purposes) produced for the purpose of performing service authentication and user authentication according to an embodiment of the present invention.
  • the authenticator app 210 may be installed directly in the user's own authentication terminal (for example, a smartphone, etc.), of course, may be provided separately as a dedicated authentication terminal.
  • the service client 200 may be a web browser of a PC configured separately from the PKI-based authenticator app 210 or may be a mobile service app, and the service client 200 and the PKI-based authenticator app 210 are integrated into one mobile. It can also be an app.
  • the account information DB 120 may be integrated with the service server 110 according to the implementation method.
  • the service client 200 and the authenticator app 210 are illustrated as physically separated objects in FIG. 1, the service client 200 and the authenticator app 210 are not necessarily the same.
  • the service client 200 is a user's smartphone and the authenticator app 210 is installed on the smartphone, the service client 200 may be implemented in one object. 2, 4, and 6 are specific service terminals used by a user such as a PC, and the authenticator app 210 is a smart phone possessed by a user.
  • An example is installed in.
  • the service client 200 is connected through the service server 110 and the web application, the authenticator app 210 will perform a service authentication and user authentication operation in a mobile environment (in accordance with an embodiment of the present invention) First case).
  • FIG 5 and 7 illustrate a case where the service client 200 is also a smart phone possessed by the user, and the authenticator app 210 is installed on the smart phone.
  • both the connection with the service server 110 and the authentication operation will be performed in the mobile environment (second case according to the embodiment of the present invention).
  • the service server 110 is a component that provides a substantial service to the component corresponding to the request of the service client 200.
  • the service server 110 When the first client attempts to connect, it requests a user ID [see S1 and S2 in FIG. 1], and if the ID is verified in the account information DB 120 [see S3 and S4 in FIG. 1], the PKI authentication server 130 is sent to the PKI authentication server 130. Pass the corresponding ID and request a service authentication code [see S5 of FIG. 1].
  • the base technology used as the PKI should be running the authenticator app 210, after confirming the ID in the account information DB 120, push message that the authentication request was received through a separate push server (not shown) Is sent to the PKI-based authenticator app 210, it is obvious that if the user who received the push message received a signal that the app is running, the authentication code request may be deployed along with the ID transmission.
  • another service server may request a verification code by adding a function name that is currently being performed.
  • the service server transmits the operation name to which the current authentication is to be authenticated. For example, when sending an ID, you can send the function name 'Login' to the site URL, or if you are authenticating to a specific contract, you can include additional contract name, contract file location, contract document file, contract subject, etc. .
  • PKI authentication server 130 may generate a service authentication code according to a condition given in advance (see S6 of FIG. 1).
  • a condition given in advance may be to generate a random number, or to generate an OTP value of the corresponding ID with a symmetric key previously specified for each separate user such as OTP, and according to a contract number generation rule specified in advance. It can be generated as 'contract 2016-serial number', etc., or any predefined format such as the string 'site name (e.g. estorm.co.kr), function name Login' etc. that the service server requests service authentication. It can also be a string of.
  • the PKI authentication server 130 encrypts the generated service authentication code with a public key pre-assigned corresponding to the ID of the receiver, and delivers the PKI-based authenticator app 210 of the corresponding ID to the terminal installed [S7 and FIG. 1]. See S8].
  • the transmission method may be transmitted by any communication method such as socket communication or push message.
  • the PKI authentication server 130 transmits the generated service authentication code to the service server 110, so that the service authentication code can be posted to the user through the screen provided by the service server 110 [Fig. S9 and S10 of 1]. In this case, a screen wait for service authentication and user authentication is made (see S11 in FIG. 1).
  • FIG. 2A An example of a screen for posting a service authentication code through a screen provided by the service server 110 is illustrated in FIG. 2A.
  • (a) and (a) of FIG. 4 include a service authentication code and other information related to the service access (ie, a URL of a service server, a service name, an authentication purpose, a user requesting authentication, etc.). ) Also illustrates the case where it is expressed more.
  • FIGS. 6A and 7A show a service authentication code (in this example, a contract authentication code) along with other information related to the contract (ie, contract location, contract name, contract). Number, contractor and contractor, and contract text) are further illustrated.
  • the PKI-based authenticator app 210 decrypts the transmitted encrypted value with its own private key, processes the corresponding string in a predetermined manner, and displays the user's consent while displaying the service authentication code. It calculates
  • the decrypted string may be an authentication value itself for service authentication, an OTP generation variable for generating a service authentication value, a string combining a function name with a site name, or a contract number. There are no restrictions, such as a string specifying the amount and the contractor's name.
  • the user's consent method in checking the service authentication code may be variously applied according to a predefined method.
  • the user consent is a biometric information verification function that can verify the user's identity
  • a variety of identity verification functions that can be performed on a smartphone such as fingerprint recognition, voice recognition, face recognition, PIN verification can be applied.
  • Figure 3 shows a method of identity verification through fingerprint recognition.
  • the authenticator app 210 When the verification code of the user is made, the authenticator app 210 generates a user authentication value according to a predetermined condition [see S15 of FIG. 1], and encrypts the user authentication value with the private key of the corresponding ID available in the authenticator.
  • the authentication server 130 To the authentication server 130 (see S16 and S17 in FIG. 1).
  • the conditions specified in advance can be used as the character string received at the time of service authentication, can be changed by applying any variable value such as time to the received character string, the same condition to be used for user authentication in advance with the server It is obvious that it can be generated by.
  • the PKI authentication server 130 restores the encrypted value transmitted by the authenticator app 210 using the public key of the corresponding ID, and compares it with a user authentication code generated according to a pre-specified condition, and if the match is valid, the authenticator app. After confirming that data has entered from 210, an authentication result (i.e., authentication approval) is transmitted to the service server (see S18 and S19 in Fig. 1). The service server starts the service according to the authentication approval (see S20 of FIG. 1). For example, if the authentication purpose is a login, the user will be authorized to access the service. If the authentication purpose is a contract, the user will approve the contract.
  • the service authentication value is encrypted with the user's public key stored in the PKI authentication server, and the PKI authenticator app decrypts the user's private key in implementing the service authentication.
  • the key can be encrypted and decrypted with the server's public key in the PKI authenticator app.
  • service authentication starts with the server's private key, decrypts it with the server's public key stored by the user's PKI authenticator app, and asks the user to confirm whether the service authentication values displayed on the service screen and the authenticator screen match. If the user confirms this, the user's PKI authenticator app generates a user authentication value in a predetermined manner, encrypts the user authentication value with the available user private key, and transmits the user authentication value to the PKI authentication server.
  • the service server implements a service that seals the user's private key in the contract rather than user authentication
  • the flow and overall flow are similar, but the electronic contract file together with the ID can be delivered to the PKI authentication server.
  • the PKI authentication server generates a hash value of the contract file, encrypts it with the user's public key, and delivers it to the PKI authenticator app, and the PKI authenticator app decrypts the hash value with its own private key.
  • the hash value can be encrypted with the user's private key and transmitted to the PKI authentication server.
  • the PKI authentication server can be further implemented by decrypting the received encrypted hash value with the public key of the user and comparing the hash value transmitted by the server to notify the service server that the contract has been concluded. Do.
  • the user consents to a biometric function such as fingerprint recognition mounted in the mobile device according to the configuration
  • a biometric function such as fingerprint recognition mounted in the mobile device according to the configuration
  • the service provider or the service provider's function name is displayed along with the user. It can also be implemented at the manufacturer level to confirm what you agree with. Examples of screens related to this are illustrated in FIGS. 5B and 5C, and FIGS. 7B and 7C.
  • the public key-based service authentication method according to the embodiment of the present invention described above may be embodied as computer readable codes on a computer readable recording medium.
  • Computer-readable recording media include all kinds of recording media having data stored thereon that can be decrypted by a computer system. For example, there may be a read only memory (ROM), a random access memory (RAM), a magnetic tape, a magnetic disk, a flash memory, an optical data storage device, and the like.
  • the computer readable recording medium can also be distributed over computer systems connected over a computer network, stored and executed as readable code in a distributed fashion.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Accounting & Taxation (AREA)
  • Theoretical Computer Science (AREA)
  • Strategic Management (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Finance (AREA)
  • Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biodiversity & Conservation Biology (AREA)
  • Biomedical Technology (AREA)
  • General Health & Medical Sciences (AREA)
  • Telephonic Communication Services (AREA)

Abstract

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

Description

공개키 기반의 서비스 인증 방법 및 시스템
본 발명은 인증 방법 및 시스템에 관한 것으로서, 보다 구체적으로는 공개키 기반의 서비스 인증 방법 및 시스템에 관한 것이다.
수십개의 온라인 서비스와 모바일 기기가 일상생활에서 활용되면서 모바일 기기를 이용하여 사용자 인증을 대신할 수 있는 차세대 인증기술들이 도입되고 있다. 가장 대표적인 기술 중 하나는 사용자의 스마트폰에 부착된 생체정보 인식기와 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항에 있어서,
    인증 목적이 계약 인증인 경우,
    상기 서비스 관련 정보는, 계약명, 계약번호, 계약자, 피계약자, 계약서 본문값 중 적어도 하나를 포함하는, 인증 시스템.
PCT/KR2017/006994 2016-07-28 2017-06-30 공개키 기반의 서비스 인증 방법 및 시스템 WO2018021708A1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US16/321,040 US20200196143A1 (en) 2016-07-28 2017-06-30 Public key-based service authentication method and system

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR20160096494 2016-07-28
KR10-2016-0096494 2016-07-28

Publications (1)

Publication Number Publication Date
WO2018021708A1 true WO2018021708A1 (ko) 2018-02-01

Family

ID=61017135

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2017/006994 WO2018021708A1 (ko) 2016-07-28 2017-06-30 공개키 기반의 서비스 인증 방법 및 시스템

Country Status (3)

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

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20210125194A1 (en) * 2019-10-23 2021-04-29 Allclear Id, Inc. Method and system for completing cross-channel transactions

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
SG11202101221WA (en) 2018-10-02 2021-03-30 Capital One Services Llc Systems and methods for cryptographic authentication of contactless cards
KR102048025B1 (ko) * 2019-04-25 2019-11-22 주식회사 티이이웨어 인증 프로토콜에 기반하여 문서를 안전하고 편리하게 승인하는 시스템 및 방법
KR102063931B1 (ko) * 2019-11-04 2020-01-08 주식회사 지오유 리버스 otp 인증 서비스를 제공하는 인증 장치 및 방법
US11671417B2 (en) * 2020-08-18 2023-06-06 Fujifilm Business Innovation Corp. Information processing apparatus and non-transitory computer readable medium
EP4053720A1 (en) * 2021-03-03 2022-09-07 Thales DIS France SA Secure online authentication method using mobile id document
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
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
KR20240059302A (ko) * 2022-10-27 2024-05-07 (주)드림시큐리티 분산 id 기반 서비스의 암복호화 통신 방법 및 장치

Citations (5)

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

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20150097059A (ko) * 2014-02-17 2015-08-26 크루셜텍 (주) 지문 인증을 통한 결제 방법, 사용자 단말기 및 결제 중계 서버
KR20150133938A (ko) * 2014-05-20 2015-12-01 주식회사 케이티 익명 아이디를 사용하는 원클릭 사용자 인증 방법 및 시스템
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 (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20210125194A1 (en) * 2019-10-23 2021-04-29 Allclear Id, Inc. Method and system for completing cross-channel transactions

Also Published As

Publication number Publication date
US20200196143A1 (en) 2020-06-18
KR20180013710A (ko) 2018-02-07

Similar Documents

Publication Publication Date Title
WO2018021708A1 (ko) 공개키 기반의 서비스 인증 방법 및 시스템
US10305902B2 (en) Two-channel authentication proxy system capable of detecting application tampering and method therefor
US9838205B2 (en) Network authentication method for secure electronic transactions
US9231925B1 (en) Network authentication method for secure electronic transactions
JP6586446B2 (ja) 通信端末および関連システムのユーザーの識別情報を確認するための方法
US7775427B2 (en) System and method for binding a smartcard and a smartcard reader
US8112787B2 (en) System and method for securing a credential via user and server verification
EP1922632B1 (en) Extended one-time password method and apparatus
KR102202547B1 (ko) 액세스 요청을 검증하기 위한 방법 및 시스템
EP3535724A1 (en) Verifying an association between a communication device and a user
KR20210095093A (ko) 탈중앙화 아이디 앱을 이용하여 인증 서비스를 제공하는 방법 및 이를 이용한 탈중앙화 아이디 인증 서버
KR102372503B1 (ko) 탈중앙화 아이디 앱을 이용하여 인증 서비스를 제공하는 방법 및 이를 이용한 탈중앙화 아이디 인증 서버
KR101799517B1 (ko) 인증 서버 및 방법
KR102284876B1 (ko) 생체 인식 기반의 통합 인증 시스템 및 방법
KR102016976B1 (ko) 싱글 사인 온 서비스 기반의 상호 인증 방법 및 시스템
KR102160892B1 (ko) 공개키 기반의 서비스 인증 방법 및 시스템
KR20190114505A (ko) 토큰 관리 데몬을 이용한 싱글 사인 온 서비스 인증 방법 및 시스템
KR101879842B1 (ko) Otp를 이용한 사용자 인증 방법 및 시스템

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 17834651

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 17834651

Country of ref document: EP

Kind code of ref document: A1