KR102643163B1 - Service providing server that can collect and provide personal site use history information on the website through third-party authentication and operating method thereof - Google Patents

Service providing server that can collect and provide personal site use history information on the website through third-party authentication and operating method thereof Download PDF

Info

Publication number
KR102643163B1
KR102643163B1 KR1020210189736A KR20210189736A KR102643163B1 KR 102643163 B1 KR102643163 B1 KR 102643163B1 KR 1020210189736 A KR1020210189736 A KR 1020210189736A KR 20210189736 A KR20210189736 A KR 20210189736A KR 102643163 B1 KR102643163 B1 KR 102643163B1
Authority
KR
South Korea
Prior art keywords
authentication
user
polynomial
user terminal
site
Prior art date
Application number
KR1020210189736A
Other languages
Korean (ko)
Other versions
KR20230100120A (en
Inventor
김상수
정남기
고경환
김원식
송태현
우은정
Original Assignee
주식회사 올라핀테크
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 올라핀테크 filed Critical 주식회사 올라핀테크
Priority to KR1020210189736A priority Critical patent/KR102643163B1/en
Publication of KR20230100120A publication Critical patent/KR20230100120A/en
Application granted granted Critical
Publication of KR102643163B1 publication Critical patent/KR102643163B1/en

Links

Images

Classifications

    • 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
    • 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/0884Network 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/535Tracking the activity of the user

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • Information Transfer Between Computers (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

본 발명은 제3자 대행 인증을 통해 웹 사이트에 대한 개인의 사이트 이용 이력 정보를 수집하여 제공할 수 있는 서비스 제공 서버 및 그 동작 방법을 제시함으로써, 특정 웹 사이트에 대한 개인의 사이트 이용 이력 정보의 수집이 가능하도록 지원할 수 있다.The present invention proposes a service providing server and its operation method that can collect and provide an individual's site usage history information on a website through third-party agency authentication, thereby providing an individual's site usage history information on a specific website. We can provide support to enable collection.

Description

제3자 대행 인증을 통해 웹 사이트에 대한 개인의 사이트 이용 이력 정보를 수집하여 제공할 수 있는 서비스 제공 서버 및 그 동작 방법{SERVICE PROVIDING SERVER THAT CAN COLLECT AND PROVIDE PERSONAL SITE USE HISTORY INFORMATION ON THE WEBSITE THROUGH THIRD-PARTY AUTHENTICATION AND OPERATING METHOD THEREOF}A service provision server that can collect and provide personal site usage history information on a website through third-party agency authentication and its operating method {SERVICE PROVIDING SERVER THAT CAN COLLECT AND PROVIDE PERSONAL SITE USE HISTORY INFORMATION ON THE WEBSITE THROUGH THIRD -PARTY AUTHENTICATION AND OPERATING METHOD THEREOF}

본 발명은 제3자 대행 인증을 통해 웹 사이트에 대한 개인의 사이트 이용 이력 정보를 수집하여 제공할 수 있는 서비스 제공 서버 및 그 동작 방법에 대한 것이다.The present invention relates to a service providing server that can collect and provide information on an individual's site usage history for a website through third-party proxy authentication and a method of operating the same.

최근, 서로 다른 웹 사이트들에서의 개인의 사이트 이용 이력 정보를 수집하여 제공하는 통합 정보 관리 서비스에 대한 관심이 증폭되고 있다. 이러한 서비스의 일종으로 금융권에서는, 다양한 웹 사이트들에 산재되어 있는 개인의 신용카드 결제 이력이나, 계좌 이체 이력 등과 같은 사이트 이용 이력 정보를 수집하여 개인에게 제공하는 '마이데이터'라고 하는 서비스가 큰 관심을 받으면서 출시되고 있다.Recently, interest in integrated information management services that collect and provide information on an individual's site usage history from different websites is growing. As a type of such service, in the financial sector, there is great interest in a service called 'My Data', which collects site usage history information such as an individual's credit card payment history or account transfer history scattered across various websites and provides it to the individual. It is being released as it receives.

아울러, 최근에는 한국등록특허 제10-2153405호에 개시된 바와 같이, 특정 온라인 쇼핑몰에 등록된 상품 판매자의 상품 판매 대금 채권을 선정산 처리해 주는 서비스도 등장하고 있다. 이러한 선정산 처리 서비스는 서비스를 제공하는 운영사가, 해당 온라인 쇼핑몰에 접속하여, 온라인 쇼핑몰에 등록되어 있는 상품 판매자의 상품 판매 대금 채권을 조회해야 한다는 점에서, 이러한 선정산 처리 서비스에는 앞서 언급한 특정 웹 사이트에서의 개인의 사이트 이용 이력 정보를 수집하는 서비스가 포함되어 있다고 볼 수 있다.In addition, recently, as disclosed in Korean Patent No. 10-2153405, a service that processes the product sales payment claim of a product seller registered in a specific online shopping mall has also appeared. This pre-calculation processing service requires the operator providing the service to access the relevant online shopping mall and check the product sales receivables of the product seller registered in the online shopping mall. This pre-calculation processing service includes the specific items mentioned above. It can be seen that the website includes a service that collects information on an individual's site usage history.

이렇게, 특정 웹 사이트에서의 사이트 이용 이력 정보를 수집하여 사용자에게 제공하는 서비스를 운영하기 위해서는, 서비스를 운영하는 운영사에서 사용자를 대신하여 웹 사이트에 접속한 후, 해당 웹 사이트로부터 사용자에 대한 사이트 이용 이력 정보를 받아야 하기 때문에, 이 서비스 운영사가 사용자를 대신하여 상기 웹 사이트에 접근할 수 있는 권한을 갖는 운영사가 맞음을 확인하기 위한 제3자 대행 인증이 수반될 필요가 있다.In this way, in order to collect site usage history information on a specific website and operate a service provided to the user, the service operator must access the website on behalf of the user, and then use the website for the user from the website. Because history information must be received, third-party authentication needs to be carried out to confirm that the service operator is the one authorized to access the website on behalf of the user.

예컨대, 특정 온라인 쇼핑몰의 사이트에서 특정 개인의 사이트 이용 이력 정보를 서비스 운영사가 획득하기 위해서는, 상기 서비스 운영사가 해당 개인의 온라인 쇼핑몰 사이트의 로그인 인증 정보를 제대로 확보하고 있는 서비스 운영사가 맞는지 여부를 확인하는 제3자 대행 인증이 수행되어야 한다. 적절한 제3자 대행 인증이 수행되지 않는다면, 개인 정보가 무분별하게 노출될 수 있는 위험성이 존재하기 때문이다.For example, in order for a service operator to obtain site usage history information of a specific individual from a specific online shopping mall site, it is necessary to check whether the service operator is the service operator that properly secures the login authentication information for the online shopping mall site of the individual. Third party proxy certification must be performed. If proper third-party authentication is not performed, there is a risk that personal information may be exposed indiscriminately.

따라서, 적절한 제3자 대행 인증을 통해, 특정 웹 사이트에 대한 개인의 사이트 이용 이력 정보를 수집하여 제공할 수 있는 서비스 기술에 대한 연구가 필요하다.Therefore, research is needed on service technology that can collect and provide information on an individual's site usage history for a specific website through appropriate third-party agency authentication.

본 발명은 적절한 제3자 대행 인증을 통해, 특정 웹 사이트에 대한 개인의 사이트 이용 이력 정보를 수집할 수 있는 서비스 기술을 제시하고자 한다.The present invention seeks to present a service technology that can collect an individual's site usage history information for a specific website through appropriate third-party agency authentication.

본 발명의 일실시예에 따른 제3자 대행 인증을 통해 웹 사이트에 대한 개인의 사이트 이용 이력 정보를 수집하여 제공할 수 있는 서비스 제공 서버는 사전 설정된 웹 사이트에 대한, 제3자 대행 인증에 동의를 완료한 사람으로 지정된 복수의 사용자들 중, 제1 사용자가 보유하고 있는 제1 사용자 단말로부터, 제1 기간 동안의 상기 웹 사이트에 대한 상기 제1 사용자의 사이트 이용 이력 정보의 수집 명령이 수신되면, 상기 제1 사용자가 제3자 대행 인증에 동의를 완료한 사용자가 맞는지 여부에 대한 사용자 인증을 진행한 후, 상기 제1 사용자 단말로, 상기 웹 사이트로의 로그인을 위한 상기 제1 사용자의 로그인 인증 정보를 전송할 것을 요청하는 인증 정보 요청부, 상기 제1 사용자 단말로부터, 상기 제1 사용자의 상기 웹 사이트로의 로그인을 위한 제1 로그인 인증 정보가 수신되면, 상기 웹 사이트에 대한 사이트 운영 서버에 접속하여, 상기 사이트 운영 서버로 상기 제1 로그인 인증 정보를 전송함으로써, 상기 제1 사용자의 상기 웹 사이트에 대한 제3자 대행 인증을 완료한 후, 상기 사이트 운영 서버로, 상기 제1 사용자의 상기 제1 기간 동안의 상기 웹 사이트에 대한 사이트 이용 이력에 대한 정보를 수집하여 회신할 것을 요청하는 이력 정보 요청부 및 상기 사이트 운영 서버로부터, 상기 제1 사용자의 상기 제1 기간 동안의 상기 웹 사이트에 대한 사이트 이용 이력에 대한 정보로서, 제1 사이트 이용 이력 정보가 수집되어 회신되면, 상기 제1 사이트 이용 이력 정보를 상기 제1 사용자 단말로 전송하는 이력 정보 전송부를 포함한다.According to an embodiment of the present invention, the service providing server, which can collect and provide information on an individual's site usage history for a website through third-party proxy authentication, consents to third-party proxy authentication for a pre-set website. When a command to collect site usage history information of the first user for the website during a first period is received from a first user terminal owned by the first user among a plurality of users designated as people who have completed After performing user authentication on whether the first user is a user who has consented to third-party authentication, the first user logs in to the website using the first user terminal. When first login authentication information for logging in to the website of the first user is received from the authentication information request unit, the first user terminal, requesting transmission of authentication information, it is sent to the site operation server for the website. After completing third-party proxy authentication for the website of the first user by connecting and transmitting the first login authentication information to the site operation server, From the history information request unit and the site operation server that collects information on the site usage history of the website during the first period and requests a response, to the website during the first period of the first user. As information about the site usage history, when the first site usage history information is collected and returned, it includes a history information transmission unit that transmits the first site usage history information to the first user terminal.

또한, 본 발명의 일실시예에 따른 제3자 대행 인증을 통해 웹 사이트에 대한 개인의 사이트 이용 이력 정보를 수집하여 제공할 수 있는 서비스 제공 서버의 동작 방법은 사전 설정된 웹 사이트에 대한, 제3자 대행 인증에 동의를 완료한 사람으로 지정된 복수의 사용자들 중, 제1 사용자가 보유하고 있는 제1 사용자 단말로부터, 제1 기간 동안의 상기 웹 사이트에 대한 상기 제1 사용자의 사이트 이용 이력 정보의 수집 명령이 수신되면, 상기 제1 사용자가 제3자 대행 인증에 동의를 완료한 사용자가 맞는지 여부에 대한 사용자 인증을 진행한 후, 상기 제1 사용자 단말로, 상기 웹 사이트로의 로그인을 위한 상기 제1 사용자의 로그인 인증 정보를 전송할 것을 요청하는 단계, 상기 제1 사용자 단말로부터, 상기 제1 사용자의 상기 웹 사이트로의 로그인을 위한 제1 로그인 인증 정보가 수신되면, 상기 웹 사이트에 대한 사이트 운영 서버에 접속하여, 상기 사이트 운영 서버로 상기 제1 로그인 인증 정보를 전송함으로써, 상기 제1 사용자의 상기 웹 사이트에 대한 제3자 대행 인증을 완료한 후, 상기 사이트 운영 서버로, 상기 제1 사용자의 상기 제1 기간 동안의 상기 웹 사이트에 대한 사이트 이용 이력에 대한 정보를 수집하여 회신할 것을 요청하는 단계 및 상기 사이트 운영 서버로부터, 상기 제1 사용자의 상기 제1 기간 동안의 상기 웹 사이트에 대한 사이트 이용 이력에 대한 정보로서, 제1 사이트 이용 이력 정보가 수집되어 회신되면, 상기 제1 사이트 이용 이력 정보를 상기 제1 사용자 단말로 전송하는 단계를 포함한다.In addition, the method of operating a service providing server that can collect and provide information on an individual's site use history for a website through third-party proxy authentication according to an embodiment of the present invention is for a preset website, a third party Among the plurality of users designated as persons who have completed consent to proxy authentication, the first user's site use history information for the website during the first period is obtained from the first user terminal owned by the first user. When a collection command is received, user authentication is performed to determine whether the first user is a user who has consented to third-party proxy authentication, and then the first user terminal is used to log in to the website. Requesting to transmit login authentication information of a first user, when first login authentication information for logging in to the website of the first user is received from the first user terminal, site operation for the website After completing third-party proxy authentication for the website of the first user by connecting to the server and transmitting the first login authentication information to the site operation server, to the site operation server, the first user requesting a response by collecting information about the site usage history of the website during the first period, and receiving information about the website of the first user during the first period from the site operation server. As information on site usage history, when first site usage history information is collected and returned, the method includes transmitting the first site usage history information to the first user terminal.

본 발명은 제3자 대행 인증을 통해 웹 사이트에 대한 개인의 사이트 이용 이력 정보를 수집하여 제공할 수 있는 서비스 제공 서버 및 그 동작 방법을 제시함으로써, 특정 웹 사이트에 대한 개인의 사이트 이용 이력 정보의 수집이 가능하도록 지원할 수 있다.The present invention proposes a service providing server and its operation method that can collect and provide an individual's site usage history information on a website through third-party agency authentication, thereby providing an individual's site usage history information on a specific website. We can provide support to enable collection.

도 1은 본 발명의 일실시예에 따른 제3자 대행 인증을 통해 웹 사이트에 대한 개인의 사이트 이용 이력 정보를 수집하여 제공할 수 있는 서비스 제공 서버의 구조를 도시한 도면이다.
도 2는 본 발명의 일실시예에 따른 제3자 대행 인증을 통해 웹 사이트에 대한 개인의 사이트 이용 이력 정보를 수집하여 제공할 수 있는 서비스 제공 서버의 동작 방법을 도시한 순서도이다.
Figure 1 is a diagram illustrating the structure of a service providing server that can collect and provide information on an individual's site usage history for a website through third-party proxy authentication according to an embodiment of the present invention.
Figure 2 is a flowchart showing the operation method of a service providing server that can collect and provide information on an individual's site usage history for a website through third-party proxy authentication according to an embodiment of the present invention.

이하에서는 본 발명에 따른 실시예들을 첨부된 도면을 참조하여 상세하게 설명하기로 한다. 이러한 설명은 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 각 도면을 설명하면서 유사한 참조부호를 유사한 구성요소에 대해 사용하였으며, 다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 본 명세서 상에서 사용되는 모든 용어들은 본 발명이 속하는 기술분야에서 통상의 지식을 가진 사람에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다.Hereinafter, embodiments according to the present invention will be described in detail with reference to the attached drawings. This description is not intended to limit the present invention to specific embodiments, but should be understood to include all changes, equivalents, and substitutes included in the spirit and technical scope of the present invention. In describing each drawing, similar reference numerals are used for similar components, and unless otherwise defined, all terms used in this specification, including technical or scientific terms, are within the scope of common knowledge in the technical field to which the present invention pertains. It has the same meaning as generally understood by those who have it.

본 문서에서, 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있다는 것을 의미한다. 또한, 본 발명의 다양한 실시예들에 있어서, 각 구성요소들, 기능 블록들 또는 수단들은 하나 또는 그 이상의 하부 구성요소로 구성될 수 있고, 각 구성요소들이 수행하는 전기, 전자, 기계적 기능들은 전자회로, 집적회로, ASIC(Application Specific Integrated Circuit) 등 공지된 다양한 소자들 또는 기계적 요소들로 구현될 수 있으며, 각각 별개로 구현되거나 2 이상이 하나로 통합되어 구현될 수도 있다.In this document, when a part "includes" a certain component, this means that it may further include other components rather than excluding other components, unless specifically stated to the contrary. Additionally, in various embodiments of the present invention, each component, functional block, or means may be composed of one or more subcomponents, and the electrical, electronic, and mechanical functions performed by each component may be electronic. It may be implemented with various known elements or mechanical elements such as circuits, integrated circuits, and ASICs (Application Specific Integrated Circuits), and may be implemented separately or by integrating two or more into one.

한편, 첨부된 블록도의 블록들이나 흐름도의 단계들은 범용 컴퓨터, 특수용 컴퓨터, 휴대용 노트북 컴퓨터, 네트워크 컴퓨터 등 데이터 프로세싱이 가능한 장비의 프로세서나 메모리에 탑재되어 지정된 기능들을 수행하는 컴퓨터 프로그램 명령들(instructions)을 의미하는 것으로 해석될 수 있다. 이들 컴퓨터 프로그램 명령들은 컴퓨터 장치에 구비된 메모리 또는 컴퓨터에서 판독 가능한 메모리에 저장될 수 있기 때문에, 블록도의 블록들 또는 흐름도의 단계들에서 설명된 기능들은 이를 수행하는 명령 수단을 내포하는 제조물로 생산될 수도 있다. 아울러, 각 블록 또는 각 단계는 특정된 논리적 기능(들)을 실행하기 위한 하나 이상의 실행 가능한 명령들을 포함하는 모듈, 세그먼트 또는 코드의 일부를 나타낼 수 있다. 또, 몇 가지 대체 가능한 실시예들에서는 블록들 또는 단계들에서 언급된 기능들이 정해진 순서와 달리 실행되는 것도 가능함을 주목해야 한다. 예컨대, 잇달아 도시되어 있는 두 개의 블록들 또는 단계들은 실질적으로 동시에 수행되거나, 역순으로 수행될 수 있으며, 경우에 따라 일부 블록들 또는 단계들이 생략된 채로 수행될 수도 있다.Meanwhile, the blocks in the attached block diagram or the steps in the flow chart are computer program instructions that are mounted on the processor or memory of equipment capable of data processing, such as general-purpose computers, special-purpose computers, portable laptop computers, and network computers, and perform designated functions. It can be interpreted to mean. Because these computer program instructions can be stored in a memory provided in a computer device or in a computer-readable memory, the functions described in the blocks of a block diagram or the steps of a flow diagram can be produced as a manufactured product containing instruction means to perform them. It could be. In addition, each block or each step may represent a module, segment, or portion of code that includes one or more executable instructions for executing specified logical function(s). Additionally, it should be noted that in some alternative embodiments, it is possible for functions mentioned in blocks or steps to be executed in a different order. For example, two blocks or steps shown in succession may be performed substantially simultaneously or in reverse order, and in some cases, some blocks or steps may be omitted.

도 1은 본 발명의 일실시예에 따른 제3자 대행 인증을 통해 웹 사이트에 대한 개인의 사이트 이용 이력 정보를 수집하여 제공할 수 있는 서비스 제공 서버의 구조를 도시한 도면이다.Figure 1 is a diagram illustrating the structure of a service providing server that can collect and provide information on an individual's site usage history for a website through third-party proxy authentication according to an embodiment of the present invention.

도 1을 참조하면, 본 발명에 따른 서비스 제공 서버(110)는 인증 정보 요청부(111), 이력 정보 요청부(112) 및 이력 정보 전송부(113)를 포함한다.Referring to FIG. 1, the service providing server 110 according to the present invention includes an authentication information request unit 111, a history information request unit 112, and a history information transmission unit 113.

인증 정보 요청부(111)는 사전 설정된 웹 사이트에 대한, 제3자 대행 인증에 동의를 완료한 사람으로 지정된 복수의 사용자들 중, 제1 사용자(10)가 보유하고 있는 제1 사용자 단말(101)로부터, 제1 기간 동안의 상기 웹 사이트에 대한 상기 제1 사용자의 사이트 이용 이력 정보의 수집 명령이 수신되면, 상기 제1 사용자(10)가 제3자 대행 인증에 동의를 완료한 사용자가 맞는지 여부에 대한 사용자 인증을 진행한 후, 제1 사용자 단말(101)로, 상기 웹 사이트로의 로그인을 위한 상기 제1 사용자(10)의 로그인 인증 정보를 전송할 것을 요청한다.The authentication information request unit 111 is a first user terminal 101 owned by the first user 10 among a plurality of users designated as people who have completed consent to third-party proxy authentication for a preset website. ), when an order to collect the site usage history information of the first user for the website during the first period is received, whether the first user 10 is a user who has completed consent to third-party proxy authentication After performing user authentication, a request is made to the first user terminal 101 to transmit the login authentication information of the first user 10 for logging in to the website.

여기서, 사전 설정된 웹 사이트란, 온라인 쇼핑몰 사이트, 은행 사이트, 온라인 게임 서비스 제공 사이트, 포털 사이트 등과 같은 소정의 웹 서비스를 제공하는 사이트를 의미하고, 로그인 인증 정보란 상기 웹 사이트로의 로그인을 위한 ID와 비밀번호 등과 같은 소정의 회원 인증 정보를 의미한다.Here, the preset website refers to a site that provides certain web services such as an online shopping mall site, a banking site, an online game service provider site, a portal site, etc., and login authentication information refers to an ID for logging into the website. This refers to certain member authentication information such as and password.

이때, 본 발명의 일실시예에 따르면, 인증 정보 요청부(111)는 제1 사용자 단말(101)로부터, 상기 제1 사용자(10)의 사이트 이용 이력 정보의 수집 명령이 수신되었을 때, 상기 제1 사용자(10)가 제3자 대행 인증에 동의를 완료한 사용자가 맞는지 여부에 대한 사용자 인증을 진행하기 위한 구체적인 구성으로, 인증 번호 저장부(120), 인증 이벤트 발생부(121), 검증 번호 생성부(122), 피드백 요청부(123), 제곱근 연산부(124) 및 인증 완료 처리부(125)를 포함할 수 있다.At this time, according to an embodiment of the present invention, when a command to collect the site usage history information of the first user 10 is received from the first user terminal 101, the authentication information request unit 111 1 A specific configuration for performing user authentication on whether the user 10 is the user who has consented to third-party authentication, including an authentication number storage unit 120, an authentication event generation unit 121, and a verification number. It may include a generation unit 122, a feedback request unit 123, a square root operation unit 124, and an authentication completion processing unit 125.

인증 번호 저장부(120)에는 상기 복수의 사용자들 각각에 대한 사전 발급된 k(k는 3이상의 자연수임)자릿수의 인증 번호가 저장되어 있다. 이때, 상기 복수의 사용자들 각각에 대한 인증 번호는 각 사용자의 사용자 단말에도 사전 저장되어 있다.The authentication number storage unit 120 stores a pre-issued authentication number of k (k is a natural number of 3 or more) digits for each of the plurality of users. At this time, the authentication number for each of the plurality of users is also pre-stored in each user's user terminal.

예컨대, k를 '5'라고 하는 경우, 인증 번호 저장부(120)에는 하기의 표 1과 같이, 상기 복수의 사용자들 각각에 대한 사전 발급된 5자릿수의 인증 번호가 저장되어 있을 수 있다.For example, when k is '5', the authentication number storage unit 120 may store a pre-issued 5-digit authentication number for each of the plurality of users, as shown in Table 1 below.

복수의 사용자들multiple users 인증 번호Certification Number 사용자 1user 1 1356813568 사용자 2user 2 2315623156 ...... ......

인증 이벤트 발생부(121)는 제1 사용자 단말(101)로부터, 상기 제1 기간 동안의 상기 웹 사이트에 대한 상기 제1 사용자(10)의 사이트 이용 이력 정보의 수집 명령이 수신되면, 상기 제1 사용자(10)가 제3자 대행 인증에 동의를 완료한 사용자가 맞는지 여부에 대한 사용자 인증을 진행하기 위한 인증 이벤트를 발생시킨다.When the authentication event generator 121 receives a command to collect site usage history information of the first user 10 for the website during the first period from the first user terminal 101, the first user terminal 101 An authentication event is generated to proceed with user authentication to determine whether the user 10 is the user who has consented to third-party proxy authentication.

검증 번호 생성부(122)는 상기 인증 이벤트가 발생되면, 인증 번호 저장부(120)로부터 상기 제1 사용자(10)에 대한 제1 인증 번호를 추출하고, 해밍 무게가 t(t는 2이상, k미만의 자연수임)인 k비트의 랜덤 코드를 랜덤하게 생성한 후, 상기 제1 인증 번호를 구성하는 k자릿수의 숫자들 중, 상기 랜덤 코드에서 '1'의 코드가 위치하는 지점과 동일한 자리에 위치하는 숫자들로 구성된 t자릿수의 제1 검증 번호를 생성한다.When the authentication event occurs, the verification number generator 122 extracts the first authentication number for the first user 10 from the authentication number storage unit 120 and sets the Hamming weight t (t is 2 or more, After randomly generating a k-bit random code (which is a natural number less than k), among the k-digit numbers constituting the first authentication number, the same position as the point where the code '1' is located in the random code Generate a first verification number of t digits consisting of numbers located in .

예컨대, k를 '5', t를 '3', 제1 사용자(10)를 상기 표 1에서의 '사용자 1'(10)이라고 가정하고, 상기 제1 기간을 '2021년 11월 1일~2021년 11월 30일'이라고 한다면, 인증 이벤트 발생부(121)는 제1 사용자 단말(101)로부터, '2021년 11월 1일~2021년 11월 30일' 동안의 상기 웹 사이트에 대한 '사용자 1'(10)의 사이트 이용 이력 정보의 수집 명령이 수신되면, 상기 '사용자 1'(10)이 제3자 대행 인증에 동의를 완료한 사용자가 맞는지 여부에 대한 사용자 인증을 진행하기 위한 인증 이벤트를 발생시킬 수 있다.For example, assuming that k is '5', t is '3', the first user 10 is 'User 1' (10) in Table 1, and the first period is 'November 1, 2021 ~ If 'November 30, 2021', the authentication event generation unit 121 receives 'November 1, 2021 to November 30, 2021' for the above website from the first user terminal 101. When an order to collect information on the site usage history of User 1' (10) is received, authentication is performed to proceed with user authentication to determine whether 'User 1' (10) is a user who has consented to third-party proxy authentication. Events can be generated.

그러면, 검증 번호 생성부(122)는 상기 표 1과 같은 인증 번호 저장부(120)로부터 상기 '사용자 1'(10)에 대한 제1 인증 번호인 '13568'을 추출하고, 해밍 무게가 '3'인 5비트의 랜덤 코드를 '01011'과 같이 랜덤하게 생성한 후, 상기 제1 인증 번호인 '13568'를 구성하는 5자릿수의 숫자들 중, 상기 랜덤 코드인 '01011'에서 '1'의 코드가 위치하는 지점과 동일한 자리에 위치하는 숫자들인 '3', '6', '8'로 구성된 3자릿수의 제1 검증 번호를 '368'과 같이 생성할 수 있다.Then, the verification number generator 122 extracts '13568', the first authentication number for 'User 1' (10), from the authentication number storage unit 120 as shown in Table 1, and the Hamming weight is '3'. After randomly generating a 5-bit random code such as '01011', among the 5 digits that make up the first authentication number '13568', '1' in the random code '01011' A 3-digit first verification number consisting of '3', '6', and '8', which are numbers located in the same position as the code, can be generated, such as '368'.

피드백 요청부(123)는 제1 사용자 단말(101)로, 상기 랜덤 코드를 전송하면서, 상기 랜덤 코드와 상기 제1 인증 번호를 기초로 생성되는 피드백 행렬의 전송을 요청한다.The feedback request unit 123 transmits the random code to the first user terminal 101 and requests transmission of a feedback matrix generated based on the random code and the first authentication number.

이때, 본 발명의 일실시예에 따르면, 제1 사용자 단말(101)은 서비스 제공 서버(110)로부터 상기 랜덤 코드가 수신되면서, 상기 피드백 행렬의 전송 요청이 수신되면, 제1 사용자 단말(101)에 사전 저장되어 있는 상기 제1 인증 번호를 구성하는 k자릿수의 숫자들 중, 서비스 제공 서버(110)로부터 수신된 상기 랜덤 코드에서 '1'의 코드가 위치하는 지점과 동일한 자리에 위치하는 숫자들로 구성된 t자릿수의 상기 제1 검증 번호를 생성한 후, 상기 제1 검증 번호를 구성하는 t개의 숫자들을 성분으로 갖는 열벡터와 상기 제1 검증 번호를 구성하는 t개의 숫자들을 성분으로 갖는 행벡터 간의 행렬 곱을 연산함으로써, t x t의 크기의 제1 피드백 행렬을 생성하여 서비스 제공 서버(110)로 전송할 수 있다.At this time, according to an embodiment of the present invention, when the random code is received from the service providing server 110 and a request to transmit the feedback matrix is received, the first user terminal 101 Among the k-digit numbers constituting the first authentication number pre-stored in After generating the first verification number of t digits consisting of, a column vector having as components the t numbers constituting the first verification number and a row vector having as components the t numbers constituting the first verification number By calculating matrix multiplication, a first feedback matrix of size t x t can be generated and transmitted to the service providing server 110.

관련해서, 전술한 예와 같이, 상기 제1 인증 번호가 '13568', 상기 랜덤 코드가 '01011'이라고 하고, 피드백 요청부(123)에 의해 제1 사용자 단말(101)에 상기 랜덤 코드인 '01011'이 전송 완료된 상황이라고 가정하자.In relation to this, as in the above-described example, the first authentication number is '13568' and the random code is '01011', and the random code is '01011' by the feedback request unit 123 to the first user terminal 101. Let's assume that '01011' has been transmitted.

그러면, 제1 사용자 단말(101)은 제1 사용자 단말(101)에 사전 저장되어 있는 상기 제1 인증 번호인 '13568'을 구성하는 5자릿수의 숫자들 중, 서비스 제공 서버(110)로부터 수신된 상기 랜덤 코드인 '01011'에서 '1'의 코드가 위치하는 지점과 동일한 자리에 위치하는 숫자들인 '3', '6', '8'로 구성된 3자릿수의 제1 검증 번호를 '368'과 같이 생성할 수 있다.Then, the first user terminal 101 selects the number received from the service providing server 110 among the 5-digit numbers constituting '13568', which is the first authentication number pre-stored in the first user terminal 101. In the random code '01011', the 3-digit first verification number consisting of '3', '6', and '8', which are numbers located in the same position as the code '1', is '368' and can be created together.

그러고 나서, 제1 사용자 단말(101)은 상기 제1 검증 번호인 '368'을 구성하는 3개의 숫자들을 성분으로 갖는 열벡터인 ''과 상기 검증 번호인 '368'를 구성하는 3개의 숫자들을 성분으로 갖는 행벡터인 '[3 6 8]' 간의 행렬 곱을 연산함으로써, 3 x 3의 크기의 제1 피드백 행렬을 ''와 같이 생성한 후, 상기 제1 피드백 행렬을 서비스 제공 서버(110)로 전송할 수 있다.Then, the first user terminal 101 is a column vector having as components the three numbers constituting the first verification number '368', '368'. By calculating the matrix product between ' and '[3 6 8]', a row vector whose components are the three numbers constituting the verification number '368', the first feedback matrix of size 3 x 3 is ' ', the first feedback matrix can be transmitted to the service providing server 110.

제곱근 연산부(124)는 제1 사용자 단말(101)로부터, 상기 피드백 행렬의 전송 요청에 대응하여 상기 제1 피드백 행렬이 수신되면, 상기 제1 피드백 행렬을 구성하는 t2개의 성분들 중 상기 제1 피드백 행렬의 주대각선(Main Diagonal)에 해당되는 t개의 대각 성분들을 추출한 후, 상기 t개의 대각 성분들 각각에 대한 제곱근을 연산한다.When the first feedback matrix is received from the first user terminal 101 in response to a transmission request for the feedback matrix, the square root calculation unit 124 calculates the first of the t 2 components constituting the first feedback matrix. After extracting t diagonal components corresponding to the main diagonal of the feedback matrix, the square root of each of the t diagonal components is calculated.

그리고, 인증 완료 처리부(125)는 상기 t개의 대각 성분들 각각에 대한 제곱근이 상기 제1 검증 번호를 구성하는 t개의 숫자들 각각과 모두 일치하는 것으로 확인되면, 상기 제1 사용자(10)가 제3자 대행 인증에 동의를 완료한 사용자가 맞는 것으로 인증 처리를 완료한다.And, when the authentication completion processing unit 125 confirms that the square root of each of the t diagonal components matches each of the t numbers constituting the first verification number, the first user 10 The authentication process is completed as the user who has consented to third-party authentication.

관련해서, 전술한 예와 같이, 제1 사용자 단말(101)로부터 ''이라는 상기 제1 피드백 행렬이 서비스 제공 서버(110)에 수신되었다고 하는 경우, 제곱근 연산부(124)는 상기 제1 피드백 행렬을 구성하는 9개의 성분들 중 상기 제1 피드백 행렬의 주대각선에 해당되는 3개의 대각 성분들인 '9', '36', '64'를 추출한 후, 상기 3개의 대각 성분들 각각에 대한 제곱근인 '3', '6', '8'을 연산할 수 있다.In relation to this, as in the above-described example, from the first user terminal 101, ' When it is said that the first feedback matrix 'is received by the service providing server 110, the square root calculation unit 124 corresponds to the main diagonal of the first feedback matrix among the nine components constituting the first feedback matrix. After extracting the three diagonal components '9', '36', and '64', the square roots of '3', '6', and '8' for each of the three diagonal components can be calculated.

그러고 나서, 인증 완료 처리부(125)는 상기 3개의 대각 성분들 각각에 대한 제곱근이 상기 제1 검증 번호인 '368'를 구성하는 3개의 숫자들 각각과 모두 일치하는지 여부를 확인한 후, 모두 일치하는 것으로 확인되면, 상기 제1 사용자(10)가 제3자 대행 인증에 동의를 완료한 사용자가 맞는 것으로 인증 처리를 완료할 수 있다.Then, the authentication completion processing unit 125 checks whether the square root of each of the three diagonal components matches each of the three numbers constituting the first verification number '368', and then If it is confirmed that the first user 10 is a user who has consented to third-party proxy authentication, the authentication process can be completed.

이렇게, 상기 제1 사용자(10)가 제3자 대행 인증에 동의를 완료한 사용자가 맞는 것으로 인증 처리가 완료되면, 인증 정보 요청부(111)는 제1 사용자 단말(101)로, 상기 웹 사이트로의 로그인을 위한 상기 제1 사용자(10)의 로그인 인증 정보를 전송할 것을 요청할 수 있다.In this way, when the authentication process is completed as if the first user 10 is a user who has completed consent to third-party proxy authentication, the authentication information request unit 111 is sent to the first user terminal 101, and the website It may be requested to transmit login authentication information of the first user 10 for logging in.

이력 정보 요청부(112)는 제1 사용자 단말(101)로부터, 상기 제1 사용자(10)의 상기 웹 사이트로의 로그인을 위한 제1 로그인 인증 정보가 수신되면, 상기 웹 사이트에 대한 사이트 운영 서버(102)에 접속하여, 사이트 운영 서버(102)로 상기 제1 로그인 인증 정보를 전송함으로써, 상기 제1 사용자(10)의 상기 웹 사이트에 대한 제3자 대행 인증을 완료한 후, 사이트 운영 서버(102)로, 상기 제1 사용자(10)의 상기 제1 기간 동안의 상기 웹 사이트에 대한 사이트 이용 이력에 대한 정보를 수집하여 회신할 것을 요청한다.When first login authentication information for logging in to the website of the first user 10 is received from the first user terminal 101, the history information request unit 112 is a site operation server for the website. After completing third-party proxy authentication for the website of the first user 10 by connecting to (102) and transmitting the first login authentication information to the site operation server 102, the site operation server At (102), a request is made to collect information about the site usage history of the first user 10 for the website during the first period and to reply.

이때, 본 발명의 일실시예에 따르면, 이력 정보 요청부(112)는 유효성 검증 지시부(114), 2차 인증 요청부(115), 인증 번호 요청부(116), 인증 번호 전송부(117), 대행 인증 완료부(118) 및 회신 요청부(119)를 포함할 수 있다.At this time, according to an embodiment of the present invention, the history information request unit 112 includes a validation instruction unit 114, a secondary authentication request unit 115, an authentication number request unit 116, and an authentication number transmission unit 117. , It may include a proxy authentication completion unit 118 and a response request unit 119.

유효성 검증 지시부(114)는 제1 사용자 단말(101)로부터, 상기 제1 로그인 인증 정보가 수신되면, 사이트 운영 서버(102)에 접속하여, 사이트 운영 서버(102)로 상기 제1 로그인 인증 정보를 전송하면서, 상기 제1 로그인 인증 정보의 유효성을 검증할 것을 지시하는 유효성 검증 명령을 전송한다.When the first login authentication information is received from the first user terminal 101, the validation instruction unit 114 connects to the site operation server 102 and sends the first login authentication information to the site operation server 102. While transmitting, a validation command instructing to verify the validity of the first login authentication information is transmitted.

이때, 사이트 운영 서버(102)는 서비스 제공 서버(110)로부터 상기 제1 로그인 인증 정보가 수신되면서, 상기 유효성 검증 명령이 수신되면, 상기 유효성 검증 명령에 대응하여, 상기 웹 사이트에 가입된 회원들에 대한 회원 정보가 저장된 회원 데이터베이스 상에 상기 제1 로그인 인증 정보가 저장되어 있는지 여부를 확인할 수 있다. 그러고 나서, 사이트 운영 서버(102)는 상기 회원 데이터베이스 상에 상기 제1 로그인 인증 정보가 저장되어 있는 것으로 확인되면, 상기 제1 로그인 인증 정보의 유효성이 검증 완료되었음을 지시하는 유효성 검증 완료 메시지를 생성하여 서비스 제공 서버(110)로 전송할 수 있다.At this time, when the first login authentication information is received from the service providing server 110 and the validity verification command is received, the site operation server 102 responds to the validity verification command to check members registered with the website. It is possible to check whether the first login authentication information is stored in the member database where member information is stored. Then, when the site operation server 102 confirms that the first login authentication information is stored in the member database, it generates a validation completion message indicating that the validity of the first login authentication information has been verified. It can be transmitted to the service provision server 110.

이렇게, 사이트 운영 서버(102)가, 상기 유효성 검증 명령에 대응하여, 상기 웹 사이트에 가입된 회원들에 대한 회원 정보가 저장된 회원 데이터베이스 상에 상기 제1 로그인 인증 정보가 저장되어 있는지 여부를 확인함에 따라, 사이트 운영 서버(102)로부터 서비스 제공 서버(110)에 상기 제1 로그인 인증 정보에 대한 유효성 검증 완료 메시지가 수신되면, 2차 인증 요청부(115)는 사이트 운영 서버(102)로 상기 제1 사용자(10)에 대한 2차 인증을 진행하기 위한 2차 인증 진행 명령을 전송한다.In this way, the site operation server 102, in response to the validation command, checks whether the first login authentication information is stored in the member database where member information for members registered with the website is stored. Accordingly, when a validation completion message for the first login authentication information is received from the site operation server 102 to the service providing server 110, the secondary authentication request unit 115 sends the first login authentication message to the site operation server 102. 1 A secondary authentication command is transmitted to perform secondary authentication for the user 10.

이때, 사이트 운영 서버(102)는 서비스 제공 서버(110)로부터 상기 2차 인증 진행 명령이 수신되면, 상기 2차 인증 진행 명령에 대응하여, 상기 제1 사용자(10)에 대한 2차 인증을 진행하기 위한 제1 일회용 인증 번호를 생성하고, 상기 회원 데이터베이스로부터 상기 제1 사용자(10)에 대한 휴대폰 번호를 확인한 후, 상기 휴대폰 번호를 수신측으로 하여 상기 제1 일회용 인증 번호가 포함된 문자 메시지를 전송함과 동시에, 서비스 제공 서버(110)로 상기 제1 일회용 인증 번호를 회신할 것을 요청할 수 있다.At this time, when the site operation server 102 receives the secondary authentication proceeding command from the service providing server 110, the site operation server 102 performs secondary authentication for the first user 10 in response to the secondary authentication proceeding command. After generating a first one-time authentication number for the first user 10 from the member database and confirming the mobile phone number for the first user 10, a text message containing the first one-time authentication number is sent to the recipient using the mobile phone number. At the same time, the service providing server 110 may be requested to reply with the first one-time authentication number.

이렇게, 사이트 운영 서버(102)가, 상기 2차 인증 진행 명령에 대응하여, 상기 제1 사용자(10)에 대한 2차 인증을 진행하기 위한 상기 제1 일회용 인증 번호를 생성하여 상기 문자 메시지를 전송함과 동시에, 서비스 제공 서버(110)로 상기 인증 번호 회신 명령을 전송함에 따라, 사이트 운영 서버(102)로부터 서비스 제공 서버(110)에 상기 인증 번호 회신 명령이 수신되면, 인증 번호 요청부(116)는 상기 인증 번호 회신 명령을 제1 사용자 단말(101)로 전송한다.In this way, the site operation server 102, in response to the secondary authentication command, generates the first one-time authentication number for secondary authentication of the first user 10 and transmits the text message. At the same time, as the authentication number reply command is transmitted to the service providing server 110, when the authentication number reply command is received from the site operation server 102 to the service providing server 110, the authentication number request unit 116 ) transmits the authentication number reply command to the first user terminal 101.

이로 인해, 제1 사용자 단말(101)에는 서비스 제공 서버(110)로부터 전송된 상기 인증 번호 회신 명령이 수신될 수 있고, 제1 사용자(10)가 보유하고 있는 휴대폰(11)에는 사이트 운영 서버(102)에 의해 전송된 상기 제1 일회용 인증 번호가 포함된 문자 메시지가 수신될 수 있다. 그러면, 제1 사용자(10)는 휴대폰(11)에 수신된 문자 메시지를 확인하여 상기 문자 메시지 내에 포함된 상기 제1 일회용 인증 번호를 확인한 후 상기 제1 일회용 인증 번호를 제1 사용자 단말(101)에 입력할 수 있고, 제1 사용자 단말(101)은 제1 사용자(10)에 의해 상기 제1 일회용 인증 번호가 입력되면, 상기 제1 일회용 인증 번호를 서비스 제공 서버(110)로 전송할 수 있다.As a result, the first user terminal 101 can receive the authentication number reply command transmitted from the service providing server 110, and the mobile phone 11 owned by the first user 10 can receive the site operation server ( A text message containing the first one-time authentication number sent by 102) may be received. Then, the first user 10 checks the text message received on the mobile phone 11, checks the first one-time authentication number included in the text message, and then sends the first one-time authentication number to the first user terminal 101. When the first one-time authentication number is input by the first user 10, the first user terminal 101 can transmit the first one-time authentication number to the service providing server 110.

이렇게, 서비스 제공 서버(110)로부터 제1 사용자 단말(101)에 상기 인증 번호 회신 명령이 전송된 이후, 상기 제1 사용자(10)가 상기 휴대폰 번호를 수신측으로 하여 수신된 상기 문자 메시지 상에 포함된 상기 제1 일회용 인증 번호를, 제1 사용자 단말(101) 상에 입력함에 따라, 제1 사용자 단말(101)로부터, 상기 제1 일회용 인증 번호가 서비스 제공 서버(110)로 회신되면, 인증 번호 전송부(117)는 상기 제1 일회용 인증 번호를 사이트 운영 서버(102)로 전송한다.In this way, after the authentication number reply command is transmitted from the service providing server 110 to the first user terminal 101, the first user 10 includes the mobile phone number in the text message received as the recipient. As the first one-time authentication number is input on the first user terminal 101, when the first one-time authentication number is returned to the service providing server 110 from the first user terminal 101, the authentication number The transmission unit 117 transmits the first one-time authentication number to the site operation server 102.

이때, 사이트 운영 서버(102)는 서비스 제공 서버(110)로부터 상기 제1 일회용 인증 번호가 수신되면, 서비스 제공 서버(110)로부터 수신된 상기 제1 일회용 인증 번호가, 상기 제1 사용자(10)에 대한 2차 인증을 진행하기 위해 생성하였던 상기 제1 일회용 인증 번호와 일치하는지 여부를 확인할 수 있고, 양 일회용 인증 번호가 서로 일치하는 것으로 확인되면, 상기 제1 사용자(10)에 대한 2차 인증 완료 메시지를 생성하여 서비스 제공 서버(110)로 전송할 수 있다.At this time, when the site operation server 102 receives the first one-time authentication number from the service provision server 110, the first one-time authentication number received from the service provision server 110 is the first user 10. It is possible to check whether it matches the first one-time authentication number generated to proceed with secondary authentication, and if both one-time authentication numbers are confirmed to match each other, secondary authentication for the first user 10 A completion message can be generated and transmitted to the service providing server 110.

이렇게, 사이트 운영 서버(102)에서, 사이트 운영 서버(102)로 전송된 상기 제1 일회용 인증 번호가, 상기 제1 사용자(10)에 대한 2차 인증을 진행하기 위해 생성하였던 상기 제1 일회용 인증 번호와 일치하는 것으로 확인됨에 따라, 사이트 운영 서버(102)로부터 서비스 제공 서버(110)로 상기 제1 사용자(10)에 대한 2차 인증 완료 메시지가 수신되면, 대행 인증 완료부(118)는 상기 제1 사용자(10)의 상기 웹 사이트에 대한 제3자 대행 인증이 완료된 것으로 확인한다.In this way, the first one-time authentication number transmitted from the site operation server 102 to the site operation server 102 is the first one-time authentication generated to perform secondary authentication for the first user 10. As it is confirmed that the number matches, when the secondary authentication completion message for the first user 10 is received from the site operation server 102 to the service provision server 110, the proxy authentication completion unit 118 It is confirmed that the third-party proxy authentication of the first user 10 for the website has been completed.

그리고, 회신 요청부(119)는 상기 제1 사용자(10)의 상기 웹 사이트에 대한 제3자 대행 인증이 완료된 것으로 확인되면, 사이트 운영 서버(102)로, 상기 제1 사용자(10)의 상기 제1 기간 동안의 상기 웹 사이트에 대한 사이트 이용 이력에 대한 정보를 수집하여 회신할 것을 요청한다.And, when it is confirmed that the third-party proxy authentication for the website of the first user 10 has been completed, the reply request unit 119 sends the first user 10 to the site operation server 102. We request that you collect information about the site usage history of the above-mentioned website during the first period and respond.

이렇게, 이력 정보 요청부(112)를 통해 사이트 운영 서버(102)에 상기 제1 사용자(10)의 상기 제1 기간 동안의 상기 웹 사이트에 대한 사이트 이용 이력에 대한 정보를 수집하여 회신할 것이 요청되면, 사이트 운영 서버(102)는 상기 제1 사용자(10)의 상기 제1 기간 동안의 상기 웹 사이트에 대한 사이트 이용 이력에 대한 정보를 수집하여 서비스 제공 서버(110)로 전송할 수 있다.In this way, a request is made to the site operation server 102 through the history information request unit 112 to collect and reply to the site usage history of the website during the first period of the first user 10. If so, the site operation server 102 may collect information about the site use history of the first user 10 for the website during the first period and transmit it to the service provision server 110.

이로 인해, 사이트 운영 서버(102)로부터, 상기 제1 사용자(10)의 상기 제1 기간 동안의 상기 웹 사이트에 대한 사이트 이용 이력에 대한 정보로서, 제1 사이트 이용 이력 정보가 수집되어 서비스 제공 서버(110)에 회신되면, 이력 정보 전송부(113)는 상기 제1 사이트 이용 이력 정보를 제1 사용자 단말(101)로 전송한다.As a result, the first site usage history information is collected from the site operation server 102 as information on the site usage history of the first user 10 for the website during the first period, and is collected from the site operation server 102 to the service providing server. When the response to 110 is received, the history information transmission unit 113 transmits the first site use history information to the first user terminal 101.

이때, 본 발명의 일실시예에 따르면, 이력 정보 전송부(113)는 해시 함수 저장부(126), 암호화 이벤트 발생부(127), 제1 다항식 생성부(128), 제2 다항식 생성부(129), 시드 코드 생성부(130), 해시 값 생성부(131) 및 데이터 전송부(132)를 포함할 수 있다.At this time, according to an embodiment of the present invention, the history information transmission unit 113 includes a hash function storage unit 126, an encryption event generation unit 127, a first polynomial generator 128, and a second polynomial generator ( 129), a seed code generator 130, a hash value generator 131, and a data transmission unit 132.

해시 함수 저장부(126)에는 상기 복수의 사용자들 각각에 대한 사전 설정된 해시 함수가 저장되어 있다. 이때, 상기 복수의 사용자들 각각에 대한 해시 함수는 각 사용자의 사용자 단말에도 사전 저장되어 있다.The hash function storage unit 126 stores preset hash functions for each of the plurality of users. At this time, the hash function for each of the plurality of users is also pre-stored in each user's user terminal.

암호화 이벤트 발생부(127)는 사이트 운영 서버(102)로부터, 상기 제1 사이트 이용 이력 정보가 수집되어 회신되면, 상기 제1 사이트 이용 이력 정보를 암호화하여 제1 사용자 단말(101)로 전송하기 위한 암호화 이벤트를 발생시킨다.When the first site usage history information is collected and returned from the site operation server 102, the encryption event generator 127 encrypts the first site usage history information and transmits it to the first user terminal 101. Generates an encryption event.

제1 다항식 생성부(128)는 상기 암호화 이벤트가 발생되면, 인증 번호 저장부(120)로부터 상기 제1 사용자(10)에 대한 상기 제1 인증 번호를 추출하고, 최고차수가 k-1인 2진 다항식의 각 계수를, 상기 제1 인증 번호를 구성하는 k개의 숫자들 각각에 대해 모듈로-2(modulo-2) 연산을 수행하였을 때의 결과 값으로 지정함으로써, 제1 다항식을 생성한다.When the encryption event occurs, the first polynomial generator 128 extracts the first authentication number for the first user 10 from the authentication number storage unit 120, and generates 2 with the highest degree k-1. A first polynomial is generated by designating each coefficient of the true polynomial as the result of performing a modulo-2 operation on each of the k numbers constituting the first authentication number.

여기서, 모듈로-2 연산은 피제수를 2로 나누는 나눗셈을 수행하여, 그에 대한 나머지(remainder)를 산출하는 연산을 의미한다.Here, the modulo-2 operation refers to an operation that performs division by dividing the dividend by 2 and calculates the remainder.

제2 다항식 생성부(129)는 최고차수가 n(n은 자연수임)인 2진 다항식의 각 계수를 랜덤하게 지정함으로써, 제2 다항식을 생성한다.The second polynomial generator 129 generates a second polynomial by randomly designating each coefficient of a binary polynomial whose highest degree is n (n is a natural number).

시드 코드 생성부(130)는 상기 제1 다항식과 상기 제2 다항식을 서로 곱하여 최고차수가 k-1+n이 되는 2진 다항식인 연산 다항식을 생성한 후, 상기 연산 다항식의 각 계수를 비트열로 갖는 k+n 비트의 시드(seed) 코드를 생성한다.The seed code generator 130 multiplies the first polynomial and the second polynomial to generate an operation polynomial, which is a binary polynomial whose highest degree is k-1+n, and then converts each coefficient of the operation polynomial into a bit string. Generate a seed code of k+n bits with .

해시 값 생성부(131)는 상기 시드 코드가 생성되면, 해시 함수 저장부(126)로부터 상기 제1 사용자(10)에 대한 제1 해시 함수를 추출한 후, 상기 제1 해시 함수에 상기 시드 코드를 입력으로 인가함으로써, 제1 해시 값을 생성한다.When the seed code is generated, the hash value generator 131 extracts the first hash function for the first user 10 from the hash function storage unit 126 and then adds the seed code to the first hash function. By applying it as an input, a first hash value is generated.

데이터 전송부(132)는 상기 제1 해시 값이 생성되면, 상기 제1 사이트 이용 이력 정보에 대한 데이터를 상기 제1 해시 값으로 암호화하여 제1 암호화 데이터를 생성한 후, 제1 사용자 단말(101)로, 상기 제1 암호화 데이터를 전송하면서, 상기 제2 다항식을 상기 제1 암호화 데이터의 복호화를 위한 단서 정보로 전송한다.When the first hash value is generated, the data transmission unit 132 encrypts data about the first site use history information with the first hash value to generate first encrypted data, and then generates first encrypted data, and then sends the first user terminal 101 ), while transmitting the first encrypted data, the second polynomial is transmitted as clue information for decrypting the first encrypted data.

