KR20220054919A - Cloud-based SaaS type personal information protection apparatus and method - Google Patents

Cloud-based SaaS type personal information protection apparatus and method Download PDF

Info

Publication number
KR20220054919A
KR20220054919A KR1020200138845A KR20200138845A KR20220054919A KR 20220054919 A KR20220054919 A KR 20220054919A KR 1020200138845 A KR1020200138845 A KR 1020200138845A KR 20200138845 A KR20200138845 A KR 20200138845A KR 20220054919 A KR20220054919 A KR 20220054919A
Authority
KR
South Korea
Prior art keywords
personal information
information data
request
search target
cloud
Prior art date
Application number
KR1020200138845A
Other languages
Korean (ko)
Inventor
곽호림
Original Assignee
주식회사 2월대개봉
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 주식회사 2월대개봉 filed Critical 주식회사 2월대개봉
Priority to KR1020200138845A priority Critical patent/KR20220054919A/en
Publication of KR20220054919A publication Critical patent/KR20220054919A/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • G06F21/6245Protecting personal data, e.g. for financial or medical purposes
    • G06F21/6254Protecting personal data, e.g. for financial or medical purposes by anonymising data, e.g. decorrelating personal data from the owner's identification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • G06F21/6227Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database where protection concerns the structure of data, e.g. records, types, queries
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/14Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Security & Cryptography (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Databases & Information Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Medical Informatics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Storage Device Security (AREA)

Abstract

Suggested are an apparatus and a method for cloud-based SAAS type personal information protection, capable of protecting personal information of a company (client) by dividing and storing original data in a plurality of tables when storing and managing the personal information in a cloud DB with encryption. The suggested apparatus includes: a first table generation part deidentifying personal information data, and generating a first table in which the deidentified personal information data is recorded; a second table generation part encrypting the personal information data, and generating a second table in which the encrypted personal information data is recorded; a database storing the first and second tables; a list generation part converting the deidentified personal information data in the first table into a list in accordance with a request for a personal information opening service; a search part searching the first table for personal information data corresponding to a request for a search for a specific search target in accordance with the same request, and searching the second table for personal information data corresponding to a request for opening personal information of the specific search target in accordance with the same request; and a decryption part decrypting the encrypted personal information data of the specific search target searched for based on the second table.

Description

클라우드 기반의 사스형 개인정보 보호 장치 및 방법{Cloud-based SaaS type personal information protection apparatus and method}Cloud-based SaaS type personal information protection apparatus and method

본 발명은 클라우드 기반의 사스(SaaS)형 개인정보 보호 장치 및 방법에 관한 것으로, 보다 상세하게는 기업(고객사)의 개인정보를 클라우드 DB에 저장하고 관리할 수 있는 클라우드 기반의 사스형 개인정보 보호 장치 및 방법에 관한 것이다.The present invention relates to a cloud-based SaaS-type personal information protection device and method, and more particularly, to a cloud-based SaaS-type personal information protection that can store and manage personal information of a company (customer company) in a cloud DB. It relates to an apparatus and method.

최근 개인정보보호법의 시행으로 인해 소규모 중소기업들도 개인정보 유출방지 대책이 요구되고 있으나, 개인정보 보호 소프트웨어 및 관련 환경 구축에는 많은 비용이 발생하는 문제가 있어, 사용 기간에 비례하여 과금이 적용되며 비용도 소프트웨어 구축비용 보다 상대적으로 저렴한 보안 서비스가 요구되어지고 있다.Due to the recent enforcement of the Personal Information Protection Act, small and medium-sized enterprises (SMEs) are also required to take measures to prevent leakage of personal information. Security services that are relatively cheaper than software construction costs are also required.

또한, 개인정보 유출방지 보안 소프트웨어를 도입시에 패키지 기반의 개인정보보호 소프트웨어 및 하드웨어를 사용하는 경우라면, 고가의 보안 소프트웨어 및 하드웨어 장비를 구매 및 구축하고 이를 운용하는데 필요한 보안 및 전산관련 인력을 확보하여야 하므로, 중소기업이나 개인 사용자는 비용문제가 부담이 되는 실정이다.In addition, if package-based personal information protection software and hardware are used when introducing personal information leakage prevention security software, purchase and build expensive security software and hardware equipment, and secure security and computer-related personnel necessary to operate them. Therefore, SMEs and individual users are burdened with cost problems.

또한, 각 기업마다 개인정보 유출방지 정책이 다르므로, 각 기업의 특성에 맞는 보안정책이 필요하지만, 높은 비용문제가 발생하여 맞춤형 보안정책을 중소기업에서 도입하기에는 어려운 실정이다.In addition, since each company has a different personal information leakage prevention policy, a security policy suitable for the characteristics of each company is required, but it is difficult to introduce a customized security policy in small and medium-sized enterprises due to the high cost problem.

선행기술 1 : 대한민국 등록특허 제10-2148937호(클라우드 서버 및 클라우드 기반의 이미지 파일 처리방법)Prior art 1: Republic of Korea Patent Registration No. 10-2148937 (cloud server and cloud-based image file processing method) 선행기술 2 : 대한민국 등록특허 제10-1321408호(개인정보 보호를 위한 클라우드 기반 SaaS형 보안 서비스 제공 시스템 및 그 제공 방법)Prior art 2: Republic of Korea Patent Registration No. 10-1321408 (Cloud-based SaaS-type security service providing system and method for protecting personal information)

본 발명은 상기한 종래의 문제점을 해결하기 위해 제안된 것으로, 기업(고객사)의 개인정보를 클라우드 DB에 저장하고 암호화하여 관리할 때 원본 데이터를 복수의 테이블로 나누어 저장함으로써 개인정보를 보호할 수 있도록 하는 클라우드 기반의 사스형 개인정보 보호 장치 및 방법을 제공함에 그 목적이 있다.The present invention has been proposed to solve the above conventional problems, and when storing and encrypting personal information of a company (customer company) in a cloud DB and managing it, it is possible to protect personal information by dividing the original data into a plurality of tables and storing it. The purpose is to provide a cloud-based SARS-type personal information protection device and method.

상기와 같은 목적을 달성하기 위하여 본 발명의 바람직한 실시양태에 따른 클라우드 기반의 사스형 개인정보 보호 장치는, 개인정보 데이터를 비식별화 처리하고, 비식별화된 개인정보 데이터가 기록된 제 1 테이블을 생성하는 제 1 테이블 생성부; 상기 개인정보 데이터를 암호화하고, 암호화된 개인정보 데이터가 기록된 제 2 테이블을 생성하는 제 2 테이블 생성부; 상기 제 1 테이블 및 제 2 테이블을 저장하는 데이터베이스; 개인정보 열람 서비스 요청에 따라 상기 제 1 테이블에 비식별화되어 있는 개인정보 데이터를 리스트화하는 리스트 생성부; 특정 검색대상 검색 요청에 따라 상기 제 1 테이블에서 그에 상응하는 개인정보 데이터를 검색하고, 상기 특정 검색대상의 개인정보 열람 요청에 따라 상기 제 2 테이블에서 그에 상응하는 개인정보 데이터를 검색하는 검색부; 상기 제 2 테이블을 근거로 검색된 상기 특정 검색대상의 암호화된 개인정보 데이터를 복호화하는 복호화부; 및 제어부;를 포함한다.In order to achieve the above object, a cloud-based SARS-type personal information protection device according to a preferred embodiment of the present invention de-identifies personal information data, and a first table in which de-identified personal information data is recorded. a first table generating unit that generates a second table generation unit for encrypting the personal information data and generating a second table in which the encrypted personal information data is recorded; a database storing the first table and the second table; a list generator for listing de-identified personal information data in the first table according to a request for a personal information viewing service; a search unit for retrieving corresponding personal information data from the first table according to a specific search target search request, and searching for corresponding personal information data from the second table according to the specific search target personal information viewing request; a decryption unit for decrypting the encrypted personal information data of the specific search target searched based on the second table; and a control unit.

상기 기업의 개인정보 데이터는 문자열로 구성될 수 있고, 상기 제 1 테이블 생성부는, 상기 문자열에서 홀수 번째의 문자 및 짝수 번째의 문자 중에서 어느 하나를 특수문자로 변환할 수 있다.The personal information data of the company may be composed of a character string, and the first table generating unit may convert any one of an odd-numbered character and an even-numbered character in the character string into a special character.

상기 제 2 테이블 생성부는, 상기 기업의 개인정보 데이터를 대칭키 암호 알고리즘으로 암호화한 후에 인코딩할 수 있다.The second table generating unit may encode the personal information data of the company after encrypting it with a symmetric key encryption algorithm.

상기 제어부는, 상기 개인정보 열람 서비스 요청을 수신하면 상기 리스트 생성부를 제어하여 상기 리스트를 생성하고 생성된 리스트를 해당 사용자에게로 출력할 수 있고, 상기 리스트를 확인한 사용자로부터의 특정 검색대상 검색 요청이 있으면 상기 검색부를 제어하여 상기 제 1 테이블을 근거로 해당 특정 검색대상을 검색하여 해당 사용자에게로 출력할 수 있고, 상기 특정 검색대상의 개인정보 열람 요청이 있으면 상기 검색부를 제어하여 상기 제 2 테이블에 암호화되어 있는 해당 특정 검색대상의 개인정보 데이터를 검색하여 상기 복호화부를 통해 복호화된 데이터를 해당 사용자에게로 출력할 수 있다.When the control unit receives the personal information viewing service request, it can control the list generation unit to generate the list and output the generated list to the user, and a specific search target search request from the user who has confirmed the list If there is, the search unit is controlled to search for the specific search target based on the first table and output to the user, and if there is a request to view personal information of the specific search target, the search unit is controlled to enter the second table The encrypted personal information data of the specific search target may be searched and the decrypted data may be output to the corresponding user through the decryption unit.

한편, 클라우드 기반의 사스형 개인정보 보호 방법은, 클라우드 기반의 사스형 개인정보 보호 장치에서 수행되는 개인정보 보호 방법으로서, 개인정보 데이터를 비식별화 처리하고, 비식별화된 개인정보 데이터가 기록된 제 1 테이블을 생성하는 단계; 상기 개인정보 데이터를 암호화하고, 암호화된 개인정보 데이터가 기록된 제 2 테이블을 생성하는 단계; 상기 제 1 테이블 및 제 2 테이블을 저장하는 단계; 개인정보 열람 서비스 요청에 따라 상기 제 1 테이블에 비식별화되어 있는 개인정보 데이터를 리스트화하는 단계; 특정 검색대상 검색 요청에 따라 상기 제 1 테이블에서 그에 상응하는 개인정보 데이터를 검색하는 단계; 상기 특정 검색대상의 개인정보 열람 요청에 따라 상기 제 2 테이블에서 그에 상응하는 개인정보 데이터를 검색하는 단계; 및 상기 제 2 테이블을 근거로 검색된 상기 특정 검색대상의 암호화된 개인정보 데이터를 복호화하는 단계;를 포함한다.On the other hand, the cloud-based SARS-type personal information protection method is a personal information protection method performed in a cloud-based SARS-type personal information protection device, which de-identifies personal information data and records de-identified personal information data. creating a first table; encrypting the personal information data and generating a second table in which the encrypted personal information data is recorded; storing the first table and the second table; listing de-identified personal information data in the first table according to a request for a personal information viewing service; searching for personal information data corresponding thereto in the first table according to a specific search target search request; searching for personal information data corresponding thereto in the second table according to the request for viewing personal information of the specific search target; and decrypting the encrypted personal information data of the specific search target searched based on the second table.

이러한 구성의 본 발명에 따르면 하기와 같은 효과들이 있다.According to the present invention having such a configuration, there are the following effects.

1. 기존의 경우 암호화해서 보관한다고 하여도 리스트상에서 복호화되어 화면에 보여지기 때문에 리스트상에서 관리자가 개인정보를 식별할 수 있었으나, 본 발명에 따르면 리스트상의 개인정보는 비식별화되어 있어서 관리자가 개인정보를 식별할 수 없으므로 기존 취약점을 보완할 수 있다. 1. In the existing case, even if encrypted and stored, the administrator could identify personal information on the list because it was decrypted on the list and displayed on the screen. can not be identified, so existing vulnerabilities can be supplemented.

2. 본 발명은 필요시에만 해당하는 개인정보를 눌러 확인하면 되므로 개인정보 보호수준을 높일 수 있으며, 개인정보 확인(열람)에 대한 이력을 증적(예컨대, 감사를 위한 증거 자료)으로 활용가능하다.2. The present invention can increase the level of personal information protection because it is necessary to press and confirm the personal information only when necessary, and the history of personal information confirmation (reading) can be used as evidence (eg, evidence for audit). .

3. 기존의 경우 암호화한 후에 개인정보 리스트를 보게 될 시 복호화되기 때문에 복호화 처리 비용과 시간이 소요되지만, 본 발명의 경우 리스트에서 보여지는 개인정보들은 암호화된 것이 아니라 비식별화 처리를 거친 정보들이기 때문에 개인정보 리스트에서 불러올 때는 따로 복호화 처리가 필요없다. 그에 따라, 기존 대비 프로세스 처리 비용과 시간이 소요되지 않는다. 3. In the existing case, when the personal information list is viewed after being encrypted, the decryption processing cost and time are required because it is decrypted. However, in the present invention, the personal information shown in the list is not encrypted but de-identified Therefore, when retrieving from the personal information list, there is no need for a separate decryption process. Accordingly, compared to the existing process, processing cost and time are not required.

4. 현재 대부분의 사스(SaaS) 클라우드 서비스는 데이터 보관시에 비용을 받지 않으며, 데이터를 꺼내 올때만 비용을 받고 있고, 추가로 데이터를 암복호화시에 추가 비용을 받기 때문에 본 발명을 이용한다면 경제적인 측면에서도 효과를 얻을 수 있다.4. Currently, most SaaS cloud services do not charge a fee for data storage, receive a fee only when data is retrieved, and additionally receive an additional cost for data encryption/decryption. An effect can also be obtained from the human side.

도 1은 본 발명의 실시예에 따른 클라우드 기반의 사스형 개인정보 보호 장치가 적용된 시스템 구성도이다.
도 2는 본 발명의 실시예에 따른 클라우드 기반의 사스형 개인정보 보호 장치에서 개인정보를 분산 저장하는 동작을 설명하기 위한 플로우차트이다.
도 3은 암호화된 개인정보를 사용하는 예를 설명하기 위한 플로우차트이다.
도 4 내지 도 6은 도 3의 설명에 채용되는 화면예들이다.
1 is a system configuration diagram to which a cloud-based SARS-type personal information protection device according to an embodiment of the present invention is applied.
2 is a flowchart illustrating an operation of distributing and storing personal information in a cloud-based SARS-type personal information protection device according to an embodiment of the present invention.
3 is a flowchart for explaining an example of using encrypted personal information.
4 to 6 are examples of screens employed in the description of FIG. 3 .

본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시 예들을 도면에 예시하고 상세하게 설명하고자 한다.Since the present invention can have various changes and can have various embodiments, specific embodiments are illustrated in the drawings and described in detail.

그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.However, this is not intended to limit the present invention to specific embodiments, and it should be understood to include all modifications, equivalents and substitutes included in the spirit and scope of the present invention.

본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.The terms used in the present application are only used to describe specific embodiments, and are not intended to limit the present invention. The singular expression includes the plural expression unless the context clearly dictates otherwise. In the present application, terms such as “comprise” or “have” are intended to designate that a feature, number, step, operation, component, part, or combination thereof described in the specification exists, but one or more other features It should be understood that this does not preclude the existence or addition of numbers, steps, operations, components, parts, or combinations thereof.

다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미를 가진 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.Unless defined otherwise, all terms used herein, including technical and scientific terms, have the same meaning as commonly understood by one of ordinary skill in the art to which this invention belongs. Terms such as those defined in a commonly used dictionary should be interpreted as having a meaning consistent with the meaning in the context of the related art, and should not be interpreted in an ideal or excessively formal meaning unless explicitly defined in the present application. does not

이하, 첨부한 도면들을 참조하여, 본 발명의 바람직한 실시예를 보다 상세하게 설명하고자 한다. 본 발명을 설명함에 있어 전체적인 이해를 용이하게 하기 위하여 도면상의 동일한 구성요소에 대해서는 동일한 참조부호를 사용하고 동일한 구성요소에 대해서 중복된 설명은 생략한다.Hereinafter, preferred embodiments of the present invention will be described in more detail with reference to the accompanying drawings. In describing the present invention, in order to facilitate the overall understanding, the same reference numerals are used for the same components in the drawings, and duplicate descriptions of the same components are omitted.

도 1은 본 발명의 실시예에 따른 클라우드 기반의 사스형 개인정보 보호 장치가 적용된 시스템 구성도이다.1 is a system configuration diagram to which a cloud-based SARS-type personal information protection device according to an embodiment of the present invention is applied.

도 1의 시스템은 사용자 단말(10a ~ 10n), 네트워크(20), 사스 서버(30), 및 데이터베이스(50)를 포함할 수 있다.The system of FIG. 1 may include user terminals 10a to 10n , a network 20 , a SARS server 30 , and a database 50 .

사용자 단말(10a ~ 10n)은 기업측의 단말로서 사용자(예컨대, 관리자)가 사용하는 단말이다.The user terminals 10a to 10n are terminals used by users (eg, administrators) as enterprise-side terminals.

사용자(예컨대, 관리자)는 사용자 단말(10a ~ 10n)중 어느 하나를 조작하여 네트워크(20)를 통해 사스 서버(30)에 접속한 후에 개인정보의 열람(읽기), 쓰기, 삭제 등을 할 수 있다. 그에 따라, 관리자에게는 저마다 소정의 권한이 미리 부여될 수 있다. 예를 들어, 관리자 1은 개인정보의 읽기만 가능할 수 있고, 관리자 2는 사스 서버(30)로의 접속이 불가할 수 있고, 관리자 3은 개인정보의 읽기와 쓰기 및 삭제가 모두 가능할 수도 있다.A user (eg, an administrator) manipulates any one of the user terminals 10a to 10n to access the SARS server 30 through the network 20 and then can view (read), write, delete personal information, etc. there is. Accordingly, each administrator may be given a predetermined authority in advance. For example, manager 1 may only be able to read personal information, manager 2 may not be able to access the SARS server 30 , and manager 3 may be able to read, write, and delete personal information all.

사용자 단말(10a ~ 10n)은 고정형 컴퓨터(예컨대, PC), 휴대용 단말기 또는 휴대용 컴퓨터로 구현될 수 있다. 여기서, 휴대용 단말기는 휴대성과 이동성이 보장되는 무선 통신 장치로서, PCS(Personal Communication System), GSM(Global System for Mobile communications), PDC(Personal Digital Cellular), PHS(Personal Handyphone System), PDA(Personal Digital Assistant), IMT(International Mobile Telecommunication)-2000, CDMA(Code Division Multiple Access)-2000, W-CDMA(W-Code Division Multiple Access), Wibro(Wireless Broadband Internet) 단말 등과 같은 모든 종류의 핸드헬드(Handheld) 기반의 무선 통신 장치를 포함할 수 있다. 휴대용 컴퓨터는 노트북, 랩톱(laptop) 등을 포함할 수 있다. The user terminals 10a to 10n may be implemented as a fixed computer (eg, PC), a portable terminal, or a portable computer. Here, the portable terminal is a wireless communication device that guarantees portability and mobility, and includes a Personal Communication System (PCS), a Global System for Mobile communications (GSM), a Personal Digital Cellular (PDC), a Personal Handyphone System (PHS), and a Personal Digital (PDA). Assistant), International Mobile Telecommunication (IMT)-2000, Code Division Multiple Access (CDMA)-2000, W-Code Division Multiple Access (W-CDMA), Wireless Broadband Internet (Wibro) terminals, etc. ) based wireless communication device. Portable computers may include notebook computers, laptops, and the like.

