×

System and method for secure messaging in a hybrid peer-to-peer network

  • US 8,611,540 B2
  • Filed: 06/23/2010
  • Issued: 12/17/2013
  • Est. Priority Date: 06/23/2010
  • Status: Active Grant
First Claim
Patent Images

1. A method for changing an encryption key by a first endpoint operating in a hybrid peer-to-peer network comprising:

  • retrieving, by a first endpoint, a profile from an access server following an authentication process, wherein the profile identifies a plurality of endpoints that includes a second endpoint as endpoints that have each previously granted the first endpoint permission to communicate with that endpoint and contains a unique encryption key for each of the plurality of endpoints that is online but not for any of the plurality of endpoints that are offline, and wherein a key for any particular endpoint of the plurality of endpoints that was offline when the profile is retrieved will be received by the first endpoint directly from the particular endpoint when the particular endpoint logs into the hybrid peer-to-peer network;

    receiving, by the first endpoint, an instruction to change from a first encryption key to a second encryption key;

    sending, by the first endpoint, a first message to the second endpoint that the first endpoint is going to change to the second encryption key, wherein the first message is defined for use with a transactional state model and includes information representing the second encryption key, and wherein the first message is encrypted using the unique encryption key for the second endpoint contained in the profile;

    receiving, by the first endpoint, in response to the first message, a second message from the second endpoint indicating that the second endpoint received the first message, wherein the second message is defined for use with the transactional state model;

    sending, by the first endpoint, a third message to the second endpoint acknowledging receipt of the second message, wherein the third message is defined for use with the transactional state model;

    changing, by the first endpoint, from the first encryption key to the second encryption key, wherein all incoming messages for the first endpoint are to be encrypted using the second encryption key;

    receiving, by the first endpoint, a fourth message from the second endpoint, wherein the fourth message is encrypted using the second encryption key;

    applying a first key iteration of the second encryption key to the fourth message to determine if the first key iteration will decrypt the fourth message, wherein the second encryption key is used by the first endpoint to form a plurality of key iterations, and wherein each of the plurality of key iterations is a valid encryption key for the first endpoint;

    if the first key iteration will not decrypt the fourth message, rotating the second encryption key to form a next key iteration from the second encryption key;

    applying the next key iteration to the fourth message to determine if the next key iteration will decrypt the fourth message;

    as long as untried key iterations are available, continuing the steps of rotating and applying for each key iteration until the fourth message is decrypted; and

    rejecting the fourth message if no untried key iterations exist and the fourth message is not decrypted.

View all claims
  • 1 Assignment
Timeline View
Assignment View
    ×
    ×