System and method for providing secure inter-process communications
AssigneesSony Corporation, Sony Mobile Communications Inc.
InventorsStefan Andersson, Petter Wallin
Life of this patent
Estimating the term…
Abstract
A user device provides a mechanism for securing messages communicated between trusted processes along an established Inter-Process Communication (IPC) channel. The mechanism permits the trusted processes to determine which messages to protect, and executes independently of platform-dependent IPC mechanisms.
Claims21
A method for providing secure Inter-Process Communications (IPC) between first and second processes executing on a same user device, the method comprising:
- establishing an IPC channel between first and second processes executing on a same user device, wherein the IPC channel configured to carry a plurality of messages sent by the first process to the second process;
- initializing, for each of the first and second processes, a respective first and second instance of a security function on the user device, wherein the security function is stored on the user device and is accessible to both the first and second processes;
- and
- by the first process:
- for each message in the plurality of messages to be sent to the second process, selectively determining whether the message is to be protected;
- if the message is to be protected:
- controlling the first instance of the security function to generate a unique key for the message based on parameter value generated by the first process;
- encrypting the message using the unique key such that the message comprises an encrypted portion and an unencrypted portion;
- and
- sending the encrypted message to the second process over the established IPC channel;
- and
- if the message is not to be protected:
- sending the message unencrypted to the second process over the established IPC channel.
A user device comprising:
- a memory configured to store a security function;
- and
- a programmable processing circuit communicatively connected to the memory and configured to:
- establish an IPC channel between first and second processes executing on the user device, wherein the IPC channel is configured to carry a plurality of messages sent by the first process to the second process;
- initialize, for each of the first and second processes, respective first and second instances of the security function on the user device;
- for the first process:
- for each message in the plurality of messages to be sent to the second process, selectively determine whether the message is to be protected;
- if the message is to be protected:
- control the first instance of the security function to generate a unique key for the message based on a parameter value generated by the first process;
- encrypt the message based on the unique key such that the message comprises an encrypted portion and an unencrypted portion;
- and
- send the encrypted message to the second process over the established IPC channel;
- and
- if the message is not to be protected:
- sending the message unencrypted to the second process over the established IPC channel.
A method for providing secure Inter-Process Communications (IPC) between first and second processes executing on a same user device, the method comprising:
- initializing respective first and second instances of a security function on the user device for each of the first and second processes, wherein the security is accessible to both the first and second processes;
- by the second process:
- receiving encrypted and unencrypted messages over IPC channel from the first process, wherein the encrypted messages comprise an encrypted portion and an unencrypted portion;
- comparing a parameter value received with an encrypted message to an expected parameter value maintained by the second process;
- controlling the second instance of the security function to generate a unique key for the encrypted message based on the parameter value received with the encrypted message;
- and
- decrypting the encrypted portion of the encrypted message using the unique key based on the comparison.
A user device comprising:
- a memory configured to store a security function;
- and
- a programmable processing circuit configured to execute first and second processes on the user device, and to:
- establish an IPC channel between the first and second processes;
- initialize a respective first and second instance of a security function on the user device for each of the first and second processes;
- and
- for the second process:
- receive encrypted and unencrypted messages sent by the first process over the IPC channel to the second process, the encrypted messages comprising an encrypted portion and an unencrypted portion;
- compare a parameter value received with an encrypted message to an expected parameter value maintained the second process;
- control the second instance of the security function to generate a unique key for the encrypted message based on the parameter value received with the encrypted message;
- and
- decrypt the encrypted portion of the encrypted message using the unique key based on the comparison.
Dependencies are inferred from the claim text.