| CPC H04L 9/3247 (2013.01) [H04L 9/0822 (2013.01); H04L 9/0861 (2013.01)] | 19 Claims |

|
1. A system for providing end-to-end message encryption over hypertext transfer protocol, the system comprising:
one or more processors; and
a non-transitory computer-readable storage medium storing instructions, which when executed by the one or more processors cause the one or more processors to:
receive, using an application executed within a web browser, an input comprising a message from a user addressed to a group, wherein the user is a member of the group;
retrieve, from web browser storage, a first key generation secret generated by a key generation algorithm for the user, wherein the key generation algorithm generates, using a key generation secret, a new key generation secret and a new encryption key for message encryption;
receive, from the key generation algorithm based on inputting the first key generation secret, a second key generation secret and a first encryption key;
encrypt the message using the first encryption key into an encrypted message;
store the second key generation secret within the web browser storage, wherein the second key generation secret is stored in association with the user;
determine a plurality of name-value pairs from metadata associated with the encrypted message;
generate an encrypted message object, wherein the encrypted message object comprises a name-value pair for the encrypted message and the plurality of name-value pairs;
generate a cryptographic signature for the encrypted message object;
add the cryptographic signature as a new name-value pair to the encrypted message object;
encode name-value pairs associated with the encrypted message object into one or more transport representations;
generate a hypertext transport protocol request for each transport representation of the one or more transport representations; and
transmit each hypertext transport protocol request to a server.
|