또한, 사용자 단말(10a ~ 10n)은 스마트폰, 스마트 노트, 태블릿 PC, 웨어러블(wearable) 컴퓨터 등의 각종 스마트 기기일 수도 있다.In addition, the user terminals 10a to 10n may be various smart devices such as a smart phone, a smart note, a tablet PC, and a wearable computer.

네트워크(20)는 근거리 통신망(Local Area Network; LAN), 광역 통신망(Wide Area Network;WAN) 또는 부가가치 통신망(Value Added Network; VAN) 등과 같은 유선 네트워크로 구현될 수 있다. 한편으로, 네트워크(20)는 이동 통신망(mobile radio communication network), 위성 통신망, 블루투스(Bluetooth), Wibro(Wireless Broadband Internet), HSDPA(High Speed Downlink Packet Access), LTE(Long Term Evolution) 등과 같은 모든 종류의 무선 네트워크로 구현될 수 있다. 필요에 따라서, 네트워크(20)는 유선 및 무선이 혼용된 네트워크일 수 있다.The network 20 may be implemented as a wired network such as a local area network (LAN), a wide area network (WAN), or a value added network (VAN). On the other hand, the network 20 is a mobile communication network (mobile radio communication network), satellite communication network, Bluetooth (Bluetooth), Wibro (Wireless Broadband Internet), HSDPA (High Speed Downlink Packet Access), LTE (Long Term Evolution), such as all It can be implemented as a kind of wireless network. If necessary, the network 20 may be a network in which wired and wireless are mixed.

