KR20200091138A - Authentication method and system using private domain name - Google Patents

Authentication method and system using private domain name Download PDF

Info

Publication number
KR20200091138A
KR20200091138A KR1020190007991A KR20190007991A KR20200091138A KR 20200091138 A KR20200091138 A KR 20200091138A KR 1020190007991 A KR1020190007991 A KR 1020190007991A KR 20190007991 A KR20190007991 A KR 20190007991A KR 20200091138 A KR20200091138 A KR 20200091138A
Authority
KR
South Korea
Prior art keywords
communication terminal
domain name
token
authentication
personal domain
Prior art date
Application number
KR1020190007991A
Other languages
Korean (ko)
Inventor
김경국
이재훈
Original Assignee
주식회사 케이티
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 케이티 filed Critical 주식회사 케이티
Priority to KR1020190007991A priority Critical patent/KR20200091138A/en
Publication of KR20200091138A publication Critical patent/KR20200091138A/en

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/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
    • H04L9/3213Cryptographic 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 using tickets or tokens, e.g. Kerberos
    • H04L61/1511
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/45Network directories; Name-to-address mapping
    • H04L61/4505Network directories; Name-to-address mapping using standardised directories; using standardised directory access protocols
    • H04L61/4511Network directories; Name-to-address mapping using standardised directories; using standardised directory access protocols using domain name system [DNS]
    • 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/0876Network architectures or network communication protocols for network security for authentication of entities based on the identity of the terminal or configuration, e.g. MAC address, hardware or software configuration or device fingerprint
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3226Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using a predetermined code, e.g. password, passphrase or PIN
    • H04L9/3228One-time or temporary data, i.e. information which is sent for every authentication or authorization, e.g. one-time-password, one-time-token or one-time-key
    • 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/50Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
    • H04L2209/38

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Power Engineering (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Telephonic Communication Services (AREA)

Abstract

The present invention relates to an authentication method which performs the authentication of a website conveniently by using a private domain name and a system thereof. According to one embodiment of the present invention, the authentication method using the private domain name comprises: a step in which a web server receives the private domain name and a user public key from a second communication terminal; a step in which the web server acquires a link token stored relating to the private domain name and the user public key from a blockchain; a step in which the web server checks a first communication terminal linked to the second communication terminal based on the link token, transmits an authentication processing alert message to the first communication terminal, and induces the generation of a disposable authentication token; a step in which the web server acquires the disposable authentication token which is generated in the first communication terminal and stored in the blockchain; a step in which the web server receives the disposable authentication token from the second communication terminal; and a step in which the web server checks if the disposable authentication token acquired from the blockchain matches the disposable authentication token received from the second communication terminal, and performs the authentication of the second communication terminal.

Description

개인 도메인 네임을 이용한 인증 방법 및 시스템{Authentication method and system using private domain name}Authentication method and system using private domain name}

본 발명은 인증 기술에 관한 것으로서, 더욱 상세하게는 개인 도메인 네임을 이용하여 간편하게 웹 사이트의 인증을 수행하는 인증 방법 및 시스템에 관한 것이다. The present invention relates to an authentication technology, and more particularly, to an authentication method and system for easily authenticating a website using a personal domain name.

오늘날 통신망과 이동통신기기의 기술이 발전함에 따라, 사용자들은 다양한 웹 사이트에 접속하여 로그인 인증을 수행한 후에, 웹 서비스를 제공받는다. 일반적으로, 사용자들은 웹 사이트별로 동일 또는 상이한 아이디와 패스워드를 설정하고, 해당 아이디와 패스워드를 웹 사이트에 입력한 후에, 로그인 인증을 수행한다. 2. Description of the Related Art As technology of communication networks and mobile communication devices develops today, users access web sites and perform login authentication, and then receive web services. In general, users set the same or different ID and password for each web site, input the corresponding ID and password to the web site, and then perform login authentication.

또한, 기존의 패스워드와 아이디 기반의 인증 방식에서 벗어나, 이미지 인증 기술, 공인인증서 인증 기술, 일회용 패스워드를 통한 인증 기술 등 다양한 인증 기술이 개시되었다. 아래의 특허문헌은 이미지 코드를 토대로 자동 로그인을 수행하는 방법 및 시스템에 대해서 개시한다.In addition, various authentication technologies such as image authentication technology, public certificate authentication technology, and authentication technology through one-time password have been disclosed, away from the existing password and ID-based authentication methods. The following patent document discloses a method and system for performing automatic login based on an image code.

그런데 이러한 인증 기술도, 사용자로부터 일일이 패스워드와 암호를 입력받아야만 인증이 가능한 기술로서, 로그인 인증에서 사용자의 번거로움을 유발하는 문제점이 있다. However, such an authentication technology is also a technology that can be authenticated only when a password and a password are inputted from a user, which causes a hassle of a user in login authentication.

한편, 하나의 웹 페이지 내에 서로 다른 웹 사이트 도메인과 관련된 데이터가 기록되기도 한다. 이렇게 단일의 웹 페이지 내에 복수의 웹 사이트 도메인의 데이터가 나타나는 경우, 크로스 도메인 문제가 발생할 수 있다. 상기 크로스 도메인 문제란, 웹 사이트의 도메인이 다른 경우, 서로 간에 정보 접근이 차단되는 것이다. 구체적으로, 크로스 도메인 환경에서 부모창(포털 사이트)과 팝업창 간에 도메인이 서로 다른 경우에 정보 교환을 제한하는 것이다. 상기 크로스 도메인 환경이란 인터넷 브라우저 상에서 부모창과 팝업창 혹은 프레임(frame) 등의 도메인 주소가 다른 경우를 말한다. 만약 도메인 주소가 다른 웹 페이지 간의 자바스크립트(Javascript)동작을 허용할 경우, 각종 웹 페이지에 대하여 자바스크립트를 이용한 불법적인 공격이 용이하게 된다. 따라서 웹 브라우저에서는 크로스 도메인 환경에서의 자바스크립트 제어를 차단하여, 보안을 향상시킨다. Meanwhile, data related to different website domains may be recorded in one web page. When data of multiple web site domains appear in a single web page, cross domain problems may occur. The cross-domain problem is that when the domains of web sites are different, access to information is blocked from each other. Specifically, in a cross-domain environment, information exchange is restricted when domains are different between a parent window (portal site) and a pop-up window. The cross-domain environment refers to a case where a domain address such as a parent window and a pop-up window or a frame is different on an Internet browser. If JavaScript operations between web pages with different domain addresses are allowed, illegal attacks using JavaScript are facilitated for various web pages. Therefore, the web browser blocks JavaScript control in the cross domain environment, thereby improving security.

그런데 크로스 도메인 간에 정보 접근이 차단된 상태에서 인증이 수행되는 경우, 사용자는 여러 번 인증정보를 입력해야 되고, 또한 각 도메인마다 별도로 관리해야 되는 번거로움이 발생한다. However, when authentication is performed in a state in which access to information is blocked between cross domains, a user has to input authentication information several times, and also has a hassle of separately managing each domain.

한국공개특허 제10-2013-0093838호 (2013.08.23 공개)Korean Patent Publication No. 10-2013-0093838 (published August 23, 2013)

본 발명은 이러한 문제점을 해결하기 위하여 제안된 것으로, 개인 도메인 네임을 이용하여 사용자의 편의성 및 보안성을 향상시킨 개인 도메인 네임을 이용한 인증 방법 및 시스템을 제공하는데 그 목적이 있다. The present invention has been proposed to solve this problem, and has an object to provide an authentication method and system using a personal domain name that improves user convenience and security by using a personal domain name.

또한, 본 발명은 개인 도메인 네임을 통하여 크로스 도메인 환경에서도, 인증정보가 서로 공유되게 하여 원활한 인증을 수행하는 인증 방법 및 시스템을 제공하는데 다른 목적이 있다. In addition, another object of the present invention is to provide an authentication method and system for smooth authentication by allowing authentication information to be shared with each other even in a cross domain environment through a personal domain name.

본 발명의 다른 목적 및 장점들은 하기의 설명에 의해서 이해될 수 있으며, 본 발명의 실시예에 의해 보다 분명하게 알게 될 것이다. 또한, 본 발명의 목적 및 장점들은 특허 청구 범위에 나타낸 수단 및 그 조합에 의해 실현될 수 있음을 쉽게 알 수 있을 것이다.Other objects and advantages of the present invention can be understood by the following description, and will be more clearly understood by examples of the present invention. In addition, it will be readily appreciated that the objects and advantages of the present invention can be realized by means of the appended claims and combinations thereof.

상기 목적을 달성하기 위한 본 발명의 제1측면에 따른, 개인 도메인 네임을 이용한 인증 방법은, 웹 서버가, 개인 도메인 네임과 사용자 공개키를 제2통신 단말로부터 수신하는 단계; 상기 웹 서버가, 상기 개인 도메인 네임 및 상기 사용자 공개키와 관련되어 저장된 연동 토큰을 블록체인에서 획득하는 단계; 상기 웹 서버가, 상기 연동 토큰을 기초로 상기 제2통신 단말과 연동되는 제1통신 단말을 확인하고, 상기 제1통신 단말로 인증 진행 알림 메시지를 전송하여 일회성 인증 토큰을 생성을 유도하는 단계; 상기 웹 서버가, 상기 제1통신 단말에서 생성하여 상기 블록체인에 저장된 일회성 인증 토큰을 획득하는 단계; 상기 웹 서버가, 상기 제1통신 단말에서 생성하여 상기 제2통신 단말로 전송된 일회성 인증 토큰을 상기 제2통신 단말로부터 수신하는 단계; 및 상기 웹 서버가, 상기 블록체인에서 획득한 일회성 인증 토큰과 상기 제2통신 단말로부터 수신한 일회성 인증 토큰의 일치 여부를 확인하여, 제2통신 단말의 인증을 수행하는 단계를 포함한다.An authentication method using a personal domain name according to a first aspect of the present invention for achieving the above object comprises: a web server receiving a personal domain name and a user public key from a second communication terminal; Obtaining, by the web server, a linked token stored in association with the personal domain name and the user public key on a blockchain; Confirming, by the web server, a first communication terminal interworking with the second communication terminal based on the interlocking token, and sending an authentication progress notification message to the first communication terminal to induce generation of a one-time authentication token; Obtaining, by the web server, a one-time authentication token generated in the first communication terminal and stored in the blockchain; The web server receiving the one-time authentication token generated by the first communication terminal and transmitted to the second communication terminal from the second communication terminal; And confirming whether the web server matches the one-time authentication token obtained from the blockchain with the one-time authentication token received from the second communication terminal, and performing authentication of the second communication terminal.