이하에서는, 암호화 이벤트 발생부(127), 제1 다항식 생성부(128), 제2 다항식 생성부(129), 시드 코드 생성부(130), 해시 값 생성부(131) 및 데이터 전송부(132)의 동작을 예를 들어, 상세히 설명하기로 한다.Hereinafter, the encryption event generator 127, the first polynomial generator 128, the second polynomial generator 129, the seed code generator 130, the hash value generator 131, and the data transmission unit 132. )'s operation will be explained in detail using an example.

먼저, 본 발명에서 사용되는 각 2진 다항식의 계수는, 0차 항의 계수를 포함하는 개념인 것으로 가정하자.First, let us assume that the coefficient of each binary polynomial used in the present invention is a concept that includes the coefficient of the zeroth order term.

이러한 상황에서, k를 '5', n을 '2', 상기 제1 사용자(10)에 대한 제1 인증 번호를 '13568'이라고 하고, 사이트 운영 서버(102)로부터, 상기 제1 사이트 이용 이력 정보가 수집되어 서비스 제공 서버(110)에 회신되었다고 하면, 암호화 이벤트 발생부(127)는 상기 제1 사이트 이용 이력 정보를 암호화하여 제1 사용자 단말(101)로 전송하기 위한 암호화 이벤트를 발생시킬 수 있다.In this situation, k is '5', n is '2', the first authentication number for the first user 10 is '13568', and the first site usage history is received from the site operation server 102. If the information is collected and returned to the service provision server 110, the encryption event generator 127 may generate an encryption event to encrypt the first site use history information and transmit it to the first user terminal 101. there is.

그러면, 제1 다항식 생성부(128)는 인증 번호 저장부(120)로부터 상기 제1 사용자(10)에 대한 상기 제1 인증 번호인 '13568'을 추출하고, 최고차수가 4인 2진 다항식의 각 계수를, 상기 제1 인증 번호인 '13568'을 구성하는 5개의 숫자들 각각에 대해 모듈로-2 연산을 수행하였을 때의 결과 값으로 지정함으로써, 제1 다항식을 생성할 수 있다. Then, the first polynomial generator 128 extracts '13568', which is the first authentication number for the first user 10, from the authentication number storage unit 120, and generates a binary polynomial with the highest degree of 4. The first polynomial can be generated by designating each coefficient as the result of performing modulo-2 operation on each of the five numbers constituting the first authentication number '13568'.

관련해서, 상기 제1 인증 번호인 '13568'을 구성하는 5개의. 숫자들은 '1, 3, 5, 6, 8'이고, '1, 3, 5, 6, 8' 각각에 대해 모듈로-2 연산을 수행하였을 때의 결과 값은 '1, 1, 1, 0, 0'이므로, 제1 다항식 생성부(128)는 최고차수가 4인 2진 다항식의 각 계수를 '1, 1, 1, 0, 0'으로 지정함으로써, 상기 제1 다항식을 ''과 같이 생성할 수 있다.In relation to this, 5 constituting the first authentication number '13568'. The numbers are '1, 3, 5, 6, 8', and when modulo-2 operation is performed on each of '1, 3, 5, 6, 8', the result is '1, 1, 1, 0. , 0', the first polynomial generator 128 designates each coefficient of the binary polynomial with the highest degree as '1, 1, 1, 0, 0', making the first polynomial ' It can be created like this:

또한, 제2 다항식 생성부(129)는 최고차수가 2인 2진 다항식의 각 계수를 랜덤하게 지정함으로써, 제2 다항식을 ''과 같이 생성할 수 있다.In addition, the second polynomial generator 129 randomly designates each coefficient of the binary polynomial whose highest degree is 2, thereby creating the second polynomial as ' It can be created like this:

그러면, 시드 코드 생성부(130)는 상기 제1 다항식인 ''과 상기 제2 다항식인 ''을 서로 곱하여 최고차수가 6이 되는 2진 다항식인 연산 다항식을 생성할 수 있다.Then, the seed code generator 130 generates the first polynomial ' ' and the second polynomial ' ' can be multiplied together to create an arithmetic polynomial, which is a binary polynomial whose highest degree is 6.

여기서, 시드 코드 생성부(130)는 상기 연산 다항식을 생성할 때, 상기 연산 다항식의 각 계수를 2진 값으로 감산해야 하기 때문에, 상기 제1 다항식과 상기 제2 다항식을 서로 곱하여 생성된 다항식의 각 계수에 대해, 모듈로-2 연산을 수행하였을 때의 결과 값을, 상기 연산 다항식의 각 계수로 연산할 수 있다.Here, when generating the operation polynomial, the seed code generator 130 must subtract each coefficient of the operation polynomial to a binary value, so the polynomial generated by multiplying the first polynomial and the second polynomial For each coefficient, the resulting value when modulo-2 operation is performed can be calculated as each coefficient of the operation polynomial.

결국, 시드 코드 생성부(130)는 상기 연산 다항식을 ''과 같이 생성할 수 있다.Ultimately, the seed code generator 130 converts the operation polynomial into ' It can be created like this:

그러고 나서, 시드 코드 생성부(130)는 상기 연산 다항식의 각 계수인 '1, 1, 0, 0, 1, 0, 0'을 비트열로 갖는 7비트의 시드 코드를 '1100100'과 같이 생성하고, 해시 함수 저장부(126)로부터 상기 제1 사용자(10)에 대한 제1 해시 함수를 추출한 후, 상기 제1 해시 함수에 상기 시드 코드인 '1100100'을 입력으로 인가함으로써, 제1 해시 값을 생성할 수 있다.Then, the seed code generator 130 generates a 7-bit seed code, such as '1100100', with each coefficient of the operation polynomial '1, 1, 0, 0, 1, 0, 0' as a bit string. After extracting the first hash function for the first user 10 from the hash function storage unit 126, and applying the seed code '1100100' as an input to the first hash function, the first hash value is generated. can be created.

그러면, 데이터 전송부(132)는 상기 제1 사이트 이용 이력 정보에 대한 데이터를 상기 제1 해시 값으로 암호화하여 제1 암호화 데이터를 생성한 후, 제1 사용자 단말(101)로, 상기 제1 암호화 데이터를 전송하면서, 상기 제2 다항식인 ''을 상기 제1 암호화 데이터의 복호화를 위한 단서 정보로 전송할 수 있다.Then, the data transmission unit 132 encrypts the data about the first site usage history information with the first hash value to generate first encrypted data, and then sends the first encrypted data to the first user terminal 101. While transmitting data, the second polynomial ' ' can be transmitted as clue information for decrypting the first encrypted data.

이때, 본 발명의 일실시예에 따르면, 제1 사용자 단말(101)은 서비스 제공 서버(110)로부터 상기 제1 암호화 데이터와 상기 제2 다항식이 수신되면, 제1 사용자 단말(101)에 저장되어 있는 상기 제1 인증 번호와 상기 제1 해시 함수 및 서비스 제공 서버(110)로부터 수신된 상기 제2 다항식을 기초로 상기 제1 암호화 데이터에 대한 복호화를 수행함으로써, 상기 제1 사이트 이용 이력 정보를 복원할 수 있다.At this time, according to an embodiment of the present invention, when the first encryption data and the second polynomial are received from the service providing server 110, the first user terminal 101 stores them in the first user terminal 101. By decrypting the first encrypted data based on the first authentication number, the first hash function, and the second polynomial received from the service providing server 110, the first site usage history information is restored. can do.

구체적으로, 제1 사용자 단말(101)은 서비스 제공 서버(110)로부터 상기 제1 암호화 데이터와 상기 제2 다항식이 수신되면, 최고차수가 k-1인 2진 다항식의 각 계수를, 제1 사용자 단말(101)에 저장되어 있는 상기 제1 인증 번호를 구성하는 k개의 숫자들 각각에 대해 모듈로-2 연산을 수행하였을 때의 결과 값으로 지정함으로써, 상기 제1 다항식을 생성하고, 상기 제1 다항식과 서비스 제공 서버(110)로부터 수신된 상기 제2 다항식을 서로 곱하여 최고차수가 k-1+n이 되는 2진 다항식인 상기 연산 다항식을 생성함으로써, 상기 연산 다항식의 각 계수를 비트열로 갖는 k+n 비트의 상기 시드 코드를 생성한 후, 제1 사용자 단말(101)에 저장되어 있는 상기 제1 해시 함수에 상기 시드 코드를 입력으로 인가하여 상기 제1 해시 값을 생성하고, 상기 제1 해시 값을 기초로 상기 제1 암호화 데이터에 대한 복호화를 수행함으로써, 상기 제1 사이트 이용 이력 정보를 복원할 수 있다.Specifically, when the first user terminal 101 receives the first encrypted data and the second polynomial from the service providing server 110, each coefficient of the binary polynomial with the highest degree k-1 is sent to the first user. The first polynomial is generated by specifying the result value when modulo-2 operation is performed on each of the k numbers constituting the first authentication number stored in the terminal 101, and the first By multiplying the polynomial and the second polynomial received from the service providing server 110 to generate the operation polynomial, which is a binary polynomial whose highest degree is k-1+n, each coefficient of the operation polynomial is a bit string. After generating the seed code of k+n bits, the seed code is applied as an input to the first hash function stored in the first user terminal 101 to generate the first hash value, and the first hash value is generated. By decrypting the first encrypted data based on the hash value, the first site use history information can be restored.

관련해서, 전술한 예와 같이, k를 '5', n을 '2', 상기 제1 사용자(10)에 대한 제1 인증 번호를 '13568'이라고 하고, 제1 사용자 단말(101)에 수신된 상기 제2 다항식이 ''라고 가정한 상황에서, 제1 사용자 단말(101)이 상기 제1 암호화 데이터를 복호화하는 과정을 예를 들어 설명하면 다음과 같다.In relation to this, as in the above-described example, k is '5', n is '2', the first authentication number for the first user 10 is '13568', and is received at the first user terminal 101. The second polynomial is ' 'In the assumed situation, the process of the first user terminal 101 decrypting the first encrypted data will be described as an example as follows.

먼저, 제1 사용자 단말(101)은 최고차수가 4인 2진 다항식의 각 계수를, 제1 사용자 단말(101)에 저장되어 있는 상기 제1 인증 번호인 '13568'을 구성하는 '1, 3, 5, 6, 8' 각각에 대해 모듈로-2 연산을 수행하였을 때의 결과 값인 '1, 1, 1, 0, 0'으로 지정함으로써, 상기 제1 다항식인 ''을 생성할 수 있다.First, the first user terminal 101 converts each coefficient of a binary polynomial with the highest degree of 4 into '1, 3', which constitutes '13568', which is the first authentication number stored in the first user terminal 101. , 5, 6, 8', respectively, by specifying the result value '1, 1, 1, 0, 0', which is the result of performing the modulo-2 operation, to obtain the first polynomial ' ' can be created.

그러고 나서, 제1 사용자 단말(101)은 상기 제1 다항식인 ''과 상기 제2 다항식인 ''을 서로 곱하여 최고차수가 6이 되는 2진 다항식인 상기 연산 다항식을 ''과 같이 생성할 수 있다.Then, the first user terminal 101 uses the first polynomial ' ' and the second polynomial ' The above operation polynomial, which is a binary polynomial whose highest degree is 6 by multiplying ' with each other, is ' It can be created like this:

그 이후, 제1 사용자 단말(101)은 상기 연산 다항식의 각 계수인 '1, 1, 0, 0, 1, 0, 0'을 비트열로 갖는 7비트의 시드 코드를 '1100100'과 같이 생성하고, 제1 사용자 단말(101)에 저장되어 있는 상기 제1 해시 함수에 상기 시드 코드인 '1100100'을 입력으로 인가하여 상기 제1 해시 값을 생성한 후, 상기 제1 해시 값을 기초로 상기 제1 암호화 데이터에 대한 복호화를 수행함으로써, 상기 제1 사이트 이용 이력 정보를 복원할 수 있다.After that, the first user terminal 101 generates a 7-bit seed code such as '1100100' with each coefficient of the operation polynomial '1, 1, 0, 0, 1, 0, 0' as a bit string. Then, the seed code '1100100' is applied as an input to the first hash function stored in the first user terminal 101 to generate the first hash value, and then generate the first hash value based on the first hash value. By performing decryption on the first encrypted data, the first site use history information can be restored.

이를 통해, 제1 사용자(10)는 제1 사용자 단말(101)을 이용하여 상기 제1 사이트 이용 이력 정보를 확인할 수 있다.Through this, the first user 10 can check the first site usage history information using the first user terminal 101.

도 2는 본 발명의 일실시예에 따른 제3자 대행 인증을 통해 웹 사이트에 대한 개인의 사이트 이용 이력 정보를 수집하여 제공할 수 있는 서비스 제공 서버의 동작 방법을 도시한 순서도이다.Figure 2 is a flowchart showing the operation method of a service providing server that can collect and provide information on an individual's site usage history for a website through third-party proxy authentication according to an embodiment of the present invention.

단계(S210)에서는 사전 설정된 웹 사이트에 대한, 제3자 대행 인증에 동의를 완료한 사람으로 지정된 복수의 사용자들 중, 제1 사용자가 보유하고 있는 제1 사용자 단말로부터, 제1 기간 동안의 상기 웹 사이트에 대한 상기 제1 사용자의 사이트 이용 이력 정보의 수집 명령이 수신되면, 상기 제1 사용자가 제3자 대행 인증에 동의를 완료한 사용자가 맞는지 여부에 대한 사용자 인증을 진행한 후, 상기 제1 사용자 단말로, 상기 웹 사이트로의 로그인을 위한 상기 제1 사용자의 로그인 인증 정보를 전송할 것을 요청한다.In step S210, from the first user terminal owned by the first user among the plurality of users designated as people who have completed consent to third-party proxy authentication for the preset website, When an order to collect the first user's site usage history information for the website is received, user authentication is performed to determine whether the first user is a user who has consented to third-party proxy authentication, and then the first user is 1. Request to transmit the first user's login authentication information to the user terminal to log in to the website.

단계(S220)에서는 상기 제1 사용자 단말로부터, 상기 제1 사용자의 상기 웹 사이트로의 로그인을 위한 제1 로그인 인증 정보가 수신되면, 상기 웹 사이트에 대한 사이트 운영 서버에 접속하여, 상기 사이트 운영 서버로 상기 제1 로그인 인증 정보를 전송함으로써, 상기 제1 사용자의 상기 웹 사이트에 대한 제3자 대행 인증을 완료한 후, 상기 사이트 운영 서버로, 상기 제1 사용자의 상기 제1 기간 동안의 상기 웹 사이트에 대한 사이트 이용 이력에 대한 정보를 수집하여 회신할 것을 요청한다.In step S220, when first login authentication information for logging in to the website of the first user is received from the first user terminal, the site operation server for the website is connected to the site operation server. After completing third-party proxy authentication for the website of the first user by transmitting the first login authentication information, to the site operation server, the website for the first period of the first user We request that you collect information about your site usage history and respond to us.

단계(S230)에서는 상기 사이트 운영 서버로부터, 상기 제1 사용자의 상기 제1 기간 동안의 상기 웹 사이트에 대한 사이트 이용 이력에 대한 정보로서, 제1 사이트 이용 이력 정보가 수집되어 회신되면, 상기 제1 사이트 이용 이력 정보를 상기 제1 사용자 단말로 전송한다.In step S230, when the first site usage history information is collected and returned from the site operation server as information about the first user's site usage history for the website during the first period, the first user Site usage history information is transmitted to the first user terminal.

이때, 본 발명의 일실시예에 따르면, 단계(S220)에서는 상기 제1 사용자 단말로부터, 상기 제1 로그인 인증 정보가 수신되면, 상기 사이트 운영 서버에 접속하여, 상기 사이트 운영 서버로 상기 제1 로그인 인증 정보를 전송하면서, 상기 제1 로그인 인증 정보의 유효성을 검증할 것을 지시하는 유효성 검증 명령을 전송하는 단계, 상기 사이트 운영 서버가, 상기 유효성 검증 명령에 대응하여, 상기 웹 사이트에 가입된 회원들에 대한 회원 정보가 저장된 회원 데이터베이스 상에 상기 제1 로그인 인증 정보가 저장되어 있는지 여부를 확인함에 따라, 상기 사이트 운영 서버로부터 상기 제1 로그인 인증 정보에 대한 유효성 검증 완료 메시지가 수신되면, 상기 사이트 운영 서버로 상기 제1 사용자에 대한 2차 인증을 진행하기 위한 2차 인증 진행 명령을 전송하는 단계, 상기 사이트 운영 서버가, 상기 2차 인증 진행 명령에 대응하여, 상기 제1 사용자에 대한 2차 인증을 진행하기 위한 제1 일회용 인증 번호를 생성하고, 상기 회원 데이터베이스로부터 상기 제1 사용자에 대한 휴대폰 번호를 확인한 후, 상기 휴대폰 번호를 수신측으로 하여 상기 제1 일회용 인증 번호가 포함된 문자 메시지를 전송함과 동시에, 상기 서비스 제공 서버로 상기 제1 일회용 인증 번호를 회신할 것을 요청하는 인증 번호 회신 명령을 전송함에 따라, 상기 사이트 운영 서버로부터 상기 인증 번호 회신 명령이 수신되면, 상기 인증 번호 회신 명령을 상기 제1 사용자 단말로 전송하는 단계, 상기 제1 사용자 단말에 상기 인증 번호 회신 명령이 전송된 이후, 상기 제1 사용자가 상기 휴대폰 번호를 수신측으로 하여 수신된 상기 문자 메시지 상에 포함된 상기 제1 일회용 인증 번호를, 상기 제1 사용자 단말 상에 입력함에 따라, 상기 제1 사용자 단말로부터, 상기 제1 일회용 인증 번호가 회신되면, 상기 제1 일회용 인증 번호를 상기 사이트 운영 서버로 전송하는 단계, 상기 사이트 운영 서버에서, 상기 사이트 운영 서버로 전송된 상기 제1 일회용 인증 번호가, 상기 제1 사용자에 대한 2차 인증을 진행하기 위해 생성하였던 상기 제1 일회용 인증 번호와 일치하는 것으로 확인됨에 따라, 상기 사이트 운영 서버로부터 상기 제1 사용자에 대한 2차 인증 완료 메시지가 수신되면, 상기 제1 사용자의 상기 웹 사이트에 대한 제3자 대행 인증이 완료된 것으로 확인하는 단계 및 상기 제1 사용자의 상기 웹 사이트에 대한 제3자 대행 인증이 완료된 것으로 확인되면, 상기 사이트 운영 서버로, 상기 제1 사용자의 상기 제1 기간 동안의 상기 웹 사이트에 대한 사이트 이용 이력에 대한 정보를 수집하여 회신할 것을 요청하는 단계를 포함할 수 있다.At this time, according to one embodiment of the present invention, in step S220, when the first login authentication information is received from the first user terminal, the site operation server is accessed, and the first login is performed with the site operation server. transmitting a validation command instructing to verify the validity of the first login authentication information while transmitting authentication information, wherein the site operation server, in response to the validation command, selects members registered with the website; By checking whether the first login authentication information is stored in the member database where member information is stored, when a validation completion message for the first login authentication information is received from the site operation server, the site operation Transmitting a secondary authentication command to a server to perform secondary authentication for the first user, wherein the site operation server performs secondary authentication for the first user in response to the secondary authentication command. Generate a first one-time authentication number to proceed, confirm the mobile phone number for the first user from the member database, and send a text message containing the first one-time authentication number to the recipient using the mobile phone number. At the same time, as the authentication number reply command requesting to reply the first one-time authentication number is transmitted to the service providing server, when the authentication number reply command is received from the site operation server, the authentication number reply command is sent to the service providing server. Transmitting to a first user terminal, after the authentication number reply command is transmitted to the first user terminal, the first user uses the mobile phone number as the recipient to receive the first disposable text message included in the text message. Upon inputting an authentication number on the first user terminal, when the first one-time authentication number is returned from the first user terminal, transmitting the first one-time authentication number to the site operation server, the site As the operation server confirms that the first one-time authentication number transmitted to the site operation server matches the first one-time authentication number generated to perform secondary authentication for the first user, the site When a secondary authentication completion message for the first user is received from the operation server, confirming that third-party proxy authentication for the website of the first user has been completed and When it is confirmed that third-party proxy authentication is complete, requesting the site operation server to collect information about the site usage history of the first user for the website during the first period and send a reply. can do.

또한, 본 발명의 일실시예에 따르면, 단계(S210)에서는 상기 복수의 사용자들 각각에 대한 사전 발급된 k(k는 3이상의 자연수임)자릿수의 인증 번호(상기 복수의 사용자들 각각에 대한 인증 번호는 각 사용자의 사용자 단말에도 사전 저장되어 있음)가 저장되어 있는 인증 번호 저장부를 유지하는 단계, 상기 제1 사용자 단말로부터, 상기 제1 기간 동안의 상기 웹 사이트에 대한 상기 제1 사용자의 사이트 이용 이력 정보의 수집 명령이 수신되면, 상기 제1 사용자가 제3자 대행 인증에 동의를 완료한 사용자가 맞는지 여부에 대한 사용자 인증을 진행하기 위한 인증 이벤트를 발생시키는 단계, 상기 인증 이벤트가 발생되면, 상기 인증 번호 저장부로부터 상기 제1 사용자에 대한 제1 인증 번호를 추출하고, 해밍 무게가 t(t는 2이상, k미만의 자연수임)인 k비트의 랜덤 코드를 랜덤하게 생성한 후, 상기 제1 인증 번호를 구성하는 k자릿수의 숫자들 중, 상기 랜덤 코드에서 '1'의 코드가 위치하는 지점과 동일한 자리에 위치하는 숫자들로 구성된 t자릿수의 제1 검증 번호를 생성하는 단계, 상기 제1 사용자 단말로, 상기 랜덤 코드를 전송하면서, 상기 랜덤 코드와 상기 제1 인증 번호를 기초로 생성되는 피드백 행렬의 전송을 요청하는 단계, 상기 제1 사용자 단말로부터, 상기 피드백 행렬의 전송 요청에 대응하여 제1 피드백 행렬(상기 제1 피드백 행렬은, 상기 제1 사용자 단말이, 상기 제1 사용자 단말에 사전 저장되어 있는 상기 제1 인증 번호를 구성하는 k자릿수의 숫자들 중, 상기 서비스 제공 서버로부터 수신된 상기 랜덤 코드에서 '1'의 코드가 위치하는 지점과 동일한 자리에 위치하는 숫자들로 구성된 t자릿수의 상기 제1 검증 번호를 생성한 후, 상기 제1 검증 번호를 구성하는 t개의 숫자들을 성분으로 갖는 열벡터와 상기 제1 검증 번호를 구성하는 t개의 숫자들을 성분으로 갖는 행벡터 간의 행렬 곱을 연산함으로써 생성한, t x t의 크기의 행렬임)이 수신되면, 상기 제1 피드백 행렬을 구성하는 t2개의 성분들 중 상기 제1 피드백 행렬의 주대각선에 해당되는 t개의 대각 성분들을 추출한 후, 상기 t개의 대각 성분들 각각에 대한 제곱근을 연산하는 단계 및 상기 t개의 대각 성분들 각각에 대한 제곱근이 상기 제1 검증 번호를 구성하는 t개의 숫자들 각각과 모두 일치하는 것으로 확인되면, 상기 제1 사용자가 제3자 대행 인증에 동의를 완료한 사용자가 맞는 것으로 인증 처리를 완료하는 단계를 포함할 수 있다.In addition, according to an embodiment of the present invention, in step S210, a pre-issued k (k is a natural number of 3 or more) digit authentication number for each of the plurality of users (authentication for each of the plurality of users) maintaining an authentication number storage unit in which (the number is also pre-stored in the user terminal of each user) stored, from the first user terminal, the first user's use of the website for the first period of time; When a command to collect history information is received, generating an authentication event to proceed with user authentication as to whether the first user is a user who has consented to third-party proxy authentication; when the authentication event occurs, After extracting the first authentication number for the first user from the authentication number storage unit and randomly generating a k-bit random code with a Hamming weight t (t is a natural number greater than or equal to 2 and less than k), the Among the k-digit numbers constituting the first authentication number, generating a t-digit first verification number consisting of numbers located in the same position as the point where the code '1' is located in the random code, Requesting transmission of a feedback matrix generated based on the random code and the first authentication number while transmitting the random code to a first user terminal, requesting transmission of the feedback matrix from the first user terminal Correspondingly, a first feedback matrix (the first feedback matrix is provided by the first user terminal, among the k-digit numbers constituting the first authentication number pre-stored in the first user terminal, the service providing server After generating the first verification number of t digits consisting of numbers located in the same position as the point where the code of '1' is located in the random code received from, t numbers constituting the first verification number When a matrix of the size of txt (generated by calculating a matrix product between a column vector having elements as components and a row vector having t numbers constituting the first verification number as elements) is received, constituting the first feedback matrix After extracting t diagonal components corresponding to the main diagonal of the first feedback matrix among t 2 components, calculating a square root for each of the t diagonal components and calculating a square root for each of the t diagonal components. If it is confirmed that each of the t numbers constituting the first verification number matches, completing the authentication process as if the first user is a user who has completed consent to third-party proxy authentication. You can.

이때, 본 발명의 일실시예에 따르면, 단계(S230)에서는 상기 복수의 사용자들 각각에 대한 사전 설정된 해시 함수(상기 복수의 사용자들 각각에 대한 해시 함수는 각 사용자의 사용자 단말에도 사전 저장되어 있음)가 저장되어 있는 해시 함수 저장부를 유지하는 단계, 상기 사이트 운영 서버로부터, 상기 제1 사이트 이용 이력 정보가 수집되어 회신되면, 상기 제1 사이트 이용 이력 정보를 암호화하여 상기 제1 사용자 단말로 전송하기 위한 암호화 이벤트를 발생시키는 단계, 상기 암호화 이벤트가 발생되면, 상기 인증 번호 저장부로부터 상기 제1 사용자에 대한 상기 제1 인증 번호를 추출하고, 최고차수가 k-1인 2진 다항식의 각 계수를, 상기 제1 인증 번호를 구성하는 k개의 숫자들 각각에 대해 모듈로-2 연산을 수행하였을 때의 결과 값으로 지정함으로써, 제1 다항식을 생성하는 단계, 최고차수가 n(n은 자연수임)인 2진 다항식의 각 계수를 랜덤하게 지정함으로써, 제2 다항식을 생성하는 단계, 상기 제1 다항식과 상기 제2 다항식을 서로 곱하여 최고차수가 k-1+n이 되는 2진 다항식인 연산 다항식을 생성한 후, 상기 연산 다항식의 각 계수를 비트열로 갖는 k+n 비트의 시드 코드를 생성하는 단계, 상기 시드 코드가 생성되면, 상기 해시 함수 저장부로부터 상기 제1 사용자에 대한 제1 해시 함수를 추출한 후, 상기 제1 해시 함수에 상기 시드 코드를 입력으로 인가함으로써, 제1 해시 값을 생성하는 단계 및 상기 제1 해시 값이 생성되면, 상기 제1 사이트 이용 이력 정보에 대한 데이터를 상기 제1 해시 값으로 암호화하여 제1 암호화 데이터를 생성한 후, 상기 제1 사용자 단말로, 상기 제1 암호화 데이터를 전송하면서, 상기 제2 다항식을 상기 제1 암호화 데이터의 복호화를 위한 단서 정보로 전송하는 단계를 포함할 수 있다.At this time, according to one embodiment of the present invention, in step S230, a preset hash function for each of the plurality of users (the hash function for each of the plurality of users is also pre-stored in the user terminal of each user) ) Maintaining a hash function storage unit where the first site usage history information is stored, when the first site usage history information is collected and returned from the site operation server, encrypting the first site usage history information and transmitting it to the first user terminal. Generating an encryption event for, when the encryption event occurs, extracting the first authentication number for the first user from the authentication number storage unit, and calculating each coefficient of a binary polynomial whose highest degree is k-1. , generating a first polynomial by specifying the result value when performing modulo-2 operation on each of the k numbers constituting the first authentication number, the highest degree being n (n is a natural number) generating a second polynomial by randomly specifying each coefficient of the binary polynomial, multiplying the first polynomial and the second polynomial to create an operation polynomial that is a binary polynomial whose highest degree is k-1+n. After generating, generating a seed code of k+n bits having each coefficient of the operation polynomial as a bit string; when the seed code is generated, a first hash function for the first user is generated from the hash function storage unit. After extracting, generating a first hash value by applying the seed code as an input to the first hash function, and when the first hash value is generated, data about the first site usage history information is stored in the first hash function. 1 After encrypting with a hash value to generate first encrypted data, transmitting the first encrypted data to the first user terminal and transmitting the second polynomial as clue information for decrypting the first encrypted data May include steps.

이때, 상기 제1 사용자 단말은 상기 서비스 제공 서버로부터 상기 제1 암호화 데이터와 상기 제2 다항식이 수신되면, 상기 제1 사용자 단말에 저장되어 있는 상기 제1 인증 번호와 상기 제1 해시 함수 및 상기 서비스 제공 서버로부터 수신된 상기 제2 다항식을 기초로 상기 제1 암호화 데이터에 대한 복호화를 수행함으로써, 상기 제1 사이트 이용 이력 정보를 복원할 수 있다.At this time, when the first encryption data and the second polynomial are received from the service providing server, the first user terminal receives the first authentication number, the first hash function, and the service stored in the first user terminal. By performing decryption on the first encrypted data based on the second polynomial received from the providing server, the first site use history information can be restored.

이때, 본 발명의 일실시예에 따르면, 상기 제1 사용자 단말은 상기 서비스 제공 서버로부터 상기 제1 암호화 데이터와 상기 제2 다항식이 수신되면, 최고차수가 k-1인 2진 다항식의 각 계수를, 상기 제1 사용자 단말에 저장되어 있는 상기 제1 인증 번호를 구성하는 k개의 숫자들 각각에 대해 모듈로-2 연산을 수행하였을 때의 결과 값으로 지정함으로써, 상기 제1 다항식을 생성하고, 상기 제1 다항식과 상기 서비스 제공 서버로부터 수신된 상기 제2 다항식을 서로 곱하여 최고차수가 k-1+n이 되는 2진 다항식인 상기 연산 다항식을 생성함으로써, 상기 연산 다항식의 각 계수를 비트열로 갖는 k+n 비트의 상기 시드 코드를 생성한 후, 상기 제1 사용자 단말에 저장되어 있는 상기 제1 해시 함수에 상기 시드 코드를 입력으로 인가하여 상기 제1 해시 값을 생성하고, 상기 제1 해시 값을 기초로 상기 제1 암호화 데이터에 대한 복호화를 수행함으로써, 상기 제1 사이트 이용 이력 정보를 복원할 수 있다.At this time, according to one embodiment of the present invention, when the first user terminal receives the first encrypted data and the second polynomial from the service providing server, each coefficient of the binary polynomial whose highest degree is k-1 , Generating the first polynomial by designating it as the result value of performing modulo-2 operation on each of the k numbers constituting the first authentication number stored in the first user terminal, and By multiplying the first polynomial and the second polynomial received from the service providing server to generate the operation polynomial, which is a binary polynomial whose highest degree is k-1+n, each coefficient of the operation polynomial is a bit string. After generating the seed code of k+n bits, the seed code is applied as an input to the first hash function stored in the first user terminal to generate the first hash value, and the first hash value is generated. By performing decryption on the first encrypted data based on , the first site use history information can be restored.

이상, 도 2를 참조하여 본 발명의 일실시예에 따른 서비스 제공 서버의 동작 방법에 대해 설명하였다. 여기서, 본 발명의 일실시예에 따른 서비스 제공 서버의 동작 방법은 도 1을 이용하여 설명한 서비스 제공 서버(110)의 동작에 대한 구성과 대응될 수 있으므로, 이에 대한 보다 상세한 설명은 생략하기로 한다.Above, the operation method of the service providing server according to an embodiment of the present invention has been described with reference to FIG. 2. Here, the operation method of the service providing server according to an embodiment of the present invention may correspond to the configuration of the operation of the service providing server 110 described using FIG. 1, so a more detailed description thereof will be omitted. .

본 발명의 일실시예에 따른 서비스 제공 서버의 동작 방법은 컴퓨터와의 결합을 통해 실행시키기 위한 저장매체에 저장된 컴퓨터 프로그램으로 구현될 수 있다.The operating method of the service providing server according to an embodiment of the present invention may be implemented as a computer program stored in a storage medium to be executed through combination with a computer.

또한, 본 발명의 일실시예에 따른 서비스 제공 서버의 동작 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. Additionally, the operating method of the service providing server according to an embodiment of the present invention may be implemented in the form of program instructions that can be executed through various computer means and recorded on a computer-readable medium. The computer-readable medium may include program instructions, data files, data structures, etc., singly or in combination. Program instructions recorded on the medium may be specially designed and constructed for the present invention or may be known and usable by those skilled in the art of computer software. Examples of computer-readable recording media include magnetic media such as hard disks, floppy disks, and magnetic tapes, optical media such as CD-ROMs and DVDs, and magnetic media such as floptical disks. -Includes optical media (magneto-optical media) and hardware devices specifically configured to store and execute program instructions, such as ROM, RAM, flash memory, etc. Examples of program instructions include machine language code, such as that produced by a compiler, as well as high-level language code that can be executed by a computer using an interpreter, etc.

이상과 같이 본 발명에서는 구체적인 구성 요소 등과 같은 특정 사항들과 한정된 실시예 및 도면에 의해 설명되었으나 이는 본 발명의 보다 전반적인 이해를 돕기 위해서 제공된 것일 뿐, 본 발명은 상기의 실시예에 한정되는 것은 아니며, 본 발명이 속하는 분야에서 통상적인 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형이 가능하다.As described above, the present invention has been described with specific details such as specific components and limited embodiments and drawings, but this is only provided to facilitate a more general understanding of the present invention, and the present invention is not limited to the above embodiments. , those skilled in the art can make various modifications and variations from this description.

따라서, 본 발명의 사상은 설명된 실시예에 국한되어 정해져서는 아니되며, 후술하는 특허청구범위뿐 아니라 이 특허청구범위와 균등하거나 등가적 변형이 있는 모든 것들은 본 발명 사상의 범주에 속한다고 할 것이다.Accordingly, the spirit of the present invention should not be limited to the described embodiments, and the scope of the patent claims described below as well as all modifications that are equivalent or equivalent to the scope of this patent claim shall fall within the scope of the spirit of the present invention. .

110: 서비스 제공 서버
111: 인증 정보 요청부 112: 이력 정보 요청부
113: 이력 정보 전송부 114: 유효성 검증 지시부
115: 2차 인증 요청부 116: 인증 번호 요청부
117: 인증 번호 전송부 118: 대행 인증 완료부
119: 회신 요청부 120: 인증 번호 저장부
121: 인증 이벤트 발생부 122: 검증 번호 생성부
123: 피드백 요청부 124: 제곱근 연산부
125: 인증 완료 처리부 126: 해시 함수 저장부
127: 암호화 이벤트 발생부 128: 제1 다항식 생성부
129: 제2 다항식 생성부 130: 시드 코드 생성부
131: 해시 값 생성부 132: 데이터 전송부
101: 제1 사용자 단말
102: 사이트 운영 서버
10: 제1 사용자
11: 휴대폰
110: Service provision server
111: Authentication information request unit 112: History information request unit
113: history information transmission unit 114: validation instruction unit
115: Secondary authentication request unit 116: Authentication number request unit
117: Authentication number transmission unit 118: Agency authentication completion unit
119: Reply request unit 120: Authentication number storage unit
121: Authentication event generation unit 122: Verification number generation unit
123: Feedback request unit 124: Square root operation unit
125: Authentication completion processing unit 126: Hash function storage unit
127: Encryption event generation unit 128: First polynomial generation unit
129: second polynomial generator 130: seed code generator
131: Hash value generation unit 132: Data transmission unit
101: first user terminal
102: Site operation server
10: First user
11: mobile phone

Claims (12)

제3자 대행 인증을 통해 웹 사이트에 대한 개인의 사이트 이용 이력 정보를 수집하여 제공할 수 있는 서비스 제공 서버에 있어서,
사전 설정된 웹 사이트에 대한, 제3자 대행 인증에 동의를 완료한 사람으로 지정된 복수의 사용자들 중, 제1 사용자가 보유하고 있는 제1 사용자 단말로부터, 제1 기간 동안의 상기 웹 사이트에 대한 상기 제1 사용자의 사이트 이용 이력 정보의 수집 명령이 수신되면, 상기 제1 사용자가 제3자 대행 인증에 동의를 완료한 사용자가 맞는지 여부에 대한 사용자 인증을 진행한 후, 상기 제1 사용자 단말로, 상기 웹 사이트로의 로그인을 위한 상기 제1 사용자의 로그인 인증 정보를 전송할 것을 요청하는 인증 정보 요청부;
상기 제1 사용자 단말로부터, 상기 제1 사용자의 상기 웹 사이트로의 로그인을 위한 제1 로그인 인증 정보가 수신되면, 상기 웹 사이트에 대한 사이트 운영 서버에 접속하여, 상기 사이트 운영 서버로 상기 제1 로그인 인증 정보를 전송함으로써, 상기 제1 사용자의 상기 웹 사이트에 대한 제3자 대행 인증을 완료한 후, 상기 사이트 운영 서버로, 상기 제1 사용자의 상기 제1 기간 동안의 상기 웹 사이트에 대한 사이트 이용 이력에 대한 정보를 수집하여 회신할 것을 요청하는 이력 정보 요청부; 및
상기 사이트 운영 서버로부터, 상기 제1 사용자의 상기 제1 기간 동안의 상기 웹 사이트에 대한 사이트 이용 이력에 대한 정보로서, 제1 사이트 이용 이력 정보가 수집되어 회신되면, 상기 제1 사이트 이용 이력 정보를 상기 제1 사용자 단말로 전송하는 이력 정보 전송부
를 포함하고,
상기 이력 정보 요청부는
상기 제1 사용자 단말로부터, 상기 제1 로그인 인증 정보가 수신되면, 상기 사이트 운영 서버에 접속하여, 상기 사이트 운영 서버로 상기 제1 로그인 인증 정보를 전송하면서, 상기 제1 로그인 인증 정보의 유효성을 검증할 것을 지시하는 유효성 검증 명령을 전송하는 유효성 검증 지시부;
상기 사이트 운영 서버가, 상기 유효성 검증 명령에 대응하여, 상기 웹 사이트에 가입된 회원들에 대한 회원 정보가 저장된 회원 데이터베이스 상에 상기 제1 로그인 인증 정보가 저장되어 있는지 여부를 확인함에 따라, 상기 사이트 운영 서버로부터 상기 제1 로그인 인증 정보에 대한 유효성 검증 완료 메시지가 수신되면, 상기 사이트 운영 서버로 상기 제1 사용자에 대한 2차 인증을 진행하기 위한 2차 인증 진행 명령을 전송하는 2차 인증 요청부;
상기 사이트 운영 서버가, 상기 2차 인증 진행 명령에 대응하여, 상기 제1 사용자에 대한 2차 인증을 진행하기 위한 제1 일회용 인증 번호를 생성하고, 상기 회원 데이터베이스로부터 상기 제1 사용자에 대한 휴대폰 번호를 확인한 후, 상기 휴대폰 번호를 수신측으로 하여 상기 제1 일회용 인증 번호가 포함된 문자 메시지를 전송함과 동시에, 상기 서비스 제공 서버로 상기 제1 일회용 인증 번호를 회신할 것을 요청하는 인증 번호 회신 명령을 전송함에 따라, 상기 사이트 운영 서버로부터 상기 인증 번호 회신 명령이 수신되면, 상기 인증 번호 회신 명령을 상기 제1 사용자 단말로 전송하는 인증 번호 요청부;
상기 제1 사용자 단말에 상기 인증 번호 회신 명령이 전송된 이후, 상기 제1 사용자가 상기 휴대폰 번호를 수신측으로 하여 수신된 상기 문자 메시지 상에 포함된 상기 제1 일회용 인증 번호를, 상기 제1 사용자 단말 상에 입력함에 따라, 상기 제1 사용자 단말로부터, 상기 제1 일회용 인증 번호가 회신되면, 상기 제1 일회용 인증 번호를 상기 사이트 운영 서버로 전송하는 인증 번호 전송부;
상기 사이트 운영 서버에서, 상기 사이트 운영 서버로 전송된 상기 제1 일회용 인증 번호가, 상기 제1 사용자에 대한 2차 인증을 진행하기 위해 생성하였던 상기 제1 일회용 인증 번호와 일치하는 것으로 확인됨에 따라, 상기 사이트 운영 서버로부터 상기 제1 사용자에 대한 2차 인증 완료 메시지가 수신되면, 상기 제1 사용자의 상기 웹 사이트에 대한 제3자 대행 인증이 완료된 것으로 확인하는 대행 인증 완료부; 및
상기 제1 사용자의 상기 웹 사이트에 대한 제3자 대행 인증이 완료된 것으로 확인되면, 상기 사이트 운영 서버로, 상기 제1 사용자의 상기 제1 기간 동안의 상기 웹 사이트에 대한 사이트 이용 이력에 대한 정보를 수집하여 회신할 것을 요청하는 회신 요청부
를 포함하는 서비스 제공 서버.
In the service provision server that can collect and provide information on an individual's website usage history through third-party agency authentication,
From a first user terminal owned by a first user among a plurality of users designated as persons who have completed consent to third-party proxy authentication for a preset website, information about the website for a first period of time is received. When an order to collect the first user's site usage history information is received, user authentication is performed to determine whether the first user is a user who has consented to third-party proxy authentication, and then, to the first user terminal, an authentication information request unit requesting to transmit login authentication information of the first user for logging in to the website;
When first login authentication information for logging in to the website of the first user is received from the first user terminal, the site operation server for the website is accessed, and the first login is performed to the site operation server. After completing third-party proxy authentication for the website of the first user by transmitting authentication information, to the site operation server, the first user's use of the website during the first period of time A history information request unit that collects information about history and requests a response; and
From the site operation server, when the first site usage history information is collected and returned as information about the first user's site usage history of the website during the first period, the first site usage history information is collected. History information transmission unit transmitting to the first user terminal
Including,
The history information request section
When the first login authentication information is received from the first user terminal, it connects to the site operation server and verifies the validity of the first login authentication information while transmitting the first login authentication information to the site operation server. a validation instruction unit that transmits a validation command instructing to do something;
As the site operation server, in response to the validation command, checks whether the first login authentication information is stored in a member database that stores member information about members registered with the website, the site When a validation completion message for the first login authentication information is received from the operation server, a secondary authentication request unit transmits a secondary authentication command to proceed with secondary authentication for the first user to the site operation server. ;
The site operation server generates a first one-time authentication number for performing secondary authentication for the first user in response to the secondary authentication command, and generates a mobile phone number for the first user from the member database. After confirming, a text message containing the first one-time authentication number is sent to the mobile phone number as the recipient, and at the same time, an authentication number reply command is sent requesting the service providing server to reply with the first one-time authentication number. Upon transmission, when the authentication number reply command is received from the site operation server, an authentication number request unit transmits the authentication number reply command to the first user terminal;
After the authentication number reply command is transmitted to the first user terminal, the first user sends the first one-time authentication number included in the text message received with the mobile phone number as the recipient to the first user terminal. When the first one-time authentication number is returned from the first user terminal upon input on the site, an authentication number transmission unit that transmits the first one-time authentication number to the site operation server;
As the site operation server confirms that the first one-time authentication number transmitted to the site operation server matches the first one-time authentication number generated to perform secondary authentication for the first user, When a secondary authentication completion message for the first user is received from the site operation server, a proxy authentication completion unit confirms that third-party proxy authentication for the website of the first user has been completed; and
When it is confirmed that the first user's third-party proxy authentication for the website has been completed, information about the first user's site usage history for the website during the first period is sent to the site operation server. Reply request section requesting collection and response
A service providing server including.
삭제delete 제1항에 있어서,
상기 인증 정보 요청부는
상기 복수의 사용자들 각각에 대한 사전 발급된 k(k는 3이상의 자연수임)자릿수의 인증 번호 - 상기 복수의 사용자들 각각에 대한 인증 번호는 각 사용자의 사용자 단말에도 사전 저장되어 있음 - 가 저장되어 있는 인증 번호 저장부;
상기 제1 사용자 단말로부터, 상기 제1 기간 동안의 상기 웹 사이트에 대한 상기 제1 사용자의 사이트 이용 이력 정보의 수집 명령이 수신되면, 상기 제1 사용자가 제3자 대행 인증에 동의를 완료한 사용자가 맞는지 여부에 대한 사용자 인증을 진행하기 위한 인증 이벤트를 발생시키는 인증 이벤트 발생부;
상기 인증 이벤트가 발생되면, 상기 인증 번호 저장부로부터 상기 제1 사용자에 대한 제1 인증 번호를 추출하고, 해밍 무게가 t(t는 2이상, k미만의 자연수임)인 k비트의 랜덤 코드를 랜덤하게 생성한 후, 상기 제1 인증 번호를 구성하는 k자릿수의 숫자들 중, 상기 랜덤 코드에서 '1'의 코드가 위치하는 지점과 동일한 자리에 위치하는 숫자들로 구성된 t자릿수의 제1 검증 번호를 생성하는 검증 번호 생성부;
상기 제1 사용자 단말로, 상기 랜덤 코드를 전송하면서, 상기 랜덤 코드와 상기 제1 인증 번호를 기초로 생성되는 피드백 행렬의 전송을 요청하는 피드백 요청부;
상기 제1 사용자 단말로부터, 상기 피드백 행렬의 전송 요청에 대응하여 제1 피드백 행렬 - 상기 제1 피드백 행렬은, 상기 제1 사용자 단말이, 상기 제1 사용자 단말에 사전 저장되어 있는 상기 제1 인증 번호를 구성하는 k자릿수의 숫자들 중, 상기 서비스 제공 서버로부터 수신된 상기 랜덤 코드에서 '1'의 코드가 위치하는 지점과 동일한 자리에 위치하는 숫자들로 구성된 t자릿수의 상기 제1 검증 번호를 생성한 후, 상기 제1 검증 번호를 구성하는 t개의 숫자들을 성분으로 갖는 열벡터와 상기 제1 검증 번호를 구성하는 t개의 숫자들을 성분으로 갖는 행벡터 간의 행렬 곱을 연산함으로써 생성한, t x t의 크기의 행렬임 - 이 수신되면, 상기 제1 피드백 행렬을 구성하는 t2개의 성분들 중 상기 제1 피드백 행렬의 주대각선(Main Diagonal)에 해당되는 t개의 대각 성분들을 추출한 후, 상기 t개의 대각 성분들 각각에 대한 제곱근을 연산하는 제곱근 연산부; 및
상기 t개의 대각 성분들 각각에 대한 제곱근이 상기 제1 검증 번호를 구성하는 t개의 숫자들 각각과 모두 일치하는 것으로 확인되면, 상기 제1 사용자가 제3자 대행 인증에 동의를 완료한 사용자가 맞는 것으로 인증 처리를 완료하는 인증 완료 처리부
를 포함하는 서비스 제공 서버.
According to paragraph 1,
The authentication information request unit
A pre-issued authentication number of k (k is a natural number of 3 or more) digits for each of the plurality of users - the authentication number for each of the plurality of users is also pre-stored in each user's user terminal - is stored. Authentication number storage unit;
When an order to collect the first user's site usage history information for the website during the first period is received from the first user terminal, the first user has completed consent to third-party proxy authentication. an authentication event generation unit that generates an authentication event to proceed with user authentication as to whether the is correct;
When the authentication event occurs, the first authentication number for the first user is extracted from the authentication number storage unit, and a k-bit random code with a Hamming weight t (t is a natural number greater than or equal to 2 and less than k) is generated. After randomly generating, first verification of t digits consisting of numbers located in the same position as the point where the code '1' is located in the random code among the k digits constituting the first authentication number. a verification number generator that generates a number;
a feedback request unit that transmits the random code to the first user terminal and requests transmission of a feedback matrix generated based on the random code and the first authentication number;
From the first user terminal, a first feedback matrix in response to a request for transmission of the feedback matrix - the first feedback matrix is, the first user terminal, the first authentication number pre-stored in the first user terminal Among the k-digit numbers constituting the , generate the t-digit first verification number consisting of numbers located in the same position as the point where the code '1' is located in the random code received from the service providing server. Then, a matrix of the size of txt is generated by calculating a matrix product between a column vector having as components the t numbers constituting the first verification number and a row vector having as components the t numbers constituting the first verification number. When - is received, among the t 2 components constituting the first feedback matrix, t diagonal components corresponding to the main diagonal of the first feedback matrix are extracted, and then each of the t diagonal components A square root operation unit that calculates the square root for; and
If the square root of each of the t diagonal components is confirmed to match each of the t numbers constituting the first verification number, it is confirmed that the first user is a user who has consented to third-party proxy authentication. Authentication completion processing unit that completes authentication processing with
A service providing server including.
제3항에 있어서,
상기 이력 정보 전송부는
상기 복수의 사용자들 각각에 대한 사전 설정된 해시 함수 - 상기 복수의 사용자들 각각에 대한 해시 함수는 각 사용자의 사용자 단말에도 사전 저장되어 있음 - 가 저장되어 있는 해시 함수 저장부;
상기 사이트 운영 서버로부터, 상기 제1 사이트 이용 이력 정보가 수집되어 회신되면, 상기 제1 사이트 이용 이력 정보를 암호화하여 상기 제1 사용자 단말로 전송하기 위한 암호화 이벤트를 발생시키는 암호화 이벤트 발생부;
상기 암호화 이벤트가 발생되면, 상기 인증 번호 저장부로부터 상기 제1 사용자에 대한 상기 제1 인증 번호를 추출하고, 최고차수가 k-1인 2진 다항식의 각 계수를, 상기 제1 인증 번호를 구성하는 k개의 숫자들 각각에 대해 모듈로-2(modulo-2) 연산을 수행하였을 때의 결과 값으로 지정함으로써, 제1 다항식을 생성하는 제1 다항식 생성부;
최고차수가 n(n은 자연수임)인 2진 다항식의 각 계수를 랜덤하게 지정함으로써, 제2 다항식을 생성하는 제2 다항식 생성부;
상기 제1 다항식과 상기 제2 다항식을 서로 곱하여 최고차수가 k-1+n이 되는 2진 다항식인 연산 다항식을 생성한 후, 상기 연산 다항식의 각 계수를 비트열로 갖는 k+n 비트의 시드(seed) 코드를 생성하는 시드 코드 생성부;
상기 시드 코드가 생성되면, 상기 해시 함수 저장부로부터 상기 제1 사용자에 대한 제1 해시 함수를 추출한 후, 상기 제1 해시 함수에 상기 시드 코드를 입력으로 인가함으로써, 제1 해시 값을 생성하는 해시 값 생성부; 및
상기 제1 해시 값이 생성되면, 상기 제1 사이트 이용 이력 정보에 대한 데이터를 상기 제1 해시 값으로 암호화하여 제1 암호화 데이터를 생성한 후, 상기 제1 사용자 단말로, 상기 제1 암호화 데이터를 전송하면서, 상기 제2 다항식을 상기 제1 암호화 데이터의 복호화를 위한 단서 정보로 전송하는 데이터 전송부
를 포함하고,
상기 제1 사용자 단말은
상기 서비스 제공 서버로부터 상기 제1 암호화 데이터와 상기 제2 다항식이 수신되면, 상기 제1 사용자 단말에 저장되어 있는 상기 제1 인증 번호와 상기 제1 해시 함수 및 상기 서비스 제공 서버로부터 수신된 상기 제2 다항식을 기초로 상기 제1 암호화 데이터에 대한 복호화를 수행함으로써, 상기 제1 사이트 이용 이력 정보를 복원하는 것을 특징으로 하는 서비스 제공 서버.
According to paragraph 3,
The history information transmission unit
a hash function storage unit storing a preset hash function for each of the plurality of users - the hash function for each of the plurality of users is also pre-stored in each user's user terminal;
When the first site usage history information is collected and returned from the site operation server, an encryption event generator generates an encryption event to encrypt the first site usage history information and transmit it to the first user terminal;
When the encryption event occurs, the first authentication number for the first user is extracted from the authentication number storage unit, and each coefficient of a binary polynomial with the highest degree k-1 constitutes the first authentication number. a first polynomial generator that generates a first polynomial by specifying a result value of performing a modulo-2 operation on each of the k numbers;
a second polynomial generator that generates a second polynomial by randomly specifying each coefficient of a binary polynomial whose highest degree is n (n is a natural number);
After multiplying the first polynomial and the second polynomial to generate an operation polynomial, which is a binary polynomial with the highest degree of k-1+n, a k+n bit seed having each coefficient of the operation polynomial as a bit string (seed) A seed code generator that generates a code;
When the seed code is generated, the first hash function for the first user is extracted from the hash function storage unit, and then the seed code is applied as an input to the first hash function, thereby generating a first hash value. value generation unit; and
When the first hash value is generated, data about the first site usage history information is encrypted with the first hash value to generate first encrypted data, and then the first encrypted data is sent to the first user terminal. While transmitting, a data transmission unit that transmits the second polynomial as clue information for decrypting the first encrypted data
Including,
The first user terminal is
When the first encryption data and the second polynomial are received from the service providing server, the first authentication number and the first hash function stored in the first user terminal and the second received from the service providing server A service providing server that restores the first site use history information by decrypting the first encrypted data based on a polynomial.
제4항에 있어서,
상기 제1 사용자 단말은
상기 서비스 제공 서버로부터 상기 제1 암호화 데이터와 상기 제2 다항식이 수신되면, 최고차수가 k-1인 2진 다항식의 각 계수를, 상기 제1 사용자 단말에 저장되어 있는 상기 제1 인증 번호를 구성하는 k개의 숫자들 각각에 대해 모듈로-2 연산을 수행하였을 때의 결과 값으로 지정함으로써, 상기 제1 다항식을 생성하고, 상기 제1 다항식과 상기 서비스 제공 서버로부터 수신된 상기 제2 다항식을 서로 곱하여 최고차수가 k-1+n이 되는 2진 다항식인 상기 연산 다항식을 생성함으로써, 상기 연산 다항식의 각 계수를 비트열로 갖는 k+n 비트의 상기 시드 코드를 생성한 후, 상기 제1 사용자 단말에 저장되어 있는 상기 제1 해시 함수에 상기 시드 코드를 입력으로 인가하여 상기 제1 해시 값을 생성하고, 상기 제1 해시 값을 기초로 상기 제1 암호화 데이터에 대한 복호화를 수행함으로써, 상기 제1 사이트 이용 이력 정보를 복원하는 것을 특징으로 하는 서비스 제공 서버.
According to clause 4,
The first user terminal is
When the first encryption data and the second polynomial are received from the service providing server, each coefficient of the binary polynomial with the highest degree k-1 constitutes the first authentication number stored in the first user terminal. The first polynomial is generated by specifying the result value when modulo-2 operation is performed on each of the k numbers, and the first polynomial and the second polynomial received from the service providing server are connected to each other. By generating the operation polynomial, which is a binary polynomial whose highest degree is k-1+n by multiplying, the seed code of k+n bits having each coefficient of the operation polynomial as a bit string is generated, and then the first user By applying the seed code as an input to the first hash function stored in the terminal to generate the first hash value, and decrypting the first encrypted data based on the first hash value, 1 A service providing server characterized by restoring site usage history information.
제3자 대행 인증을 통해 웹 사이트에 대한 개인의 사이트 이용 이력 정보를 수집하여 제공할 수 있는 서비스 제공 서버의 동작 방법에 있어서,
사전 설정된 웹 사이트에 대한, 제3자 대행 인증에 동의를 완료한 사람으로 지정된 복수의 사용자들 중, 제1 사용자가 보유하고 있는 제1 사용자 단말로부터, 제1 기간 동안의 상기 웹 사이트에 대한 상기 제1 사용자의 사이트 이용 이력 정보의 수집 명령이 수신되면, 상기 제1 사용자가 제3자 대행 인증에 동의를 완료한 사용자가 맞는지 여부에 대한 사용자 인증을 진행한 후, 상기 제1 사용자 단말로, 상기 웹 사이트로의 로그인을 위한 상기 제1 사용자의 로그인 인증 정보를 전송할 것을 요청하는 단계;
상기 제1 사용자 단말로부터, 상기 제1 사용자의 상기 웹 사이트로의 로그인을 위한 제1 로그인 인증 정보가 수신되면, 상기 웹 사이트에 대한 사이트 운영 서버에 접속하여, 상기 사이트 운영 서버로 상기 제1 로그인 인증 정보를 전송함으로써, 상기 제1 사용자의 상기 웹 사이트에 대한 제3자 대행 인증을 완료한 후, 상기 사이트 운영 서버로, 상기 제1 사용자의 상기 제1 기간 동안의 상기 웹 사이트에 대한 사이트 이용 이력에 대한 정보를 수집하여 회신할 것을 요청하는 단계; 및
상기 사이트 운영 서버로부터, 상기 제1 사용자의 상기 제1 기간 동안의 상기 웹 사이트에 대한 사이트 이용 이력에 대한 정보로서, 제1 사이트 이용 이력 정보가 수집되어 회신되면, 상기 제1 사이트 이용 이력 정보를 상기 제1 사용자 단말로 전송하는 단계
를 포함하고,
상기 사이트 이용 이력에 대한 정보를 수집하여 회신할 것을 요청하는 단계는
상기 제1 사용자 단말로부터, 상기 제1 로그인 인증 정보가 수신되면, 상기 사이트 운영 서버에 접속하여, 상기 사이트 운영 서버로 상기 제1 로그인 인증 정보를 전송하면서, 상기 제1 로그인 인증 정보의 유효성을 검증할 것을 지시하는 유효성 검증 명령을 전송하는 단계;
상기 사이트 운영 서버가, 상기 유효성 검증 명령에 대응하여, 상기 웹 사이트에 가입된 회원들에 대한 회원 정보가 저장된 회원 데이터베이스 상에 상기 제1 로그인 인증 정보가 저장되어 있는지 여부를 확인함에 따라, 상기 사이트 운영 서버로부터 상기 제1 로그인 인증 정보에 대한 유효성 검증 완료 메시지가 수신되면, 상기 사이트 운영 서버로 상기 제1 사용자에 대한 2차 인증을 진행하기 위한 2차 인증 진행 명령을 전송하는 단계;
상기 사이트 운영 서버가, 상기 2차 인증 진행 명령에 대응하여, 상기 제1 사용자에 대한 2차 인증을 진행하기 위한 제1 일회용 인증 번호를 생성하고, 상기 회원 데이터베이스로부터 상기 제1 사용자에 대한 휴대폰 번호를 확인한 후, 상기 휴대폰 번호를 수신측으로 하여 상기 제1 일회용 인증 번호가 포함된 문자 메시지를 전송함과 동시에, 상기 서비스 제공 서버로 상기 제1 일회용 인증 번호를 회신할 것을 요청하는 인증 번호 회신 명령을 전송함에 따라, 상기 사이트 운영 서버로부터 상기 인증 번호 회신 명령이 수신되면, 상기 인증 번호 회신 명령을 상기 제1 사용자 단말로 전송하는 단계;
상기 제1 사용자 단말에 상기 인증 번호 회신 명령이 전송된 이후, 상기 제1 사용자가 상기 휴대폰 번호를 수신측으로 하여 수신된 상기 문자 메시지 상에 포함된 상기 제1 일회용 인증 번호를, 상기 제1 사용자 단말 상에 입력함에 따라, 상기 제1 사용자 단말로부터, 상기 제1 일회용 인증 번호가 회신되면, 상기 제1 일회용 인증 번호를 상기 사이트 운영 서버로 전송하는 단계;
상기 사이트 운영 서버에서, 상기 사이트 운영 서버로 전송된 상기 제1 일회용 인증 번호가, 상기 제1 사용자에 대한 2차 인증을 진행하기 위해 생성하였던 상기 제1 일회용 인증 번호와 일치하는 것으로 확인됨에 따라, 상기 사이트 운영 서버로부터 상기 제1 사용자에 대한 2차 인증 완료 메시지가 수신되면, 상기 제1 사용자의 상기 웹 사이트에 대한 제3자 대행 인증이 완료된 것으로 확인하는 단계; 및
상기 제1 사용자의 상기 웹 사이트에 대한 제3자 대행 인증이 완료된 것으로 확인되면, 상기 사이트 운영 서버로, 상기 제1 사용자의 상기 제1 기간 동안의 상기 웹 사이트에 대한 사이트 이용 이력에 대한 정보를 수집하여 회신할 것을 요청하는 단계
를 포함하는 서비스 제공 서버의 동작 방법.
In the method of operating a service providing server that can collect and provide information on an individual's site usage history for a website through third-party authentication,
From a first user terminal owned by a first user among a plurality of users designated as persons who have completed consent to third-party proxy authentication for a preset website, information about the website for a first period of time is received. When an order to collect the first user's site usage history information is received, user authentication is performed to determine whether the first user is a user who has consented to third-party proxy authentication, and then, to the first user terminal, requesting to transmit login authentication information of the first user for logging into the website;
When first login authentication information for logging in to the website of the first user is received from the first user terminal, the site operation server for the website is accessed, and the first login is performed to the site operation server. After completing third-party proxy authentication for the website of the first user by transmitting authentication information, to the site operation server, the first user's use of the website during the first period of time Collecting information about history and requesting a response; and
From the site operation server, when the first site usage history information is collected and returned as information about the first user's site usage history of the website during the first period, the first site usage history information is collected. Transmitting to the first user terminal
Including,
The step of collecting information about the site usage history and requesting a response is
When the first login authentication information is received from the first user terminal, it connects to the site operation server and verifies the validity of the first login authentication information while transmitting the first login authentication information to the site operation server. transmitting a validation command instructing to do;
As the site operation server, in response to the validation command, checks whether the first login authentication information is stored in a member database that stores member information about members registered with the website, the site Upon receiving a validation completion message for the first login authentication information from the operation server, transmitting a secondary authentication command to perform secondary authentication for the first user to the site operation server;
The site operation server generates a first one-time authentication number for performing secondary authentication for the first user in response to the secondary authentication command, and generates a mobile phone number for the first user from the member database. After confirming, a text message containing the first one-time authentication number is sent to the mobile phone number as the recipient, and at the same time, an authentication number reply command is sent requesting the service providing server to reply with the first one-time authentication number. When transmitting, when the authentication number reply command is received from the site operation server, transmitting the authentication number reply command to the first user terminal;
After the authentication number reply command is transmitted to the first user terminal, the first user sends the first one-time authentication number included in the text message received with the mobile phone number as the recipient to the first user terminal. Upon inputting the first user terminal, when the first one-time authentication number is returned, transmitting the first one-time authentication number to the site operation server;
As the site operation server confirms that the first one-time authentication number transmitted to the site operation server matches the first one-time authentication number generated to perform secondary authentication for the first user, Upon receiving a secondary authentication completion message for the first user from the site operation server, confirming that third-party proxy authentication of the first user for the website has been completed; and
When it is confirmed that the first user's third-party proxy authentication for the website has been completed, information about the first user's site usage history for the website during the first period is sent to the site operation server. Steps to request collection and response
A method of operating a service providing server including.
삭제delete 제6항에 있어서,
상기 로그인 인증 정보를 전송할 것을 요청하는 단계는
상기 복수의 사용자들 각각에 대한 사전 발급된 k(k는 3이상의 자연수임)자릿수의 인증 번호 - 상기 복수의 사용자들 각각에 대한 인증 번호는 각 사용자의 사용자 단말에도 사전 저장되어 있음 - 가 저장되어 있는 인증 번호 저장부를 유지하는 단계;
상기 제1 사용자 단말로부터, 상기 제1 기간 동안의 상기 웹 사이트에 대한 상기 제1 사용자의 사이트 이용 이력 정보의 수집 명령이 수신되면, 상기 제1 사용자가 제3자 대행 인증에 동의를 완료한 사용자가 맞는지 여부에 대한 사용자 인증을 진행하기 위한 인증 이벤트를 발생시키는 단계;
상기 인증 이벤트가 발생되면, 상기 인증 번호 저장부로부터 상기 제1 사용자에 대한 제1 인증 번호를 추출하고, 해밍 무게가 t(t는 2이상, k미만의 자연수임)인 k비트의 랜덤 코드를 랜덤하게 생성한 후, 상기 제1 인증 번호를 구성하는 k자릿수의 숫자들 중, 상기 랜덤 코드에서 '1'의 코드가 위치하는 지점과 동일한 자리에 위치하는 숫자들로 구성된 t자릿수의 제1 검증 번호를 생성하는 단계;
상기 제1 사용자 단말로, 상기 랜덤 코드를 전송하면서, 상기 랜덤 코드와 상기 제1 인증 번호를 기초로 생성되는 피드백 행렬의 전송을 요청하는 단계;
상기 제1 사용자 단말로부터, 상기 피드백 행렬의 전송 요청에 대응하여 제1 피드백 행렬 - 상기 제1 피드백 행렬은, 상기 제1 사용자 단말이, 상기 제1 사용자 단말에 사전 저장되어 있는 상기 제1 인증 번호를 구성하는 k자릿수의 숫자들 중, 상기 서비스 제공 서버로부터 수신된 상기 랜덤 코드에서 '1'의 코드가 위치하는 지점과 동일한 자리에 위치하는 숫자들로 구성된 t자릿수의 상기 제1 검증 번호를 생성한 후, 상기 제1 검증 번호를 구성하는 t개의 숫자들을 성분으로 갖는 열벡터와 상기 제1 검증 번호를 구성하는 t개의 숫자들을 성분으로 갖는 행벡터 간의 행렬 곱을 연산함으로써 생성한, t x t의 크기의 행렬임 - 이 수신되면, 상기 제1 피드백 행렬을 구성하는 t2개의 성분들 중 상기 제1 피드백 행렬의 주대각선(Main Diagonal)에 해당되는 t개의 대각 성분들을 추출한 후, 상기 t개의 대각 성분들 각각에 대한 제곱근을 연산하는 단계; 및
상기 t개의 대각 성분들 각각에 대한 제곱근이 상기 제1 검증 번호를 구성하는 t개의 숫자들 각각과 모두 일치하는 것으로 확인되면, 상기 제1 사용자가 제3자 대행 인증에 동의를 완료한 사용자가 맞는 것으로 인증 처리를 완료하는 단계
를 포함하는 서비스 제공 서버의 동작 방법.
According to clause 6,
The step of requesting to transmit the login authentication information is
A pre-issued authentication number of k (k is a natural number of 3 or more) digits for each of the plurality of users - the authentication number for each of the plurality of users is also pre-stored in each user's user terminal - is stored. maintaining an authentication number storage unit;
When an order to collect the first user's site usage history information for the website during the first period is received from the first user terminal, the first user has completed consent to third-party proxy authentication. Generating an authentication event to proceed with user authentication as to whether is correct;
When the authentication event occurs, the first authentication number for the first user is extracted from the authentication number storage unit, and a k-bit random code with a Hamming weight t (t is a natural number greater than or equal to 2 and less than k) is generated. After randomly generating, first verification of t digits consisting of numbers located in the same position as the point where the code '1' is located in the random code among the k digits constituting the first authentication number. generating a number;
transmitting the random code to the first user terminal and requesting transmission of a feedback matrix generated based on the random code and the first authentication number;
From the first user terminal, a first feedback matrix in response to a request for transmission of the feedback matrix - the first feedback matrix is, the first user terminal, the first authentication number pre-stored in the first user terminal Among the k-digit numbers constituting the , generate the t-digit first verification number consisting of numbers located in the same position as the point where the code '1' is located in the random code received from the service providing server. Then, a matrix of the size of txt is generated by calculating a matrix product between a column vector having as components the t numbers constituting the first verification number and a row vector having as components the t numbers constituting the first verification number. When - is received, among the t 2 components constituting the first feedback matrix, t diagonal components corresponding to the main diagonal of the first feedback matrix are extracted, and then each of the t diagonal components calculating the square root for; and
If the square root of each of the t diagonal components is confirmed to match each of the t numbers constituting the first verification number, it is confirmed that the first user is a user who has consented to third-party proxy authentication. Steps to complete the authentication process with
A method of operating a service providing server including.
제8항에 있어서,
상기 제1 사이트 이용 이력 정보를 상기 제1 사용자 단말로 전송하는 단계는
상기 복수의 사용자들 각각에 대한 사전 설정된 해시 함수 - 상기 복수의 사용자들 각각에 대한 해시 함수는 각 사용자의 사용자 단말에도 사전 저장되어 있음 - 가 저장되어 있는 해시 함수 저장부를 유지하는 단계;
상기 사이트 운영 서버로부터, 상기 제1 사이트 이용 이력 정보가 수집되어 회신되면, 상기 제1 사이트 이용 이력 정보를 암호화하여 상기 제1 사용자 단말로 전송하기 위한 암호화 이벤트를 발생시키는 단계;
상기 암호화 이벤트가 발생되면, 상기 인증 번호 저장부로부터 상기 제1 사용자에 대한 상기 제1 인증 번호를 추출하고, 최고차수가 k-1인 2진 다항식의 각 계수를, 상기 제1 인증 번호를 구성하는 k개의 숫자들 각각에 대해 모듈로-2(modulo-2) 연산을 수행하였을 때의 결과 값으로 지정함으로써, 제1 다항식을 생성하는 단계;
최고차수가 n(n은 자연수임)인 2진 다항식의 각 계수를 랜덤하게 지정함으로써, 제2 다항식을 생성하는 단계;
상기 제1 다항식과 상기 제2 다항식을 서로 곱하여 최고차수가 k-1+n이 되는 2진 다항식인 연산 다항식을 생성한 후, 상기 연산 다항식의 각 계수를 비트열로 갖는 k+n 비트의 시드(seed) 코드를 생성하는 단계;
상기 시드 코드가 생성되면, 상기 해시 함수 저장부로부터 상기 제1 사용자에 대한 제1 해시 함수를 추출한 후, 상기 제1 해시 함수에 상기 시드 코드를 입력으로 인가함으로써, 제1 해시 값을 생성하는 단계; 및
상기 제1 해시 값이 생성되면, 상기 제1 사이트 이용 이력 정보에 대한 데이터를 상기 제1 해시 값으로 암호화하여 제1 암호화 데이터를 생성한 후, 상기 제1 사용자 단말로, 상기 제1 암호화 데이터를 전송하면서, 상기 제2 다항식을 상기 제1 암호화 데이터의 복호화를 위한 단서 정보로 전송하는 단계
를 포함하고,
상기 제1 사용자 단말은
상기 서비스 제공 서버로부터 상기 제1 암호화 데이터와 상기 제2 다항식이 수신되면, 상기 제1 사용자 단말에 저장되어 있는 상기 제1 인증 번호와 상기 제1 해시 함수 및 상기 서비스 제공 서버로부터 수신된 상기 제2 다항식을 기초로 상기 제1 암호화 데이터에 대한 복호화를 수행함으로써, 상기 제1 사이트 이용 이력 정보를 복원하는 것을 특징으로 하는 서비스 제공 서버의 동작 방법.
According to clause 8,
The step of transmitting the first site usage history information to the first user terminal is
maintaining a hash function storage unit storing a preset hash function for each of the plurality of users - the hash function for each of the plurality of users is also pre-stored in the user terminal of each user;
When the first site usage history information is collected and returned from the site operation server, generating an encryption event to encrypt the first site usage history information and transmit it to the first user terminal;
When the encryption event occurs, the first authentication number for the first user is extracted from the authentication number storage unit, and each coefficient of a binary polynomial with the highest degree k-1 constitutes the first authentication number. generating a first polynomial by specifying the result value when performing a modulo-2 operation on each of the k numbers;
Generating a second polynomial by randomly specifying each coefficient of a binary polynomial whose highest degree is n (n is a natural number);
After multiplying the first polynomial and the second polynomial to generate an operation polynomial, which is a binary polynomial with the highest degree of k-1+n, a k+n bit seed having each coefficient of the operation polynomial as a bit string (seed) A step of generating code;
When the seed code is generated, extracting a first hash function for the first user from the hash function storage unit and then applying the seed code as an input to the first hash function to generate a first hash value. ; and
When the first hash value is generated, data about the first site usage history information is encrypted with the first hash value to generate first encrypted data, and then the first encrypted data is sent to the first user terminal. While transmitting, transmitting the second polynomial as clue information for decrypting the first encrypted data.
Including,
The first user terminal is
When the first encryption data and the second polynomial are received from the service providing server, the first authentication number and the first hash function stored in the first user terminal and the second received from the service providing server A method of operating a service providing server, characterized in that the first site usage history information is restored by decrypting the first encrypted data based on a polynomial.
제9항에 있어서,
상기 제1 사용자 단말은
상기 서비스 제공 서버로부터 상기 제1 암호화 데이터와 상기 제2 다항식이 수신되면, 최고차수가 k-1인 2진 다항식의 각 계수를, 상기 제1 사용자 단말에 저장되어 있는 상기 제1 인증 번호를 구성하는 k개의 숫자들 각각에 대해 모듈로-2 연산을 수행하였을 때의 결과 값으로 지정함으로써, 상기 제1 다항식을 생성하고, 상기 제1 다항식과 상기 서비스 제공 서버로부터 수신된 상기 제2 다항식을 서로 곱하여 최고차수가 k-1+n이 되는 2진 다항식인 상기 연산 다항식을 생성함으로써, 상기 연산 다항식의 각 계수를 비트열로 갖는 k+n 비트의 상기 시드 코드를 생성한 후, 상기 제1 사용자 단말에 저장되어 있는 상기 제1 해시 함수에 상기 시드 코드를 입력으로 인가하여 상기 제1 해시 값을 생성하고, 상기 제1 해시 값을 기초로 상기 제1 암호화 데이터에 대한 복호화를 수행함으로써, 상기 제1 사이트 이용 이력 정보를 복원하는 것을 특징으로 하는 서비스 제공 서버의 동작 방법.
According to clause 9,
The first user terminal is
When the first encryption data and the second polynomial are received from the service providing server, each coefficient of the binary polynomial with the highest degree k-1 constitutes the first authentication number stored in the first user terminal. The first polynomial is generated by specifying the result value when modulo-2 operation is performed on each of the k numbers, and the first polynomial and the second polynomial received from the service providing server are connected to each other. By generating the operation polynomial, which is a binary polynomial whose highest degree is k-1+n by multiplying, the seed code of k+n bits having each coefficient of the operation polynomial as a bit string is generated, and then the first user By applying the seed code as an input to the first hash function stored in the terminal to generate the first hash value, and decrypting the first encrypted data based on the first hash value, 1 A method of operating a service providing server characterized by restoring site usage history information.
제6항, 제8항, 제9항 또는 제10항 중 어느 한 항의 방법을 컴퓨터와의 결합을 통해 실행시키기 위한 컴퓨터 프로그램을 기록한 컴퓨터 판독 가능 기록 매체.A computer-readable recording medium recording a computer program for executing the method of any one of claims 6, 8, 9, or 10 through combination with a computer. 제6항, 제8항, 제9항 또는 제10항 중 어느 한 항의 방법을 컴퓨터와의 결합을 통해 실행시키기 위한 저장매체에 저장된 컴퓨터 프로그램.A computer program stored in a storage medium for executing the method of any one of paragraphs 6, 8, 9, or 10 through combination with a computer.
KR1020210189736A 2021-12-28 2021-12-28 Service providing server that can collect and provide personal site use history information on the website through third-party authentication and operating method thereof KR102643163B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020210189736A KR102643163B1 (en) 2021-12-28 2021-12-28 Service providing server that can collect and provide personal site use history information on the website through third-party authentication and operating method thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020210189736A KR102643163B1 (en) 2021-12-28 2021-12-28 Service providing server that can collect and provide personal site use history information on the website through third-party authentication and operating method thereof

Publications (2)

Publication Number Publication Date
KR20230100120A KR20230100120A (en) 2023-07-05
KR102643163B1 true KR102643163B1 (en) 2024-03-04

Family

ID=87158574

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020210189736A KR102643163B1 (en) 2021-12-28 2021-12-28 Service providing server that can collect and provide personal site use history information on the website through third-party authentication and operating method thereof

Country Status (1)

Country Link
KR (1) KR102643163B1 (en)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020035227A (en) 2018-08-30 2020-03-05 三菱電機株式会社 Service integration authentication approval system and service integration authentication approval method
KR102199486B1 (en) 2020-06-24 2021-01-06 주식회사 틸코블렛 Authorized authentication agency for content providers
KR102211033B1 (en) * 2020-07-15 2021-02-03 주식회사 틸코블렛 Agency service system for accredited certification procedures

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020035227A (en) 2018-08-30 2020-03-05 三菱電機株式会社 Service integration authentication approval system and service integration authentication approval method
KR102199486B1 (en) 2020-06-24 2021-01-06 주식회사 틸코블렛 Authorized authentication agency for content providers
KR102211033B1 (en) * 2020-07-15 2021-02-03 주식회사 틸코블렛 Agency service system for accredited certification procedures

Also Published As

Publication number Publication date
KR20230100120A (en) 2023-07-05

Similar Documents

Publication Publication Date Title
US10855475B1 (en) Systems and methods for securing data to an immutable distributed ledger
US8972719B2 (en) Passcode restoration
US8555079B2 (en) Token management
US8751829B2 (en) Dispersed secure data storage and retrieval
US8752153B2 (en) Accessing data based on authenticated user, provider and system
US20190207754A1 (en) Security system utilizing vaultless tokenization and encryption
US20120066756A1 (en) Authentication service
US20120066752A1 (en) Single token authentication
KR102126998B1 (en) Payment processing agent server supporting payment processing through member authentication based on biometrics and password and operating method thereof
WO2013122869A1 (en) Sharing secure data
US10333908B2 (en) Transaction-based secure information delivery and assessment
JP6849862B2 (en) Homomorphic encryption for password authentication
US11816728B2 (en) Digital identity
US20200005317A1 (en) System and method for increasing security of information storage and retrieval
CN107241184B (en) Personal password generation and management method based on improved AES
KR102643163B1 (en) Service providing server that can collect and provide personal site use history information on the website through third-party authentication and operating method thereof
KR102089354B1 (en) Micropayment processing apparatus for supporting a micropayment processing according to a payment limit and operating method thereof
JP4627316B2 (en) Service providing system, authentication method, authentication program, and recording medium therefor
KR102633814B1 (en) Information collection service server that collects and provides information on individual site use history on the website through e-mail-based third-party authentication and the operating method thereof
JP2005227331A (en) Secret information management system, secret information management method, and secret information management program
CN109862008B (en) Key recovery method and device, electronic equipment and storage medium
JP6874700B2 (en) E-commerce systems, communication terminals, third-party servers, e-commerce methods, and programs
CN113762958A (en) Method and device for generating electronic certificate
KR20240070865A (en) Service server that can calculate and manage limits for issuing credit cards available on specific online shopping mall sites through the scraping of purchase history and the operating method thereof
KR102636695B1 (en) Real estate brokerage management server that processes electronic contracts for online real estate transactions and operating method thereof

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E90F Notification of reason for final refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant