KR101962349B1 - Consolidated Authentication Method based on Certificate - Google Patents
Consolidated Authentication Method based on Certificate Download PDFInfo
- Publication number
- KR101962349B1 KR101962349B1 KR1020170026125A KR20170026125A KR101962349B1 KR 101962349 B1 KR101962349 B1 KR 101962349B1 KR 1020170026125 A KR1020170026125 A KR 1020170026125A KR 20170026125 A KR20170026125 A KR 20170026125A KR 101962349 B1 KR101962349 B1 KR 101962349B1
- Authority
- KR
- South Korea
- Prior art keywords
- authentication
- arbitrary
- user terminal
- web server
- server
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/0823—Network architectures or network communication protocols for network security for authentication of entities using certificates
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/31—User authentication
- G06F21/33—User authentication using certificates
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/06—Network architectures or network communication protocols for network security for supporting key management in a packet data network
- H04L63/068—Network architectures or network communication protocols for network security for supporting key management in a packet data network using time-dependent keys, e.g. periodically changing keys
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/0815—Network architectures or network communication protocols for network security for authentication of entities providing single-sign-on or federations
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/0884—Network architectures or network communication protocols for network security for authentication of entities by delegation of authentication, e.g. a proxy authenticates an entity to be authenticated on behalf of this entity vis-à-vis an authentication entity
-
- H04L67/2814—
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/563—Data redirection of data network streams
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3247—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Computing Systems (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Information Transfer Between Computers (AREA)
Abstract
인증서 기반 통합 인증 방법이 개시된다. 상기 인증 방법은 인증 서버에 의해 수행되고, 웹 서버에 의한 사용자 단말의 리다이렉션(Redirection)에 의해 상기 웹 서버에 의해 생성된 난수를 수신하는 단계, 제1 난수를 상기 사용자 단말로 송신하는 단계, 상기 사용자 단말로부터 제1 인증 정보를 수신하는 단계, 상기 사용자 단말로 제2 인증 정보를 송신하는 단계, 및 상기 사용자 단말에 대한 인증 결과값을 상기 사용자 단말의 리다이렉션을 통하여 상기 웹 서버로 송신하는 단계를 포함한다.A certificate-based integrated authentication method is disclosed. The authentication method is performed by an authentication server, and includes receiving a random number generated by the web server by redirection of a user terminal by a web server, transmitting a first random number to the user terminal, The method comprising: receiving first authentication information from a user terminal; transmitting second authentication information to the user terminal; and transmitting an authentication result value to the user terminal through the redirection of the user terminal .
Description
본 발명은 인증서 기반 통합 인증 방법에 관한 것이다. 보다 상세하게는, 동일 출처 정책(Same Origin Policy)의 문제를 해결하며 웹 표준을 준수하는 인증서 기반 통합인증 프로토콜을 이용하는 통합 인증 방법 및 장치에 관한 것이다.The present invention relates to a certificate-based integrated authentication method. More particularly, the present invention relates to an integrated authentication method and apparatus that solves the problem of the Same Origin Policy and uses a certificate-based integrated authentication protocol that complies with Web standards.
사용자 인증(Authentication)은 온라인 네트워크상에서 가장 중요한 기술 중의 하나이다. 국내 인터넷 환경은 인터넷 서비스의 보안사고 방지를 위해 주로 공인인증서를 사용한다. 공인인증서는 온라인상에서 본인 확인 및 전자서명을 가능하게 해주며, 인증서를 이용한 공개키 기반 구조(Public Key Infrastructure, PKI)는 보안성이 높아 정부기관 및 금융기관에서 널리 사용하고 있는 방법이다. 하지만, 사용자는 인증서 관리를 위해 ActiveX와 같은 플러그인을 설치해야 하는 불편함이 있다.Authentication is one of the most important technologies on the online network. Domestic internet environment mainly uses public certificate to prevent security accidents of internet service. Public key infrastructure (PKI) using certificates is widely used by government agencies and financial institutions due to its high security. However, the user has to install a plug-in such as ActiveX to manage the certificate.
한편, 국내 정부기관 및 금융기관에서는 SEED, ARIA와 같은 국내 표준 암호알고리즘을 웹 브라우저가 지원하지 않는 점과 로컬 드라이브에 저장되는 인증서 파일 관리 문제를 이유로 ActiveX 또는 실행파일 설치 등을 이용하여 PKI 기반 인증 시스템을 구현하였다. 이러한 경우, 특정 웹브라우저와 OS에서만 사용할 수 있어 호환성이 매우 떨어질 뿐만 아니라, 사용자의 컴퓨터에 영향을 미칠 수 있는 특성으로 인해 바이러스의 유입 경로로 활용되어 보안상의 위협에 노출될 수 있다는 문제점이 있다.On the other hand, domestic government agencies and financial institutions are not aware of the fact that web browsers do not support domestic standard encryption algorithms such as SEED and ARIA, and PKI-based authentication using ActiveX or executable file installation System. In this case, not only compatibility is very low because it can be used only in a specific web browser and OS, but it is also used as a virus inflow path due to a characteristic that may affect a user's computer, thereby exposing it to security threats.
따라서, 본 발명에서 해결하고자 하는 과제는 웹 표준을 준수하면서 다수의 사용자에게 인증서 기반 인증을 제공하는 기술을 제시하는 것을 목적으로 한다.Accordingly, a problem to be solved by the present invention is to provide a technology for providing certificate-based authentication to a large number of users while obeying web standards.
또한, 본 발명은 웹 사이트로부터 사용자 인증을 위임받아 처리하는 인증 서버를 새롭게 정의하고, 통합 인증 개념을 도입하여 사용자의 편의성을 크게 향상시킨 인증 프로토콜을 설계하는 것을 목적으로 한다.It is another object of the present invention to design an authentication server that newly defines an authentication server for delegating user authentication from a web site and introduces an integrated authentication concept, thereby greatly improving the convenience of the user.
또한, 본 발명은 사용자의 전자서명의 위조가 불가능하고, 수학적으로 안전성이 증명 가능한 인증 프로토콜을 설계하고, 재사용 공격 또는 중간자 공격에 대해 안전한 프로토콜을 설계하는 것을 목적으로 한다.The present invention also aims at designing an authentication protocol which can not be falsified of a user's digital signature, can be proved mathematically safe, and designing a protocol that is safe for re-attack or man-in-the-middle attack.
본 발명의 일 실시 예에 의한 인증서 기반 통합 인증 방법은 인증 서버에 의해 수행되고, 웹 서버에 의한 사용자 단말의 리다이렉션(Redirection)에 의해 상기 웹 서버에 의해 생성된 난수를 수신하는 단계, 제1 난수를 상기 사용자 단말로 송신하는 단계, 상기 사용자 단말로부터 제1 인증 정보를 수신하는 단계, 상기 사용자 단말로 제2 인증 정보를 송신하는 단계, 및 상기 사용자 단말에 대한 인증 결과값을 상기 사용자 단말의 리다이렉션을 통하여 상기 웹 서버로 송신하는 단계를 포함한다.A certificate-based integrated authentication method according to an embodiment of the present invention includes: receiving a random number generated by the web server by a redirection of a user terminal performed by an authentication server and performed by a web server; To the user terminal, receiving the first authentication information from the user terminal, transmitting the second authentication information to the user terminal, and transmitting the authentication result value for the user terminal to the redirection To the web server through the Internet.
또한, 본 발명의 일 실시 예에 의한 인증서 기반 통합 인증 시스템은 사용자 단말의 로그인 요청에 응답하여, 난수를 생성하고 상기 난수와 함께 상기 사용자 단말을 인증 서버로 리다이렉트하는 웹 서버, 상기 난수(NW)를 상기 사용자 단말을 경유하여 수신하고, 상기 사용자 단말로 제1 난수를 송신하고, 상기 사용자 단말과 인증관련 정보를 교환하여 상기 사용자 단말에 대한 인증을 수행하고, 상기 사용자 단말에 대한 인증이 완료되면 인증 결과값과 함께 상기 사용자 단말을 상기 웹 서버로 리다이렉트하는 인증 서버를 포함한다.In addition, certificate-based integrated authentication according to one embodiment of the invention the system user in response to the login request of the terminal, generating a random number, and the web server to redirect the user terminal together with said random number to the authentication server a random number (N W ) Is transmitted to the user terminal through the user terminal, a first random number is transmitted to the user terminal, authentication is performed with respect to the user terminal by exchanging authentication related information with the user terminal, And an authentication server for redirecting the user terminal to the web server together with the authentication result value.
본 발명에 따르면, 사용자가 하나의 인증 서버의 도메인의 로컬 스토리지에 공인인증서를 저장함으로써 사용자의 편의성을 크게 향상시켜 줄 수 있다는 장점이 있다.According to the present invention, the convenience of the user can be greatly improved by storing the authorized certificate in the local storage of the domain of one authentication server by the user.
또한, 본 발명에 따르면, 사용자가 웹 사이트가 제공하는 서비스를 이용하기 위해 웹 사이트에게 자신을 인증해야 하는 상황에서, 웹 사이트에게 사용자 인증을 위임받아 처리하는 인증 서버를 새롭게 정의하여 동일 출처 정책의 문제점을 해결한 안전하고 효율적인 프로토콜을 설계할 수 있다는 장점이 있다.According to the present invention, in a situation where a user has to authenticate himself / herself to a web site in order to use a service provided by the web site, an authentication server that delegates user authentication to the web site and processes the web site is newly defined, It has the advantage of designing a safe and efficient protocol that solves the problem.
또한, 본 발명에 따르면, 한 명의 사용자가 다양한 웹 사이트를 이용하는 인터넷 환경에서 안전하고 효율적인 방법으로 공인인증서를 이용하여 사용자를 인증할 수 있는 방법을 제시할 수 있다는 장점이 있다.In addition, according to the present invention, there is an advantage that a method of authenticating a user by using a public certificate in a safe and efficient manner in an internet environment in which one user uses various web sites can be presented.
도 1은 본 발명에 따른 적어도 하나의 사용자 단말(클라이언트)과 적어도 하나의 웹 서버와 하나의 인증 서버를 포함하는 통합 인증 시스템을 도시한다.
도 2는 본 발명에 따른 통합 인증 시스템의 인증 서버에 의해 수행되는 통합 인증 방법의 흐름도를 도시한다.
도 3은 본 발명에 따른 웹 서버, 인증 서버 및 클라이언트 간의 사용자 인증 및 사용자 식별을 위한 신호 흐름도를 도시한다.
도 4는 본 발명의 일 실시예에 따른 클라이언트와 인증 서버 간의 사용자 인증에서의 교환되는 메시지의 형태를 포함하는 신호 흐름도를 도시한다.Figure 1 shows an integrated authentication system comprising at least one user terminal (client), at least one web server and one authentication server according to the invention.
2 shows a flowchart of an integrated authentication method performed by an authentication server of an integrated authentication system according to the present invention.
3 illustrates a signal flow diagram for user authentication and user identification between a web server, an authentication server, and a client in accordance with the present invention.
Figure 4 illustrates a signal flow diagram that includes the form of messages exchanged in a user authentication between a client and an authentication server in accordance with an embodiment of the present invention.
상술한 본 발명의 특징 및 효과는 첨부된 도면과 관련한 다음의 상세한 설명을 통하여 보다 분명해 질 것이며, 그에 따라 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 본 발명의 기술적 사상을 용이하게 실시할 수 있을 것이다. 본 발명은 다양한 변경을 가할 수 있고 여러 가지 형태를 가질 수 있는바, 특정 실시 예들을 도면에 예시하고 본문에 상세하게 설명하고자 한다. 그러나 이는 본 발명을 특정한 개시형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 본 명세서에서 사용한 용어는 단지 특정한 실시 예들을 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다.BRIEF DESCRIPTION OF THE DRAWINGS The above and other features and advantages of the present invention will become more apparent from the following detailed description of the present invention when taken in conjunction with the accompanying drawings, It will be possible. The present invention is capable of various modifications and various forms, and specific embodiments are illustrated in the drawings and described in detail in the text. It is to be understood, however, that the invention is not intended to be limited to the particular forms disclosed, but on the contrary, is intended to cover all modifications, equivalents, and alternatives falling within the spirit and scope of the invention. The terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting of the invention.
각 도면을 설명하면서 유사한 참조부호를 유사한 구성요소에 대해 사용한다.Like reference numerals are used for similar elements in describing each drawing.
제1, 제2등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다.The terms first, second, etc. may be used to describe various components, but the components should not be limited by the terms. The terms are used only for the purpose of distinguishing one component from another.
예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다. "및/또는" 이라는 용어는 복수의 관련된 기재된 항목들의 조합 또는 복수의 관련된 기재된 항목들 중의 어느 항목을 포함한다.For example, without departing from the scope of the present invention, the first component may be referred to as a second component, and similarly, the second component may also be referred to as a first component. The term "and / or" includes any combination of a plurality of related listed items or any of a plurality of related listed items.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미가 있다.Unless otherwise defined, all terms used herein, including technical or scientific terms, have the same meaning as commonly understood by one of ordinary skill in the art to which this invention belongs.
일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않아야 한다.Terms such as those defined in commonly used dictionaries are to be interpreted as having a meaning consistent with the contextual meaning of the related art and are to be interpreted as either ideal or overly formal in the sense of the present application Should not.
이하의 설명에서 사용되는 구성요소에 대한 접미사 "모듈", "블록" 및 "부"는 명세서 작성의 용이함만이 고려되어 부여되거나 혼용되는 것으로서, 그 자체로 서로 구별되는 의미 또는 역할을 갖는 것은 아니다. The suffix "module "," block ", and "part" for components used in the following description are given or mixed in consideration of ease of specification only and do not have their own distinct meanings or roles .
이하, 본 발명의 바람직한 실시 예를 첨부한 도면을 참조하여 당해 분야에 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 설명한다. 하기에서 본 발명의 실시 예를 설명함에 있어, 관련된 공지의 기능 또는 공지의 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략한다. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS Hereinafter, preferred embodiments of the present invention will be described with reference to the accompanying drawings. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS In the following description of the present invention, detailed description of known functions and configurations incorporated herein will be omitted when it may make the subject matter of the present invention rather unclear.
이하, 본 발명에 따른 인증서 기반 통합 인증 방법 및 장치에 대해 살펴보기로 한다. 이와 관련하여, 상기 통합 인증 방법 및 장치는 동일 출처 정책(Same Origin Policy)을 해결하며 웹 표준을 준수하는 인증서 기반 통합 인증 프로토콜을 이용한다. 여기서, 동일 출처 정책이란 웹 브라우저에서 작동하는 스크립트 언어가 도메인, 프로토콜, 포트가 같은 경우에만 상호 작용이 가능하게 하는 보안 정책이다. 즉, 사이트 A의 도메인에서 작동하는 스크립트가 다른 사이트 B에서 작동할 수 없게 한다. 이 정책은 악의적인 웹 사이트가 다른 사이트의 데이터에 대한 접근 권한을 확보하지 못하도록 한다. 따라서, 동일 출처 정책은 각각의 사이트 데이터의 기밀성과 일관성을 유지하기 위해 사용된다. 하지만, 이러한 동일 출처 정책에 따르면 저장한 공인인증서를 사용함에 있어 제약 사항이 발생할 수 있다. 예를 들어, A은행이 자신의 도메인(Domain)의 로컬 스토리지 영역에 사용자의 공인인증서를 저장하는 경우를 고려할 수 있다. 이러한 방법은 웹 스토리지의 동일 출처 정책에 의해 저장한 공인인증서를 사용함에 있어 제약 사항이 발생한다. 즉, 공인인증서가 저장된 웹 사이트와 공인인증서를 사용하고자 하는 웹 사이트가 서로 다를 경우, 저장된 공인인증서를 사용하지 못하는 문제가 발생한다.Hereinafter, a certificate-based integrated authentication method and apparatus according to the present invention will be described. In this regard, the integrated authentication method and apparatus uses a certificate-based integrated authentication protocol that addresses the Same Origin Policy and adheres to web standards. Here, the same-origin policy is a security policy that allows a script language operating in a web browser to interact only when the domain, protocol, and port are the same. This means that scripts running on the domain of Site A will not work on the other Site B. This policy prevents malicious websites from gaining access to data from other sites. Therefore, the same origin policy is used to maintain the confidentiality and consistency of each site data. However, according to the same origin policy, there may be restrictions in using the stored public certificate. For example, consider the case where the A bank stores the user's public certificate in the local storage area of its domain. This method has limitations in using public certificates stored by the same source policy of web storage. That is, if the web site storing the official certificate is different from the website for which the public certificate is intended to be used, the stored public certificate can not be used.
구체적으로, 본 발명은 동일 출처 정책의 문제를 해결하기 위해 다수의 사이트에게 사용자의 인증을 위임받아 처리하는 인증 서버를 새롭게 정의한다. 이를 통하여 웹 표준을 준수하면서 공인인증서를 이용하여 사용자에게 인증을 제공하는 기술로서, 사용자가 ActiveX와 같은 플러그인 기술이나 실행파일 설치와 같은 번거로운 절차를 거치지 않고 공인인증서를 이용하여 인터넷상에서 안전하고 효율적으로 자신을 인증할 수 있는 방법에 관한 것이다.Specifically, the present invention newly defines an authentication server that delegates user authentication to a plurality of sites in order to solve the problem of the same source policy. It is a technology to provide authentication to users by using public certificates while obeying web standards. It is a technology that enables users to securely and efficiently access the Internet using public certificates without going through troublesome procedures such as plug- And how to authenticate yourself.
전술된 본 발명이 해결하고자 하는 과제에 대해 더 상세히 살펴보면 다음과 같다.The problems to be solved by the present invention are as follows.
- 웹 표준을 준수하면서 다수의 사용자에게 인증서 기반 인증을 제공하는 기술을 제시하는 것을 목적으로 한다. 즉, 웹 브라우저가 접근 가능한 브라우저 저장 공간인 웹 스토리지(Web Storage)의 로컬 스토리지(Local Storage)에 저장함으로써, 사용자가 별도의 프로그램을 설치하지 않아도 웹 브라우저가 공인인증서에 접근 가능하게 하는 형태로 설계하여 ActiveX없이 인증서 사용 및 관리 문제를 해결 할 것이다.The goal is to provide a technology that provides certificate-based authentication to multiple users while adhering to Web standards. In other words, it is stored in the local storage of Web Storage, which is a browser storage space accessible by a Web browser, so that the Web browser can access the authorized certificate without installing a separate program This will solve certificate usage and management problems without ActiveX.
- 웹 사이트로부터 사용자 인증을 위임받아 처리하는 인증 서버를 새롭게 정의하는 것을 목적으로 한다. 즉, 사용자는 인증 서버의 도메인의 로컬 스토리지에 공인인증서를 저장하고 웹 사이트가 제공하는 다양한 서비스를 이용하기 위해 인증절차를 거쳐야 할 때 웹 사이트가 아닌 인증 서버에게 인증을 받는 형태를 설계하여 동일 출처 정책의 문제를 해결할 것이다.- It is aimed to newly define an authentication server that delegates user authentication from a website and processes it. That is, when a user stores an authorized certificate in a local storage of a domain of an authentication server and has to go through an authentication procedure to use various services provided by a web site, the user is designed to be authenticated to an authentication server rather than a web site, We will solve the problem of policy.
- 사용자가 각각의 웹 사이트의 도메인의 로컬 스토리지에 공인인증서를 저장해야 하는 동일 출처 정책의 제약 사항에서 벗어나는 것을 목적으로 한다. 즉, 하나의 인증 서버가 여러 웹 사이트의 사용자인증을 요청을 위임받아 처리하는 통합 인증 개념을 도입하여 사용자의 편의성을 크게 향상시킨 인증 프로토콜을 설계할 수 있다.- It is intended to be outside the constraints of the same source policy that users must store their certificates in the local storage of the domain of each web site. In other words, an authentication protocol can be designed by introducing the concept of integrated authentication, in which one authentication server delegates a request for user authentication of various web sites, and greatly enhances the user's convenience.
또한, 본 발명은 사용자의 전자서명의 위조가 불가능하고, 수학적으로 안전성이 증명 가능한 인증 프로토콜을 설계하고, 재사용 공격 또는 중간자 공격에 대해 안전한 프로토콜을 설계하는 것을 목적으로 한다.The present invention also aims at designing an authentication protocol which can not be falsified of a user's digital signature, can be proved mathematically safe, and designing a protocol that is safe for re-attack or man-in-the-middle attack.
- 사용자의 전자서명의 위조가 불가능하고, 수학적으로 안전성이 증명 가능한 인증 프로토콜을 설계하는 것을 목적으로 한다. 즉, 다항시간 공격자에 대하여 PKI 인증 과정이 안전하여 사용자의 전자서명의 위조가 불가능하고, 인증 결과값을 생성할 때 사용하는 메시지 인증 코드(Message Authentication Code, MAC) 생성 알고리즘이 의사난수생성 함수라는 가정하에 수학적으로 안전성이 증명 가능한 인증 프로토콜을 설계할 수 있다.- It is aimed to design an authentication protocol that can not be falsified of a user's digital signature and can prove mathematically secure. That is, the PKI authentication process is secure for a multinomial time attacker, and the message authentication code (MAC) generation algorithm used for generating the authentication result value is not a pseudo-random number generation function It is possible to design an authentication protocol that can prove mathematically secure under the assumption.
- 재사용 공격 또는 중간자 공격에 대해 안전한 프로토콜을 설계하는 것을 목적으로 한다. 즉, 사용자(클라이언트), 웹 서버, 인증 서버 총 세 개의 개체가 인증을 위해 상호 통신하는 과정에서 악의적인 공격자가 피싱(Phishing) 사이트로 사용자를 유도하여 인증 결과값을 획득하는 URL 조작 공격이나 공격자가 인증 결과값을 얻은 후 차후에 재사용하여 정당한 사용자인 것처럼 인증 과정을 통과하는 재사용 공격(Replay Attack)에 대해 안전한 프로토콜을 설계할 수 있다. 또한, 공격자가 중간에 개입하여 사용자 대신 인증 과정을 통과하려는 중간자 공격(Man In The Middle Attack, MITM)에 대해 안전한 프로토콜을 설계할 수 있다.- It is aimed to design a secure protocol for reuse attacks or man-in-the-middle attacks. In other words, a malicious attacker who steers a user to a phishing site and acquires the authentication result value in the process of mutual communication between the user (client), the web server, and the authentication server, It is possible to design a secure protocol for a replay attack that passes the authentication process as if it is a legitimate user by reusing it after obtaining the authentication result value. In addition, a secure protocol can be designed for Man In The Middle Attack (MITM), where an attacker intervenes and passes authentication on behalf of the user.
전술된 본 발명에서 해결하고자 하는 과제를 달성하기 위한 구체적인 수단과 관련하여, 도 1은 본 발명에 따른 복수의 사용자 단말(클라이언트)과 복수의 웹 서버 및 인증 서버를 포함하는 통합 인증 시스템을 도시한다. 또한, 도 2는 본 발명에 따른 통합 인증 시스템의 인증 서버에 의해 수행되는 통합 인증 방법의 흐름도를 도시한다.1 shows an integrated authentication system including a plurality of user terminals (clients), a plurality of web servers, and an authentication server according to the present invention in accordance with the above- . 2 shows a flowchart of an integrated authentication method performed by the authentication server of the integrated authentication system according to the present invention.
도 1을 참조하면, 인증 시스템(1000)은 복수의 사용자 단말(클라이언트)(100), 복수의 웹 서버(200) 및 인증 서버(300)를 포함한다. 또한, 클라이언트(100)는 제1 및 제2 클라이언트(110, 120)를 포함하고, 웹 서버(200)는 제1 및 제2 웹 서버(210, 220)를 포함할 수 있다.Referring to FIG. 1, an
한편, 도 1에 도시된 인증 시스템(1000)의 각 구성 요소들을 고려한 기술적 특징에 대해 간략하게 살펴보면 다음과 같다.The technical features of the
- 본 발명에서, 웹 서버(200)에 의해 제공되는 웹 사이트는 인증된 사용자에게 서비스를 제공하며, 사용자 인증을 인증 서버(300)에 위임한다. 각 웹 사이트로부터 사용자 인증을 위임받은 인증 서버(300)가 공인인증서를 이용하여 통합 인증 서비스를 제공하는 인증기술이 제공된다.- In the present invention, the web site provided by the
도 2에 도시된 바와 같이, 상기 통합 인증 방법은 웹 사이트 등록 과정(S100), 사용자 공인인증서 저장 과정(S200) 및 사용자 인증 과정(S300)을 포함할 수 있다.As shown in FIG. 2, the integrated authentication method may include a website registration process (S100), a user certificate storage process (S200), and a user authentication process (S300).
- 먼저, 웹 사이트 등록 과정(S100)에서 웹 사이트는 인증 서버(300)가 제공하는 통합 인증 서비스를 이용하기 위해 사전에 웹 사이트 등록 과정을 거쳐야 하며, 이 과정에서 인증 서버에 Redirect_URL을 등록하고 대칭키 암호화키(kenc)를 발급받는다. 상기 암호화키(kenc)는 인증 서버(300)가 인증 결과값을 생성하거나 웹 서버(200)가 상기 인증 결과값을 복호화하는 과정에서 이용될 수 있으며, 웹 사이트(또는 웹 서버(200))와 인증 서버(300)는 이 키를 안전하게 관리해야 한다. 또한, 사용자 공인인증서 저장 과정(S200)에서 사용자(사용자 단말 또는 클라이언트)는 웹 표준 기반 통합 인증 환경에서 동일 출처 정책의 문제를 해결하기 위해 인증 서버 도메인의 로컬 스토리지에 자신의 공인인증서를 저장한다. 여기서, 상기 인증 서버 도메인의 로컬 스토리지는 단말(클라이언트) 영역에 해당한다. 보다 상세하게는, 인증 서버 도메인의 로컬 스토리지는 웹 브라우저가 접근 가능한 브라우저 저장 공간인 웹 스토리지(Web Storage)의 로컬 스토리지(Local Storage)에 해당할 수 있다. 웹 스토리지는 브라우저 내의 저장 공간으로, 기존의 쿠키의 역할을 대체하는 HTML5 표준기술 중 하나이다. 웹 스토리지를 통해 데이터를 키-값(Key-Value) 형태로 저장하며 사용자의 컴퓨터에 자바 스크립트를 이용해 접근 및 통제할 수 있다. 웹 스토리지는 세션 스토리지(Session Storage)와 로컬 스토리지로 구분된다. 세션 스토리지는 단일 세션에서만 사용되어 브라우저를 종료할 경우 데이터가 삭제되는 임시 저장 공간에 해당한다. 반면에, 로컬 스토리지는 세션 스토리지와 브라우저를 종료해도 데이터가 삭제되지 않고 동일한 도메인에서 계속 사용 가능한 저장 공간에 해당한다. 동일한 도메인은 로컬 스토리지를 공유하며, 동일 출처 정책으로 인해 도메인이 다를 경우 서로의 로컬 스토리지에 접근할 수 없다. 따라서 데이터의 성격에 따라 적절한 스토리지를 사용해야 한다.First, in the website registration process (S100), the web site has to register the web site in advance in order to use the integrated authentication service provided by the
사용자 인증 과정(S300)에서 사용자(사용자 단말 또는 클라이언트)가 웹 사이트에 로그인하기 위해 웹 사이트(또는 상기 웹 사이트를 제공하는 웹 서버)에 접속하면 웹 사이트는 사용자를 인증 서버(300)로 리다이렉트하고, 사용자(단말)는 인증 서버(300)와 공인인증서를 이용한 사용자 인증 과정을 진행하게 된다. 인증에 성공한다면 인증 서버(300)는 인증 서버(300)와 웹 사이트가 공유하고 있는 대칭키를 이용하여 인증 결과값을 생성한다. 그 이후, 인증 결과값과 함께 사용자를 웹 사이트로 리다이렉트 하고, 웹 사이트는 전달 받은 인증 결과값을 검증한다. 검증이 통과 된다면 사용자(단말)는 웹 사이트에 로그인할 수 있다.In the user authentication process (S300), when the user (user terminal or client) accesses the web site (or the web server providing the web site) to log in to the web site, the web site redirects the user to the
한편, 도 1 및 도 2를 참조하여, 본 발명에 따른 인증 시스템에 대하여 상세히 살펴보면 다음과 같다. 복수의 웹 서버(200) 각각은 복수의 클라이언트(100) 각각으로부터 요청(로그인 요청 또는 인증 요청)을 수신하고, 상기 요청에 응답하여 난수(NW)를 생성하고, 상기 난수(NW)와 함께 사용자를 인증 서버(300)로 리다이렉트할 수 있다. 예컨대, 제1 웹 서버(210)는 제1 클라이언트(110)로부터 수신된 로그인 요청에 응답하여 제1 클라이언트(100)를 인증 서버(300)로 리다이렉트할 수 있다. 이 때, 제1 웹 서버(210)는 상기 난수(NW)와 함께 제1 클라이언트(210)를 인증 서버(300)로 리다이렉트할 수 있다. 즉, 제1 웹 서버(210)는 상기 난수(NW)를 제1 클라이언트(210)를 경유하여 인증 서버(300)로 송신할 수 있다.The authentication system according to the present invention will be described in detail with reference to FIG. 1 and FIG. Each of the plurality of
한편, 인증 수행 방법과 관련하여, 복수의 사용자 각각은 복수의 웹서버(200)에 포함된 임의의 웹 서버가 아닌 인증 서버(300)와의 통신을 통하여 사용자 인증 동작을 수행할 수 있다.Meanwhile, with respect to the authentication performing method, each of the plurality of users can perform the user authentication operation through communication with the
한편, 복수의 웹 서버(200)에 포함된 제1 및 제2 웹 서버(210, 220)는 각각 서로 다른 운영자에 의해 운영되거나, 또는 동일한 운영자에 의해 서로 다른 컨텐츠를 제공하도록 운영될 수 있다. 여기서, 제1 및 제2 웹 서버(210, 220)는 각각 제1 및 제2 웹 사이트(웹 페이지)를 제공할 수 있다. 한편, 제1 및 제2 사용자가 각각 제1 및 제2 웹 서버(210, 220)로 로그인 요청을 전송하거나, 또는 제1 및 제2 웹 서버(210, 220) 중 어느 하나로 로그인 요청을 전송할 수 있다. 즉, 제1 및 제2 사용자는 서로 다른 웹 사이트에 접속하거나 또는 동일한 웹 사이트에 접속할 수 있다.Meanwhile, the first and
한편, 인증 서버(300)는 상기 난수(NW)와 상기 로그인 요청을 상기 복수의 웹 서버(200)로부터 복수의 클라이언트(100)를 경유하여 수신할 수 있다. 또한, 인증 서버(300)는 클라이언트(100)로 제1 난수(NAS)를 제공하고, 클라이언트(100)와 제2 난수(NU) 및 인증관련 정보를 교환하여 사용자 인증을 수행한다. 또한, 인증 서버(300)는 상기 사용자 인증 과정이 완료되면, 상기 난수에 기반하는 인증 결과값을 생성하고 클라이언트(100)를 경유하여(즉, 리다이렉트를 통하여) 웹 서버(200)로 전달할 수 있다.Meanwhile, the
구체적으로, 인증 서버(300)가 제1 웹 서버(310)로부터 제1 클라이언트(110)의 인증을 요청받은 경우, 인증 서버(300)는 제1 난수(NAS)를 생성하고 상기 제1 난수(NAS)를 제1 클라이언트로 송신할 수 있다. 제1 클라이언트(110)는 상기 제1 난수(NAS)의 수신에 응답하여 제1 인증 정보를 인증 서버(300)로 송신한다. 인증 서버(300)는 상기 제1 인증 정보의 수신에 응답하여 상기 제1 인증 정보를 검증한 후 제2 인증 정보를 제1 클라이언트(110)로 송신할 수 있다.Specifically, when the
상기 제1 인증 정보는 상기 제1 난수(NAS), 제2 난수(NU), 인증 서버(300)의 URL(URLAS), 제1 서명값 및 제1 클라이언트(110)의 인증서(CertU) 중 적어도 하나 이상을 포함할 수 있다. 여기서, 제1 클라이언트(110)는 공개키 기반의 전자서명 기법의 서명 알고리즘을 이용하여 상기 제1 서명값을 생성할 수 있으며, 상기 제1 서명값은 제1 클라이언트(110)의 서명키를 이용하여 생성된 상기 제1 난수(NAS), 상기 제2 난수(NU) 및 상기 인증 서버(300)의 URL(URLAS) 중 적어도 하나에 대한 서명값을 의미할 수 있다. 또한, 상기 제2 난수(NU)는 제1 클라이언트(110)에 의해 생성된 임의의 난수를 의미할 수 있다.The first authentication information, the certificate (Cert of the first random number (N AS), the second random number (N U), authentication URL (URL AS) of the
상기 제2 인증 정보는 상기 제2 난수(NU), 상기 제1 난수(NAS), 상기 제1 클라이언트의 IP 주소(IPU), 제2 서명값 및 인증 서버(300)의 인증서(CertAS) 중 적어도 하나 이상을 포함할 수 있다. 여기서, 인증 서버(300)는 공개키 기반의 전자서명 기법의 서명 알고리즘을 이용하여 상기 제2 서명값을 생성할 수 있으며, 상기 제2 서명값은 인증 서버(300)의 서명키를 이용하여 생성된 상기 제1 난수(NAS), 상기 제2 난수(NU) 및 상기 IP 주소(IPU) 중 적어도 하나에 대한 서명값을 의미할 수 있다.The second authentication information includes the second random number N U , the first random number N AS , the IP address IP U of the first client, the second signature value, and the certificate Cert of the authentication server 300 AS ). ≪ / RTI > Here, the
또한, 제1 인증 정보를 수신한 인증 서버(300)는 상기 제1 인증 정보를 검증하고, 제2 인증 정보를 수신한 제1 클라이언트(110)는 상기 제2 인증 정보를 검증할 수 있다. 상기 제1 인증 정보 또는 상기 제2 인증 정보에 대한 검증이 완료되지 않은 경우에는 프로토콜 진행이 중단될 수 있다. 구체적으로, 인증 서버(300)는 공개키 기반 전자서명 기법의 검증 알고리즘을 이용하여 제1 서명값을 검증하고, 제1 클라이언트(110)는 공개키 기반 전자서명 기법의 검증 알고리즘을 이용하여 제2 서명값을 검증할 수 있다. 상기 제1 서명값을 검증하는 과정에는 제1 클라이언트(110)의 공개키가 이용되고, 상기 제2 서명값을 검증하는 과정에는 인증 서버(300)의 공개키가 이용되는데, 상기 제1 클라이언트(300)의 공개키는 제1 클라이언트(110)의 인증서(CertU)로부터 추출될 수 있고, 상기 인증 서버(300)의 공개키는 인증 서버(300)의 인증서(CertAS)로부터 추출될 수 있다.In addition, the
한편, 인증 서버(300)는 전술된 사용자 인증 과정을 수행하기 이전에 웹 사이트 등록 과정 및 사용자 공인인증서 저장 과정을 수행할 수 있다.Meanwhile, the
웹 사이트 등록 과정과 관련하여, 인증 서버(300)는 웹 서버(200)로부터 사용자에 대한 인증이 완료된 후 사용자를 리다이렉트할 웹 사이트의 URL을 의미하는 Redirect URL을 포함하는 등록 요청을 수신하고, 상기 등록 요청에 응답하여 웹 서버(200)에게 대칭키 암호화키(kenc)를 제공할 수 있다. 또한, 인증 서버(300)는 상기 인증 결과값과 웹 서버(200)가 인증 서버(300)에 등록한 상기 Redirect URL을 클라이언트(100)로 제공함으로써 사용자(클라이언트)를 상기 Redirect URL로 리다이렉트할 수 있다.In connection with the web site registration process, the
다음으로, 사용자 공인인증서 저장 과정과 관련하여, 복수의 클라이언트(100) 각각은 인증서를 인증 서버 도메인의 로컬 스토리지에 자신의 인증서를 저장할 수 있다. Next, with respect to the user authorized certificate storing process, each of the plurality of
한편, 웹 서버(200)는 다음과 같은 방법으로 사용자 인증 및 사용자 식별을 위하여 인증 서버(300)와 협업하도록 구성될 수 있다.Meanwhile, the
즉, 웹 서버(200)는 상기 전달된 인증 결과값(Enc(NW, IPU, DNU))을 대칭키 암호화키(kenc)로 복호화하고, 상기 복호화된 인증 결과값에 포함된 난수(NW)가 웹 서버(200)에서 생성된 난수(NW)와 동일한지를 확인한다. 또한, 웹 서버(200)는 상기 복호화된 인증 결과값에 포함된 사용자 IP 주소(IPU)가 웹 서버(200)와 세션을 맺고 있는 클라이언트(100)의 사용자 IP 주소(IPU)와 동일한지를 확인할 수 있다.That is, the
전술된 복호화된 난수(NW)와 사용자 IP 주소(IPU)가 동일한 것으로 확인되면, 해당 클라이언트의 로그인을 승인할 수 있다. 이때, 웹 서버(200)는 복호화된 결과값에 포함되는 상기 사용자의 공인 인증서(CertU)의 식별 정보, 예컨대 상기 사용자의 공인 인증서(CertU)의 고유 식별 번호(DNU)를 이용하여 웹 서버(200)에 접속된 복수의 사용자들(또는 복수의 사용자 단말들) 중 상기 사용자(또는 사용자 단말)를 식별할 수 있다. 웹 서버(200)는 인증 서버(300)로부터 복수의 인증 결과값을 수신할 수 있기 때문에 각각의 인증 결과값에 대응하는 클라이언트를 식별하기 위한 수단이 필요하기 때문이다.If it is confirmed that the decrypted random number (N W ) and the user IP address (IP U ) described above are the same, the login of the client can be approved. At this time, the
이상에서는, 본 발명에 따른 인증서 기반 통합 인증 시스템에서의 각 구성 요소의 동작에 대하여 살펴보았다. 다음에서는 본 발명의 다른 양상에 따른 인증서 기반 통합 인증 방법의 각 단계에서의 절차에 대해 살펴보기로 하자. 한편, 상기 통합 인증 시스템에서 전술된 내용은 후술될 인증서 기반 통합 인증 방법과 결합되어 활용될 수 있음은 물론이다.The operation of each component in the certificate-based integrated authentication system according to the present invention has been described above. Hereinafter, a procedure of each step of the certificate-based integrated authentication method according to another aspect of the present invention will be described. It is a matter of course that the above-described contents in the integrated authentication system can be utilized in combination with the certificate-based integrated authentication method described later.
도 2를 참조하면, 전술된 바와 같이 상기 인증서 기반 통합 인증 방법은 웹 사이트 등록 과정(S100), 사용자 공인인증서 저장 과정(S200) 및 사용자 인증 과정(S300)을 포함한다.Referring to FIG. 2, the certificate-based integrated authentication method includes a website registration process S100, a user certificate storage process S200, and a user authentication process S300, as described above.
한편, 제1 및 제2 웹 서버(210, 220) 중 적어도 하나와 인증 서버(300)는 웹 사이트 등록 과정(S100)을 다음과 같이 수행할 수 있다.Meanwhile, at least one of the first and
[웹 사이트 등록 과정(S100)][Website registration process (S100)]
제1 및 제2 웹 서버(210, 220)가 제공하는 각각의 웹 사이트는 인증 서버(300)가 제공하는 통합 인증 서비스를 이용하기 위해 다음과 같은 웹 사이트 등록과정을 거쳐야 한다. 즉, 도 2에 도시된 바와 같이, 웹 사이트 등록 과정(S100)은 등록 요청 수신 과정(S110) 및 암호화키 제공 과정(S120)을 포함한다.Each of the web sites provided by the first and
(1) 등록 요청 수신 과정(S110): 인증 서버(300)는 웹 서버(200)로부터 리다이렉트할 웹 사이트의 URL에 해당하는 리다이렉트(Redirect) URL에 대한 등록 요청을 수신한다. 이에 따라, 웹 서버(300)는 인증 서버(300)에 Redirect_URL을 등록할 수 있다. 상기 Redirect URL은 사용자 인증이 완료된 후 사용자를 리다이렉트(Redirect)할 웹 사이트의 URL을 의미할 수 있다.(1) Registration Request Reception Process (S110): The
(2) 암호화키 제공 과정(S120): 인증 서버(300)는 등록 요청을 송신한 웹 서버(300)에게 대칭키 암호화키(kenc)를 제공한다. 즉, 인증 서버(300)는 복수의 웹 서버(200) 중 등록 요청을 송신한 웹 서버에게 상기 대칭키 암호화키(kenc)를 제공할 수 있다. 여기서, 상기 대칭키 암호화키(kenc)는 인증 결과값 생성 및 검증과정에 사용되는 값으로, 인증 서버(300)와 웹 사이트를 제공하는 웹 서버(200)에 의해 안전하게 저장되어야 한다.(2) Encryption key providing process (S120): The
다음으로, 클라이언트(100)와 인증 서버(300)는 공인 인증서 저장 단계(S200)를 다음과 같이 수행할 수 있다.Next, the
[사용자 공인인증서 저장 과정(S200)][User Authorized Certificate Storing Process (S200)]
웹 표준을 준수하는 인증서 기반 통합 인증 환경에서 동일 출처 정책의 문제점을 해결하기 위해 서로 다른 사용자는 인증 서버 도메인의 로컬 스토리지에 자신의 공인인증서를 저장한다. 즉, 제1 및 제2클라이언트(110, 120)는 인증 서버 도메인의 로컬 스토리지에 자신의 공인인증서를 저장한다. 여기서, 상기 로컬 스토리지는 단말 내의 저장 공간이고, 웹 브라우저가 접근 가능한 브라우저 저장 공간인 웹 스토리지(Web Storage)의 로컬 스토리지(Local Storage)에 해당할 수 있다.In a certificate-based integrated authentication environment that complies with Web standards, different users store their authorized certificates in the local storage of the authentication server domain to solve the problem of the same origin policy. That is, the first and
다음으로, 상기 인증 서버(300)는 사용자 인증 과정(S300)을 다음과 같이 수행할 수 있다.Next, the
[사용자 인증 과정(S300)][User Authentication Process (S300)]
서로 다른 사용자는 제1 및 제2 클라이언트(110, 120)를 통해 웹 사이트에 로그인하기 위해 웹 서버(200) 및 인증 서버(300)와 아래와 같은 과정을 진행한다. 이와 관련하여, 도 3은 본 발명에 따른 웹 서버, 인증 서버 및 클라이언트 간의 사용자 인증 및 사용자 식별을 위한 신호 흐름도를 도시한다. 한편, 도 4는 본 발명의 일 실시 예에 따른 클라이언트와 인증 서버 간의 사용자 인증에서의 교환되는 메시지의 형태를 포함하는 신호 흐름도를 도시한다.Different users proceed with the following procedure with the
도 2 내지 도 4를 참조하면, 인증 서버(300)에 의해 수행되는 사용자 인증 과정(S300)은 로그인 요청 리다이렉션 과정(S310), 인증정보 교환 과정(S320) 및 인증 결과값 전달 과정(S330)을 포함한다.2 to 4, the user authentication process (S300) performed by the
(1) 로그인 요청 리다이렉션 과정(S310)에서, 복수의 클라이언트(100)로부터 복수의 웹 서버(200)로의 로그인 요청에 응답하여, 웹 서버(200)로부터 상기 로그인 요청의 리다이렉션(Redirection)이 수행된다. 이때, 상기 로그인 요청의 리다이렉션은 웹 서버(200)로부터 클라이언트(100)를 통해 인증 서버(300)로 이루어진다. 한편, 상기 로그인 요청의 리다이렉션에 의해, 웹 서버(200)로부터 생성된 난수(NW)가 인증 서버(300)로 송신될 수 있다.(1) In the login request redirection process (S310), redirection of the login request is performed from the
(2) 인증정보 교환 과정(S320)에서, 상기 인증 서버(300)는 상기 클라이언트(100)로 제1 난수(NAS)를 제공하고, 클라이언트(100)는 상기 제1 난수(NAS)의 수신에 응답하여 제2 난수(NU)를 포함하는 제1 인증 정보를 인증 서버(300)로 송신하고(S321), 인증 서버(300)는 상기 제1 인증 정보의 수신에 응답하여 제2 인증 정보를 클라이언트(100)로 송신(S322)함으로써 사용자 인증 동작을 수행할 수 있다.(2) In the authentication information exchange process (S320), the
한편, 제1 인증 정보에 포함된 제1 서명값(SigU)은 상기 제1 난수(NAS), 상기 제2 난수(NU) 및 상기 인증 서버의 URL(URLAS)에 대한 서명값을 의미할 수 있다. 또한, 제2 인증 정보에 포함된 제2 서명값(SigAS)은 상기 제1 난수(NAS), 상기 제2 난수(NU) 및 상기 사용자의 IP 주소(IPU)에 대한 서명값을 의미할 수 있다.On the other hand, the first signature value Sig U included in the first authentication information includes a signature value for the first random number N AS , the second random number N U , and the URL of the authentication server URL AS It can mean. The second signature value (Sig AS ) included in the second authentication information is a signature value for the first random number (N AS ), the second random number (N U ), and the user's IP address (IP U ) It can mean.
(3) 인증 결과값 전달 과정(S330)에서, 인증 서버(300)는 상기 사용자 인증 과정이 성공되면, 웹 서버(200)에 의해 생성된 난수에 기반하는 인증 결과값(Authentication Result)을 생성하여 클라이언트(100)와 웹 서버(200)로 전달한다. 한편, 상기 인증 결과값 전달 과정(S330)에서, 상기 인증 서버(300)는 상기 인증 결과값과 상기 웹 서버(200)가 상기 인증 서버(300)에 등록한 상기 Redirect URL을 상기 클라이언트(100)로 제공한다. (3) In the authentication result value delivery process (S330), if the user authentication process is successful, the
인증 결과값을 전달받은 웹 서버(200)는 상기 인증 결과값을 인증 서버(300)와 공유하고 있는 암호화키를 이용하여 사용자에 대한 로그인 여부를 결정할 수 있다. 구체적으로, 웹 서버(200)는 전달된 인증 결과값(Enc(NW, IPU, DNU))을 상기 대칭키 암호화키(kenc)로 복호화하고, 복호화된 인증 결과값에 포함된 난수(NW)가 웹 서버(200)에서 생성된 난수(NW)와 동일한지를 확인한다. 다음으로, 웹 서버(200)는 상기 복호화된 인증 결과값에 포함된 사용자 IP 주소(IPU)가 웹 서버(200)와 세션을 맺고 있는 클라이언트(100)의 사용자 IP 주소(IPU)와 동일한지를 확인한다. 상기 복호화된 인증 결과값에 포함된 난수(NW)와 IP 주소(IPU)에 대한 검증이 완료되면 사용자에 대한 로그인 여부를 결정할 수 있다. 즉, 상기 복호화된 인증 결과값에 포함된 난수(NW)가 웹 서버(200)에서 생성된 난수(NW)와 동일하고, 상기 복호화된 인증 결과값에 포함된 사용자 IP 주소(IPU)가 클라이언트(100)의 사용자 IP 주소(IPU)와 동일하다고 판단되면, 웹 서버(200)는 사용자(즉, 클라이언트(100))에 대한 로그인을 허용할 수 있다.The
본 발명의 적어도 일 실시 예에 따르면, 사용자가 하나의 인증 서버 도메인의 로컬 스토리지에 공인인증서를 저장함으로써 사용자의 편의성을 크게 향상시켜 줄 수 있다는 장점이 있다.According to at least one embodiment of the present invention, the convenience of a user can be greatly improved by storing a public certificate in a local storage of a single authentication server domain.
또한, 본 발명의 적어도 일 실시 예에 따르면, 사용자가 웹 사이트가 제공하는 서비스를 이용하기 위해 웹 사이트에게 자신을 인증해야 하는 상황에서, 웹 사이트에게 사용자 인증을 위임받아 처리하는 인증 서버를 새롭게 정의하여 동일 출처 정책의 문제점을 해결한 안전하고 효율적인 프로토콜을 설계할 수 있다는 장점이 있다.According to at least one embodiment of the present invention, in a situation where a user has to authenticate himself / herself to a web site in order to utilize a service provided by the web site, an authentication server that delegates user authentication to the web site and processes the authentication server is newly defined And it is possible to design a safe and efficient protocol that solves the problems of the same source policy.
또한, 본 발명의 적어도 일 실시 예에 따르면, 한 명의 사용자가 다양한 웹 사이트를 이용하는 인터넷 환경에서 안전하고 효율적인 방법으로 공인인증서를 이용하여 사용자를 인증할 수 있는 방법을 제시할 수 있다는 장점이 있다.In addition, according to at least one embodiment of the present invention, there is an advantage that a method of authenticating a user by using a public certificate in a safe and efficient manner in an internet environment using one web site by various users can be provided.
따라서, 본 발명에서는 별도의 프로그램을 추가적으로 설치하지 않고 공인인증서를 이용하여 사용자 인증을 제공하는 기술을 제공하고자 한다. 즉, 본 발명에서 제안하는 기술은 사용자의 편의성을 보장하며 여러 가지 보안위협에서 벗어나게 해주는 매우 안전하고 혁신적인 기술이다. 따라서, 본 발명과 같이 웹 표준을 준수하면서 공인인증서를 이용하여 웹 사이트에 사용자 인증을 제공하는 연구가 반드시 필요하고 할 수 있다.Accordingly, the present invention provides a technique for providing user authentication using a public certificate without additionally installing a separate program. That is, the technology proposed in the present invention is a very safe and innovative technology that ensures user's convenience and helps to avoid various security threats. Therefore, as described in the present invention, it is indispensable to provide a user authentication to a web site using a public certificate while obeying a web standard.
한편, 이러한 본 발명의 향후 활용성과 관련하여, 한국인터넷진흥원의 연구(웹 표준 기반 공인인증 서비스 도입 및 구현 기술 안내서) 내용을 검토하면 다음과 같다. 한국인터넷진흥원의 연구는 ActiveX와 같은 플러그인을 대체하여 공인인증서를 이용한 사용자인증을 적용하기 위해 HTML5와 같이 W3C가 제정한 웹 관련 표준 구현기술만을 활용하여 PKI 기반 인증 시스템을 구현하려는 기술안내서이다. 따라서, 기존의 플러그인이 처리하던 공인인증서 관련 기능이 웹 표준 기술로 구현되어 웹 브라우저가 처리하게 됨으로서, 사용자에게 웹 브라우저만을 이용하여 공인인증서를 이용할 수 있는 환경이 조성될 수 있다. 이와 같은 환경을 조성하기 위하여 서버와 사용자 측면에서 각각 필요한 사항들을 제시하고 있으며 전자서명을 위한 키 쌍 생성 및 암호화, 전자서명 생성 및 검증 등을 위한 암호화 알고리즘 구현 및 인증서 요청 및 응답 메시지 처리 등을 위한 기능 구현을 제시하고 있다. 또한, 다양한 인증서 저장매체를 나열하고 있으며, 이를 통해 웹 표준 기술로 PKI 기반 사용자 인증 시스템을 구현하는 방법을 안내한다. 하지만, 한국인터넷진흥원의 연구는 기존의 플러그인이 처리하던 공인인증서 관련 기능이 웹 표준 기술로 구현되어 웹 브라우저가 처리하는 방법만을 제시하고 있다. 따라서, 한국인터넷진흥원의 연구는 공인인증을 위한 플러그인 없이 사용자 공인인증은 가능하지만, 본 발명과 달리 구체적으로 어떠한 방법으로 사용자 공인인증을 수행할 것인지를 제시하고 있지는 않다. 따라서, 본 발명에서는 동일 출처 정책의 문제를 해결하기 위해 도메인의 로컬 스토리지에 인증서를 저장하여, 여러 웹 사이트의 사용자 인증을 수행할 수 있는 인증 서버를 도입하였다는 점에서 차별화가 가능하다. 또한, 본 발명은 복수의 웹 서버와 복수의 클라이언트 (사용자 단말)과의 협업을 통해 피싱, 재사용 공격 및 중간자 공격에 대해 안전한 프로토콜을 제시하였다는 점에서 차별화가 가능하다.Meanwhile, regarding the future utilization of the present invention, the contents of the study (web standard based authentication certification service introduction and implementation technology guide) of the Korea Internet Promotion Agency are as follows. The study of KISA is a technical guide to implement a PKI based authentication system by using only Web related standard implementation technology established by W3C, such as HTML5, to apply user authentication using public certificate instead of plugin such as ActiveX. Therefore, the functions related to the public key certificate processed by the existing plug-in are implemented by the web standard technology and processed by the web browser, so that an environment in which the public key certificate can be used by using only the web browser can be created. In order to create such an environment, the server and the user are presented with the necessary items, and the key pair generation and encryption for digital signature, the implementation of encryption algorithm for digital signature generation and verification, and the processing of certificate request and response message Function implementation. In addition, various certificate storage media are listed, and through this, a guide to implement a PKI-based user authentication system with web standard technology is introduced. However, the study of Korea Internet Promotion Agency (KISA) suggests the functions of the public certificate that has been processed by the existing plug - Therefore, the research of the KISA can authenticate the user without a plug-in for authentication, but unlike the present invention, it does not suggest how to perform user authentication in detail. Therefore, in order to solve the problem of the same source policy, the present invention can differentiate the authentication server in which the certificate is stored in the local storage of the domain and the authentication of the user of the various websites is performed. In addition, the present invention can differentiate from the point that it presents a secure protocol against phishing, re-use attack and man-in-the-middle attack through collaboration between a plurality of web servers and a plurality of clients (user terminals).
소프트웨어적인 구현에 의하면, 본 명세서에서 설명되는 절차 및 기능뿐만 아니라 각각의 구성 요소들은 별도의 소프트웨어 모듈로도 구현될 수 있다. 상기 소프트웨어 모듈들 각각은 본 명세서에서 설명되는 하나 이상의 기능 및 작동을 수행할 수 있다. 적절한 프로그램 언어로 쓰여진 소프트웨어 어플리케이션으로 소프트웨어 코드가 구현될 수 있다. 상기 소프트웨어 코드는 메모리에 저장되고, 제어부(Controller) 또는 프로세서(Processor)에 의해 실행될 수 있다.According to a software implementation, not only the procedures and functions described herein, but also each component may be implemented as a separate software module. Each of the software modules may perform one or more of the functions and operations described herein. Software code can be implemented in a software application written in a suitable programming language. The software code is stored in a memory and can be executed by a controller or a processor.
100 : 복수의 클라이언트
110 : 제1 클라이언트
120 : 제2 클라이언트
200 : 웹 서버
210 : 제1 웹 서버
220 : 제2 웹 서버
300 : 인증 서버
1000 : 인증 시스템100: Multiple clients
110: first client
120: second client
200: Web server
210: first web server
220: second web server
300: authentication server
1000: Authentication system
Claims (8)
상기 임의의 웹 서버에 의한 상기 임의의 사용자 단말의 리다이렉션(Redirection)을 통해 상기 임의의 웹 서버에 의해 생성된 제1 난수를 수신하는 단계;
상기 인증 서버에 의해 생성된 제2 난수를 상기 임의의 사용자 단말로 송신하는 단계;
상기 임의의 사용자 단말로부터 제1 인증 정보를 수신하는 단계;
상기 임의의 사용자 단말로 제2 인증 정보를 송신하는 단계; 및
상기 임의의 사용자 단말에 대한 인증 결과값을 상기 임의의 웹 서버와 상기 인증 서버가 공유하고 있는 암호화키를 이용하여 암호화하고, 암호화된 인증 결과값을 상기 임의의 사용자 단말의 리다이렉션을 통하여 상기 임의의 웹 서버로 송신하는 단계를 포함하는,
인증서 기반 통합 인증 방법.
A certificate-based integrated authentication method performed by an authentication server which is authorized to perform a user authentication between any one of a plurality of user terminals and a web server among a plurality of web servers,
Receiving a first random number generated by the arbitrary web server through redirection of the arbitrary user terminal by the arbitrary web server;
Transmitting a second random number generated by the authentication server to the arbitrary user terminal;
Receiving first authentication information from the arbitrary user terminal;
Transmitting second authentication information to the arbitrary user terminal; And
Encrypts an authentication result value for the arbitrary user terminal using an encryption key shared by the arbitrary web server and the authentication server, and transmits the encrypted authentication result value to the arbitrary user terminal through the redirecting of the arbitrary user terminal To a web server,
Certificate - based integrated authentication method.
상기 제1 난수를 수신하는 단계 이전에,
상기 임의의 웹 서버로부터 상기 임의의 사용자 단말을 리다이렉트할 상기 임의의 웹 서버의 URL(Uniform Resource Locator) 등록 요청을 수신하는 단계; 및
상기 임의의 웹 서버로 상기 암호화키를 송신하는 단계를 더 포함하고,
상기 임의의 웹 서버로 송신하는 단계는 상기 사용자 단말을 상기 임의의 웹 서버의 URL로 리다이렉트하는,
인증서 기반 통합 인증 방법.
The method according to claim 1,
Before the step of receiving the first random number,
Receiving a Uniform Resource Locator (URL) registration request of the web server to redirect the arbitrary user terminal from the arbitrary web server; And
Further comprising transmitting the encryption key to the arbitrary web server,
Wherein the step of transmitting to the arbitrary web server redirects the user terminal to a URL of the arbitrary web server,
Certificate - based integrated authentication method.
상기 제1 인증 정보는 상기 제2 난수, 상기 임의의 사용자 단말에 의해 생성된 제3 난수, 상기 인증 서버의 URL, 제1 서명값 및 상기 임의의 사용자 단말의 인증서를 포함하고,
상기 임의의 사용자 단말의 인증서는 상기 인증 서버 도메인의 로컬 스토리지(Local Storage)에 저장되어 있고,
상기 제1 서명값은 공개키 기반 전자 서명 기법의 서명 알고리즘을 이용하여 생성된 상기 제2 난수, 상기 제3 난수 및 상기 인증 서버의 URL에 대한 서명값인,
인증서 기반 통합 인증 방법.
3. The method of claim 2,
Wherein the first authentication information includes the second random number, a third random number generated by the arbitrary user terminal, a URL of the authentication server, a first signature value, and a certificate of the arbitrary user terminal,
Wherein the certificate of the user terminal is stored in a local storage of the authentication server domain,
Wherein the first signature value is a signature value for the URL of the authentication server, the second random number generated using the signature algorithm of the public key based electronic signature scheme,
Certificate - based integrated authentication method.
상기 제2 인증 정보를 송신하는 단계는 상기 전자 서명 기법의 검증 알고리즘을 이용하여 상기 제1 서명값을 검증하는 단계를 포함하고,
상기 제2 인증 정보는 상기 제3 난수, 상기 제2 난수, 상기 임의의 사용자 단말의 IP 주소, 제2 서명값 및 상기 인증 서버의 인증서를 포함하고,
상기 제2 서명값은 상기 제2 난수, 상기 제3 난수 및 상기 임의의 사용자 단말의 IP 주소에 대한 서명값인,
인증서 기반 통합 인증 방법.
The method of claim 3,
Wherein the step of transmitting the second authentication information includes verifying the first signature value using a verification algorithm of the digital signature scheme,
The second authentication information includes the third random number, the second random number, the IP address of the arbitrary user terminal, the second signature value, and the certificate of the authentication server,
Wherein the second signature value is a signature value for the second random number, the third random number, and the IP address of the arbitrary user terminal.
Certificate - based integrated authentication method.
상기 인증 결과값은 상기 제1 난수, 상기 임의의 사용자 단말의 IP 주소 및 상기 임의의 사용자 단말의 인증서의 식별 정보를 포함하는,
인증서 기반 통합 인증 방법.
5. The method of claim 4,
Wherein the authentication result value includes the first random number, the IP address of the arbitrary user terminal, and the identification information of the certificate of the arbitrary user terminal.
Certificate - based integrated authentication method.
상기 임의의 웹 서버가 상기 암호화된 인증 결과값을 복호화하는 단계;
상기 임의의 웹 서버가 복호화된 인증 결과값에 포함된 상기 제1 난수와 상기 임의의 웹 서버에 의해 송신된 상기 제1 난수의 동일성 여부를 확인하는 단계;
상기 임의의 웹 서버가 상기 복호화된 인증 결과값에 포함된 상기 임의의 사용자 단말의 IP 주소와 상기 임의의 웹 서버와 세션을 맺고 있는 상기 임의의 사용자 단말의 사용자 주소의 동일성 여부를 확인하는 단계; 및
상기 제1 난수의 동일성과 상기 IP 주소의 동일성인 인정되는 경우, 상기 임의의 웹 서버가 상기 임의의 사용자 단말의 로그인을 허용하는 단계를 더 포함하는,
인증서 기반 통합 인증 방법.
6. The method of claim 5,
Decrypting the encrypted authentication result value by the web server;
Confirming whether or not the first random number included in the decrypted authentication result value of the arbitrary web server matches the first random number transmitted by the arbitrary web server;
Confirming whether or not the arbitrary web server identifies the IP address of the arbitrary user terminal included in the decrypted authentication result value and the user address of the arbitrary user terminal that has a session with the arbitrary web server; And
Further comprising: allowing any web server to log in any of the user terminals if the identity of the first random number and the identity of the IP address are recognized.
Certificate - based integrated authentication method.
상기 임의의 웹 서버는 상기 복호화된 인증 결과값에 포함된 상기 임의의 사용자 단말의 인증서의 식별 정보를 이용하여 상기 임의의 웹 서버에 접속된 상기 복수의 사용자 단말들 중 상기 임의의 사용자 단말을 식별하는,
인증서 기반 통합 인증 방법.
The method according to claim 6,
Wherein the arbitrary web server identifies the arbitrary user terminal among the plurality of user terminals connected to the arbitrary web server using the identification information of the certificate of the arbitrary user terminal included in the decrypted authentication result value doing,
Certificate - based integrated authentication method.
상기 인증 서버는,
상기 임의의 웹 서버에 의한 상기 임의의 사용자 단말의 리다이렉션(Redirection)을 통해 상기 임의의 웹 서버에 의해 생성된 제1 난수를 수신하고,
제2 난수를 상기 임의의 사용자 단말로 송신하고,
상기 임의의 사용자 단말로부터 제1 인증 정보를 수신하고,
상기 임의의 사용자 단말로 제2 인증 정보를 송신하고,
상기 임의의 사용자 단말에 대한 인증 결과값을 상기 임의의 웹 서버와 상기 인증 서버가 공유하고 있는 암호화키를 이용하여 암호화하고, 암호화된 인증 결과값을 상기 임의의 사용자 단말의 리다이렉션을 통하여 상기 임의의 웹 서버로 송신하는,
인증서 기반 통합 인증 시스템.1. A certificate-based integrated authentication system comprising a plurality of web servers, and an authentication server which is authorized to perform user authentication between any one of a plurality of user terminals and a web server among the plurality of web servers,
The authentication server includes:
Receiving a first random number generated by the arbitrary web server through redirection of the arbitrary user terminal by the arbitrary web server,
Transmits a second random number to the arbitrary user terminal,
Receiving first authentication information from the arbitrary user terminal,
Transmitting the second authentication information to the arbitrary user terminal,
Encrypts an authentication result value for the arbitrary user terminal using an encryption key shared by the arbitrary web server and the authentication server, and transmits the encrypted authentication result value to the arbitrary user terminal through the redirecting of the arbitrary user terminal To send to the web server,
Certificate - based integrated authentication system.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020170026125A KR101962349B1 (en) | 2017-02-28 | 2017-02-28 | Consolidated Authentication Method based on Certificate |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020170026125A KR101962349B1 (en) | 2017-02-28 | 2017-02-28 | Consolidated Authentication Method based on Certificate |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20180099992A KR20180099992A (en) | 2018-09-06 |
KR101962349B1 true KR101962349B1 (en) | 2019-03-27 |
Family
ID=63593844
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020170026125A KR101962349B1 (en) | 2017-02-28 | 2017-02-28 | Consolidated Authentication Method based on Certificate |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR101962349B1 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20210007687A (en) | 2019-07-12 | 2021-01-20 | 사단법인 금융보안원 | Integrated authentication and data providing method and apparatus for personal data utilization service |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101265873B1 (en) * | 2005-08-22 | 2013-05-20 | 마이크로소프트 코포레이션 | Distributed single sign-on service |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1830190A (en) * | 2003-07-29 | 2006-09-06 | 汤姆森特许公司 | Controlling access to a network using redirection |
KR100750214B1 (en) * | 2005-02-15 | 2007-08-17 | 권도균 | Log-in Method Using Certificate |
-
2017
- 2017-02-28 KR KR1020170026125A patent/KR101962349B1/en active IP Right Grant
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101265873B1 (en) * | 2005-08-22 | 2013-05-20 | 마이크로소프트 코포레이션 | Distributed single sign-on service |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20210007687A (en) | 2019-07-12 | 2021-01-20 | 사단법인 금융보안원 | Integrated authentication and data providing method and apparatus for personal data utilization service |
Also Published As
Publication number | Publication date |
---|---|
KR20180099992A (en) | 2018-09-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109561066B (en) | Data processing method and device, terminal and access point computer | |
US9537861B2 (en) | Method of mutual verification between a client and a server | |
CN109088889B (en) | SSL encryption and decryption method, system and computer readable storage medium | |
US8590027B2 (en) | Secure authentication in browser redirection authentication schemes | |
US8532620B2 (en) | Trusted mobile device based security | |
CA2812847C (en) | Mobile handset identification and communication authentication | |
US20090307486A1 (en) | System and method for secured network access utilizing a client .net software component | |
CN111901346B (en) | Identity authentication system | |
US11323433B2 (en) | Digital credential management method and device | |
CN105656862B (en) | Authentication method and device | |
CN109716725B (en) | Data security system, method of operating the same, and computer-readable storage medium | |
CN102811225B (en) | A kind of SSL middle-agent accesses method and the switch of WEB resource | |
CN103220303A (en) | Server login method, server and authentication equipment | |
JP2016521029A (en) | Network system comprising security management server and home network, and method for including a device in the network system | |
CN113411187A (en) | Identity authentication method and system, storage medium and processor | |
CN107566393A (en) | A kind of dynamic rights checking system and method based on trust certificate | |
JP2009118110A (en) | Method and system for provisioning meta data of authentication system, its program and recording medium | |
CN103716280A (en) | Data transmission method, server and system | |
JP5186648B2 (en) | System and method for facilitating secure online transactions | |
Arnedo-Moreno et al. | Secure communication setup for a P2P-based JXTA-overlay platform | |
KR101856530B1 (en) | Encryption system providing user cognition-based encryption protocol and method for processing on-line settlement, security apparatus and transaction approval server using thereof | |
KR101962349B1 (en) | Consolidated Authentication Method based on Certificate | |
CN114500074B (en) | Single-point system security access method and device and related equipment | |
CN106169990A (en) | A kind of encrypt data on flows monitoring method, Apparatus and system | |
KR20170111809A (en) | Bidirectional authentication method using security token based on symmetric key |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |