KR101870340B1 - 사용자 서술자를 사용한 소셜 네트워킹 시스템 사용자로의 제3자 통신 - Google Patents

사용자 서술자를 사용한 소셜 네트워킹 시스템 사용자로의 제3자 통신 Download PDF

Info

Publication number
KR101870340B1
KR101870340B1 KR1020157017024A KR20157017024A KR101870340B1 KR 101870340 B1 KR101870340 B1 KR 101870340B1 KR 1020157017024 A KR1020157017024 A KR 1020157017024A KR 20157017024 A KR20157017024 A KR 20157017024A KR 101870340 B1 KR101870340 B1 KR 101870340B1
Authority
KR
South Korea
Prior art keywords
social networking
networking system
user
users
hash
Prior art date
Application number
KR1020157017024A
Other languages
English (en)
Other versions
KR20150090193A (ko
Inventor
고쿨 라자람
안토니오 필리페 가르시아-마르티네즈
브라이언 토마스 볼랜드
니푼 마투르
Original Assignee
페이스북, 인크.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 페이스북, 인크. filed Critical 페이스북, 인크.
Publication of KR20150090193A publication Critical patent/KR20150090193A/ko
Application granted granted Critical
Publication of KR101870340B1 publication Critical patent/KR101870340B1/ko

Links

Images

Classifications

    • H04L51/28
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/40Support for services or applications
    • H04L65/403Arrangements for multi-party communication, e.g. for conferences
    • H04L51/32
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/48Message addressing, e.g. address format or anonymous messages, aliases
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/52User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail for supporting social networking services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/2866Architectures; Arrangements
    • H04L67/30Profiles
    • H04L67/306User profiles

Abstract

타겟 사용자를 식별하는데 외부 시스템에 의해 사용되는 정보를 기초로, 외부 시스템은 메시지와 함께 소셜 네트워킹 시스템으로 통신되는 타겟 사용자 해시 식별자를 생성한다. 소셜 네트워킹 시스템에 의해 관리되는 사용자 프로필로부터의 정보를 사용하여, 소셜 네트워킹 시스템은 그 사용자들에 대한 해시 식별자를 생성하고 소셜 네트워킹 시스템 사용자에 대한 해시 식별자가 생성되는 생성된 해시 식별자와 타겟 사용자 해시 식별자를 비교한다. 소셜 네트워킹 시스템은 타겟 사용자 해시 식별자와 매치하는 사용자 프로필 정보로부터 생성된 해시 식별자와 관련된 사용자에게 메시지를 송신한다. 따라서, 외부 애플리케이션은 소셜 네트워킹 시스템에 의해 관리되는 사용자에 대한 접근 정보에 접근하지 않고 소셜 네트워킹 시스템 사용자들과 통신할 수 있다.

Description

사용자 서술자를 사용한 소셜 네트워킹 시스템 사용자로의 제3자 통신{THIRD-PARTY COMMUNICATIONS TO SOCIAL NETWORKING SYSTEM USERS USING USER DESCRIPTORS}
본 발명은 일반적으로 소셜 네트워킹 시스템에서의 통신에 관한 것이며, 더 상세하게는 소셜 네트워킹 시스템의 사용자에 대한 소셜 네트워킹 시스템상의 프레전스(presence)를 가지는 애플리케이션, 페이지 또는 다른 제3자 엔티티로부터의 통신 메시지에 관한 것이다.
소셜 네트워킹 시스템은 그 사용자들 사이의 관계를 관리한다. 추가로, 소셜 네트워킹 시스템은 메시지를 송신하고, 컨텐츠를 공유하며, 소셜 네트워킹 시스템 내에서 관계를 형성함으로써 사용자가 서로 상호작용할 수 있게 해준다. 소셜 네트워킹 시스템의 사용자는 개인 사용자 또는 가령 레스토랑, 소매상, 브랜드 소유자 또는 사업체와 같은 비-개인 엔티티일 수 있다. 이런 비-개인 엔티티는 가령 고객 자원 관리(CRM) 데이터베이스와 같은 사용자 데이터베이스에서 사용자에 대한 정보를 관리할 수 있지만, 이들은 소셜 네트워킹 시스템을 통해 그들의 고객들과 통신하기 위한 간편한 수단을 구비하고 있지 않다.
소셜 네트워킹 시스템은 소셜 네트워킹 시스템 외부의 시스템이 소셜 네트워킹 시스템에서 소셜 네트워킹 시스템 사용자를 개인적으로 식별하는 정보를 공유하지 않고 메시지를 소셜 네트워킹 시스템 사용자에게 통신할 수 있게 해준다. 예컨대, 소셜 네트워킹 시스템 외부의 애플리케이션은 소셜 네트워킹 시스템을 통해 메시지를 애플리케이션 사용자에게 통신할 수 있다. 타겟 사용자를 식별하는데 외부 시스템에 의해 사용되는 정보는 소셜 네트워킹 시스템으로 통신되는 타겟 사용자 해시 식별자를 생성하는데 외부 시스템에 의해 사용된다. 소셜 네트워킹 시스템은 소셜 네트워킹 시스템에 의해 관리되는 사용자 프로필에서의 정보로부터 해시 식별자를 생성한다. 예컨대, 외부 시스템은 타겟 사용자의 해시 식별자 및 해시 식별자를 생성하는데 사용되는 해시 함수와 함께 메시지를 소셜 네트워킹 시스템으로 송신한다. 이후, 소셜 네트워킹 시스템은 해시 함수를 사용자 프로필 데이터에 적용하여 해시 식별자를 생성한다. 타겟 사용자 해시 식별자는 소셜 네트워킹 시스템 사용자에 대한 해시 식별자와 비교되며, 타겟 사용자 해시 식별자와 매치하는 해시 식별자를 생성하는데 사용되는 사용자 프로필과 관련된 정보는 소셜 네트워킹 시스템을 통해 외부 시스템으로부터 타겟 사용자로 정보를 통신하는데 사용된다. 따라서, 소셜 네트워킹 시스템은 외부 애플리케이션이 소셜 네트워킹 시스템에 의해 관리되는 사용자에 대한 정보에 접근하도록 허용하지 않고 외부 시스템이 애플리케이션의 사용자에게 정보를 더 용이하게 제공할 수 있게 해준다.
해시 식별자 및 타겟 사용자 해시 식별자는 임의의 적절한 기술을 사용하여 생성될 수 있다. 예컨대, 일방향 해시 알고리즘(one-way hashing algorithm)이 타겟 사용자를 식별하는데 외부 애플리케이션에 의해 사용되는 정보의 아이템에 적용된다. 사용자를 식별하는데 외부 애플리케이션에 의해 사용되는 정보의 예는 소셜 네트워킹 시스템 식별자, 이메일 주소, 전화번호, 신용카드 번호 및 소셜 보안 번호를 포함한다. 타겟 사용자의 해시 식별자는 사용자를 식별하는데 외부 애플리케이션에 의해 사용되는 정보에 일방향 해시 알고리즘을 적용하여 생성된다. 소셜 네트워킹 시스템은 그 사용자에 대해 관리되는 사용자 프로필로부터의 정보에 일방향 해시 알고리즘을 적용하며 그 결과로 생성된 해시 식별자를 타겟 식별자의 해시 식별자와 비교한다. 따라서, 해시 식별자는 외부 애플리케이션으로 소셜 네트워킹 시스템에 의해 관리되는 추가 사용자 정보를 드러내지 않고 외부 애플리케이션에 의해 식별되는 타겟 사용자와 관련된 사용자 프로필을 식별하는데 사용된다.
특히, 본 발명에 따른 실시예들은 컴퓨터-구현 방법에 관한 첨부된 청구항들에 개시된다.
한 실시예로, 컴퓨터-구현 방법은 소셜 네트워킹 시스템 외부의 애플리케이션으로부터, 한 명 이상의 타겟 사용자에게 애플리케이션에 의해 생성된 메시지를 제공하는 요청을 수신하는 단계; 소셜 네트워킹 시스템에 의해 관리되는 하나 이상의 사용자 프로필에 접근하는 단계; 사용자 프로필의 정보로부터 한 명 이상의 소셜 네트워킹 시스템 사용자에 대한 식별자 해시(identifier hash)를 생성하는 단계; 타겟 사용자에 대한 식별자 해시와 매치하는 한 명 이상의 소셜 네트워킹 시스템 사용자에 대한 하나 이상의 식별자 해시를 선택하는 단계; 및 소셜 네트워킹 시스템을 통해 한 명 이상의 소셜 네트워킹 시스템 사용자에 대한 선택된 식별자 해시와 관련된 소셜 네트워킹 시스템의 사용자들에게 애플리케이션에 의해 생성된 메시지를 제공하는 단계를 포함하며, 상기 요청은 타겟 사용자와 관련된 개인 식별가능한 정보의 데이터 아이템으로부터 생성된 각각의 타겟 사용자에 대한 식별자 해시를 포함하고, 상기 사용자 프로필은 소셜 네트워킹 시스템 사용자에 대한 정보를 포함한다.
특히, 타겟 사용자에 대한 식별자 해시는 타겟 사용자의 개인 식별가능한 정보의 아이템에 대한 일방향 함수이다.
타겟 사용자에 대한 식별자 해시는 타겟 사용자의 개인 식별가능한 정보의 아이템에 대한 암호화 해시일 수 있다.
타겟 사용자의 개인 식별가능한 정보의 아이템은: 소셜 네트워킹 시스템 식별자, 이름, 이메일 주소, 전화번호, SIM(subscriber identity module) 카드 식별자, MAC(media access control) 주소, 신용카드 번호, 소셜 보안 번호 및 이들의 임의의 조합으로 구성된 그룹에서 선택될 수 있다.
사용자 프로필의 정보는: 소셜 네트워킹 시스템 식별자, 이름, 이메일 주소, 전화번호, SIM(subscriber identity module) 카드 식별자, MAC(media access control) 주소, 신용카드 번호, 소셜 보안 번호 및 이들의 임의의 조합으로 구성된 그룹에서 선택될 수 있다.
특히, 소셜 네트워킹 시스템을 통해 한 명 이상의 소셜 네트워킹 시스템 사용자에 대한 선택된 식별자 해시와 관련된 소셜 네트워킹 시스템의 사용자들에게 애플리케이션에 의해 생성된 메시지를 제공하는 단계는: 한 명 이상의 소셜 네트워킹 시스템 사용자에 대한 선택된 식별자 해시와 관련된 소셜 네트워킹 시스템의 사용자들에게 메시지를 직접 전송하는 단계를 포함한다.
바람직하기로, 메시지는 메시지를 생성하는 애플리케이션을 식별한다.
바람직하기로, 소셜 네트워킹 시스템을 통해 한 명 이상의 소셜 네트워킹 시스템 사용자에 대한 선택된 식별자 해시와 관련된 소셜 네트워킹 시스템의 사용자들에게 애플리케이션에 의해 생성된 메시지를 제공하는 단계는: 애플리케이션과 관련된 소셜 네트워킹 시스템의 페이지에 메시지를 게시하는 단계를 포함하며, 상기 메시지는 페이지를 열람하는 선택된 식별자 해시와 관련된 소셜 네트워킹 시스템의 사용자들에게는 보이고 페이지를 열람하는 선택된 식별자 해시와 관련되지 않은 소셜 네트워킹 시스템의 사용자들에게는 보이지 않는다.
또 하나의 실시예로, 본 방법은: 소셜 네트워킹 시스템 외부의 시스템으로부터, 소셜 네트워킹 시스템 외부의 시스템에 의해 생성된 메시지를 한 명 이상의 타겟 사용자에게 제공하는 요청을 수신하는 단계; 소셜 네트워킹 시스템에 의해 관리되는 하나 이상의 사용자 프로필에 접근하는 단계; 사용자 프로필의 정보로부터 한 명 이상의 소셜 네트워킹 시스템 사용자에 대한 식별자 해시를 생성하는 단계; 타겟 사용자에 대한 식별자 해시와 매치하는 한 명 이상의 소셜 네트워킹 시스템 사용자에 대한 하나 이상의 식별자 해시를 선택하는 단계; 및 소셜 네트워킹 시스템 외부의 시스템에 의해 생성된 메시지를 소셜 네트워킹 시스템을 통해 한 명 이상의 소셜 네트워킹 시스템 사용자에 대한 선택된 식별자 해시와 관련된 소셜 네트워킹 시스템의 사용자들에게 제공하는 단계를 포함하며, 상기 요청은 타겟 사용자와 관련된 개인 식별가능한 정보의 데이터 아이템으로부터 생성된 각각의 타겟 사용자에 대한 식별자 해시를 포함하고, 상기 사용자 프로필은 소셜 네트워킹 시스템 사용자에 대한 정보를 포함한다.
특히, 타겟 사용자에 대한 식별자 해시는 타겟 사용자의 개인 식별가능한 정보의 아이템에 대한 일방향 함수이다.
타겟 사용자에 대한 식별자 해시는 타겟 사용자의 개인 식별가능한 정보의 아이템에 대한 암호화 해시일 수 있다.
타겟 사용자의 개인 식별가능한 정보의 아이템은: 소셜 네트워킹 시스템 식별자, 이름, 이메일 주소, 전화번호, SIM(subscriber identity module) 카드 식별자, MAC(media access control) 주소, 신용카드 번호, 소셜 보안 번호 및 이들의 임의의 조합으로 구성된 그룹에서 선택될 수 있다.
사용자 프로필의 정보는: 소셜 네트워킹 시스템 식별자, 이름, 이메일 주소, 전화번호, SIM(subscriber identity module) 카드 식별자, MAC(media access control) 주소, 신용카드 번호, 소셜 보안 번호 및 이들의 임의의 조합으로 구성된 그룹에서 선택될 수 있다.
특히, 소셜 네트워킹 시스템 외부의 시스템에 의해 생성된 메시지를 소셜 네트워킹 시스템을 통해 한 명 이상의 소셜 네트워킹 시스템 사용자에 대한 선택된 식별자 해시와 관련된 소셜 네트워킹 시스템의 사용자들에게 제공하는 단계는: 한 명 이상의 소셜 네트워킹 시스템 사용자에 대한 선택된 식별자 해시와 관련된 소셜 네트워킹 시스템의 사용자들에게 메시지를 직접 전송하는 단계를 포함한다.
바람직하기로, 메시지는 메시지를 생성하는 소셜 네트워킹 시스템 외부의 시스템을 식별한다.
바람직하기로, 소셜 네트워킹 시스템 외부의 시스템에 의해 생성된 메시지를 소셜 네트워킹 시스템을 통해 한 명 이상의 소셜 네트워킹 시스템 사용자에 대한 선택된 식별자 해시와 관련된 소셜 네트워킹 시스템의 사용자들에게 제공하는 단계는: 소셜 네트워킹 시스템 외부의 시스템과 관련된 소셜 네트워킹 시스템의 페이지에 메시지를 게시하는 단계를 포함하며, 상기 메시지는 페이지를 열람하는 선택된 식별자 해시와 관련된 소셜 네트워킹 시스템의 사용자들에게는 보이고 페이지를 열람하는 선택된 식별자 해시와 관련되지 않은 소셜 네트워킹 시스템의 사용자들에게는 보이지 않는다.
바람직하기로, 요청은 각각의 타겟 사용자에 대한 식별자 해시를 생성하는데 사용되는 해시 함수의 설명(description)을 더 포함한다.
바람직하기로, 해시 함수의 설명은 타겟 사용자에 대한 식별자 해시를 생성하는데 사용되는 타겟 사용자와 관련된 개인 식별가능한 정보의 아이템의 타입을 식별한다.
또 하나의 실시예로, 본 방법은 소셜 네트워킹 시스템 외부의 시스템의 운영자에 의해 지불되는 요금을 결정하며, 요금은 선택된 식별자 해시와 관련된 사용자의 수에 의해 결정된다.
본 발명의 내용 중에 포함되어 있다.
도 1은 한 실시예에 따라 소셜 네트워킹 시스템을 포함하는 시스템 환경의 일실시예의 블록 다이어그램이다.
도 2는 한 실시예에 따라 소셜 네트워킹 시스템에 의해 관리되는 소셜 그래프의 예이다.
도 3은 외부 비즈니스 시스템으로부터의 정보를 사용하여 소셜 네트워킹 시스템의 사용자에게 메시지를 제공하기 위한 예시적인 방법의 흐름도이다.
도 4는 외부 시스템과 관련되고 소셜 네트워킹 시스템에 의해 관리되는 페이지로의 게시물 내 사용자 정보를 포함하는 예를 도시한다.
도 5는 한 실시예에 따라 소셜 네트워킹 시스템 사용자와 직접 통신되는 외부 시스템으로부터의 메시지의 예이다.
도면들은 단지 예로서 본 발명의 다양한 실시예들을 도시한다. 당업자는 하기의 설명을 통해 본 명세서에 나타난 구성 및 방법의 대안적인 실시예들이 본 명세서에 기술된 본 발명의 원리에서 벗어남이 없이 이용될 수 있음을 용이하게 인식할 것이다.
개요
도 1은 소셜 네트워킹 시스템(100)을 포함하는 시스템 환경의 일실시예의 블록 다이어그램이다. 소셜 네트워킹 시스템(100)은 네트워크(120)를 통해 사용자 장치(110) 및 외부 시스템(130)과 통신한다. 네트워크(120)는 무선 네트워크, 유선 네트워크 또는 네트워크 타입의 조합을 포함할 수 있고, 임의의 적절한 통신 프로토콜 또는 프로토콜의 조합을 사용하여 교환될 수 있는, 사용자 장치(110), 외부 시스템(130) 및/또는 소셜 네트워킹 시스템(100) 사이의 통신에 대한 채널을 제공한다.
도 1은 하나의 사용자 장치(110)를 도시하지만, 실제로는 복수의 사용자 장치(110)가 소셜 네트워킹 시스템(100) 및/또는 외부 시스템(130)과 통신한다. 사용자 장치(110)는 가령 스마트폰, 태블릿 컴퓨터, 데스크톱 컴퓨터, 셋톱 박스, 비디오 게임 콘솔, 네트워킹 능력을 가진 텔레비전 및 임의의 다른 적절한 컴퓨팅 시스템과 같은 다양한 컴퓨팅 장치를 포함할 수 있다. 사용자 장치(110)는 소셜 네트워킹 시스템(100)으로부터 소셜 네트워킹 정보를 수신하며, 사용자 장치(110)의 사용자에게 소셜 네트워킹 정보를 제공한다. 또한, 사용자 장치(110)는 사용자 장치(110)의 사용자로부터 사용자 상호작용을 수신하며, 소셜 네트워킹 시스템(100)으로 사용자 상호작용을 전송한다.
소셜 네트워킹 시스템(100)은 소셜 네트워킹 시스템(100)의 다양한 사용자에게 소셜 네트워킹 서비스를 제공한다. 소셜 네트워킹 시스템의 사용자는 소셜 네트워킹 시스템과 통신하기 위한 사용자 장치(110)를 운영한다. 소셜 네트워킹 시스템의 사용자는 개인 및 비-개인 엔티티를 포함한다. 사용자 장치(110)의 사용자는 소셜 네트워킹 시스템(100)에 의해 관리되는 사용자 프로필과 관련되며, 사용자가 소셜 네트워킹 시스템(100)의 다른 사용자들 및 소셜 네트워킹 시스템에 의해 관리되는 객체와의 연결을 형성할 수 있게 해준다. 사용자 프로필을 사용하여, 소셜 네트워킹 시스템(100)은 사용자에게 제시하기 위해 소셜 네트워킹 컨텐츠를 선택한다. 또한, 소셜 네트워킹 시스템(100)은 사용자 프로필을 사용하여 사용자에게 제시하기 위해 광고를 선택할 수 있다.
추가로, 소셜 네트워킹 시스템(100)은 외부 시스템(130)과의 관계 또는 연관을 가지는 소셜 네트워킹 시스템(100)의 사용자에게 외부 시스템(130)에 의해 생성된 메시지를 통신한다. 예컨대, 외부 시스템(130)은 소셜 네트워킹 시스템 사용자에 의해 사용되는 애플리케이션을 제공하므로, 소셜 네트워킹 시스템(100)은 하기에 더 기술되는 바와 같이 애플리케이션으로부터 메시지를 수신하고 사용자에게 메시지를 통신할 수 있다. 애플리케이션은 소셜 네트워킹 시스템(100) 내 임의의 통신 채널을 통해 소셜 네트워킹 시스템(100)의 한 명 이상의 사용자에게 메시지를 분배하기 위해 소셜 네트워크의 페이지 소유자 또는 임의의 다른 비-사용자 엔티티에 의해 운영될 수 있다. 또 다른 예로서, 외부 시스템(130)은 소셜 네트워킹 시스템(100)으로의 홍보 또는 메시지를 수신하도록 고객 관리 시스템 내 특정 고객을 식별할 수 있는 소매상이며, 특정된 고객과 관련된 사용자 프로필을 식별하고 식별된 사용자 프로필을 사용하여 특정 고객으로의 홍보 또는 메시지를 통신한다. 외부 시스템(130)에 의해 생성된 메시지는 특정 사용자에게 전달하기 위해 개인화될 수 있으므로, 소셜 네트워킹 시스템(100)은 외부 시스템(130)으로부터의 정보를 사용하여 특정 사용자와 관련된 사용자 프로필을 식별한다. 이를 통해 외부 시스템(130)은 또한 소셜 네트워킹 시스템(100)의 사용자인 고객 관리 시스템 내 고객에게 메시지를 전송할 수 있다.
메시지 분배를 허용하면서 사용자 개인정보를 관리하기 위해, 외부 시스템(130)은 외부 시스템(130)에 의해 사용되는 정보에 해시 함수를 적용하여 사용자를 식별한다. 그 결과로 생긴 해시 식별자는 소셜 네트워킹 시스템(100)으로 통신되며, 해시 함수를 소셜 네트워킹 시스템(100)에 의해 관리되는 사용자 프로필 내 정보에 적용한다. 외부 시스템(130)으로부터 수신된 해시 식별자는 사용자 프로필 정보로부터 생성된 해시 식별자와 비교된다. 외부 시스템(130)으로부터 수신된 해시 식별자와 매치하는 해시 식별자와 관련된 사용자 프로필이 식별되고 외부 시스템(130)으로부터 식별된 사용자 프로필과 관련된 사용자로 메시지를 통신하는데 사용된다. 이를 통해 외부 시스템(130)은 사용자에게 메시지 또는 컨텐츠를 전파하도록 소셜 네트워킹 시스템(100)을 레버리지할 수 있는 한편, 외부 시스템(130)이 소셜 네트워킹 시스템(100)에 의해 관리되는 사용자에 대한 추가 정보에 접근하는 것을 소셜 네트워킹 시스템(100)이 방지할 수 있게 해준다.
외부 시스템(130)은 사용자로부터 상호작용을 수신하며 사용자에게 컨텐츠를 제공한다. 예컨대, 외부 시스템(130)은 사용자 장치(110)를 통해 컨텐츠를 사용자와 교환하는 애플리케이션을 운영한다. 또 다른 예로서, 외부 시스템(130)은 정보를 그 사용자로 통신하는 컨텐츠 제공자 또는 소매상이다. 일실시예로, 외부 시스템(130)은 그 사용자에 대한 사용자 계정을 관리한다. 사용자 계정은 그 사용자를 개인적으로 식별하는데 외부 시스템(130)에 의해 사용되는 정보를 포함한다. 외부 시스템(130)의 사용자 데이터베이스(134)는 그 사용자를 개인적으로 식별하는데 외부 시스템(130)에 의해 사용되는 정보를 포함한다. 사용자 데이터베이스(134)에 포함된 정보의 예는 소셜 네트워킹 시스템 식별자, 이름, 이메일 주소, 전화번호, SIM(subscriber identity module) 카드 식별자, MAC(media access control) 주소, 신용카드 번호, 소셜 보안 번호 또는 사용자를 식별하는데 적합한 임의의 다른 정보를 포함한다. 일실시예로, 외부 시스템(130)은 사용자가 소셜 네트워킹 시스템(100)으로부터의 계정 정보를 사용하여 외부 시스템(130)에 접근할 수 있게 해준다. 예컨대, 소셜 네트워킹 시스템(100)의 사용자와 관련된 소셜 네트워킹 식별자는 사용자를 식별하는데 외부 시스템(130)에 의해 사용된다; 소셜 네트워킹 시스템은 소셜 네트워킹 시스템(100)이 수신시 사용자와 관련된 사용자 프로필을 검색할 수 있게 해준다. 컨텐츠를 사용자에게 분배하기 위해, 외부 시스템(130)은 하기에 더 기술되는 바와 같이 외부 시스템(130)의 사용자를 식별하는 정보 및 컨텐츠 또는 컨텐츠를 검색하는 링크를 포함하는 요청을 소셜 네트워킹 시스템(100)으로 통신한다.
또한, 외부 시스템(130)은 사용자를 개인적으로 식별하는데 외부 시스템(130)에 의해 사용되는 적어도 하나의 아이템에 해시 함수를 적용하는 해시 모듈(132)을 포함한다. 사용자를 개인적으로 식별하는 아이템으로의 해시 함수의 적용은 사용자와 관련된 해시 식별자를 생성한다. 해시 식별자는 컨텐츠를 통신하는 요청으로 소셜 네트워킹 시스템(100)으로 통신되며, 소셜 네트워킹 시스템(100)에 의해 관리되는 사용자 프로필로부터의 정보에 해시 함수를 적용하여 해시 식별자를 생성한다. 외부 시스템(130)으로부터의 해시 식별자는 사용자 프로필로부터 생성된 해시 식별자와 비교되며, 외부 시스템(130)으로부터의 해시 식별자와 매치하는 해시 식별자와 관련된 사용자 프로필이 식별되고 요청에 포함된 컨텐츠를 분배하는데 사용된다.
해시 함수는 해시 모듈(132)로의 각 입력에 대한 해시 값을 결정하는 임의의 적절한 해시 방법일 수 있다. 해시 방법(hashing method)은 사용자를 식별하는 정보의 아이템을 해시 식별자로 변환하는 임의의 변환 함수일 수 있다. 해시 방법은 가령 체크섬(checksum) 또는 비대칭 암호화 함수와 같은 손실형(lossy), 결정형(deterministic) 및/또는 일방향 함수일 수 있다. 해시 식별자로부터, 해시 방법으로의 입력을 식별하는 것이 암호화적으로 난해할 수 있다. 일실시예로, 외부 시스템(130)으로부터의 요청은 사용되는 해시 함수의 설명을 포함하고, 해시 식별자를 생성하는데 사용되는 정보를 식별하는 사용자의 타입을 표시할 수 있다. 예컨대, 요청은 해시 함수 식별자를 포함하고 식별된 해시 함수로 입력되는 사용자 정보의 타입(예컨대, 이메일 주소, 이름, 신용카드 번호 등)을 명시한다.
일실시예로, 소셜 네트워킹 시스템(100)은 컨텐츠 서버(10), 소셜 그래프 스토어(104), 사용자 식별 모듈(106) 및 해시 모듈(108)을 포함한다. 소셜 그래프 스토어(104)는 소셜 네트워킹 시스템(100)에 의해 관리되는 소셜 네트워킹 시스템 사용자와 다른 객체의 특성을 설명하는 사용자 프로필뿐 아니라 소셜 그래프 스토어(104)에 포함된 사용자와 다른 객체 사이의 연결을 저장한다. 소셜 그래프 스토어(104)에 포함된 객체의 예는 애플리케이션, 이벤트, 그룹, 사업체, 기관 또는 다른 엔티티와 관련된 페이지 또는 다른 적절한 데이터를 포함한다. 예시적인 소셜 그래프 스토어 및 관련 정보 검색은 본 명세서에 전체로서 참조로 통합되는 미국특허 제8,239,364호에 기술된다. 소셜 네트워킹 시스템에 의해 사용자에게 제공되는 컨텐츠("소셜 네트워킹 컨텐츠")는 소셜 그래프 스토어(102) 내 데이터를 기초로 사용자 장치(110)를 통해 사용자에게 제시하기 위해 소셜 그래프 스토어(104) 내 데이터로부터 소셜 네트워킹 컨텐츠를 선택하는 컨텐츠 서버(102)에 의해 관리된다. 예컨대, 사용자는 사용자와 관련된 페이지로 네비게이팅하고 또한 외부 시스템(130)을 운영하는 엔티티 사용자와 관련된 페이지로 네비게이팅할 수 있다. 또 다른 예로서, 개인 사용자는 가령 소셜 네트워킹 시스템(100)에 의해 관리되는 메일박스와 같이 소셜 네트워킹 시스템(100)을 통해 외부 시스템(130)으로부터 직접형 메시지 또는 다른 통신을 수신할 수 있다.
또한, 소셜 네트워킹 시스템(100)은 외부 시스템(130)에 의해 제공된 정보에 해당하는 소셜 네트워킹 시스템 사용자를 식별하는 사용자 식별 모듈(106)을 포함한다. 예컨대, 외부 시스템(130)은 고객 이메일 주소의 해시 리스트(hashed list) 또는 사용자를 식별하는 다른 정보를 제공한다. 사용자 식별 모듈(106)은 소셜 그래프 스토어(104) 내 정보를 기초로 해시 리스트에 해당하는 소셜 네트워킹 시스템 사용자를 식별한다. 일실시예로, 사용자 식별 모듈(106)은 해시 모듈(108)을 사용하여 해시 함수를 소셜 그래프 스토어(104) 내 사용자 프로필로부터의 정보에 적용하며, 해시 함수의 결과를 외부 시스템(130)으로부터의 해시 리스트와 비교한다. 해시 모듈(108)은 외부 시스템(130)의 해시 모듈(132)과 동일한 해시 함수를 수행한다; 일실시예로, 외부 시스템에 의해 사용된 해시 함수는 해시 리스트와 함께 소셜 네트워킹 시스템으로 통신된다. 이 예에서, 해시 모듈(108)은 해시 함수를 소셜 그래프 스토어(104) 내 사용자의 이메일 정보에 적용하여 소셜 네트워킹 시스템 사용자에 대한 해시 식별자를 생성한다. 사용자 식별(106)은 해시 식별자를 해시 리스트와 비교하여 해시 리스트와 매치하는 소셜 네트워킹 시스템 사용자를 식별한다.
따라서, 사용자 식별 모듈(106)은 소셜 네트워킹 시스템(100)이 외부 시스템(130)으로 사용자에 대한 정보를 드러내지 않고 외부 시스템(130)이 소셜 네트워킹 시스템(100)을 통해 사용자와 통신할 수 있게 해준다. 외부 시스템(130)이 해시 사용자 정보를 제공하면, 소셜 네트워킹 시스템(100)은 해시 정보 및 소셜 네트워킹 시스템(100)에 의해 저장된 정보를 기초로 사용자를 식별한다; 이후, 소셜 네트워킹 시스템(100)은 외부 시스템(130)에 대한 해시 정보와 매치하는 그 사용자로 정보를 통신할 수 있다. 해시 정보와 소셜 네트워킹 시스템(100)에 의해 저장된 사용자 정보의 매치는 사용자 정보에 대하여 사용자 개인정보 설정에 의해 관리될 수 있다. 한편, 소셜 네트워킹 시스템에 의해 저장된 사용자 정보는 외부 시스템(130)으로 제공되지 않으며, 더 나아가 소셜 네트워킹 시스템 사용자 개인정보를 관리한다.
사용자 식별 모듈(106)은 외부 시스템(130)에 의해 관리되는 정보를 식별하는 사용자로부터 외부 시스템(130)에 의해 생성된 해시 식별자를 소셜 그래프 스토어(104)에 의해 관리되는 정보로부터 사용자 식별 모듈(106)에 의해 생성된 해시 식별자와 매치한다. 일실시예로, 사용자 식별 모듈(106)은 또한 외부 시스템(130)으로부터 추가 정보를 요청할 수 있거나 외부 시스템(130)으로부터의 해시 식별자에 대한 매치가 없다고 외부 시스템(130)에게 알릴 수 있다. 일실시예로, 사용자 식별 모듈(106)은 외부 시스템(130)에 의해 제공된 고객 정보와 매치하는 모든 사용자에 대한 매치를 표시한다. 이 실시예에서, 사용자 식별 모듈(106)은 이런 방법을 사용하여 외부 시스템(130)이 도달하는 최대 수의 사용자를 제공할 수 있다. 예컨대, 외부 시스템(130)이 "New York"의 도시 및 "John"의 이름을 지정하는 tkydd자 정보로부터 해시 식별자를 생성하면, 사용자 식별 모듈(106)은 외부 시스템(130)으로부터의 해시 식별자와 매치하는 해시 식별자와 관련된 소셜 네트워킹 시스템(100)의 다수의 사용자를 식별할 수 있다. 이 경우, 사용자 식별 모듈(106)은 제한된 수의 매칭하는 사용자에게 메시지를 보낼 수 있거나 그 요청을 전부 거절할 수 있다.
일실시예로, 외부 시스템(130)에 의해 제공되는 정보는 외부 시스템(130)에 의해 제공된 특정 정보 조각이 개별적인 고객에 대하여 지정되는지 여부 또는 정보가 잠재적 사용자 그룹을 설명하는지 여부를 표시한다. 예컨대, 국내 소매상에 의해 운영되는 외부 시스템(130)은 특정 연령대의 여성인 특정 도시에 살고 있는 사용자들을 식별하는 사용자 정보를 선택할 수 있고 선택된 사용자 정보로부터 해시 식별자를 생성할 수 있다. 사용자 정보가 개인보다는 그룹을 명시한다고 표시함으로써, 사용자 식별 모듈(106)은 고객 정보에 대한 다수의 매치를 가능하게 한다.
일실시예로, 사용자 식별 모듈(106)은 매치하는 사용자가 외부 시스템(130)과 관련된 엔티티와 관련되는 소셜 네트워킹 객체와도 또한 연결될 때 외부 시스템(130)으로부터의 해시 식별자를 매치하는 사용자를 식별한다. 예컨대, 외부 시스템(130)은 소셜 그래프 스토어(104)에 저장된 페이지 또는 프로필을 가진 국내 소매상에 의해 운영될 수 있다. 특정 사용자는 소셜 그래프(104)에서 국내 소매상의 페이지 또는 프로필과 연결될 수 있다. 이 실시예에서, 사용자 식별 모듈(106)은 외부 시스템(130)에 의해 제공되는 해시 식별자와 매치하는 사용자 식별 모듈에 의해 생성된 해시 식별자와 관련된 사용자들이 외부 시스템(130)과 관련된 엔티티와 관련되는 페이지 또는 프로필과의 연결을 가지는지를 결정한다. 이 실시예에서, 소셜 그래프 스토어(104)에서 외부 시스템(130)과 관련된 엔티티와의 연결을 가지지 않는 사용자는 사용자 식별 모듈(106)에 의해 식별되지 않는다. 해시 데이터로부터 소셜 네트워킹 시스템 사용자를 식별하는 추가적인 설명은 본 명세서에 전체로서 통합되고 2011년 11월 29일자로 출원된 미국특허출원 제13/306,901호에 더 기술된다.
일실시예로, 외부 시스템(130)은 메시지를 소셜 네트워킹 사용자에게 제공하기 위한 소셜 네트워킹 시스템(100)으로 요금을 지불한다. 요금은 외부 시스템(130)에 의해 제공된 메시지의 수를 기초로 또는 메시지를 수신하는 사용자의 수를 계산함을 기초로 할 수 있다. 요금을 통해 외부 시스템(130)은 외부 시스템(130)과 관련된 소셜 네트워킹 시스템 내 엔티티와 관계를 맺지 않을 수 있는 소셜 네트워킹 시스템(100)의 사용자와 통신할 수 있게 해준다.
소셜 그래프
도 2는 실행할 수 있고/있거나 다른 객체에 의해 실행될 수 있는 소셜 네트워킹 시스템에 의해 관리되는 다양한 객체를 표현하는 다수의 노드(202, 204, 206, 208, 210, 212 및 214)를 포함하는 예시적인 소셜 그래프(200)를 도시한다. 도 2에서, 노드들(202, 204 및 206)은 사용자 객체들을 표현한다. 노드(208)는 외부 웹사이트와 관련된 페이지 객체를 표현하는 한편, 노드(210)는 요리 애플리케이션으로부터의 요리법 객체를 표현한다. 또한, 노드(212)는 비디오 스트리밍 애플리케이션으로부터의 비디오 객체(예컨대, 영화)를 표현하며, 노드(214)는 음악 스트리밍 애플리케이션으로부터의 노래 객체를 표현한다.
소셜 그래프(200) 내 노드들 사이의 에지는 특정 연결 타입을 가질 수 있는 노드들에 해당하는 객체들 사이의 연결을 표현한다. 예컨대, 노드(202)와 노드(204) 사이의 에지(216)는 노드(202)와 노드(204)에 해당하는 사용자들 사이의 관계를 보여주는 "아는 사람(acquaintance)"의 연결 타입을 가진다. 마찬가지로, 노드(202)와 노드(206) 사이의 에지(216)는 노드(202)와 노드(206)에 해당하는 사용자들 사이의 관계를 보여주는 "아는 사람" 타입을 또한 가진다. 또 다른 예에서, "기호(preference)" 연결 타입을 가지는 에지(218)는 노드(202)를 노드(208)와 연결하여 노드(202)에 해당하는 사용자가 노드(208)에 해당하는 페이지 객체를 "좋아요"하거나 선호함을 나타낸다.
에지로 표현되는 연결들은 한 객체가 다른 객체에 대해 수행한 행위로부터 생성될 수 있다. 예컨대, 노드(202)로 표현된 사용자는 노드(210)에 해당하는 요리법 객체에 대해 "준비하다(prepare)" 타입을 가지는 행위를 수행하므로, "준비하다" 연결 타입을 가지는 에지(220)가 노드(202)와 노드(210) 사이에서 생성된다. 마찬가지로, 노드(202)로 표현된 사용자는 노드(214)와 관련된 노래에 대해 "듣기(listen)"의 행위를 수행하여, "듣기"의 연결 타입을 가진 에지(226)가 노드(202)와 노드(214) 사이에서 생성될 수 있게 한다. 도 2에서, 노드(202)에 해당하는 사용자는 또한 노드(212)에 해당하는 영화에 대해 "시청하다(view)" 행위를 수행하므로, "시청하다" 연결 타입을 가진 에지(222)가 노드(202)와 노드(212) 사이에서 생성된다. 다른 행위들의 예는 사용자 프로필에서 객체를 리스트하기, 그룹이나 팬 페이지를 구독하거나 가입하기, 메시지를 다른 소셜 네트워킹 시스템 사용자에게 송신하기, 객체와 관련된 구매를 하기, 컨텐츠 아이템에 대해 코멘트하기 또는 이벤트로의 초대에 응답하기를 포함한다. 따라서, 소셜 그래프(200)는 소셜 네트워킹 시스템(100)이 소셜 네트워킹 시스템(100) 내 객체뿐 아니라 객체들 사이의 관계나 연관을 나타낼 수 있게 해준다.
타겟팅된 게시물
도 3은 외부 비즈니스 시스템으로부터의 정보를 사용하여 소셜 네트워킹 시스템의 사용자에게 메시지를 제공하기 위한 예시적인 방법의 흐름도이다. 이 예시적인 방법은 일실시예로 사용자 식별 모듈(106)에 의해 수행된다. 소셜 네트워킹 시스템은 비즈니스 시스템(130)에 의해 관리되는 식별 정보와 매치하는 소셜 네트워킹 시스템의 사용자에게 메시지를 제공하는 요청을 비즈니스 시스템(130)으로부터 수신(300)한다. 비즈니스 시스템(130)은 가령 식별자 해시와 같은 식별 정보를 소셜 네트워킹 시스템(100)에 제공한다. 메시지 생성 요청은 상술한 바대로 소셜 네트워킹 시스템(100)에 의해 사용자 정보와 매치하는 각각의 사용자가 메시지를 제공받도록 비즈니스 시스템(130)의 다수의 사용자와 관련된 정보를 식별하는 사용자를 포함할 수 있다.
사용자 프로필은 매치용으로 식별 정보로서 사용될 수 있는 사용자 정보를 식별하도록 접근(310)된다. 사용자 정보는 사용자 프로필에서 정보를 표현하는 사용자 프로필 식별자 해시를 생성(320)하는데 사용된다. 사용자 프로필이 접근(310)될 수 있고 사용자 프로필 식별자 해시는 메시지 생성 요청을 수신(300)하기 전에 생성(320)될 수 있다.
사용자는 메시지 생성 요청에서 수신된 해시 식별자(들) 및 사용자 프로필 식별자 해시를 기초로 메시지를 수신하도록 선택(330)된다. 메시지는 선택된 사용자에게 제공하도록 생성(340)된다. 생성된 메시지는 가령 메시지 객체나 다른 직접형 통신과 같은 소셜 네트워킹 객체, 게시물 또는 광고일 수 있다. 소셜 네트워킹 객체는 소셜 그래프(200)에서 선택된 사용자와 관련될 수 있다. 또 다른 방법으로서, 소셜 네트워킹 객체는 선택된 사용자로의 접근을 가능하게 하는 개인정보 설정과 관련될 수 있다. 생성된 메시지는 선택된 사용자(들)에게 제공(350)된다. 생성된 메시지는 예컨대 사용자가 생성되는 메시지 타입과 관련된 소셜 네트워킹 시스템(100)상의 페이지로 네비게이팅할 때 제공될 수 있다. 예컨대, 소셜 네트워킹 시스템의 엔티티의 페이지와 관련된 게시물인 생성된 메시지는 사용자가 엔티티의 페이지에 접근할 때 제공된다. 선택된 타겟팅된 사용자와 관련된 게시물을 관리하기 위해, 소셜 네트워킹 시스템(100)은 선택된 사용자로의 접근을 가능하게 하는 개인정보 설정을 게시물과 연관시킬 수 있다. 게시물에 대한 개인정보 설정(per-post privacy settings)은 본 명세서에 전체로서 참조로 통합되고 2009년 7월 1일자로 출원된 미국특허출원 제12/485,856호에 더 기술된다.
도 4는 외부 시스템(130)과 관련되고 소셜 네트워킹 시스템(100)에 의해 관리되는 페이지로의 게시물에서 사용자 정보를 포함하는 예를 도시한다. 게시물은 태그될 수 있거나, 게시물의 수신자를 선택하기 위한 다른 필터링 기준을 포함할 수 있다. 도 4는 엔티티의 페이지의 사용자 뷰의 예를 도시한다. 도 4에서, 사용자 뷰(300)는 일반 게시물(401)과 타겟팅된 게시물(402)을 제공받는 사용자의 뷰를 도시한다. 일반 게시물(401)은 임의의 특정 열람자를 지정하지 않은 엔티티에 의해 작성된 게시물이며, 엔티티의 페이지를 열람하는 임의의 사용자에게 보인다. 타겟팅된 게시물(402)은 게시물에 제공된 사용자 정보를 기초로 페이지에 접근하는 열람중인 사용자에게 겨냥된다. 예컨대, 외부 시스템(130)은 타겟팅된 게시물(402)을 생성하고 타겟팅된 게시물(402)을 제공받는 사용자와 관련된 해시 식별자를 제공한다. 이 경우, 열람중인 사용자는 해시 식별자가 타겟팅된 메시지(402)와 관련된 해시 식별자와 매치하는 사용자들 중 한 명이다. 그러나, 사용자 뷰는 열람중인 사용자를 식별하지 않는 엔티티에 의해 작성된 타겟팅된 게시물을 보여주지 않는다. 일실시예로, 타겟팅된 게시물(402)은 타겟팅 식별자(403)를 포함한다. 타겟팅된 식별자(403)는 게시물이 열람중인 사용자에게 구체적으로 의도됨을 설명한다. 또 다른 실시예로, 타겟팅된 게시물은 이런 설명을 포함하지 않는다. 따라서, 외부 시스템(130)은 외부 시스템(130)에 의해 관리되는 사용자 식별 정보로부터 외부 시스템(130)에 의해 생성된 해시 식별자를 소셜 네트워킹 시스템에 제공함으로써 소셜 네트워킹 시스템(100)에 의해 관리되는 엔티티의 페이지를 통해 임의의 열람중인 사용자에게 타겟팅된 게시물을 제공할 수 있다.
일실시예로, 엔티티 뷰는 엔티티가 게시물을 제공받는 타겟 사용자와 함께 각각의 타겟팅된 게시물을 열람할 수 있게 해준다. 일실시예로, 엔티티에 의해 열람가능한 타겟 사용자는 가령 외부 시스템(130)에 의해 생성된 해시 식별자와 같이 외부 시스템(130)에 의해 제공되는 사용자 정보로 식별된다.
직접형 메시지(Direct Messaging)
도 5는 일실시예에 따라 소셜 네트워킹 시스템(100)을 통해 특정된 사용자에게 제공되는 메시지(500)의 도면이다. 외부 시스템(130)은 소셜 네트워킹 시스템(100)을 통해 특정된 사용자에게 직접 통신되는 메시지를 생성할 수 있다. 메시지(500)는 외부 시스템(501)의 설명, 속성 정보(attribution information)(502) 및 메시지 컨텐츠(503)를 포함한다. 외부 시스템(401)은 메시지(500)를 사용자에게 제공하는 외부 시스템(130)을 식별한다. 속성 정보(502)는 사용자로 개인화된 메시지의 성질을 설명한다. 예컨대, 속성 정보(502)는 외부 시스템(130)에 의해 소셜 네트워킹 시스템(100)으로 제공되는 사용자 정보를 성질을 설명한다. 일실시예로, 속성 정보(502)는 소셜 네트워킹 시스템(100)이 외부 시스템(130)으로 사용자 정보를 제공하지 않았다고 사용자에게 표시한다. 속성 정보(502)는 예컨대 외부 시스템(130)으로 제공되는 사용자 정보에 대한 정보를 수신하도록 속성 정보를 배회(hover over)하게 하거나 클릭하게 함으로써 상호작용형일 수 있다. 또한, 속성 정보는 메시지를 수신하는 사용자가 외부 시스템(130)으로 사용자 정보에 의해 식별되지 않았다고 표시할 수 있다. 메시지 컨텐츠(503)는 사용자에게 제시되는 외부 시스템(130)으로부터의 컨텐츠를 설명한다.
요약
본 발명의 실시예들의 상기 설명은 설명의 목적으로 제시되었을 뿐, 배타적이거나 개시된 구체적인 형태로 시스템이나 방법을 제한하고자 하는 것은 아니다. 본 발명이 속하는 설명분야에서 통상의 지식을 가진 자라면 상기 개시로부터 다양한 변형 및 변경이 가능함을 인식할 수 있을 것이다.
본 명세서의 일부 부분은 시스템 및 방법의 실시예들을 정보에 대한 동작의 알고리즘적 및 기호적 표현으로 설명한다. 이러한 알고리즘적 설명이나 표현은 본 설명분야에서 통상의 지식을 가진 자들에게 효과적으로 그들의 작업의 실체를 전달하기 위하여 데이터 프로세싱 설명분야에서 통상의 지식을 가진 자에 의하여 공통적으로 사용되는 것이다. 기능적으로, 계산적으로 또는 논리적으로 설명되고 있는 이들 동작은 컴퓨터 프로그램 또는 등가의 전기 회로, 마이크로 코드 등에 의해 구현되는 것으로 이해된다. 또한, 종종 이러한 동작의 배열은 일반성의 손실 없이 모듈로 언급될 수 있는 것으로 확인된다. 설명된 동작 및 그와 관련된 모듈들은 소프트웨어, 펌웨어, 하드웨어 또는 이들의 임의의 조합으로 구현될 수 있을 것이다.
본 명세서에 설명된 임의의 단계들, 동작들 또는 프로세스들은 하나 이상의 하드웨어 또는 소프트웨어 모듈들에 의해 또는 이들과 다른 장치들의 결합에 의해 수행되거나 구현될 수 있다. 일실시예에서, 소프트웨어 모듈은 설명된 단계들, 동작들 또는 프로세스들 일부 또는 전부를 수행하기 위하여 컴퓨터 프로세서에 의해 실행될 수 있는 컴퓨터 프로그램 코드를 포함하는 컴퓨터 판독가능한 매체를 포함하는 컴퓨터 프로그램 제품으로 구현된다.
본 발명의 실시예들은 또한 본 명세서의 동작들을 수행하기 위한 장치와 관련될 수 있다. 이 장치는 요청된 목적을 위하여 구체적으로 구성될 수 있으며/있거나 컴퓨터에 저장된 컴퓨터 프로그램에 의해 선택적으로 활성화되거나 재구성되는 범용 컴퓨팅 장치를 포함할 수 있다. 이런 컴퓨터 프로그램은 비-일시적 유형의 컴퓨터 판독가능한 저장 매체나 컴퓨터 시스템 버스에 결합될 수 있는 전자 명령어를 저장하기에 적절한 임의의 유형의 매체에 저장될 수 있다. 게다가, 본 명세서에서 언급된 임의의 컴퓨팅 시스템들은 단일 프로세서를 포함할 수 있거나, 증가한 컴퓨팅 능력을 위해 다중 프로세서 설계를 채용한 구조일 수 있다.
또한, 본 발명의 실시예들은 본 명세서에 기술된 컴퓨팅 프로세스에 의해 생산된 제품에 관한 것일 수 있다. 이런 제품은 컴퓨팅 프로세스의 처리 결과인 정보를 포함할 수 있으며, 여기서 정보는 비-일시적, 유형의 컴퓨터 판독가능한 저장 매체에 저장되거나 본 명세서에 개시된 컴퓨터 프로그램 제품 또는 다른 데이터 조합의 임의의 실시예를 포함할 수 있다.
마지막으로, 본 명세서에서 사용된 언어는 원칙적으로 읽기 쉬운 지침상의 목적으로 선택되었으며, 발명의 요지를 상세히 설명하거나 제한하려고 선택된 것은 아닐 수 있다. 따라서, 본 발명의 범위는 본 명세서에 의해서가 아니라 본 명세서를 기초로 출원된 임의의 청구범위들에 의해 한정되는 것으로 의도된다. 그러므로, 본 발명의 실시예들에 관한 설명은 하기의 청구범위에 제시된 본 발명의 설명범위의 예시가 되나, 이에 제한되지 않아야 한다.

Claims (21)

  1. 소셜 네트워킹 시스템 외부의 애플리케이션으로부터, 소셜 네트워크 시스템을 통하여 하나 이상의 타겟 사용자에게 전달하기 위한 메시지를 생성하는 요청을 수신하는 단계;
    소셜 네트워킹 시스템에 의해 관리되는 하나 이상의 사용자 프로필에 접근하는 단계;
    소셜 네트워킹 시스템 사용자에 대한 사용자 프로필의 개인 식별 가능한 정보에 명시된 해시 생성 함수를 적용함으로써 하나 이상의 소셜 네트워킹 시스템 사용자 각각에 대한 식별자 해시를 생성하는 단계;
    하나 이상의 타겟 사용자에 대한 수신된 식별자 해시 각각에 대하여, 생성된 식별자 해시가 소셜 네트워킹 시스템 외부의 애플리케이션으로부터 수신된 요청의 타겟 사용자에 대한 수신된 식별자 해시와 매칭되는지 여부를 결정하는 단계; 및
    매칭된다는 결정에 응답하여:
    소셜 네트워킹 시스템에 의하여, 하나 이상의 매칭된 식별자 해시와 연관된 소셜 네트워킹 시스템의 하나 이상의 사용자에게 제공하는 메시지를 생성하는 단계; 및
    소셜 네트워킹 시스템에 의하여, 하나 이상의 매칭된 식별자 해시와 연관된 소셜 네트워킹 시스템의 하나 이상의 사용자에게 생성된 메시지를 제공하는 단계를 포함하고,
    하나 이상의 타겟 사용자는 애플리케이션의 사용자이고, 요청은 생성된 메시지를 위한 메시지 컨텐츠 및 명시된 해시 생성 함수를 사용하여 타겟 사용자와 연관된 개인 식별 가능한 정보의 아이템으로부터 애플리케이션에 의해 생성된 하나 이상의 타겟 사용자 각각에 대한 식별자 해시를 포함하고, 애플리케이션은 개인 식별 가능한 정보의 아이템을 송신하지 않고,
    사용자 프로필은 소셜 네트워킹 시스템 사용자에 대한 정보를 포함하고,
    생성된 메시지는 소셜 네트워킹 시스템 외부의 애플리케이션으로부터의 메시지 컨텐츠를 포함하는 방법.
  2. 제 1 항에 있어서,
    타겟 사용자에 대한 식별자 해시는 타겟 사용자의 개인 식별가능한 정보의 아이템에 대한 일방향 함수인 방법.
  3. 제 1 항에 있어서,
    타겟 사용자에 대한 식별자 해시는 타겟 사용자의 개인 식별가능한 정보의 아이템에 대한 암호화 해시인 방법.
  4. 제 1 항에 있어서,
    타겟 사용자의 개인 식별가능한 정보의 아이템은: 소셜 네트워킹 시스템 식별자, 이름, 이메일 주소, 전화번호, SIM(subscriber identity module) 카드 식별자, MAC(media access control) 주소, 신용카드 번호, 소셜 보안 번호 및 이들의 임의의 조합으로 구성된 그룹에서 선택되는 방법.
  5. 제 1 항에 있어서,
    사용자 프로필의 정보는: 소셜 네트워킹 시스템 식별자, 이름, 이메일 주소, 전화번호, SIM(subscriber identity module) 카드 식별자, MAC(media access control) 주소, 신용카드 번호, 소셜 보안 번호 및 이들의 임의의 조합으로 구성된 그룹에서 선택되는 방법.
  6. 제 1 항에 있어서,
    하나 이상의 소셜 네트워킹 시스템 사용자에 대한 선택된 식별자 해시와 관련된 소셜 네트워킹 시스템의 선택된 사용자들에게 생성된 메시지를 제공하는 단계는:
    하나 이상의 소셜 네트워킹 시스템 사용자에 대한 선택된 식별자 해시와 관련된 소셜 네트워킹 시스템의 하나 이상의 선택된 사용자들에게 생성된 메시지를 직접 전송하는 단계를 포함하는 방법.
  7. 제 1 항에 있어서,
    생성된 메시지는 메시지를 생성하는 애플리케이션을 식별하는 방법.
  8. 제 1 항에 있어서,
    한 명 이상의 소셜 네트워킹 시스템 사용자에 대한 선택된 식별자 해시와 관련된 소셜 네트워킹 시스템의 선택된 사용자들에게 애플리케이션에 의해 생성된 생성된 메시지를 제공하는 단계는:
    애플리케이션과 관련된 소셜 네트워킹 시스템의 페이지에 생성된 메시지를 게시하는 단계를 포함하며,
    생성된 메시지는 페이지를 열람하는 선택된 식별자 해시와 관련된 소셜 네트워킹 시스템의 사용자들에게는 보이고 페이지를 열람하는 선택된 식별자 해시와 관련되지 않은 소셜 네트워킹 시스템의 사용자들에게는 보이지 않는 방법.
  9. 제 1 항에 있어서,
    생성된 메시지는 하나 이상의 소셜 네트워킹 사용자와 연관된 소셜 네트워킹 객체인 방법.
  10. 소셜 네트워킹 시스템 외부의 시스템으로부터, 소셜 네트워크 시스템을 통하여 하나 이상의 타겟 사용자에게 전달하기 위한 메시지를 생성하는 요청을 수신하는 단계;
    소셜 네트워킹 시스템에 의해 관리되는 하나 이상의 사용자 프로필에 접근하는 단계;
    소셜 네트워킹 시스템 사용자에 대한 사용자 프로필의 개인 식별 가능한 정보에 명시된 해시 생성 함수를 적용함으로써 하나 이상의 타겟 사용자 각각에 대한 식별자 해시를 생성하는 단계;
    하나 이상의 타겟 사용자에 대한 수신된 식별자 해시 각각에 대하여, 생성된 식별자 해시가 소셜 네트워킹 시스템 외부의 시스템으로부터 수신된 요청의 타겟 사용자에 대한 수신된 식별자 해시와 매칭되는지 여부를 결정하는 단계; 및
    매칭된다는 결정에 응답하여:
    소셜 네트워킹 시스템에 의하여, 하나 이상의 매칭된 식별자 해시와 연관된 소셜 네트워킹 시스템의 하나 이상의 사용자에게 제공하는 메시지를 생성하는 단계; 및
    소셜 네트워킹 시스템에 의하여, 하나 이상의 매칭된 식별자 해시와 연관된 소셜 네트워킹 시스템의 하나 이상의 사용자에게 생성된 메시지를 제공하는 단계를 포함하고,
    하나 이상의 타겟 사용자는 애플리케이션의 사용자이고, 요청은 생성된 메시지를 위한 메시지 컨텐츠 및 명시된 해시 생성 함수를 사용하여 타겟 사용자와 연관된 개인 식별 가능한 정보의 아이템으로부터 소셜 네트워킹 시스템 외부의 시스템에 의해 생성된 하나 이상의 타겟 사용자 각각에 대한 식별자 해시를 포함하고, 시스템은 개인 식별 가능한 정보의 아이템을 송신하지 않고,
    사용자 프로필은 소셜 네트워킹 시스템 사용자에 대한 정보를 포함하고,
    생성된 메시지는 소셜 네트워킹 시스템 외부의 애플리케이션으로부터의 메시지 컨텐츠를 포함하는 방법.
  11. 제 10 항에 있어서,
    타겟 사용자에 대한 식별자 해시는 타겟 사용자의 개인 식별가능한 정보의 아이템에 대한 일방향 함수인 방법.
  12. 제 10 항에 있어서,
    타겟 사용자에 대한 식별자 해시는 타겟 사용자의 개인 식별가능한 정보의 아이템에 대한 암호화 해시인 방법.
  13. 제 10 항에 있어서,
    타겟 사용자의 개인 식별가능한 정보의 아이템은: 소셜 네트워킹 시스템 식별자, 이름, 이메일 주소, 전화번호, SIM(subscriber identity module) 카드 식별자, MAC(media access control) 주소, 신용카드 번호, 소셜 보안 번호 및 이들의 임의의 조합으로 구성된 그룹에서 선택되는 방법.
  14. 제 10 항에 있어서,
    사용자 프로필의 정보는: 소셜 네트워킹 시스템 식별자, 이름, 이메일 주소, 전화번호, SIM(subscriber identity module) 카드 식별자, MAC(media access control) 주소, 신용카드 번호, 소셜 보안 번호 및 이들의 임의의 조합으로 구성된 그룹에서 선택되는 방법.
  15. 제 10 항에 있어서,
    생성된 메시지를 하나 이상의 소셜 네트워킹 시스템 사용자에 대한 선택된 식별자 해시와 관련된 소셜 네트워킹 시스템의 선택된 사용자들에게 제공하는 단계는:
    하나 이상의 소셜 네트워킹 시스템 사용자에 대한 선택된 식별자 해시와 관련된 소셜 네트워킹 시스템의 선택된 사용자들에게 생성된 메시지를 직접 전송하는 단계를 포함하는 방법.
  16. 제 15 항에 있어서,
    생성된 메시지는 메시지를 생성하는 소셜 네트워킹 시스템 외부의 시스템을 식별하는 방법.
  17. 제 10 항에 있어서,
    생성된 메시지를 하나 이상의 소셜 네트워킹 시스템 사용자에 대한 선택된 식별자 해시와 관련된 소셜 네트워킹 시스템의 선택된 사용자들에게 제공하는 단계는:
    소셜 네트워킹 시스템 외부의 시스템과 관련된 소셜 네트워킹 시스템의 페이지에 생성된 메시지를 게시하는 단계를 포함하며,
    생성된 메시지는 페이지를 열람하는 선택된 식별자 해시와 관련된 소셜 네트워킹 시스템의 사용자들에게는 보이고 페이지를 열람하는 선택된 식별자 해시와 관련되지 않은 소셜 네트워킹 시스템의 사용자들에게는 보이지 않는 방법.
  18. 제 10 항에 있어서,
    상기 요청은 각각의 타겟 사용자에 대한 식별자 해시를 생성하는데 사용되는 해시 함수의 설명(description)을 더 포함하는 방법.
  19. 제 18 항에 있어서,
    해시 함수의 설명은 타겟 사용자에 대한 식별자 해시를 생성하는데 사용되는 타겟 사용자와 관련된 개인 식별가능한 정보의 아이템의 타입을 식별하는 방법.
  20. 제 10 항에 있어서,
    소셜 네트워킹 시스템 외부의 시스템의 운영자에 의해 지불되는 요금을 결정하는 단계를 더 포함하며,
    상기 요금은 선택된 식별자 해시와 관련된 사용자의 수에 의해 결정되는 방법.
  21. 제 9 항에 있어서,
    생성된 메시지는 게시물, 광고 또는 하나 이상의 사생활 설정과 연관된 다른 직접 통신인 방법.
KR1020157017024A 2012-11-28 2013-11-14 사용자 서술자를 사용한 소셜 네트워킹 시스템 사용자로의 제3자 통신 KR101870340B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/687,397 US9930078B2 (en) 2012-11-28 2012-11-28 Third-party communications to social networking system users using user descriptors
US13/687,397 2012-11-28
PCT/US2013/070165 WO2014085104A1 (en) 2012-11-28 2013-11-14 Third-party communications to social networking system users using user descriptors

Publications (2)

Publication Number Publication Date
KR20150090193A KR20150090193A (ko) 2015-08-05
KR101870340B1 true KR101870340B1 (ko) 2018-06-22

Family

ID=49582631

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020157017024A KR101870340B1 (ko) 2012-11-28 2013-11-14 사용자 서술자를 사용한 소셜 네트워킹 시스템 사용자로의 제3자 통신

Country Status (11)

Country Link
US (1) US9930078B2 (ko)
EP (1) EP2738980B1 (ko)
JP (1) JP6263547B2 (ko)
KR (1) KR101870340B1 (ko)
CN (1) CN104956393B (ko)
AU (1) AU2013353045A1 (ko)
BR (1) BR112015012501A8 (ko)
CA (1) CA2891449C (ko)
IL (1) IL238972B (ko)
MX (1) MX351770B (ko)
WO (1) WO2014085104A1 (ko)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10164946B2 (en) 2015-06-24 2018-12-25 International Business Machines Corporation Mention identification for untrusted content
US10114999B1 (en) 2016-12-02 2018-10-30 Koupon Media, Inc. Using dynamic occlusion to protect against capturing barcodes for fraudulent use on mobile devices
US10852945B2 (en) * 2017-08-03 2020-12-01 Facebook, Inc. Generating social media communications based on low-data messages
US10491592B2 (en) * 2017-10-19 2019-11-26 Reflektion, Inc. Cross device user identification
US10867033B2 (en) * 2018-03-22 2020-12-15 Microsoft Technology Licensing, Llc Load distribution enabling detection of first appearance of a new property value in pipeline data processing

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9779408B2 (en) * 2004-01-21 2017-10-03 Opt-Intelligence, Inc. Privacy conscious qualification of opt-in advertiser opportunities
JP2005260896A (ja) * 2004-03-15 2005-09-22 Fuji Xerox Co Ltd 通信システム、中継装置、プログラム及び通信制御方法
US8560385B2 (en) 2005-09-02 2013-10-15 Bees & Pollen Ltd. Advertising and incentives over a social network
US20090055267A1 (en) * 2007-08-23 2009-02-26 Robert Roker Internet advertising brokerage apparatus, systems, and methods
KR101136730B1 (ko) 2007-12-08 2012-04-19 에스케이플래닛 주식회사 광고 방법 및 그 sns 광고시스템
JP2010055456A (ja) 2008-08-29 2010-03-11 Fujitsu Microelectronics Ltd ユーザー認証装置
US8370509B2 (en) * 2009-04-09 2013-02-05 Alcatel Lucent Identity management services provided by network operator
US8639920B2 (en) * 2009-05-11 2014-01-28 Experian Marketing Solutions, Inc. Systems and methods for providing anonymized user profile data
US20100306043A1 (en) * 2009-05-26 2010-12-02 Robert Taaffe Lindsay Measuring Impact Of Online Advertising Campaigns
US20100318571A1 (en) * 2009-06-16 2010-12-16 Leah Pearlman Selective Content Accessibility in a Social Network
US20110137975A1 (en) * 2009-12-04 2011-06-09 Authernative, Inc. Secure profiling method providing privacy in social networking systems
US8316056B2 (en) 2009-12-08 2012-11-20 Facebook, Inc. Second-order connection search in a social networking system
US20110238985A1 (en) * 2010-03-24 2011-09-29 Nokia Corporation Method and apparatus for facilitating provision of content protected by identity-based encryption
JP5134653B2 (ja) * 2010-07-08 2013-01-30 株式会社バンダイナムコゲームス プログラム及びユーザ端末
KR101602294B1 (ko) * 2010-08-06 2016-03-11 삼성전자주식회사 가상 개인화 그룹들 사이에서 계층적 탐색 기법을 사용하는 방법 및 장치
KR20120049455A (ko) * 2010-11-08 2012-05-17 삼성전자주식회사 소셜 네트워킹 서비스 통신망으로 메시지를 전송하는 방법 및 장치
US20120136708A1 (en) * 2010-11-30 2012-05-31 Amazon Technologies, Inc. Digital Coupon System
KR101278926B1 (ko) 2010-12-15 2013-06-26 (주)케이원리더스 본인확인이 가능한 소셜 인증 로그인 시스템 및 그 제공방법
US10339562B2 (en) * 2011-11-29 2019-07-02 Facebook, Inc. Protecting identities of users to whom advertising is targeted

Also Published As

Publication number Publication date
IL238972B (en) 2019-05-30
WO2014085104A1 (en) 2014-06-05
IL238972A0 (en) 2015-07-30
JP2015537313A (ja) 2015-12-24
CA2891449A1 (en) 2014-06-05
CA2891449C (en) 2019-05-28
EP2738980B1 (en) 2022-01-05
BR112015012501A2 (pt) 2017-07-11
JP6263547B2 (ja) 2018-01-17
CN104956393A (zh) 2015-09-30
CN104956393B (zh) 2019-07-26
MX351770B (es) 2017-10-27
KR20150090193A (ko) 2015-08-05
US9930078B2 (en) 2018-03-27
BR112015012501A8 (pt) 2019-10-01
MX2015006645A (es) 2015-12-16
EP2738980A1 (en) 2014-06-04
AU2013353045A1 (en) 2015-06-04
US20140149502A1 (en) 2014-05-29

Similar Documents

Publication Publication Date Title
US11128466B2 (en) Zero-knowledge environment based social networking engine
US11778429B2 (en) Message service provision method for providing message service via open chat room corresponding to link information, and message server and terminal for executing same
KR102480096B1 (ko) 임시 컨텐츠 메시지를 처리하기 위한 방법들 및 시스템들
US11106720B2 (en) Systems and methods for clustering items associated with interactions
US10339562B2 (en) Protecting identities of users to whom advertising is targeted
JP6333393B2 (ja) オンライン・システムのユーザのカスタマイズされたグループに対する広告のターゲティング
KR101870340B1 (ko) 사용자 서술자를 사용한 소셜 네트워킹 시스템 사용자로의 제3자 통신
WO2014008764A1 (zh) 一种利用社交网络实现网络交易的信息处理系统和方法
KR20160105019A (ko) Sns 통합 관리 장치 및 방법
US9363135B1 (en) Social vicinity service for social networks
CN107231664B (zh) 一种用于对用户设备进行流量控制的方法与设备
US20220207407A1 (en) Localization of machine learning models trained with global data
CN105933297B (zh) 一种基于蓝牙的信息处理方法及系统
CN116452262A (zh) 一种信息处理方法及装置、设备、存储介质
CN112632367A (zh) 推荐信息的方法、装置和系统

Legal Events

Date Code Title Description
A201 Request for examination
A302 Request for accelerated examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant