WO2024019205A1 - Electronic device and method for data processing - Google Patents

Electronic device and method for data processing Download PDF

Info

Publication number
WO2024019205A1
WO2024019205A1 PCT/KR2022/011120 KR2022011120W WO2024019205A1 WO 2024019205 A1 WO2024019205 A1 WO 2024019205A1 KR 2022011120 W KR2022011120 W KR 2022011120W WO 2024019205 A1 WO2024019205 A1 WO 2024019205A1
Authority
WO
WIPO (PCT)
Prior art keywords
data
processing
user
service user
identified
Prior art date
Application number
PCT/KR2022/011120
Other languages
French (fr)
Korean (ko)
Inventor
정운기
임이랑
손회연
Original Assignee
쿠팡 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 쿠팡 주식회사 filed Critical 쿠팡 주식회사
Publication of WO2024019205A1 publication Critical patent/WO2024019205A1/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
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/907Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9535Search customisation based on user profiles and personalisation
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising

Definitions

  • This disclosure relates to an electronic device and method for de-identifying sensitive data containing personal information.
  • the present disclosure is proposed to solve the above-described problems, and its purpose is to provide an electronic device and method for processing data so that it is impossible to identify which user each data belongs to while appropriately maintaining the characteristics of the user's data. Do it as
  • a data processing method includes the steps of checking user identification data capable of identifying a service user and characteristic data of the service user corresponding to the user identification data; Generating first non-identifiable data corresponding to the user identification data through a hashing technique; calculating a processing standard specialized for the feature data based on meta information defining a data processing method; generating second de-identified data corresponding to the feature data by processing at least a portion of the feature data based on the processing criteria; and generating final non-identifiable data including one or more tables having the first non-identifiable data as a key and at least some of the second non-identifiable data as values.
  • the meta information may include data field information defining the type of each data included in the feature data and data de-identification method information defining a data processing method corresponding to each type of data.
  • the data field information may be information that defines at least some of the service user's gender, age, number of visits to the service page, number of orders within the service, and number of membership months as the type of data.
  • the meta information may additionally include data usage information defining the usage of at least some of the data included in the feature data, and the data de-identification method information may include the type of each data and the data usage information. It may be information defining a data processing method corresponding to .
  • the data de-identification method information includes a first method of binary converting the data value, a second method of converting the data value into a representative value for each section, a third method of converting the data value into an approximate value, and a data value. It may be information that defines at least one of the fourth methods that maintain the same as the data processing method.
  • the first non-identifiable data may include data generated through a hash function based on the user identification data and additional data with a unique value.
  • the additional data may include a Universally Unique Identifier (UUID), and the hash function may include a Secure Hash Algorithm (SHA)-based hash function.
  • UUID Universally Unique Identifier
  • SHA Secure Hash Algorithm
  • the UUID includes a first version UUID generated based on a timestamp and a MAC address (Media Access Control Address), a second version UUID in which some data constituting the first version UUID has been replaced, and the name and name of the service user.
  • MD5 Message-Digest algorithm 5-5
  • the additional data used to generate each final de-identified data may be different.
  • the second non-identified data is generated according to the processing standard when feature data belonging to a data field for which the processing standard exists is the processing target, and when feature data belonging to a data field for which the processing standard does not exist is the processing target. , can be generated by binary converting the value of the feature data.
  • the final de-identified data is snapshot data distinguished by the time of creation, and contains one or more tables in which one or more user identification data confirmed at each preset data reading cycle and one or more characteristic data corresponding to each user identification data are matched. It can be included.
  • the characteristic data may include second non-identifying data corresponding to characteristic data of a service user currently enrolled and characteristic data of a service user currently unsubscribed.
  • the data processing method includes checking characteristic data of a service user who is in a withdrawal state; And generating second non-identifying data of the service user in the withdrawal state by processing at least a portion of the characteristic data of the service user in the withdrawal state based on pre-calculated processing standards for the characteristic data of the service user in the currently subscribed state. Additional steps may be included.
  • the data processing method includes: confirming characteristic data of a service user who has withdrawn; Calculating processing standards specialized for characteristic data of the service user who has withdrawn from the service based on meta information defining a data processing method; and generating second non-identifying data of the service user in the withdrawal state by processing at least a portion of the characteristic data of the service user in the withdrawal state based on processing standards specialized for the characteristic data of the service user in the withdrawal state. It may also be included.
  • the step of generating the first non-identification data includes first applying a hash function to the user identification data of the service user in the withdrawal state when generating the first non-identification data of the service user in the withdrawal state; and generating first non-identifiable data of the service user in the withdrawn state by secondary application of a hash function based on the primary application result and the additional data.
  • An electronic device for data processing includes a transceiver, a memory for storing instructions, and a processor, wherein the processor is connected to the transceiver and the memory to provide user identification data capable of identifying a service user and Identify the characteristic data of the service user corresponding to the user identification data, generate first de-identified data corresponding to the user identification data through a hashing technique, and based on meta information defining the processing method of the data.
  • Calculate a processing standard specialized for the feature data process at least a portion of the feature data based on the processing standard to generate second non-identified data corresponding to the feature data, and use the first non-identified data as a key ( key), to generate final de-identified data including one or more tables having at least some of the second de-identified data as values.
  • data that can identify a user is de-identified through a hashing technique, feature data representing characteristics is de-identified according to processing standards, and the two de-identified data are stored in a key-value table.
  • a data set in which data representing the user and its characteristics are matched can be created.
  • the data on withdrawn members can be stored in a form that can be used later while satisfying the legal regulations applicable to withdrawn members. there is.
  • FIG. 1 is a schematic configuration diagram showing an environment in which an electronic device operates, according to an embodiment.
  • FIG. 2 is a flowchart to explain a data processing method according to an embodiment.
  • Figure 3 is an exemplary diagram of a pipeline through which data is processed according to an embodiment.
  • 4 and 5 are flowcharts to explain a data processing method according to an additional embodiment.
  • Figure 6 is an exemplary diagram of a pipeline through which data is processed according to an additional embodiment.
  • 7A to 7E are exemplary diagrams showing the structure of data processed according to an embodiment.
  • FIG. 8 is a block diagram illustrating an electronic device that processes data according to an embodiment.
  • the “terminal” or “user terminal” mentioned below may be implemented as a computer or portable terminal that can connect to a server or other terminal through a network.
  • the computer includes, for example, a laptop, desktop, laptop, etc. equipped with a web browser
  • the portable terminal is, for example, a wireless communication device that guarantees portability and mobility.
  • all types of communication-based terminals such as IMT (International Mobile Telecommunication), CDMA (Code Division Multiple Access), W-CDMA (W-Code Division Multiple Access), and LTE (Long Term Evolution), smartphones, tablet PCs, etc. It may include a handheld-based wireless communication device.
  • transmission “communication,” “transmission,” “reception,” “transmission,” “transmission,” “reception,” or similar terms of a signal, message, or information refer to the direct transmission of information, message, or information from one component to another. It includes not only what is done, but also what is transmitted through other components.
  • “transmitting” or “transmitting” a signal, message or information as a component indicates the final destination of the signal, message or information and does not mean the direct destination.
  • “related” to two or more data or information means that if one data (or information) is acquired, at least part of other data (or information) can be obtained based on it.
  • first and second may be used to describe various components, but the components should not be limited by the terms. The above terms may be used for the purpose of distinguishing one component from another component.
  • a first component may be referred to as a second component, and similarly, the second component may also be referred to as the first component without departing from the scope of the present disclosure.
  • each block of the processing flow diagrams and combinations of the flow diagram diagrams may be performed by computer program instructions.
  • These computer program instructions can be mounted on a processor of a general-purpose computer, special-purpose computer, or other programmable data processing equipment, so that the instructions performed through the processor of the computer or other programmable data processing equipment are described in the flow chart block(s). It creates the means to perform functions.
  • These computer program instructions may also be stored in computer-usable or computer-readable memory that can be directed to a computer or other programmable data processing equipment to implement a function in a particular manner, so that the computer-usable or computer-readable memory It is also possible to produce manufactured items containing instruction means that perform the functions described in the flowchart block(s).
  • Computer program instructions can also be mounted on a computer or other programmable data processing equipment, so that a series of operational steps are performed on the computer or other programmable data processing equipment to create a process that is executed by the computer, thereby generating a process that is executed by the computer or other programmable data processing equipment. Instructions that perform processing equipment may also provide steps for executing the functions described in the flow diagram block(s).
  • each block may represent a module, segment, or portion of code that includes one or more executable instructions for executing specified logical function(s).
  • each block may represent a module, segment, or portion of code that includes one or more executable instructions for executing specified logical function(s).
  • the network 130 includes a local area network (LAN), a wide area network (WAN), a value added network (VAN), a mobile radio communication network, a satellite communication network, and their respective networks. It is a comprehensive data communication network that includes a combination and allows each component shown in Figure 1 to communicate smoothly with each other, and may include wired Internet, wireless Internet, and mobile wireless communication network.
  • LAN local area network
  • WAN wide area network
  • VAN value added network
  • mobile radio communication network a mobile radio communication network
  • satellite communication network and their respective networks.
  • It is a comprehensive data communication network that includes a combination and allows each component shown in Figure 1 to communicate smoothly with each other, and may include wired Internet, wireless Internet, and mobile wireless communication network.
  • Wireless communications include, for example, wireless LAN (Wi-Fi), Bluetooth, Bluetooth low energy, ZigBee, WFD (Wi-Fi Direct), UWB (ultra wideband), and infrared communication (IrDA, infrared Data Association). ), NFC (Near Field Communication), etc., but are not limited thereto.
  • the electronic device 110 is a device for de-identifying data stored in the database 120 or a copy thereof.
  • 'de-identification' refers to a general term for methods and mechanisms that change sensitive data, including personal information, so that it cannot be identified whose data it belongs to, and 'non-identification' means that the data is de-identified according to preset standards. This may mean that the information has been de-identified or has reached a state where it can receive approval from an authorized agency, committee, etc. in relation to de-identification.
  • de-identified data can also be used for machine learning of artificial intelligence models.
  • the electronic device 110 may be a single server that performs an operation for de-identification, but depending on the embodiment, it may be composed of a plurality of servers, and may be configured to enable electronic communication between one or more servers and an external cloud server. It may also be configured in a connected form.
  • the database 120 is a medium in which personal information of users using the service is stored. Specifically, the database 120 may store sensitive data including the user's gender, age, number of times of service use, service subscription date, service use date, ID, password, or member serial number. Relatedly, the way data is stored in the database 120 may be designed in various ways, and the database 120 may be a relational database (RDB) that stores and provides access to data points related to each other. Depending on the embodiment, it may be a non-relational database (NoSQL).
  • RDB relational database
  • NoSQL non-relational database
  • the electronic device 110 can receive data from the database 120, read data stored in the database 120, and perform operations using the data. Additionally, the electronic device 110 may transmit the calculation result back to the database 120, store it in a storage space within the electronic device 110, or transmit it to a separate storage medium.
  • FIG. 1 shows that there is only one database 120, this is for convenience of understanding, and depending on the embodiment, the number of databases 120 may be plural.
  • FIGS. 2 to 7E may be performed, for example, by the electronic device 110 described above.
  • FIG. 2 is a flowchart to explain a data processing method according to an embodiment.
  • step S210 the electronic device 110 checks user identification data capable of identifying the service user and characteristic data of the service user corresponding to the user identification data.
  • 'user identification data' may mean a member serial number, member ID, or other identifier uniquely assigned to each service user.
  • 'characteristic data' refers to the remaining information excluding 'user identification data' among the personal information of service users, and may include, for example, the user's gender, age, number of times of service use, number of membership months, etc.
  • the electronic device 110 may read user identification data and characteristic data from the database 120, or temporarily store a copy of the user identification data and characteristic data in the electronic device 110.
  • the electronic device 110 may check user identification data and characteristic data corresponding to a batch of a specific size at every preset data read cycle or whenever a preset read condition is met. .
  • the batch size may be set in advance or may be determined according to the data read period. Accordingly, the electronic device 110 can check different user identification data for two or more users at one time, and can also check characteristic data for each user.
  • step S220 the electronic device 110 generates first non-identification data corresponding to user identification data through a hashing technique.
  • the first non-identifiable data may include data generated through a hash function based on (1) user identification data and (2) additional data with a unique value.
  • the electronic device 110 may generate first non-identified data by merging user identification data and additional data and inputting them into a hash function.
  • the additional data may include a Universally Unique Identifier (UUID), and the hash function may include a hash function based on the Secure Hash Algorithm (SHA).
  • UUID Universally Unique Identifier
  • SHA Secure Hash Algorithm
  • the electronic device 110 can generate first non-identification data by merging user identification data and UUID and inputting it into a SHA-based hash function.
  • the hash function may include a SHA-256-based hash function
  • the UUID may include the following five versions of UUID.
  • the types of hash functions and UUIDs are not limited to those described in this disclosure.
  • UUID UUID generated based on timestamp and MAC address (Media Access Control Address)
  • Second version UUID UUID generated by replacing some data constituting the first version UUID.
  • UUID generated through a SHA-based hash function based on the service user's name and namespace.
  • each final de-identified data is generated.
  • the additional data used may be different.
  • the electronic device 110 de-identifies the personal information of the same service user, it uses different additional data depending on the time of de-identification (the time when the final de-identified data is generated), depending on the time of de-identification.
  • the final de-identified data can be generated differently, which can add the de-identification effect based on the time of de-identification to the de-identification effect based on the service user.
  • step S230 the electronic device 110 calculates a processing standard specialized for feature data based on meta information defining a data processing method.
  • meta information includes (1) data field information defining the type of each data included in the feature data, and (2) data de-identification method information defining the data processing method corresponding to each type of data. may include.
  • meta information including data field information and data de-identification method information is based on setting information generated by the consumer of the final de-identified data or setting information generated by the electronic device 110 in consideration of the consumer. can be defined.
  • the data field information may include information defining at least some of the service user's gender, age, number of visits to the service page, number of orders within the service, and number of membership months as the type of data.
  • data field information can be defined for each column to which each data belongs.
  • the meta information may additionally include data usage information that defines the usage of at least some of the data included in the feature data, and in this case, the data de-identification method information corresponds to 'type and data usage information of each data'. It may include information defining the data processing method.
  • data de-identification method information may include information defining the data processing method as follows. However, the data processing method is not limited to the methods listed below. Additionally, the data de-identification method information may be defined by the administrator of the electronic device 110, or may be defined by the electronic device 110 itself according to the type of each data.
  • the first method converts data with two data values to 0 or 1 depending on the data value, or converts data with three or more data values to 0 based on a threshold. Alternatively, it may be converted to 1.
  • the second method may be a method of dividing the data value interval into a plurality of quantiles and then converting each data value into a representative value such as the median, average, minimum, or maximum value of the quantile interval to which the data value belongs.
  • the 50th quantile median value method which is an example of the second method
  • the data value interval is divided into 50 and the corresponding data value can be replaced with the median value of the quantile interval to which each data value belongs.
  • the third method may be a method of obtaining an approximate value by rounding off/rounding less than a certain number of digits of the data value or applying a specific function to the data value.
  • step S240 the electronic device 110 generates second de-identified data corresponding to the feature data by processing at least a portion of the feature data based on the calculated processing standard.
  • the electronic device 110 may target feature data belonging to a data field to which the processing standard is applied and convert the feature data according to the processing standard to generate second non-identified data.
  • the electronic device 110 may vary the method of generating the second non-identified data depending on the presence or absence of processing standards. For example, when feature data belonging to a data field for which a processing standard exists is subject to processing, the electronic device 110 may generate second de-identified data according to the processing standard, and feature data belonging to a data field for which a processing standard does not exist. When data is to be processed, second non-identified data can be generated by binary converting the value of the feature data.
  • step S250 the electronic device 110 generates final de-identified data including one or more tables having the first de-identified data as a key and at least some of the second de-identified data as values.
  • the final de-identified data includes tables A, B, C, D, and E
  • the five tables have the first de-identified data corresponding to user It can be done differently.
  • a and B have the first non-identifiable data corresponding to user
  • the first non-identifiable data corresponding to user Y may have a common key, but the second non-identifiable data may be combined in different combinations.
  • the manager of the electronic device 110 can use the first non-identifiable data corresponding to a specific user among the final non-identified data as a key and collectively search for values (second non-identifiable data) associated with the key. .
  • the final non-identified data generated by the electronic device 110 may be snapshot data distinguished by the time of creation.
  • the final de-identified data may include one or more tables in which one or more user identification data confirmed at each preset data read cycle and one or more feature data corresponding to each user identification data are matched.
  • snapshot data created at different times are not associated with a common key.
  • Figure 3 is an exemplary diagram of a pipeline through which data is processed according to an embodiment.
  • the process shown in a square represents the operation of the electronic device 110, and the information shown in a cylindrical shape represents data to be processed or data used to process the data.
  • the fact that each data is shown as a separate cylindrical figure is for convenience of explanation and does not mean that the database in which each data is stored is separate.
  • the electronic device 110 may check user identification data and feature data that can identify a service user, and calculate processing standards specialized for feature data based on meta information. At this time, the electronic device 110 may calculate a processing standard specialized for feature data by additionally considering the distribution of feature data. However, the distribution of such feature data may be information confirmed by the electronic device 110 while checking the feature data, or may be information included in meta information in advance.
  • the electronic device 110 may process at least a portion of the feature data according to the calculated processing criteria to generate second non-identification data, and first non-identification data corresponding to the user identification data through a hashing technique.
  • Identification data can be generated.
  • the first de-identified data generation process is shown as being performed in a lower priority than the processing standard calculation process and the second de-identified data generation process.
  • the first de-identified data generation process may be performed regardless of the order with other processes as long as the electronic device 110 confirms the user identification data.
  • the data processing method according to this disclosure is to de-identify personal information or copies thereof stored in the database 120, but it is difficult to store personal information of users who have withdrawn for a long period of time considering legally regulated terms and conditions. , it must be stored through a primary de-identification process in advance.
  • Figure 4 shows a method of processing user identification data of a service user who has withdrawn from service. Specifically, it shows the process of generating first de-identified data by de-identifying user identification data. Step S410 may be performed before step S210 and step S420 may be performed after step S210, but the order of performing each step is not limited to this.
  • step S410 the electronic device 110 first applies a hash function to the user identification data of the service user who has withdrawn.
  • a hash function There are no special restrictions on the type of hash function applied at this time, but a representative hash function based on SHA can be applied.
  • step S420 the electronic device 110 generates first non-identifiable data of the service user in the withdrawn state by secondly applying a hash function based on the first application result and additional data through step S410. Specifically, the electronic device 110 may merge the primary application result and the additional data and input them into a hash function to generate first non-identifiable data of the service user who is in the withdrawal state.
  • a hash function There are no special restrictions on the type of hash function applied at this time, and a representative example is the SHA-based hash function.
  • the additional data may include a UUID
  • the UUID may include the five versions of UUID described above with reference to FIG. 2.
  • the types of hash functions and UUIDs are not limited to those described in this disclosure.
  • Figure 5 shows a method of processing characteristic data of a service user who is in a withdrawal state. Since the characteristic data of a withdrawn user must be de-identified in advance and go through step S210 of FIG. 2, FIG. 5 shows a pre-processing process for the characteristic data of a service user who has withdrawn to this effect.
  • the 'feature data' in step S210 of FIG. 2 may include (1) characteristic data of the service user currently in the subscription state and (2) second non-identifying data corresponding to the characteristic data of the service user in the withdrawal state. You can.
  • step S510 the electronic device 110 checks characteristic data of the service user who has withdrawn.
  • the electronic device 110 may determine whether the user is in an unsubscribed or subscribed state by referring to user status information merged with the user's characteristic data.
  • a database storing the characteristic data of a currently registered user and a database storing the characteristic data of a user who is unsubscribed exist separately, or the storage location of the currently registered user's characteristic data within one database and The storage location of the feature data of the user in the unsubscribed state may be different, and the electronic device 110 may determine whether the user is in the unsubscribed or subscribed state based on the storage medium or storage location of the two feature data.
  • the method by which the electronic device 110 determines the user's status is not limited to this.
  • step S520 the electronic device 110 calculates a processing standard specialized for characteristic data of a service user who has withdrawn from service based on meta information defining a data processing method.
  • step S530 the electronic device 110 collects second non-identifying data of the service user in the withdrawal state by processing at least a portion of the characteristic data of the service user in the withdrawal state based on processing standards specialized for the characteristic data of the service user in the withdrawal state. creates .
  • the electronic device 110 does not use processing standards specialized for characteristic data of service users who are currently in a withdrawal state, but uses pre-calculated processing standards to process characteristic data of service users who are currently in a subscription state. It can also be used when processing feature data.
  • the above-described step S520 may be omitted, and in step S530, the electronic device 110 may generate second non-identified data of the service user who has withdrawn from the service based on a pre-calculated processing standard.
  • the method is divided into a plurality of steps, but at least some of the steps are performed in a different order, combined with other steps, omitted, or divided into detailed steps. It may be performed, or may be performed by adding one or more steps not shown.
  • Figure 6 is an exemplary diagram of a pipeline through which data is processed according to an additional embodiment. Specifically, the upper part of FIG. 6 shows the process of initially de-identifying the data of a user who has withdrawn.
  • the electronic device 110 checks the user identification data and characteristic data of the user in the withdrawn state, calculates processing standards specialized for the characteristic data of the user in the withdrawn state, and determines the user's withdrawal status according to the processing standard. Second non-identified data corresponding to the user's characteristic data may be generated.
  • the electronic device 110 checks the user identification data and characteristic data of the user who is in the unsubscribed state, but does not calculate a separate processing standard, unlike what is shown in FIG. 6, and determines the characteristics of the user who is currently enrolled.
  • second non-identified data corresponding to the characteristic data of the user who has withdrawn can be generated using pre-calculated processing standards.
  • the data of a user in a withdrawal state goes through a primary de-identification process and can be used again as 'feature data' in the introduction process on the pipeline of FIG. 3.
  • the electronic device 110 removes data, user identification data, characteristic data, or second de-identification of a subscribed user according to an external order to remove withdrawal-related data or at its own discretion.
  • data about users who have withdrawn can be removed.
  • the electronic device 110 may remove data of users who have newly withdrawn from the service from the data of the registered users.
  • the data of the user who has newly withdrawn from the service can be removed from the user identification data, characteristic data, or second non-identified data that is already in the process of being processed, based on the user identification data of the user who has newly withdrawn from the service.
  • 7A to 7E are exemplary diagrams showing data structures processed according to one embodiment.
  • Figure 7a shows the structure of data that has not undergone de-identification processing.
  • Information on the year/month of creation of each data user identification data as a serial number that can identify the service user, binary number indicating the gender of the user (for convenience of explanation, 0 is assumed to be a binary number corresponding to female and 1 is male), user The age of the user and the number of months that have passed since the user signed up are shown. As shown, sensitive personal information such as serial number, each user's age, and number of membership months is exposed.
  • Figure 7b shows the structure of data that has undergone de-identification processing for some data. That is, a hash function was applied to the serial number among the personal information and converted into first non-identifiable data of a certain number of bits. Note that the first non-identifying data in the bottom two rows have the same value, so it can be inferred that the user identification data for the same service user has been converted, and the first non-identifying data in the top row is the user identification data of a separate user. It can be seen that has been converted.
  • FIG. 7C shows a data structure indicating the status of each de-identified user's data in each de-identified table.
  • the electronic device 110 refers to the information indicating whether or not to de-identify processing for each user in the subscription state and the user in the unsubscribe state, and sees only the data of the user subject to de-identification processing. De-identification processing may be performed upon disclosure.
  • the electronic device 110 stores a data structure indicating whether or not de-identification processing has been performed, as shown in FIG. 7C, and reports this to the administrator. You can send a , send a notification, or request a de-identification processing command for data that has not been de-identified (corresponding to a false state).
  • Figure 7d shows data field information and data de-identification method information used to calculate the processing standards applied to de-identification processing of each table.
  • Quantile200 is a 200th percentile median value method. The 200th percentile median value method is applied to data belonging to the order_cate2_fashion_r3m field in the table in row 1, data belonging to the order_cate1_fashion_r12m field in the table in row 2, and data belonging to the gmv_payltr_r12m field in the table in row 3. It indicates that it has been done.
  • Figure 7e shows processing standards specialized for feature data calculated based on data field information and data de-identification method information.
  • the 200th quantile median value method (quantile200) is applied to data belonging to the order_cate2_fashion_kids_r3m field, data belonging to the order_cate1_special1_r12m field, and data belonging to the order_cate2_daily_supply_r12m field of the same sb_rocketpay.csm_AA_category2_sample table, and the calculated quantile value is listed in column 5.
  • the electronic device 110 can calculate processing standards specialized for each field by considering meta information (data field information, data de-identification method information) even within the same table.
  • FIG. 8 is a block diagram illustrating an electronic device that processes data according to an embodiment.
  • the electronic device 110 may include a transceiver 111, a processor 113, and a memory 115.
  • the electronic device 110 is connected to the database 120 through the transceiver 111 and can exchange data.
  • the processor 113 may perform at least one method described above through FIGS. 1 to 7E.
  • the memory 115 may store information for performing at least one method described above with reference to FIGS. 1 to 7E.
  • Memory 115 may be volatile memory or non-volatile memory.
  • the processor 113 can control the electronic device 110 to execute programs and provide information.
  • the code of the program executed by the processor 113 may be stored in the memory 115.
  • the processor 113 is connected to the transceiver 111 and the memory 115, checks user identification data capable of identifying the service user and characteristic data of the service user corresponding to the user identification data, and uses a hashing technique to identify the user.
  • Feature data by generating first non-identification data corresponding to the identification data, calculating processing standards specialized for the feature data based on meta information defining the processing method of the data, and processing at least a portion of the feature data based on the processing standards.
  • the electronic device 110 shown in FIG. 8 shows only components related to this embodiment. Accordingly, those skilled in the art can understand that other general-purpose components may be included in addition to the components shown in FIG. 8.
  • Devices include a processor, memory for storing and executing program data, permanent storage such as a disk drive, a communication port for communicating with an external device, a touch panel, keys, buttons, etc. It may include a user interface device, etc.
  • Methods implemented as software modules or algorithms may be stored on a computer-readable recording medium as computer-readable codes or program instructions executable on the processor.
  • computer-readable recording media include magnetic storage media (e.g., ROM (read-only memory), RAM (random-access memory), floppy disk, hard disk, etc.) and optical read media (e.g., CD-ROM). ), DVD (Digital Versatile Disc), etc.
  • the computer-readable recording medium is distributed among computer systems connected to a network, so that computer-readable code can be stored and executed in a distributed manner.
  • the media may be readable by a computer, stored in memory, and executed by a processor.
  • This embodiment can be represented by functional block configurations and various processing steps. These functional blocks may be implemented as any number of hardware or/and software configurations that execute specific functions. For example, embodiments include integrated circuit configurations such as memory, processing, logic, look-up tables, etc. that can execute various functions under the control of one or more microprocessors or other control devices. can be hired. Similar to how the components can be implemented as software programming or software elements, this embodiment includes various algorithms implemented as combinations of data structures, processes, routines or other programming constructs, such as C, C++, Java ( It can be implemented in a programming or scripting language such as Java), assembler, etc. Functional aspects may be implemented as algorithms running on one or more processors.
  • this embodiment may employ conventional technologies for electronic environment setting, signal processing, message processing, and/or data processing.
  • Terms such as “mechanism,” “element,” “means,” and “composition” can be used broadly and are not limited to mechanical and physical components. The term may include the meaning of a series of software routines in connection with a processor, etc.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Business, Economics & Management (AREA)
  • Computer Hardware Design (AREA)
  • Library & Information Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Finance (AREA)
  • Accounting & Taxation (AREA)
  • Development Economics (AREA)
  • Strategic Management (AREA)
  • Medical Informatics (AREA)
  • Game Theory and Decision Science (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Economics (AREA)
  • Marketing (AREA)
  • General Business, Economics & Management (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

An electronic device for data processing and a method therefor are disclosed. The method for data processing according to the present disclosure comprises the steps of: identifying user identification data capable of identifying a service user and feature data corresponding to the user identification data; generating first non-identified data corresponding to the user identification data through a hashing technique; calculating a processing criterion specific to the feature data on the basis of meta information that defines a data processing scheme; generating second non-identified data corresponding to the feature data by processing at least a portion of the feature data on the basis of the processing criterion; and generating final non-identified data including one or more tables having the first non-identified data as a key and at least some of the second non-identified data as values.

Description

데이터 처리를 위한 전자 장치 및 그 방법Electronic devices and methods for data processing
본 개시는 개인 정보가 포함된 민감 데이터를 비식별화 처리하는 전자 장치 및 그 방법에 관한 것이다.This disclosure relates to an electronic device and method for de-identifying sensitive data containing personal information.
이-커머스(E-commerce)를 비롯한 다양한 서비스를 운영함에 따라, 수많은 사용자의 개인 정보가 포함된 민감 데이터가 축적된다. 보다 증진된 사용자 경험을 제공하고 서비스를 개선하기 위해서는 이러한 사용자의 데이터를 인공지능 모델의 학습에 이용하거나, 통계적으로 처리하는 등, 적극적으로 활용하여야 한다.As various services, including e-commerce, are operated, sensitive data containing personal information of numerous users is accumulated. In order to provide a more enhanced user experience and improve services, such user data must be actively utilized, such as using it to learn artificial intelligence models or processing it statistically.
그러나, 이 과정에서 사용자의 민감 데이터가 노출될 위험도 존재하며, 자신의 민감 데이터가 서비스 제공자에 의해 사용되는 것 자체를 꺼리는 사용자도 많은 것이 사실이다.However, there is a risk that the user's sensitive data may be exposed during this process, and it is true that many users are reluctant to have their sensitive data used by service providers.
따라서, 사용자의 민감 데이터가 지닌 특징을 과하게 희석시키지 않으면서도, 누구의 민감 데이터인지 드러나지 않도록 비식별화(익명화 내지는 가명화) 처리할 필요가 있다.Therefore, there is a need to de-identify (anonymize or pseudonymize) the user's sensitive data so as not to dilute the characteristics of the user's sensitive data excessively, and not reveal whose sensitive data it is.
관련하여, KR2417044B1 건 등의 선행문헌들을 참조할 수 있다.In relation to this, prior literature such as KR2417044B1 may be referred to.
본 개시는 상술한 문제점을 해결하기 위해 제안된 것으로, 사용자의 데이터가 지닌 특징을 적절히 유지하면서도 각 데이터가 어느 사용자에 대한 데이터인지 식별할 수 없도록 데이터를 처리하는 전자 장치 및 방법을 제공하는 것을 목적으로 한다.The present disclosure is proposed to solve the above-described problems, and its purpose is to provide an electronic device and method for processing data so that it is impossible to identify which user each data belongs to while appropriately maintaining the characteristics of the user's data. Do it as
본 개시에 의해 이루고자 하는 기술적 과제는 상기된 바와 같은 기술적 과제들로 한정되지 않으며, 이하의 실시 예들로부터 또 다른 기술적 과제들이 유추될 수 있다.The technical problems to be achieved by the present disclosure are not limited to the technical problems described above, and other technical problems can be inferred from the following embodiments.
개시되는 일 실시 예에 따른 데이터 처리 방법은, 서비스 사용자를 식별 가능한 사용자 식별 데이터 및 상기 사용자 식별 데이터에 대응하는 서비스 사용자의 특징 데이터를 확인하는 단계; 해싱(Hashing) 기법을 통해 상기 사용자 식별 데이터에 대응하는 제1 비식별 데이터를 생성하는 단계; 데이터의 처리 방식을 정의한 메타 정보에 기반하여 상기 특징 데이터에 특화된 처리 기준을 산출하는 단계; 상기 처리 기준에 기반하여 상기 특징 데이터의 적어도 일부를 처리함으로써 상기 특징 데이터에 대응하는 제2 비식별 데이터를 생성하는 단계; 및 상기 제1 비식별 데이터를 키(key)로, 상기 제2 비식별 데이터 중 적어도 일부를 값(value)으로 갖는 하나 이상의 테이블을 포함하는 최종 비식별 데이터를 생성하는 단계를 포함한다.A data processing method according to an embodiment disclosed includes the steps of checking user identification data capable of identifying a service user and characteristic data of the service user corresponding to the user identification data; Generating first non-identifiable data corresponding to the user identification data through a hashing technique; calculating a processing standard specialized for the feature data based on meta information defining a data processing method; generating second de-identified data corresponding to the feature data by processing at least a portion of the feature data based on the processing criteria; and generating final non-identifiable data including one or more tables having the first non-identifiable data as a key and at least some of the second non-identifiable data as values.
상기 메타 정보는, 상기 특징 데이터에 포함되는 각 데이터의 종류를 정의하는 데이터 필드 정보 및 상기 각 데이터의 종류에 대응하는 데이터 처리 방식을 정의하는 데이터 비식별화 방식 정보를 포함할 수 있다.The meta information may include data field information defining the type of each data included in the feature data and data de-identification method information defining a data processing method corresponding to each type of data.
상기 데이터 필드 정보는, 상기 서비스 사용자의 성별, 나이, 서비스 페이지 방문 횟수, 서비스 내 주문 건수, 회원 개월 수 중 적어도 일부를 데이터의 종류로서 정의한 정보일 수 있다.The data field information may be information that defines at least some of the service user's gender, age, number of visits to the service page, number of orders within the service, and number of membership months as the type of data.
상기 메타 정보는, 상기 특징 데이터에 포함되는 데이터 중 적어도 일부의 용도를 정의하는 데이터 용도 정보를 추가로 포함할 수 있고, 상기 데이터 비식별화 방식 정보는, 상기 각 데이터의 종류 및 상기 데이터 용도 정보에 대응하는 데이터 처리 방식을 정의한 정보일 수 있다.The meta information may additionally include data usage information defining the usage of at least some of the data included in the feature data, and the data de-identification method information may include the type of each data and the data usage information. It may be information defining a data processing method corresponding to .
상기 데이터 비식별화 방식 정보는, 데이터 값을 이진 변환(binary convert)하는 제1 방식, 데이터 값을 각 구간별 대푯값으로 변환하는 제2 방식, 데이터 값을 근사값으로 변환하는 제3 방식, 데이터 값을 그대로 유지하는 제4 방식 중 적어도 하나를 데이터의 처리 방식으로서 정의한 정보일 수 있다.The data de-identification method information includes a first method of binary converting the data value, a second method of converting the data value into a representative value for each section, a third method of converting the data value into an approximate value, and a data value. It may be information that defines at least one of the fourth methods that maintain the same as the data processing method.
상기 제1 비식별 데이터는, 상기 사용자 식별 데이터와 고유한 값을 갖는 부가 데이터를 기반으로 해시 함수를 통해 생성된 데이터를 포함할 수 있다.The first non-identifiable data may include data generated through a hash function based on the user identification data and additional data with a unique value.
상기 부가 데이터는, UUID(Universally Unique Identifier)를 포함할 수 있고, 상기 해시 함수는, SHA(Secure Hash Algorithm) 기반 해시 함수를 포함할 수 있다.The additional data may include a Universally Unique Identifier (UUID), and the hash function may include a Secure Hash Algorithm (SHA)-based hash function.
상기 UUID는, 타임스탬프 및 MAC 주소(Media Access Control Address)를 기반으로 생성되는 제1 버전 UUID, 상기 제1 버전 UUID을 구성하는 일부 데이터가 대체된 제2 버전 UUID, 상기 서비스 사용자의 이름 및 이름공간(namespace)에 기반하여 MD5(Message-Digest algorithm 5) 기반 해시 함수를 통해 생성된 제3 버전 UUID, 무작위로 생성된 제4 버전 UUID, 상기 서비스 사용자의 이름 및 이름공간에 기반하여 SHA 기반 해시 함수를 통해 생성된 제5 버전 UUID 중 어느 하나에 해당할 수 있다.The UUID includes a first version UUID generated based on a timestamp and a MAC address (Media Access Control Address), a second version UUID in which some data constituting the first version UUID has been replaced, and the name and name of the service user. A third version UUID generated through a MD5 (Message-Digest algorithm 5)-based hash function based on the namespace, a randomly generated fourth version UUID, and a SHA-based hash based on the name and namespace of the service user. It may correspond to any one of the 5th version UUIDs generated through the function.
사용자 식별 데이터는 동일하지만 최종 비식별 데이터가 생성되는 시점이 상이한 경우, 각각의 최종 비식별 데이터의 생성에 이용되는 부가 데이터는 상이할 수 있다.If the user identification data is the same but the time at which the final de-identified data is generated is different, the additional data used to generate each final de-identified data may be different.
상기 제2 비식별 데이터는, 상기 처리 기준이 존재하는 데이터 필드에 속하는 특징 데이터가 처리 대상인 경우, 상기 처리 기준에 따라 생성되고, 상기 처리 기준이 존재하지 않는 데이터 필드에 속하는 특징 데이터가 처리 대상인 경우, 특징 데이터의 값을 이진 변환함으로써 생성될 수 있다.The second non-identified data is generated according to the processing standard when feature data belonging to a data field for which the processing standard exists is the processing target, and when feature data belonging to a data field for which the processing standard does not exist is the processing target. , can be generated by binary converting the value of the feature data.
상기 최종 비식별 데이터는, 생성 시점으로 구별되는 스냅샷 데이터로서, 사전 설정된 데이터 판독 주기마다 확인된 하나 이상의 사용자 식별 데이터와 각각의 사용자 식별 데이터에 대응하는 하나 이상의 특징 데이터가 매칭된 하나 이상의 테이블을 포함할 수 있다.The final de-identified data is snapshot data distinguished by the time of creation, and contains one or more tables in which one or more user identification data confirmed at each preset data reading cycle and one or more characteristic data corresponding to each user identification data are matched. It can be included.
상기 특징 데이터는, 현재 가입 상태인 서비스 사용자의 특징 데이터 및 탈퇴 상태인 서비스 사용자의 특징 데이터에 대응하는 제2 비식별 데이터를 포함할 수 있다.The characteristic data may include second non-identifying data corresponding to characteristic data of a service user currently enrolled and characteristic data of a service user currently unsubscribed.
일 실시 예에 따르면, 상기 데이터 처리 방법은, 탈퇴 상태인 서비스 사용자의 특징 데이터를 확인하는 단계; 및 현재 가입 상태인 서비스 사용자의 특징 데이터에 대해 사전 산출된 처리 기준에 기반하여 상기 탈퇴 상태인 서비스 사용자의 특징 데이터의 적어도 일부를 처리함으로써 상기 탈퇴 상태인 서비스 사용자의 제2 비식별 데이터를 생성하는 단계를 더 포함할 수 있다.According to one embodiment, the data processing method includes checking characteristic data of a service user who is in a withdrawal state; And generating second non-identifying data of the service user in the withdrawal state by processing at least a portion of the characteristic data of the service user in the withdrawal state based on pre-calculated processing standards for the characteristic data of the service user in the currently subscribed state. Additional steps may be included.
다른 실시 예에 따르면, 상기 데이터 처리 방법은, 탈퇴 상태인 서비스 사용자의 특징 데이터를 확인하는 단계; 데이터의 처리 방식을 정의한 메타 정보에 기반하여 상기 탈퇴 상태인 서비스 사용자의 특징 데이터에 특화된 처리 기준을 산출하는 단계; 및 상기 탈퇴 상태인 서비스 사용자의 특징 데이터에 특화된 처리 기준에 기반하여 상기 탈퇴 상태인 서비스 사용자의 특징 데이터의 적어도 일부를 처리함으로써 상기 탈퇴 상태인 서비스 사용자의 제2 비식별 데이터를 생성하는 단계를 더 포함할 수도 있다.According to another embodiment, the data processing method includes: confirming characteristic data of a service user who has withdrawn; Calculating processing standards specialized for characteristic data of the service user who has withdrawn from the service based on meta information defining a data processing method; and generating second non-identifying data of the service user in the withdrawal state by processing at least a portion of the characteristic data of the service user in the withdrawal state based on processing standards specialized for the characteristic data of the service user in the withdrawal state. It may also be included.
상기 제1 비식별 데이터를 생성하는 단계는, 탈퇴 상태인 서비스 사용자의 제1 비식별 데이터를 생성함에 있어서, 탈퇴 상태인 서비스 사용자의 사용자 식별 데이터에 해시 함수를 1차 적용하는 단계; 및 상기 1차 적용 결과와 상기 부가 데이터를 기반으로 해시 함수를 2차 적용하여 상기 탈퇴 상태인 서비스 사용자의 제1 비식별 데이터를 생성하는 단계를 포함할 수 있다.The step of generating the first non-identification data includes first applying a hash function to the user identification data of the service user in the withdrawal state when generating the first non-identification data of the service user in the withdrawal state; and generating first non-identifiable data of the service user in the withdrawn state by secondary application of a hash function based on the primary application result and the additional data.
개시되는 일 실시 예에 따른 데이터 처리를 위한 전자 장치는, 트랜시버, 명령어를 저장하는 메모리 및 프로세서를 포함하고, 상기 프로세서는, 상기 트랜시버 및 상기 메모리와 연결되어, 서비스 사용자를 식별 가능한 사용자 식별 데이터 및 상기 사용자 식별 데이터에 대응하는 서비스 사용자의 특징 데이터를 확인하고, 해싱(Hashing) 기법을 통해 상기 사용자 식별 데이터에 대응하는 제1 비식별 데이터를 생성하고, 데이터의 처리 방식을 정의한 메타 정보에 기반하여 상기 특징 데이터에 특화된 처리 기준을 산출하고, 상기 처리 기준에 기반하여 상기 특징 데이터의 적어도 일부를 처리함으로써 상기 특징 데이터에 대응하는 제2 비식별 데이터를 생성하고, 상기 제1 비식별 데이터를 키(key)로, 상기 제2 비식별 데이터 중 적어도 일부를 값(value)으로 갖는 하나 이상의 테이블을 포함하는 최종 비식별 데이터를 생성한다.An electronic device for data processing according to an embodiment of the disclosure includes a transceiver, a memory for storing instructions, and a processor, wherein the processor is connected to the transceiver and the memory to provide user identification data capable of identifying a service user and Identify the characteristic data of the service user corresponding to the user identification data, generate first de-identified data corresponding to the user identification data through a hashing technique, and based on meta information defining the processing method of the data. Calculate a processing standard specialized for the feature data, process at least a portion of the feature data based on the processing standard to generate second non-identified data corresponding to the feature data, and use the first non-identified data as a key ( key), to generate final de-identified data including one or more tables having at least some of the second de-identified data as values.
기타 실시 예들의 구체적인 사항들은 상세한 설명 및 도면들에 포함되어 있다.Specific details of other embodiments are included in the detailed description and drawings.
본 개시에 따르면, 사용자를 식별 가능한 데이터에 대해서 해싱 기법을 통해 비식별화 처리를 하고, 특징을 나타내는 특징 데이터에 대해서 처리 기준에 따라 비식별화 처리를 하여, 두 비식별 데이터를 키-값 테이블로 매칭함으로써, 사용자와 그에 따른 특징을 나타내는 데이터가 매칭된 데이터 셋을 생성할 수 있다.According to the present disclosure, data that can identify a user is de-identified through a hashing technique, feature data representing characteristics is de-identified according to processing standards, and the two de-identified data are stored in a key-value table. By matching, a data set in which data representing the user and its characteristics are matched can be created.
또한 본 개시에 따르면, 탈퇴 상태인 사용자의 데이터를 사전에 1차적으로 비식별화 처리하여 저장함으로써, 탈퇴 회원에 적용되는 법적 규제를 충족하면서도 탈퇴 회원에 대한 데이터를 추후 활용할 수 있는 형태로 보관할 수 있다.In addition, according to the present disclosure, by first de-identifying and storing the data of users who are withdrawn in advance, the data on withdrawn members can be stored in a form that can be used later while satisfying the legal regulations applicable to withdrawn members. there is.
발명의 효과는 이상에서 언급한 효과로 제한되지 않으며, 언급되지 않은 또 다른 효과들은 청구범위의 기재로부터 당해 기술 분야의 통상의 기술자에게 명확하게 이해될 수 있을 것이다.The effect of the invention is not limited to the effects mentioned above, and other effects not mentioned will be clearly understood by those skilled in the art from the description of the claims.
도 1은 일 실시 예에 따른 전자 장치가 작동하는 환경을 나타낸 개략적인 구성도이다.1 is a schematic configuration diagram showing an environment in which an electronic device operates, according to an embodiment.
도 2는 일 실시 예에 따른 데이터 처리 방법을 설명하기 위한 흐름도이다.Figure 2 is a flowchart to explain a data processing method according to an embodiment.
도 3은 일 실시 예에 따라 데이터가 처리되는 파이프라인의 예시도이다.Figure 3 is an exemplary diagram of a pipeline through which data is processed according to an embodiment.
도 4 및 5는 추가적인 실시 예에 따른 데이터 처리 방법을 설명하기 위한 흐름도이다.4 and 5 are flowcharts to explain a data processing method according to an additional embodiment.
도 6은 추가적인 실시 예에 따라 데이터가 처리되는 파이프라인의 예시도이다.Figure 6 is an exemplary diagram of a pipeline through which data is processed according to an additional embodiment.
도 7a 내지 7e는 일 실시 예에 따라 처리되는 데이터의 구조를 나타낸 예시도이다.7A to 7E are exemplary diagrams showing the structure of data processed according to an embodiment.
도 8은 일 실시 예에 따라 데이터를 처리하는 전자 장치를 설명하기 위한 블록도이다.FIG. 8 is a block diagram illustrating an electronic device that processes data according to an embodiment.
실시 예들에서 사용되는 용어는 본 개시에서의 기능을 고려하면서 가능한 현재 널리 사용되는 일반적인 용어들을 선택하였으나, 이는 당 분야에 종사하는 기술자의 의도 또는 판례, 새로운 기술의 출현 등에 따라 달라질 수 있다. 또한, 특정한 경우는 출원인이 임의로 선정한 용어도 있으며, 이 경우 해당되는 설명 부분에서 상세히 그 의미를 기재할 것이다. 따라서 본 개시에서 사용되는 용어는 단순한 용어의 명칭이 아닌, 그 용어가 가지는 의미와 본 개시의 전반에 걸친 내용을 토대로 정의되어야 한다.The terms used in the embodiments are general terms that are currently widely used as much as possible while considering the functions in the present disclosure, but this may vary depending on the intention or precedent of a person working in the art, the emergence of new technology, etc. In addition, in certain cases, there are terms arbitrarily selected by the applicant, and in this case, the meaning will be described in detail in the relevant description. Therefore, the terms used in this disclosure should be defined based on the meaning of the term and the overall content of this disclosure, rather than simply the name of the term.
명세서 전체에서 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있음을 의미한다. 또한, 명세서에 기재된 "...부", "...모듈" 등의 용어는 적어도 하나의 기능이나 동작을 처리하는 단위를 의미하고, 이는 하드웨어 또는 소프트웨어로 구현되거나 하드웨어와 소프트웨어의 결합으로 구현될 수 있으며, 도시된 예와 달리 구체적 동작에 있어 명확히 구분되지 않을 수 있다.When it is said that a part "includes" a certain element throughout the specification, this means that, unless specifically stated to the contrary, it does not exclude other elements but may further include other elements. In addition, terms such as "...unit" and "...module" used in the specification refer to a unit that processes at least one function or operation, which is implemented as hardware or software, or as a combination of hardware and software. It may be possible, and unlike the example shown, specific operations may not be clearly distinguished.
명세서 전체에서 기재된 "a, b, 및 c 중 적어도 하나"의 표현은, 'a 단독', 'b 단독', 'c 단독', 'a 및 b', 'a 및 c', 'b 및 c', 또는 'a, b, 및 c 모두'를 포괄할 수 있다.The expression “at least one of a, b, and c” used throughout the specification means ‘a alone’, ‘b alone’, ‘c alone’, ‘a and b’, ‘a and c’, ‘b and c ', or 'all of a, b, and c'.
이하에서 언급되는 "단말" 또는 "사용자 단말"은 네트워크를 통해 서버나 타 단말에 접속할 수 있는 컴퓨터나 휴대용 단말로 구현될 수 있다. 여기서, 컴퓨터는 예를 들어, 웹 브라우저(WEB Browser)가 탑재된 노트북, 데스크톱(desktop), 랩톱(laptop) 등을 포함하고, 휴대용 단말은 예를 들어, 휴대성과 이동성이 보장되는 무선 통신 장치로서, IMT(International Mobile Telecommunication), CDMA(Code Division Multiple Access), W-CDMA(W-Code Division Multiple Access), LTE(Long Term Evolution) 등의 통신 기반 단말, 스마트폰, 태블릿 PC 등과 같은 모든 종류의 핸드헬드(Handheld) 기반의 무선 통신 장치를 포함할 수 있다.The “terminal” or “user terminal” mentioned below may be implemented as a computer or portable terminal that can connect to a server or other terminal through a network. Here, the computer includes, for example, a laptop, desktop, laptop, etc. equipped with a web browser, and the portable terminal is, for example, a wireless communication device that guarantees portability and mobility. , all types of communication-based terminals such as IMT (International Mobile Telecommunication), CDMA (Code Division Multiple Access), W-CDMA (W-Code Division Multiple Access), and LTE (Long Term Evolution), smartphones, tablet PCs, etc. It may include a handheld-based wireless communication device.
이하의 설명에 있어서, 신호, 메시지 또는 정보의 "전송", "통신", "송신", "수신" 기타 이와 유사한 의미의 용어는 일 구성요소에서 다른 구성요소로 정보, 메시지 또는 정보가 직접 전달되는 것뿐만이 아니라 다른 구성요소를 거쳐 전달되는 것도 포함한다.In the following description, “transmission,” “communication,” “transmission,” “reception,” “transmission,” “transmission,” “reception,” or similar terms of a signal, message, or information refer to the direct transmission of information, message, or information from one component to another. It includes not only what is done, but also what is transmitted through other components.
특히 신호, 메시지 또는 정보를 일 구성요소로 "전송" 또는 "송신"한다는 것은 그 신호, 메시지 또는 정보의 최종 목적지를 지시하는 것이고 직접적인 목적지를 의미하는 것이 아니다. 이는 신호, 메시지 또는 정보의 "수신"에 있어서도 동일하다. 또한 본 개시에 있어서, 2 이상의 데이터 또는 정보가 "관련"된다는 것은 하나의 데이터(또는 정보)를 획득하면, 그에 기초하여 다른 데이터(또는 정보)의 적어도 일부를 획득할 수 있음을 의미한다.In particular, “transmitting” or “transmitting” a signal, message or information as a component indicates the final destination of the signal, message or information and does not mean the direct destination. The same applies to “receiving” signals, messages or information. Additionally, in the present disclosure, “related” to two or more data or information means that if one data (or information) is acquired, at least part of other data (or information) can be obtained based on it.
또한, 제1, 제2 등의 용어는 다양한 구성 요소들을 설명하는데 사용될 수 있지만, 상기 구성 요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성 요소를 다른 구성 요소로부터 구별하는 목적으로 사용될 수 있다.Additionally, terms such as first and second may be used to describe various components, but the components should not be limited by the terms. The above terms may be used for the purpose of distinguishing one component from another component.
예를 들어, 본 개시의 권리 범위를 벗어나지 않으면서 제1 구성 요소는 제2 구성 요소로 명명될 수 있고, 유사하게 제2 구성 요소도 제1 구성 요소로 명명될 수 있다.For example, a first component may be referred to as a second component, and similarly, the second component may also be referred to as the first component without departing from the scope of the present disclosure.
아래에서는 첨부한 도면을 참고하여 본 개시의 실시 예에 대하여 본 개시가 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다. 그러나 본 개시는 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시 예에 한정되지 않는다.Below, with reference to the attached drawings, embodiments of the present disclosure will be described in detail so that those skilled in the art can easily practice them. However, the present disclosure may be implemented in many different forms and is not limited to the embodiments described herein.
이하에서는 도면을 참조하여 본 개시의 실시 예들을 상세히 설명한다.Hereinafter, embodiments of the present disclosure will be described in detail with reference to the drawings.
실시 예를 설명함에 있어서 본 발명이 속하는 기술 분야에 익히 알려져 있고 본 발명과 직접적으로 관련이 없는 기술 내용에 대해서는 설명을 생략한다. 이는 불필요한 설명을 생략함으로써 본 발명의 요지를 흐리지 않고 더욱 명확히 전달하기 위함이다.In describing the embodiments, description of technical content that is well known in the technical field to which the present invention belongs and that is not directly related to the present invention will be omitted. This is to convey the gist of the present invention more clearly without obscuring it by omitting unnecessary explanation.
마찬가지 이유로 첨부 도면에 있어서 일부 구성요소는 과장되거나 생략되거나 개략적으로 도시되었다. 또한, 각 구성요소의 크기는 실제 크기를 전적으로 반영하는 것이 아니다. 각 도면에서 동일한 또는 대응하는 구성요소에는 동일한 참조 번호를 부여하였다.For the same reason, some components are exaggerated, omitted, or schematically shown in the accompanying drawings. Additionally, the size of each component does not entirely reflect its actual size. In each drawing, identical or corresponding components are assigned the same reference numbers.
본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시 예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 개시되는 실시 예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시 예들은 본 발명의 개시가 완전하도록 하고, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다. 명세서 전체에 걸쳐 동일 참조 부호는 동일 구성 요소를 지칭한다.The advantages and features of the present invention and methods for achieving them will become clear by referring to the embodiments described in detail below along with the accompanying drawings. However, the present invention is not limited to the embodiments disclosed below and may be implemented in various different forms. The present embodiments are merely provided to ensure that the disclosure of the present invention is complete and to provide common knowledge in the technical field to which the present invention pertains. It is provided to fully inform those who have the scope of the invention, and the present invention is only defined by the scope of the claims. Like reference numerals refer to like elements throughout the specification.
처리 흐름도 도면들의 각 블록과 흐름도 도면들의 조합들은 컴퓨터 프로그램 인스트럭션들에 의해 수행될 수 있음을 이해할 수 있을 것이다. 이들 컴퓨터 프로그램 인스트럭션들은 범용 컴퓨터, 특수용 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비의 프로세서에 탑재될 수 있으므로, 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비의 프로세서를 통해 수행되는 그 인스트럭션들이 흐름도 블록(들)에서 설명된 기능들을 수행하는 수단을 생성하게 된다. 이들 컴퓨터 프로그램 인스트럭션들은 특정 방식으로 기능을 구현하기 위해 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비를 지향할 수 있는 컴퓨터 이용 가능 또는 컴퓨터 판독 가능 메모리에 저장되는 것도 가능하므로, 그 컴퓨터 이용 가능 또는 컴퓨터 판독 가능 메모리에 저장된 인스트럭션들은 흐름도 블록(들)에서 설명된 기능을 수행하는 인스트럭션 수단을 내포하는 제조 품목을 생산하는 것도 가능하다. 컴퓨터 프로그램 인스트럭션들은 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비 상에 탑재되는 것도 가능하므로, 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비 상에서 일련의 동작 단계들이 수행되어 컴퓨터로 실행되는 프로세스를 생성해서 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비를 수행하는 인스트럭션들은 흐름도 블록(들)에서 설명된 기능들을 실행하기 위한 단계들을 제공하는 것도 가능하다.It will be understood that each block of the processing flow diagrams and combinations of the flow diagram diagrams may be performed by computer program instructions. These computer program instructions can be mounted on a processor of a general-purpose computer, special-purpose computer, or other programmable data processing equipment, so that the instructions performed through the processor of the computer or other programmable data processing equipment are described in the flow chart block(s). It creates the means to perform functions. These computer program instructions may also be stored in computer-usable or computer-readable memory that can be directed to a computer or other programmable data processing equipment to implement a function in a particular manner, so that the computer-usable or computer-readable memory It is also possible to produce manufactured items containing instruction means that perform the functions described in the flowchart block(s). Computer program instructions can also be mounted on a computer or other programmable data processing equipment, so that a series of operational steps are performed on the computer or other programmable data processing equipment to create a process that is executed by the computer, thereby generating a process that is executed by the computer or other programmable data processing equipment. Instructions that perform processing equipment may also provide steps for executing the functions described in the flow diagram block(s).
또한, 각 블록은 특정된 논리적 기능(들)을 실행하기 위한 하나 이상의 실행 가능한 인스트럭션들을 포함하는 모듈, 세그먼트 또는 코드의 일부를 나타낼 수 있다. 또, 몇 가지 대체 실행 예들에서는 블록들에서 언급된 기능들이 순서를 벗어나서 발생하는 것도 가능함을 주목해야 한다. 예컨대, 잇달아 도시되어 있는 두 개의 블록들은 사실 실질적으로 동시에 수행되는 것도 가능하고 또는 그 블록들이 때때로 해당하는 기능에 따라 역순으로 수행되는 것도 가능하다.Additionally, each block 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 execution examples it is possible for the functions mentioned in the blocks to occur out of order. For example, it is possible for two blocks shown in succession to be performed substantially at the same time, or it is possible for the blocks to be performed in reverse order depending on the corresponding function.
도 1은 일 실시 예에 따른 전자 장치가 작동하는 환경을 나타낸 개략적인 구성도이다. 도 1을 참조하면, 전자 장치(110) 및 데이터베이스(120)는 연결된 네트워크(130)를 통해 서로 통신하거나, 외부의 다른 장치와 통신할 수 있다. 네트워크(130)는 근거리 통신망(Local Area Network; LAN), 광역 통신망(Wide Area Network; WAN), 부가가치 통신망(Value Added Network; VAN), 이동 통신망(mobile radio communication network), 위성 통신망 및 이들의 상호 조합을 포함하며, 도 1에 도시된 각 구성 주체가 서로 원활하게 통신을 할 수 있도록 하는 포괄적인 의미의 데이터 통신망이며, 유선 인터넷, 무선 인터넷 및 모바일 무선 통신망을 포함할 수 있다. 무선 통신은 예를 들어, 무선 랜(Wi-Fi), 블루투스, 블루투스 저 에너지(Bluetooth low energy), 지그비, WFD(Wi-Fi Direct), UWB(ultra wideband), 적외선 통신(IrDA, infrared Data Association), NFC(Near Field Communication) 등이 있을 수 있으나, 이에 한정되는 것은 아니다.1 is a schematic configuration diagram showing an environment in which an electronic device operates, according to an embodiment. Referring to FIG. 1, the electronic device 110 and the database 120 may communicate with each other or with another external device through the connected network 130. The network 130 includes a local area network (LAN), a wide area network (WAN), a value added network (VAN), a mobile radio communication network, a satellite communication network, and their respective networks. It is a comprehensive data communication network that includes a combination and allows each component shown in Figure 1 to communicate smoothly with each other, and may include wired Internet, wireless Internet, and mobile wireless communication network. Wireless communications include, for example, wireless LAN (Wi-Fi), Bluetooth, Bluetooth low energy, ZigBee, WFD (Wi-Fi Direct), UWB (ultra wideband), and infrared communication (IrDA, infrared Data Association). ), NFC (Near Field Communication), etc., but are not limited thereto.
전자 장치(110)는 데이터베이스(120)에 저장된 데이터 또는 그 사본을 비식별화하기 위한 장치이다. 본 개시에서 '비식별화'는 개인 정보를 비롯한 민감 데이터가 누구의 데이터인지 식별할 수 없도록 변경하는 방식, 메커니즘을 총칭하며, '식별할 수 없다'는 것은 데이터가 사전 설정된 기준에 따라 비식별화되거나, 비식별화와 관련하여 공인된 기관, 위원회 등의 승인을 받을 수 있는 상태가 된 것을 의미할 수 있다. 이와 같이 비식별화된 데이터는 인공지능 모델의 기계 학습에 사용될 수도 있다.The electronic device 110 is a device for de-identifying data stored in the database 120 or a copy thereof. In this disclosure, 'de-identification' refers to a general term for methods and mechanisms that change sensitive data, including personal information, so that it cannot be identified whose data it belongs to, and 'non-identification' means that the data is de-identified according to preset standards. This may mean that the information has been de-identified or has reached a state where it can receive approval from an authorized agency, committee, etc. in relation to de-identification. Such de-identified data can also be used for machine learning of artificial intelligence models.
전자 장치(110)는 비식별화를 위한 연산을 수행하는 하나의 서버일 수 있으나, 실시 예에 따라서는 복수의 서버로 구성될 수도 있으며, 하나 이상의 서버와 외부의 클라우드 서버가 전자적으로 통신 가능하도록 연결된 형태로 구성될 수도 있다.The electronic device 110 may be a single server that performs an operation for de-identification, but depending on the embodiment, it may be composed of a plurality of servers, and may be configured to enable electronic communication between one or more servers and an external cloud server. It may also be configured in a connected form.
데이터베이스(120)는 서비스를 이용하는 사용자의 개인 정보가 저장되는 매체이다. 구체적으로, 데이터베이스(120)에는 사용자의 성별, 나이, 서비스 이용 횟수, 서비스 가입 일자, 서비스 이용 일자, 아이디, 비밀번호 또는 회원 시리얼 번호 등을 포함하는 민감 데이터가 저장될 수 있다. 관련하여, 데이터베이스(120)에 데이터가 저장되는 방식은 다양하게 설계될 수 있으며, 데이터베이스(120)는 서로 관련된 데이터 포인트에 대한 액세스를 저장 및 제공하는 관계형 데이터베이스(RDB, Relational Database)일 수 있으나, 실시 예에 따라서는 비관계형 데이터베이스(NoSQL)일 수도 있다.The database 120 is a medium in which personal information of users using the service is stored. Specifically, the database 120 may store sensitive data including the user's gender, age, number of times of service use, service subscription date, service use date, ID, password, or member serial number. Relatedly, the way data is stored in the database 120 may be designed in various ways, and the database 120 may be a relational database (RDB) that stores and provides access to data points related to each other. Depending on the embodiment, it may be a non-relational database (NoSQL).
전자 장치(110)는 데이터베이스(120)로부터 데이터를 수신하거나, 데이터베이스(120)에 저장된 데이터를 읽을 수 있고, 해당 데이터를 이용하여 연산을 수행할 수 있다. 또한, 전자 장치(110)는 상기 연산 결과를 다시 데이터베이스(120)에 전송하거나, 전자 장치(110) 내 저장 공간에 저장하거나, 별도의 저장 매체에 전송할 수 있다. 비록, 도 1에는 데이터베이스(120)가 1개인 것처럼 도시되어 있으나 이는 이해의 편의를 돕기 위한 것으로, 실시 예에 따라 데이터베이스(120)의 수는 복수일 수 있다.The electronic device 110 can receive data from the database 120, read data stored in the database 120, and perform operations using the data. Additionally, the electronic device 110 may transmit the calculation result back to the database 120, store it in a storage space within the electronic device 110, or transmit it to a separate storage medium. Although FIG. 1 shows that there is only one database 120, this is for convenience of understanding, and depending on the embodiment, the number of databases 120 may be plural.
이상과 관련하여, 이하 도면들을 통해 보다 상세히 설명하기로 한다. 도 2 내지 7e에 도시된 방법은 예를 들어, 상술한 전자 장치(110)에 의해 수행될 수 있다.In relation to the above, it will be described in more detail through the drawings below. The method shown in FIGS. 2 to 7E may be performed, for example, by the electronic device 110 described above.
도 2는 일 실시 예에 따른 데이터 처리 방법을 설명하기 위한 흐름도이다.Figure 2 is a flowchart to explain a data processing method according to an embodiment.
단계 S210에서, 전자 장치(110)는 서비스 사용자를 식별 가능한 사용자 식별 데이터 및 사용자 식별 데이터에 대응하는 서비스 사용자의 특징 데이터를 확인한다. 본 개시에서, '사용자 식별 데이터'는 서비스 사용자마다 고유하게 부여된 회원 시리얼 번호, 회원 아이디 또는 그 밖의 식별자를 의미할 수 있다. 또한, '특징 데이터'는 서비스 사용자의 개인 정보 중 '사용자 식별 데이터'를 제외한 나머지 정보를 통칭하며, 예시적으로 사용자의 성별, 나이, 서비스 이용 횟수, 회원 개월 수 등을 포함할 수 있다.In step S210, the electronic device 110 checks user identification data capable of identifying the service user and characteristic data of the service user corresponding to the user identification data. In this disclosure, 'user identification data' may mean a member serial number, member ID, or other identifier uniquely assigned to each service user. In addition, 'characteristic data' refers to the remaining information excluding 'user identification data' among the personal information of service users, and may include, for example, the user's gender, age, number of times of service use, number of membership months, etc.
일 실시 예에 따르면, 전자 장치(110)는 데이터베이스(120)에서 사용자 식별 데이터 및 특징 데이터를 독출하거나, 이를 복사한 사본을 전자 장치(110)에 임시 저장할 수도 있다.According to one embodiment, the electronic device 110 may read user identification data and characteristic data from the database 120, or temporarily store a copy of the user identification data and characteristic data in the electronic device 110.
일 실시 예에 따르면, 전자 장치(110)는 사전 설정된 데이터 판독 주기마다, 혹은 사전 설정된 판독 조건이 충족될 때마다, 특정 사이즈의 배치(batch)에 해당하는 사용자 식별 데이터 및 특징 데이터를 확인할 수 있다. 이때, 배치 사이즈는 사전에 설정되는 것일 수도 있고, 데이터 판독 기간에 따라 결정되는 것일 수도 있다. 이에 따라, 전자 장치(110)는 한번의 확인 시 둘 이상의 사용자에 대한 서로 다른 사용자 식별 데이터를 확인할 수 있고, 각 사용자에 대한 특징 데이터를 확인할 수도 있다.According to one embodiment, the electronic device 110 may check user identification data and characteristic data corresponding to a batch of a specific size at every preset data read cycle or whenever a preset read condition is met. . At this time, the batch size may be set in advance or may be determined according to the data read period. Accordingly, the electronic device 110 can check different user identification data for two or more users at one time, and can also check characteristic data for each user.
단계 S220에서, 전자 장치(110)는 해싱(Hashing) 기법을 통해 사용자 식별 데이터에 대응하는 제1 비식별 데이터를 생성한다.In step S220, the electronic device 110 generates first non-identification data corresponding to user identification data through a hashing technique.
일 실시 예에 따르면, 제1 비식별 데이터는 (1)사용자 식별 데이터와 (2)고유한 값을 갖는 부가 데이터를 기반으로 해시 함수를 통해 생성된 데이터를 포함할 수 있다. 예컨대, 전자 장치(110)는 사용자 식별 데이터와 부가 데이터를 병합하여 해시 함수에 입력함으로써 제1 비식별 데이터를 생성할 수 있다.According to one embodiment, the first non-identifiable data may include data generated through a hash function based on (1) user identification data and (2) additional data with a unique value. For example, the electronic device 110 may generate first non-identified data by merging user identification data and additional data and inputting them into a hash function.
상기 실시 예의 일 예시로서, 부가 데이터는 UUID(Universally Unique Identifier)를 포함할 수 있으며, 해시 함수는 SHA(Secure Hash Algorithm) 기반 해시 함수를 포함할 수 있다. 이에 따르면, 전자 장치(110)는 사용자 식별 데이터와 UUID를 병합하여 SHA 기반 해시 함수에 입력함으로써 제1 비식별 데이터를 생성할 수 있다. 대표적으로, 해시 함수는 SHA-256 기반의 해시 함수를 포함할 수 있으며, UUID는 다음의 5가지 버전의 UUID를 포함할 수 있다. 다만, 해시 함수 및 UUID의 종류는 본 개시에 기술된 것으로 한정되지 않음에 유의해야 한다.As an example of the above embodiment, the additional data may include a Universally Unique Identifier (UUID), and the hash function may include a hash function based on the Secure Hash Algorithm (SHA). According to this, the electronic device 110 can generate first non-identification data by merging user identification data and UUID and inputting it into a SHA-based hash function. Typically, the hash function may include a SHA-256-based hash function, and the UUID may include the following five versions of UUID. However, it should be noted that the types of hash functions and UUIDs are not limited to those described in this disclosure.
(1) 제1 버전 UUID: 타임스탬프 및 MAC 주소(Media Access Control Address)를 기반으로 생성되는 UUID(1) 1st version UUID: UUID generated based on timestamp and MAC address (Media Access Control Address)
(2) 제2 버전 UUID: 제1 버전 UUID을 구성하는 일부 데이터를 대체함으로써 생성되는 UUID(2) Second version UUID: UUID generated by replacing some data constituting the first version UUID.
(3) 제3 버전 UUID: 서비스 사용자의 이름 및 이름공간(namespace)에 기반하여 MD5(Message-Digest algorithm 5) 기반 해시 함수를 통해 생성되는 UUID(3) Third version UUID: UUID generated through MD5 (Message-Digest algorithm 5)-based hash function based on the service user's name and namespace.
(4) 제4 버전 UUID: 무작위로 생성되는 UUID(4) 4th version UUID: randomly generated UUID
(5) 제5 버전 UUID: 서비스 사용자의 이름 및 이름공간에 기반하여 SHA 기반 해시 함수를 통해 생성되는 UUID(5) Fifth version UUID: UUID generated through a SHA-based hash function based on the service user's name and namespace.
한편 일 실시 예에 따르면, 제1 비식별 데이터의 생성에 이용되는 부가 데이터와 관련하여, 사용자 식별 데이터는 동일하지만 최종 비식별 데이터가 생성되는 시점이 상이한 경우, 각각의 최종 비식별 데이터의 생성에 이용되는 부가 데이터는 상이할 수 있다. 즉, 전자 장치(110)는 동일한 서비스 사용자의 개인 정보를 비식별화 할지라도, 비식별화 시점(최종 비식별 데이터가 생성되는 시점)에 따라서 상이한 부가 데이터를 이용함으로써, 비식별화 시점에 따라 최종 비식별 데이터를 다르게 생성할 수 있고, 이로써 서비스 사용자를 기준으로 한 비식별화 효과에 비식별화 시점을 기준으로 한 비식별화 효과가 더해질 수 있다.Meanwhile, according to one embodiment, in relation to the additional data used to generate the first de-identified data, if the user identification data is the same but the time at which the final de-identified data is generated is different, each final de-identified data is generated. The additional data used may be different. In other words, even if the electronic device 110 de-identifies the personal information of the same service user, it uses different additional data depending on the time of de-identification (the time when the final de-identified data is generated), depending on the time of de-identification. The final de-identified data can be generated differently, which can add the de-identification effect based on the time of de-identification to the de-identification effect based on the service user.
단계 S230에서, 전자 장치(110)는 데이터의 처리 방식을 정의한 메타 정보에 기반하여 특징 데이터에 특화된 처리 기준을 산출한다.In step S230, the electronic device 110 calculates a processing standard specialized for feature data based on meta information defining a data processing method.
일 실시 예에 따르면, 메타 정보는 (1)특징 데이터에 포함되는 각 데이터의 종류를 정의하는 데이터 필드 정보 및 (2)각 데이터의 종류에 대응하는 데이터 처리 방식을 정의하는 데이터 비식별화 방식 정보를 포함할 수 있다. 이때, 데이터 필드 정보 및 데이터 비식별화 방식 정보를 포함하는 메타 정보는 최종 비식별 데이터의 소비자(consumer)가 생성한 설정 정보 또는 전자 장치(110)가 소비자를 고려하여 자체 생성한 설정 정보에 따라 정의될 수 있다.According to one embodiment, meta information includes (1) data field information defining the type of each data included in the feature data, and (2) data de-identification method information defining the data processing method corresponding to each type of data. may include. At this time, meta information including data field information and data de-identification method information is based on setting information generated by the consumer of the final de-identified data or setting information generated by the electronic device 110 in consideration of the consumer. can be defined.
관련하여, 데이터 필드 정보는 서비스 사용자의 성별, 나이, 서비스 페이지 방문 횟수, 서비스 내 주문 건수, 회원 개월 수 중 적어도 일부를 데이터의 종류로서 정의한 정보를 포함할 수 있다. 구체적으로, 데이터 필드 정보는 각 데이터가 속한 열(column) 별로 정의될 수 있다.In relation to this, the data field information may include information defining at least some of the service user's gender, age, number of visits to the service page, number of orders within the service, and number of membership months as the type of data. Specifically, data field information can be defined for each column to which each data belongs.
한편, 메타 정보는 특징 데이터에 포함되는 데이터 중 적어도 일부의 용도를 정의하는 데이터 용도 정보를 추가로 포함할 수 있고, 이때 데이터 비식별화 방식 정보는 '각 데이터의 종류 및 데이터 용도 정보'에 대응하는 데이터 처리 방식을 정의한 정보를 포함할 수 있다.Meanwhile, the meta information may additionally include data usage information that defines the usage of at least some of the data included in the feature data, and in this case, the data de-identification method information corresponds to 'type and data usage information of each data'. It may include information defining the data processing method.
한편, 데이터 비식별화 방식 정보는 데이터의 처리 방식을 다음과 같이 정의한 정보를 포함할 수 있다. 다만, 데이터의 처리 방식이 아래 열거된 방식에 한정되는 것은 아니다. 또한 데이터 비식별화 방식 정보는 전자 장치(110)의 관리자에 의해 정의될 수도 있고, 전자 장치(110) 자체적으로 각 데이터의 종류에 따라 정의한 것일 수도 있다.Meanwhile, data de-identification method information may include information defining the data processing method as follows. However, the data processing method is not limited to the methods listed below. Additionally, the data de-identification method information may be defined by the administrator of the electronic device 110, or may be defined by the electronic device 110 itself according to the type of each data.
(1) 제1 방식: 데이터 값을 이진 변환(binary convert)(1) Method 1: Binary convert the data value
(2) 제2 방식: 데이터 값을 각 구간별 대푯값으로 변환(2) Second method: Convert data values into representative values for each section
(3) 제3 방식: 데이터 값을 근사값으로 변환(예컨대, truncation)(3) Third method: Converting data values to approximate values (e.g., truncation)
(4) 제4 방식: 데이터 값을 그대로 유지(bypass)(4) Method 4: Keep data values as is (bypass)
각각의 방식을 보다 구체적으로 서술하면, 제1 방식은 두 개의 데이터 값을 갖는 데이터를 데이터 값에 따라 0 또는 1로 변환하거나, 셋 이상의 데이터 값을 갖는 데이터를 임계 값(threshold)을 기준으로 0 또는 1로 변환하는 방식일 수 있다. 또한 제2 방식은 데이터 값 구간을 복수의 분위로 나눈 뒤, 각각의 데이터 값을 해당 데이터 값이 속하는 분위 구간의 중간 값, 평균값, 최소값 또는 최대값 등의 대푯값으로 변환하는 방식일 수 있다. 예컨대, 제2 방식의 일 예시인 50분위 중위 값 방식에 따르면, 데이터 값 구간을 50개로 나누어 각 데이터 값이 속하는 분위 구간의 중위 값으로 해당 데이터 값이 대체될 수 있다. 한편 제3 방식은 데이터 값의 특정 자릿수 이하를 버림/올림 하거나, 데이터 값에 특정 함수를 적용하여 근사값을 구하는 방식일 수 있다.To describe each method in more detail, the first method converts data with two data values to 0 or 1 depending on the data value, or converts data with three or more data values to 0 based on a threshold. Alternatively, it may be converted to 1. Additionally, the second method may be a method of dividing the data value interval into a plurality of quantiles and then converting each data value into a representative value such as the median, average, minimum, or maximum value of the quantile interval to which the data value belongs. For example, according to the 50th quantile median value method, which is an example of the second method, the data value interval is divided into 50 and the corresponding data value can be replaced with the median value of the quantile interval to which each data value belongs. Meanwhile, the third method may be a method of obtaining an approximate value by rounding off/rounding less than a certain number of digits of the data value or applying a specific function to the data value.
단계 S240에서, 전자 장치(110)는 산출된 처리 기준에 기반하여 특징 데이터의 적어도 일부를 처리함으로써 특징 데이터에 대응하는 제2 비식별 데이터를 생성한다. 즉 다시 말하면, 전자 장치(110)는 처리 기준이 적용되는 데이터 필드에 속한 특징 데이터를 대상으로, 특징 데이터를 처리 기준에 따라 변환하여 제2 비식별 데이터를 생성할 수 있다.In step S240, the electronic device 110 generates second de-identified data corresponding to the feature data by processing at least a portion of the feature data based on the calculated processing standard. In other words, the electronic device 110 may target feature data belonging to a data field to which the processing standard is applied and convert the feature data according to the processing standard to generate second non-identified data.
다만, 특징 데이터들이 속하는 모든 데이터 필드 중 일부에 대해서는 처리 기준이 산출되지 않을 수 있으므로, 전자 장치(110)는 처리 기준의 존재 여부에 따라서 제2 비식별 데이터의 생성 방식을 달리할 수 있다. 예컨대, 전자 장치(110)는 처리 기준이 존재하는 데이터 필드에 속하는 특징 데이터가 처리 대상인 경우, 처리 기준에 따라 제2 비식별 데이터를 생성할 수 있고, 처리 기준이 존재하지 않는 데이터 필드에 속하는 특징 데이터가 처리 대상인 경우, 특징 데이터의 값을 이진 변환함으로써 제2 비식별 데이터를 생성할 수 있다.However, since processing standards may not be calculated for some of all data fields to which feature data belongs, the electronic device 110 may vary the method of generating the second non-identified data depending on the presence or absence of processing standards. For example, when feature data belonging to a data field for which a processing standard exists is subject to processing, the electronic device 110 may generate second de-identified data according to the processing standard, and feature data belonging to a data field for which a processing standard does not exist. When data is to be processed, second non-identified data can be generated by binary converting the value of the feature data.
단계 S250에서, 전자 장치(110)는 제1 비식별 데이터를 키(key)로, 제2 비식별 데이터 중 적어도 일부를 값(value)으로 갖는 하나 이상의 테이블을 포함하는 최종 비식별 데이터를 생성한다. 예컨대, 최종 비식별 데이터에 테이블 A, B, C, D, E가 포함되는 경우, 해당 테이블 5개는 사용자 X에 대응하는 제1 비식별 데이터를 공통된 키로 갖되, 제2 비식별 데이터의 조합을 달리할 수 있다. 다른 예로는, 테이블 A, B, C, D, E 중 A, B는 사용자 X에 대응하는 제1 비식별 데이터를 공통된 키로 갖되 제2 비식별 데이터의 조합을 달리하고, C, D, E는 사용자 Y에 대응하는 제1 비식별 데이터를 공통된 키고 갖되 제2 비식별 데이터의 조합을 달리할 수도 있다. 이로써, 전자 장치(110)의 관리자는 최종 비식별 데이터 중 특정 사용자에 대응하는 제1 비식별 데이터를 키로 하여, 해당 키와 연관된 값(제2 비식별 데이터)을 일괄적으로 탐색할 수 있게 된다.In step S250, the electronic device 110 generates final de-identified data including one or more tables having the first de-identified data as a key and at least some of the second de-identified data as values. . For example, if the final de-identified data includes tables A, B, C, D, and E, the five tables have the first de-identified data corresponding to user It can be done differently. As another example, among tables A, B, C, D, and E, A and B have the first non-identifiable data corresponding to user The first non-identifiable data corresponding to user Y may have a common key, but the second non-identifiable data may be combined in different combinations. As a result, the manager of the electronic device 110 can use the first non-identifiable data corresponding to a specific user among the final non-identified data as a key and collectively search for values (second non-identifiable data) associated with the key. .
일 실시 예에 따르면, 전자 장치(110)가 생성하는 최종 비식별 데이터는 생성 시점으로 구별되는 스냅샷(snapshot) 데이터일 수 있다. 구체적으로, 최종 비식별 데이터는 사전 설정된 데이터 판독 주기마다 확인된 하나 이상의 사용자 식별 데이터와 각각의 사용자 식별 데이터에 대응하는 하나 이상의 특징 데이터가 매칭된 하나 이상의 테이블을 포함할 수 있다. 이 경우, 서로 다른 시점에 생성된 스냅샷 데이터끼리는 공통된 키로 연관되지 않게 된다.According to one embodiment, the final non-identified data generated by the electronic device 110 may be snapshot data distinguished by the time of creation. Specifically, the final de-identified data may include one or more tables in which one or more user identification data confirmed at each preset data read cycle and one or more feature data corresponding to each user identification data are matched. In this case, snapshot data created at different times are not associated with a common key.
이하에서는, 도 3을 참조하여 도 2의 데이터 처리 방법을 보다 직관적으로 설명하기로 한다.Hereinafter, the data processing method of FIG. 2 will be described more intuitively with reference to FIG. 3.
도 3은 일 실시 예에 따라 데이터가 처리되는 파이프라인의 예시도이다. 사각형으로 도시된 프로세스는 전자 장치(110)의 동작을 나타낸 것이며, 원통 도형으로 도시된 정보는 처리 대상이 되는 데이터나, 그 데이터의 처리에 이용되는 데이터를 나타낸 것이다. 다만, 각 데이터가 별개의 원통 도형으로 도시된 것은 설명의 편의를 돕기 위한 것이지 각 데이터가 저장되는 데이터베이스가 별개임을 의미하는 것은 아니다.Figure 3 is an exemplary diagram of a pipeline through which data is processed according to an embodiment. The process shown in a square represents the operation of the electronic device 110, and the information shown in a cylindrical shape represents data to be processed or data used to process the data. However, the fact that each data is shown as a separate cylindrical figure is for convenience of explanation and does not mean that the database in which each data is stored is separate.
일 실시 예에 따르면, 전자 장치(110)는 서비스 사용자를 식별 가능한 사용자 식별 데이터 및 특징 데이터를 확인하고, 메타 정보에 기반하여 특징 데이터에 특화된 처리 기준을 산출할 수 있다. 이때, 전자 장치(110)는 특징 데이터의 분포를 추가적으로 고려하여 특징 데이터에 특화된 처리 기준을 산출할 수 있다. 다만, 이러한 특징 데이터의 분포는 전자 장치(110)가 특징 데이터를 확인하면서 함께 확인한 정보일 수도 있고, 사전에 메타 정보에 포함된 정보일 수도 있다.According to one embodiment, the electronic device 110 may check user identification data and feature data that can identify a service user, and calculate processing standards specialized for feature data based on meta information. At this time, the electronic device 110 may calculate a processing standard specialized for feature data by additionally considering the distribution of feature data. However, the distribution of such feature data may be information confirmed by the electronic device 110 while checking the feature data, or may be information included in meta information in advance.
일 실시 예에 따르면, 전자 장치(110)는 산출된 처리 기준에 따라 특징 데이터의 적어도 일부를 처리하여 제2 비식별 데이터를 생성할 수 있고, 해싱 기법을 통해 사용자 식별 데이터에 대응하는 제1 비식별 데이터를 생성할 수 있다. 이때, 도 3에는 제1 비식별 데이터 생성 프로세스가 처리 기준 산출 프로세스 및 제2 비식별 데이터 생성 프로세스보다 후순위로 수행되는 것처럼 도시되어 있으나, 이는 설명의 편의를 위한 것으로, 실시 예에 따라서 제1 비식별 데이터 생성 프로세스는 전자 장치(110)가 사용자 식별 데이터를 확인한 이후라면 다른 프로세스와의 순서 선후를 따지지 않고 수행될 수 있다.According to one embodiment, the electronic device 110 may process at least a portion of the feature data according to the calculated processing criteria to generate second non-identification data, and first non-identification data corresponding to the user identification data through a hashing technique. Identification data can be generated. At this time, in FIG. 3, the first de-identified data generation process is shown as being performed in a lower priority than the processing standard calculation process and the second de-identified data generation process. However, this is for convenience of explanation, and depending on the embodiment, the first de-identified data generation process The identification data generation process may be performed regardless of the order with other processes as long as the electronic device 110 confirms the user identification data.
도 4 및 5는 추가적인 실시 예에 따른 데이터 처리 방법을 설명하기 위한 흐름도이다. 본 개시에 따른 데이터 처리 방법은 데이터베이스(120)에 저장된 개인 정보 또는 그 사본을 비식별화하기 위함이지만, 탈퇴한 사용자의 개인 정보는 법적으로 규제된 약관 사항을 고려할 때 장기간 보관하는 것에 어려움이 있으므로, 미리 1차적으로 비식별화 과정을 거쳐 저장되어야 한다.4 and 5 are flowcharts to explain a data processing method according to an additional embodiment. The data processing method according to this disclosure is to de-identify personal information or copies thereof stored in the database 120, but it is difficult to store personal information of users who have withdrawn for a long period of time considering legally regulated terms and conditions. , it must be stored through a primary de-identification process in advance.
이러한 취지에서, 도 4는 탈퇴 상태인 서비스 사용자의 사용자 식별 데이터를 처리하는 방법을 나타낸 것이다. 구체적으로는 사용자 식별 데이터를 비식별화하여 제1 비식별 데이터를 생성하는 과정을 나타낸 것으로, 단계 S410은 단계 S210 이전에 수행되고 단계 S420은 단계 S210 이후에 수행될 수 있으나, 각 단계의 수행 순서가 이에 한정되는 것은 아니다.In this regard, Figure 4 shows a method of processing user identification data of a service user who has withdrawn from service. Specifically, it shows the process of generating first de-identified data by de-identifying user identification data. Step S410 may be performed before step S210 and step S420 may be performed after step S210, but the order of performing each step is not limited to this.
단계 S410에서, 전자 장치(110)는 탈퇴 상태인 서비스 사용자의 사용자 식별 데이터에 해시 함수를 1차 적용한다. 이때 적용되는 해시 함수의 종류에는 특별한 제약은 없으나, 대표적으로 SHA 기반의 해시 함수가 적용될 수 있다.In step S410, the electronic device 110 first applies a hash function to the user identification data of the service user who has withdrawn. There are no special restrictions on the type of hash function applied at this time, but a representative hash function based on SHA can be applied.
단계 S420에서, 전자 장치(110)는 단계 S410을 통한 1차 적용 결과와 부가 데이터를 기반으로 해시 함수를 2차 적용하여 탈퇴 상태인 서비스 사용자의 제1 비식별 데이터를 생성한다. 구체적으로, 전자 장치(110)는 1차 적용 결과와 부가 데이터를 병합하여 해시 함수에 입력함으로써 탈퇴 상태인 서비스 사용자의 제1 비식별 데이터를 생성할 수 있다. 이때 적용되는 해시 함수의 종류 역시 특별한 제약은 없으며, 대표적으로 SHA 기반의 해시 함수가 적용될 수 있다.In step S420, the electronic device 110 generates first non-identifiable data of the service user in the withdrawn state by secondly applying a hash function based on the first application result and additional data through step S410. Specifically, the electronic device 110 may merge the primary application result and the additional data and input them into a hash function to generate first non-identifiable data of the service user who is in the withdrawal state. There are no special restrictions on the type of hash function applied at this time, and a representative example is the SHA-based hash function.
일 실시 예에 따르면, 부가 데이터는 UUID를 포함할 수 있으며, UUID는 도 2를 참조하여 상술한 5가지 버전의 UUID를 포함할 수 있다. 다만, 해시 함수 및 UUID의 종류는 본 개시에 기술된 것으로 한정되지 않음에 유의해야 한다.According to one embodiment, the additional data may include a UUID, and the UUID may include the five versions of UUID described above with reference to FIG. 2. However, it should be noted that the types of hash functions and UUIDs are not limited to those described in this disclosure.
한편, 도 5는 탈퇴 상태인 서비스 사용자의 특징 데이터를 처리하는 방법을 나타낸 것이다. 탈퇴한 사용자의 특징 데이터는 사전에 비식별화되어 도 2의 단계 S210을 거쳐야 하므로, 도 5는 이러한 취지에서 탈퇴 상태인 서비스 사용자의 특징 데이터에 대한 전처리 과정을 나타낸다. 이 경우, 도 2의 단계 S210에서의 '특징 데이터'는 (1)현재 가입 상태인 서비스 사용자의 특징 데이터 및 (2)탈퇴 상태인 서비스 사용자의 특징 데이터에 대응하는 제2 비식별 데이터를 포함할 수 있다.Meanwhile, Figure 5 shows a method of processing characteristic data of a service user who is in a withdrawal state. Since the characteristic data of a withdrawn user must be de-identified in advance and go through step S210 of FIG. 2, FIG. 5 shows a pre-processing process for the characteristic data of a service user who has withdrawn to this effect. In this case, the 'feature data' in step S210 of FIG. 2 may include (1) characteristic data of the service user currently in the subscription state and (2) second non-identifying data corresponding to the characteristic data of the service user in the withdrawal state. You can.
단계 S510에서, 전자 장치(110)는 탈퇴 상태인 서비스 사용자의 특징 데이터를 확인한다.In step S510, the electronic device 110 checks characteristic data of the service user who has withdrawn.
일 실시 예에 따르면, 전자 장치(110)는 사용자의 특징 데이터와 병합된 사용자 상태 정보를 참조하여 사용자가 탈퇴 상태인지, 가입 상태인지 파악할 수 있다. 다른 실시 예에 따르면, 현재 가입 상태인 사용자의 특징 데이터가 저장된 데이터베이스와 탈퇴 상태인 사용자의 특징 데이터가 저장된 데이터베이스가 별도로 존재하거나, 하나의 데이터베이스 내에서 현재 가입 상태인 사용자의 특징 데이터의 저장 위치와 탈퇴 상태인 사용자의 특징 데이터의 저장 위치가 다를 수 있고, 전자 장치(110)는 두 특징 데이터의 저장 매체 또는 저장된 위치에 기반하여 사용자가 탈퇴 상태인지, 가입 상태인지 파악할 수도 있다. 다만, 전자 장치(110)가 사용자의 상태를 파악하는 방식은 이에 한정되지 않는다.According to one embodiment, the electronic device 110 may determine whether the user is in an unsubscribed or subscribed state by referring to user status information merged with the user's characteristic data. According to another embodiment, a database storing the characteristic data of a currently registered user and a database storing the characteristic data of a user who is unsubscribed exist separately, or the storage location of the currently registered user's characteristic data within one database and The storage location of the feature data of the user in the unsubscribed state may be different, and the electronic device 110 may determine whether the user is in the unsubscribed or subscribed state based on the storage medium or storage location of the two feature data. However, the method by which the electronic device 110 determines the user's status is not limited to this.
단계 S520에서, 전자 장치(110)는 데이터의 처리 방식을 정의한 메타 정보에 기반하여 탈퇴 상태인 서비스 사용자의 특징 데이터에 특화된 처리 기준을 산출한다.In step S520, the electronic device 110 calculates a processing standard specialized for characteristic data of a service user who has withdrawn from service based on meta information defining a data processing method.
단계 S530에서, 전자 장치(110)는 탈퇴 상태인 서비스 사용자의 특징 데이터에 특화된 처리 기준에 기반하여 탈퇴 상태인 서비스 사용자의 특징 데이터의 적어도 일부를 처리함으로써 탈퇴 상태인 서비스 사용자의 제2 비식별 데이터를 생성한다.In step S530, the electronic device 110 collects second non-identifying data of the service user in the withdrawal state by processing at least a portion of the characteristic data of the service user in the withdrawal state based on processing standards specialized for the characteristic data of the service user in the withdrawal state. creates .
한편, 전자 장치(110)는 탈퇴 상태인 서비스 사용자의 특징 데이터에 특화된 처리 기준을 이용하지 않고, 현재 가입 상태인 서비스 사용자의 특징 데이터를 처리하기 위해 사전 산출된 처리 기준을 탈퇴 상태인 서비스 사용자의 특징 데이터 처리 시 이용할 수도 있다. 이 경우, 상술한 단계 S520은 생략될 수 있으며, 단계 S530에서 전자 장치(110)는 사전 산출된 처리 기준에 기반하여 탈퇴 상태인 서비스 사용자의 제2 비식별 데이터를 생성할 수 있다.Meanwhile, the electronic device 110 does not use processing standards specialized for characteristic data of service users who are currently in a withdrawal state, but uses pre-calculated processing standards to process characteristic data of service users who are currently in a subscription state. It can also be used when processing feature data. In this case, the above-described step S520 may be omitted, and in step S530, the electronic device 110 may generate second non-identified data of the service user who has withdrawn from the service based on a pre-calculated processing standard.
이상의 도시된 흐름도 도 2, 4, 5에서는 상기 방법을 복수 개의 단계로 나누어 기재하였으나, 적어도 일부의 단계들은 순서를 바꾸어 수행되거나, 다른 단계와 결합되어 함께 수행되거나, 생략되거나, 세부 단계들로 나뉘어 수행되거나, 또는 도시되지 않은 하나 이상의 단계가 부가되어 수행될 수 있다.In the above flow diagrams, the method is divided into a plurality of steps, but at least some of the steps are performed in a different order, combined with other steps, omitted, or divided into detailed steps. It may be performed, or may be performed by adding one or more steps not shown.
도 6은 추가적인 실시 예에 따라 데이터가 처리되는 파이프라인의 예시도이다. 구체적으로, 도 6 상단에는 탈퇴 상태인 사용자의 데이터를 1차적으로 비식별화 처리하는 과정이 도시되어 있다.Figure 6 is an exemplary diagram of a pipeline through which data is processed according to an additional embodiment. Specifically, the upper part of FIG. 6 shows the process of initially de-identifying the data of a user who has withdrawn.
일 실시 예에 따르면, 전자 장치(110)는 탈퇴 상태인 사용자의 사용자 식별 데이터 및 특징 데이터를 확인하고, 탈퇴 상태인 사용자의 특징 데이터에 특화된 처리 기준을 산출하여, 해당 처리 기준에 따라 탈퇴 상태인 사용자의 특징 데이터에 대응하는 제2 비식별 데이터를 생성할 수 있다.According to one embodiment, the electronic device 110 checks the user identification data and characteristic data of the user in the withdrawn state, calculates processing standards specialized for the characteristic data of the user in the withdrawn state, and determines the user's withdrawal status according to the processing standard. Second non-identified data corresponding to the user's characteristic data may be generated.
다른 실시 예에 따르면, 전자 장치(110)는 탈퇴 상태인 사용자의 사용자 식별 데이터 및 특징 데이터를 확인하되, 도 6에 도시된 것과는 달리 별도의 처리 기준을 산출하지 않고, 현재 가입 상태인 사용자의 특징 데이터를 처리하기 위해 사전 산출된 처리 기준을 이용하여 탈퇴 상태인 사용자의 특징 데이터에 대응하는 제2 비식별 데이터를 생성할 수 있다.According to another embodiment, the electronic device 110 checks the user identification data and characteristic data of the user who is in the unsubscribed state, but does not calculate a separate processing standard, unlike what is shown in FIG. 6, and determines the characteristics of the user who is currently enrolled. In order to process data, second non-identified data corresponding to the characteristic data of the user who has withdrawn can be generated using pre-calculated processing standards.
한편 도 6에서 볼 수 있듯이, 탈퇴 상태인 사용자의 데이터는 1차적인 비식별화 과정을 거쳐 다시 도 3의 파이프라인 상의 도입 프로세스에서 '특징 데이터'로서 이용될 수 있다.Meanwhile, as can be seen in FIG. 6, the data of a user in a withdrawal state goes through a primary de-identification process and can be used again as 'feature data' in the introduction process on the pipeline of FIG. 3.
또한 도 6의 하단에 도시된 대로, 전자 장치(110)는 외부로부터의 탈퇴 관련 데이터 제거 명령에 따라, 또는 자체 판단에 따라 가입 상태인 사용자의 데이터, 사용자 식별 데이터, 특징 데이터 또는 제2 비식별 데이터 중에서 탈퇴한 사용자에 대한 데이터를 제거할 수 있다. 구체적으로, 가입 상태인 사용자 중에서 일부가 서비스를 탈퇴하는 경우, 전자 장치(110)는 가입 상태인 사용자의 데이터에서 새로이 서비스를 탈퇴한 사용자의 데이터를 제거할 수 있다. 또한, 이미 처리 과정에 있는 사용자 식별 데이터, 특징 데이터 또는 제2 비식별 데이터 등에서도 새로이 서비스를 탈퇴한 사용자의 사용자 식별 데이터를 기반으로 하여 탈퇴한 사용자의 데이터를 제거할 수 있다.In addition, as shown at the bottom of FIG. 6, the electronic device 110 removes data, user identification data, characteristic data, or second de-identification of a subscribed user according to an external order to remove withdrawal-related data or at its own discretion. Among the data, data about users who have withdrawn can be removed. Specifically, when some of the registered users withdraw from the service, the electronic device 110 may remove data of users who have newly withdrawn from the service from the data of the registered users. In addition, the data of the user who has newly withdrawn from the service can be removed from the user identification data, characteristic data, or second non-identified data that is already in the process of being processed, based on the user identification data of the user who has newly withdrawn from the service.
도 7a 내지 7e는 일 실시 예에 따라 처리되는 데이터 구조를 나타낸 예시도이다.7A to 7E are exemplary diagrams showing data structures processed according to one embodiment.
먼저 도 7a에는 비식별화 처리를 거치지 않은 데이터의 구조가 도시되어 있다. 각 데이터의 생성 연/월에 대한 정보, 서비스 사용자를 식별 가능한 시리얼 번호로서의 사용자 식별 데이터, 사용자의 성별을 나타내는 이진수(설명의 편의상 0을 여성, 1을 남성에 해당하는 이진수로 전제한다), 사용자의 나이, 사용자가 회원 가입 후 경과된 개월 수가 나타나 있다. 도시된 대로, 시리얼 번호, 각 사용자의 나이, 회원 개월 수 등의 민감한 개인 정보가 그대로 드러나 있다.First, Figure 7a shows the structure of data that has not undergone de-identification processing. Information on the year/month of creation of each data, user identification data as a serial number that can identify the service user, binary number indicating the gender of the user (for convenience of explanation, 0 is assumed to be a binary number corresponding to female and 1 is male), user The age of the user and the number of months that have passed since the user signed up are shown. As shown, sensitive personal information such as serial number, each user's age, and number of membership months is exposed.
한편 도 7b에는 일부 데이터에 대해 비식별화 처리가 진행된 데이터의 구조가 도시되어 있다. 즉, 개인 정보 중 시리얼 번호에 대해 해시 함수가 적용되어 일정한 비트 수의 제1 비식별 데이터로 변환되었다. 주목할 것은, 아래 두 행의 제1 비식별 데이터는 그 값이 동일하므로 동일한 서비스 사용자에 대한 사용자 식별 데이터가 변환된 것임을 유추할 수 있으며, 상단 행의 제1 비식별 데이터는 별도 사용자의 사용자 식별 데이터가 변환된 것임을 알 수 있다.Meanwhile, Figure 7b shows the structure of data that has undergone de-identification processing for some data. That is, a hash function was applied to the serial number among the personal information and converted into first non-identifiable data of a certain number of bits. Note that the first non-identifying data in the bottom two rows have the same value, so it can be inferred that the user identification data for the same service user has been converted, and the first non-identifying data in the top row is the user identification data of a separate user. It can be seen that has been converted.
한편 도 7c에는 비식별화 처리된 각 테이블이 어떤 상태의 사용자에 대한 데이터를 비식별화 처리한 것인지 나타내는 데이터 구조가 도시되어 있다. 도시된 대로, 각 테이블은 모두 현재 가입 상태인 사용자의 데이터에 대해서는 비식별화 처리가 되었고, 탈퇴 상태인 사용자의 데이터에 대해서는 비식별화 처리를 수행하지 않았음을 알 수 있다. 즉 일 실시 예에 따르면, 전자 장치(110)는 가입 상태인 사용자와 탈퇴 상태인 사용자 각각에 대한 비식별화 처리 여부를 나타내는 정보를 참조하여, 비식별화 처리 대상인 상태의 사용자의 데이터에 대해서만 본 개시에 따른 비식별화 처리를 수행할 수 있다. 또한 다른 실시 예에 따르면, 전자 장치(110)는 일련의 비식별화 처리 과정을 수행한 이후, 도 7c에 도시된 대로 비식별화 처리 여부를 나타내는 데이터 구조를 저장하고, 이를 참조하여 관리자에게 리포트를 전송하거나, 알림을 송출하거나, 비식별화 처리되지 않은(false 상태에 해당) 데이터에 대한 비식별화 처리 명령을 요청할 수도 있다.Meanwhile, FIG. 7C shows a data structure indicating the status of each de-identified user's data in each de-identified table. As shown, it can be seen that in each table, the data of users currently in the subscription state has been de-identified, and the data of the users in the unsubscribe state has not been de-identified. That is, according to one embodiment, the electronic device 110 refers to the information indicating whether or not to de-identify processing for each user in the subscription state and the user in the unsubscribe state, and sees only the data of the user subject to de-identification processing. De-identification processing may be performed upon disclosure. Additionally, according to another embodiment, after performing a series of de-identification processing processes, the electronic device 110 stores a data structure indicating whether or not de-identification processing has been performed, as shown in FIG. 7C, and reports this to the administrator. You can send a , send a notification, or request a de-identification processing command for data that has not been de-identified (corresponding to a false state).
한편 도 7d에는 각 테이블의 비식별화 처리에 적용된 처리 기준을 산출하는 데 이용된 데이터 필드 정보 및 데이터 비식별화 방식 정보가 도시되어 있다. Quantile200은 200분위 중위 값 방식으로서, 1행의 테이블 내 order_cate2_fashion_r3m 필드에 속한 데이터, 2행의 테이블 내 order_cate1_fashion_r12m 필드에 속한 데이터, 3행의 테이블 내 gmv_payltr_r12m 필드에 속한 데이터에 대해서 200분위 중위 값 방식이 적용되었음을 나타낸다.Meanwhile, Figure 7d shows data field information and data de-identification method information used to calculate the processing standards applied to de-identification processing of each table. Quantile200 is a 200th percentile median value method. The 200th percentile median value method is applied to data belonging to the order_cate2_fashion_r3m field in the table in row 1, data belonging to the order_cate1_fashion_r12m field in the table in row 2, and data belonging to the gmv_payltr_r12m field in the table in row 3. It indicates that it has been done.
한편 도 7e에는 데이터 필드 정보 및 데이터 비식별화 방식 정보에 기반하여 산출된, 특징 데이터에 특화된 처리 기준이 도시되어 있다. 구체적으로, 동일한 sb_rocketpay.csm_AA_category2_sample 테이블의 order_cate2_fashion_kids_r3m 필드에 속한 데이터, order_cate1_special1_r12m 필드에 속한 데이터, order_cate2_daily_supply_r12m 필드에 속한 데이터에 대해서 200분위 중위 값 방식(quantile200)이 적용되어, 산출된 분위 값이 5열에 기재되어 있다. 즉, 전자 장치(110)는 동일한 테이블 내에서도 메타 정보(데이터 필드 정보, 데이터 비식별화 방식 정보)를 고려하여 각 필드 별로 특화된 처리 기준을 산출할 수 있다.Meanwhile, Figure 7e shows processing standards specialized for feature data calculated based on data field information and data de-identification method information. Specifically, the 200th quantile median value method (quantile200) is applied to data belonging to the order_cate2_fashion_kids_r3m field, data belonging to the order_cate1_special1_r12m field, and data belonging to the order_cate2_daily_supply_r12m field of the same sb_rocketpay.csm_AA_category2_sample table, and the calculated quantile value is listed in column 5. . That is, the electronic device 110 can calculate processing standards specialized for each field by considering meta information (data field information, data de-identification method information) even within the same table.
도 8은 일 실시 예에 따라 데이터를 처리하는 전자 장치를 설명하기 위한 블록도이다.FIG. 8 is a block diagram illustrating an electronic device that processes data according to an embodiment.
전자 장치(110)는 일 실시 예에 따라, 트랜시버(111), 프로세서(113) 및 메모리(115)를 포함할 수 있다. 일 실시 예에서, 전자 장치(110)는 트랜시버(111)를 통하여 데이터베이스(120)와 연결되고, 데이터를 교환할 수 있다.According to one embodiment, the electronic device 110 may include a transceiver 111, a processor 113, and a memory 115. In one embodiment, the electronic device 110 is connected to the database 120 through the transceiver 111 and can exchange data.
프로세서(113)는 도 1 내지 도 7e를 통하여 전술한 적어도 하나의 방법을 수행할 수 있다. 메모리(115)는 도 1 내지 도 7e를 통하여 전술한 적어도 하나의 방법을 수행하기 위한 정보를 저장할 수 있다. 메모리(115)는 휘발성 메모리 또는 비휘발성 메모리일 수 있다.The processor 113 may perform at least one method described above through FIGS. 1 to 7E. The memory 115 may store information for performing at least one method described above with reference to FIGS. 1 to 7E. Memory 115 may be volatile memory or non-volatile memory.
프로세서(113)는 프로그램을 실행하고, 정보를 제공하기 위해 전자 장치(110)를 제어할 수 있다. 프로세서(113)에 의하여 실행되는 프로그램의 코드는 메모리(115)에 저장될 수 있다.The processor 113 can control the electronic device 110 to execute programs and provide information. The code of the program executed by the processor 113 may be stored in the memory 115.
프로세서(113)는 트랜시버(111) 및 메모리(115)와 연결되어, 서비스 사용자를 식별 가능한 사용자 식별 데이터 및 사용자 식별 데이터에 대응하는 서비스 사용자의 특징 데이터를 확인하고, 해싱(Hashing) 기법을 통해 사용자 식별 데이터에 대응하는 제1 비식별 데이터를 생성하고, 데이터의 처리 방식을 정의한 메타 정보에 기반하여 특징 데이터에 특화된 처리 기준을 산출하고, 처리 기준에 기반하여 특징 데이터의 적어도 일부를 처리함으로써 특징 데이터에 대응하는 제2 비식별 데이터를 생성하고, 제1 비식별 데이터를 키(key)로, 제2 비식별 데이터 중 적어도 일부를 값(value)으로 갖는 하나 이상의 테이블을 포함하는 최종 비식별 데이터를 생성할 수 있다.The processor 113 is connected to the transceiver 111 and the memory 115, checks user identification data capable of identifying the service user and characteristic data of the service user corresponding to the user identification data, and uses a hashing technique to identify the user. Feature data by generating first non-identification data corresponding to the identification data, calculating processing standards specialized for the feature data based on meta information defining the processing method of the data, and processing at least a portion of the feature data based on the processing standards. generate second non-identifiable data corresponding to the final non-identifiable data including one or more tables with the first non-identifiable data as a key and at least some of the second non-identifiable data as values. can be created.
도 8에 도시된 전자 장치(110)는 본 실시 예와 관련된 구성요소들만이 도시되어 있다. 따라서, 도 8에 도시된 구성요소들 외에 다른 범용적인 구성요소들이 더 포함될 수 있음을 본 실시 예와 관련된 기술분야에서 통상의 지식을 가진 자라면 이해할 수 있다.The electronic device 110 shown in FIG. 8 shows only components related to this embodiment. Accordingly, those skilled in the art can understand that other general-purpose components may be included in addition to the components shown in FIG. 8.
전술한 실시 예들에 따른 장치는 프로세서, 프로그램 데이터를 저장하고 실행하는 메모리, 디스크 드라이브와 같은 영구 저장부(permanent storage), 외부 장치와 통신하는 통신 포트, 터치 패널, 키(key), 버튼 등과 같은 사용자 인터페이스 장치 등을 포함할 수 있다. 소프트웨어 모듈 또는 알고리즘으로 구현되는 방법들은 상기 프로세서상에서 실행 가능한 컴퓨터가 읽을 수 있는 코드들 또는 프로그램 명령들로서 컴퓨터가 읽을 수 있는 기록 매체 상에 저장될 수 있다. 여기서 컴퓨터가 읽을 수 있는 기록 매체로 마그네틱 저장 매체(예컨대, ROM(read-only memory), RAM(random-Access memory), 플로피 디스크, 하드 디스크 등) 및 광학적 판독 매체(예컨대, 시디롬(CD-ROM), 디브이디(DVD: Digital Versatile Disc)) 등이 있다. 컴퓨터가 읽을 수 있는 기록 매체는 네트워크로 연결된 컴퓨터 시스템들에 분산되어, 분산 방식으로 컴퓨터가 판독 가능한 코드가 저장되고 실행될 수 있다. 매체는 컴퓨터에 의해 판독가능하며, 메모리에 저장되고, 프로세서에서 실행될 수 있다. Devices according to the above-described embodiments include a processor, memory for storing and executing program data, permanent storage such as a disk drive, a communication port for communicating with an external device, a touch panel, keys, buttons, etc. It may include a user interface device, etc. Methods implemented as software modules or algorithms may be stored on a computer-readable recording medium as computer-readable codes or program instructions executable on the processor. Here, computer-readable recording media include magnetic storage media (e.g., ROM (read-only memory), RAM (random-access memory), floppy disk, hard disk, etc.) and optical read media (e.g., CD-ROM). ), DVD (Digital Versatile Disc), etc. The computer-readable recording medium is distributed among computer systems connected to a network, so that computer-readable code can be stored and executed in a distributed manner. The media may be readable by a computer, stored in memory, and executed by a processor.
본 실시 예는 기능적인 블록 구성들 및 다양한 처리 단계들로 나타내어질 수 있다. 이러한 기능 블록들은 특정 기능들을 실행하는 다양한 개수의 하드웨어 또는/및 소프트웨어 구성들로 구현될 수 있다. 예를 들어, 실시 예는 하나 이상의 마이크로프로세서들의 제어 또는 다른 제어 장치들에 의해서 다양한 기능들을 실행할 수 있는, 메모리, 프로세싱, 로직(logic), 룩 업 테이블(look-up table) 등과 같은 직접 회로 구성들을 채용할 수 있다. 구성 요소들이 소프트웨어 프로그래밍 또는 소프트웨어 요소들로 실행될 수 있는 것과 유사하게, 본 실시 예는 데이터 구조, 프로세스들, 루틴들 또는 다른 프로그래밍 구성들의 조합으로 구현되는 다양한 알고리즘을 포함하여, C, C++, 자바(Java), 어셈블러(assembler) 등과 같은 프로그래밍 또는 스크립팅 언어로 구현될 수 있다. 기능적인 측면들은 하나 이상의 프로세서들에서 실행되는 알고리즘으로 구현될 수 있다. 또한, 본 실시 예는 전자적인 환경 설정, 신호 처리, 메시지 처리, 및/또는 데이터 처리 등을 위하여 종래 기술을 채용할 수 있다. “매커니즘”, “요소”, “수단”, “구성”과 같은 용어는 넓게 사용될 수 있으며, 기계적이고 물리적인 구성들로서 한정되는 것은 아니다. 상기 용어는 프로세서 등과 연계하여 소프트웨어의 일련의 처리들(routines)의 의미를 포함할 수 있다.This embodiment can be represented by functional block configurations and various processing steps. These functional blocks may be implemented as any number of hardware or/and software configurations that execute specific functions. For example, embodiments include integrated circuit configurations such as memory, processing, logic, look-up tables, etc. that can execute various functions under the control of one or more microprocessors or other control devices. can be hired. Similar to how the components can be implemented as software programming or software elements, this embodiment includes various algorithms implemented as combinations of data structures, processes, routines or other programming constructs, such as C, C++, Java ( It can be implemented in a programming or scripting language such as Java), assembler, etc. Functional aspects may be implemented as algorithms running on one or more processors. Additionally, this embodiment may employ conventional technologies for electronic environment setting, signal processing, message processing, and/or data processing. Terms such as “mechanism,” “element,” “means,” and “composition” can be used broadly and are not limited to mechanical and physical components. The term may include the meaning of a series of software routines in connection with a processor, etc.
전술한 실시 예들은 일 예시일 뿐 후술하는 청구항들의 범위 내에서 다른 실시 예들이 구현될 수 있다.The above-described embodiments are merely examples and other embodiments may be implemented within the scope of the claims described below.

Claims (17)

  1. 전자 장치에서의 데이터 비식별화를 위한 처리 방법에 있어서,In a processing method for de-identifying data in an electronic device,
    서비스 사용자를 식별 가능한 사용자 식별 데이터 및 상기 사용자 식별 데이터에 대응하는 서비스 사용자의 특징 데이터를 확인하는 단계;Confirming user identification data capable of identifying a service user and characteristic data of the service user corresponding to the user identification data;
    해싱(Hashing) 기법을 통해 상기 사용자 식별 데이터에 대응하는 제1 비식별 데이터를 생성하는 단계;Generating first non-identifiable data corresponding to the user identification data through a hashing technique;
    데이터의 처리 방식을 정의한 메타 정보에 기반하여 상기 특징 데이터에 특화된 처리 기준을 산출하는 단계;calculating a processing standard specialized for the feature data based on meta information defining a data processing method;
    상기 처리 기준에 기반하여 상기 특징 데이터의 적어도 일부를 처리함으로써 상기 특징 데이터에 대응하는 제2 비식별 데이터를 생성하는 단계; 및generating second de-identified data corresponding to the feature data by processing at least a portion of the feature data based on the processing criteria; and
    상기 제1 비식별 데이터를 키(key)로, 상기 제2 비식별 데이터 중 적어도 일부를 값(value)으로 갖는 하나 이상의 테이블을 포함하는 최종 비식별 데이터를 생성하는 단계를 포함하는, 데이터 처리 방법.A data processing method comprising generating final de-identified data including one or more tables having the first de-identified data as a key and at least some of the second de-identified data as values. .
  2. 제1항에 있어서,According to paragraph 1,
    상기 메타 정보는,The meta information is,
    상기 특징 데이터에 포함되는 각 데이터의 종류를 정의하는 데이터 필드 정보 및 상기 각 데이터의 종류에 대응하는 데이터 처리 방식을 정의하는 데이터 비식별화 방식 정보를 포함하는, 데이터 처리 방법.A data processing method comprising data field information defining the type of each data included in the feature data and data de-identification method information defining a data processing method corresponding to each type of data.
  3. 제2항에 있어서,According to paragraph 2,
    상기 데이터 필드 정보는,The data field information is,
    상기 서비스 사용자의 성별, 나이, 서비스 페이지 방문 횟수, 서비스 내 주문 건수, 회원 개월 수 중 적어도 일부를 데이터의 종류로서 정의하는, 데이터 처리 방법.A data processing method that defines at least some of the service user's gender, age, number of visits to the service page, number of orders within the service, and number of membership months as types of data.
  4. 제2항에 있어서,According to paragraph 2,
    상기 메타 정보는,The meta information is,
    상기 특징 데이터에 포함되는 데이터 중 적어도 일부의 용도를 정의하는 데이터 용도 정보를 추가로 포함하고,Additionally comprising data usage information defining the usage of at least some of the data included in the feature data,
    상기 데이터 비식별화 방식 정보는,The data de-identification method information is,
    상기 각 데이터의 종류 및 상기 데이터 용도 정보에 대응하는 데이터 처리 방식을 정의하는, 데이터 처리 방법.A data processing method that defines a data processing method corresponding to the type of each data and the data usage information.
  5. 제2항에 있어서,According to paragraph 2,
    상기 데이터 비식별화 방식 정보는,The data de-identification method information is,
    데이터 값을 이진 변환(binary convert)하는 제1 방식, 데이터 값을 각 구간별 대푯값으로 변환하는 제2 방식, 데이터 값을 근사값으로 변환하는 제3 방식, 데이터 값을 그대로 유지하는 제4 방식 중 적어도 하나를 데이터의 처리 방식으로서 정의하는, 데이터 처리 방법.At least one of the first method of binary converting the data value, the second method of converting the data value into a representative value for each section, the third method of converting the data value into an approximate value, and the fourth method of maintaining the data value as is. A data processing method, which defines one as a data processing method.
  6. 제1항에 있어서,According to paragraph 1,
    상기 제1 비식별 데이터는,The first non-identifying data is,
    상기 사용자 식별 데이터와 고유한 값을 갖는 부가 데이터를 기반으로 해시 함수를 통해 생성된 데이터를 포함하는, 데이터 처리 방법.A data processing method comprising data generated through a hash function based on the user identification data and additional data having a unique value.
  7. 제6항에 있어서,According to clause 6,
    상기 부가 데이터는,The additional data is,
    UUID(Universally Unique Identifier)를 포함하고,Contains a Universally Unique Identifier (UUID),
    상기 해시 함수는,The hash function is,
    SHA(Secure Hash Algorithm) 기반 해시 함수를 포함하는, 데이터 처리 방법.A data processing method including a hash function based on SHA (Secure Hash Algorithm).
  8. 제7항에 있어서,In clause 7,
    상기 UUID는,The UUID is,
    타임스탬프 및 MAC 주소(Media Access Control Address)를 기반으로 생성되는 제1 버전 UUID, 상기 제1 버전 UUID을 구성하는 일부 데이터가 대체된 제2 버전 UUID, 상기 서비스 사용자의 이름 및 이름공간(namespace)에 기반하여 MD5(Message-Digest algorithm 5) 기반 해시 함수를 통해 생성된 제3 버전 UUID, 무작위로 생성된 제4 버전 UUID, 상기 서비스 사용자의 이름 및 이름공간에 기반하여 SHA 기반 해시 함수를 통해 생성된 제5 버전 UUID 중 어느 하나인, 데이터 처리 방법.A first version UUID generated based on a timestamp and a MAC address (Media Access Control Address), a second version UUID in which some data constituting the first version UUID has been replaced, and the name and namespace of the service user. 3rd version UUID generated through MD5 (Message-Digest algorithm 5)-based hash function, randomly generated 4th version UUID, generated through SHA-based hash function based on the name and namespace of the service user. Method for processing data, which is one of the 5th version UUIDs.
  9. 제6항에 있어서,According to clause 6,
    상기 부가 데이터는,The additional data is,
    사용자 식별 데이터는 동일하지만 최종 비식별 데이터가 생성되는 시점이 상이한 경우, 각각의 최종 비식별 데이터의 생성에 이용되는 부가 데이터는 상이한 것을 특징으로 하는, 데이터 처리 방법.When the user identification data is the same but the time at which the final de-identified data is generated is different, the additional data used to generate each final de-identified data is different.
  10. 제1항에 있어서,According to paragraph 1,
    상기 제2 비식별 데이터는,The second non-identifying data is,
    상기 처리 기준이 존재하는 데이터 필드에 속하는 특징 데이터가 처리 대상인 경우, 상기 처리 기준에 따라 생성되고, 상기 처리 기준이 존재하지 않는 데이터 필드에 속하는 특징 데이터가 처리 대상인 경우, 특징 데이터의 값을 이진 변환함으로써 생성되는, 데이터 처리 방법.If feature data belonging to a data field in which the processing standard exists is the processing target, it is generated according to the processing standard, and if feature data belonging to a data field in which the processing standard does not exist is the processing target, the value of the feature data is converted to binary. A method of processing data, which is generated by doing so.
  11. 제1항에 있어서,According to paragraph 1,
    상기 최종 비식별 데이터는,The final de-identified data is,
    생성 시점으로 구별되는 스냅샷 데이터로서, 사전 설정된 데이터 판독 주기마다 확인된 하나 이상의 사용자 식별 데이터와 각각의 사용자 식별 데이터에 대응하는 하나 이상의 특징 데이터가 매칭된 하나 이상의 테이블을 포함하는, 데이터 처리 방법.A data processing method comprising snapshot data distinguished by the time of creation, and including one or more tables in which one or more user identification data confirmed at each preset data reading cycle and one or more characteristic data corresponding to each user identification data are matched.
  12. 제1항에 있어서,According to paragraph 1,
    상기 특징 데이터는,The characteristic data is,
    현재 가입 상태인 서비스 사용자의 특징 데이터 및 탈퇴 상태인 서비스 사용자의 특징 데이터에 대응하는 제2 비식별 데이터를 포함하는, 데이터 처리 방법.A data processing method comprising second non-identifying data corresponding to characteristic data of a service user currently enrolled and characteristic data of a service user currently unsubscribed.
  13. 제12항에 있어서,According to clause 12,
    탈퇴 상태인 서비스 사용자의 특징 데이터를 확인하는 단계; 및Confirming characteristic data of a service user who is in a withdrawal state; and
    현재 가입 상태인 서비스 사용자의 특징 데이터에 대해 사전 산출된 처리 기준에 기반하여 상기 탈퇴 상태인 서비스 사용자의 특징 데이터의 적어도 일부를 처리함으로써 상기 탈퇴 상태인 서비스 사용자의 제2 비식별 데이터를 생성하는 단계를 더 포함하는, 데이터 처리 방법.Processing at least a portion of the characteristic data of the service user in the withdrawal state based on pre-calculated processing standards for the characteristic data of the currently subscribed service user, thereby generating second non-identifying data of the service user in the withdrawal state. Data processing method further comprising.
  14. 제12항에 있어서,According to clause 12,
    탈퇴 상태인 서비스 사용자의 특징 데이터를 확인하는 단계;Confirming characteristic data of a service user who is in a withdrawal state;
    데이터의 처리 방식을 정의한 메타 정보에 기반하여 상기 탈퇴 상태인 서비스 사용자의 특징 데이터에 특화된 처리 기준을 산출하는 단계; 및Calculating processing standards specialized for characteristic data of the service user who has withdrawn from the service based on meta information defining a data processing method; and
    상기 탈퇴 상태인 서비스 사용자의 특징 데이터에 특화된 처리 기준에 기반하여 상기 탈퇴 상태인 서비스 사용자의 특징 데이터의 적어도 일부를 처리함으로써 상기 탈퇴 상태인 서비스 사용자의 제2 비식별 데이터를 생성하는 단계를 더 포함하는, 데이터 처리 방법.Processing at least a portion of the characteristic data of the unsubscribed service user based on processing standards specialized for the unsubscribed service user's characteristic data, thereby generating second non-identifiable data of the unsubscribed service user. How to process data.
  15. 제1항에 있어서,According to paragraph 1,
    상기 제1 비식별 데이터를 생성하는 단계는,The step of generating the first non-identified data includes:
    탈퇴 상태인 서비스 사용자의 제1 비식별 데이터를 생성함에 있어서,In generating first non-identifying data of a service user who is in withdrawal status,
    탈퇴 상태인 서비스 사용자의 사용자 식별 데이터에 해시 함수를 1차 적용하는 단계; 및First applying a hash function to user identification data of a service user who has withdrawn from the service; and
    상기 1차 적용 결과와 상기 부가 데이터를 기반으로 해시 함수를 2차 적용하여 상기 탈퇴 상태인 서비스 사용자의 제1 비식별 데이터를 생성하는 단계를 포함하는, 데이터 처리 방법.A data processing method comprising generating first non-identifiable data of the service user in the withdrawn state by secondary application of a hash function based on the primary application result and the additional data.
  16. 제1항의 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 비일시적 기록 매체.A non-transitory computer-readable recording medium that records a program for executing the method of claim 1 on a computer.
  17. 데이터 비식별화를 위한 전자 장치로서,An electronic device for data de-identification, comprising:
    트랜시버, 명령어를 저장하는 메모리 및 프로세서를 포함하고,Includes a transceiver, memory for storing instructions, and a processor;
    상기 프로세서는, 상기 트랜시버 및 상기 메모리와 연결되어,The processor is connected to the transceiver and the memory,
    서비스 사용자를 식별 가능한 사용자 식별 데이터 및 상기 사용자 식별 데이터에 대응하는 서비스 사용자의 특징 데이터를 확인하고,Confirm user identification data that can identify a service user and characteristic data of the service user corresponding to the user identification data,
    해싱(Hashing) 기법을 통해 상기 사용자 식별 데이터에 대응하는 제1 비식별 데이터를 생성하고,Generating first non-identifying data corresponding to the user identification data through a hashing technique,
    데이터의 처리 방식을 정의한 메타 정보에 기반하여 상기 특징 데이터에 특화된 처리 기준을 산출하고,Calculate processing standards specialized for the feature data based on meta information that defines the data processing method,
    상기 처리 기준에 기반하여 상기 특징 데이터의 적어도 일부를 처리함으로써 상기 특징 데이터에 대응하는 제2 비식별 데이터를 생성하고,generating second non-identified data corresponding to the feature data by processing at least a portion of the feature data based on the processing criteria;
    상기 제1 비식별 데이터를 키(key)로, 상기 제2 비식별 데이터 중 적어도 일부를 값(value)으로 갖는 하나 이상의 테이블을 포함하는 최종 비식별 데이터를 생성하는, 전자 장치.An electronic device that generates final de-identified data including one or more tables having the first de-identified data as a key and at least some of the second de-identified data as values.