상기 방법은, 상기 유도하는 단계 이후에, 상기 제1통신 단말이, 상기 일회성 인증 토큰을 생성하고, 상기 일회성 인증 토큰을 상기 개인 도메인 네임 및 상기 사용자 공개키와 연관시켜 상기 블록체인에 저장하고 상기 제2통신 단말로 전송하는 단계를 포함할 수 있다. 이 경우, 상기 일회성 인증 토큰을 획득하는 단계는, 상기 개인 도메인 네임 및 상기 사용자 공개키와 연관된 상기 일회성 인증 토큰을 상기 블록체인에서 획득한다.In the method, after the step of deriving, the first communication terminal generates the one-time authentication token, associates the one-time authentication token with the personal domain name and the user public key, and stores the blockchain in the blockchain. It may include the step of transmitting to the second communication terminal. In this case, the step of acquiring the one-time authentication token acquires the one-time authentication token associated with the personal domain name and the user public key from the blockchain.

상기 제2통신 단말로부터 수신하는 단계는, 상기 웹 서버가, iframe 태그에 개인 도메인 서비스 서버의 도메인이 기록되는 웹 페이지를 상기 제2통신 단말로 전송하고, 상기 iframe 태그와 관련된 메뉴가 상기 제2통신 단말에서 선택되는 경우, 상기 제2통신 단말로부터 개인 도메인 네임과 사용자 공개키를 수신할 수 있다. In the step of receiving from the second communication terminal, the web server transmits a web page in which the domain of the personal domain service server is recorded in the iframe tag to the second communication terminal, and the menu associated with the iframe tag is the second. When selected in a communication terminal, a personal domain name and a user public key may be received from the second communication terminal.

상기 일회성 인증 토큰을 획득하는 단계는, 상기 웹 서버가, 상기 개인 도메인 네임과 상기 사용자 공개키를 포함하는 도메인 질의 메시지를 개인 도메인 서비스 서버로 전송하는 단계; 및 상기 웹 서버가, 상기 개인 도메인 네임 및 상기 사용자 공개키와 연관되는 연동 토큰을, 상기 도메인 질의에 대한 응답으로서 상기 개인 도메인 서비스 서버로부터 수신하는 단계를 포함할 수 있다.The obtaining of the one-time authentication token may include: sending, by the web server, a domain query message including the personal domain name and the user public key to a personal domain service server; And the web server receiving, from the personal domain service server, an interworking token associated with the personal domain name and the user public key, in response to the domain query.

상기 목적을 달성하기 위한 본 발명의 제2측면에 따른, 개인 도메인 네임을 이용한 사용자 인증을 수행하는 인증 시스템은, 개인 도메인 네임과 사용자 공개키를 제2통신 단말로부터 수신하고, 상기 개인 도메인 네임 및 상기 사용자 공개키와 관련되어 저장된 연동 토큰을 블록체인에서 획득하고, 상기 연동 토큰을 기초로 상기 제2통신 단말과 연동되는 제1통신 단말을 확인하고, 상기 제1통신 단말로 인증 진행 알림 메시지를 전송하는 웹 서버; 및 상기 제1통신 단말에 탑재되며, 상기 인증 진행 알림 메시지를 수신하면 일회성 인증 토큰을 생성하고 상기 생성한 일회성 인증 토큰을 블록체인에 저장하고, 상기 생성한 일회성 인증 토큰을 상기 제2통신 단말로 제공하는 인증 애플리케이션을 포함한다.An authentication system for performing user authentication using a personal domain name according to the second aspect of the present invention for achieving the above object, receives a personal domain name and a user public key from a second communication terminal, and the personal domain name and Acquire the interworking token stored in association with the user public key from the blockchain, identify the first communication terminal interworking with the second communication terminal based on the interworking token, and send an authentication progress notification message to the first communication terminal. A sending web server; And mounted on the first communication terminal, upon receiving the authentication progress notification message, generates a one-time authentication token, stores the generated one-time authentication token on the blockchain, and sends the generated one-time authentication token to the second communication terminal. Includes authentication application provided.

상기 웹 서버는, 상기 인증 애플리케이션에서 생성되어 제공된 일회성 인증 토큰을 상기 제2통신 단말로부터 수신하고, 상기 블록체인에 저장중인 일회성 인증 토큰을 획득한 후, 상기 획득한 일회성 인증 토큰과 상기 제2통신 단말로부터 수신한 일회성 인증 토큰의 일치 여부를 확인하여, 상기 제2통신 단말에 대한 인증을 수행한다.The web server receives the one-time authentication token generated and provided by the authentication application from the second communication terminal, acquires the one-time authentication token stored in the blockchain, and then obtains the one-time authentication token and the second communication It is checked whether the one-time authentication token received from the terminal matches, and the second communication terminal is authenticated.

본 발명은 로그인 아이디와 패스워드를 입력하는 것이 없이, iframe과 관련된 특정 링크 또는 메뉴를 클릭하는 것에 의해 간편하게 인증이 진행되게 하는 이점이 있다. The present invention has an advantage that authentication is easily performed by clicking a specific link or menu related to an iframe without entering a login ID and password.

또한, 본 발명은 인증이 진행될 때마다 새로운 사용자 승인에 의해서 1회성 인증정보(즉, 인증 토큰)를 생성하고, 이 인증정보를 토대로 사용자 인증이 수행되게 함으로써, 인증에 대한 보안성을 향상시키는 장점이 있다. In addition, according to the present invention, one-time authentication information (that is, authentication token) is generated by new user approval whenever authentication is performed, and user authentication is performed based on the authentication information, thereby improving security for authentication. There is this.

게다가, 본 발명은 기존의 공용 도메인 네임과의 중복되는 것과 관계없이 사용자만을 위한 개인 도메인 네임을 제공할 수 있어, 개인 도메인 네임을 사용하는데 있어서의 편의성을 극대화할 수 있는 이점이 있다.In addition, the present invention has the advantage of being able to provide a personal domain name only for the user regardless of overlap with the existing public domain name, thereby maximizing convenience in using the personal domain name.

게다가, 본 발명은 개인 도메인 네임과 공개키를 통한 데이터 획득을 통해서, 크로스 도메인 환경에서도 서로 다른 도메인 간에 원활하게 데이터가 공유되게 함으로써, 크로스 도메인 문제를 해결하는 장점이 있다. In addition, the present invention has an advantage of solving a cross-domain problem by smoothly sharing data between different domains in a cross-domain environment through data acquisition through a private domain name and a public key.

본 명세서에 첨부되는 다음의 도면들은 본 발명의 바람직한 실시예를 예시하는 것이며, 발명을 실시하기 위한 구체적인 내용과 함께 본 발명의 기술사상을 더욱 이해시키는 역할을 하는 것이므로, 본 발명은 그러한 도면에 기재된 사항에만 한정되어 해석되어서는 아니 된다.
도 1은 본 발명의 일 실시예에 따른, 개인 도메인 네임을 이용한 인증 시스템의 구성을 나타내는 도면이다.
도 2는 본 발명의 일 실시예에 따른, 개인 도메인 네임을 등록하는 방법을 설명하는 흐름도이다.
도 3은 본 발명의 일 실시예에 따른, 제1통신 단말과 제2통신 단말의 서로 연동시키는 방법을 설명하는 흐름도이다.
도 4는 본 발명의 일 실시예에 따른, 제2통신 단말이 개인 도메인 네임을 이용하여 인증을 진행하는 방법을 설명하는 흐름도이다.
도 5는 본 발명의 일 실시예에 따른, 인증 시스템에서 사용자 인증을 수행하는 방법을 설명하는 흐름도이다.
The following drawings attached to this specification are intended to illustrate preferred embodiments of the present invention, and serve to further understand the technical idea of the present invention together with specific details for carrying out the invention, and thus the present invention is described in such drawings. It should not be interpreted as being limited to the matter.
1 is a view showing the configuration of an authentication system using a personal domain name according to an embodiment of the present invention.
2 is a flowchart illustrating a method of registering a personal domain name according to an embodiment of the present invention.
3 is a flowchart illustrating a method of interworking between a first communication terminal and a second communication terminal according to an embodiment of the present invention.
4 is a flowchart illustrating a method for a second communication terminal to perform authentication using a personal domain name according to an embodiment of the present invention.
5 is a flowchart illustrating a method for performing user authentication in an authentication system according to an embodiment of the present invention.

상술한 목적, 특징 및 장점은 첨부된 도면과 관련한 다음의 상세한 설명을 통하여 보다 분명해 질 것이며, 그에 따라 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자가 본 발명의 기술적 사상을 용이하게 실시할 수 있을 것이다. 또한, 본 발명을 설명함에 있어서 본 발명과 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에 그 상세한 설명을 생략하기로 한다. 이하, 첨부된 도면을 참조하여 본 발명에 따른 바람직한 일 실시예를 상세히 설명하기로 한다.The above objects, features, and advantages will become more apparent through the following detailed description in connection with the accompanying drawings, and accordingly, those skilled in the art to which the present invention pertains can easily implement the technical spirit of the present invention. There will be. In addition, in the description of the present invention, when it is determined that the detailed description of the known technology related to the present invention may unnecessarily obscure the subject matter of the present invention, the detailed description will be omitted. Hereinafter, preferred embodiments of the present invention will be described in detail with reference to the accompanying drawings.

도 1은 본 발명의 일 실시예에 따른, 개인 도메인 네임을 이용한 인증 시스템의 구성을 나타내는 도면이다.1 is a view showing the configuration of an authentication system using a personal domain name according to an embodiment of the present invention.

도 1에 도시된 바와 같이, 본 발명의 일 실시예에 따른 인증 시스템은 통신 단말(110, 120), 개인 도메인 서비스 서버(200), 블록체인 네트워크(300) 및 웹 서버(400)를 포함한다. As shown in Figure 1, the authentication system according to an embodiment of the present invention includes a communication terminal (110, 120), a personal domain service server 200, a blockchain network 300 and a web server 400. .

통신 단말(110, 120), 개인 도메인 서비스 서버(200), 웹 서버(400) 각각은 통신망(500)을 통해서 서로 통신한다. 상기 통신망(500)은 이동통신망과 유선 통신망을 포함한다.Each of the communication terminals 110 and 120, the personal domain service server 200, and the web server 400 communicates with each other through the communication network 500. The communication network 500 includes a mobile communication network and a wired communication network.

블록체인 네트워크(300)는 복수의 노드들이 연결되어 있으며, 트랜잭션에 대한 검증을 수행한다. 또한, 블록체인 네트워크(300)에 속하는 각 노드들은 트랜잭션이 발생하면, 이 트랜잭션에 대한 검증을 수행한다. 상기 블록체인 네트워크(300)에 포함된 각 노드들은 트랜잭션이 기록되며 블록 간에 연결 구조를 가지는 블록체인을 서로 공유한다. 상기 트랜잭션은 인증 토큰 또는 연동 토큰이 새롭게 저장되거나, 개인 도메인 네임이 등록/변경/삭제될 때에 발생한다. 상기 블록에는 사용자 공개키, 개인 도메인 네임 및 연동 토큰이 포함된다. 또한, 상기 블록에는 일회성 인증 토큰이 포함될 수도 있다. The blockchain network 300 is connected to a plurality of nodes, and performs verification of transactions. In addition, each node belonging to the blockchain network 300 performs verification for this transaction when a transaction occurs. Each node included in the blockchain network 300 records a transaction and shares a block chain having a connection structure between blocks. The transaction occurs when an authentication token or a linkage token is newly stored, or when a personal domain name is registered/changed/deleted. The block includes a user public key, a personal domain name, and a link token. Also, the block may include a one-time authentication token.

여기서, 인증 토큰은 사용자를 인증하는데 이용되는 인증정보로서, 사전에 설정된 자릿수의 숫자열 또는 문자열이거나 또는 숫자와 문자의 조합일 수 있다. 상기 인증 토큰은 한 번만 사용 가능한 일회성 인증정보이다. 또한, 연동 토큰은 제2통신 단말(120)과 연동되는 제1통신 단말(110)을 식별하기 위한 데이터로서, 푸시 토큰이 이용될 수 있다. 또한, 개인 도메인 네임은 블록체인에 데이터를 저장하고 획득하는데 이용되는 일종의 사용자 전용의 검색키로서, 개인 도메인 서비스 서버(200)로 개인 도메인 네임을 질의하면, 해당 개인 도메인 네임과 사용자 공개키와 대응되는 데이터가 추출되어, 이 데이터가 도메인 질의에 대한 응답으로서 추출된 데이터가 통신 장치로 제공된다. Here, the authentication token is authentication information used for authenticating a user, and may be a numeric string or a string having a predetermined number of digits, or a combination of numbers and letters. The authentication token is one-time authentication information that can be used only once. In addition, the interworking token is data for identifying the first communication terminal 110 interworking with the second communication terminal 120, and a push token may be used. In addition, the personal domain name is a search key dedicated to users used to store and acquire data on the blockchain. When the personal domain name is queried by the personal domain service server 200, the corresponding personal domain name and the user public key are matched. The extracted data is extracted, and the extracted data is provided to the communication device in response to a domain query.

상기 블록체인 네트워크(300)에서 정보를 요청하는 트랜잭션이 발생되면, 블록체인 네트워크(300)에 포함된 각 노드들은 상기 트랜잭션을 검증하고, 검증에 성공하는 경우 개인 도메인 네임과 사용자 공개키와 대응되는 데이터(예컨대, 연동 토큰, 인증 토큰)를 블록체인에서 추출하여 웹 서버(400) 또는 개인 도메인 서비스 서버(200)로 제공할 수 있다. When a transaction requesting information from the blockchain network 300 occurs, each node included in the blockchain network 300 verifies the transaction and, if successful, corresponds to a personal domain name and a user public key. Data (eg, an interworking token, an authentication token) may be extracted from the blockchain and provided to the web server 400 or the personal domain service server 200.

제1통신 단말(110)은 사용자가 소유한 단말로서, 스마트폰, 태블릿 컴퓨터, 등과 같은 이동통신 장치이다. 상기 제1통신 단말(110)에는 간편 인증 서비스를 위한 인증 애플리케이션(111)이 설치된다. 상기 인증 애플리케이션(111)은 사용자 전용의 개인키와 공개키를 생성할 수 있다. 사용자는 상기 인증 애플리케이션(111)을 이용하여 개인 도메인 네임을 등록할 수 있다. 이때, 인증 애플리케이션(111)은 개인 도메인 서비스 서버(200)를 통해서 전자 서명, 개인 도메인 네임 및 연동 토큰이 포함된 트랜잭션을 발생시키고, 이 트랜잭션을 포함하는 블록을 블록체인 네트워크(300)에 등록할 수 있다. The first communication terminal 110 is a terminal owned by a user, and is a mobile communication device such as a smart phone, a tablet computer, and the like. An authentication application 111 for simple authentication service is installed in the first communication terminal 110. The authentication application 111 may generate a private key and a public key dedicated to the user. The user may register a personal domain name using the authentication application 111. At this time, the authentication application 111 generates a transaction including an electronic signature, a personal domain name, and an interlocking token through the personal domain service server 200, and registers a block containing the transaction to the blockchain network 300. Can.

제1통신 단말(110)의 인증 애플리케이션(111)은 연동 토큰을 저장할 수 있으며, 지문 등과 같은 사용자의 생체 정보를 저장할 수 있다. 상기 제1통신 단말(110)은 외부의 푸시 서비스 서버(도면에 도시되지 않음)로부터 연동 토큰을 획득하여 저장할 수 있다. 제1통신 단말(110)은 인증 애플리케이션(111)은 개인 도메인 네임 및 사용자의 공개키를 제2통신 단말(120)로 전송함으로써, 개인 도메인 네임과 공개키를 제2통신 단말(120)과 공유한다. 또한, 인증 애플리케이션(111)은 일회성 인증 토큰을 생성하고, 이 인증 토큰을 블록체인에 저장되고 더불어 상기 인증 토큰을 제2통신 단말(120)로 전송한다. The authentication application 111 of the first communication terminal 110 may store an interworking token, and may store biometric information of a user, such as a fingerprint. The first communication terminal 110 may obtain and store an interworking token from an external push service server (not shown in the figure). The first communication terminal 110, the authentication application 111 transmits the private domain name and the user's public key to the second communication terminal 120, thereby sharing the personal domain name and public key with the second communication terminal 120. do. In addition, the authentication application 111 generates a one-time authentication token, and the authentication token is stored in the blockchain and transmits the authentication token to the second communication terminal 120.

제2통신 단말(120)은 이동통신단말, 서버, 개인용 컴퓨터, IPTV 등과 같은 통신 장치로서, 제1통신 단말(110)과 연동하여, 웹 서버(400)로 간편 인증을 수행할 수 있다. 상기 제2통신 단말(120)은 개인 도메인 서비스 서버(200)와 세션을 설정하고, 이 세션의 식별정보(즉, 세션 ID)가 기록된 바코드를 출력하고, 이 바코드가 제1통신 단말(110)에서 판독되는 것에 의해서 제1통신 단말(110)과 연동할 수 있다. 상기 제2통신 단말(120)은 저장중인 개인 도메인 네임과 사용자의 공개키를 웹 서버(400)에 제공한 상태에서, 제1통신 단말(110)로부터 인증 토큰을 수신한 후, 이 인증 토큰을 웹 서버(400)로 제공함으로써, 간편 인증을 시도할 수 있다. The second communication terminal 120 is a communication device such as a mobile communication terminal, a server, a personal computer, an IPTV, and the like, and can be easily authenticated with the web server 400 in conjunction with the first communication terminal 110. The second communication terminal 120 establishes a session with the personal domain service server 200, outputs a barcode in which identification information (ie, session ID) of the session is recorded, and the barcode is the first communication terminal 110 ) Can be interlocked with the first communication terminal 110. The second communication terminal 120 receives the authentication token from the first communication terminal 110 in a state in which the stored private domain name and the user's public key are provided to the web server 400, and then receives the authentication token. By providing the web server 400, simple authentication may be attempted.

상기 제2통신 단말(120)은 개인 도메인 서비스 서버(200)의 도메인 네임이 기록된 iframe 관련 메뉴(또는 링크)가 웹 페이지에서 클릭된 경우, 간편 인증을 진행할 수 있다. 상기 제2통신 단말(120)에는 간편 인증을 위한 전용 프로그램이 설치되며, 상기 간편 인증 전용 프로그램을 통해서 바코드를 생성하여 화면에 출력하고, 제1통신 단말(110)과 연동할 수 있다. When the iframe-related menu (or link) in which the domain name of the personal domain service server 200 is recorded is clicked on the web page, the second communication terminal 120 may perform simple authentication. A dedicated program for simple authentication is installed in the second communication terminal 120, and a barcode is generated through the simple authentication-only program and output to a screen, and may be interlocked with the first communication terminal 110.

상기 개인 도메인 서비스 서버(200)의 도메인 네임과 웹 서버(400)의 도메인 네임은, 일반적으로 인터넷에서 사용되는 서버의 도메인 네임으로서, 개인만을 위하여 사용되는 개인 도메인 네임과는 구별된다. The domain name of the personal domain service server 200 and the domain name of the web server 400 are generally used as the domain name of a server used on the Internet, and are different from the personal domain name used only for individuals.

개인 도메인 서비스 서버(200)는 개인 도메인 네임을 관리하고, 개인 도메인 네임 질의에 대한 응답을 수행하는 기능을 수행한다. 개인 도메인 서비스 서버(200)는 개인 도메인 네임을 블록체인 네트워크(300)에 등록하거나, 변경하거나 삭제하는 기능을 수행한다. 개인 도메인 서비스 서버(200)는 제1통신 단말(110)의 인증 애플리케이션(111)으로부터 개인 도메인 네임에 대한 등록을 요청받으면, 전자 서명, 개인 도메인 네임, 사용자 공개키 및 연동 토큰이 포함된 트랜잭션을 블록체인 네트워크(300)에 발생시킴으로써, 상기 개인 도메인 네임, 사용자 공개키 및 연동 토큰을 연관시켜 블록체인 네트워크(300)에 저장할 수 있다. The personal domain service server 200 manages a personal domain name and performs a function for responding to a personal domain name query. The personal domain service server 200 registers, changes or deletes the personal domain name in the blockchain network 300. When the personal domain service server 200 is requested to register for a personal domain name from the authentication application 111 of the first communication terminal 110, the personal domain service server 200 performs a transaction including an electronic signature, a personal domain name, a user public key, and an interworking token. By generating it in the blockchain network 300, the personal domain name, user public key and interlocking token can be associated and stored in the blockchain network 300.

또한, 개인 도메인 서비스 서버(200)는 개인 도메인과 공개키가 포함된 도메인 네임 질의를 수신하면, 상기 개인 도메인 네임과 사용자 공개키와 대응하는 연동 토큰을 블록체인 네트워크(300)에서 획득하고, 상기 획득한 연동 토큰을 웹 서버(400)로 제공한다. 상기 개인 도메인 서비스 서버(200)는 상기 도메인 네임 질의에 포함된 전자 서명의 진위를 검증한 후, 검증에 성공하면 상기 연동 토큰을 블록체인 네트워크(300)에서 추출할 수 있다. In addition, when the personal domain service server 200 receives a domain name query including the personal domain and the public key, the interlocking token corresponding to the personal domain name and the user public key is obtained from the blockchain network 300, and the The obtained interlocking token is provided to the web server 400. After verifying the authenticity of the electronic signature included in the domain name query, the personal domain service server 200 may extract the interworking token from the blockchain network 300 if the verification is successful.

또한, 개인 도메인 서비스 서버(200)는 제1통신 단말(110)과 제2통신 단말(120)의 연동시키는 기능을 수행한다. In addition, the personal domain service server 200 performs a function of interlocking the first communication terminal 110 and the second communication terminal 120.

상기 개인 도메인 서비스 서버(200)는 단일의 서버인 것으로 설명하였으나, 상기 개인 도메인 서비스 서버(200)는 그 기능에 따라 복수 개로 분리되어 구현될 수 있다. Although the personal domain service server 200 has been described as being a single server, the personal domain service server 200 may be implemented by being divided into a plurality according to its function.

웹 서버(400)는 이메일 서비스, 금융 서비스, 온라인 쇼핑 서비스, 공연 예매 서비스 등과 같은 웹 서비스를 지원하는 서버로서, 사용자의 공개키, 사용자 아이디, 사용자 생년월일, 사용자 이메일 주소 등을 포함하는 회원 정보를 저장한다. 상기 웹 서버(400)는 복수의 웹 사이트의 도메인 네임(즉, 서버의 도메인 네임)이 기재되는 웹 페이지를 통신 단말(110, 120)로 제공한다. 이때, 웹 서버(400)는 개인 도메인 서비스 서버의 도메인 네임이 기록되는 iframe 태그를 웹 페이지의 소스코드에 기록하고, 더불어 상기 iframe 태그를 인증 관련 메뉴 또는 링크로 설정하여 상기 웹 페이지를 구성할 수 있다.The web server 400 is a server supporting web services such as an email service, a financial service, an online shopping service, a performance reservation service, and the like, and includes member information including a user's public key, user ID, user's date of birth, and user's email address. To save. The web server 400 provides web pages on which domain names (ie, server domain names) of a plurality of web sites are described to the communication terminals 110 and 120. At this time, the web server 400 may record the iframe tag in which the domain name of the personal domain service server is recorded in the source code of the web page, and configure the web page by setting the iframe tag as an authentication related menu or link. have.

상기 웹 서버(400)는 상기 iframe 태그와 관련된 메뉴가 제2통신 단말(120)에서 클릭되면, 상기 제2통신 단말(120)로부터 사용자 공개키와 개인 도메인 네임을 수신할 수 있다. 또한, 웹 서버(400)는 상기 도메인 네임과 사용자 공개키를 포함하는 도메인 질의 메시지를 개인 도메인 서비스 서버(200)로 전송하고, 이에 따른 응답으로 연동 토큰을 획득할 수 있다. 상기 웹 서버(400)는 연동 토큰을 근거로, 제1통신 단말(110)의 인증 애플리케이션(111)으로 제2통신 단말(120)에서 인증이 진행되고 있음을 알리는 메시지를 전송한다. 웹 서버(400)는 제2통신 단말(120)로부터 수신한 일회성 인증 토큰과 블록체인에 저장된 일회성 인증 토큰의 일치 여부를 확인하여, 제2통신 단말(120)을 인증할 수 있다. 웹 서버(400)는 인증에 성공하면, 사용자의 공개키를 토대로 사용자를 식별하여, 이 사용자 전용의 웹 서비스를 제공할 수 있다. When the menu related to the iframe tag is clicked on the second communication terminal 120, the web server 400 may receive a user public key and a personal domain name from the second communication terminal 120. In addition, the web server 400 may transmit a domain query message including the domain name and the user public key to the personal domain service server 200, and obtain an interworking token in response. The web server 400 transmits a message indicating that authentication is in progress in the second communication terminal 120 to the authentication application 111 of the first communication terminal 110 based on the interlocking token. The web server 400 may authenticate the second communication terminal 120 by checking whether the one-time authentication token received from the second communication terminal 120 matches the one-time authentication token stored in the blockchain. When the authentication is successful, the web server 400 may identify the user based on the user's public key and provide a web service dedicated to the user.

도 2는 본 발명의 일 실시예에 따른, 개인 도메인 네임을 등록하는 방법을 설명하는 흐름도이다.2 is a flowchart illustrating a method for registering a personal domain name according to an embodiment of the present invention.

도 2를 참조하면, 제1통신 단말(110)의 인증 애플리케이션(111)은 사용자 전용의 개인키와 공개키를 생성한다.Referring to FIG. 2, the authentication application 111 of the first communication terminal 110 generates a private key and a public key dedicated to the user.

이어서, 제1통신 단말(110)의 인증 애플리케이션(111)은 사용자로부터 도메인을 입력받아, 상기 입력받은 도메인에 사전에 설정된 개인 도메인 코드(예컨대, kt.tin)를 덧붙여 개인 도메인 네임을 생성한다(S201). 또 다른 실시예로서, 제1통신 단말(110)의 인증 애플리케이션(111)은 상기 도메인과 상기 개인 도메인 코드를 모두 포함하는 개인 도메인 네임을 입력받을 수도 있다. Subsequently, the authentication application 111 of the first communication terminal 110 receives a domain from a user, and adds a preset personal domain code (eg, kt.tin) to the input domain to generate a personal domain name ( S201). As another embodiment, the authentication application 111 of the first communication terminal 110 may receive a personal domain name including both the domain and the personal domain code.

다음으로, 인증 애플리케이션(111)은 제1통신 단말(110)에 저장된 연동 토큰(예컨대, 푸시 토큰)을 확인한다(S203). 제1통신 단말(110)은 외부의 푸시 서비스 서버(도면에 도시되지 않음)로부터 상기 연동 토큰을 사전에 획득하여 저장할 수 있다. Next, the authentication application 111 checks the interworking token (eg, push token) stored in the first communication terminal 110 (S203). The first communication terminal 110 may obtain and store the interlocking token in advance from an external push service server (not shown in the figure).

다음으로, 인증 애플리케이션(111)은, 사용자의 개인키로 전자 서명을 수행한다(S205). 이때, 인증 애플리케이션(111)은 개인 도메인 네임, 사용자의 공개키, 연동 토큰 중에서 하나 이상을 조합시키고, 이렇게 조합된 정보를 상기 사용자의 개인키로 전자 서명할 수도 있다. Next, the authentication application 111 performs electronic signature with the user's private key (S205). At this time, the authentication application 111 may combine one or more of a personal domain name, a user's public key, and a link token, and electronically sign the combined information with the user's private key.

이어서 인증 애플리케이션(111)은 개인 도메인 네임, 사용자의 공개키, 연동 토큰 및 전자 서명이 포함된 도메인 등록 요청 메시지를 개인 도메인 서비스 서버(200)로 전송한다(S207).Subsequently, the authentication application 111 transmits a domain registration request message including a personal domain name, a user's public key, an interlocking token, and an electronic signature to the personal domain service server 200 (S207).

그러면, 개인 도메인 서비스 서버(200)는 상기 개인 도메인 네임, 사용자의 공개키, 연동 토큰 및 전자 서명이 포함된 도메인 등록 트랜잭션을 블록체인 네트워크(300)로 발생시킨다(S209). Then, the personal domain service server 200 generates a domain registration transaction including the personal domain name, the user's public key, a link token, and an electronic signature to the blockchain network 300 (S209).

이어서, 블록체인 네트워크(300)에 포함된 각 노드들은 상기 전자 서명의 진위를 검증한다. 이때, 블록체인 네트워크(300)에 포함된 각 노드들은 인증 애플리케이션(111)과 동일한 방법으로, 개인 도메인 네임, 사용자의 공개키, 연동 토큰 중에서 하나 이상을 조합시키고, 이 조합된 정보와 사용자 공개키를 사전에 설정된 서명 검증 알고리즘에 입력하여 결과값을 획득하고, 이 결과값이 상기 사용자의 공개키와 일치하는지 여부를 확인함으로써, 상기 전자 서명을 검증할 수 있다. Subsequently, each node included in the blockchain network 300 verifies the authenticity of the electronic signature. At this time, each node included in the blockchain network 300 combines one or more of a personal domain name, a user's public key, and a link token in the same manner as the authentication application 111, and the combined information and the user public key Is input to a preset signature verification algorithm to obtain a result value, and by verifying whether the result value matches the public key of the user, the electronic signature can be verified.

이어서, 블록체인 네트워크(300)에 포함된 각 노드들은 상기 전자 서명 검증에 성공하면, 상기 개인 도메인 네임과 사용자의 공개키 모두를 포함하는 블록이 블록체인에 저장되어 있는지 여부를 확인하여, 개인 도메인 네임에 대한 중복 체크를 수행한다(S211). 여기서, 개인 도메인 네임만을 중복 체크하는 것이 아니라 사용자 공개키와 개인 도메인 네임을 모두 가지고 있는 블록이 존재하는지 여부를 체크한다. 부연하면, 개인 도메인 네임이 동일하더라도 사용자 공개키가 다르면, 본 서비스에서 사용될 수 있다. 즉, 본 발명에서는 사용자가 서로 상이하여 사용자 공개키가 서로 다른 경우에는, 동일한 개인 도메인 네임이 사용자들간에 사용될 수 있다.Subsequently, when each of the nodes included in the blockchain network 300 succeeds in the verification of the electronic signature, it checks whether a block including both the private domain name and the user's public key is stored in the blockchain, and the private domain The duplicate check for the name is performed (S211). Here, it is checked whether a block having both the user public key and the private domain name exists, rather than checking only the private domain name. Incidentally, even if the personal domain name is the same, if the user public key is different, it can be used in the service. That is, in the present invention, when users differ from each other and user public keys are different, the same personal domain name may be used between users.

다음으로, 블록체인 네트워크(300)의 각 노드들은 중복 체크 결과, 제1통신 단말(110)의 공개키와 개인 도메인 네임 모두를 가지는 블록이 블록체인에 존재하지 않으면, 상기 도메인 등록 트랜잭션을 포함하는 블록을 생성하고 상기 생성한 블록을 기존 블록과 연결함으로써, 개인 도메인 네임을 블록체인에 저장한다(S213). 이에 따라, 복호키, 개인 도메인 네임 및 연동 토큰이 함께 블록체인에 등록된다. Next, each node of the blockchain network 300 is a duplicate check result, if a block having both the public key and the private domain name of the first communication terminal 110 does not exist in the blockchain, including the domain registration transaction By creating a block and linking the created block with an existing block, the personal domain name is stored in the blockchain (S213). Accordingly, the decryption key, personal domain name and interlocking token are registered on the blockchain together.

이어서, 블록체인 네트워크(300)는 트랜잭션 성공을 개인 도메인 서비스 서버(200)로 알린다(S215). 그러면, 개인 도메인 서비스 서버(200)는 도메인 등록 성공 응답을 인증 애플리케이션(111)으로 통보한다(S217). Subsequently, the blockchain network 300 notifies the transaction success to the personal domain service server 200 (S215). Then, the personal domain service server 200 notifies the authentication application 111 of a successful response to domain registration (S217).

한편, 블록체인 네트워크(300)의 각 노드들은, 전자 서명 검증에 실패하거나, 상기 개인 도메인 네임과 사용자 공개키를 포함하는 블록이 이미 블록체인에 저장되어 있으면, 도메인 등록 실패를 개인 도메인 서비스 서버(200)로 전송하고, 개인 도메인 서비스 서버(200)는 도메인 등록 실패를 제1통신 단말(110)로 통보한다.On the other hand, if each node of the blockchain network 300 fails to verify the electronic signature, or if a block containing the private domain name and user public key is already stored in the blockchain, the domain registration failure is reported to the private domain service server ( 200), and the personal domain service server 200 notifies the first communication terminal 110 of the domain registration failure.

개인 도메인 네임이 등록되면, 사용자는 인증 애플리케이션(111)을 이용하여, 개인 도메인 네임을 수정하거나 삭제할 수 있다. 개인 도메인 네임이 변경되면, 도 2와 유사한 절차를 통해서, 개인 도메인 서비스 서버(200)는 사용자 개인키로 서명된 전자 서명, 사용자 공개키 및 변경된 개인 도메인 네임을 포함하는 도메인 변경 트랜잭션으로 블록체인 네트워크(300)로 발생시킨다. 그러면, 블록체인 네트워크(300)에서 전자 서명 검증에 성공하면, 상기 도메인 변경 트랜잭션에 포함된 개인 도메인 네임으로 기존의 개인 도메인 네임을 변경하는 블록을 생성하고, 이 블록과 기존의 블록을 연결하여 블록체인을 확장한다. When the personal domain name is registered, the user can modify or delete the personal domain name using the authentication application 111. When the personal domain name is changed, through a procedure similar to FIG. 2, the personal domain service server 200 is a block chain network (e.g., an electronic signature signed with the user's private key, a user public key, and a domain change transaction including the changed personal domain name) 300). Then, if the electronic signature verification is successful in the blockchain network 300, a block for changing the existing personal domain name with the personal domain name included in the domain change transaction is generated, and the block is connected with the existing block Extend the chain.

한편, 사용자가 인증 애플리케이션(111)을 이용하여 개인 도메인 네임을 삭제하면, 개인 도메인 서비스 서버(200)는 사용자 개인키로 서명된 전자 서명 및 사용자 공개키를 포함하는 도메인 삭제 트랜잭션을 블록체인 네트워크(300)로 발생시키고, 블록체인 네트워크(300)는 전자 서명을 검증한 후에 전자 서명에 성공하면, 사용자의 개인 도메인 네임을 삭제하는 블록을 생성하고 기존의 블록과 연결하여 블록체인에 저장한다.On the other hand, when the user deletes the personal domain name using the authentication application 111, the personal domain service server 200 blocks the domain deletion transaction including the electronic signature signed by the user's private key and the user's public key (300). ), and the blockchain network 300 generates a block that deletes the user's personal domain name after verifying the electronic signature, and stores it in the blockchain by connecting with an existing block.

도 3은 본 발명의 일 실시예에 따른, 제1통신 단말과 제2통신 단말의 서로 연동시키는 방법을 설명하는 흐름도이다.3 is a flowchart illustrating a method of interworking between a first communication terminal and a second communication terminal according to an embodiment of the present invention.

도 3을 참조하면, 제2통신 단말(120)은 개인 도메인 서비스 서버(200)로 접속하여, 개인 도메인 서비스 서버(200)와 세션을 형성한다(S301).Referring to FIG. 3, the second communication terminal 120 connects to the personal domain service server 200 and establishes a session with the personal domain service server 200 (S301).

이어서, 제2통신 단말(120)은 개인 도메인 서비스 서버(200)와 형성한 세션 식별정보(즉, 세션 ID)를 확인하고, 이 세션 ID가 기록된 바코드를 생성하여 화면에 출력한다(S303). 즉, 제2통신 단말(120)은 상기 세션 ID가 바코드 판독을 통해서 인식될 수 있도록, 상기 세션 ID가 포함된 바코드를 표출한다.Subsequently, the second communication terminal 120 checks the session identification information (that is, the session ID) formed with the personal domain service server 200 and generates a barcode on which the session ID is recorded and outputs it to the screen (S303). . That is, the second communication terminal 120 displays the barcode including the session ID so that the session ID can be recognized through barcode reading.

다음으로, 제1통신 단말(110)의 인증 애플리케이션(111)은 카메라를 통해서 제2통신 단말(120)의 화면에 출력중인 바코드를 영상 인식하여, 상기 바코드에 포함된 세션 ID를 식별한다(S305, S307). 상기 바코드는 2차원 바코드일 수 있으며, 이 경우 제1통신 단말(110)은 상기 바코드를 카메라를 통해서 영상 인식하여 상기 바코드에 기록된 세션 ID를 판독할 수 있다.Next, the authentication application 111 of the first communication terminal 110 image-recognizes the barcode being output on the screen of the second communication terminal 120 through the camera to identify the session ID included in the barcode (S305) , S307). The barcode may be a two-dimensional barcode, and in this case, the first communication terminal 110 may recognize the barcode through the camera and read a session ID recorded in the barcode.

이어서, 인증 애플리케이션(111)은 제1통신 단말(110)에서 저장된 개인 도메인 네임 및 사용자 공개키를 획인하고, 상기 세션 ID, 개인 도메인 네임 및 사용자 공개키를 상기 개인 도메인 서비스 서버(200)로 전송한다(S309). Subsequently, the authentication application 111 identifies the private domain name and user public key stored in the first communication terminal 110 and transmits the session ID, private domain name and user public key to the private domain service server 200. (S309).

그러면, 개인 도메인 서비스 서버(200)는 상기 세션 ID를 토대로, 현재 자신에게 접속중인 복수의 단말 중에서 제1통신 단말(110)과 연동되는 단말이 제2통신 단말(120)임을 인식하고, 상기 제2통신 단말(120)로 상기 개인 도메인 네임 및 사용자 공개키를 전송한다(S311).Then, based on the session ID, the personal domain service server 200 recognizes that the terminal interworking with the first communication terminal 110 is the second communication terminal 120 among the plurality of terminals currently connected to itself. 2 The personal domain name and the user public key are transmitted to the communication terminal 120 (S311).

이어서, 제2통신 단말(120)은 개인 도메인 서비스 서버(200)로부터 수신한, 사용자 공개키와 개인 도메인 네임을 저장한다(S313). Subsequently, the second communication terminal 120 stores the user public key and the personal domain name received from the personal domain service server 200 (S313).

도 3의 절차에 따라, 제1통신 단말(110)은 제2통신 단말(120)에서 출력된 바코드를 인식함으로써, 제1통신 단말(110)로 공개키와 개인 도메인 네임을 제공할 수 있다. According to the procedure of FIG. 3, the first communication terminal 110 may provide the public key and the private domain name to the first communication terminal 110 by recognizing the barcode output from the second communication terminal 120.

도 4는 본 발명의 일 실시예에 따른, 제2통신 단말이 개인 도메인 네임을 이용하여 인증을 진행하는 방법을 설명하는 흐름도이다.4 is a flowchart illustrating a method for a second communication terminal to perform authentication using a personal domain name according to an embodiment of the present invention.

도 4를 참조하면, 제2통신 단말(120)은 웹 서버(400)에 접속하여, iframe 태그에 개인 도메인 서비스 서버(200)의 URL이 포함되는 웹 페이지를 웹 서버(400)로부터 수신한다(S401). 상기 웹 서버(400)는 개인 도메인 서비스 서버(200)와 연동하는 서버로서, 개인 도메인 서비스 서버(200)의 도메인 네임이 기록되고, 인증 관련 메뉴와 연관되는 iframe 태그를 상기 웹 페이지에 포함시켜 구성할 수 있다. 또한, 상기 웹 서버(400)는 자신의 도메인과 관련된 태그 정보를 상기 웹 페이지에 포함한다. Referring to FIG. 4, the second communication terminal 120 accesses the web server 400 and receives a web page including the URL of the personal domain service server 200 in the iframe tag from the web server 400 ( S401). The web server 400 is a server interworking with the personal domain service server 200, the domain name of the personal domain service server 200 is recorded, and an iframe tag associated with an authentication-related menu is included in the web page. can do. In addition, the web server 400 includes tag information related to its domain in the web page.

제2통신 단말(120)은 개인 도메인 서비스 서버(200)의 도메인이 기록되는 iframe 태그와 연관된 메뉴가 클릭되면(S403), 제2통신 단말(120)에 내장된 웹 브라우저는 저장중인 개인 도메인 네임과 공개키를 확인한다(S405). When the menu associated with the iframe tag in which the domain of the personal domain service server 200 is recorded is clicked (S403), the second communication terminal 120 has a web browser embedded in the second communication terminal 120 storing the personal domain name being stored. And confirm the public key (S405).

이어서, 제2통신 단말(120)은 상기 iframe 클릭에 따른 다른 웹 페이지의 요청 메시지를 웹 서버(400)로 전송한다(S407). 이때, 제2통신 단말(120)은 상기 확인한 개인 도메인 네임과 공개키를 상기 웹 서버(400)로 전송할 수 있다. 상기 개인 도메인 네임과 공개키는 상기 요청 메시지의 헤더에 기록될 수 있다.Subsequently, the second communication terminal 120 transmits a request message of another web page according to the iframe click to the web server 400 (S407). At this time, the second communication terminal 120 may transmit the identified personal domain name and public key to the web server 400. The personal domain name and public key can be recorded in the header of the request message.

다음으로, 웹 서버(400)는 iframe과 관련된 웹 페이지 요청 메시지가 수신되고 상기 iframe 태그에 기록된 도메인이 개인 도메인 서비스 서버(200)의 도메인임에 따라, 개인 도메인 서비스 서버(200)로 개인 도메인을 질의하여 정보를 획득하는 절차를 진행한다. 구체적으로, 웹 서버(400)는 제2통신 단말(120)로부터 수신한 사용자의 공개키, 개인 도메인 네임 중에서 하나 이상을 원본 데이터로서 설정하고, 이 원본 데이터를 자신의 개인키로 전자 서명한다(S409). 이때, 웹 서버(400)는 상기 전자 서명을 사전에 설정된 자릿수의 문자열(예컨대, 16진수 문자열)로 변환할 수도 있다. 이어서, 웹 서버(400)는 상기 전자 서명, 사용자의 공개키 및 개인 도메인 네임이 포함된 개인 도메인 질의 메시지를 개인 도메인 서비스 서버(200)로 전송한다(S411).Next, the web server 400 receives the web page request message related to the iframe and the domain recorded in the iframe tag is the domain of the personal domain service server 200, so that the personal domain to the personal domain service server 200 Query to proceed with the process of obtaining information. Specifically, the web server 400 sets at least one of the public key and the personal domain name of the user received from the second communication terminal 120 as original data, and electronically signs the original data with its own private key (S409) ). At this time, the web server 400 may convert the electronic signature into a character string having a predetermined number of digits (eg, a hexadecimal character string). Subsequently, the web server 400 transmits the personal domain query message including the electronic signature, the user's public key, and the personal domain name to the personal domain service server 200 (S411).