사스(SaaS; Software as a service) 서버(30)는 기업(고객사)의 개인정보 데이터(원본 또는 원본 데이터라고 함)를 데이터베이스(50)에 저장할 때 원본 데이터를 두 개의 테이블로 나누어서 데이터베이스(50)에 저장할 수 있다. 이때, 두 개의 테이블에는 서로 상이한 방식으로 변환된 원본 데이터가 기록될 수 있다.When the SaaS (Software as a Service) server 30 stores personal information data (referred to as the original or original data) of the company (customer company) in the database 50, the original data is divided into two tables and the database 50 can be stored in In this case, original data converted in different ways may be recorded in the two tables.

또한, 사스 서버(30)는 사용자 단말(10a ~ 10n)로부터의 개인정보 열람 서비스 요청, 특정 검색대상의 검색 요청, 특정 검색대상의 개인정보 열람 요청 등이 있게 되면 상술한 두 개의 테이블을 기반으로 해당 사용자 단말이 요청하는 내용에 상응하는 정보를 제공할 수 있다.In addition, when there is a personal information viewing service request, a specific search target search request, a specific search target personal information viewing request, etc. from the user terminals 10a to 10n, the SARS server 30 is based on the two tables described above. Information corresponding to the content requested by the corresponding user terminal may be provided.

한편, 사스 서버(30)는 사용자(관리자)가 사용자 단말(10a ~ 10n)을 통해 개인정보를 열람한 이력(기록)을 관리할 수 있다.Meanwhile, the SARS server 30 may manage a history (record) of a user (administrator) reading personal information through the user terminals 10a to 10n.

상술한 사스 서버(30)는 사스 플랫폼이라고도 칭할 수 있다. 사스 서버(30)는 본 발명의 청구범위에 기재된 클라우드 기반의 사스(SaaS)형 개인정보 보호 장치의 일 예가 될 수 있다.The above-described SARS server 30 may also be referred to as a SARS platform. The SARS server 30 may be an example of a cloud-based SaaS type personal information protection device described in the claims of the present invention.

세부적으로, 사스 서버(30)는 인터페이스부(32), 제 1 테이블 생성부(34), 제 2 테이블 생성부(36), 리스트 생성부(38), 검색부(40), 복호화부(42), 및 제어부(44)를 포함할 수 있다.In detail, the SARS server 30 includes an interface unit 32 , a first table generating unit 34 , a second table generating unit 36 , a list generating unit 38 , a search unit 40 , and a decoding unit 42 . ), and a control unit 44 .

인터페이스부(32)는 네트워크(20)를 통해 기업측 사용자 단말(10a ~ 10n)로부터의 소정의 정보(예컨대, 개인정보 열람 서비스 요청, 특정 검색대상의 검색 요청, 특정 검색대상의 개인정보 열람 요청 등)를 입력받고, 네트워크(20)를 통해 기업측 사용자 단말(10a ~ 10n)에게로 그에 상응하는 정보를 출력할 수 있다.The interface unit 32 receives predetermined information (eg, a personal information viewing service request, a specific search target search request, and a specific search target personal information viewing request) from the enterprise-side user terminals 10a to 10n through the network 20 . etc.), and may output corresponding information to the enterprise-side user terminals 10a to 10n through the network 20 .

그에 따라, 인터페이스부(32)는 기업측 사용자 단말(10a ~ 10n)로부터의 입력정보를 수신하는 수신부(도시 생략), 및 기업측 사용자 단말(10a ~ 10n)에게로의 출력정보를 출력하는 송신부(도시 생략)를 포함할 수 있다.Accordingly, the interface unit 32 includes a receiver (not shown) for receiving input information from the enterprise-side user terminals 10a to 10n, and a transmitter for outputting output information to the enterprise-side user terminals 10a to 10n ( not shown) may be included.

제 1 테이블 생성부(34)는 기업(고객사)의 개인정보 데이터(원본 또는 원본 데이터라고 함)를 비식별화 처리하고, 비식별화된 기업의 개인정보 데이터가 기록된 제 1 테이블을 생성할 수 있다.The first table generation unit 34 de-identifies the personal information data (referred to as the original or original data) of the company (customer company), and creates a first table in which the de-identified company personal information data is recorded. can

예를 들어, 비식별화 처리의 경우 문자열에서 짝수 번째의 문자를 소정의 특수문자(예컨대, "*")로 변환할 수 있다. 그에 따라, 이름의 경우 "홍길동"은 "홍*동"으로 변환될 수 있고, 전화번호의 경우 "01012345678"은 "0*0*2*4*6*8"으로 변환될 수 있다. 이메일의 경우 "honggildong@naver.com"은 "h*n*g*l*o*g*n*v*r*c*m"으로 변환될 수 있고, 생년월일의 경우 "19931108"은 "1*9*1*0*"으로 변환될 수 있고, GPS 정보의 경우 "37.12345, 128.12345"은 "3*.*2*4*, *2*.*2*4*"으로 변환될 수 있다.For example, in the case of de-identification processing, an even-numbered character in a character string may be converted into a predetermined special character (eg, "*"). Accordingly, in the case of a name, "Hong Gil-dong" may be converted into "Hong*dong", and in the case of a phone number, "01012345678" may be converted into "0*0*2*4*6*8". For email "honggildong@naver.com" can be converted to "h*n*g*l*o*g*n*v*r*c*m", for date of birth "19931108" is "1* 9*1*0*", and in the case of GPS information, "37.12345, 128.12345" may be converted into "3*.*2*4*, *2*.*2*4*".

물론, 필요에 따라서는 짝수 번째 문자 대신에 홀수 번째의 문자를 소정의 특수문자로 변환할 수도 있고, 상술한 "*" 이외로 다른 문자(예컨대, # 등)를 이용할 수도 있다.Of course, if necessary, an odd-numbered character may be converted into a predetermined special character instead of an even-numbered character, and other characters (eg, #, etc.) may be used other than the above-described "*".

제 2 테이블 생성부(36)는 기업(고객사)의 개인정보 데이터(원본 또는 원본 데이터라고 함)를 대칭키 암호 알고리즘으로 암호화하고, 암호화된 기업의 개인정보 데이터가 기록된 제 2 테이블을 생성할 수 있다.The second table generating unit 36 encrypts the personal information data (referred to as the original or original data) of the company (customer company) with a symmetric key encryption algorithm, and generates a second table in which the encrypted personal information data of the company is recorded. can

예를 들어, 암호화의 경우, 평문 문자열(예컨대, JSON)을 AES(Advanced Encryption Standard) 등의 대칭키 암호 알고리즘으로 암호화 후 Base64 등의 인코딩 방식으로 인코딩할 수 있다. 그에 따라, 이름의 경우 "홍길동"은 "6rO97Zi466a8"로 암호화될 수 있고, 전화번호의 경우 "01012345678"은 "MDEwMTIzNDU2Nzg="로 암호화될 수 있다. 이메일의 경우 "honggildong@naver.com"은 "aG9uZ2dpbGRvbmdAbmF2ZXIuY29t"로 암호화될 수 있고, 생년월일의 경우 "19931108"은 "MTk5MzExMDg="로 암호화될 수 있고, GPS 정보의 경우 "37.12345, 128.12345"은 "MzcuMTIzNDUsIDEyOC4xMjM0NQ=="로 암호화될 수 있다.For example, in the case of encryption, a plaintext string (eg, JSON) may be encrypted using a symmetric key encryption algorithm such as Advanced Encryption Standard (AES), and then encoded using an encoding method such as Base64. Accordingly, in the case of a name, "Gildong Hong" may be encrypted as "6rO97Zi466a8", and in the case of a phone number, "01012345678" may be encrypted as "MDEwMTIzNDU2Nzg=". For email, "honggildong@naver.com" can be encrypted with "aG9uZ2dpbGRvbmdAbmF2ZXIuY29t", for date of birth "19931108" can be encrypted with "MTk5MzExMDg=", for GPS information "37.12345, 128.12345" can be "MzcuMTIzNDUscuMTIzNDUN It can be encrypted with =".

리스트 생성부(38)는 데이터베이스(50)에 저장된 제 1 테이블의 개인정보 데이터(즉, 비식별화된 개인정보 데이터)를 리스트화할 수 있다.The list generator 38 may list the personal information data (ie, de-identified personal information data) of the first table stored in the database 50 .

검색부(40)는 사용자 단말(10a ~ 10n)을 통한 사용자(관리자)의 개인정보 데이터 열람 요청(또는 검색 요청)에 근거하여 그에 상응하는 개인정보 데이터를 데이터베이스(50)에서 검색할 수 있다.The search unit 40 may search the database 50 for personal information data corresponding thereto based on a request (or search request) of a user (administrator) to view personal information data through the user terminals 10a to 10n.

다시 말해서, 기업(고객사)의 관리자가 개인정보를 열람하기 위해 사용자 단말(10a ~ 10n 중에서 어느 하나) 및 네트워크(20)를 통해 사스 서버(30)에게로 접속하여 개인정보 열람 서비스 요청을 하면, 우선적으로 리스트 생성부(38)가 리스트(즉, 다수의 비식별화된 개인정보 데이터를 포함)를 생성하여 제공할 수 있다. 이 경우, 리스트 생성부(38)는 제 1 테이블의 모든 개인정보 데이터(즉, 비식별화된 개인정보 데이터)를 리스트화하므로, 비식별화된 다수의 개인정보 데이터가 리스트에 실려 해당 사용자 단말에게로 전송될 것이다.In other words, when the manager of the company (customer company) accesses the SARS server 30 through the user terminal (any one of 10a to 10n) and the network 20 to view personal information and requests a personal information viewing service, First, the list generator 38 may generate and provide a list (that is, including a plurality of de-identified personal information data). In this case, since the list generator 38 lists all personal information data (ie, non-identified personal information data) of the first table, a plurality of de-identified personal information data is loaded on the list and the corresponding user terminal will be sent to

이후, 리스트를 확인한 사용자로부터의 특정 검색대상 검색 요청이 있으면 검색부(40)는 우선적으로 제 1 테이블을 근거로 해당 특정 검색대상을 검색한다. 이 경우, 특정 검색대상으로 "홍길동"이 입력되었다면 검색부(40)는 "홍*동"으로 치환한 후에 제 1 테이블에 비식별화된 개인정보 데이터중에서 "홍*동"에 부합되는 모든 개인정보 데이터를 검색할 수 있다.Thereafter, when there is a specific search target search request from the user who has checked the list, the search unit 40 first searches the specific search target based on the first table. In this case, if "Hong Gil-dong" is input as a specific search target, the search unit 40 replaces "Hong*dong" with "Hong*dong" and then all individuals matching "Hong*dong" among the de-identified personal information data in the first table. Information data can be retrieved.

이후에, 해당 특정 검색대상의 보다 정확한 개인정보를 보고 싶어서 해당 특정 검색대상의 개인정보 열람 요청이 있으면 검색부(40)는 제 2 테이블에 암호화되어 있는 해당 특정 검색대상의 개인정보 데이터를 검색하여 복호화부(42)에게로 제공한다. 이 경우, 특정 검색대상의 개인정보 열람 요청을 위해, 사용자 단말로부터 해당 특정 검색대상의 아이디, 이메일, 이름, 닉네임, 성별, 생년월일, 휴대폰 번호 등의 정확한 정보가 입력될 것이다. 복호화부(42)는 수신한 데이터를 복호화하여 출력한다. Afterwards, if there is a request to view the personal information of the specific search target to see more accurate personal information of the specific search target, the search unit 40 searches for the personal information data of the specific search target encrypted in the second table. It is provided to the decoding unit 42 . In this case, for a request to view personal information of a specific search target, accurate information such as ID, email, name, nickname, gender, date of birth, and mobile phone number of the specific search target will be input from the user terminal. The decoding unit 42 decodes the received data and outputs it.

상술한 바와 같은 리스트 생성, 검색, 및 복호화 동작은 제어부(44)의 제어에 의해 순차적으로 행해질 수 있다.The above-described list generation, search, and decoding operations may be sequentially performed under the control of the controller 44 .

복호화부(42)는 제 2 테이블에 암호화되어 기록되어 있는 개인정보 데이터를 복호화할 수 있다.The decryption unit 42 may decrypt the personal information data encrypted and recorded in the second table.

특히, 복호화부(42)는 검색부(40)로부터 제공받은 암호화된 개인정보 데이터를 복호화할 수 있다.In particular, the decryption unit 42 may decrypt the encrypted personal information data provided from the search unit 40 .

여기서, 복호화는 제 2 테이블 생성부(36)에서의 암호화의 역순으로 진행된다. 예를 들어, Base64 등으로 인코딩할 때 사용했던 방식으로 디코딩 후에 AES 등의 대칭키 암호 알고리즘으로 복호화하여 평문 문자열(예컨대, JSON)을 추출한다.Here, the decryption proceeds in the reverse order of encryption in the second table generating unit 36 . For example, after decoding using the method used when encoding with Base64, etc., it is decrypted with a symmetric key encryption algorithm such as AES to extract a plaintext string (eg, JSON).

제어부(44)는 사스 서버(30)의 전체적인 동작을 제어한다.The controller 44 controls the overall operation of the SARS server 30 .

즉, 제어부(44)는 상술한 바와 같은 제 1 테이블 및 제 2 테이블의 생성을 제어할 수 있고, 상술한 리스트의 생성을 제어할 수 있고, 상술한 검색을 제어할 수 있고, 상술한 복호화를 제어할 수 있다.That is, the control unit 44 can control the generation of the first table and the second table as described above, control the generation of the above-described list, control the above-described search, and perform the above-described decoding. can be controlled

또한, 제어부(44)는 제 1 테이블 생성부(34)에서 생성된 제 1 테이블, 제 2 테이블 생성부(36)에서 생성된 제 2 테이블을 데이터베이스(50)에 저장할 수 있다.Also, the controller 44 may store the first table generated by the first table generator 34 and the second table generated by the second table generator 36 in the database 50 .

데이터베이스(50)는 업로드받은 기업(고객사)의 개인정보 데이터(원본 또는 원본 데이터라고 함)를 저장할 수 있다. The database 50 may store the uploaded personal information data (referred to as original or original data) of the company (customer company).

또한, 데이터베이스(50)는 제 1 테이블 및 제 2 테이블을 저장할 수 있다.Also, the database 50 may store the first table and the second table.

한편, 데이터베이스(50)는 사용자(관리자)가 개인정보 데이터를 열람한 이력(기록)을 저장할 수 있다.Meanwhile, the database 50 may store a history (record) of a user (administrator) reading personal information data.

그에 따라, 데이터베이스(50)는 원본 데이터를 저장하는 원본 데이터 저장부, 제 1 테이블을 저장하는 제 1 테이블 저장부(도시 생략), 제 2 테이블을 저장하는 제 2 테이블 저장부(도시 생략), 및 개인정보 데이터 열람 이력을 저장하는 열람 이력정보 저장부(도시 생략)를 포함할 수 있다.Accordingly, the database 50 includes an original data storage unit for storing the original data, a first table storage unit (not shown) for storing the first table, a second table storage unit for storing the second table (not shown), And it may include a reading history information storage unit (not shown) for storing the personal information data reading history.

또한, 원본 데이터 저장부에 저장된 각각의 원본 데이터는 제 1 테이블 및 제 2 테이블에 기록된 각각의 개인정보 데이터와 일대일로 매칭되어 있을 수 있다.In addition, each of the original data stored in the original data storage unit may be matched one-to-one with each of the personal information data recorded in the first table and the second table.

상기에서는 사스 서버(30)와 데이터베이스(50)를 별개로 구성시켰으나, 데이터베이스(50)가 사스 서버(30)에 포함되는 것으로 보아도 무방하다.Although the SARS server 30 and the database 50 are configured separately in the above, it can be seen that the database 50 is included in the SARS server 30 .

도 2는 본 발명의 실시예에 따른 클라우드 기반의 사스형 개인정보 보호 장치에서 개인정보를 분산 저장하는 동작을 설명하기 위한 플로우차트이다.2 is a flowchart illustrating an operation of distributing and storing personal information in a cloud-based SARS-type personal information protection device according to an embodiment of the present invention.

먼저, 사스 서버(30)는 하나 이상의 기업의 사용자 단말(10a ~ 10n)을 통해 해당 기업의 하나 이상의 개인정보 데이터를 업로드받는다(S10). 예를 들어, 사스 서버(30)의 인터페이스부(32)는 네트워크(20)를 통해 하나 이상의 기업의 하나 이상의 개인정보 데이터를 수신할 수 있다. 업로드받은 기업의 하나 이상의 개인정보 데이터(원본 또는 원본 데이터)는 데이터베이스(50)의 원본 데이터 저장부에 저장된다.First, the SARS server 30 receives one or more personal information data of one or more companies to be uploaded through the user terminals 10a to 10n of one or more companies ( S10 ). For example, the interface unit 32 of the SARS server 30 may receive one or more personal information data of one or more companies through the network 20 . One or more personal information data (original or original data) of the uploaded company is stored in the original data storage unit of the database 50 .

이후, 사스 서버(30)의 제 1 테이블 생성부(34)는 기업(고객사)의 개인정보 데이터(원본 또는 원본 데이터라고 함)를 비식별화 처리하고, 비식별화된 기업의 개인정보 데이터가 기록된 제 1 테이블을 생성한 후에 제 1 테이블을 데이터베이스(50)에 저장한다(S20). 예를 들어, 제 1 테이블 생성부(34)는 비식별화 처리를 할 때, 문자열에서 짝수 번째의 문자를 소정의 특수문자(예컨대, "*")로 변환할 수 있다. 그에 따라, 이름의 경우 "홍길동"은 "홍*동"으로 변환될 수 있고, 전화번호의 경우 "01012345678"은 "0*0*2*4*6*8"으로 변환될 수 있다. 이메일의 경우 "honggildong@naver.com"은 "h*n*g*l*o*g*n*v*r*c*m"으로 변환될 수 있고, 생년월일의 경우 "19931108"은 "1*9*1*0*"으로 변환될 수 있고, GPS 정보의 경우 "37.12345, 128.12345"은 "3*.*2*4*, *2*.*2*4*"으로 변환될 수 있다. Thereafter, the first table generating unit 34 of the SARS server 30 de-identifies the personal information data (referred to as the original or original data) of the company (customer company), and the de-identified personal information data of the company After the recorded first table is created, the first table is stored in the database 50 (S20). For example, the first table generating unit 34 may convert an even-numbered character in a character string into a predetermined special character (eg, “*”) when de-identification is performed. Accordingly, in the case of a name, "Hong Gil-dong" may be converted into "Hong*dong", and in the case of a phone number, "01012345678" may be converted into "0*0*2*4*6*8". For email "honggildong@naver.com" can be converted to "h*n*g*l*o*g*n*v*r*c*m", for date of birth "19931108" is "1* 9*1*0*", and in the case of GPS information, "37.12345, 128.12345" may be converted into "3*.*2*4*, *2*.*2*4*".

그리고, 사스 서버(30)의 제 2 테이블 생성부(36)는 기업(고객사)의 개인정보 데이터(원본 또는 원본 데이터라고 함)를 대칭키 암호 알고리즘으로 암호화하고, 암호화된 기업의 개인정보 데이터가 기록된 제 2 테이블을 생성한 후에 제 2 테이블을 데이터베이스(50)에 저장한다(S30). 예를 들어, 제 2 테이블 생성부(36)는 암호화를 할 때, 평문 문자열(예컨대, JSON)을 AES(Advanced Encryption Standard) 등의 대칭키 암호 알고리즘으로 암호화 후 Base64 등의 인코딩 방식으로 인코딩할 수 있다. 그에 따라, 이름의 경우 "홍길동"은 "6rO97Zi466a8"로 암호화될 수 있고, 전화번호의 경우 "01012345678"은 "MDEwMTIzNDU2Nzg="로 암호화될 수 있다. 이메일의 경우 "honggildong@naver.com"은 "aG9uZ2dpbGRvbmdAbmF2ZXIuY29t"로 암호화될 수 있고, 생년월일의 경우 "19931108"은 "MTk5MzExMDg="로 암호화될 수 있고, GPS 정보의 경우 "37.12345, 128.12345"은 "MzcuMTIzNDUsIDEyOC4xMjM0NQ=="로 암호화될 수 있다.Then, the second table generating unit 36 of the SARS server 30 encrypts the personal information data (referred to as the original or original data) of the company (customer company) with a symmetric key encryption algorithm, and the encrypted personal information data of the company is After the recorded second table is created, the second table is stored in the database 50 (S30). For example, when performing encryption, the second table generator 36 encrypts a plaintext string (eg, JSON) with a symmetric key encryption algorithm such as AES (Advanced Encryption Standard) and encodes it using an encoding method such as Base64. there is. Accordingly, in the case of a name, "Gildong Hong" may be encrypted as "6rO97Zi466a8", and in the case of a phone number, "01012345678" may be encrypted as "MDEwMTIzNDU2Nzg=". For email, "honggildong@naver.com" can be encrypted with "aG9uZ2dpbGRvbmdAbmF2ZXIuY29t", for date of birth "19931108" can be encrypted with "MTk5MzExMDg=", for GPS information "37.12345, 128.12345" can be "MzcuMTIzNDUscuMTIzNDUN It can be encrypted with =".

도 3은 암호화된 개인정보를 사용하는 예를 설명하기 위한 플로우차트이고, 도 4 내지 도 6은 도 3의 설명에 채용되는 화면예들이다.3 is a flowchart for explaining an example of using encrypted personal information, and FIGS. 4 to 6 are examples of screens employed in the description of FIG. 3 .

먼저, 사스 서버(30)는 기업측으로부터 개인정보 열람 서비스 요청을 수신한다(S40). 즉, 기업(고객사)의 관리자가 개인정보 열람 서비스를 받기 위해 사용자 단말(10a ~ 10n 중에서 어느 하나)을 조작하여 네트워크(20)를 통해 사스 서버(30)에게로 접속하고, 개인정보 열람 서비스를 요청한다. 그에 따라, 사스 서버(30)는 개인정보 열람 서비스 요청을 수신할 수 있다.First, the SARS server 30 receives a personal information viewing service request from the company side (S40). That is, the manager of the company (customer company) operates the user terminal (any one of 10a to 10n) to receive the personal information viewing service, connects to the SARS server 30 through the network 20, and provides the personal information viewing service. request. Accordingly, the SARS server 30 may receive a personal information viewing service request.

그에 따라, 사스 서버(30)는 다수의 비식별화된 개인정보 데이터가 포함된 리스트를 생성하여 해당 사용자 단말에게로 제공한다(S42). 이 경우, 사스 서버(30)내의 리스트 생성부(38)가 제어부(44)의 제어에 의해 제 1 테이블의 모든 개인정보 데이터(즉, 비식별화된 개인정보 데이터)를 리스트화한다. 그래서, 비식별화된 다수의 개인정보 데이터가 리스트에 실려 해당 사용자 단말에게로 전송될 수 있다. 이때, 사용자 단말에서 보여지는 리스트의 일 예는 도 4에 예시한 바와 같을 수 있다. 종래에는 암호화해서 보관한다고 하여도 리스트상에서 복호화되어 화면에 보여지기 때문에 리스트상에서 관리자가 개인정보를 식별할 수 있었다. 그에 따라, 종래에는 리스트 화면을 사진으로 찍거나 캡처시 리스트에 나타난 사람들의 개인정보가 손쉽게 유출될 수 있었다. 그러나, 상술한 바와 같은 본 발명의 실시예에 따르면 리스트를 보더라도 리스트상의 개인정보 데이터들이 비식별화되어 있어서 관리자가 개인정보를 식별할 수 없으므로, 기존 취약점을 보완할 수 있다. 물론, 사진, 스크린샷, 복사 등의 유출로부터 방지할 수 있다. 한편, 기존의 경우 암호화 후 개인정보 리스트를 보게 될 시 복호화되기 때문에 복호화 처리 비용과 시간이 소요되지만, 본 발명의 실시예에서는 리스트에서 보여지는 개인정보 데이터는 암호화가 되지 않고 비식별화 처리를 거친 것이므로 개인정보 리스트에서 불러올 때는 따로 복호화 처리가 필요없으므로 기존 대비 프로세스 처리 비용과 시간이 소요되지 않는다.Accordingly, the SARS server 30 generates a list including a plurality of de-identified personal information data and provides it to the corresponding user terminal (S42). In this case, the list generating unit 38 in the SARS server 30 lists all personal information data (ie, de-identified personal information data) in the first table under the control of the control unit 44 . Thus, a plurality of de-identified personal information data may be loaded on the list and transmitted to the corresponding user terminal. In this case, an example of the list shown in the user terminal may be as illustrated in FIG. 4 . Conventionally, even if it is encrypted and stored, it is decrypted on the list and displayed on the screen, so that the administrator can identify personal information on the list. Accordingly, in the prior art, personal information of people who appeared on the list when taking a picture or capturing the list screen could be easily leaked. However, according to the embodiment of the present invention as described above, even when the list is viewed, the personal information data on the list is de-identified, so that the administrator cannot identify the personal information, so the existing weakness can be supplemented. Of course, it is possible to prevent leakage of photos, screenshots, copies, etc. On the other hand, in the conventional case, since it is decrypted when the personal information list is viewed after encryption, the decryption processing cost and time are required. Therefore, when retrieving from the personal information list, there is no need for a separate decryption process, so the process cost and time are not required compared to the existing one.

이어, 관리자가 사용자 단말상의 리스트를 확인한 후에 특정 검색대상 검색 요청을 할 수 있다. 이에 의해, 사스 서버(30)는 사용자 단말로부터 특정 검색대상 검색 요청을 수신하게 되면(S44에서 "Yes") 데이터베이스(50)내의 제 1 테이블에 비식별화된 개인정보 데이터들중에서 특정 검색대상에 부합되는 개인정보 데이터를 검색한다(S46). 예를 들어, 특정 검색대상으로 "홍길동"이 입력되었다면 사스 서버(30)내의 검색부(40)는 "홍*동"으로 치환한 후에 데이터베이스(50)내의 제 1 테이블에 비식별화된 개인정보 데이터중에서 "홍*동"에 부합되는 개인정보 데이터를 모두 검색한다. Next, after the administrator checks the list on the user terminal, a specific search target search request may be made. Accordingly, when the SARS server 30 receives a specific search target search request from the user terminal (“Yes” in S44), the SARS server 30 selects a specific search target from among the personal information data de-identified in the first table in the database 50. Matching personal information data is searched (S46). For example, if "Hong Gil-dong" is input as a specific search target, the search unit 40 in the SARS server 30 replaces "Hong * Dong" with "Hong * Dong" and then de-identified personal information in the first table in the database 50 Search all personal information data matching "Hong*Dong" among the data.

만약, 원본 이름으로 "홍길동", "홍닐동", "홍딜동", "홍릴동"이 있다면 모두 "홍*동"이기 때문에 사스 서버(30)의 검색부(40)는 4명의 개인정보 데이터를 인터페이스부(32) 및 네트워크(20)를 통해 해당 사용자 단말에게로 보낸다(S48). 그에 따라, 해당 사용자 단말에는 4명의 개인정보 데이터(예컨대, 비식별화된 정보로서, 아이디, 이메일, 이름, 닉네임, 성별, 생년월일, 휴대폰 번호 등을 포함)가 모두 표시된다.If there are "Honggil-dong", "Hongniil-dong", "Hongdil-dong", and "Hongil-dong" as the original name, since they are all "Hong*dong", the search unit 40 of the SARS server 30 provides the personal information data of four people. is sent to the corresponding user terminal through the interface unit 32 and the network 20 (S48). Accordingly, all four personal information data (eg, as non-identified information, including ID, e-mail, name, nickname, gender, date of birth, mobile phone number, etc.) is displayed in the corresponding user terminal.

이후, 사용자(관리자)가 상기에서 예시한 특정 검색대상(예컨대, 홍길동)을 정확히 찾기 위해서는 해당되는 4명을 일일이 하나씩 눌러서 해당 특정 검색대상을 찾을 것이다. 이는, 필요시에만 해당하는 개인정보를 눌러 확인(열람)하는 것이므로 개인정보 보호수준을 높일 수 있으며, 개인정보 확인에 대한 이력을 증적(예컨대, 감사를 위한 증거 자료)으로 활용 가능하다.Thereafter, in order for the user (administrator) to accurately find the specific search target (eg, Hong Gil-dong) exemplified above, the user (administrator) will search for the specific search target by pressing the four corresponding people one by one. Since this is to confirm (read) personal information only when necessary, the level of personal information protection can be increased, and the history of personal information verification can be used as evidence (eg, evidence for audit).

다르게는, 사용자가 상기에서 예시한 특정 검색대상(예컨대, 홍길동)을 정확히 찾기 위해, 도 5에서와 같이 특정 검색대상의 세부 정보(예컨대, 아이디, 이메일, 이름, 닉네임, 성별, 생년월일, 휴대폰 번호)를 정확히 입력할 수 있다.Alternatively, in order for the user to accurately find the specific search target (eg, Hong Gil-dong) exemplified above, detailed information (eg, ID, email, name, nickname, gender, date of birth, mobile phone number) of the specific search target as in FIG. 5 . ) can be entered correctly.

도 5에서와 같이 특정 검색대상(예컨대, 홍길동)의 세부 정보가 정확히 입력되면 이를 근거로 하는 특정 검색대상의 개인정보 열람 요청이 네트워크(20)를 통해 사스 서버(30)에게로 전송된다.As shown in FIG. 5 , when detailed information of a specific search target (eg, Hong Gil-dong) is accurately input, a request for viewing personal information of a specific search target based on this is transmitted to the SARS server 30 through the network 20 .

이와 같이 특정 검색대상의 개인정보 열람 요청(예컨대, 특정 검색대상의 세부 정보 포함)을 수신하게 되면(S50에서 "Yes") 사스 서버(50)의 검색부(40)는 데이터베이스(50)의 제 2 테이블에 암호화되어 있는 해당 특정 검색대상의 개인정보 데이터를 검색하여 복호화부(42)에게로 제공한다. 복호화부(42)는 수신한 데이터를 복호화하여 출력한다. 이때, 복호화부(42)는 타겟이 되는 특정 검색대상의 개인정보 하나만을 복호화 처리한다.As such, when receiving a request for viewing personal information of a specific search target (eg, including detailed information of a specific search target) (“Yes” in S50), the search unit 40 of the SARS server 50 2 The personal information data of the specific search target encrypted in the table is searched and provided to the decryption unit 42 . The decoding unit 42 decodes the received data and outputs it. At this time, the decryption unit 42 decrypts only one piece of personal information of a specific search target as a target.

