Shared secret identification for secure communication
AssigneeEmpire Technology Development LLC
InventorEzekiel Kruglick
Life of this patent
Estimating the term…
Abstract
Technologies related to shared secret identification for secure communication are generally described. In some examples, devices may exchange hashes, such as file deduplication hashes, to identify a matching hash. The identified matching hash represents a shared data item which may be used as a shared secret to encrypt and/or decrypt subsequent secure communications between the devices. Each device retrieves the shared data item from its respective secure memory and may use the shared data item to encrypt and/or decrypt subsequent secure communications. An eavesdropper may observe the hash exchange, but will not be able to decrypt the secure communications without access to the shared data item, because hashes may be effectively non-invertible.
Claims24
A secure communication method, comprising:
- identifying, by a computing device, a shared secret for a secure communication session with a communication target, wherein identifying the shared secret comprises:
- sending, by the computing device to the communication target, hashes of data items stored in a secure memory location accessible by the computing device;
- and
- receiving, by the computing device, an identified hash from among the hashes sent by the computing device, wherein the identified hash comprises a matching hash identified by comparison, by the communication target, of the hashes sent by the computing device to hashes of data items stored in a secure memory location accessible by the communication target, wherein the identified hash therefore indicates that the computing device and the communication target each have access to an identical data item corresponding to the identified hash in secure memory locations accessible by the computing device and the communication target, respectively, and wherein the identical data item is identified at the computing device as the shared secret;
- and
- encrypting or decrypting, by the computing device, subsequent communications in the secure communication session with the communication target using the identical data item corresponding to the identified hash as the shared secret.
A non-transitory computer readable storage medium having computer executable instructions executable by a processor at a computing device, the instructions that, when executed by the processor, cause the processor to:
- identify a shared secret for a secure communication session between the computing device and a communication target, wherein the instructions that cause the processor to identify the shared secret comprise instructions that cause the processor to:
- send, to the communication target, hashes of data items stored in a secure memory location accessible by the computing device;
- and
- receive an identified hash from among the hashes sent by the computing device, wherein the identified hash comprises a matching hash identified by comparison, by the communication target, of the hashes sent by the computing device to hashes of data items stored in a secure memory location accessible by the communication target, wherein the identified hash therefore indicates that the computing device and the communication target each have access to an identical data item corresponding to the identified hash in secure memory locations accessible by the computing device and the communication target, respectively, and wherein the identical data item is identified at the computing device as the shared secret;
- and
- encrypt or decrypt subsequent communications in the secure communication session with the communication target using the identical data item corresponding to the identified hash as the shared secret.
A computing device, comprising:
- a processor;
- a memory;
- and
- a secure communication module stored in the memory and executable by the processor, wherein the secure communication module is configured to:
- identify a shared secret for a secure communication session between the computing device and a communication target, wherein identifying the shared secret comprises:
- sending, to the communication target, hashes of data items stored in a secure memory location accessible by the computing device;
- and
- receiving an identified hash from among the hashes sent by the computing device, wherein the identified hash comprises a matching hash identified by comparison, by the communication target, of the hashes sent by the computing device to hashes of data items stored in a secure memory location accessible by the communication target, wherein the identified hash therefore indicates that the computing device and the communication target each have access to an identical data item corresponding to the identified hash in secure memory locations accessible by the computing device and the communication target, respectively, and wherein the identical data item is identified at the computing device as the shared secret;
- and
- encrypt or decrypt subsequent communications in the secure communication session with the communication target using the identical data item corresponding to the identified hash as the shared secret.
A secure communication method, comprising:
- identifying, by a computing device, a shared secret for a secure communication session with a communication target, wherein identifying the shared secret comprises:
- receiving, by the computing device, hashes of data items stored in a secure memory location accessible by the communication target;
- comparing, by the computing device, the received hashes to hashes of data items stored in a secure memory location accessible by the computing device, to identify a hash among the received hashes that matches a hash among the hashes of data items stored in the secure memory locations accessible by the computing device,
- wherein the identified hash indicates that the computing device and the communication target each have access to an identical data item corresponding to the identified hash in secure memory locations accessible by the computing device and the communication target, respectively, and wherein the identical data item is identified at the computing device as the shared secret;
- and
- sending, by the computing device, the identified hash to the communication target;
- and
- encrypting or decrypting, by the computing device, subsequent communications in the secure communication session with the communication target using the identical data item corresponding to the identified hash as the shared secret.
A non-transitory computer readable storage medium having computer executable instructions executable by a processor at a computing device, the instructions that, when executed by the processor cause the processor to:
- identify a shared secret for a secure communication session between the computing device and a communication target, wherein the instructions that cause the processor to identify the shared secret comprise instructions that cause the processor to:
- receive hashes of data items stored in a secure memory location accessible by the communication target;
- compare the received hashes to hashes of data items stored in a secure memory location accessible by the computing device, to identify a hash among the received hashes that matches a hash among the hashes of data items stored in the secure memory location accessible by the computing device, wherein the identified hash indicates that the computing device and the communication target each have access to an identical data item corresponding to the identified hash in secure memory locations accessible by the computing device and the communication target, respectively, and wherein the identical data item is identified at the computing device as the shared secret;
- and
- send the identified hash to the communication target;
- and
- encrypt or decrypt subsequent communications in the secure communication session with the communication target using the identical data item corresponding to the identified hash as the shared secret.
A computing device, comprising:
- a processor;
- a memory;
- and
- a secure communication module stored in the memory and executable by the processor, wherein the secure communication module is configured to:
- identify a shared secret for a secure communication session between the computing device and a communication target, wherein identifying the shared secret comprises:
- receive receiving hashes of data items stored in a secure memory location accessible by the communication target;
- comparing the received hashes to hashes of data items stored in a secure memory location accessible by the computing device, to identify a hash among the received hashes that matches a hash among the hashes of data items stored in the secure memory location accessible by the computing device, wherein the identified hash indicates that the computing device and the communication target each have access to an identical data item corresponding to the identified hash in secure memory locations accessible by the computing device and the communication target, respectively, and wherein the identical data item is identified at the computing device as the shared secret;
- and
- sending the identified hash to the communication target;
- and
- encrypt or decrypt subsequent communications in the secure communication session with the communication target using the identical data item corresponding to the identified hash as the shared secret.
Dependencies are inferred from the claim text.