KR20180094605A - Privacy Preserving Matchmaking Method Using Cloud in Encounter Based Mobile Social Networks and System Therefor - Google Patents

Privacy Preserving Matchmaking Method Using Cloud in Encounter Based Mobile Social Networks and System Therefor Download PDF

Info

Publication number
KR20180094605A
KR20180094605A KR1020170020951A KR20170020951A KR20180094605A KR 20180094605 A KR20180094605 A KR 20180094605A KR 1020170020951 A KR1020170020951 A KR 1020170020951A KR 20170020951 A KR20170020951 A KR 20170020951A KR 20180094605 A KR20180094605 A KR 20180094605A
Authority
KR
South Korea
Prior art keywords
user
interests
public key
matching
encrypted
Prior art date
Application number
KR1020170020951A
Other languages
Korean (ko)
Other versions
KR101945611B1 (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 KR1020170020951A priority Critical patent/KR101945611B1/en
Publication of KR20180094605A publication Critical patent/KR20180094605A/en
Application granted granted Critical
Publication of KR101945611B1 publication Critical patent/KR101945611B1/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
    • G06Q30/00Commerce
    • G06Q30/06Buying, selling or leasing transactions
    • G06Q30/0601Electronic shopping [e-shopping]
    • G06Q30/0613Third-party assisted
    • G06Q30/0619Neutral agent
    • 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/06Buying, selling or leasing transactions
    • G06Q30/08Auctions
    • 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/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/01Social networking
    • G06Q50/30

Landscapes

  • Business, Economics & Management (AREA)
  • Engineering & Computer Science (AREA)
  • Accounting & Taxation (AREA)
  • Finance (AREA)
  • Marketing (AREA)
  • Strategic Management (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Economics (AREA)
  • Development Economics (AREA)
  • Tourism & Hospitality (AREA)
  • General Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Human Resources & Organizations (AREA)
  • Primary Health Care (AREA)
  • Operations Research (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

According to an embodiment of the present invention, a matchmaking method in an encounter-based mobile social network comprises: a step of setting an encounter sharing key; a step of receiving a first matching matter-of-interest set, calculated based on a first matter-of-interest set of a first user and a second matter-of-interest set of a second user, from a second user and encrypting the same with the encounter sharing key to provide the same to the first user; a step of receiving a second matching matter-of-interest set, calculated based on the first matter-of-interest set and the second matter-of-interest set, from the first user and encrypting the same with the encounter sharing key to provide the same to the second user; a step of receiving the number of first matter-of-interest calculated based on the first matching matter-of-interest set from the first user, and receiving the number of second matter-of-interest calculated based on the second matching matter-of-interest set from the second user; and a step of matchmaking the first user and the second user as friends if the received number of first matter-of-interest and the received number of second matter-of-interest are equal.

Description

만남 기반 모바일 소셜 네트워크에서 클라우드를 이용한 프라이버시 보호 매치 메이킹 방법 및 시스템 {Privacy Preserving Matchmaking Method Using Cloud in Encounter Based Mobile Social Networks and System Therefor}[0001] The present invention relates to a privacy matching method and a system for privacy-based privacy matching using a cloud in a mobile-based social network,

본 발명은 프라이버시 보호 매치 메이킹(matchmaking) 기술에 관한 것으로서, 보다 구체적으로 만남 기반 모바일 소셜 네트워크에서 클라우드를 이용한 프라이버시 보호 매치 메이킹 방법 및 시스템에 관한 것이다.BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a privacy protection matchmaking technology, and more particularly, to a privacy protection matchmaking method and system using a cloud in a contact-based mobile social network.

Facebook, LinkedIn, QQ, Twitter와 같은 온라인 소셜 네트워크(OSN) 응용 프로그램들은 사용자가 관계를 형성하기 위해 서로 개인 정보를 교환 할 수 있는 컨텍스트(context) 정보를 사용한다. 이 시나리오에서의 신뢰는 이 사용자들 사이에 이미 존재하는 사회적 관계에 달려 있다.On-line social networking (OSN) applications such as Facebook, LinkedIn, QQ, and Twitter use context information that allows users to exchange personal information with each other to form a relationship. Trust in this scenario depends on the social relationships already existing among these users.

만남 기반 모바일 소셜 네트워크(MSN)는 사용자가 낯선 사람과 동시에 같은 장소를 공유하여 연결을 설정하도록 요구하는 MSN의 특수한 유형이다. 만남 기반 MSN은 이전에 만난 적이 있는 사용자가 나중에 다시 만나기를 원하며 이전에 만난 적이 있는 위치와 시간에 서로를 확인(assure)해야 하는 만남 이력 개념에 기반한다. 예를 들어, 지하철역과 같은 공공 장소에 있는 두 명의 사용자는 서로 간에 대화를 나눌 수 있다. 이러한 네트워크는 특히 낮은 대역폭을 필요로 하는 시스템에 적합하다. 이것은 일반적으로 더 높은 대역폭을 필요로 하는 전통적인 OSN과는 대조적이다.Contact-based mobile social networks (MSN) are a special type of MSN that requires users to share the same place with a stranger and set up a connection. Contact-based MSN is based on the contact history concept, where users who have previously met will want to meet again later and must assure each other at the location and time that they have previously met. For example, two users in a public place such as a subway station can talk to each other. Such networks are particularly well suited for systems requiring low bandwidth. This is in contrast to traditional OSNs, which typically require higher bandwidth.

만남 기반 MSN은 부재 중 연결(missed-connection) 서비스의 주요 구성 요소로 사용된다. MSN과 만남 기반 소셜 네트워크는 기존 소셜 네트워크와 매우 유사하지만 완전히 다른 종류의 문제를 제기한다. 이러한 다른 종류의 문제는 주로 네트워크의 참가자들이 그들 사이에 어떤 사전 신뢰도 공유하지 않기 때문에 발생한다.The contact-based MSN is used as a major component of the missed-connection service. Meeting with MSN-based social networks is very similar to existing social networks, but raises a completely different kind of problem. This other kind of problem occurs mainly because participants in the network do not share any prior credibility among them.

MSN의 가장 유명하고 일반적인 응용 프로그램 중 하나는 프로필 또는 관심사 매치 메이킹이다. 만남 기반 소셜 네트워크는 동일한 위치를 동시에 공유하는 사람들은 비슷한 관심사를 공유 할 가능성이 높다는 점에서 이 응용 프로그램에 가장 적합하다. 프로필 매치 메이킹 중 사용자는 성공적인 매치를 위해 자신의 개인 정보를 제공해야 한다. 그러나, 이 정보가 공개되면 사용자의 프라이버시에 큰 위협이 될 수 있다. One of MSN's most popular and common applications is profile or interest matchmaking. Contact-based social networks are best suited for this application because people who share the same location at the same time are likely to share similar interests. During profile matchmaking, the user must provide his or her personal information for a successful match. However, disclosure of this information can pose a great threat to user privacy.

기존 기술에 대한 일 예로, SmokeScreen에 의해 제안된 기술은 사용자의 만남 이력을 활용하는 "부재 중 연결" 기반 프로토콜로, 이 방식은 만남 기반 MSN에서 프로필 매칭을 위한 초기 노력으로 생각될 수 있다. As an example of the existing technology, the technique proposed by SmokeScreen is an "out-of-office" based protocol that utilizes the user's contact history, which can be thought of as an initial effort for profile matching in contact-based MSN.

기존 기술에 대한 다른 일 예로, SMILE에 의해 제안된 기술은 SmokeScreen의 고급 버전으로, 서버가 어떤 쌍의 사용자가 만났는지 알 수 없지만, 조잡한(coarse grained) 프로필 매치 메이킹을 제공한다.As another example of the existing technology, the technique proposed by SMILE is an advanced version of SmokeScreen that provides coarse grained profile matchmaking, although the server does not know which pair of users it has met.

기존 기술에 대한 또 다른 일 예로, Mohaien 등에 의해 제안된 기술은 만남 기반 MSN의 보안 및 기능 요구 사항을 조사한 다음, 나중에 이러한 요구 사항을 SMILE과 비교하여 short-comings을 찾는다. 그들은 향상된 프로토콜을 제안한다고 주장하지만, 인증을 위해 일반 사진을 사용하고 그들의 프로토콜은 프라이버시가 보호된다고 주장한다.As another example of the existing technology, the technique proposed by Mohaien et al. Looks at the security and functional requirements of the contact-based MSN and later compares these requirements to SMILE to find short-comings. They claim to propose an enhanced protocol, but use plain photos for authentication and claim that their protocols are privacy protected.

또 다른 기술로, 만남을 공유하는 사용자들은 만남 키를 설정하고, 이러한 키를 사용하여 이벤트 설명을 암호화한다. 나중의 이벤트에서, 사용자는 이전 만남 이력을 확인하여 동일한 이전 이벤트를 공유한 사용자를 찾는다.In another technique, users sharing an encounter set up an encounter key, and use these keys to encrypt the event description. In a later event, the user checks the previous encounter history and finds the user who shared the same previous event.

본 발명에서는 만남 기반 MSN을 위한 프라이버시를 보호하는 세밀한(fine-grained) 관심사 매치 메이킹 프로토콜을 제공한다. The present invention provides a fine-grained interest matchmaking protocol that protects privacy for contact-based MSN.

본 발명의 실시예들은, 만남 기반 모바일 소셜 네트워크에서 클라우드를 이용한 프라이버시 보호 매치 메이킹 방법 및 시스템을 제공한다.Embodiments of the present invention provide a method and system for privacy matchmaking using a cloud in a contact-based mobile social network.

본 발명의 일 실시예에 따른 만남 기반 모바일 소셜 네트워크에서 매치 메이킹 방법은 만남 공유 키를 설정하는 제1 단계; 제1 사용자의 공개키로 암호화된 상기 제1 사용자의 제1 관심사 세트를 상기 제1 사용자로부터 수신하고, 상기 만남 공유 키로 암호화한 후 제2 사용자로 제공하는 제2 단계; 상기 제1 사용자의 공개키로 암호화된 상기 제1 관심사 세트와 상기 제2 사용자에 의해 설정된 제2 관심사 세트에 기초하여, 계산된 제1 매칭 관심사 세트를 상기 제2 사용자로부터 수신하고 상기 만남 공유 키로 암호화하여 상기 제1 사용자에게 제공하는 제3 단계; 상기 제2 사용자의 공개키로 암호화된 상기 제1 관심사 세트와 상기 제2 관심사 세트에 기초하여, 계산된 제2 매칭 관심사 세트를 상기 제1 사용자로부터 수신하고 상기 만남 공유 키로 암호화하여 상기 제2 사용자에게 제공하는 제4 단계; 상기 제1 매칭 관심사 세트에 기초하여 계산된 제1 관심사 수를 상기 제1 사용자로부터 수신하고, 상기 제2 매칭 관심사 세트에 기초하여 계산된 제2 관심사 수를 상기 제2 사용자로부터 수신하는 제5 단계; 및 상기 수신된 제1 관심사 수와 상기 제2 관심사 수가 동일한 경우 상기 제1 사용자와 상기 제2 사용자를 친구로 매치 메이킹하는 제6 단계를 포함한다.In a contact-based mobile social network according to an exemplary embodiment of the present invention, a matchmaking method includes a first step of setting a contact sharing key; Receiving from the first user a first set of interests of the first user encrypted with a public key of a first user, encrypting the first set of interests with the contact sharing key, and providing the second set of interests to a second user; Receiving a computed first set of matching interests from the second user based on the first set of interests encrypted with the first user's public key and the second set of interests set by the second user and encrypting To the first user; Receiving a computed second set of matching interests from the first user based on the first set of interests and the second set of interests encrypted with the public key of the second user and encrypting the second set of matching interests with the contact sharing key, A fourth step of providing; A fifth step of receiving from the first user a first number of interests calculated based on the first set of matching interests and receiving from the second user a second number of interests calculated based on the second set of matching interests, ; And a sixth step of matching the first user and the second user as a friend when the received first interest number and the second interest number are the same.

상기 제3 단계는 상기 제1 사용자의 공개키로 암호화된 상기 제1 관심사 세트와 상기 제2 관심사 세트에 기초하여, 계산된 상기 제1 매칭 관심사 세트와 상기 제2 사용자의 공개키로 암호화된 상기 제2 관심사 세트를 수신하고, 상기 제1 매칭 관심사 세트와 상기 제2 사용자의 공개키로 암호화된 상기 제2 관심사 세트를 상기 만남 공유 키로 암호화하여 상기 제1 사용자에게 제공할 수 있다.Wherein the third step comprises: based on the first set of interests and the second set of interests encrypted with the first user ' s public key, calculating the first set of matching interests and the second And to encrypt the second set of interests encrypted with the first matching interest set and the public key of the second user with the contact sharing key to provide the first set of interests to the first user.

상기 제3 단계는 상기 제2 사용자 단말에서 상기 제2 관심사 세트를 상기 제1 사용자의 공개키로 암호화하고 상기 제1 사용자의 공개 키로 암호화된 상기 제1 관심사 세트와 상기 제2 관심사 세트에 기초하여 제1 결과 세트를 계산하며, 상기 제1 결과 세트의 색인들을 상기 제1 사용자의 공개 키로 셔플하고, 상기 제1 사용자의 공개 키로 셔플된 제1 결과 세트에 기초하여 매칭된 상기 제1 매칭 관심사 세트를 획득함으로써, 상기 제2 사용자로부터 상기 제1 매칭 관심사 세트를 수신할 수 있다.Wherein the third step comprises encrypting the second set of interests at the second user terminal with the public key of the first user and generating a second set of interests based on the first set of interests and the second set of interests encrypted with the public key of the first user, 1 result set, shuffling the indexes of the first result set with the public key of the first user, and matching the first matching interest set that is matched based on the first result set shuffled with the public key of the first user To receive the first set of matching interests from the second user.

상기 제4 단계는 상기 제1 사용자 단말에서 상기 제1 관심사 세트를 상기 제2 사용자의 공개키로 암호화하고 상기 제2 사용자의 공개 키로 암호화된 상기 제1 관심사 세트와 상기 제2 관심사 세트에 기초하여 제2 결과 세트를 계산하며, 상기 제2 결과 세트의 색인들을 상기 제2 사용자의 공개 키로 셔플하고, 상기 제2 사용자의 공개 키로 셔플된 제2 결과 세트에 기초하여 매칭된 상기 제2 매칭 관심사 세트를 획득함으로써, 상기 제1 사용자로부터 상기 제2 매칭 관심사 세트를 수신할 수 있다.Wherein the fourth step comprises encrypting the first set of interests at the first user terminal with the public key of the second user and generating a second interest set based on the first set of interests and the second set of interests encrypted with the second user & 2 result set, shuffling the indexes of the second result set with the public key of the second user, and matching the second matching interest set based on the second result set shuffled with the public key of the second user To receive the second set of matching interests from the first user.

상기 제3 단계는 상기 제2 사용자 단말에서 상기 제1 사용자로부터 수신된 위치 좌표와 시간 정보에 기초하여 상기 제1 사용자의 공개키와 상기 제1 관심사 세트를 획득하고, 상기 획득된 제1 사용자의 공개키와 상기 제1 관심사 세트를 이용하여 상기 제1 매칭 관심사 세트를 계산함으로써, 상기 제2 사용자로부터 상기 제1 매칭 관심사 세트를 수신할 수 있다.Wherein the third step acquires the first user's public key and the first set of interests based on the position coordinates and time information received from the first user at the second user terminal, The first matching interest set may be received from the second user by calculating the first matching interest set using the public key and the first set of interests.

나아가, 본 발명의 일 실시예에 따른 만남 기반 모바일 소셜 네트워크에서 매치 메이킹 방법은 상기 제1 사용자와 상기 제2 사용자가 친구로 매치 메이킹되면 상기 제1 사용자의 관심사를 상기 제1 사용자로부터 수신하여 상기 제2 사용자로 제공하고 상기 제2 사용자의 관심사를 상기 제2 사용자로부터 수신하여 상기 제1 사용자로 제공하는 제7 단계를 더 포함할 수 있다.Further, in a contact-based mobile social network according to an exemplary embodiment of the present invention, a match-making method includes receiving a first user's interest from the first user when the first user and the second user are matched with a friend, And a seventh step of providing the second user as a second user and receiving the interest of the second user from the second user and providing the received first user as the first user.

본 발명의 일 실시예에 따른 만남 기반 모바일 소셜 네트워크에서 매치 메이킹 시스템은 클라우드 서버를 포함하고, 상기 클라우드 서버는 만남 공유 키를 설정하며, 제1 사용자의 공개키로 암호화된 상기 제1 사용자의 제1 관심사 세트를 상기 제1 사용자로부터 수신하고, 상기 만남 공유 키로 암호화한 후 제2 사용자로 제공하며, 상기 제1 사용자의 공개키로 암호화된 상기 제1 관심사 세트와 상기 제2 사용자에 의해 설정된 제2 관심사 세트에 기초하여, 계산된 제1 매칭 관심사 세트를 상기 제2 사용자로부터 수신하고 상기 만남 공유 키로 암호화하여 상기 제1 사용자에게 제공하며, 상기 제2 사용자의 공개키로 암호화된 상기 제1 관심사 세트와 상기 제2 관심사 세트에 기초하여, 계산된 제2 매칭 관심사 세트를 상기 제1 사용자로부터 수신하고 상기 만남 공유 키로 암호화하여 상기 제2 사용자에게 제공하며, 상기 제1 매칭 관심사 세트에 기초하여 계산된 제1 관심사 수를 상기 제1 사용자로부터 수신하고, 상기 제2 매칭 관심사 세트에 기초하여 계산된 제2 관심사 수를 상기 제2 사용자로부터 수신하며, 상기 수신된 제1 관심사 수와 상기 제2 관심사 수가 동일한 경우 상기 제1 사용자와 상기 제2 사용자를 친구로 매치 메이킹하는 것을 특징으로 한다.In the contact-based mobile social network according to an embodiment of the present invention, the matchmaking system includes a cloud server, the cloud server sets a contact sharing key, and the first user's first key encrypted with the public key of the first user Receiving a set of interests from the first user, encrypting the set of interests with the contact sharing key, and providing the second set of interests to a second user; and setting the first interest set encrypted with the public key of the first user and the second interest set by the second user The first set of interests encrypted with the public key of the second user and the second set of interests encrypted with the second user's public key, Receiving a second set of matching interests from the first user based on a second set of interests, Wherein the first number of interests is computed based on the first set of matching interests, and the second number of interests is computed based on the second set of matching interests, And the first user and the second user are matched as a friend when the number of the first interests and the number of interests are equal to each other.

본 발명의 실시예들에 따르면, 만남 기반 MSN을 위한 프라이버시를 보호하는 세밀한(fine-grained) 관심사 매치 메이킹 프로토콜을 제공할 뿐만 아니라 클라우드 서버를 중개 요소로 사용할 수 있다.According to embodiments of the present invention, not only can a fine-grained interest matchmaking protocol be used to protect privacy for contact-based MSN, but also a cloud server can be used as an intermediary.

본 발명의 실시예들에 따르면, 만남 기반 MSN 사용자 간의 프라이버시 보존 매칭 메이킹을 제공함으로써, 만난 사용자 간에 세밀한(interest wise) 매치 메이킹을 제공할 수 있다.According to embodiments of the present invention, privacy-preserving matching make-up between contact-based MSN users is provided, thereby providing interest-wise matchmaking among the users who are encountered.

본 발명의 실시예들에 따르면, 만남 단계에서 사용자의 관심사와 관련된 정보가 공개되지 않고, 사용자는 공유 키를 설정하고 만남 설명만 교환함으로써, 프라이버시를 보호할 수 있다.According to the embodiments of the present invention, information related to the user's interest is not disclosed at the contact step, and the user can protect the privacy by setting the shared key and exchanging only the meeting description.

본 발명의 실시예들에 따르면, 만남을 공유한 사용자만이 나중에 매치 메이킹 프로토콜을 실행할 수 있으며, 확장성, 견고함 및 신뢰성을 염두에 두고 클라우드 서버를 사용한다. 클라우드 기반 서버는 사용자 간 중개자 역할을 하고, 사용자는 여기에 그들의 암호화된 관심사와 만남 정보를 게시한다. 즉, 클라우드 서버는 중개자 역할만 함으로써, 사용자가 게시한 데이터로부터 유익한 정보를 추론하지 않는다.According to embodiments of the present invention, only a user who has shared a meeting can later execute a matchmaking protocol and uses a cloud server with scalability, robustness, and reliability in mind. The cloud-based server acts as an intermediary between users, where users post their encrypted interests and contact information. In other words, the cloud server only acts as an intermediary, and does not deduce informative information from the data posted by the user.

본 발명의 실시예들에 따르면, 각 사용자는 다른 사용자와 일치하는 관심사의 수만 알고 있을 뿐, 양 당사자가 진행에 동의하는 경우 그들은 그들의 일치된 관심사 값을 드러낸다. 이와 같이, 본 발명은 고유 메커니즘으로 인해 사용자를 속일 수 없으며, 사용자가 부정 행위 시도를 탐지한 경우 범인에 대한 필요한 조치를 취하도록 클라우드 서버에 불만을 제기할 수 있다.According to embodiments of the present invention, each user only knows the number of interests that match the other user, and if both parties agree to proceed, they expose their united interest value. As such, the present invention can not fool the user due to its inherent mechanism, and can complain to the cloud server to take the necessary action on the perpetrator if the user detects a malicious attempt.

도 1은 본 발명에서의 시스템 모델에 대한 예시도를 나타낸 것이다.
도 2는 본 발명의 일 실시예에 따른 매치 메이킹 방법에 대한 동작 흐름도를 나타낸 것이다.
도 3은 본 발명의 방법에 대한 실험 결과를 나타낸 것이다.
1 shows an exemplary diagram of a system model in the present invention.
FIG. 2 is a flowchart illustrating an operation of a matchmaking method according to an embodiment of the present invention.
Figure 3 shows the experimental results for the method of the present invention.

이하, 본 발명에 따른 실시예들을 첨부된 도면을 참조하여 상세하게 설명한다. 그러나 본 발명이 실시예들에 의해 제한되거나 한정되는 것은 아니다. 또한, 각 도면에 제시된 동일한 참조 부호는 동일한 부재를 나타낸다.Hereinafter, embodiments according to the present invention will be described in detail with reference to the accompanying drawings. However, the present invention is not limited to or limited by the embodiments. In addition, the same reference numerals shown in the drawings denote the same members.

본 발명에서는 만남 기반 MSN을 위한 프라이버시를 보호하는 세밀한(fine-grained) 관심사 매치 메이킹 프로토콜을 제공하는 것을 그 요지로 한다.The present invention provides a fine-grained interest match making protocol that protects privacy for a contact-based MSN.

여기서, 본 발명에 따른 기술은, 만남 기반의 MSN 사용자들에게 세밀한 관심사 매치 메이킹을 제공할 뿐만 아니라 클라우드 서버를 중개 요소로 사용할 수 있다.Here, the technology according to the present invention not only provides fine matchmaking to contact-based MSN users, but also can use a cloud server as an intermediary element.

본 발명에서는 만남 기반 MSN 사용자 간의 프라이버시 보존 매칭 메이킹을 제공함으로써, 만난 사용자 간에 세밀한(interest wise) 매치 메이킹을 제공할 수 있다.The present invention provides privacy preservation matching making between contact-based MSN users, thereby providing interest-wise matchmaking among the users who have met.

또한, 만남 단계에서 사용자의 관심사와 관련된 정보가 공개되지 않고, 사용자는 공유 키를 설정하고 만남 설명만 교환함으로써, 프라이버시를 보호할 수 있다.Also, the information related to the user's interest is not disclosed at the meeting stage, and the user can protect the privacy by setting the shared key and exchanging only the meeting description.

또한, 본 발명은 만남을 공유한 사용자만이 나중에 매치 메이킹 프로토콜을 실행할 수 있으며, 확장성, 견고함 및 신뢰성을 염두에 두고 클라우드 서버를 사용한다. 클라우드 기반 서버는 사용자 간 중개자 역할을 하고, 사용자는 여기에 그들의 암호화된 관심사와 만남 정보를 게시한다. 즉, 클라우드 서버는 중개자 역할만 함으로써, 사용자가 게시한 데이터로부터 유익한 정보를 추론하지 않는다.In addition, the present invention allows a user who shares a meeting to execute a matchmaking protocol at a later time, and uses a cloud server with scalability, robustness, and reliability in mind. The cloud-based server acts as an intermediary between users, where users post their encrypted interests and contact information. In other words, the cloud server only acts as an intermediary, and does not deduce informative information from the data posted by the user.

또한, 본 발명에서 각 사용자는 다른 사용자와 일치하는 관심사의 수만 알고 있을 뿐, 양 당사자가 진행에 동의하는 경우 그들은 그들의 일치된 관심사 값을 드러낸다. 이와 같이, 본 발명은 고유 메커니즘으로 인해 사용자를 속일 수 없으며, 사용자가 부정 행위 시도를 탐지한 경우 범인에 대한 필요한 조치를 취하도록 클라우드 서버에 불만을 제기할 수 있다.Also, in the present invention, each user only knows the number of interests that match the other user, and if both parties agree to proceed, they reveal their united interest value. As such, the present invention can not fool the user due to its inherent mechanism, and can complain to the cloud server to take the necessary action on the perpetrator if the user detects a malicious attempt.

본 발명에 대해 설명하기에 앞서, 본 발명에서의 위협 모델, 암호화 및 위치 난독화(obfuscation) 도구에 대해 설명하면 다음과 같다.Before describing the present invention, the threat model, encryption and location obfuscation tool in the present invention will be described as follows.

위협 모델Threat Model

본 발명에 따른 프로토콜은 두 사람이 과거에 만남을 공유했다면 두 사람이 서로 의사 소통 할 수 있게 해준다. 이 컨텍스트(context)에서의 만남은 두 사용자가 어느 정도의 시간 동안 서로 가깝게 있었음을 의미한다. 본 발명은 나중에 프라이버시 보호 매치 메이킹을 제공하는 것으로, 클라우드 서버로부터 정직하지만 호기심을 보이는 행동을 고려한다.The protocol according to the present invention allows two people to communicate with each other if they have had a meeting in the past. The encounter in this context implies that the two users were close to each other for some amount of time. The present invention contemplates honest but curious behavior from the cloud server later in providing privacy protection matchmaking.

따라서, 위협 모델에서는, 클라우드 서버가 사용자의 만남 키 뿐만 아니라 암호화된 관심사도 추론하려고 시도 할 수 있고, 내부 공격자와 외부 공격자 모두를 고려한다.Thus, in the threat model, the cloud server can try to deduce not only the user's contact key but also the encrypted interest, and consider both the internal attacker and the external attacker.

위협 모델에서, 내부 공격자는 시스템의 인증된 사용자로써, 다른 사용자의 관심사를 추론하고 자신의 관심사를 밝히지 않으려고 시도할 수 있다. 반면에, 외부 공격자는 서버의 데이터베이스에 액세스하여 데이터베이스에 있는 데이터의 암호를 해독하려고 시도할 수 있다. 또한 사용자와 클라우드 서버 간의 통신을 도청하려고 하는 공격자를 고려한다. 여기에는 사용자의 위치 프라이버시에 대한 공격이 포함된다.In a threat model, an internal attacker can try to deduce the interests of another user and reveal his / her interests as an authenticated user of the system. On the other hand, an external attacker can attempt to decrypt data in the database by accessing the server's database. Also consider an attacker who tries to eavesdrop on communication between the user and the cloud server. This includes attacks on user location privacy.

본 발명은 셀룰러 서비스 제공자 또는 액세스 포인트와 관련된 위치 공격을 고려하지 않는다. 또한, 서버는 이름, 청구서 수신 주소, 신용 카드 정보, 우편 번호 등과 같은 사용자의 개인 데이터를 가질 수 있다. 이 데이터를 숨기는 것은 이 연구의 범위를 벗어난다. 그러나, 우리 프로토콜에서는 사용자가 매치 메이킹 과정에서 클라우드 서버에 이 정보를 공개하지 않아도 된다.The present invention does not consider location attacks associated with cellular service providers or access points. In addition, the server may have user's personal data such as name, billing address, credit card information, zip code, and the like. Hiding this data is beyond the scope of this study. However, our protocol does not require the user to publish this information to the cloud server during the matchmaking process.

암호 및 위치 Password and location 난독화Obfuscation 도구 tool

본 발명은 매치 메이킹을 위한 만남 키와 paillier 암호화를 설정하기 위해 radio-telepathy 기술을 사용한다. 또한, 위치 프라이버시를 위해 Tor를 사용한다. 이 도구들의 세부 사항은 다음과 같다.The present invention uses radio-telepathy technology to set up contact keys and paillier encryption for matchmaking. Also, Tor is used for position privacy. The details of these tools are as follows.

1) Radio-Telepathy: 본 발명에서, 무선 채널의 특수한 특성을 탐구하는 Radio-Telepathy 기술을 사용한다. 물론, 본 발명에서 매치 메이킹을 위한 만남 키와 paillier 암호화를 설정하기 위한 기술이 Radio-Telepathy 기술로 한정되지 않으며, 이와 관련된 다양한 기술이 적용될 수 있다는 것은 이 기술 분야에 종사하는 당업자에게 있어서 자명하다.1) Radio-Telepathy: In the present invention, a radio-telepathy technology is used to explore the special characteristics of a wireless channel. Of course, it is obvious to those skilled in the art that the technology for setting the contact key and the paillier encryption for the matchmaking in the present invention is not limited to the radio-telepathy technology, and various related technologies can be applied.

2) Paillier Cryptosystem: Paillier 암호화는 확률적 암호 시스템으로, 확률적 암호화에서, 암호화 결과는 확정적이 아니라 확률적이다. 동일한 일반 텍스트는 아래 <수학식 1>과 같이 두 가지 다른 확률적 암호화 프로세스에서 두 개의 서로 다른 암호문에 매핑 될 수 있다.2) Paillier Cryptosystem: Paillier cryptosystem is a probabilistic cryptosystem. In probabilistic cryptosystem, the cryptographic result is not deterministic but probabilistic. The same plain text can be mapped to two different ciphertexts in two different stochastic encryption processes as in Equation (1) below.

[수학식 1][Equation 1]

Figure pat00001
Figure pat00001

3) Tor: 클라우드 서버와 통신하는 동안 사용자의 위치 프라이버시를 보호하기 위해 기술로, Tor는 Union Routing이라고도 알려진 기술이며, 사용자가 익명으로 인터넷을 통해 통신 할 수 있게 해주는 프리-소프트웨어이다.3) Tor: As a technology to protect user's location privacy while communicating with the cloud server, Tor is a technology, also known as Union Routing, which is pre-software that allows users to communicate anonymously over the Internet.

본 발명에 따른 만남 기반 MSN 보호 매치 메이킹 방법에 대해 설명하면 다음과 같다. 먼저, 시스템 모델에 대해 설명한다.The contact-based MSN protection match making method according to the present invention will be described as follows. First, the system model will be described.

시스템 모델System model

본 발명에서의 시스템 모델은 도 1에 도시된 바와 같이 사용자와 클라우드 서버가 존재한다. 여기서, 사용자는 본 발명에 따른 프로토콜 또는 방법에 따라 클라우드 서버와 통신하기 위한 사용자 단말을 포함할 수 있으며, Bluetooth 또는 Wi-Fi와 같은 잘 알려진 인터페이스를 사용하여 서로 통신할 수 있다.The system model according to the present invention includes a user and a cloud server as shown in FIG. Here, the user may include a user terminal for communicating with the cloud server according to the protocol or method according to the present invention, and may communicate with each other using a well-known interface such as Bluetooth or Wi-Fi.

만남 기반 MSN은 사용자에게 서로 만나는 정보만 설정하고 나중에 이 만남 정보를 사용하여 서로 식별하고 통신 할 수 있는 기회를 제공한다. 본 발명의 시스템 모델에서, 만남을 공유한 사용자는 먼저 Bluetooth 또는 Wi-Fi를 사용하여 만남 키를 설정한 후 나중에, 클라우드 서버를 사용하여 세밀한 매치 메이킹을 위해 개인 정보를 게시한다. 이 때, 사용자 간의 모든 통신은 만남 키에 의해 암호화될 수 있다.The contact-based MSN provides users with the opportunity to set up only the information they meet and later use this contact information to identify and communicate with each other. In the system model of the present invention, a user sharing a meeting first sets an encounter key using Bluetooth or Wi-Fi, and then posts personal information for detailed matchmaking using a cloud server. At this time, all communication between the users can be encrypted by the contact key.

또한, 클라우드 서버는 효율적인 처리와 사실상 무제한적인 저장 기능을 갖추고 있다. 사용자가 게시하고 액세스 한 메시지는 서버의 데이터베이스에 저장되며 보고된 악성 활동을 처리하기 위해 나중에 서버에서 검색 될 수 있다. 사용자는 Tor를 사용하여 실제 위치를 클라우드 서버 및 상대방에게 숨긴다.Cloud servers also have efficient processing and virtually unlimited storage. Messages posted and accessed by users are stored in the server's database and can be retrieved from the server later to handle reported malicious activity. The user uses Tor to hide the actual location from the cloud server and the other party.

본 발명에 따른 기술에서 사용하는 표기법은 아래 <표 1>과 같다.The notation used in the technique according to the present invention is shown in Table 1 below.

Figure pat00002
Figure pat00002

그리고, 본 발명은 다음과 같은 가정은 전제로 할 수 있다.The present invention can be premised on the following assumptions.

첫째, 클라우드 서버와 사용자간에 어떠한 종류의 공모(collusion)를 하지 않는다.First, there is no kind of collusion between the cloud server and the user.

둘째, 사용자들은 그들의 자격 증명 정보를 안전하게 보호한다.Second, users secure their credential information.

셋째, 악성 활동이 있는 경우, 클라우드 서버는 사용자에게 공개 키를 공개하고 악성 당사자를 탐지하기 위해 만남 키를 공개할 것을 요구할 수 있다. 이러한 자격 증명을 표시하지 못하면 시스템에서 사용자 등록이 종료 될 수 있다.Third, in the case of malicious activity, the cloud server may require the user to disclose the public key and disclose the contact key to detect the malicious party. Failure to display these credentials may result in termination of user registration on the system.

도 2는 본 발명의 일 실시예에 따른 매치 메이킹 방법에 대한 동작 흐름도를 나타낸 것으로, 본 발명에 따른 방법은 크게 만남 키 설정 단계와 프로필 매치 메이킹 단계로 구분될 수 있으며, 이에 대해 두 사용자가 Alice와 Bob으로 가정하여 상세히 설명하면 다음과 같다.FIG. 2 is a flowchart illustrating an operation of a matchmaking method according to an embodiment of the present invention. The method according to the present invention can be roughly divided into an encounter key setting step and a profile match making step. And Bob in the following description.

키 설정 단계(Encounter Key 공유Key establishment phase (Encounter Key shared ))

만남 중에 사용자는 나중에 메시지를 암호화하는 데 사용되는 공유 키 (k)를 설정해야 한다. 가까운 거리에서, 사용자의 장치는 Wi-Fi 또는 Bluetooth 인터페이스를 통해 서로를 감지할 수 있다.During the meeting, the user must set up a shared key (k) that is later used to encrypt the message. At close range, your device can detect each other via a Wi-Fi or Bluetooth interface.

여기서, 사용자들 간의 비밀 키는 무선 채널의 본질적인 특성을 이용하여 설정될 수 있다. 무선 채널의 본질적인 특성이란 두 장치 사이의 기본 채널 응답이 고유하고 이들 간의 거리 변화에 따라 빠르게 관련이 없다는 것으로, 본 발명에서는 이와 유사한 방식으로 사용자들 간의 비밀 키를 설정할 수 있다.Here, the secret key between the users can be set using the essential characteristics of the wireless channel. An essential characteristic of a wireless channel is that the basic channel response between the two devices is unique and is not rapidly related to the distance change between them, and in the present invention, a secret key between users can be set in a similar manner.

만남 키 예컨대, 도 1에 도시된 k1과 k2를 설정 한 후에, Alice는 현재 시간 t뿐만 아니라 위치 좌표 (x, y)를 포함하는 만남 설명 메시지를 이웃 피어 즉, Bob으로 브로드캐스팅한다. 이 정보의 해시는 나중에 특정 만남에 대한 검색 기준으로 사용될 수 있다.After setting the encounter key, e. G., K 1 and k 2 shown in FIG. 1, Alice broadcasts an encounter description message containing the location coordinates (x, y) as well as the current time t to the neighboring peer, Bob. The hash of this information can be used later as a search criterion for a specific encounter.

프로필 매치 Profile Match 메이킹Making 단계 step

만남 키 설정 단계를 마친 후에 사용자가 매치 메이킹을 수행한다. 이와 관련하여, 본 발명에 따른 방법은 사용자의 관심사 세트를 정의하는 고유한 방식을 사용한다.After completing the meeting key setting step, the user performs the match making. In this regard, the method according to the invention uses a unique way of defining a set of interests of the user.

서버는 다양한 관심사의 색인 위치를 정의하여 보편적인 관심사 세트를 게시하며, 특정 관심사에는 지정된 색인이 존재한다. 예를 들어, 색인 1은 관심사가 풋볼인 것을 의미하고, 색인 2는 관심사가 독서인 것을 의미할 수 있다. 관심사를 나타내기 위해, 사용자는 해당 색인 비트를 1 또는 0으로 설정할 수 있으며, 아래 <표 2>는 관심사 세트에 대한 예와 이에 상응하는 두 명의 사용자 세트를 나타낸 것이다.The server publishes a set of universal interests by defining index locations of various interests, and there are designated indexes for particular interests. For example, Index 1 means that interest is football, and Index 2 means that interest is reading. To indicate interest, the user can set the index bit to 1 or 0, and Table 2 below shows an example of a set of interests and a corresponding set of two users.

Figure pat00003
Figure pat00003

표 2에 도시된 바와 같이, 사용자 1의 관심사는 풋볼이고, 사용자 2의 관심사는 풋볼과 독서인 것을 의미한다.As shown in Table 2, user 1's interest is football and user 2's interest is football and reading.

매치 메이킹을 수행하기 위해 사용자는 사용자의 paillier 공개 키 및 과금 정보 등을 포함하는 자신의 자격 증명을 클라우드 서버에 제공함으로써, 클라우드 서버에 자격 증명을 등록한다. paillier 키는 이후에 클라우드 서버에 의해 서명된다. 그런 다음, 클라우드 서버는 시스템에 사용자 계정을 생성하고 사용자에게 사용자 이름 및 암호와 같은 일부 로그인 자격 증명을 제공한다. 또한, 클라우드 서버는 만남 키 설정 단계에서 사용자가 브로드캐스팅하는 해시 만남 정보로 공개 검색이 가능한 사용자에게 사서함을 할당할 수도 있다. 이러한 프로필 매치 메이킹 단계는 4 개의 하위 단계로 구성될 수 있으며, 이에 대해 설명한다.To perform the matchmaking, the user registers his credentials with the cloud server by providing his or her credentials, including the user's public key and billing information, to the cloud server. The paillier key is then signed by the cloud server. The cloud server then creates a user account on the system and provides the user with some login credentials, such as a user name and password. In addition, the cloud server may allocate the mailbox to the public searchable user with the hash contact information broadcasting by the user in the contact key setting step. This profile matchmaking step may be composed of four sub-steps, which will be described.

