Establishing a direct connection between two devices

US9491148B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9491148-B2
Application numberUS-201414334927-A
CountryUS
Kind codeB2
Filing dateJul 18, 2014
Priority dateJul 18, 2014
Publication dateNov 8, 2016
Grant dateNov 8, 2016

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

In one embodiment, a method includes, by a first computing device associated with a first user, receiving a connection request from a second computing device associated with a second user. The method also includes confirming that the connection request is associated with the second user and sending to the second computing device an acceptance of the connection request in response to confirming that the connection request is associated with the second user. The method further includes receiving from the second computing device an acknowledgement of the acceptance and, in response to the acknowledgement, allowing information to be exchanged between the first and second computing devices.

First claim

Opening claim text (preview).

What is claimed is: 1. A method comprising: by a first computing device associated with a first user of a social-networking system, receiving a connection request from a second computing device associated with a second user of the social-networking system, wherein: the first and second users have previously established a social-network connection on the social-networking system; the first computing device has previously received from the social-networking system (1) a unique code and (2) a public key associated with the second user; the second computing device has previously received from the social-networking system (1) the unique code and (2) a private key associated with the second user and then encrypted the unique code using the second user's private key; and the connection request received from the second computing device comprises the encrypted unique code; by the first computing device, confirming that the connection request is associated with the second user, wherein the confirming comprises: decrypting the encrypted unique code using the second user's public key to produce a decrypted version of the encrypted unique code; and verifying that the decrypted version of the encrypted unique code is valid by determining that the decrypted version of the encrypted unique code matches the unique code previously received from the social-networking system; by the first computing device, sending to the second computing device an acceptance of the connection request in response to confirming that the connection request is associated with the second user; by the first computing device, receiving from the second computing device an acknowledgement of the acceptance; by the first computing device, in response to the acknowledgement, allowing information to be exchanged between the first and second computing devices; by the first computing device, in response to determining that no network connection is available, storing a portion of the information exchanged between the first and second computing devices, wherein the stored portion of the information is to be sent later to the social-networking system; and by the first computing device, in response to detecting an available network connection: connecting to the available network connection; and sending, via the available network connection, the stored portion of the information to the social-networking system. 2. The method of claim 1 , wherein: receiving the connection request from the second computing device comprises receiving the connection request directly from the second computing device; sending the acceptance of the connection request to the second computing device comprises sending the acceptance of the connection request directly to the second computing device; receiving the acknowledgement of the acceptance from the second computing device comprises receiving the acknowledgement of the acceptance directly from the second computing device; and allowing information to be exchanged between the first and second computing devices comprises allowing information to be exchanged directly between the first and second computing devices. 3. The method of claim 1 , wherein the unique code comprises a nickname, a first name, an image, a userid, an identifier, or an alias associated with the second user. 4. The method of claim 1 , wherein the connection request further comprises a nickname, a first name, an image, a userid, an identifier, or an alias associated with the second user. 5. The method of claim 1 , wherein the confirming that the connection request is associated with the second user further comprises, by the first computing device, receiving an input from the first user, wherein the input indicates that the first user received from the second user a verbal, visual, or physical indication that the connection request received by the first computing device is authentic. 6. The method of claim 1 , wherein one or more portions of the connection-request acceptance or the acknowledgement are encrypted. 7. The method of claim 1 , wherein: the second computing device has previously received from the social-networking system a public key associated with the first user; the first computing device has previously received from the social-networking system a private key associated with the first user and the first user's public key; and the connection-request acceptance sent by the first computing device comprises a portion that is encrypted using the first user's private key. 8. The method of claim 1 , further comprising, by the second computing device, in response to the connection-request acceptance received from the first computing device, confirming that the connection-request acceptance is associated with the first user prior to sending the acknowledgement of the acceptance to the first computing device. 9. The method of claim 1 , wherein the information exchanged between the first and second computing devices comprises contact information for the first or second user, one or more files, one or more applications, or social-networking information associated with the first or second user. 10. The method of claim 1 , wherein the exchange of information between the first and second computing devices comprises the first computing device sending information to or receiving information from the second computing device in an encrypted or otherwise secure form. 11. The method of claim 1 , wherein the exchange of information between the first and second computing devices comprises the first computing device sending information to or receiving information from the second computing device by a direct Wi-Fi connection between the first and second computing devices. 12. The method of claim 1 , wherein the connection request is broadcast by the second device in a manner that allows the second user to remain anonymous. 13. One or more computer-readable non-transitory storage media comprising instructions operable when executed by a first computing device associated with a first user of a social-networking system to: receive a connection request from a second computing device associated with a second user of the social-networking system, wherein: the first and second users have previously established a social-network connection on the social-networking system; the first computing device has previously received from the social-networking system (1) a unique code and (2) a public key associated with the second user; the second computing device has previously received from the social-networking system (1) the unique code and (2) a private key associated with the second user and then encrypted the unique code using the second user's private key; and the connection request received from the second computing device comprises the encrypted unique code; confirm that the connection request is associated with the second user, comprising: decrypt the encrypted unique code using the second user's public key to produce a decrypted version of the encrypted unique code; and verify that the decrypted version of the encrypted unique code is valid by determining that the decrypted version of the encrypted unique code matches the unique code previously received from the social-networking system; send to the second computing device an acceptance of the connection request in response to confirming that the connection request is associated with the second user; receive from the second computing device an acknowledgement of the acceptance; in response to the acknowledgement, allow information to be exchanged between the first and second computing devices; in response to determining that no network connection

Assignees

Inventors

Classifications

  • for key exchange, e.g. in peer-to-peer networks (cryptographic mechanisms or cryptographic arrangements for key agreement H04L9/0838) · CPC title

  • including means for verifying the identity or authority of a user of the system {or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials} · CPC title

  • Electricity · mapped topic

  • by mutual authentication, e.g. between devices or programs · CPC title

  • wherein the data content is protected, e.g. by encrypting or encapsulating the payload · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US9491148B2 cover?
In one embodiment, a method includes, by a first computing device associated with a first user, receiving a connection request from a second computing device associated with a second user. The method also includes confirming that the connection request is associated with the second user and sending to the second computing device an acceptance of the connection request in response to confirming …
Who is the assignee on this patent?
Facebook Inc
What technology area does this patent fall under?
Primary CPC classification H04L63/0428. Mapped technology areas include Electricity.
When was this patent published?
Publication date Tue Nov 08 2016 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).