그러면, 개인 도메인 서비스 서버(200)는 웹 서버(400)의 전자 서명의 진위에 대한 검증을 수행한다(S413). 즉, 개인 도메인 서비스 서버(200)는, 사용자의 공개키, 개인 도메인 네임 중에서 하나 이상을 원본 데이터로서 설정하고, 원본 데이터와 상기 공개키를 사전에 설정된 서명 검증 알고리즘에 입력하여 결과값을 획득하고, 이 결과값이 상기 사용자의 공개키와 일치하는지 여부를 확인함으로써, 웹 서버(400)의 전자 서명을 검증할 수 있다. Then, the personal domain service server 200 performs verification of the authenticity of the digital signature of the web server 400 (S413). That is, the personal domain service server 200 sets one or more of the user's public key and personal domain name as original data, and inputs the original data and the public key into a preset signature verification algorithm to obtain a result value. , By checking whether the result value matches the public key of the user, the electronic signature of the web server 400 can be verified.

개인 도메인 서비스 서버(200)는 웹 서버(400)의 전자 서명 검증에 실패하면, 전자 서명 실패 사실을 웹 서버(400)로 통보한다. 반면에, 개인 도메인 서비스 서버(200)는 웹 서버(400)의 전자 서명 검증에 성공하면, 도메인 질의 메시지에 포함된 사용자의 공개키와 개인 도메인 네임을 확인하고, 상기 공개키와 개인 도메인 네임이 포함된 정보 요청 트랜잭션을 블록체인 네트워크(300)로 발생시킨다(S415). The personal domain service server 200 notifies the web server 400 of the failure of the electronic signature when the verification of the digital signature of the web server 400 fails. On the other hand, if the personal domain service server 200 succeeds in verifying the digital signature of the web server 400, the public key and the private domain name of the user included in the domain query message are checked, and the public key and the private domain name are The included information request transaction is generated to the blockchain network 300 (S415).

그러면, 블록체인 네트워크(300)는 상기 개인 도메인 네임 및 사용자의 공개키를 포함하는 블록을 블록체인에서 확인하고, 해당 블록에서 연동 토큰을 확인한다(S417). 이어서, 블록체인 네트워크(300)는 상기 추출한 연동 토큰을 포함된 트랜잭션 처리 메시지를 개인 도메인 서비스 서버(200)로 전송한다(S419).Then, the blockchain network 300 checks the block including the personal domain name and the user's public key in the blockchain, and checks the interworking token in the corresponding block (S417). Subsequently, the blockchain network 300 transmits a transaction processing message including the extracted interlocking token to the personal domain service server 200 (S419).

다음으로, 개인 도메인 서비스 서버(200)는 S411 단계의 도메인 질의에 대한 응답으로서, 상기 연동 토큰을 웹 서버(400)로 전송한다(S421).Next, the personal domain service server 200 transmits the interworking token to the web server 400 in response to the domain query in step S411 (S421).

도 5는 본 발명의 일 실시예에 따른, 인증 시스템에서 사용자 인증을 수행하는 방법을 설명하는 흐름도이다.5 is a flowchart illustrating a method for performing user authentication in an authentication system according to an embodiment of the present invention.

도 5에 따른 절차는 도 4에 따른 절차에 후속되어 진행된다.The procedure according to FIG. 5 follows the procedure according to FIG. 4.

도 5를 참조하면, 웹 서버(400)는 도메인 질의에 대한 응답으로서 수신한 상기 연동 토큰을 토대로, 제1통신 단말(110)이 상기 제2통신 단말(120)과 연동됨을 확인한다. 이어서, 웹 서버(400)는 상기 연동 토큰을 이용하여, 제2통신 단말(120)에서 인증이 진행되고 있음을 알리는 메시지를 제2통신 단말(120)로 전송한다(S501). 이때, 웹 서버(140)는 상기 제2통신 단말(120)의 식별정보(예컨대, IP 주소)를 상기 제1통신 단말(110)로 전송할 수 있다. 상기 웹 서버(400)에서 발신한 인증 진행 알림 메시지를 연동 토큰과 함께 푸시 서비스 서버(도면에 도시되지 않음)로 전송되고, 푸시 서비스 서버는 연동 토큰과 매핑된 제1통신 단말(110)의 식별정보를 확인하고, 이 제1통신 단말(110)로 상기 인증 진행 알림 메시지를 전달할 수 있다.Referring to FIG. 5, the web server 400 confirms that the first communication terminal 110 is interlocked with the second communication terminal 120 based on the interworking token received in response to the domain query. Subsequently, the web server 400 transmits a message to the second communication terminal 120 informing that the authentication is in progress in the second communication terminal 120 using the interlocking token (S501). At this time, the web server 140 may transmit the identification information (eg, IP address) of the second communication terminal 120 to the first communication terminal 110. The authentication progress notification message sent from the web server 400 is transmitted to the push service server (not shown in the figure) together with the interlocking token, and the push service server identifies the first communication terminal 110 mapped with the interlocking token. The information can be confirmed and the authentication progress notification message can be transmitted to the first communication terminal 110.

다음으로, 제1통신 단말(110)의 인증 애플리케이션(111)은, 제2통신 단말(120)에서 인증이 진행되고 있음을 알리는 메시지를 화면에 출력한 후, 사용자로부터 인증 진행 승인 또는 인증 진행 미승인을 입력받을 수 있다. 인증 애플리케이션(111)은 사용자로부터 인증 진행 미승인을 입력받은 경우, 웹 서버(400)로 인증 불가 진행 메시지를 전송하고, 웹 서버(400)는 제2통신 단말(120)의 인증을 실패 처리한다.Next, the authentication application 111 of the first communication terminal 110 outputs a message on the screen indicating that authentication is in progress in the second communication terminal 120, and then approves the authentication process from the user or disapproves the authentication process. Can be input. When the authentication application 111 receives an unauthorized authentication progress from the user, the authentication application 111 transmits an unauthenticated progress message to the web server 400, and the web server 400 fails to authenticate the second communication terminal 120.

반면에, 인증 애플리케이션(111)은 사용자로부터 인증 진행 승인을 입력받은 경우, 일회성 인증 토큰을 생성한다(S503). 상기 인증 애플리케이션(111)은 제1통신 단말(100)에 구비된 입력 수단을 이용하여, 사용자로부터 지문, 비밀번호 등과 같은 인증 정보를 입력받고, 이 인증 정보가 사전에 제1통신 단말(110)에 저장된 인증정보와 일치하는 경우에만, 사용자의 인증 진행을 최종적으로 승인 처리할 수 있다. 상기 인증 애플리케이션(111)은 현재 시각, 사용자의 공개키, 난수 등을 시드로서 이용하여, 일회성 인증 토큰을 생성할 수 있다. On the other hand, the authentication application 111 generates a one-time authentication token when an authentication progress approval is input from the user (S503). The authentication application 111 receives authentication information such as a fingerprint and a password from a user using an input means provided in the first communication terminal 100, and the authentication information is previously transmitted to the first communication terminal 110. Only when it matches the stored authentication information, the user's authentication progress can be finally approved. The authentication application 111 may generate a one-time authentication token by using the current time, the user's public key, and random numbers as seeds.

다음으로, 인증 애플리케이션(111)은 사용자의 공개키, 개인 도메인 네임 및 상기 일회성 인증 토큰이 포함된 토큰 저장 트랜잭션을 블록체인 네트워크(300)로 전파한다(S505). 인증 애플리케이션(111)은 상기 블록체인 네트워크(300)에 접근할 수 없는 경우, 개인 도메인 서비스 서버(200)로 상기 토큰 저장 트랜잭션을 전송하고, 상기 개인 도메인 서비스 서버(200)가 상기 토큰 저장 트랜잭션을 블록체인 네트워크(300)로 전파할 수 있다. Next, the authentication application 111 propagates the token storage transaction including the user's public key, personal domain name, and the one-time authentication token to the blockchain network 300 (S505). When the authentication application 111 cannot access the blockchain network 300, the token storage transaction is transmitted to the personal domain service server 200, and the personal domain service server 200 transmits the token storage transaction. It can propagate to the blockchain network 300.

그러면, 블록체인 네트워크(300)에 포함된 각 노드들은 상기 토큰 저장 트랜잭션을 포함하는 신규 블록을 생성하여 기존 블록과 연결함으로써, 상기 일회성 인증 토큰을 블록체인에 저장한다(S507).Then, each node included in the blockchain network 300 creates a new block containing the token storage transaction and connects it with an existing block, thereby storing the one-time authentication token in the blockchain (S507).

다음으로, 제1통신 단말(110)의 인증 애플리케이션(111)은 일회성 인증 토큰이 블록체인에 저장되었음을 웹 서버(400)로 통보하고(S509), 더불어 제2통신 단말(120)로 상기 생성한 일회성 인증 토큰을 전송한다(S511).Next, the authentication application 111 of the first communication terminal 110 notifies the web server 400 that the one-time authentication token is stored in the blockchain (S509), and also generates the second communication terminal 120. The one-time authentication token is transmitted (S511).

이어서, 제2통신 단말(120)은 제1통신 단말(110)로부터 수신한 일회성 인증 토큰을 웹 서버(400)로 전송함으로써, 인증을 요청한다(S513). Subsequently, the second communication terminal 120 requests authentication by transmitting the one-time authentication token received from the first communication terminal 110 to the web server 400 (S513).

그러면, 웹 서버(400)는 도 4의 S407 단계에서 획득한 사용자의 공개키와 개인 도메인 네임을 포함하는 인증 토큰 요청 트랜잭션을 블록체인 네트워크(300)로 전파하여, 상기 개인 도메인 네임과 상기 공개키와 함께 저장되는 일회성 인증 토큰을 블록체인 네트워크(300)로부터 수신한다(S515, S517). 웹 서버(400)가 상기 블록체인 네트워크(300)에 접근할 수 없는 경우, 개인 도메인 서비스 서버(200)로 상기 인증 토큰 요청 트랜잭션을 전송하고, 상기 개인 도메인 서비스 서버(200)가 인증 토큰 요청 트랜잭션을 블록체인 네트워크(300)로 전파하여, 블록체인에서 일회성 인증 토큰을 획득한 후 상기 일회성 인증 토큰을 상기 웹 서버(400)로 제공할 수 있다. Then, the web server 400 propagates the authentication token request transaction including the user's public key and the personal domain name obtained in step S407 of FIG. 4 to the blockchain network 300, so that the personal domain name and the public key The one-time authentication token stored with the received from the blockchain network 300 (S515, S517). When the web server 400 cannot access the blockchain network 300, the authentication token request transaction is transmitted to the personal domain service server 200, and the personal domain service server 200 authenticates the authentication token request transaction. Is propagated to the blockchain network 300, and after obtaining a one-time authentication token from the blockchain, the one-time authentication token can be provided to the web server 400.

상기 웹 서버(400)는 제2통신 단말(120)로부터 수신한 일회성 인증 토큰과 블록체인 네트워크(300)로부터 수신한 일회성 인증 토큰이 일치하는지 여부를 확인하여, 제2통신 단말(120)의 인증한다(S519). 웹 서버(400)는 제2통신 단말(120)로부터 수신한 일회성 인증 토큰과 블록체인에서 획득한 일회성 인증 토큰이 일치하면 인증에 성공한 것으로 처리하고, 그렇지 않으면 인증에 실패한 것으로 처리한다.The web server 400 checks whether the one-time authentication token received from the second communication terminal 120 and the one-time authentication token received from the blockchain network 300 match, thereby authenticating the second communication terminal 120 (S519). If the one-time authentication token received from the second communication terminal 120 matches the one-time authentication token obtained from the blockchain, the web server 400 treats the authentication as successful, otherwise it is treated as a failed authentication.

다음으로, 웹 서버(400)는 인증 결과가 기록되는 웹 페이지를 제2통신 단말(120)로 전송하고, 인증 성공한 제2통신 단말(120)로 요구되는 웹 서비스를 제공할 수 있다(S521). 상기 웹 서버(400)는 사용자 공개키를 토대로, 인증에 성공한 사용자를 식별하고, 이 사용자에게 특화된 웹 서비스를 제공할 수 있다. Next, the web server 400 may transmit a web page in which the authentication result is recorded to the second communication terminal 120, and provide a web service required for the successful second communication terminal 120 (S521). . The web server 400 may identify a user who has successfully authenticated based on the user public key, and provide a specialized web service to the user.

도 5에 따른 통해서, 제2통신 단말(120)의 웹 서버(400)로의 인증은 제1통신 단말(110)의 제어를 통해서 진행된다. 또한, 제1통신 단말(110)의 승인에 따라, 제2통신 단말(120)의 인증때 마다 매번 새로운 일회성 인증 토큰이 인증 애플리케이션(111)을 통해서 생성되어 블록체인에 저장되고, 제2통신 단말(120)로 제공된다. 또한, 사용자는 별도의 로그인 아이디와 패스워드를 입력하는 것이 없이, 지정된 메뉴(즉, 개인 도메인 서비스 서버의 도메인과 관련된 iframe 태그 메뉴)를 클릭하는 것에 의해서, 간편한 로그인이 수행하여, 원하는 웹 서비스를 제공받을 수 있다. 5, authentication of the second communication terminal 120 to the web server 400 is performed through control of the first communication terminal 110. In addition, according to the approval of the first communication terminal 110, a new one-time authentication token is generated through the authentication application 111 each time the authentication of the second communication terminal 120 is stored in the blockchain, the second communication terminal 120. In addition, the user does not enter a separate login ID and password, and simply clicks on the designated menu (ie, the iframe tag menu related to the domain of the personal domain service server) to perform simple login and provide the desired web service. Can receive

본 명세서는 많은 특징을 포함하는 반면, 그러한 특징은 본 발명의 범위 또는 특허청구범위를 제한하는 것으로 해석되어서는 안 된다. 또한, 본 명세서에서 개별적인 실시예에서 설명된 특징들은 단일 실시예에서 결합되어 구현될 수 있다. 반대로, 본 명세서에서 단일 실시예에서 설명된 다양한 특징들은 개별적으로 다양한 실시예에서 구현되거나, 적절히 결합되어 구현될 수 있다.While this specification includes many features, such features should not be construed as limiting the scope of the invention or the claims. In addition, features described in individual embodiments herein may be implemented in combination in a single embodiment. Conversely, various features that are described in this specification in a single embodiment may be implemented in various embodiments individually or in combination as appropriate.

도면에서 동작들이 특정한 순서로 설명되었으나, 그러한 동작들이 도시된 바와 같은 특정한 순서로 수행되는 것으로, 또는 일련의 연속된 순서, 또는 원하는 결과를 얻기 위해 모든 설명된 동작이 수행되는 것으로 이해되어서는 안 된다. 특정 환경에서 멀티태스킹 및 병렬 프로세싱이 유리할 수 있다. 아울러, 상술한 실시예에서 다양한 시스템 구성요소의 구분은 모든 실시예에서 그러한 구분을 요구하지 않는 것으로 이해되어야 한다. 상술한 프로그램 구성요소 및 시스템은 일반적으로 단일 소프트웨어 제품 또는 멀티플 소프트웨어 제품에 패키지로 구현될 수 있다.Although the operations in the drawings have been described in a specific order, it should not be understood that such operations are performed in a specific order as shown, or a series of sequences, or all described actions are performed to obtain a desired result. . In certain circumstances, multitasking and parallel processing may be advantageous. In addition, it should be understood that the division of various system components in the above-described embodiment does not require such division in all embodiments. The above-described program components and systems may be generally implemented as a package in a single software product or multiple software products.

상술한 바와 같은 본 발명의 방법은 프로그램으로 구현되어 컴퓨터로 읽을 수 있는 형태로 기록매체(시디롬, 램, 롬, 플로피 디스크, 하드 디스크, 광자기 디스크 등)에 저장될 수 있다. 이러한 과정은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있으므로 더 이상 상세히 설명하지 않기로 한다.The method of the present invention as described above may be implemented as a program and stored in a computer readable form on a recording medium (CD-ROM, RAM, ROM, floppy disk, hard disk, magneto-optical disk, etc.). Such a process will not be described in detail any more as those skilled in the art to which the present invention pertains can easily carry out.

이상에서 설명한 본 발명은, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 있어 본 발명의 기술적 사상을 벗어나지 않는 범위 내에서 여러 가지 치환, 변형 및 변경이 가능하므로 전술한 실시예 및 첨부된 도면에 의해 한정되는 것이 아니다.The present invention described above, as the person skilled in the art to which the present invention pertains, various substitutions, modifications and changes are possible within the scope of the technical spirit of the present invention, and the above-described embodiments and the attached It is not limited by the drawings.

110, 120 : 통신 단말
111 : 인증 APP
200 : 개인 도메인 서비스 서버
300 : 블록체인 네트워크
400 : 웹 서버
500 : 통신망
110, 120: communication terminal
111: authentication APP
200: personal domain service server
300: Blockchain network
400: web server
500: communication network

Claims (11)

개인 도메인 네임을 이용한 인증 방법으로서,
웹 서버가, 개인 도메인 네임과 사용자 공개키를 제2통신 단말로부터 수신하는 단계;
상기 웹 서버가, 상기 개인 도메인 네임 및 상기 사용자 공개키와 관련되어 저장된 연동 토큰을 블록체인에서 획득하는 단계;
상기 웹 서버가, 상기 연동 토큰을 기초로 상기 제2통신 단말과 연동되는 제1통신 단말을 확인하고, 상기 제1통신 단말로 인증 진행 알림 메시지를 전송하여 일회성 인증 토큰을 생성을 유도하는 단계;
상기 웹 서버가, 상기 제1통신 단말에서 생성하여 상기 블록체인에 저장된 일회성 인증 토큰을 획득하는 단계;
상기 웹 서버가, 상기 제1통신 단말에서 생성하여 상기 제2통신 단말로 전송된 일회성 인증 토큰을 상기 제2통신 단말로부터 수신하는 단계; 및
상기 웹 서버가, 상기 블록체인에서 획득한 일회성 인증 토큰과 상기 제2통신 단말로부터 수신한 일회성 인증 토큰의 일치 여부를 확인하여, 제2통신 단말의 인증을 수행하는 단계;를 포함하는 인증 방법.
As an authentication method using a personal domain name,
A web server receiving a personal domain name and a user public key from a second communication terminal;
Obtaining, by the web server, a linked token stored in association with the personal domain name and the user public key on a blockchain;
Confirming, by the web server, a first communication terminal interworking with the second communication terminal based on the interlocking token, and sending an authentication progress notification message to the first communication terminal to induce generation of a one-time authentication token;
Obtaining, by the web server, a one-time authentication token generated in the first communication terminal and stored in the blockchain;
Receiving, by the web server, a one-time authentication token generated by the first communication terminal and transmitted to the second communication terminal from the second communication terminal; And
And the web server confirming whether the one-time authentication token obtained from the blockchain matches the one-time authentication token received from the second communication terminal and performing authentication of the second communication terminal.
제1항에 있어서,
상기 유도하는 단계 이후에,
상기 제1통신 단말이, 상기 일회성 인증 토큰을 생성하고, 상기 일회성 인증 토큰을 상기 개인 도메인 네임 및 상기 사용자 공개키와 연관시켜 상기 블록체인에 저장하고, 상기 일회성 인증 토큰을 상기 제2통신 단말로 전송하는 단계;를 포함하고,
상기 일회성 인증 토큰을 획득하는 단계는,
상기 개인 도메인 네임 및 상기 사용자 공개키와 연관된 상기 일회성 인증 토큰을 상기 블록체인에서 획득하는 것을 특징으로 하는 인증 방법.
According to claim 1,
After the inducing step,
The first communication terminal generates the one-time authentication token, stores the one-time authentication token in association with the personal domain name and the user public key, and stores the one-time authentication token in the second communication terminal. And transmitting;
The step of obtaining the one-time authentication token,
An authentication method characterized by obtaining the one-time authentication token associated with the personal domain name and the user public key in the blockchain.
제1항에 있어서,
상기 제2통신 단말로부터 수신하는 단계는,
상기 웹 서버가, iframe 태그에 개인 도메인 서비스 서버의 도메인이 기록되는 웹 페이지를 상기 제2통신 단말로 전송하고, 상기 iframe 태그와 관련된 메뉴가 상기 제2통신 단말에서 선택되는 경우, 상기 제2통신 단말로부터 개인 도메인 네임과 사용자 공개키를 수신하는 것을 특징으로 하는 인증 방법.
According to claim 1,
The step of receiving from the second communication terminal,
When the web server transmits a web page in which the domain of the personal domain service server is recorded in the iframe tag to the second communication terminal, and the menu associated with the iframe tag is selected in the second communication terminal, the second communication Authentication method characterized by receiving the personal domain name and the user public key from the terminal.
제1항에 있어서,
상기 일회성 인증 토큰을 획득하는 단계는,
상기 웹 서버가, 상기 개인 도메인 네임과 상기 사용자 공개키를 포함하는 도메인 질의 메시지를 개인 도메인 서비스 서버로 전송하는 단계; 및
상기 웹 서버가, 상기 개인 도메인 네임 및 상기 사용자 공개키와 연관되는 연동 토큰을, 상기 도메인 질의에 대한 응답으로서 상기 개인 도메인 서비스 서버로부터 수신하는 단계;를 포함하는 인증 방법.
According to claim 1,
The step of obtaining the one-time authentication token,
Transmitting, by the web server, a domain query message including the personal domain name and the user public key to a personal domain service server; And
And receiving, by the web server, an interworking token associated with the personal domain name and the user public key from the personal domain service server in response to the domain query.
제4항에 있어서,
상기 일회성 인증 토큰을 획득하는 단계 이전에,
상기 제1통신 단말이, 상기 개인 도메인 네임, 상기 사용자 공개키 및 상기 연동 토큰이 포함된 도메인 등록 요청 메시지를 개인 도메인 서비스 서버로 전송하는 단계; 및
상기 개인 도메인 서비스 서버가, 상기 개인 도메인 네임, 상기 사용자 공개키 및 상기 연동 토큰이 포함된 도메인 등록 트랜잭션을 블록체인 네트워크에 발생시켜, 상기 블록체인에 상기 등록 트랜잭션을 포함하는 블록을 저장시키는 단계;를 더 포함하는 인증 방법.
According to claim 4,
Before the step of obtaining the one-time authentication token,
Transmitting, by the first communication terminal, a domain registration request message including the personal domain name, the user public key, and the interlocking token to a personal domain service server; And
Generating, by the personal domain service server, a domain registration transaction including the personal domain name, the user public key, and the interlocking token in a blockchain network, thereby storing a block including the registration transaction in the blockchain; Authentication method further comprising a.
제5항에 있어서,
상기 사용자 공개키와 상기 개인 도메인 네임을 모두를 가지는 블록이 블록체인에 저장되지 않은 경우, 상기 등록 트랜잭션을 포함하는 블록이 상기 블록체인에 저장되는 것을 특징으로 하는 인증 방법.
The method of claim 5,
If the block having both the user public key and the private domain name is not stored in the blockchain, the authentication method, characterized in that the block containing the registration transaction is stored in the blockchain.
제1항에 있어서,
상기 제2통신 단말이, 개인 도메인 서비스 서버와 형성한 세션의 식별정보를 확인하고, 이 세션의 식별정보가 포함되는 바코드를 출력하는 단계;
상기 제1통신 단말이, 상기 바코드를 판독하여 상기 세션의 식별정보를 인식한 후, 상기 인식한 세션의 식별정보, 상기 개인 도메인 네임 및 상기 사용자 공개키를 상기 개인 도메인 서비스 서버로 전송하는 단계; 및
상기 개인 도메인 서비스 서버가, 상기 제1통신 단말로부터 수신한 세션의 식별정보를 토대로, 상기 제1통신 단말과 연동되는 상기 제2통신 단말을 식별하고, 상기 제2통신 단말로 상기 개인 도메인 네임과 상기 사용자 공개키를 전송하는 단계;를 포함하는 인증 방법.
According to claim 1,
Checking, by the second communication terminal, identification information of a session formed with a personal domain service server, and outputting a barcode including identification information of the session;
After the first communication terminal reads the barcode and recognizes the identification information of the session, transmitting the identification information of the recognized session, the personal domain name, and the user public key to the personal domain service server; And
The personal domain service server identifies the second communication terminal interworking with the first communication terminal based on the identification information of the session received from the first communication terminal, and uses the personal domain name as the second communication terminal. And transmitting the user public key.
개인 도메인 네임을 이용한 사용자 인증을 수행하는 인증 시스템으로서,
개인 도메인 네임과 사용자 공개키를 제2통신 단말로부터 수신하고, 상기 개인 도메인 네임 및 상기 사용자 공개키와 관련되어 저장된 연동 토큰을 블록체인에서 획득하고, 상기 연동 토큰을 기초로 상기 제2통신 단말과 연동되는 제1통신 단말을 확인하고, 상기 제1통신 단말로 인증 진행 알림 메시지를 전송하는 웹 서버; 및
상기 제1통신 단말에 탑재되며, 상기 인증 진행 알림 메시지를 수신하면 일회성 인증 토큰을 생성하고 상기 생성한 일회성 인증 토큰을 블록체인에 저장하고, 상기 생성한 일회성 인증 토큰을 상기 제2통신 단말로 제공하는 인증 애플리케이션;을 포함하고,
상기 웹 서버는, 상기 인증 애플리케이션에서 생성되어 제공된 일회성 인증 토큰을 상기 제2통신 단말로부터 수신하고 상기 블록체인에 저장중인 일회성 인증 토큰을 획득한 후, 이 획득한 일회성 인증 토큰과 상기 제2통신 단말로부터 수신한 일회성 인증 토큰의 일치 여부를 확인하여, 상기 제2통신 단말에 대한 인증을 수행하는 것을 특징으로 하는 인증 시스템.
An authentication system that performs user authentication using a personal domain name,
A personal domain name and a user public key are received from a second communication terminal, and an interlocking token stored in association with the personal domain name and the user public key is obtained in a blockchain, and based on the interlocking token, the second communication terminal and A web server that identifies an interlocked first communication terminal and transmits an authentication progress notification message to the first communication terminal; And
When mounted on the first communication terminal, upon receiving the authentication progress notification message, a one-time authentication token is generated, the generated one-time authentication token is stored in the blockchain, and the generated one-time authentication token is provided to the second communication terminal Including the authentication application;
The web server receives the one-time authentication token generated and provided by the authentication application from the second communication terminal, obtains the one-time authentication token stored in the blockchain, and then acquires the one-time authentication token and the second communication terminal An authentication system characterized in that the second communication terminal is authenticated by checking whether the one-time authentication token received from the user matches.
제8항에 있어서,
상기 인증 애플리케이션은, 상기 인증 토큰을 상기 개인 도메인 네임 및 상기 사용자 공개키와 연관시켜 상기 블록체인에 저장하고,
상기 웹 서버는, 상기 개인 도메인 네임 및 상기 사용자 공개키와 연관된 상기 인증 토큰을 상기 블록체인에서 획득하는 것을 특징으로 하는 인증 시스템.
The method of claim 8,
The authentication application stores the authentication token in the blockchain in association with the personal domain name and the user public key,
And the web server acquires the authentication token associated with the personal domain name and the user public key from the blockchain.
제8항에 있어서,
상기 개인 도메인 네임과 상기 사용자 공개키를 포함하는 도메인 질의 메시지를 상기 웹 서버로부터 수신하고, 상기 개인 도메인 네임과 상기 사용자 공개키와 연관되는 연동 토큰을 상기 블록체인에서 획득하여 상기 웹 서버로 제공하는 개인 도메인 서비스 서버;를 더 포함하는 것을 특징으로 하는 인증 시스템.
The method of claim 8,
A domain query message including the personal domain name and the user public key is received from the web server, and an interlocking token associated with the personal domain name and the user public key is obtained from the blockchain and provided to the web server. Personal domain service server; further comprising an authentication system.
제10항에 있어서,
상기 개인 도메인 서비스 서버는,
상기 개인 도메인 네임, 상기 사용자 공개키 및 상기 연동 토큰이 포함된 도메인 등록 요청 메시지를 상기 인증 애플리케이션으로부터 수신하고, 상기 개인 도메인 네임, 상기 사용자 공개키 및 상기 연동 토큰이 포함된 도메인 등록 트랜잭션을 블록체인 네트워크에 발생시켜, 상기 블록체인에 상기 등록 트랜잭션을 포함하는 블록을 저장시키는 것을 특징으로 하는 인증 시스템.
The method of claim 10,
The personal domain service server,
The domain registration request message including the personal domain name, the user public key, and the interlocking token is received from the authentication application, and a domain registration transaction including the personal domain name, the user public key and the interlocking token is blockchained. Authentication system, characterized in that to store in the network, the block containing the registration transaction in the blockchain.
KR1020190007991A 2019-01-22 2019-01-22 Authentication method and system using private domain name KR20200091138A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020190007991A KR20200091138A (en) 2019-01-22 2019-01-22 Authentication method and system using private domain name

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190007991A KR20200091138A (en) 2019-01-22 2019-01-22 Authentication method and system using private domain name

Publications (1)

Publication Number Publication Date
KR20200091138A true KR20200091138A (en) 2020-07-30

Family

ID=71839207

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190007991A KR20200091138A (en) 2019-01-22 2019-01-22 Authentication method and system using private domain name

Country Status (1)

Country Link
KR (1) KR20200091138A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114884724A (en) * 2022-05-06 2022-08-09 杭州联吉技术有限公司 Cloud server interaction method and device, readable storage medium and terminal equipment
KR102515721B1 (en) * 2022-12-28 2023-03-30 주식회사 시그마체인 Non-fungible password authentication supproting method using one time password for authentication based on blockchain and apparatus therefor

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20130093838A (en) 2012-01-26 2013-08-23 정성권 Method for auto log-in and system for the same

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20130093838A (en) 2012-01-26 2013-08-23 정성권 Method for auto log-in and system for the same

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114884724A (en) * 2022-05-06 2022-08-09 杭州联吉技术有限公司 Cloud server interaction method and device, readable storage medium and terminal equipment
CN114884724B (en) * 2022-05-06 2024-03-22 杭州联吉技术有限公司 Cloud server interaction method and device, readable storage medium and terminal equipment
KR102515721B1 (en) * 2022-12-28 2023-03-30 주식회사 시그마체인 Non-fungible password authentication supproting method using one time password for authentication based on blockchain and apparatus therefor

Similar Documents

Publication Publication Date Title
US11546756B2 (en) System and method for dynamic multifactor authentication
US9698992B2 (en) Method for signing electronic documents with an analog-digital signature with additional verification
TWI700916B (en) Method and device for providing and obtaining safety identity information
CA2711243C (en) System and method for secure voting
US7100049B2 (en) Method and apparatus for authentication of users and web sites
CN110086608A (en) User authen method, device, computer equipment and computer readable storage medium
Hammood et al. A review of user authentication model for online banking system based on mobile IMEI number
US20150310686A1 (en) System and method for secure voting
CN108023893A (en) A kind of method of block chain data recognizing system
KR101858653B1 (en) Method for certifying a user by using mobile id through blockchain database and merkle tree structure related thereto, and terminal and server using the same
JP2007527059A (en) User and method and apparatus for authentication of communications received from a computer system
KR20190132120A (en) Simple login method and system using private domain name
KR101027228B1 (en) User-authentication apparatus for internet security, user-authentication method for internet security, and recorded medium recording the same
KR20200091138A (en) Authentication method and system using private domain name
Helm Distributed Internet voting architecture: A thin client approach to Internet voting
WO2018232443A1 (en) Method and system for identity proofing
KR100648986B1 (en) Service system and method for electronic name card, device and method for authentication of electronic name card
KR102123405B1 (en) System and method for providing security membership and login hosting service
KR101617875B1 (en) authentication method for service of providing electronic documents, method and system for service of providing electronic documents
WO2016042473A1 (en) Secure authentication using dynamic passcode
JP5282229B2 (en) Service providing system, alteration check method, and alteration check program
JP2007065789A (en) Authentication system and method
JP6840921B2 (en) WEB page verification device, verification method and program for phishing prevention
KR20210053567A (en) Method for verifying certification improper use in block environment and system therefor
KR20240044930A (en) Method to Register a User Binding Old Account and Minimizing Manual Input