매치 match 메이킹Making 제 1 단계(matchmaking phase 1) The first stage (matchmaking phase 1)

1) 우선, Alice는 미리 설정된 관심사 세트

Figure pat00004
에 따라 관심사 세트
Figure pat00005
를 관심사로 설정한다.1) First, Alice sets a predefined set of interests
Figure pat00004
Set of interests according to
Figure pat00005
As an interest.

2) Alice는 암호화된 관심사 세트를 구성하기 위해 자신의 관심사인

Figure pat00006
를 그녀의 paillier 공개 키로 암호화한다.2) Alice uses her own interests to construct an encrypted set of interests
Figure pat00006
With her paillier public key.

3) Alice가 다음의 정보를 클라우드 서버에 게시하고, Bob은 클라우드 서버를 통해 클라우드 서버에 게시된 정보를 수신한다. 본 발명에서는 만남 키 공유 단계에서 Alice가 Bob과 설정한 키를 k라고 가정한다.3) Alice publishes the following information to the cloud server, and Bob receives the information posted to the cloud server through the cloud server. In the present invention, it is assumed that the key set by Alice with Bob is k in the meeting key sharing step.

Figure pat00007
Figure pat00007

매치 match 메이킹Making 제2 단계(matchmaking phase 2) The second stage (matchmaking phase 2)

4) Bob은 만남 중에 수신된 (x, y, t) 값의 해시를 취한 다음 클라우드 서버를 검색한다. 해당하는 h(x, y, t)와 성공적으로 매칭시키고, 결과적으로 h(k)와 매칭시키면, Bob은 Alice의 paillier 공개 키와 암호화된 Alice의 관심사를 해독하고 찾는다. 즉, Bob은 매칭 결과를 이용하여 Alice의 공개 키와 암호화된 Alice의 관심사를 알 수 있다.4) Bob takes a hash of (x, y, t) values received during the encounter and then searches the cloud server. After successfully matching h (x, y, t) with the corresponding h (k), Bob decrypts and finds Alice's paillier public key and encrypted Alice's interest. In other words, Bob can use Alice's public key and Alice's interest in cryptography using matching results.

5) Bob은 그의 관심사 세트 Bi를 Alice 공개 키로 암호화하고

Figure pat00008
를 얻는다. 그러고 나서 Bob은 다음의 값을 계산한다.5) Bob encrypts his interest set B i with the Alice public key
Figure pat00008
. Then Bob computes the following values:

Figure pat00009
Figure pat00009

6) Bob는 색인들을 셔플(shuffle)한다6) Bob shuffles the indexes

Figure pat00010
Figure pat00010

7) 그리고 나서 Bob는, k로 암호화된

Figure pat00011
Figure pat00012
및 결과
Figure pat00013
를 클라우드 서버에 게시하고, 클라우드 서버를 통해 Alice로 제공한다.7) Then Bob sends the encrypted
Figure pat00011
Wow
Figure pat00012
And Results
Figure pat00013
To the cloud server, and provides it to Alice through the cloud server.

8) Alice는

Figure pat00015
를 해독하고
Figure pat00016
세트를 형성한다. 여기서, 각 요소 pi=2는 성공적인 매치를 의미할 수 있다.8) Alice
Figure pat00015
To decipher
Figure pat00016
To form a set. Here, each element pi = 2 may represent a successful match.

9) Alice는 Bob의 공개 키를 이용하여 단계 5부터 단계 7까지 반복하고, 아래와 같이 클라우드 서버에 k로 암호화된

Figure pat00017
를 게시한다.9) Alice repeats step 5 through step 7 using Bob's public key, and encrypts it with k to the cloud server as shown below.
Figure pat00017
.

Figure pat00018
Figure pat00018

10) Bob는

Figure pat00019
를 해독하고 세트 Qi를 형성한다. 여기서, 각 요소 qi=2는 성공적인 매치를 의미할 수 있다.10) Bob
Figure pat00019
And forms a set Q i . Here, each element q i = 2 may represent a successful match.

매치 match 메이킹Making 제3 단계(matchmaking phase 3) The third stage (matchmaking phase 3)

11) 이 단계에서, Alice와 Bob은 일치하는 관심사의 수를 보여줌으로써 둘 중 하나의 일치하는 관심 분야가 동일한 지를 확인한다.11) At this stage, Alice and Bob show the number of matching interests to ensure that one of the two matching interests is the same.

12) Alice는 아래와 같이 일치하는 관심사 수의 해시를 게시하여 약속을 수행한다.12) Alice performs the appointment by posting a hash of the number of interests that matches.

Figure pat00020
Figure pat00020

13) Bob은

Figure pat00021
를 해독 한 후에 찾아낸 매칭된 관심사의 수를 표시한다.13) Bob
Figure pat00021
Lt; RTI ID = 0.0 &gt; decoded &lt; / RTI &gt;

Figure pat00022
Figure pat00022

14) Alice는 매칭된 관심사의 수를 게시한다.14) Alice publishes the number of matched interests.

Figure pat00023
Figure pat00023

15) 만약

Figure pat00024
이면, 파티 중 하나가 속임수를 썼다는 것이고, 희생자가 클라우드 서버에 이 사실을 보고하면 레코딩을 검토하여 악성 상대방을 찾는다.15) If
Figure pat00024
, One of the parties has cheated, and if the victim reports this to the cloud server, he reviews the recording and looks for the malicious party.

16) 만약

Figure pat00025
이면, 당사자들은 이제 친구가 될 수 있다.16) If
Figure pat00025
, Then the parties can now become friends.

매치 match 메이킹Making 제4 단계(matchmaking phase 4) The fourth stage (matchmaking phase 4)

17) 이 단계에서, 양 당사자는 서로에게 실제 관심사를 표현한다(또는 드러낸다).17) At this stage, both parties express (or expose) their real interests to each other.

18) Alice는 클라우드 서버에

Figure pat00026
의 해시를 게시하여 약속을 수행한다.18) Alice on the cloud server
Figure pat00026
And publishes the hash of the hash.

Figure pat00027
Figure pat00027

19) Bob는 클라우드 서버에

Figure pat00028
를 게시한다.19) Bob on the cloud server
Figure pat00028
.

Figure pat00029
Figure pat00029

20) Alice는 클라우드 서버에

Figure pat00030
를 게시한다.20) Alice on the cloud server
Figure pat00030
.

Figure pat00031
Figure pat00031

Alice와 Bob은 색인에 표시된 값 들의 도움으로 동일한 매치를 가졌음을 확인할 수 있다. 속임수가 발생한 경우, 희생자는 기록을 클라우드 서버에 보고하고, 클라우드 서버는 필요한 조치를 취하고 속임수를 쓴 당사자가 시스템에 더 참여할 수 없도록 차단한다.Alice and Bob can confirm that they have the same match with the help of the values shown in the index. If cheating occurs, the victim reports the record to the cloud server, the cloud server takes the necessary action, and blocks the cheater from participating in the system.

이와 같이, 본 발명의 실시예에 따른 매치 메이킹 방법은 클라우드 서버를 중개 요소로 사용하고, 만남 기반 MSN을 위한 프라이버시를 보호하는 세밀한(fine-grained) 관심사 매치 메이킹 제공함으로써, 만난 사용자 간에 세밀한(interest wise) 매치 메이킹을 제공할 수 있다.As described above, the matchmaking method according to the embodiment of the present invention provides fine-grained interest match making that uses the cloud server as an intermediary element and protects the privacy for the contact-based MSN, wise) matchmaking.

또한, 본 발명의 실시예에 따른 매치 메이킹 방법은 만남 단계에서 사용자의 관심사와 관련된 정보가 공개되지 않고, 사용자는 공유 키를 설정하고 만남 설명만 교환함으로써, 프라이버시를 보호할 수 있다.Also, in the matchmaking method according to the embodiment of the present invention, information related to the user's interest is not disclosed at the contact step, and the user can protect privacy by setting a shared key and exchanging only the meeting description.

또한, 본 발명의 실시예에 따른 매치 메이킹 방법은 만남을 공유한 사용자만이 나중에 매치 메이킹 프로토콜을 실행할 수 있으며, 확장성, 견고함 및 신뢰성을 염두에 두고 클라우드 서버를 사용한다. 클라우드 기반 서버는 사용자 간 중개자 역할을 하고, 사용자는 여기에 그들의 암호화된 관심사와 만남 정보를 게시한다.Also, in the matchmaking method according to the embodiment of the present invention, only a user who has shared a meeting can execute a matchmaking protocol at a later time, and uses a cloud server in consideration of scalability, robustness, and reliability. The cloud-based server acts as an intermediary between users, where users post their encrypted interests and contact information.

또한, 본 발명의 실시예에 따른 매치 메이킹 방법은 각 사용자는 다른 사용자와 일치하는 관심사의 수만 알고 있을 뿐, 양 당사자가 진행에 동의하는 경우 그들은 그들의 일치된 관심사 값을 드러낸다. 이와 같이, 본 발명은 고유 메커니즘으로 인해 사용자를 속일 수 없으며, 사용자가 부정 행위 시도를 탐지한 경우 범인에 대한 필요한 조치를 취하도록 클라우드 서버에 불만을 제기할 수 있다.In addition, the matchmaking method according to the embodiment of the present invention reveals only the number of interests that each user matches with other users, and if they agree to proceed, they display their united interest value. As such, the present invention can not fool the user due to its inherent mechanism, and can complain to the cloud server to take the necessary action on the perpetrator if the user detects a malicious attempt.

도 3은 본 발명의 방법에 대한 실험 결과를 나타낸 것으로, paillier 기반 암호화, 암호 해독 및 최대 500 개의 관심사 값(1과 0)의 추가적인 homomorphic 연산으로 구현되며, 평균 실행 시간을 얻기 위해 시뮬레이션을 100 회 실행한 실험 결과를 나타낸 것이다.FIG. 3 shows experimental results for the method of the present invention, which is implemented by paillier-based encryption, decryption and additional homomorphic operations of up to 500 interest values (1 and 0), and simulation is performed 100 times The experimental results are shown.

도 3을 통해 알 수 있듯이, 본 발명에 따른 방법은 500 개의 관심사에 대한 실행 시간은 약 2 초인 것을 알 수 있으며, 본 발명에 따른 매치 메이킹 프로토콜은 실시간 처리를 필요로 하지 않는다는 사실을 고려하면 충분한 성능을 발휘하는 것을 알 수 있다.3, it can be seen that the method according to the present invention has a run time of about 2 seconds for 500 interests, and considering that the matchmaking protocol according to the present invention does not require real- It can be seen that it exerts the performance.

아래 <표 3>은 본 발명에 따른 방법과 기존의 만남 기반 매치 메이킹 방법을 비교한 것으로, SMILE 방법과 Mohaien 방법은 거친 매치 메이킹만을 제공한 반면 본 발명의 방법은 세밀한 매치 메이킹을 제공한다.Table 3 below compares the method according to the present invention with the existing contact-based matchmaking method. The SMILE method and the Mohaien method provide only coarse matchmaking, while the method of the present invention provides detailed matchmaking.

그리고, SMILE 방법은 프라이버시를 보호하지만 방법은 키가 시나리오에서 브로드캐스팅되고 개시자 근처의 공격자들이 개시자와의 만남을 공유한 사람이라고 주장 할 수 있기 때문에 위장 공격(impersonation attach)를 방지할 수 없고, Mohaien 방법은 위장 공격을 방지할 수 있지만 사용자의 인증된 사진을 사용하고 검색 엔진은 누구나 사진을 검색하여 그 사람에 대한 세부 정보를 얻을 수 있기 때문에 프라이버시를 보호할 수 없다. 반면, 본 발명의 방법은 위장 공격을 방지하면서 프라이버시를 보호할 수 있다. And while the SMILE method protects privacy, the method can not prevent impersonation attach because it can be claimed that the key is broadcast in the scenario and the attackers near the initiator share the meeting with the initiator , The Mohaien method can prevent camouflage attacks, but can not protect privacy because users can use authenticated photos and search engines can retrieve details about the person by searching for photos. On the other hand, the method of the present invention can protect privacy while preventing camouflage attacks.

ParametersParameters SMILESMILE MohaienMohaien 본 발명Invention Fine-grainedFine-grained XX XX OO Impersonation attack
Prevention
Impersonation attack
Prevention
XX OO OO
Privacy preservationPrivacy preservation OO XX OO

이러한 본 발명에 따른 프로토콜은 사용자 단말들과 클라우드 서버를 포함하는 시스템으로 구성될 수 있다.The protocol according to the present invention can be configured as a system including user terminals and a cloud server.

클라우드 서버는 사용자 단말들 간의 프라이버시 보호 매치 메이킹을 수행하는 서버로, 상술한 내용을 모두 포함할 수 있다.The cloud server is a server for performing privacy protection matchmaking between user terminals, and may include all of the above contents.

즉, 클라우드 서버는 만남 공유 키를 설정하며, 제1 사용자 예를 들어, Alice의 공개키로 암호화된 상기 제1 사용자의 제1 관심사 세트를 상기 제1 사용자로부터 수신하고, 상기 만남 공유 키로 암호화한 후 제2 사용자 예를 들어, Bob로 제공하며, 상기 제1 사용자의 공개키로 암호화된 상기 제1 관심사 세트와 상기 제2 사용자에 의해 설정된 제2 관심사 세트에 기초하여, 계산된 제1 매칭 관심사 세트를 상기 제2 사용자로부터 수신하고 상기 만남 공유 키로 암호화하여 상기 제1 사용자에게 제공하며, 상기 제2 사용자의 공개키로 암호화된 상기 제1 관심사 세트와 상기 제2 관심사 세트에 기초하여, 계산된 제2 매칭 관심사 세트를 상기 제1 사용자로부터 수신하고 상기 만남 공유 키로 암호화하여 상기 제2 사용자에게 제공하며, 상기 제1 매칭 관심사 세트에 기초하여 계산된 제1 관심사 수를 상기 제1 사용자로부터 수신하고, 상기 제2 매칭 관심사 세트에 기초하여 계산된 제2 관심사 수를 상기 제2 사용자로부터 수신하며, 상기 수신된 제1 관심사 수와 상기 제2 관심사 수가 동일한 경우 상기 제1 사용자와 상기 제2 사용자를 친구로 매치 메이킹한다.That is, the cloud server sets up a contact sharing key and receives from the first user a first set of interests of the first user encrypted with a first user, e.g., Alice's public key, encrypts it with the contact sharing key Providing a second set of matching interests to a second user, e.g. Bob, based on the first set of interests encrypted with the first user &apos; s public key and the second set of interests set by the second user A second set of interests encrypted with the second user &apos; s public key, the second set of interests encrypted with the second user &apos; s public key, Receiving a set of interests from the first user and encrypting them with the contact sharing key to provide the second set of users with the set of interests, Receiving a first number of interests calculated from the first user and a second number of interests calculated based on the second set of matching interests from the second user, If the number of interests is the same, the first user and the second user are matched as friends.

여기서, 상기 클라우드 서버는 상기 제1 사용자의 공개키로 암호화된 상기 제1 관심사 세트와 상기 제2 관심사 세트에 기초하여, 계산된 상기 제1 매칭 관심사 세트와 상기 제2 사용자의 공개키로 암호화된 상기 제2 관심사 세트를 수신하고, 상기 제1 매칭 관심사 세트와 상기 제2 사용자의 공개키로 암호화된 상기 제2 관심사 세트를 상기 만남 공유 키로 암호화하여 상기 제1 사용자에게 제공할 수 있다.Wherein the cloud server is configured to encrypt the first matching interest set calculated based on the first set of interests and the second set of interests encrypted with the public key of the first user, 2 interest set and encrypt the second set of interests encrypted with the first set of matching interests and the public key of the second user with the contact shared key to provide the first set of interests to the first user.

이 때, 상기 클라우드 서버는 상기 제2 사용자 단말에서 상기 제2 관심사 세트를 상기 제1 사용자의 공개키로 암호화하고 상기 제1 사용자의 공개 키로 암호화된 상기 제1 관심사 세트와 상기 제2 관심사 세트에 기초하여 제1 결과 세트를 계산하며, 상기 제1 결과 세트의 색인들을 상기 제1 사용자의 공개 키로 셔플하고, 상기 제1 사용자의 공개 키로 셔플된 제1 결과 세트에 기초하여 매칭된 상기 제1 매칭 관심사 세트를 획득함으로써, 상기 제2 사용자로부터 상기 제1 매칭 관심사 세트를 수신할 수 있다.Wherein the cloud server encrypts the second set of interests at the second user terminal with the first user &apos; s public key, and based on the first set of interests and the second set of interests encrypted with the first user & Calculating a first set of results by shuffling the indexes of the first result set with the first user &apos; s public key and comparing the first matching set of interests based on the first result set shuffled with the first user & To obtain the first matching interest set from the second user.

이 때, 상기 클라우드 서버는 상기 제1 사용자 단말에서 상기 제1 관심사 세트를 상기 제2 사용자의 공개키로 암호화하고 상기 제2 사용자의 공개 키로 암호화된 상기 제1 관심사 세트와 상기 제2 관심사 세트에 기초하여 제2 결과 세트를 계산하며, 상기 제2 결과 세트의 색인들을 상기 제2 사용자의 공개 키로 셔플하고, 상기 제2 사용자의 공개 키로 셔플된 제2 결과 세트에 기초하여 매칭된 상기 제2 매칭 관심사 세트를 획득함으로써, 상기 제1 사용자로부터 상기 제2 매칭 관심사 세트를 수신할 수 있다.Wherein the cloud server encrypts the first set of interests at the first user terminal with the public key of the second user, and based on the first set of interests and the second set of interests encrypted with the public key of the second user, Calculating a second result set based on the second result set shuffled with the public key of the second user, shuffling the indexes of the second result set with the public key of the second user, To obtain the second matching interest set from the first user.

이 때, 상기 클라우드 서버는 상기 제2 사용자 단말에서 상기 제1 사용자로부터 수신된 위치 좌표와 시간 정보에 기초하여 상기 제1 사용자의 공개키와 상기 제1 관심사 세트를 획득하고, 상기 획득된 제1 사용자의 공개키와 상기 제1 관심사 세트를 이용하여 상기 제1 매칭 관심사 세트를 계산함으로써, 상기 제2 사용자로부터 상기 제1 매칭 관심사 세트를 수신할 수 있다.At this time, the cloud server obtains the first user's public key and the first set of interests based on the position coordinates and time information received from the first user at the second user terminal, The first matching interest set may be received from the second user by calculating the first matching interest set using the user's public key and the first set of interests.

나아가, 상기 클라우드 서버는 상기 제1 사용자와 상기 제2 사용자가 친구로 매치 메이킹되면 상기 제1 사용자의 관심사를 상기 제1 사용자로부터 수신하여 상기 제2 사용자로 제공하고 상기 제2 사용자의 관심사를 상기 제2 사용자로부터 수신하여 상기 제1 사용자로 제공할 수 있다.Further, the cloud server may receive the interest of the first user from the first user and provide the second user as the friend if the first user and the second user are matched as a friend, And may receive from the second user and provide it to the first user.

물론, 본 발명에 따른 시스템은 상술한 도 1 내지 도 4에서의 내용을 모두 포함할 수 있으며, 사용자(또는 사용자 단말)에서의 동작과 클라우드 서버에서의 동작에 대한 모든 내용을 포함할 수 있다.Of course, the system according to the present invention may include all of the contents of FIG. 1 through FIG. 4 described above and may include all the operations at the user (or the user terminal) and the operations at the cloud server.

이상에서 설명된 시스템 또는 장치는 하드웨어 구성요소, 소프트웨어 구성요소, 및/또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 시스템, 장치 및 구성요소는, 예를 들어, 프로세서, 콘트롤러, ALU(arithmetic logic unit), 디지털 신호 프로세서(digital signal processor), 마이크로컴퓨터, FPA(field programmable array), PLU(programmable logic unit), 마이크로프로세서, 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 하나 이상의 범용 컴퓨터 또는 특수 목적 컴퓨터를 이용하여 구현될 수 있다. 처리 장치는 운영 체제(OS) 및 상기 운영 체제 상에서 수행되는 하나 이상의 소프트웨어 애플리케이션을 수행할 수 있다. 또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다. 이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술분야에서 통상의 지식을 가진 자는, 처리 장치가 복수 개의 처리 요소(processing element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다. 예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 콘트롤러를 포함할 수 있다. 또한, 병렬 프로세서(parallel processor)와 같은, 다른 처리 구성(processing configuration)도 가능하다.The system or 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 systems, devices, and components described in the embodiments may be implemented in various forms such as, for example, a processor, a controller, an arithmetic logic unit (ALU), a digital signal processor, a microcomputer, a field programmable array ), 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.

소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상 장치(virtual equipment), 컴퓨터 저장 매체 또는 장치, 또는 전송되는 신호 파(signal wave)에 영구적으로, 또는 일시적으로 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.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.

실시예들에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.The method according to embodiments may be implemented in the form of a program instruction that may 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 &gt; 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 (12)

만남 공유 키를 설정하는 제1 단계;
제1 사용자의 공개키로 암호화된 상기 제1 사용자의 제1 관심사 세트를 상기 제1 사용자로부터 수신하고, 상기 만남 공유 키로 암호화한 후 제2 사용자로 제공하는 제2 단계;
상기 제1 사용자의 공개키로 암호화된 상기 제1 관심사 세트와 상기 제2 사용자에 의해 설정된 제2 관심사 세트에 기초하여, 계산된 제1 매칭 관심사 세트를 상기 제2 사용자로부터 수신하고 상기 만남 공유 키로 암호화하여 상기 제1 사용자에게 제공하는 제3 단계;
상기 제2 사용자의 공개키로 암호화된 상기 제1 관심사 세트와 상기 제2 관심사 세트에 기초하여, 계산된 제2 매칭 관심사 세트를 상기 제1 사용자로부터 수신하고 상기 만남 공유 키로 암호화하여 상기 제2 사용자에게 제공하는 제4 단계;
상기 제1 매칭 관심사 세트에 기초하여 계산된 제1 관심사 수를 상기 제1 사용자로부터 수신하고, 상기 제2 매칭 관심사 세트에 기초하여 계산된 제2 관심사 수를 상기 제2 사용자로부터 수신하는 제5 단계; 및
상기 수신된 제1 관심사 수와 상기 제2 관심사 수가 동일한 경우 상기 제1 사용자와 상기 제2 사용자를 친구로 매치 메이킹하는 제6 단계
를 포함하는 만남 기반 모바일 소셜 네트워크에서 매치 메이킹 방법.
A first step of setting a contact sharing key;
Receiving from the first user a first set of interests of the first user encrypted with a public key of a first user, encrypting the first set of interests with the contact sharing key, and providing the second set of interests to a second user;
Receiving a computed first set of matching interests from the second user based on the first set of interests encrypted with the first user's public key and the second set of interests set by the second user and encrypting To the first user;
Receiving a computed second set of matching interests from the first user based on the first set of interests and the second set of interests encrypted with the public key of the second user and encrypting the second set of matching interests with the contact sharing key, A fourth step of providing;
A fifth step of receiving from the first user a first number of interests calculated based on the first set of matching interests and receiving from the second user a second number of interests calculated based on the second set of matching interests, ; And
A sixth step of matching the first user and the second user to each other as a friend when the received first interest number is equal to the second interest number
Based mobile social network including a mobile communication network.
제1항에 있어서,
상기 제3 단계는
상기 제1 사용자의 공개키로 암호화된 상기 제1 관심사 세트와 상기 제2 관심사 세트에 기초하여, 계산된 상기 제1 매칭 관심사 세트와 상기 제2 사용자의 공개키로 암호화된 상기 제2 관심사 세트를 수신하고, 상기 제1 매칭 관심사 세트와 상기 제2 사용자의 공개키로 암호화된 상기 제2 관심사 세트를 상기 만남 공유 키로 암호화하여 상기 제1 사용자에게 제공하는
것을 특징으로 하는 만남 기반 모바일 소셜 네트워크에서 매치 메이킹 방법.
The method according to claim 1,
In the third step,
Receiving the calculated first set of matching interests and the second set of interests encrypted with the public key of the second user based on the first set of interests and the second set of interests encrypted with the public key of the first user , Encrypting the first set of matching interests and the second set of interests encrypted with the public key of the second user with the contact sharing key and providing the encrypted set to the first user
Wherein the match-making method is based on a contact-based mobile social network.
제1항에 있어서,
상기 제3 단계는
상기 제2 사용자 단말에서 상기 제2 관심사 세트를 상기 제1 사용자의 공개키로 암호화하고 상기 제1 사용자의 공개 키로 암호화된 상기 제1 관심사 세트와 상기 제2 관심사 세트에 기초하여 제1 결과 세트를 계산하며, 상기 제1 결과 세트의 색인들을 상기 제1 사용자의 공개 키로 셔플하고, 상기 제1 사용자의 공개 키로 셔플된 제1 결과 세트에 기초하여 매칭된 상기 제1 매칭 관심사 세트를 획득함으로써, 상기 제2 사용자로부터 상기 제1 매칭 관심사 세트를 수신하는
것을 특징으로 하는 만남 기반 모바일 소셜 네트워크에서 매치 메이킹 방법.
The method according to claim 1,
In the third step,
Encrypting the second set of interests with the public key of the first user at the second user terminal and calculating a first result set based on the first set of interests and the second set of interests encrypted with the public key of the first user And obtaining the first set of matching interests based on the first set of results shuffled with the first user's public key by shuffling the indexes of the first set of results with the public key of the first user, 2 receiving the first set of matching interests from a user
Wherein the match-making method is based on a contact-based mobile social network.
제1항에 있어서,
상기 제4 단계는
상기 제1 사용자 단말에서 상기 제1 관심사 세트를 상기 제2 사용자의 공개키로 암호화하고 상기 제2 사용자의 공개 키로 암호화된 상기 제1 관심사 세트와 상기 제2 관심사 세트에 기초하여 제2 결과 세트를 계산하며, 상기 제2 결과 세트의 색인들을 상기 제2 사용자의 공개 키로 셔플하고, 상기 제2 사용자의 공개 키로 셔플된 제2 결과 세트에 기초하여 매칭된 상기 제2 매칭 관심사 세트를 획득함으로써, 상기 제1 사용자로부터 상기 제2 매칭 관심사 세트를 수신하는
것을 특징으로 하는 만남 기반 모바일 소셜 네트워크에서 매치 메이킹 방법.
The method according to claim 1,
The fourth step
Encrypting the first set of interests with the public key of the second user at the first user terminal and calculating a second result set based on the first set of interests and the second set of interests encrypted with the public key of the second user And obtaining the second set of matching interests based on a second result set shuffled with the second user's public key by shuffling the indexes of the second result set with the public key of the second user, Receiving the second set of matching interests from one user
Wherein the match-making method is based on a contact-based mobile social network.
제1항에 있어서,
상기 제3 단계는
상기 제2 사용자 단말에서 상기 제1 사용자로부터 수신된 위치 좌표와 시간 정보에 기초하여 상기 제1 사용자의 공개키와 상기 제1 관심사 세트를 획득하고, 상기 획득된 제1 사용자의 공개키와 상기 제1 관심사 세트를 이용하여 상기 제1 매칭 관심사 세트를 계산함으로써, 상기 제2 사용자로부터 상기 제1 매칭 관심사 세트를 수신하는
것을 특징으로 하는 만남 기반 모바일 소셜 네트워크에서 매치 메이킹 방법.
The method according to claim 1,
In the third step,
Acquiring the public key of the first user and the first set of interests based on the position coordinates and time information received from the first user at the second user terminal, Receiving a first set of matching interests from the second user by calculating the first set of matching interests using a set of interests
Wherein the match-making method is based on a contact-based mobile social network.
제1항에 있어서,
상기 제1 사용자와 상기 제2 사용자가 친구로 매치 메이킹되면 상기 제1 사용자의 관심사를 상기 제1 사용자로부터 수신하여 상기 제2 사용자로 제공하고 상기 제2 사용자의 관심사를 상기 제2 사용자로부터 수신하여 상기 제1 사용자로 제공하는 제7 단계
를 더 포함하는 것을 특징으로 하는 만남 기반 모바일 소셜 네트워크에서 매치 메이킹 방법.
The method according to claim 1,
If the first user and the second user are matched as a friend, receives the interest of the first user from the first user and provides the second user as the second user, receives the interest of the second user from the second user A seventh step of providing the first user
Based mobile social network. &Lt; RTI ID = 0.0 &gt; 8. &lt; / RTI &gt;
클라우드 서버를 포함하고,
상기 클라우드 서버는
만남 공유 키를 설정하며,
제1 사용자의 공개키로 암호화된 상기 제1 사용자의 제1 관심사 세트를 상기 제1 사용자로부터 수신하고, 상기 만남 공유 키로 암호화한 후 제2 사용자로 제공하며,
상기 제1 사용자의 공개키로 암호화된 상기 제1 관심사 세트와 상기 제2 사용자에 의해 설정된 제2 관심사 세트에 기초하여, 계산된 제1 매칭 관심사 세트를 상기 제2 사용자로부터 수신하고 상기 만남 공유 키로 암호화하여 상기 제1 사용자에게 제공하며,
상기 제2 사용자의 공개키로 암호화된 상기 제1 관심사 세트와 상기 제2 관심사 세트에 기초하여, 계산된 제2 매칭 관심사 세트를 상기 제1 사용자로부터 수신하고 상기 만남 공유 키로 암호화하여 상기 제2 사용자에게 제공하며,
상기 제1 매칭 관심사 세트에 기초하여 계산된 제1 관심사 수를 상기 제1 사용자로부터 수신하고, 상기 제2 매칭 관심사 세트에 기초하여 계산된 제2 관심사 수를 상기 제2 사용자로부터 수신하며,
상기 수신된 제1 관심사 수와 상기 제2 관심사 수가 동일한 경우 상기 제1 사용자와 상기 제2 사용자를 친구로 매치 메이킹하는
것을 특징으로 하는 만남 기반 모바일 소셜 네트워크에서 매치 메이킹 시스템.
Including a cloud server,
The cloud server
Set the contact sharing key,
Receiving from the first user a first set of interests of the first user encrypted with a public key of a first user, encrypting the first set of interests with the contact sharing key and providing it as a second user,
Receiving a computed first set of matching interests from the second user based on the first set of interests encrypted with the first user's public key and the second set of interests set by the second user and encrypting To the first user,
Receiving a computed second set of matching interests from the first user based on the first set of interests and the second set of interests encrypted with the public key of the second user and encrypting the second set of matching interests with the contact sharing key, Provided,
Receiving from the first user a first number of interests computed based on the first set of matching interests, receiving a second number of interests computed based on the second set of matching interests from the second user,
If the received first interest number and the second interest number are the same, matching the first user and the second user as a friend
A matchmaking system in a contact-based mobile social network.
제7항에 있어서,
상기 클라우드 서버는
상기 제1 사용자의 공개키로 암호화된 상기 제1 관심사 세트와 상기 제2 관심사 세트에 기초하여, 계산된 상기 제1 매칭 관심사 세트와 상기 제2 사용자의 공개키로 암호화된 상기 제2 관심사 세트를 수신하고, 상기 제1 매칭 관심사 세트와 상기 제2 사용자의 공개키로 암호화된 상기 제2 관심사 세트를 상기 만남 공유 키로 암호화하여 상기 제1 사용자에게 제공하는
것을 특징으로 하는 만남 기반 모바일 소셜 네트워크에서 매치 메이킹 시스템.
8. The method of claim 7,
The cloud server
Receiving the calculated first set of matching interests and the second set of interests encrypted with the public key of the second user based on the first set of interests and the second set of interests encrypted with the public key of the first user , Encrypting the first set of matching interests and the second set of interests encrypted with the public key of the second user with the contact sharing key and providing the encrypted set to the first user
A matchmaking system in a contact-based mobile social network.
제7항에 있어서,
상기 클라우드 서버는
상기 제2 사용자 단말에서 상기 제2 관심사 세트를 상기 제1 사용자의 공개키로 암호화하고 상기 제1 사용자의 공개 키로 암호화된 상기 제1 관심사 세트와 상기 제2 관심사 세트에 기초하여 제1 결과 세트를 계산하며, 상기 제1 결과 세트의 색인들을 상기 제1 사용자의 공개 키로 셔플하고, 상기 제1 사용자의 공개 키로 셔플된 제1 결과 세트에 기초하여 매칭된 상기 제1 매칭 관심사 세트를 획득함으로써, 상기 제2 사용자로부터 상기 제1 매칭 관심사 세트를 수신하는
것을 특징으로 하는 만남 기반 모바일 소셜 네트워크에서 매치 메이킹 시스템.
8. The method of claim 7,
The cloud server
Encrypting the second set of interests with the public key of the first user at the second user terminal and calculating a first result set based on the first set of interests and the second set of interests encrypted with the public key of the first user And obtaining the first set of matching interests based on the first set of results shuffled with the first user's public key by shuffling the indexes of the first set of results with the public key of the first user, 2 receiving the first set of matching interests from a user
A matchmaking system in a contact-based mobile social network.
제7항에 있어서,
상기 클라우드 서버는
상기 제1 사용자 단말에서 상기 제1 관심사 세트를 상기 제2 사용자의 공개키로 암호화하고 상기 제2 사용자의 공개 키로 암호화된 상기 제1 관심사 세트와 상기 제2 관심사 세트에 기초하여 제2 결과 세트를 계산하며, 상기 제2 결과 세트의 색인들을 상기 제2 사용자의 공개 키로 셔플하고, 상기 제2 사용자의 공개 키로 셔플된 제2 결과 세트에 기초하여 매칭된 상기 제2 매칭 관심사 세트를 획득함으로써, 상기 제1 사용자로부터 상기 제2 매칭 관심사 세트를 수신하는
것을 특징으로 하는 만남 기반 모바일 소셜 네트워크에서 매치 메이킹 시스템.
8. The method of claim 7,
The cloud server
Encrypting the first set of interests with the public key of the second user at the first user terminal and calculating a second result set based on the first set of interests and the second set of interests encrypted with the public key of the second user And obtaining the second set of matching interests based on a second result set shuffled with the second user's public key by shuffling the indexes of the second result set with the public key of the second user, Receiving the second set of matching interests from one user
A matchmaking system in a contact-based mobile social network.
제7항에 있어서,
상기 클라우드 서버는
상기 제2 사용자 단말에서 상기 제1 사용자로부터 수신된 위치 좌표와 시간 정보에 기초하여 상기 제1 사용자의 공개키와 상기 제1 관심사 세트를 획득하고, 상기 획득된 제1 사용자의 공개키와 상기 제1 관심사 세트를 이용하여 상기 제1 매칭 관심사 세트를 계산함으로써, 상기 제2 사용자로부터 상기 제1 매칭 관심사 세트를 수신하는
것을 특징으로 하는 만남 기반 모바일 소셜 네트워크에서 매치 메이킹 시스템.
8. The method of claim 7,
The cloud server
Acquiring the public key of the first user and the first set of interests based on the position coordinates and time information received from the first user at the second user terminal, Receiving a first set of matching interests from the second user by calculating the first set of matching interests using a set of interests
A matchmaking system in a contact-based mobile social network.
제7항에 있어서,
상기 클라우드 서버는
상기 제1 사용자와 상기 제2 사용자가 친구로 매치 메이킹되면 상기 제1 사용자의 관심사를 상기 제1 사용자로부터 수신하여 상기 제2 사용자로 제공하고 상기 제2 사용자의 관심사를 상기 제2 사용자로부터 수신하여 상기 제1 사용자로 제공하는
것을 특징으로 하는 만남 기반 모바일 소셜 네트워크에서 매치 메이킹 시스템.
8. The method of claim 7,
The cloud server
If the first user and the second user are matched as a friend, receives the interest of the first user from the first user and provides the second user as the second user, receives the interest of the second user from the second user The first user
A matchmaking system in a contact-based mobile social network.
KR1020170020951A 2017-02-16 2017-02-16 Privacy Preserving Matchmaking Method Using Cloud in Encounter Based Mobile Social Networks and System Therefor KR101945611B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020170020951A KR101945611B1 (en) 2017-02-16 2017-02-16 Privacy Preserving Matchmaking Method Using Cloud in Encounter Based Mobile Social Networks and System Therefor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020170020951A KR101945611B1 (en) 2017-02-16 2017-02-16 Privacy Preserving Matchmaking Method Using Cloud in Encounter Based Mobile Social Networks and System Therefor

Publications (2)

Publication Number Publication Date
KR20180094605A true KR20180094605A (en) 2018-08-24
KR101945611B1 KR101945611B1 (en) 2019-02-07

Family

ID=63454336

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020170020951A KR101945611B1 (en) 2017-02-16 2017-02-16 Privacy Preserving Matchmaking Method Using Cloud in Encounter Based Mobile Social Networks and System Therefor

Country Status (1)

Country Link
KR (1) KR101945611B1 (en)

Also Published As

Publication number Publication date
KR101945611B1 (en) 2019-02-07

Similar Documents

Publication Publication Date Title
Ma et al. Security flaws in two improved remote user authentication schemes using smart cards
Dong et al. Secure friend discovery in mobile social networks
US7334255B2 (en) System and method for controlling access to multiple public networks and for controlling access to multiple private networks
CN109495250B (en) Quantum-computation-resistant intelligent home communication method and system based on key fob
US20170142082A1 (en) System and method for secure deposit and recovery of secret data
US20140101444A1 (en) Apparatus and method for transmitting data, and recording medium storing program for executing method of the same in computer
WO2019227225A1 (en) Systems and methods for establishing communications via blockchain
JP6138958B2 (en) Drawing management system and drawing management method by fingerprint authentication
CN109495251B (en) Anti-quantum-computation intelligent home cloud storage method and system based on key fob
EP2805298B1 (en) Methods and apparatus for reliable and privacy protecting identification of parties&#39; mutual friends and common interests
US11652629B2 (en) Generating keys using controlled corruption in computer networks
Kaur et al. A Secure Two‐Factor Authentication Framework in Cloud Computing
Maitra et al. An enhanced multi‐server authentication protocol using password and smart‐card: cryptanalysis and design
CN109347626B (en) Safety identity authentication method with anti-tracking characteristic
CN106790037A (en) The instant communication method and system of a kind of User space encryption
Yang et al. Cryptanalysis and improvement of a biometrics-based authentication and key agreement scheme for multi-server environments
CN110933050B (en) Privacy protection position sharing system and method
Wang et al. Secure content sharing protocol for D2D users based on profile matching in social networks
KR101760600B1 (en) A Trustless Broker Based Protocol to Discover Friends in Proximity-Based Mobile Social Network and System Therefor
KR101945611B1 (en) Privacy Preserving Matchmaking Method Using Cloud in Encounter Based Mobile Social Networks and System Therefor
Do et al. Privacy-preserving social network for an untrusted server
Abbas et al. Say hello again: Privacy preserving matchmaking using cloud in encounter based mobile social networks
Kalaiyarasi et al. Enhancing Security and Confidentiality using Trust Based Encryption (DHPKey) in Cloud Computing
Au et al. While mobile encounters with clouds
Singh et al. Exploring the Use of Symmetric Encryption for Remote User-Authentication in Wireless Networks

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
GRNT Written decision to grant