Secure sent message identifier
First Claim
1. A method, comprising:
- receiving a request, at a server of a message management service, to send a message drafted in a client application executing on a client device, wherein the request includes a copy of the message;
Concatenating an item of message-specific information and a private key;
generating, by the server, a sent-message identifier for the copy of the message, wherein the sent-message identifier indicates that the message was sent using the message management service, and wherein the sent-message identifier includes a cryptographic hash value generated using the concatenated data corresponding to the message management service as input to a hash function that generates the hash value, wherein the item of message-specific information includes at least a portion of the copy of the message content;
adding, by the server, the sent-message identifier to the copy of the message;
sending, by the server, the copy of the message, including the sent-message identifier, to a message provider to be sent to one or more recipients;
generating, by the server, a thread identifier for the message;
adding the thread identifier to the message before sending the message to the message provider;
after the message has been sent by the message provider, retrieving the message, by the message management service, from the message provider;
analyzing the message to determine a thread identifier and the sent-message identifier;
generating a second sent-message identifier for the message, wherein the second sent-message identifier for the message includes a hash value generated using the item of message-specific information and the private key; and
determining whether the thread identifier is valid by comparing the sent-message identifier to the second sent-message identifier, wherein the thread identifier is valid if the sent-message identifier matches the second sent-message identifier.
4 Assignments
0 Petitions
Accused Products
Abstract
A message management service allows a user to access and manage messages from various message services. The user can access the message management service using a message management client application executing on a client device and can draft messages using the message management client application and send the messages through the different message services. The message management service can add information to messages sent using the message management client application that can be used to identify and organize the messages. A secure sent-message identifier can be added to messages sent by the message management service to reliably indicate that the messages were sent by the message management service.
-
Citations
14 Claims
-
1. A method, comprising:
-
receiving a request, at a server of a message management service, to send a message drafted in a client application executing on a client device, wherein the request includes a copy of the message; Concatenating an item of message-specific information and a private key; generating, by the server, a sent-message identifier for the copy of the message, wherein the sent-message identifier indicates that the message was sent using the message management service, and wherein the sent-message identifier includes a cryptographic hash value generated using the concatenated data corresponding to the message management service as input to a hash function that generates the hash value, wherein the item of message-specific information includes at least a portion of the copy of the message content; adding, by the server, the sent-message identifier to the copy of the message; sending, by the server, the copy of the message, including the sent-message identifier, to a message provider to be sent to one or more recipients; generating, by the server, a thread identifier for the message; adding the thread identifier to the message before sending the message to the message provider; after the message has been sent by the message provider, retrieving the message, by the message management service, from the message provider; analyzing the message to determine a thread identifier and the sent-message identifier; generating a second sent-message identifier for the message, wherein the second sent-message identifier for the message includes a hash value generated using the item of message-specific information and the private key; and determining whether the thread identifier is valid by comparing the sent-message identifier to the second sent-message identifier, wherein the thread identifier is valid if the sent-message identifier matches the second sent-message identifier. - View Dependent Claims (2, 3, 4, 5)
-
-
6. A server system, comprising:
-
one or more processors; and one or more memory devices including instructions stored thereon which, when executed, cause the one or more processors to execute operations including; receiving a request, at a message management service, to send a message drafted in a client application executing on a client device, wherein the request includes a copy of the message; concatenating an item of message-specific information and a private key; generating a sent-message identifier for the copy of the message, wherein the sent-message identifier includes a hash value generated based on the concatenated data as input to a hash function that generates the hash value, wherein the item of message-specific information includes at least a portion of the copy of the message content; adding the sent-message identifier to the copy of the message; sending the copy of the message, including the sent-message identifier, to a message provider to be sent to one or more recipients; generating a thread identifier for the message; adding the thread identifier to the message before sending the message to the message provider; after the message has been sent by the message provider, retrieving the message, by the message management service, from the message provider; analyzing the message to determine a thread identifier and the sent-message identifier; generating a second sent-message identifier for the message, wherein the second sent-message identifier for the message includes a hash value generated using the item of message-specific information and the private key; and determining whether the thread identifier is valid by comparing the sent-message identifier to the second sent-message identifier, wherein the thread identifier is valid if the sent-message identifier matches the second sent-message identifier. - View Dependent Claims (7, 8, 9)
-
-
10. A non-transitory computer readable medium comprising one or more sequences of instructions, which, when executed by one or more processors, cause the one or more processors to perform operations, comprising:
-
receiving a request, at a server of a message management service, to send a message drafted in a client application executing on a client device, wherein the request includes a copy of the message; concatenating an item of message-specific information and a private key; generating, by the server, a sent-message identifier for the copy of the message, wherein the sent-message identifier indicates that the message was sent using the message management service, and wherein the sent-message identifier includes a cryptographic hash value generated using the concatenated data corresponding to the message management service as input to a hash function that generates the hash value, wherein the item of message-specific information includes at least a portion of the copy of the message content; adding, by the server, the sent-message identifier to the copy of the message; sending, by the server, the copy of the message, including the sent-message identifier, to a message provider to be sent to one or more recipients; generating, by the server, a thread identifier for the message; adding the thread identifier to the message before sending the message to the message provider; after the message has been sent by the message provider, retrieving the message, by the message management service, from the message provider; analyzing the message to determine a thread identifier and the sent-message identifier; generating a second sent-message identifier for the message, wherein the second sent-message identifier for the message includes a hash value generated using the item of message-specific information and the private key; and determining whether the thread identifier is valid by comparing the sent-message identifier to the second sent-message identifier, wherein the thread identifier is valid if the sent-message identifier matches the second sent-message identifier. - View Dependent Claims (11, 12, 13, 14)
-
Specification