그에 따라, 해당 사용자 단말에는 관리자가 열람하고자 하는 특정 검색대상의 개인정보 데이터(복호화된 것임)가 정확히 표시된다(S52).Accordingly, the personal information data (decrypted) of a specific search target that the administrator wants to view is accurately displayed on the user terminal (S52).

그리고, 관리자가 열람한 기록은 제어부(44)의 제어하에 데이터베이스(50)에 이력(도 6 참조)으로 저장되기 때문에, 추후에 개인정보 열람 증적(감사를 위한 증거 자료)으로 활용 가능하다. And, since the record read by the administrator is stored as a history (see FIG. 6 ) in the database 50 under the control of the control unit 44 , it can be utilized as a personal information reading trace (evidence for audit) later.

또한, 상술한 본 발명의 클라우드 기반의 사스형 개인정보 보호 방법은, 컴퓨터로 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록 장치를 포함한다. 컴퓨터가 읽을 수 있는 기록매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피디스크, 광데이터 저장장치 등이 있다. 또한, 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다. 그리고, 상기 방법을 구현하기 위한 기능적인(function) 프로그램, 코드 및 코드 세그먼트들은 본 발명이 속하는 기술분야의 프로그래머들에 의해 용이하게 추론될 수 있다.In addition, the cloud-based SARS-type personal information protection method of the present invention described above can be implemented as a computer-readable code on a computer-readable recording medium. The computer-readable recording medium includes all types of recording devices in which data readable by a computer system is stored. Examples of computer-readable recording media include ROM, RAM, CD-ROM, magnetic tape, floppy disk, and optical data storage device. In addition, the computer-readable recording medium is distributed in a computer system connected through a network, so that the computer-readable code can be stored and executed in a distributed manner. In addition, functional programs, codes, and code segments for implementing the method can be easily inferred by programmers in the art to which the present invention pertains.

이상에서와 같이 도면과 명세서에서 최적의 실시예가 개시되었다. 여기서 특정한 용어들이 사용되었으나, 이는 단지 본 발명을 설명하기 위한 목적에서 사용된 것이지 의미 한정이나 청구범위에 기재된 본 발명의 범위를 제한하기 위하여 사용된 것은 아니다. 그러므로, 본 기술 분야의 통상의 지식을 가진자라면 이로부터 다양한 변형 및 균등한 타 실시예가 가능하다는 점을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호범위는 첨부된 청구범위의 기술적 사상에 의해 정해져야 할 것이다.As described above, the best embodiment has been disclosed in the drawings and the specification. Although specific terms have been used herein, they are only used for the purpose of describing the present invention and are not used to limit the meaning or scope of the present invention described in the claims. Therefore, it will be understood by those skilled in the art that various modifications and equivalent other embodiments are possible therefrom. Accordingly, the true technical protection scope of the present invention should be defined by the technical spirit of the appended claims.

10a ~ 10n : 사용자 단말 20 : 네트워크
30 : 사스 서버 32 : 인터페이스부
34 : 제 1 테이블 생성부 36 : 제 2 테이블 생성부
38 : 리스트 생성부 40 : 검색부
42 : 복호화부 44 : 제어부
50 : 데이터베이스
10a ~ 10n: user terminal 20: network
30: SARS server 32: interface unit
34: first table generating unit 36: second table generating unit
38: list generation unit 40: search unit
42: decoding unit 44: control unit
50: database

Claims (7)

개인정보 데이터를 비식별화 처리하고, 비식별화된 개인정보 데이터가 기록된 제 1 테이블을 생성하는 제 1 테이블 생성부;
상기 개인정보 데이터를 암호화하고, 암호화된 개인정보 데이터가 기록된 제 2 테이블을 생성하는 제 2 테이블 생성부;
상기 제 1 테이블 및 제 2 테이블을 저장하는 데이터베이스;
개인정보 열람 서비스 요청에 따라 상기 제 1 테이블에 비식별화되어 있는 개인정보 데이터를 리스트화하는 리스트 생성부;
특정 검색대상 검색 요청에 따라 상기 제 1 테이블에서 그에 상응하는 개인정보 데이터를 검색하고, 상기 특정 검색대상의 개인정보 열람 요청에 따라 상기 제 2 테이블에서 그에 상응하는 개인정보 데이터를 검색하는 검색부;
상기 제 2 테이블을 근거로 검색된 상기 특정 검색대상의 암호화된 개인정보 데이터를 복호화하는 복호화부; 및
제어부;를 포함하는,
클라우드 기반의 사스형 개인정보 보호 장치.
a first table generation unit for de-identifying personal information data and generating a first table in which de-identified personal information data is recorded;
a second table generation unit for encrypting the personal information data and generating a second table in which the encrypted personal information data is recorded;
a database storing the first table and the second table;
a list generator for listing de-identified personal information data in the first table according to a request for a personal information viewing service;
a search unit for retrieving corresponding personal information data from the first table according to a specific search target search request, and searching for corresponding personal information data from the second table according to the specific search target personal information viewing request;
a decryption unit for decrypting the encrypted personal information data of the specific search target searched based on the second table; and
including; a control unit;
A cloud-based SARS-type personal information protection device.
제 1항에 있어서,
상기 기업의 개인정보 데이터는 문자열로 구성되고,
상기 제 1 테이블 생성부는, 상기 문자열에서 홀수 번째의 문자 및 짝수 번째의 문자 중에서 어느 하나를 특수문자로 변환하는,
클라우드 기반의 사스형 개인정보 보호 장치.
The method of claim 1,
The company's personal information data consists of character strings,
The first table generating unit converts any one of an odd-numbered character and an even-numbered character in the character string into a special character,
A cloud-based SARS-type personal information protection device.
제 1항에 있어서,
상기 제 2 테이블 생성부는,
상기 기업의 개인정보 데이터를 대칭키 암호 알고리즘으로 암호화한 후에 인코딩하는,
클라우드 기반의 사스형 개인정보 보호 장치.
The method of claim 1,
The second table generation unit,
Encoding after encrypting the personal information data of the company with a symmetric key encryption algorithm,
A cloud-based SARS-type personal information protection device.
제 1항에 있어서,
상기 제어부는,
상기 개인정보 열람 서비스 요청을 수신하면 상기 리스트 생성부를 제어하여 상기 리스트를 생성하고 생성된 리스트를 해당 사용자에게로 출력하고,
상기 리스트를 확인한 사용자로부터의 특정 검색대상 검색 요청이 있으면 상기 검색부를 제어하여 상기 제 1 테이블을 근거로 해당 특정 검색대상을 검색하여 해당 사용자에게로 출력하고,
상기 특정 검색대상의 개인정보 열람 요청이 있으면 상기 검색부를 제어하여 상기 제 2 테이블에 암호화되어 있는 해당 특정 검색대상의 개인정보 데이터를 검색하여 상기 복호화부를 통해 복호화된 데이터를 해당 사용자에게로 출력하는,
클라우드 기반의 사스형 개인정보 보호 장치.
The method of claim 1,
The control unit is
Upon receiving the personal information viewing service request, the list generation unit is controlled to generate the list and output the generated list to the user,
If there is a specific search target search request from the user who has checked the list, the search unit is controlled to search for the specific search target based on the first table and output to the corresponding user,
When there is a request to view personal information of the specific search target, controlling the search unit to search for the personal information data of the specific search target encrypted in the second table, and outputting the decrypted data to the user through the decryption unit,
A cloud-based SARS-type personal information protection device.
클라우드 기반의 사스형 개인정보 보호 장치에서 수행되는 개인정보 보호 방법으로서,
개인정보 데이터를 비식별화 처리하고, 비식별화된 개인정보 데이터가 기록된 제 1 테이블을 생성하는 단계;
상기 개인정보 데이터를 암호화하고, 암호화된 개인정보 데이터가 기록된 제 2 테이블을 생성하는 단계;
상기 제 1 테이블 및 제 2 테이블을 저장하는 단계;
개인정보 열람 서비스 요청에 따라 상기 제 1 테이블에 비식별화되어 있는 개인정보 데이터를 리스트화하는 단계;
특정 검색대상 검색 요청에 따라 상기 제 1 테이블에서 그에 상응하는 개인정보 데이터를 검색하는 단계;
상기 특정 검색대상의 개인정보 열람 요청에 따라 상기 제 2 테이블에서 그에 상응하는 개인정보 데이터를 검색하는 단계; 및
상기 제 2 테이블을 근거로 검색된 상기 특정 검색대상의 암호화된 개인정보 데이터를 복호화하는 단계;를 포함하는,
클라우드 기반의 사스형 개인정보 보호 방법.
A personal information protection method performed in a cloud-based SARS-type personal information protection device, comprising:
de-identifying the personal information data and generating a first table in which the de-identified personal information data is recorded;
encrypting the personal information data and generating a second table in which the encrypted personal information data is recorded;
storing the first table and the second table;
listing de-identified personal information data in the first table according to a request for a personal information viewing service;
searching for personal information data corresponding thereto in the first table according to a specific search target search request;
searching for personal information data corresponding thereto in the second table according to the request for viewing personal information of the specific search target; and
Decrypting the encrypted personal information data of the specific search target searched based on the second table;
A cloud-based SARS-type personal information protection method.
제 5항에 있어서,
상기 기업의 개인정보 데이터는 문자열로 구성되고,
상기 제 1 테이블을 생성하는 단계에서의 비식별화는, 상기 문자열에서 홀수 번째의 문자 및 짝수 번째의 문자 중에서 어느 하나를 특수문자로 변환하는,
클라우드 기반의 사스형 개인정보 보호 방법.
6. The method of claim 5,
The company's personal information data consists of character strings,
The de-identification in the step of generating the first table converts any one of the odd-numbered characters and the even-numbered characters into a special character in the character string,
A cloud-based SARS-type personal information protection method.
제 5항에 있어서,
상기 제 2 테이블을 생성하는 단계는,
상기 기업의 개인정보 데이터를 대칭키 암호 알고리즘으로 암호화한 후에 인코딩하는,
클라우드 기반의 사스형 개인정보 보호 방법.
6. The method of claim 5,
Creating the second table comprises:
Encoding after encrypting the personal information data of the company with a symmetric key encryption algorithm,
A cloud-based SARS-type personal information protection method.
KR1020200138845A 2020-10-26 2020-10-26 Cloud-based SaaS type personal information protection apparatus and method KR20220054919A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020200138845A KR20220054919A (en) 2020-10-26 2020-10-26 Cloud-based SaaS type personal information protection apparatus and method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020200138845A KR20220054919A (en) 2020-10-26 2020-10-26 Cloud-based SaaS type personal information protection apparatus and method

Publications (1)

Publication Number Publication Date
KR20220054919A true KR20220054919A (en) 2022-05-03

Family

ID=81591225

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200138845A KR20220054919A (en) 2020-10-26 2020-10-26 Cloud-based SaaS type personal information protection apparatus and method

Country Status (1)

Country Link
KR (1) KR20220054919A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024071535A1 (en) * 2022-09-29 2024-04-04 주식회사 신시웨이 Saas-based database access control gateway service system and method

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101321408B1 (en) 2013-04-30 2013-10-23 주식회사 유니인포 System and method for providing cloud based saas security services for the protection of personal information
KR102148937B1 (en) 2018-10-26 2020-08-31 서울여자대학교 산학협력단 Cloud server and method of managing image file

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101321408B1 (en) 2013-04-30 2013-10-23 주식회사 유니인포 System and method for providing cloud based saas security services for the protection of personal information
KR102148937B1 (en) 2018-10-26 2020-08-31 서울여자대학교 산학협력단 Cloud server and method of managing image file

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024071535A1 (en) * 2022-09-29 2024-04-04 주식회사 신시웨이 Saas-based database access control gateway service system and method

Similar Documents

Publication Publication Date Title
Singh et al. Updated comparative analysis on video conferencing platforms-zoom, Google meet, Microsoft Teams, WebEx Teams and GoToMeetings
CN107111723B (en) User terminal, service providing apparatus, driving method of user terminal, driving method of service providing apparatus, and search system based on encryption index
US8782424B2 (en) System and method for sharing data
CN102469080B (en) Method for pass user to realize safety login application client and system thereof
US10083311B2 (en) Cryptographic key
US9577989B2 (en) Methods and systems for decrypting an encrypted portion of a uniform resource identifier
US10853497B2 (en) Method and system for providing an update of code on a memory-constrained device
US20140140508A1 (en) Method, System and Program Product for Secure Storage of Content
CA3027741A1 (en) Blockchain systems and methods for user authentication
US20100299529A1 (en) Method and system for securing communication
US10169600B2 (en) Encryption policies for various nodes of a file
US11764940B2 (en) Secure search of secret data in a semi-trusted environment using homomorphic encryption
WO2021139075A1 (en) Contract encryption and decryption method and apparatus, and device and storage medium
US11250143B2 (en) Method and system for implementing an encryption SDK
US10742618B2 (en) Message encryption
US20210392003A1 (en) Decentralized computing systems and methods for performing actions using stored private data
WO2020123926A1 (en) Decentralized computing systems and methods for performing actions using stored private data
KR20200127643A (en) Method and Apparatus for Distributed Processing of Data for Document Management
Murray et al. Cloud service security & application vulnerability
Kitsaki et al. A forensic investigation of Android mobile applications
CN107533613A (en) Transplant document format file custom field
KR20220054919A (en) Cloud-based SaaS type personal information protection apparatus and method
JP5307199B2 (en) Data management system and data management method
JP2020086116A (en) Information processing device and information processing method
WO2021117101A1 (en) Response processing program, response processing method, information processing device, and response processing system

Legal Events

Date Code Title Description
A201 Request for examination