PCT/KR2022/011120 2022-07-22 2022-07-28 Electronic device and method for data processing WO2024019205A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020220090970A KR20240013440A (en) 2022-07-22 2022-07-22 Electronic apparatus for processing data and method thereof
KR10-2022-0090970 2022-07-22

Publications (1)

Publication Number Publication Date
WO2024019205A1 true WO2024019205A1 (en) 2024-01-25

Family

ID=89617998

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2022/011120 WO2024019205A1 (en) 2022-07-22 2022-07-28 Electronic device and method for data processing

Country Status (2)

Country Link
KR (1) KR20240013440A (en)
WO (1) WO2024019205A1 (en)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170149793A1 (en) * 2015-11-20 2017-05-25 Symantec Corporation Systems and methods for anonymizing log entries
EP3582133A1 (en) * 2018-06-15 2019-12-18 Avident-IT AB Method for de-identifying data
US20200193060A1 (en) * 2016-12-20 2020-06-18 Privacy Analytics Inc. Smart de-identification using date jittering
US20200293772A1 (en) * 2016-03-31 2020-09-17 Facebook, Inc. Storing anonymized identifiers instead of personally identifiable information
JP7100563B2 (en) * 2018-11-08 2022-07-13 株式会社日立製作所 Anonymization system and anonymization method

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170149793A1 (en) * 2015-11-20 2017-05-25 Symantec Corporation Systems and methods for anonymizing log entries
US20200293772A1 (en) * 2016-03-31 2020-09-17 Facebook, Inc. Storing anonymized identifiers instead of personally identifiable information
US20200193060A1 (en) * 2016-12-20 2020-06-18 Privacy Analytics Inc. Smart de-identification using date jittering
EP3582133A1 (en) * 2018-06-15 2019-12-18 Avident-IT AB Method for de-identifying data
JP7100563B2 (en) * 2018-11-08 2022-07-13 株式会社日立製作所 Anonymization system and anonymization method

Also Published As

Publication number Publication date
KR20240013440A (en) 2024-01-30

Similar Documents

Publication Publication Date Title
WO2020258656A1 (en) Code segment generation method and apparatus, storage medium and computer device
WO2020101087A1 (en) Encryption system and method for handling personal information
WO2020062658A1 (en) Contract generation method and apparatus, and device and storage medium
WO2020233089A1 (en) Test case generating method and apparatus, terminal, and computer readable storage medium
WO2023153558A1 (en) Method for managing authority over resources included in structured document, and apparatus using same
WO2016080787A1 (en) Construction site management system and method using smart device
WO2020096262A1 (en) Electronic device, method for providing personal information using same, and computer-readable recording medium for recording same
WO2024019205A1 (en) Electronic device and method for data processing
WO2016093652A2 (en) Family album service providing method for enabling family album to be used by enabling family members to access cloud server through telephone number
WO2019103443A1 (en) Method, apparatus and system for managing electronic fingerprint of electronic file
WO2013127195A1 (en) Chain communication and cooperation method, device and system
AU2020364879B2 (en) Blockchain data search method
WO2020062639A1 (en) Blockchain introduction testing method and apparatus, device, and computer-readable storage medium
WO2014157924A1 (en) Method for sharing contents
WO2020171622A1 (en) A method and system for managing operations of applications on an electronic device
WO2023200060A1 (en) Method for managing obtainable resources and apparatus using same
WO2022145572A1 (en) Method for providing information based on predicted result value, and computing device using same
WO2021080110A1 (en) System and method for managing and identifying affiliation of terminal in cloud environment
WO2018010304A1 (en) Message processing method and device
WO2024058299A1 (en) Electronic device for managing ab test code information and method therefor
WO2017034098A1 (en) Information change notification service providing method and system for executing same
WO2020241943A1 (en) De-identification method for big data
WO2016080756A1 (en) Information management system and information management method
WO2015147348A1 (en) Method and system for exchanging electronic business cards among multiple parties
WO2024106621A1 (en) Electronic device and method for providing information related to script

Legal Events

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

Ref document number: 22952054

Country of ref document: EP

Kind code of ref document: A1