Zero-knowledge environment based social networking engine
First Claim
1. A computer-implemented method comprising:
- receiving, from an application instance installed at a communication device, a request for a network address uniquely identifying a first software container associated with a first user identity, wherein the request includes authorization information corresponding to the first user identity, and wherein a software container is an independent server virtualization instance that is configured to operate independently of other processes operating on a same processing resource as the independent server virtualization instance;
authorizing the communication device to add data relating to the first user identity to the first software container based at least on the authorization information corresponding to the first user identity;
transmitting, to the communication device and in response to authorizing the communication device to add data relating to the first user identity to the first software container, information indicating the network address uniquely identifying the first software container;
receiving, from the communication device, particular data relating to the first user identity and the information indicating the network address uniquely identifying the first software container;
storing, at the first software container, the particular data relating to the first user identity;
receiving, from the application instance installed at the communication device, an election of an advertising service to be included within the first software container and operate on the data relating to the first user identity stored at the first software container, the election being made by a first user associated with the first software container;
in response to receiving the election;
selecting, by an advertising engine within the first software container, one or more advertisements determined to be appropriate for the first user based on the data relating to the first user identity stored at the first software container, wherein the advertising engine does not release the data relating to the first user identity stored at the first software container outside the first software container; and
providing, for display to the first user, the one or more selected advertisements.
1 Assignment
0 Petitions
Accused Products
Abstract
Methods, systems, and apparatus are described providing social networking engines. Specifically, the present specification relates to a method for implementing software containers implementing social network engines that may be configured to act in a zero-knowledge environment. In such implementations, all information pertaining to the social network engine associated with a user that is stored in the container is solely that of a user unless explicitly shared by the user. In some implementations, the containers may be configured to participate in a publish-and-subscribe network in order to share information. In addition, the containers may be provisioned with controls so that global operators may comply with local privacy rules.
-
Citations
20 Claims
-
1. A computer-implemented method comprising:
-
receiving, from an application instance installed at a communication device, a request for a network address uniquely identifying a first software container associated with a first user identity, wherein the request includes authorization information corresponding to the first user identity, and wherein a software container is an independent server virtualization instance that is configured to operate independently of other processes operating on a same processing resource as the independent server virtualization instance; authorizing the communication device to add data relating to the first user identity to the first software container based at least on the authorization information corresponding to the first user identity; transmitting, to the communication device and in response to authorizing the communication device to add data relating to the first user identity to the first software container, information indicating the network address uniquely identifying the first software container; receiving, from the communication device, particular data relating to the first user identity and the information indicating the network address uniquely identifying the first software container; storing, at the first software container, the particular data relating to the first user identity; receiving, from the application instance installed at the communication device, an election of an advertising service to be included within the first software container and operate on the data relating to the first user identity stored at the first software container, the election being made by a first user associated with the first software container; in response to receiving the election; selecting, by an advertising engine within the first software container, one or more advertisements determined to be appropriate for the first user based on the data relating to the first user identity stored at the first software container, wherein the advertising engine does not release the data relating to the first user identity stored at the first software container outside the first software container; and providing, for display to the first user, the one or more selected advertisements. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
-
-
12. A system for exchanging social network data, the system comprising:
-
one or more processors and one or more memories storing instructions that are operable, when executed by the one or more processors, to cause the one or more processors to perform operations comprising; receiving, from an application instance installed at a communication device, a request for a network address uniquely identifying a first software container associated with a first user identity, wherein the request includes authorization information corresponding to the first user identity, and wherein a software container is an independent server virtualization instance that is configured to operate independently of other processes operating on a same processing resource as the independent server virtualization instance; authorizing the communication device to add data relating to the first user identity to the first software container based at least on the authorization information corresponding to the first user identity; transmitting, to the communication device and in response to authorizing the communication device to add data relating to the first user identity to the first software container, information indicating the network address uniquely identifying the first software container; receiving, from the communication device, particular data relating to the first user identity and the information indicating the network address uniquely identifying the first software container; storing, at the first software container, the particular data relating to the first user identity; receiving, from the application instance installed at the communication device, an election of an advertising service to be included within the first software container and operate on the data relating to the first user identity stored at the first software container, the election being made by a first user associated with the first software container; in response to receiving the election; selecting, by an advertising engine within the first software container, one or more advertisements determined to be appropriate for the first user based on the data relating to the first user identity stored at the first software container, wherein the advertising engine does not release the data relating to the first user identity stored at the first software container outside the first software container; and providing, for display to the first user, the one or more selected advertisements; accessing configuration data that specifies pre-determined publish-and-subscribe relationships between a second software container and one or more other software containers, wherein each of the pre-determined publish-and-subscribe relationships permits data relating to a user identity associated with another software container to be exchanged with the second software container; determining that the configuration data includes a pre-determined publish-and-subscribe relationship between a second user identity associated with the second software container and the first user identity that permits data relating to the first user identity stored at the first software container to be exchanged with the second software container; identifying, at a key management module and from a set of encryption key pairs that each correspond to a different pre-determined publish-and-subscribe relationship between software containers, an encryption key pair corresponding to the pre-determined publish-and-subscribe relationship between the second user identity and the first user identity; encrypting, using a first encryption key of the encryption key pair, the particular data relating to the first user identity stored in the first software container to provide encrypted particular data relating to the first user identity; in response to determining that the configuration data includes the pre-determined publish-and-subscribe relationship that permits data relating to the first user identity stored at the first software container to be exchanged with the second software container, transmitting the encrypted particular data relating to the first user identity to the second software container; receiving, from an application instance installed at a second communication device, a second request for the first software container to exchange data relating to the first user identity with the second software container; and accessing the configuration data that specifies the pre-determined publish-and-subscribe relationships between the second software container and one or more other software containers based at least on receiving the request for the first software container to exchange data relating to the first user identity with the second software container. - View Dependent Claims (13, 14, 15, 16, 17)
-
-
18. A non-transitory computer-readable storage medium encoded with a computer program for exchanging social network data, the computer program comprising instructions that, when executed by one or more computers, cause the one or more computers to perform operations comprising:
-
receiving, from an application instance installed at a communication device, a request for a network address uniquely identifying a first software container associated with a first user identity, wherein the request includes authorization information corresponding to the first user identity, and wherein a software container is an independent server virtualization instance that is configured to operate independently of other processes operating on a same processing resource as the independent server virtualization instance; authorizing the communication device to add data relating to the first user identity to the first software container based at least on the authorization information corresponding to the first user identity; transmitting, to the communication device and in response to authorizing the communication device to add data relating to the first user identity to the first software container, information indicating the network address uniquely identifying the first software container; receiving, from the communication device, particular data relating to the first user identity and the information indicating the network address uniquely identifying the first software container; storing, at the first software container, the particular data relating to the first user identity; receiving, from the application instance installed at the communication device, an election of an advertising service to be included within the first software container and operate on the data relating to the first user identity stored at the first software container, the election being made by a first user associated with the first software container; in response to receiving the election; selecting, by an advertising engine within the first software container, one or more advertisements determined to be appropriate for the first user based on the data relating to the first user identity stored at the first software container, wherein the advertising engine does not release the data relating to the first user identity stored at the first software container outside the first software container; and providing, for display to the first user, the one or more selected advertisements. - View Dependent Claims (19, 20)
-
Specification