KR20160144178A - System and method for determining existence of relationship between users - Google Patents

System and method for determining existence of relationship between users Download PDF

Info

Publication number
KR20160144178A
KR20160144178A KR1020150080642A KR20150080642A KR20160144178A KR 20160144178 A KR20160144178 A KR 20160144178A KR 1020150080642 A KR1020150080642 A KR 1020150080642A KR 20150080642 A KR20150080642 A KR 20150080642A KR 20160144178 A KR20160144178 A KR 20160144178A
Authority
KR
South Korea
Prior art keywords
user
information
data
users
modulation data
Prior art date
Application number
KR1020150080642A
Other languages
Korean (ko)
Other versions
KR101728945B1 (en
Inventor
윤근용
Original Assignee
네이버 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 네이버 주식회사 filed Critical 네이버 주식회사
Priority to KR1020150080642A priority Critical patent/KR101728945B1/en
Publication of KR20160144178A publication Critical patent/KR20160144178A/en
Application granted granted Critical
Publication of KR101728945B1 publication Critical patent/KR101728945B1/en

Links

Images

Classifications

    • 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
    • G06Q50/00Systems or methods specially adapted for specific business sectors, e.g. utilities or tourism
    • G06Q50/01Social networking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • 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
    • G06Q50/00Systems or methods specially adapted for specific business sectors, e.g. utilities or tourism
    • G06Q50/30Transportation; Communications

Abstract

A system and method for determining the presence of a relationship between users is disclosed. A method implemented by a computer includes receiving modulation data generated in the electronic device and transmitted through a network in accordance with control of an application driven in the electronic device. The modulation data is transmitted to another user having a personal relationship with a user of the electronic device Wherein the electronic device includes data modulated into a predefined form using a one-way function under the control of the application; Storing and managing the received modulation data in a database in association with the user or the electronic device; And for the first user and the second user associated with the service to be provided, comparing the modulation data stored in the database with the first user and the modulation data stored in the database in association with the second user, And determining whether a human relationship exists between the first user and the second user based on the result of the comparison.

Description

[0001] SYSTEM AND METHOD FOR DETERMINING EXISTENCE OF RELATIONSHIP BETWEEN USERS [0002]

The following description relates to a system and method for determining whether there is a human relationship such as a friend or acquaintance between users.

There is a need to determine whether there is a human relationship such as a friend or acquaintance between the connected users from the perspective of a system that provides services by linking two or more users, such as a chat service or a money transfer service. For example, there is a need to determine at a system level whether a second user sending a message to a first user is a third party without a personal relationship, such as a friend or acquaintance of the first user.

However, in order to protect the privacy, the system should not identify or know the information of the first user and should not have direct information on the personal relationship between the two users communicating with each other. In other words, there is a need for a technology that can guarantee anonymity and determine the relationship between users who are connected to each other in order to provide services.

(For example, name, telephone number, e-mail address, etc.) of a human relationship such as a friend or acquaintance possessed by the user is stored in a predefined form (for example, Length) data, and it is determined whether there is a human relationship between users by using the modulated data of users, thereby ensuring anonymity so as to protect the privacy of users, A system and a method are provided.

A computer-implemented method, comprising: receiving modulation data generated in an electronic device and transmitted through a network in accordance with control of an application driven in the electronic device, Wherein the electronic device includes data obtained by modulating information of other users into a predefined form using a one-way function according to control of the application; Storing and managing the received modulation data in a database in association with the user or the electronic device; And for the first user and the second user associated with the service to be provided, comparing the modulation data stored in the database with the first user and the modulation data stored in the database in association with the second user, And determining whether a human relationship exists between the first user and the second user based on the result of the comparison.

A computer-implemented method, comprising: generating modulation data by modulating information of other users having a personal relationship with a user in a predefined manner using a one-way function according to control of a driven application; And transmitting the generated modulation data to a server through a network in accordance with the control of the application, wherein the server compares the user's modulation data with another user's modulation data, and based on the comparison result, Wherein a presence of a human relationship between the user and the other user is determined.

A system comprising at least one processor, the at least one processor comprising: a modulated data receiver for receiving modulated data generated in the electronic device and transmitted via a network in accordance with control of an application running on the electronic device, And data of other users having a personal relationship with the user of the electronic device, the electronic device including data modulated into a predefined form using a one-way function according to the control of the application; A modulation data management unit for storing and managing the received modulation data in a database in association with the user or the electronic device; And for the first user and the second user associated with the service to be provided, comparing the modulation data stored in the database with the first user and the modulation data stored in the database in association with the second user, And a personal relationship determination unit for determining whether a human relationship exists between the first user and the second user based on the result of the comparison.

In a system including one or more processors, the one or more processors modulate information of other users having a personal relationship with a user in a predefined manner using a one-way function according to control of a driven application to generate modulation data A modulation data generating unit for generating a modulation data; And a modulated data transmitting unit for transmitting the generated modulated data to a server via a network under the control of the application, wherein the server compares the modulated data of the user with the modulated data of another user, The presence or absence of a human relationship between the user and the other user is determined based on the presence of the user.

(For example, a name, a telephone number, an e-mail address, etc.) related to a human relationship such as a friend or acquaintance possessed by the user is modulated into a predefined type of data using a predetermined mechanism including a one- , Anonymity can be ensured by determining whether there is a human relationship between users by using the modulated data of the users, thereby protecting the privacy of users and confirming whether the users are related to each other for providing the service.

1 is a diagram illustrating an example of an operating environment of a system according to an embodiment of the present invention.
2 is a block diagram illustrating an internal configuration of an electronic device and a server according to an embodiment of the present invention.
3 is a block diagram illustrating a processor included in a server according to an embodiment of the present invention.
4 is a flowchart illustrating a method performed by a server in an embodiment of the present invention.
5 is a block diagram for explaining a processor included in an electronic device according to an embodiment of the present invention.
6 is a flowchart illustrating a method performed by an electronic device in an embodiment of the present invention.
7 is a diagram illustrating an example of a process of generating modulation data in an embodiment of the present invention.
FIG. 8 is a diagram for explaining information about a set order of bits of a bitstream, according to an embodiment of the present invention. Referring to FIG.
9 is a diagram showing an example of modulation data of two users in an embodiment of the present invention.
10 is a diagram illustrating an example of a process for determining whether a human relationship exists between users in an embodiment of the present invention.

Hereinafter, embodiments will be described in detail with reference to the accompanying drawings.

1 is a diagram illustrating an example of an operating environment of a system according to an embodiment of the present invention. The operating environment of the system according to the present embodiment may include electronic devices 110, 120, 130, 140, servers 150, 160, and a network 170. Although FIG. 1 illustrates four electronic devices 110, 120, 130, and 140 and two servers 150 and 160, this is for convenience of illustration only, and is not limited thereto.

The electronic devices 110, 120, 130 and 140 may be connected to other electronic devices and / or servers 150 and 160 through a network 170 and may be provided with services. 130, and 140 may be a fixed terminal or a mobile terminal. Examples of the electronic devices 110, 120, 130 and 140 include a smart phone, a mobile phone, a navigation device, a computer, a notebook, a terminal for digital broadcasting, a PDA (Personal Digital Assistants), a portable multimedia player (PMP) PC and so on.

The communication method is not limited, and may include a communication method using a communication network (for example, a mobile communication network, a wired Internet, a wireless Internet, a broadcasting network) that the network 170 may include, as well as a short-range wireless communication between the devices.

Network 170 may be, for example, a personal area network (LAN), a local area network (LAN), a campus area network (CAN), a metropolitan area network (MAN), a wide area network (WAN), a broadband network And the like. The network 170 may also include any one or more of a network topology including a bus network, a star network, a ring network, a mesh network, a star-bus network, a tree or a hierarchical network, It is not limited.

Each of the servers 150 and 160 may be implemented by a device or a plurality of devices that provide services or contents by communicating with the electronic devices 110, 120, 130, and 140 via the network 170. The servers 150 and 160 may be configured to configure one system for providing services or contents to the electronic apparatuses 110, 120, 130 and 140, or may be separate systems for providing different services or contents It is possible. For example, the server 150 may be a system for determining the personal relationship between users while providing services to the electronic devices 110, 120, 130, 140, and the server 160 may be a server 150, Or a file distribution system for distributing an installation file of an application for a service.

The servers 150 and 160 may provide services and contents to the electronic devices 110, 120, 130 and 140 according to a user's request through the electronic devices 110, 120, 130 and 140. For example, the electronic devices 110, 120, 130 and 140 receive codes, file data, and the like provided by the servers 150 and 160 and store programs (applications) installed in the electronic devices 110, 120, 130 and 140 Services and contents provided by the servers 150 and 160 can be received using the received codes, files, data, and the like.

Hereinafter, various embodiments of the present invention will be described in terms of one electronic device 110 such as a smart phone and the server 150. FIG.

2 is a block diagram illustrating an internal configuration of an electronic device and a server according to an embodiment of the present invention. The electronic device 110 may include a memory 211, a processor 212, a communication module 213, and an input / output interface 214. Similarly, the server 150 may also include a memory 221, a processor 222, a communication module 223, and an input / output interface 224.

The memories 211 and 221 may be a computer-readable recording medium and may include a permanent mass storage device such as a random access memory (RAM), a read only memory (ROM), and a disk drive. Also, the operating system and at least one program code may be stored in the memories 211 and 221. [ For example, at least one program code stored in the memory 211 of the electronic device 110 may include code of an application installed in the electronic device 110 to receive services of the server 150. These software components may be loaded from a computer readable recording medium separate from the memories 211 and 221 using a drive mechanism. Such a computer-readable recording medium may include a computer-readable recording medium such as a floppy drive, a disk, a tape, a DVD / CD-ROM drive, and a memory card. In other embodiments, the software components may be loaded into memory 211, 221 via communication modules 213, 223 rather than a computer readable recording medium. For example, at least one program code may be loaded into the memory 211, 221 based on a program installed by the developers via files provided via the network 170. [

Processors 212 and 222 may be configured to process instructions of a computer program (e.g., at least one program code, as described above), by performing basic arithmetic, logic, and I / O operations. The instructions may be provided to the processors 212 and 222 by the memories 211 and 221 or the communication modules 213 and 223.

The communication modules 213 and 223 provide a function for communicating with other devices (the server 150 in terms of the electronic device 110 and the electronic device 110 in terms of the server 150) via the network 170 can do. For example, a request message generated according to a user's input at the processor 212 of the electronic device 110 may be transmitted to the server 150 via the network 170 under the control of the communication module 213. Conversely, data transmitted by the server 150 through the communication module 223 and the network 170 may be received by the electronic device 110 through the communication module 213. [

The input / output interfaces 214 and 224 may further include the electronic device 110 or the server 150 or may provide a function for connection between the electronic device 110 and the input / output device associated with the server 150. [ For example, the input device may include a mouse, a keyboard, a touch panel, a microphone, and the like. The output device may include a speaker, a display, a touch screen, and the like. For example, the service screen 215 rendered through the processor 212 of the electronic device 110 may be configured and displayed through a display connected to the electronic device 110.

Also, in other embodiments, electronic device 110 or server 150 may include more components than the components of FIG. However, there is no need to clearly illustrate most prior art components. For example, the electronic device 110 or the server 150 may further include other components such as a display such as a touch screen, a transceiver, a Global Positioning System (GPS) module, and the like.

The server 150 may communicate with other electronic devices 230 as shown in Figure 2 as well as the electronic devices 110 and may provide services associated with the two electronic devices 110 and 230 Service, social network service, etc.).

FIG. 3 is a block diagram illustrating a processor included in a server according to an exemplary embodiment of the present invention, and FIG. 4 is a flowchart illustrating a method performed by a server according to an embodiment of the present invention. The processor 222 included in the server 150 may include a modulation data receiving unit 310, a modulation data managing unit 320 and a human relations determining unit 330 as shown in FIG. 3, The steps 410 to 430 of the method of FIG. 4 may be implemented to execute through at least one program code and an operating system that includes the memory 221. FIG.

In operation 410, the modulation data receiving unit 310 may receive modulation data generated in an electronic device and transmitted through a network according to control of an application driven in the electronic device.

For example, the electronic devices in which the application is installed can generate the modulation data according to the control of the application and transmit the generated modulation data to the server 150. At this time, the point at which the modulation data is generated and transmitted includes a point in time when the application is driven, a point in time when a service is provided from the server 150 through an application, a point in time when an electronic device transmits data or a message to the server 150, 150, and the like), and the like. For example, the electronic device can generate and transmit the modulation data to the server 150 whenever the application is activated. As another example, the electronic device may generate the modulated data at each time the message is transmitted to the server 150 through the chat application, and transmit the generated modulated data to the server 150. As another example, the electronic device can generate and transmit the modulated data to the server 150 whenever the money is to be transmitted through the financial application. The time of generation and transmission of the modulated data may vary widely and may be preset according to a service or a policy provided by the server 150.

The modulation data may be data obtained by modulating information of other users who have a personal relationship with a user of the electronic device according to control of the application by the electronic device. At this time, the application can modulate information into predefined data using a predetermined one-way function (for example, a predetermined hash function). For example, the information may be applied as an input parameter of a one-way function, and the output of the one-way function may be data having a fixed length. As a specific example, even if information of different length such as an e-mail address is inputted, the output of the one-way function can always output the same number of binary digits. As another example, the output of a one-way function may be a decimal value, a character value, or an array of character values. In other words, a one-way function can be used irrespective of its type or modulation method if it is a modifiable function such that the original information can not be restored for the anonymity of information of other users such as a hash function. However, it should be ensured that the same input value always has the same output value. Other users who have a personal relationship with the user may be users included in the user's contact list, for example, and other users' information may include other users, such as names, phone numbers, email addresses, It does not matter what information is available. The electronic device may utilize the contact list stored in the storage space of the electronic device or may utilize the contact list stored in the storage space on the web associated with the user. For example, if the application is a messenger application, the contact list may be received and used in a storage space on the web where information on the messenger buddies of the user is stored.

The electronic device can generate the modulated data by modulating the information that is confirmed according to the control of the application by the one-way function to the predefined data, and then transmit the modulated data to the server 150. At this time, the modulation data receiving unit 310 can receive the modulation data transmitted by the electronic device.

Modulating the information of other users into a one-way function is to ensure anonymity. For example, when transmitting information of other users as it is, information about the personal relationship of each user is accumulated in the server, which may invade the privacy of the user. Since the output value of the one-way function can not reproduce the input, even if the modulated data is obtained in the middle, it is extremely difficult to obtain information of the other users through the modulated data. Therefore, the anonymity can be guaranteed by transmitting the modulation data.

In step 420, the modulation data management unit 320 may store and manage the received modulation data in a database in association with a user or an electronic device. For example, the modulation data received from the electronic device of the first user may be stored in the database in association with the identifier of the first user or the identifier of the electronic device of the first user. The database may be included in the server 150 or may be constructed in a separate structure for communicating with the server 150 through the network 170 from outside the server 150. [ The modulation data may be received by the server 150 from all the electronic apparatuses using the service of the server 150 and the modulation data management unit 320 may transmit the modulation data to the user or the electronic Can be stored and managed in the database in association with the device.

In step 430, the personal relationship determination unit 330 determines, for the first user and the second user associated with the service to be provided, the modulation data stored in the database in association with the first user, Compare the modulation data, and determine the presence of a human relationship between the first user and the second user based on the result of the comparison.

In one embodiment, the modulation data may comprise a set of data, each modulating information of other users. At this time, the personal relationship determination unit 330 may compare the elements of the set included in the modulation data of the first user with the elements of the set included in the modulation data of the second user. When the same information is modulated with the same one-way function by the same application, the output value of the one-way function becomes equal. Therefore, if the same element is included, there is a possibility that there is a probability that the first user and the second user know the same person. Also, the greater the number of the same elements, the greater the probability that the first user and the second user know the same person. In other words, there may be a probability that there is a human relationship between the first user and the second user. Conversely, if the same element does not exist, the first user and the second user can be determined to have no human relationship. In other words, the personal relationship setting unit 330 compares the elements of the set included in the modulation data of the first user with the elements of the set included in the modulation data of the second user, and when the same elements do not exist, It is possible to determine that there is no human relationship between the user and the second user or to calculate the probability that there is a human relationship between the first user and the second user based on the same number of elements. The calculated probability is a relative value and can increase relatively as the number of identical elements increases. The personal relationship setting unit 330 may determine whether there is a human relationship between the two users by comparing the elements of the set included in the modulation data of the first user with the elements of the set included in the modulation data of the second user .

In another embodiment, each of the information of the other users is applied as input of N (where N is a natural number) different one-way functions, and a bit corresponding to the output value of the N different one- (T is a natural number) bits of the bit stream. For example, each of the phone numbers of the user's contact list may be an input parameter of ten different one-way functions. In this case, each of the output values of ten different one-way functions may represent a specific bit of a bit stream composed of twenty bits such as a bloom filter. The bits represented by the output values in the bitstream may be set to 1 (or 0) and the remaining bits may be set to 0 (or 1). These bitstreams may be generated for each of the phone numbers of the contact list. In this case, the modulation data may be composed of a set of bit streams corresponding to each of the information of other users. In this embodiment, the personal relationship determination unit 330 compares the bitstream included in the modulation data of the first user with the bitstream included in the modulation data of the second user, and when there is no identical bitstream, It is possible to determine that there is no human relationship between the user and the second user or to calculate the probability that a human relationship exists between the first user and the second user based on the same number of bitstreams. In this case, the calculated probability is a relative value and can increase relatively as the number of identical elements increases.

For example, assume that a first user sends a message to a second user via a chat application. The server 150 providing the chat service needs to determine whether the first user and the second user are users having a personal relationship such as a friend or third parties having absolutely no relation to each other. At this time, the server 150 can determine whether there is a human relationship between the two users by comparing the modulated data of the first user with the modulated data of the second user, as described above. In addition, since the modulation data is generated in a state in which the original information can not be obtained through the one-way function, anonymity of the two users and their friends can be assured.

Further, the modulation data may further include information on an order in which bits of the bit stream are set to 1 (or 0). For example, when the bits of the bitstream are sequentially set to 1 according to the output values of 10 one-way functions, the order of the bits set to 1 may be independent of the order of the bits included in the bitstream. Therefore, the modulation data may further include information on this order. When the same information is sequentially modulated to the same one-directional functions, the output values are the same and the order in which the bit is set to 1 in the bit stream is made equal according to the same output value. Therefore, in step 430, the personal relationship establishing unit 330 first compares the information on the order with the modulated data of the first user and the modulated data of the second user, and if there is no information on the same order, It can be determined that there is no human relationship between the user and the second user. The absence of information on the same order means that they do not have the same information. In this case, the process of determining whether the bitstreams are identical may be omitted.

The presence of such a human relationship may be used to determine whether two users are friends or acquaintances, or may be used for recommendation of a friend between two users. For example, the server 150 may recommend users who are determined to have a personal relationship as a friend on a social network service even if the friend relationship is not registered on the social network service. To this end, the method of FIG. 4 further includes a step (not shown) of recommending a first user as a friend to a first user or recommending a first user as a friend to a second user when it is determined that a human relationship exists can do. The processor 222 may further include a friend recommending unit (not shown), and may perform a step (not shown) of recommending another user as a friend.

FIG. 5 is a block diagram illustrating a processor included in an electronic device according to an embodiment of the present invention, and FIG. 6 is a flowchart illustrating a method performed by an electronic device in an embodiment of the present invention. The processor 212 included in the electronic device 110 may include a modulation data generation unit 510 and a modulation data transmission unit 520 as shown in FIG. 5, Steps 610 and 620 may be implemented to execute through at least one program code and an operating system that the memory 211 contains.

In step 610, the modulation data generator 510 may generate modulation data by modulating information of other users having a human relationship with the user in a predefined manner using a one-way function according to the control of the application being driven . The generation of such modulation data has already been described in detail.

In step 620, the modulation data transmission unit 520 may transmit the generated modulation data to the server through the network according to the control of the application. Here, the server may correspond to the server 150 described above. In the server, the user's modulation data is compared with other user's modulation data, and the presence of a human relationship between the user and another user can be determined based on the result of the comparison. A method for determining the existence of such a human relationship has been described above, and a repetitive description will be omitted.

Hereinafter, more specific embodiments for generating modulation data and determining whether there is a human relationship between users using the generated modulation data will be described.

7 is a diagram illustrating an example of a process of generating modulation data in an embodiment of the present invention. 7 shows an example of generating modulation data using m telephone numbers of other users in the telephone number list of user A. As one example of the modulation data, one telephone number can be converted into a Bloom Filter (BF) format represented by a bit-bit stream of t bits. First, one telephone number (for example, the telephone number of user B) is applied as an input parameter of n hash functions F1 (x), F2 (x), ..., Fn (x) Hn, H1, H2, ..., Hn are generated, and n bits corresponding to each hash value in the Bloom filter for this data, bit stream of t bits) may be set to one. For example, FIG. 7 shows an example in which the first hash value H1 of the first hash function for the telephone number of B corresponds to the first bit of the bit stream and the first bit is set to one. At this time, if the same hash value is generated according to the hash function, n bits or less may be set to 1. [ However, it is desirable to use different hash functions so that the hash function can output different hash values for the same input.

At this time, when a bit stream is generated for all of the m telephone numbers, a matrix (matrix blom filter (MBF)) having t matrix columns and m matrix rows is generated as modulation data Lt; / RTI >

Also, the first row in the MBF may be data that modifies the information of the user. For example, in FIG. 7, the first row is data obtained by modulating information about user A, which is not the first user of user A, In this case, the modulated data for the user A holding the m pieces of acquaintance information includes a matrix (matrix blom filter (MBF)) having t matrix columns and m + 1 matrix rows, .

FIG. 8 is a diagram for explaining information about a set order of bits of a bitstream, according to an embodiment of the present invention. Referring to FIG. FIG. 8 shows that the modulation data may further include sequence data along with a matrix bloom filter (MBF) described with reference to FIG. The information on the order may include information on the order in which the bit of the bit stream (Bloom filter) is set to 1 according to the output value of the hash function. In other words, even if the bitstream has the same value, since the order in which the bits of the bitstream are set to 1 may be different from each other, the comparison of the information in this order improves the accuracy in determining whether two bitstreams are identical . Since the two bitstreams are different from each other in terms of information about the order of the two bitstreams, the server 150 compares the information on the sequence before comparing each row of the MBF, Are different from each other, the two rows can be judged to be different from each other.

9 is a diagram showing an example of modulation data of two users in an embodiment of the present invention. A comparison to two MBFs can be made, for example, by an AND operation on Bloom filters. First, the first row (MBF_A_row_1) in the MBF_A of the user A can be compared with the rows of the MBF_B of the user B. For example, starting from the first row of MBF_A (MBF_A_row_1 = '10010') and the first row of MBF_B (MBF_B_row_1 = '00011'), the first row of MBF_A (MBF_A_row_1 = '10010') and the last row of MBF_B MBF_B_row_end = '11000'). At this time, if there is at least one row of MBF_B equal to MBF_A_row_ 1 in each comparison result or the result of each AND operation is equal to MBF_A_row_ 1, the first contact of user A (corresponding to the first row (MBF_A_row_ 1) corresponding to the first row It can be judged that there is a possibility that there is an information acquaintance. Conversely, if there is no row of the same MBF_B as the first row (MBF_A_row_1) (for example, if the values of the AND operation are all 0), it is determined that the first contact of the user A does not exist in the contact list of the user B . In the example of FIG. 9, since the rows of MBF_B that are the same as the first row of MBF_A (MBF_A_row_1 = '10010') do not exist, it can be determined that the first acquaintance of user A does not exist in the contact list of user B.

  The same operation as described above may be performed on other rows of the MBF_A to determine whether there is a human relationship between the user A and the user B. In the example of FIG. 9, the second row of MBF_A (MBF_A_row_1 = '01010') is identical to the second row of MBF_B (MBF_B_row_2 = '01010'). Therefore, it can be seen that the second acquaintance of user A may exist in the contact list of user B according to the comparison result.

Also, as described above, the first row in the MBF may be data that modulates the information of the corresponding user. For example, the first row (MBF_A_row_1 = '10010') in MBF_A in FIG. 9 may be data obtained by modulating information about user A that is not the first acquaintance of user A. In addition, the first row (MBF_B_row_1 = '00011') in MBF_B may be data whose information on user B is modulated. In this case, if the same value as the first row of MBF_A exists in the rows of MBF_B, it can be determined that user A exists in user B's contact list. Conversely, if the same value as the first row of MBF_B exists among the rows of MBF_A, it can be determined that user B exists in user A's contact list. Of course, the data that modifies the information of the user corresponding to the MBF does not necessarily have to be the first row in the MBF. Since the MBF is for judging whether or not there is a relationship between users, the location may be irrelevant as long as data modulating the information of the corresponding user is included in the MBF.

10 is a diagram illustrating an example of a process for determining whether a human relationship exists between users in an embodiment of the present invention.

For example, it is assumed that the server 150 provides a chat service, and that the user A 1010, the user B 1020, and the user C 1030 receive a chat service using terminals equipped with a chat application. When the chat application is activated, the users 1010, 1020, and 1030 may generate MBFs, which are their own modulation data, and transmit them to the server 150. Substantially, the terminals of the users 1010, 1020, and 1030 may generate and transmit the modulated data to the server 150 under the control of the chat application. At this time, the modulated data may be encrypted or signed to prevent further modulation and sent to the server 150. The server 150 can update and manage the transmitted modulation data. If the user A 1010 wants to transmit a message to the user B 1020, the server 150 compares the modulation data of the user A 1010 with the modulation data of the user B 1020, The user B 1020 can determine whether or not a human relationship exists. If there is no human relationship, various processes can be performed according to the policy, such as spamming the message of the user A 1010 or checking the possibility of modulating the message of the user A 1010. [

In another embodiment, it is assumed that the server 150 is a social network service, and the user A 1010, the user B 1020, and the user C 1030 receive a chat service using terminals equipped with a social application. In this case, the server 150 can receive and manage the modulation data from the users 1010, 1020, and 1030. At this time, the server 150 may compare the modulation data of the users 1010, 1020, and 1030 to determine whether there is a human relationship. If it is determined that the users 1010, 1020, 1030 are not friends of the social network service and there is a personal relationship, the server 150 may recommend the users 1010, 1020, 1030 as friends .

As described above, according to the embodiments of the present invention, specific information (e.g., a name, a telephone number, an e-mail address, etc.) about a human relationship such as a friend or acquaintance possessed by users can be obtained by using a predetermined mechanism including a one- And the presence of a human relationship between the users is determined by using the modulated data of the users to secure anonymity so as to protect the privacy of the users, And the like.

The apparatus described above may be implemented as a hardware component, a software component, and / or a combination of hardware components and software components. For example, the apparatus and components described in the embodiments may be implemented within a computer system, such as, for example, a processor, a controller, an arithmetic logic unit (ALU), a digital signal processor, a microcomputer, a field programmable gate array (FPGA) , A programmable logic unit (PLU), a microprocessor, or any other device capable of executing and responding to instructions. The processing device may execute an operating system (OS) and one or more software applications running on the operating system. The processing device may also access, store, manipulate, process, and generate data in response to execution of the software. For ease of understanding, the processing apparatus may be described as being used singly, but those skilled in the art will recognize that the processing apparatus may have a plurality of processing elements and / As shown in FIG. For example, the processing unit may comprise a plurality of processors or one processor and one controller. Other processing configurations are also possible, such as a parallel processor.

The software may include a computer program, code, instructions, or a combination of one or more of the foregoing, and may be configured to configure the processing device to operate as desired or to process it collectively or collectively Device can be commanded. The software and / or data may be in the form of any type of machine, component, physical device, virtual equipment, computer storage media, or device , Or may be permanently or temporarily embodied in a transmitted signal wave. The software may be distributed over a networked computer system and stored or executed in a distributed manner. The software and data may be stored on one or more computer readable recording media.

The method according to an embodiment may be implemented in the form of a program command that can be executed through various computer means and recorded in a computer-readable medium. The computer-readable medium may include program instructions, data files, data structures, and the like, alone or in combination. The program instructions to be recorded on the medium may be those specially designed and configured for the embodiments or may be available to those skilled in the art of computer software. Examples of computer-readable media include magnetic media such as hard disks, floppy disks and magnetic tape; optical media such as CD-ROMs and DVDs; magnetic media such as floppy disks; Magneto-optical media, and hardware devices specifically configured to store and execute program instructions such as ROM, RAM, flash memory, and the like. Examples of program instructions include machine language code such as those produced by a compiler, as well as high-level language code that can be executed by a computer using an interpreter or the like. The hardware devices described above may be configured to operate as one or more software modules to perform the operations of the embodiments, and vice versa.

While the present invention has been particularly shown and described with reference to exemplary embodiments thereof, it is to be understood that the invention is not limited to the disclosed exemplary embodiments. For example, it is to be understood that the techniques described may be performed in a different order than the described methods, and / or that components of the described systems, structures, devices, circuits, Lt; / RTI > or equivalents, even if it is replaced or replaced.

Therefore, other implementations, other embodiments, and equivalents to the claims are also within the scope of the following claims.

Claims (20)

In a computer implemented method,
Receiving modulated data generated in the electronic device and transmitted through a network in accordance with control of an application driven in the electronic device, the modulated data including information of other users having a personal relationship with the user of the electronic device, Comprises data modulated in a predefined manner using a one-way function under the control of the application;
Storing and managing the received modulation data in a database in association with the user or the electronic device; And
Comparing the modulated data stored in the database with the first user and the modulated data stored in the database in association with the second user for a first user and a second user associated with the service to be provided; Determining whether a human relationship exists between the first user and the second user based on the result;
Lt; RTI ID = 0.0 > 1, < / RTI >
The method according to claim 1,
The information of other users having a personal relationship with the user is information included in a contact list stored in a storage space of the electronic device or a storage space on the web associated with the user, An e-mail address,
Wherein the at least one information is identified and modulated with the predefined type of data according to control of the application at the electronic device.
The method according to claim 1,
Wherein the modulation data includes a set of data each modulating information of the other users,
Wherein the determining comprises:
When the elements of the set included in the modulation data of the first user and the elements of the set included in the modulation data of the second user are compared with each other so that the same element does not exist between the first user and the second user, Computing a probability that there is a human relationship between the first user and the second user based on the number of identical elements or determining that the relationship does not exist.
The method according to claim 1,
Wherein each of the information of the other users is applied as input of N (where N is a natural number) different one-way functions, and t is set to 1 (or 0) corresponding to an output value of the N different one- t is a natural number) bits,
Wherein the modulated data comprises a set of bit streams corresponding to each of the information of the other users.
5. The method of claim 4,
Wherein the determining comprises:
Comparing a bitstream included in the modulated data of the first user with a bitstream contained in the modulated data of the second user, and if the same bitstream does not exist, a human relationship between the first user and the second user Or the probability that there is a human relationship between the first user and the second user based on the number of identical bitstreams.
5. The method of claim 4,
Wherein the modulation data further includes information on an order in which bits of the bit stream are set to 1 (or 0)
Wherein the determining comprises:
The information on the order is first compared in the modulated data of the first user and the modulated data of the second user, and if there is no information in the same order, a human relationship exists between the first user and the second user The method comprising the steps of:
The method according to claim 1,
Recommending the first user as a friend to the first user or recommending the first user as a friend to the second user if it is determined that the human relationship exists
Lt; RTI ID = 0.0 > 1, < / RTI >
In a computer implemented method,
Generating modulation data by modulating information of other users having a human relationship with a user in a predefined manner using a one-way function according to control of a driven application; And
Transmitting the generated modulation data to a server through a network in accordance with the control of the application
Lt; / RTI >
Wherein the server compares the user's modulation data with another user's modulation data and determines the presence of a human relationship between the user and the other user based on the comparison result.
9. The method of claim 8,
The information of other users having a personal relationship with the user is information included in a contact list stored in a storage space of the computer or a storage space on the web associated with the user, Address, and < RTI ID = 0.0 >
Wherein the generating comprises:
Wherein the at least one piece of information is checked according to control of the application to modulate the at least one piece of information into the predefined type of data.
9. The method of claim 8,
Wherein the modulation data includes a set of data each modulating information of the other users,
When the server does not have the same element according to a result of comparing the elements of the set included in the user's modulation data with the elements of the set included in the modulation data of the other user, Wherein the probability that a relationship exists between the user and the other user is calculated based on the fact that the relationship is determined to be nonexistent or based on the number of identical elements.
9. The method of claim 8,
Wherein the generating comprises:
(N is a natural number) different inputs of each of the other users as input of different one-way functions, and a bit corresponding to an output value of the N different one-way functions in a bit stream of t (t is a natural number) Is set to 1 (or 0) to generate a set of bitstreams corresponding to each of the other users' information as the modulated data.
12. The method of claim 11,
If the bit stream included in the user's modulation data and the bit stream included in the other user's modulation data are compared in the server and there is no identical bit stream, there is no human relationship between the user and the other user Or the probability that a human relationship exists between the user and the other user is calculated based on the number of bitstreams that are equal to each other.
A computer-readable recording medium having recorded therein a program for executing the method according to any one of claims 1 to 12. A system comprising one or more processors,
The one or more processors,
A modulated data receiving unit for receiving modulated data generated in the electronic equipment and transmitted through a network in accordance with control of an application driven in the electronic equipment; and the modulated data includes information of other users having a personal relationship with the user of the electronic equipment, Wherein the device comprises data modulated in a predefined manner using a one-way function under control of the application;
A modulation data management unit for storing and managing the received modulation data in a database in association with the user or the electronic device; And
Comparing the modulated data stored in the database with the first user and the modulated data stored in the database in association with the second user for a first user and a second user associated with the service to be provided; Based on the result of the determination, a personal relationship determining unit determining whether a human relationship exists between the first user and the second user,
≪ / RTI >
15. The method of claim 14,
The information of other users having a personal relationship with the user is information included in a contact list stored in a storage space of the electronic device or a storage space on the web associated with the user, An e-mail address,
Wherein the at least one information is identified and modulated with the predefined type of data according to control of the application at the electronic device.
15. The method of claim 14,
Wherein the modulation data includes a set of data each modulating information of the other users,
The human-
When the elements of the set included in the modulation data of the first user and the elements of the set included in the modulation data of the second user are compared with each other so that the same element does not exist between the first user and the second user, And determines the probability that there is a human relationship between the first user and the second user based on the number of the same elements.
15. The method of claim 14,
Wherein each of the information of the other users is applied as input of N (where N is a natural number) different one-way functions, and t is set to 1 (or 0) corresponding to an output value of the N different one- t is a natural number) bits,
Wherein the modulation data comprises a set of bit streams corresponding to each of the information of the other users.
18. The method of claim 17,
The human-
Comparing a bitstream included in the modulated data of the first user with a bitstream contained in the modulated data of the second user, and if the same bitstream does not exist, a human relationship between the first user and the second user Or calculates the probability that a human relationship exists between the first user and the second user based on the number of identical bitstreams.
A system comprising one or more processors,
The one or more processors,
A modulated data generation unit for modulating information of other users having a personal relationship with a user in a predefined manner using a one-way function in accordance with control of an application to be driven and generating modulated data; And
A modulated data transmission unit for transmitting the generated modulated data to a server via a network under the control of the application,
Lt; / RTI >
Wherein the server compares the user's modulation data with another user's modulation data and determines the presence or absence of a human relationship between the user and the other user based on a result of the comparison.
20. The method of claim 19,
Further comprising a storage space,
The information of other users having a personal relationship with the user may be information contained in a contact list stored in a storage space further included in the system or in a storage space on the web associated with the user, A number, and an e-mail address,
Wherein the modulation data generation unit comprises:
And the at least one information is checked according to control of the application to modulate the at least one information into the predefined type of data.
KR1020150080642A 2015-06-08 2015-06-08 System and method for determining existence of relationship between users KR101728945B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020150080642A KR101728945B1 (en) 2015-06-08 2015-06-08 System and method for determining existence of relationship between users

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020150080642A KR101728945B1 (en) 2015-06-08 2015-06-08 System and method for determining existence of relationship between users

Publications (2)

Publication Number Publication Date
KR20160144178A true KR20160144178A (en) 2016-12-16
KR101728945B1 KR101728945B1 (en) 2017-04-20

Family

ID=57735925

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020150080642A KR101728945B1 (en) 2015-06-08 2015-06-08 System and method for determining existence of relationship between users

Country Status (1)

Country Link
KR (1) KR101728945B1 (en)

Also Published As

Publication number Publication date
KR101728945B1 (en) 2017-04-20

Similar Documents

Publication Publication Date Title
US10614233B2 (en) Managing access to documents with a file monitor
US20180025166A1 (en) Validating computer resource usage
US10148635B2 (en) Systems, apparatuses, methods, and non-transitory computer readable media for authenticating user using history of user
US11188667B2 (en) Monitoring and preventing unauthorized data access
CN106664308B (en) Device authentication prior to enrollment
CN109154968B (en) System and method for secure and efficient communication within an organization
CN109521956B (en) Cloud storage method, device, equipment and storage medium based on block chain
CN105592011A (en) Account login method and account login device
US10601580B2 (en) Secure order preserving string compression
US11928605B2 (en) Techniques for cyber-attack event log fabrication
JP2017045462A (en) System and method for authenticating user by using contact list
CN109522462B (en) Cloud query method, device, equipment and storage medium based on block chain
CN113542405A (en) Block chain-based network communication system, method, device and storage medium
CN111339547B (en) Method for generating data tag, electronic device and computer storage medium
KR101728945B1 (en) System and method for determining existence of relationship between users
CN110232570A (en) A kind of information monitoring method and device
JP2023546131A (en) Client-side device bloom filter mapping
CN113485731A (en) Intelligent contract upgrading method and system for block chain
KR101986690B1 (en) Key chain management method and key chain management system for end-to-end encryption of message
US9858423B2 (en) Application modification based on a security vulnerability
US20230251905A1 (en) Synchronizing computing resources to proceed with a task
US11972525B2 (en) Generating training data through image augmentation
CN111444242B (en) Method for checking data equivalence, electronic device and computer storage medium
CN111787019B (en) Information acquisition method and device based on block chain
US20220376924A1 (en) Header for conveying trustful client address

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E90F Notification of reason for final refusal
E701 Decision to grant or registration of patent right