US20150350165A1 - System and method for dynamically allocating resources - Google Patents
System and method for dynamically allocating resources Download PDFInfo
- Publication number
- US20150350165A1 US20150350165A1 US14/823,591 US201514823591A US2015350165A1 US 20150350165 A1 US20150350165 A1 US 20150350165A1 US 201514823591 A US201514823591 A US 201514823591A US 2015350165 A1 US2015350165 A1 US 2015350165A1
- Authority
- US
- United States
- Prior art keywords
- resource
- data
- trusted
- privacy
- service
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Abandoned
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/10—Network architectures or network communication protocols for network security for controlling access to devices or network resources
- H04L63/102—Entity profiles
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0407—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the identity of one or more communicating identities is hidden
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0893—Assignment of logical groups to network elements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0894—Policy-based network configuration management
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/10—Network architectures or network communication protocols for network security for controlling access to devices or network resources
-
- H04L67/32—
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/60—Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/0819—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
- H04L9/083—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) involving central third party, e.g. key distribution center [KDC] or trusted third party [TTP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
Definitions
- the invention relates to dynamically allocating resources with privacy enforcement, and to methods, apparatus, networked systems and computer software for carrying out this task.
- computing resources may be allocated dynamically based on business needs.
- the physical location of the resources can vary widely, and data is not necessarily stored on local data storage.
- confidential computer information can be transferred widely. However, it is important to ensure that confidential information can only be accessed by suitable users, which may be determined geographically, by business function, or in many other ways.
- EP 1220 510 describes context aware computing. Devices and methods are provided that are context aware, in an example location aware, so that policies are evaluated as a function of context. EP 1 220 510 is particularly concerned with a way of encoding locations in a uniform way.
- US 2003/0163431 describes a secure computing system for enforcing a secure handling and control chain.
- the invention relates to a method of dynamically allocating computing resources for a transaction related to data, comprising the steps of:
- the invention relates to a computer system including:
- a plurality of resources a plurality of resources; a network linking the resources; at least one trusted localisation provider arranged to certify the location of the resource or resources; a policy package associated with data defining different privacy policies for the data and metadata to select the relevant set of privacy policies; at least one trusted privacy service arranged to enforce the privacy policies a store storing confidential data in an encrypted fashion, wherein the encrypted data can only be decrypted using one or more keys; and allocating resources to process the data; wherein the trusted privacy service is arranged to supply one or more keys to a resource to allow that resource to process data if the trusted privacy service determines from the trusted localisation provider and the resource that the privacy policy allows processing of the data on that resource in that location.
- the invention also relates to the various components of the computer system and methods of operating them, as well as computer program products arranged to carry out the method.
- FIG. 1 is a schematic diagram of a first embodiment of the invention
- FIG. 2 is a schematic diagram of a second embodiment of the invention.
- FIG. 3 is a schematic diagram of a detail of the second embodiment
- FIG. 4 is a schematic diagram of a further detail of the second embodiment
- FIG. 5 is a schematic diagram of a yet further detail of the second embodiment.
- FIG. 6 is a schematic diagram of a third embodiment.
- This example is of a distributed computer system in two countries handling personal data subject to different privacy policies and legislation.
- the first example is simple for ease of explanation and does not represent the full power of the approach described in the present specification.
- the system includes storage resources 10 , processing resources 12 and a network 14 linking the resources. These resources are located in two countries, country A, and country B. Some of the processing resources are secure processing resources having a secure processing module 16 within them. A number of user terminals 18 are also provided, which are also resources.
- country B has a national law preventing work telephone numbers being publicly available.
- Country A has no such law.
- the work telephone number may be confidential information or not.
- a policy package 20 describes the privacy policies of the data in a context aware manner.
- a single policy package 20 is provided represented by a matrix listing the data field against the country of employment, and having an entry describing the confidentiality policy for the relevant data.
- the policy package 20 may be described by metapolicies and a matrix as follows:
- the policy package 20 also includes a set of rules defining the privacy policies implied by the three confidentiality levels “Confidential”, “Strictly Confidential” and “Not Confidential”.
- metarules define how to select privacy policies based on location criteria.
- policies are much more complex than this. They may include logical constraints and conditions on time, location, identity/roles, credentials, properties. IT is a particular benefit of this and other embodiments that a wide variety of different policies can be implemented.
- the policy package 20 is closely associated with the data 24 represented by the policy package. Conveniently, this may be achieved by storing the policy package and the data 24 as a single file.
- the processing environment generally ensures that the policy package and data cannot be separated and maintains the integrity of the data item, i.e. the policy package and data.
- the package may be digitally signed.
- the package is stored in a secure environment, which may be determined by the system itself by allocating a very high security level to the policy package 20 so that it can only be processed by the trusted privacy server 26 (see below).
- Data that is confidential e.g. has a confidential level of “Confidential” or “Strictly Confidential”
- the XML file may specify different encryption policies depending on the confidentiality level. For example, the minimum key length for “Confidential” may be less than for “Strictly Confidential” information. Further, suppose that in the example salary data may only be processed in the country of the employee. Much more complex policies might apply.
- Each resource 10 , 12 that may be used for processing confidential data has a trusted localisation provider 22 .
- This provides certified location of the resource, with different degrees of assurance (for example via signed certificates) stating the location of the resource.
- the certificate is simply stored in a secure manner in the trusted localisation provider.
- a trusted privacy server 26 is provided to check and enforce privacy policies based on the “policy package”.
- the requirements that need to be satisfied in order to access and process confidential data are determined by the policy package 20 , as interpreted by the trusted privacy service 26 .
- the trusted privacy service 26 can discriminate which resources can and cannot process associated confidential data. Further, the trusted privacy service 26 determines which privacy policies apply.
- the trusted privacy service 26 only provides the decryption key for specific data items to resources that are allowed to process those specific data items, based on the privacy policy.
- the resource 22 sends a message to the trusted privacy service 26 requesting a key.
- the trusted privacy service determines if the resource meets the appropriate privacy policy and only provides the key to the resource if it does.
- One or more trusted privacy services could be used.
- the privacy policy may be such as to require salary data only to be processed by resources in the country in question.
- the trusted privacy server will only issue the decryption key for specific items of salary data to resources for which the trusted localisation provider 22 located within the resource confirms that the resource is in the correct country, in accordance with the rules of the privacy policy.
- the data in the present case may include items of different sensitivity. These may be coded with a number of different keys.
- the trusted privacy service provides one or more keys as requested to a resource, if that resource may process the corresponding data according to the privacy policy.
- the privacy policy may further require that the resource is a trusted resource that is able to securely process confidential data, and may further require that the resource only processes data in certain ways.
- the privacy policy may require that salary data not be published and so only resources that provide suitable guarantees to the trusted privacy service regarding the security of the resource and the process to be carried out on the data will be provided with the decryption code for that data.
- the resources may be dynamically allocated so that processing and storage can be carried out where capacity is available.
- resource allocation service 28 allocates resources to process persona/confidential data.
- the resource allocation service identifies a potentially suitable resource and obtains from the trusted localisation provider the locality of the resource. Further information regarding the resource is obtained. This information is used to determine whether the resource is permitted to carry out the operation required. If so, the resource allocation service 28 allocates the resource and the resource interacts directly with the trusted privacy service to obtain access to the data, if required.
- resource allocation server 28 still only selects resources meeting the requirements of the privacy policy, for example to store confidential data only on approved storage resources. In these cases however there is no need to decrypt the data at all so this is not done.
- the resource allocation server 28 determines from the trusted privacy server 26 that a resource is not suitable, the resource allocation server 28 tries to allocate a different resource until one is found that is suitable. If no suitable resource is found, an error message is generated.
- the privacy policies can be readily changed and updated by changing the policy package 20 .
- the embodiment allows the ready enforcement of a variety of different requirements in a consistent and accountable way.
- the use of the trusted localisation provider 22 ensures that not merely the security requirements of a confidential server but also the correct processing location is used when required.
- a user computer 18 attempts to access data, the user computer will only be allowed access to confidential data if the user computer has a suitable location, as determined by the trusted localisation provider, as well as a suitably secure processing facility.
- the system can readily cope with a very large number of different policy packages and policies since the policy package is associated with the data.
- the trusted privacy module has a very different function to the privacy manager of EP 1220510, even if the name is similar.
- the privacy manager censors the location information transmitted by a mobile device, i.e. it ensures privacy of the location information.
- the trusted privacy module ensures privacy of the data by only releasing a key when the location of a resource is correct.
- EP 1220510 A further difference from EP 1220510 is that in EP 1220510 a predetermined set of policies are provided relating to the device.
- different data may have entirely different policies.
- same data might be subject to different policies depending on the context. Thus, the flexibility of the approach described here is greater.
- the entire process may be audited.
- a trusted platform approach is used.
- a number of servers 30 are provided in first locality 32 and in a second locality 34 .
- a resource allocation service 36 and a registration entity 38 are provided in each locality.
- a policy package 40 is strongly associated with confidential data 42 which may however be stored and executed on any of the servers 30 .
- a Trusted Privacy Service (TPS) 44 is provided to police the privacy rules. Resources need to interact with the TPS 44 to process the confidential data, and to this end the resources have a TPS Interaction Module 46 for carrying out this interaction.
- the resources further include a trusted localisation provider (TLP) for providing localisation information about the resource.
- TPS trusted localisation provider
- FIG. 3 shows a policy package 40 .
- the policy package is closely associated with the confidential data 42 and sets out the rules for processing that data.
- the system may include other data with other policy packages, and indeed it is a benefit of this embodiment that it is easy to apply very different policies to different data, and in the event that new data requires new policies, these can be determined when the new data is created and simply attached to the data.
- the policy package 40 contains meta policies 50 together with specific policies 52 and optional signature 54 .
- the policy package 40 is in essence a data document that stores the policies.
- the policies are sets of logical rules that may be expressed in any convenient way, as will be known to those skilled in the art. For example, the policies may be expressed as digitally signed XML data.
- Suitable standards for recording such rules include the Extensible Access Control Markup language (XACML). Alternatively, the Enterprise Privacy Authorization language (EPAL) might be used.
- XACML Extensible Access Control Markup language
- EPL Enterprise Privacy Authorization language
- the meta-policies 50 are policies that specify the selection of a particular one of the policies for data depending on selection criteria. Thus, one policy may be selected if data is processed in one locality, and a different policy if data is processed in another locality.
- the privacy policies 52 themselves are rules that determine how data is to be processed. For example, if the data is being processed outside the locality in which the data was created, certain activities may be prohibited, for example printing the data or outputting it in any way. For more secure types of data, the rule may specify that the data can only be processed on a trusted platform.
- the association of data and policy package can be assured using cryptographic techniques, for example by encrypting the data.
- the integrity of policies and metapolicies can be enforced by a number of techniques, including in particular signatures and enveloping techniques.
- the registration entity 38 includes a list of available resources, which may be all or some of the resources. In the example of FIG. 2 , a separate registration entity 38 is provided in each of the first and second localities 32 , 34 to allocate resources in that locality. The registration entity 38 also contains details of other registration entities that may be able to allocate resources.
- the registration entity 38 obtains localisation information from the servers using the trusted localisation provider (TLP) 48 installed on each of the resources 30 .
- TLP trusted localisation provider
- the resources will not have TLPs installed, and in others only some of the resources will have TLPs installed.
- the registration entity can manage in a centralised manner the localisation information, and may for example act as the TLP for these resources.
- the resource allocation service When resources are required, for example to carry out a processing task on data, the resource allocation service identifies resources based on the policy package 40 associated with the data 42 and the information in the registration entity 38 about its resources. In the event that resources under the control of other registration entities 38 and resource allocation services 36 are required, the data regarding these too is obtained from the registration entity 38 .
- the registration entity 38 is dispensed with and allocation is made “on the fly”.
- potential resources 30 are identified by the resource allocation service and the resource 30 itself checks whether it can carry out the required processing, using the TLP within the resource and the policy package 40 associated with the data.
- the TPS includes a communications module 70 for communicating with resources 30 and a cryptographic module 72 for decrypting data when required.
- a Tracing/Auditing module 74 records the operation of the TPS 44 .
- a disclosure monitoring and control module 76 controls disclosure of data, and a policy engine 78 enforces policies.
- a context manager 82 is provided to gather contextual information from the resource 30 and process the relevant set of privacy policies.
- the TPS includes secure tamper resistant storage 84 .
- the resource 30 In order for a resource 30 to process data it needs to decrypt it.
- the resource 30 sends the policy package 40 associated with the encrypted data 42 to the TPS 44 .
- the context manager 82 then gathers contextual information from the TLP of the resource 30 that identifies the location of the resource.
- the context manager 82 may also gather data for example from the policy engine 64 of the resource or elsewhere to check which policy package are to be implemented.
- the exchange between the context manager 82 and the resource 30 is logged by the Tracing Auditing module 74 .
- the trusted privacy service 44 uses the cryptographic module 72 to generate the keys needed to access the confidential data 42 and sends them to the resource 30 to allow the resource to decrypt and process the data.
- FIG. 5 shows a trusted server 30 with a trusted localisation platform (TLP) 48 .
- the TLP 48 is implemented as software having a trusted localisation software which certifies or provides localisation information through an Application Program Interface (API) 80 .
- the TLP 48 includes a credential verifier 82 and a credential issuer and modifier 84 .
- the TLP 48 gets localisation information 86 which may be the machine access control (MAC) or IP address of the platform together with various credentials 88 .
- the localisation information is supplied to the TPS 44 .
- TPM trusted privacy module
- the trusted privacy module 90 certifies the localisation information and thereby improves the credence of that information.
- FIG. 6 shows an alternative approach to the trusted localisation platform which may be adopted in a third embodiment.
- the TLP is provided in the registration entity.
- the software TLP 48 has an API 92 and a request handler 94 .
- a localisation checker/issuer 96 associates localisation information with resources 30 . Information regarding these resources 30 is taken from the resource and stored in the database 98 . It is supplied from there directly to the TPS 44 .
- the registration entity 38 may be run on a trusted platform which can enhance the reliability and verifiability of the localisation information.
- TLPs may be TLPs in the resources 30 as in the second embodiment as shown in FIG. 5 and others TLPs may be provided in the registration entities 38 as in FIG. 6 .
- the various components of software used to implement the various parts of the invention may be stored in any convenient data carrier, such as a hard disk, etc.
- the data carrier may be a ROM or other data carrier that cannot easily be altered.
- the servers 30 , registration entity 38 , resource allocation 36 , and trusted privacy service 44 may all be run on a trusted platform (TP).
- TP trusted platform
- TLP on a trusted platform
- this approach may be applied wherever the TLP is located, including the cases that the TLP is on the resource 30 as in FIG. 5 or on the registration entity 38 as in FIG. 6 .
- the specific case where a Trusted Platform Module 90 is used is analysed.
- Other approaches to enhance the operation of TLP using trusted hardware could be used without necessarily requiring the usage of Trusted Platform Module 90 .
- the software could operate in conjunction with the TPM 90 as follows. Whenever new localisation information is to be created on the resource, the TLP instructs the TPM to create a new public key pair based on random sources comprising a new public key and a new private key. For security, the private key is never revealed outside the TPM, and the TLP will request the TPM to form any operations involving it.
- This private key that is uniquely associated to and only accessible by the TPM, can be used to sign and certify attributes related to the resource and the trusted platform. This allows the TLP to ask the TPM to sign using this key.
- TCG Trusted Computing Group
- TCG third parties could publish integrity metrics of (parts of) the TLP mechanism so that its correct operation could be checked as part of the (resource) boot integrity checking process, or in response to a challenge.
- the TPM could sign some of the generated information if appropriate; if desired, information about the software state of the platform could be included together with this signed data.
- An association is created between the identity of the trusted platform in the registration entity and localisation information. This information may be queried by third parties.
- an attribute certificate could be created in the registration entity 38 certifying that a resource holding the certificate has certain attributes, possibly including its locality.
- the certificate includes the new public key.
- the information from the TLP 48 that is to be sent is signed by sending the information to the TPM 90 for signature.
- This signature certifies the localisation information sent.
- the trusted privacy module has a data storage key for storing data. Only the trusted privacy module knows the key ensuring that other components cannot access the data. This key may be migratory, i.e. usable on all platforms, or non-migratory, i.e. only usable on the platform of that particular trusted privacy module.
- This data storage key may be used to protect a signature key in the trusted privacy module so that only the trusted privacy module can access the signature key to use it to sign data.
- the trusted privacy module approach may also be used to ensure that the signed localisation data is not disclosed in an environment not believed to be safe.
- the signature key used by the trusted privacy module to sign data is non-migratory, so that the recipient of a certificate signed by the signature key is assured that the signing key was used on the correct trusted privacy module.
- the embodiments described above can ensure, with suitable privacy policies, that confidential data is processed only on resources that satisfy privacy policies relevant to the data.
- the various “trusted” services use trusted platforms implemented in hardware and software.
- the invention is applicable to software based systems also where such systems can provide sufficient security.
- trusted when referring to a service means that the entity accessing that service has confidence that the service will behave in the expected manner for the intended purpose.
- Judgements can be made based on evidence on a combination of social trust and integrity information about the state of the platform.
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Storage Device Security (AREA)
- Computer And Data Communications (AREA)
Abstract
Description
- This is a divisional of U.S. application Ser. No. 11/335,877, filed Jan. 20, 2006, which claims priority from United Kingdom Appl. No. 0501392.5, filed Jan. 22, 2005, both hereby incorporated by reference.
- The invention relates to dynamically allocating resources with privacy enforcement, and to methods, apparatus, networked systems and computer software for carrying out this task.
- In modem networked computer systems, computing resources may be allocated dynamically based on business needs. The physical location of the resources can vary widely, and data is not necessarily stored on local data storage.
- In such networked computer systems confidential computer information can be transferred widely. However, it is important to ensure that confidential information can only be accessed by suitable users, which may be determined geographically, by business function, or in many other ways.
- Thus, some form of privacy management may be required.
- However, as networked computer systems are increasingly based on dynamic processing assumptions privacy management based on static assumptions will no longer be adequate.
- For example, EP 1220 510 describes context aware computing. Devices and methods are provided that are context aware, in an example location aware, so that policies are evaluated as a function of context.
EP 1 220 510 is particularly concerned with a way of encoding locations in a uniform way. - US 2003/0163431 describes a secure computing system for enforcing a secure handling and control chain.
- Resource protection in distributed system is addressed in U.S. Pat. No. 6,658,573. The system uses name resolution reducing direct access to a resource and controls the name resolution process for indirect access to a resource. An interception manager can prevent the resolution of some symbolic names in appropriate cases.
- However, this approach only addresses the question of accessing resources not selecting resources to carry out tasks on a system with distributed processing and storage capacity and validating that those resources are authorised to carry out that processing.
- In a first aspect, the invention relates to a method of dynamically allocating computing resources for a transaction related to data, comprising the steps of:
- (a) receiving a request requiring a computing resource to process data to be processed;
(b) selecting, based on the data to be processed and contextual information a set of rules associated with the data to be processed;
(c) selecting a selected resource or resources to process the data and transmitting the data, in a protected or encrypted format, to the selected resource or resources;
(d) sending a message from the selected resource to a trusted privacy service requesting a key to decrypt the data to allow the data to be decrypted so that it can be processed on the selected resource;
(e) determining in the trusted privacy service whether the selected resource complies with the selected rules and if so sending a key from the trusted privacy service to the resource to allow the resource to decrypt the data and process the data. - In a second aspect, the invention relates to a computer system including:
- a plurality of resources;
a network linking the resources;
at least one trusted localisation provider arranged to certify the location of the resource or resources;
a policy package associated with data defining different privacy policies for the data and metadata to select the relevant set of privacy policies;
at least one trusted privacy service arranged to enforce the privacy policies a store storing confidential data in an encrypted fashion, wherein the encrypted data can only be decrypted using one or more keys; and
allocating resources to process the data;
wherein the trusted privacy service is arranged to supply one or more keys to a resource to allow that resource to process data if the trusted privacy service determines from the trusted localisation provider and the resource that the privacy policy allows processing of the data on that resource in that location. - The invention also relates to the various components of the computer system and methods of operating them, as well as computer program products arranged to carry out the method.
- For a better understanding of the invention, embodiments will now be described, purely by way of example, with reference to the accompanying drawings, in which:
-
FIG. 1 is a schematic diagram of a first embodiment of the invention; -
FIG. 2 is a schematic diagram of a second embodiment of the invention; -
FIG. 3 is a schematic diagram of a detail of the second embodiment; -
FIG. 4 is a schematic diagram of a further detail of the second embodiment; -
FIG. 5 is a schematic diagram of a yet further detail of the second embodiment; and -
FIG. 6 is a schematic diagram of a third embodiment. - Referring to
FIG. 1 , a first example will be presented. This example is of a distributed computer system in two countries handling personal data subject to different privacy policies and legislation. - The first example is simple for ease of explanation and does not represent the full power of the approach described in the present specification.
- The system includes
storage resources 10,processing resources 12 and anetwork 14 linking the resources. These resources are located in two countries, country A, and country B. Some of the processing resources are secure processing resources having a secure processing module 16 within them. A number ofuser terminals 18 are also provided, which are also resources. - For simplicity, it will be assumed that the data stored is the salary, job description, work telephone number and email address of employees.
- Depending on the country of employment, different privacy policies will be imposed by national law. Privacy laws and guidelines change according to location, geographical boundaries, contextual aspects, local customs/culture, etc. It is important to assess which “policy” applies at the point of data processing/transfer/disclosure.
- For example, it may be assumed that country B has a national law preventing work telephone numbers being publicly available. Country A has no such law. Thus, depending on the country of employment of an employee, the work telephone number may be confidential information or not.
- A
policy package 20 describes the privacy policies of the data in a context aware manner. In this embodiment, asingle policy package 20 is provided represented by a matrix listing the data field against the country of employment, and having an entry describing the confidentiality policy for the relevant data. For example, in the embodiment described, thepolicy package 20 may be described by metapolicies and a matrix as follows: -
Meta-policies: IF Processing_location = “Country A” THEN Apply_Policy1 ELSE Apply_Policy2 ELSE Deny_Access Information Policy 1 Policy 2Salary Strictly Confidential Strictly Confidential Work Telephone Not Confidential Confidential Email Not Confidential Not Confidential Job Description Not Confidential Not Confidential - The
policy package 20 also includes a set of rules defining the privacy policies implied by the three confidentiality levels “Confidential”, “Strictly Confidential” and “Not Confidential”. In the example, metarules define how to select privacy policies based on location criteria. - In general, policies are much more complex than this. They may include logical constraints and conditions on time, location, identity/roles, credentials, properties. IT is a particular benefit of this and other embodiments that a wide variety of different policies can be implemented.
- Note that the
policy package 20 is closely associated with thedata 24 represented by the policy package. Conveniently, this may be achieved by storing the policy package and thedata 24 as a single file. - Preferably, the processing environment generally ensures that the policy package and data cannot be separated and maintains the integrity of the data item, i.e. the policy package and data.
- These rules may be set out as an XML file. The package may be digitally signed. The package is stored in a secure environment, which may be determined by the system itself by allocating a very high security level to the
policy package 20 so that it can only be processed by the trusted privacy server 26 (see below). - Data that is confidential, e.g. has a confidential level of “Confidential” or “Strictly Confidential”, is stored in an encrypted format. The XML file may specify different encryption policies depending on the confidentiality level. For example, the minimum key length for “Confidential” may be less than for “Strictly Confidential” information. Further, suppose that in the example salary data may only be processed in the country of the employee. Much more complex policies might apply.
- Each
resource localisation provider 22. This provides certified location of the resource, with different degrees of assurance (for example via signed certificates) stating the location of the resource. In this simple embodiment, the certificate is simply stored in a secure manner in the trusted localisation provider. - A trusted
privacy server 26 is provided to check and enforce privacy policies based on the “policy package”. - The requirements that need to be satisfied in order to access and process confidential data are determined by the
policy package 20, as interpreted by the trustedprivacy service 26. The trustedprivacy service 26 can discriminate which resources can and cannot process associated confidential data. Further, the trustedprivacy service 26 determines which privacy policies apply. - This is achieved by ensuring that confidential data is only transferred between resources in encrypted form. The only way that a resource can process the data is to decrypt the data using one or more decryption keys. The trusted
privacy service 26 only provides the decryption key for specific data items to resources that are allowed to process those specific data items, based on the privacy policy. To process data, theresource 22 sends a message to the trustedprivacy service 26 requesting a key. The trusted privacy service determines if the resource meets the appropriate privacy policy and only provides the key to the resource if it does. One or more trusted privacy services could be used. - For example, the privacy policy may be such as to require salary data only to be processed by resources in the country in question. Thus, in this case, the trusted privacy server will only issue the decryption key for specific items of salary data to resources for which the trusted
localisation provider 22 located within the resource confirms that the resource is in the correct country, in accordance with the rules of the privacy policy. - Note that the data in the present case may include items of different sensitivity. These may be coded with a number of different keys. The trusted privacy service provides one or more keys as requested to a resource, if that resource may process the corresponding data according to the privacy policy.
- The privacy policy may further require that the resource is a trusted resource that is able to securely process confidential data, and may further require that the resource only processes data in certain ways. For example, the privacy policy may require that salary data not be published and so only resources that provide suitable guarantees to the trusted privacy service regarding the security of the resource and the process to be carried out on the data will be provided with the decryption code for that data.
- It is an important feature of this embodiment that the resources may be dynamically allocated so that processing and storage can be carried out where capacity is available.
- In this example,
resource allocation service 28 allocates resources to process persona/confidential data. When a resource is required, the resource allocation service identifies a potentially suitable resource and obtains from the trusted localisation provider the locality of the resource. Further information regarding the resource is obtained. This information is used to determine whether the resource is permitted to carry out the operation required. If so, theresource allocation service 28 allocates the resource and the resource interacts directly with the trusted privacy service to obtain access to the data, if required. - It will be noted that some operations, for example storage, do not require decryption. Nevertheless, the
resource allocation server 28 still only selects resources meeting the requirements of the privacy policy, for example to store confidential data only on approved storage resources. In these cases however there is no need to decrypt the data at all so this is not done. - If the
resource allocation server 28 determines from the trustedprivacy server 26 that a resource is not suitable, theresource allocation server 28 tries to allocate a different resource until one is found that is suitable. If no suitable resource is found, an error message is generated. - In this way, resources are dynamically allocated on the basis of privacy and other requirements and contextual information. The privacy policies can be readily changed and updated by changing the
policy package 20. Thus, the embodiment allows the ready enforcement of a variety of different requirements in a consistent and accountable way. The use of the trustedlocalisation provider 22 ensures that not merely the security requirements of a confidential server but also the correct processing location is used when required. - For example, if a
user computer 18 attempts to access data, the user computer will only be allowed access to confidential data if the user computer has a suitable location, as determined by the trusted localisation provider, as well as a suitably secure processing facility. - Note that a benefit of the embodiment is that in the event of new rules regarding confidentiality related to certain pieces of data it is only necessary to change the privacy polices associated with that data.
- Moreover, the system can readily cope with a very large number of different policy packages and policies since the policy package is associated with the data.
- It should be noted that the trusted privacy module has a very different function to the privacy manager of EP 1220510, even if the name is similar. In EP 1220510, the privacy manager censors the location information transmitted by a mobile device, i.e. it ensures privacy of the location information. In contrast, in the embodiments, the trusted privacy module ensures privacy of the data by only releasing a key when the location of a resource is correct.
- A further difference from EP 1220510 is that in EP 1220510 a predetermined set of policies are provided relating to the device. In the embodiments, different data may have entirely different policies. In addition the same data might be subject to different policies depending on the context. Thus, the flexibility of the approach described here is greater.
- The entire process may be audited.
- A second example will now be described with reference to
FIGS. 2 to 5 . - In this embodiment, a trusted platform approach is used. Referring to
FIG. 2 , a number ofservers 30 are provided infirst locality 32 and in asecond locality 34. Aresource allocation service 36 and aregistration entity 38 are provided in each locality. - A
policy package 40 is strongly associated withconfidential data 42 which may however be stored and executed on any of theservers 30. A Trusted Privacy Service (TPS) 44 is provided to police the privacy rules. Resources need to interact with theTPS 44 to process the confidential data, and to this end the resources have aTPS Interaction Module 46 for carrying out this interaction. The resources further include a trusted localisation provider (TLP) for providing localisation information about the resource. -
FIG. 3 shows apolicy package 40. Note that in this embodiment the policy package is closely associated with theconfidential data 42 and sets out the rules for processing that data. The system may include other data with other policy packages, and indeed it is a benefit of this embodiment that it is easy to apply very different policies to different data, and in the event that new data requires new policies, these can be determined when the new data is created and simply attached to the data. - The
policy package 40 containsmeta policies 50 together withspecific policies 52 andoptional signature 54. Thepolicy package 40 is in essence a data document that stores the policies. The policies are sets of logical rules that may be expressed in any convenient way, as will be known to those skilled in the art. For example, the policies may be expressed as digitally signed XML data. - Suitable standards for recording such rules include the Extensible Access Control Markup language (XACML). Alternatively, the Enterprise Privacy Authorization language (EPAL) might be used.
- The meta-
policies 50 are policies that specify the selection of a particular one of the policies for data depending on selection criteria. Thus, one policy may be selected if data is processed in one locality, and a different policy if data is processed in another locality. - The
privacy policies 52 themselves are rules that determine how data is to be processed. For example, if the data is being processed outside the locality in which the data was created, certain activities may be prohibited, for example printing the data or outputting it in any way. For more secure types of data, the rule may specify that the data can only be processed on a trusted platform. - The association of data and policy package can be assured using cryptographic techniques, for example by encrypting the data. The integrity of policies and metapolicies can be enforced by a number of techniques, including in particular signatures and enveloping techniques.
- The functions of the
registration entity 38 andresource allocation service 36 will now be described. - The
registration entity 38 includes a list of available resources, which may be all or some of the resources. In the example ofFIG. 2 , aseparate registration entity 38 is provided in each of the first andsecond localities registration entity 38 also contains details of other registration entities that may be able to allocate resources. - The
registration entity 38 obtains localisation information from the servers using the trusted localisation provider (TLP) 48 installed on each of theresources 30. - In some cases, the resources will not have TLPs installed, and in others only some of the resources will have TLPs installed. In these cases the registration entity can manage in a centralised manner the localisation information, and may for example act as the TLP for these resources.
- When resources are required, for example to carry out a processing task on data, the resource allocation service identifies resources based on the
policy package 40 associated with thedata 42 and the information in theregistration entity 38 about its resources. In the event that resources under the control ofother registration entities 38 andresource allocation services 36 are required, the data regarding these too is obtained from theregistration entity 38. - Note that in the example there is one
registration entry 38 for eachresource allocation service 36 though this is not required, so long as there is at least one resource allocation service in the network. - In alternate embodiments the
registration entity 38 is dispensed with and allocation is made “on the fly”. When the resource allocation service needs to process a resource,potential resources 30 are identified by the resource allocation service and theresource 30 itself checks whether it can carry out the required processing, using the TLP within the resource and thepolicy package 40 associated with the data. - The interaction of the
Trusted Privacy Service 44 with theresource 30 will now be discussed with reference toFIG. 4 . - The
resource 30 includes aTLP 48 and aTPS Interaction module 46. TheTPS Interaction Module 46 includes acommunications module 60 for communicating with theTPS 44, a disclosure monitoring andcontrol module 62, apolicy engine 64 and acryptographic module 66 for decrypting data. - The TPS includes a
communications module 70 for communicating withresources 30 and a cryptographic module 72 for decrypting data when required. A Tracing/Auditing module 74 records the operation of theTPS 44. A disclosure monitoring andcontrol module 76 controls disclosure of data, and apolicy engine 78 enforces policies. - A
context manager 82 is provided to gather contextual information from theresource 30 and process the relevant set of privacy policies. - The TPS includes secure tamper
resistant storage 84. - To explain the functions of these modules, the processing of data by the resource will now be described.
- In order for a
resource 30 to process data it needs to decrypt it. Theresource 30 sends thepolicy package 40 associated with theencrypted data 42 to theTPS 44. Thecontext manager 82 then gathers contextual information from the TLP of theresource 30 that identifies the location of the resource. Thecontext manager 82 may also gather data for example from thepolicy engine 64 of the resource or elsewhere to check which policy package are to be implemented. The exchange between thecontext manager 82 and theresource 30 is logged by theTracing Auditing module 74. - In the event that the
resource 30 satisfies the privacy policies of thepolicy package 40, the trustedprivacy service 44 uses the cryptographic module 72 to generate the keys needed to access theconfidential data 42 and sends them to theresource 30 to allow the resource to decrypt and process the data. -
FIG. 5 shows a trustedserver 30 with a trusted localisation platform (TLP) 48. TheTLP 48 is implemented as software having a trusted localisation software which certifies or provides localisation information through an Application Program Interface (API) 80. TheTLP 48 includes acredential verifier 82 and a credential issuer andmodifier 84. TheTLP 48 getslocalisation information 86 which may be the machine access control (MAC) or IP address of the platform together withvarious credentials 88. The localisation information is supplied to theTPS 44. - In some embodiments, this will be sufficient but in the embodiment described a trusted privacy module (TPM) 90 is provided to improve the trust. In the embodiment now being described, this is a hardware module for security, though this may not be essential in all applications.
- The trusted
privacy module 90 certifies the localisation information and thereby improves the credence of that information. - The information about the location of the resource may be obtained in one of a number of ways. The information may be obtained from network information relating to the location of the resource with a network. The location information is not necessarily purely geographic. For example, the localisation information may determine whether the computing resource is attached directly to a company network by a secure fixed link, or alternatively attached to the network by a less secure route, for example by a WiFi port or through the interne.
- Other known ways of establishing location, for example the global positioning system, may also be used if pure geographic information is required.
- In many arrangements, a variety of these approaches will be adopted.
-
FIG. 6 shows an alternative approach to the trusted localisation platform which may be adopted in a third embodiment. In this approach, as shown inFIG. 6 , the TLP is provided in the registration entity. - In this case, the
software TLP 48 has anAPI 92 and arequest handler 94. A localisation checker/issuer 96 associates localisation information withresources 30. Information regarding theseresources 30 is taken from the resource and stored in thedatabase 98. It is supplied from there directly to theTPS 44. - This has a significant benefit, in that the information is centralised. Further, the
registration entity 38 may be run on a trusted platform which can enhance the reliability and verifiability of the localisation information. - Note that in alternative arrangements, some TLPs may be TLPs in the
resources 30 as in the second embodiment as shown inFIG. 5 and others TLPs may be provided in theregistration entities 38 as inFIG. 6 . - The various components of software used to implement the various parts of the invention may be stored in any convenient data carrier, such as a hard disk, etc. For security, the data carrier may be a ROM or other data carrier that cannot easily be altered.
- In these approaches, the
servers 30,registration entity 38,resource allocation 36, and trustedprivacy service 44 may all be run on a trusted platform (TP). - The operation of a TLP on a trusted platform will now be described. Note that this approach may be applied wherever the TLP is located, including the cases that the TLP is on the
resource 30 as inFIG. 5 or on theregistration entity 38 as inFIG. 6 . The specific case where aTrusted Platform Module 90 is used is analysed. Other approaches to enhance the operation of TLP using trusted hardware could be used without necessarily requiring the usage ofTrusted Platform Module 90. - In the specific case where a
Trusted Platform Module 90 is used, the software (running on the resource) could operate in conjunction with theTPM 90 as follows. Whenever new localisation information is to be created on the resource, the TLP instructs the TPM to create a new public key pair based on random sources comprising a new public key and a new private key. For security, the private key is never revealed outside the TPM, and the TLP will request the TPM to form any operations involving it. - This private key, that is uniquely associated to and only accessible by the TPM, can be used to sign and certify attributes related to the resource and the trusted platform. This allows the TLP to ask the TPM to sign using this key. This uses functionalities specified by Trusted Computing Group (TCG) such as non-migratable keys to give a strong binding between the localisation information and the platform and to protect these keys by the TPM.
- As defined by TCG third parties could publish integrity metrics of (parts of) the TLP mechanism so that its correct operation could be checked as part of the (resource) boot integrity checking process, or in response to a challenge. The TPM could sign some of the generated information if appropriate; if desired, information about the software state of the platform could be included together with this signed data.
- An association is created between the identity of the trusted platform in the registration entity and localisation information. This information may be queried by third parties.
- To provide further assurance (for example, in case where information has to flow across multiple domains) an attribute certificate could be created in the
registration entity 38 certifying that a resource holding the certificate has certain attributes, possibly including its locality. The certificate includes the new public key. - The information from the
TLP 48 that is to be sent is signed by sending the information to theTPM 90 for signature. This signature certifies the localisation information sent. - By using such a certificate the localisation is bound to the platform and the certificate acts as evidence that a trusted privacy module signed the localisation information thereby guaranteeing the localisation information.
- More details follow about the trusted privacy module.
- The trusted privacy module has a data storage key for storing data. Only the trusted privacy module knows the key ensuring that other components cannot access the data. This key may be migratory, i.e. usable on all platforms, or non-migratory, i.e. only usable on the platform of that particular trusted privacy module.
- This data storage key may be used to protect a signature key in the trusted privacy module so that only the trusted privacy module can access the signature key to use it to sign data.
- The trusted privacy module approach may also be used to ensure that the signed localisation data is not disclosed in an environment not believed to be safe.
- In the present case, the signature key used by the trusted privacy module to sign data is non-migratory, so that the recipient of a certificate signed by the signature key is assured that the signing key was used on the correct trusted privacy module.
- In alternative arrangements using a migratory signature key then the user of the signature key must be relied upon to ensure that it is not used outside a trusted privacy module.
- The embodiments described above can ensure, with suitable privacy policies, that confidential data is processed only on resources that satisfy privacy policies relevant to the data.
- Note that in preferred embodiments the various “trusted” services use trusted platforms implemented in hardware and software. However, the invention is applicable to software based systems also where such systems can provide sufficient security. In this context the word “trusted” when referring to a service means that the entity accessing that service has confidence that the service will behave in the expected manner for the intended purpose. Judgements can be made based on evidence on a combination of social trust and integrity information about the state of the platform.
Claims (20)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/823,591 US20150350165A1 (en) | 2005-01-22 | 2015-08-11 | System and method for dynamically allocating resources |
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
GB0501392A GB2422453A (en) | 2005-01-22 | 2005-01-22 | Dynamically allocating resources according to a privacy policy |
GB0501392.5 | 2005-01-22 | ||
US11/335,877 US9137113B2 (en) | 2005-01-22 | 2006-01-20 | System and method for dynamically allocating resources |
US14/823,591 US20150350165A1 (en) | 2005-01-22 | 2015-08-11 | System and method for dynamically allocating resources |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US11/335,877 Division US9137113B2 (en) | 2005-01-22 | 2006-01-20 | System and method for dynamically allocating resources |
Publications (1)
Publication Number | Publication Date |
---|---|
US20150350165A1 true US20150350165A1 (en) | 2015-12-03 |
Family
ID=34259535
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US11/335,877 Active 2034-07-18 US9137113B2 (en) | 2005-01-22 | 2006-01-20 | System and method for dynamically allocating resources |
US14/823,591 Abandoned US20150350165A1 (en) | 2005-01-22 | 2015-08-11 | System and method for dynamically allocating resources |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US11/335,877 Active 2034-07-18 US9137113B2 (en) | 2005-01-22 | 2006-01-20 | System and method for dynamically allocating resources |
Country Status (2)
Country | Link |
---|---|
US (2) | US9137113B2 (en) |
GB (1) | GB2422453A (en) |
Families Citing this family (26)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10176338B2 (en) | 2005-11-23 | 2019-01-08 | Salesforce.Com | Secure distributed storage of documents containing restricted information, via the use of keysets |
US10127130B2 (en) | 2005-03-18 | 2018-11-13 | Salesforce.Com | Identifying contributors that explain differences between a data set and a subset of the data set |
US7613921B2 (en) | 2005-05-13 | 2009-11-03 | Intel Corporation | Method and apparatus for remotely provisioning software-based security coprocessors |
US8108668B2 (en) | 2006-06-26 | 2012-01-31 | Intel Corporation | Associating a multi-context trusted platform module with distributed platforms |
CN101589379A (en) * | 2006-11-06 | 2009-11-25 | 戴尔营销美国公司 | A system and method for managing data across multiple environments |
US8590002B1 (en) | 2006-11-29 | 2013-11-19 | Mcafee Inc. | System, method and computer program product for maintaining a confidentiality of data on a network |
US8621008B2 (en) | 2007-04-26 | 2013-12-31 | Mcafee, Inc. | System, method and computer program product for performing an action based on an aspect of an electronic mail message thread |
US8199965B1 (en) | 2007-08-17 | 2012-06-12 | Mcafee, Inc. | System, method, and computer program product for preventing image-related data loss |
US20130276061A1 (en) | 2007-09-05 | 2013-10-17 | Gopi Krishna Chebiyyam | System, method, and computer program product for preventing access to data with respect to a data access attempt associated with a remote data sharing session |
US8064605B2 (en) * | 2007-09-27 | 2011-11-22 | Intel Corporation | Methods and apparatus for providing upgradeable key bindings for trusted platform modules |
US8446607B2 (en) * | 2007-10-01 | 2013-05-21 | Mcafee, Inc. | Method and system for policy based monitoring and blocking of printing activities on local and network printers |
US8893285B2 (en) | 2008-03-14 | 2014-11-18 | Mcafee, Inc. | Securing data using integrated host-based data loss agent with encryption detection |
US9077684B1 (en) | 2008-08-06 | 2015-07-07 | Mcafee, Inc. | System, method, and computer program product for determining whether an electronic mail message is compliant with an etiquette policy |
US20100077484A1 (en) * | 2008-09-23 | 2010-03-25 | Yahoo! Inc. | Location tracking permissions and privacy |
US8479017B2 (en) * | 2010-06-21 | 2013-07-02 | Intel Corporation | System and method for N-ary locality in a security co-processor |
WO2012047204A1 (en) * | 2010-10-05 | 2012-04-12 | Empire Technology Development Llc | Resource reservation |
US20120222083A1 (en) * | 2011-02-28 | 2012-08-30 | Nokia Corporation | Method and apparatus for enforcing data privacy |
WO2012154559A1 (en) * | 2011-05-09 | 2012-11-15 | Beyondcore, Inc. | Secure handling and storage of documents with fields that possibly contain restricted information |
US20120291096A1 (en) | 2011-05-12 | 2012-11-15 | Nokia Corporation | Method and apparatus for secure signing and utilization of distributed computations |
US10802687B2 (en) | 2011-12-04 | 2020-10-13 | Salesforce.Com, Inc. | Displaying differences between different data sets of a process |
US10796232B2 (en) | 2011-12-04 | 2020-10-06 | Salesforce.Com, Inc. | Explaining differences between predicted outcomes and actual outcomes of a process |
GB2498204A (en) * | 2012-01-06 | 2013-07-10 | Cloudtomo Ltd | Encrypted data processing |
US10445508B2 (en) | 2012-02-14 | 2019-10-15 | Radar, Llc | Systems and methods for managing multi-region data incidents |
US10033744B2 (en) * | 2013-10-22 | 2018-07-24 | Eteam Software Pty Ltd | System and method for certifying information |
US9674343B2 (en) * | 2014-11-20 | 2017-06-06 | At&T Intellectual Property I, L.P. | System and method for instantiation of services at a location based on a policy |
US10972258B2 (en) * | 2018-07-31 | 2021-04-06 | Mcafee, Llc | Contextual key management for data encryption |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020023010A1 (en) * | 2000-03-21 | 2002-02-21 | Rittmaster Ted R. | System and process for distribution of information on a communication network |
US20040117309A1 (en) * | 2001-07-09 | 2004-06-17 | Ryuji Inoue | Content management system and information recording medium |
US7404084B2 (en) * | 2000-06-16 | 2008-07-22 | Entriq Inc. | Method and system to digitally sign and deliver content in a geographically controlled manner via a network |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5892900A (en) * | 1996-08-30 | 1999-04-06 | Intertrust Technologies Corp. | Systems and methods for secure transaction management and electronic rights protection |
KR100373526B1 (en) * | 1997-01-17 | 2003-02-25 | 인터내셔널 비지네스 머신즈 코포레이션 | Protecting resources in a distributed computer system |
US7233948B1 (en) * | 1998-03-16 | 2007-06-19 | Intertrust Technologies Corp. | Methods and apparatus for persistent control and protection of content |
CA2373483A1 (en) * | 1999-05-11 | 2000-11-16 | America Online Incorporated | Controlling access to content |
US7072956B2 (en) | 2000-12-22 | 2006-07-04 | Microsoft Corporation | Methods and systems for context-aware policy determination and enforcement |
JP2003101570A (en) * | 2001-09-21 | 2003-04-04 | Sony Corp | Communication processing system and method, and its server device and computer program |
GB2384874B (en) * | 2002-01-31 | 2005-12-21 | Hewlett Packard Co | Apparatus for setting access requirements |
US7207067B2 (en) * | 2002-11-12 | 2007-04-17 | Aol Llc | Enforcing data protection legislation in Web data services |
US7353533B2 (en) * | 2002-12-18 | 2008-04-01 | Novell, Inc. | Administration of protection of data accessible by a mobile device |
GB2398712B (en) * | 2003-01-31 | 2006-06-28 | Hewlett Packard Development Co | Privacy management of personal data |
US7461257B2 (en) * | 2003-09-22 | 2008-12-02 | Proofpoint, Inc. | System for detecting spoofed hyperlinks |
US7477740B2 (en) * | 2005-01-19 | 2009-01-13 | International Business Machines Corporation | Access-controlled encrypted recording system for site, interaction and process monitoring |
-
2005
- 2005-01-22 GB GB0501392A patent/GB2422453A/en not_active Withdrawn
-
2006
- 2006-01-20 US US11/335,877 patent/US9137113B2/en active Active
-
2015
- 2015-08-11 US US14/823,591 patent/US20150350165A1/en not_active Abandoned
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020023010A1 (en) * | 2000-03-21 | 2002-02-21 | Rittmaster Ted R. | System and process for distribution of information on a communication network |
US7404084B2 (en) * | 2000-06-16 | 2008-07-22 | Entriq Inc. | Method and system to digitally sign and deliver content in a geographically controlled manner via a network |
US20040117309A1 (en) * | 2001-07-09 | 2004-06-17 | Ryuji Inoue | Content management system and information recording medium |
Also Published As
Publication number | Publication date |
---|---|
US9137113B2 (en) | 2015-09-15 |
GB2422453A (en) | 2006-07-26 |
GB0501392D0 (en) | 2005-03-02 |
US20060190986A1 (en) | 2006-08-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9137113B2 (en) | System and method for dynamically allocating resources | |
US11475137B2 (en) | Distributed data storage by means of authorisation token | |
EP2656270B1 (en) | Tamper proof location services | |
US8850593B2 (en) | Data management using a virtual machine-data image | |
Mowbray et al. | Enhancing privacy in cloud computing via policy-based obfuscation | |
US11290446B2 (en) | Access to data stored in a cloud | |
JP5361894B2 (en) | Multi-factor content protection | |
US8726342B1 (en) | Keystore access control system | |
Majumder et al. | Taxonomy and classification of access control models for cloud environments | |
US8448228B2 (en) | Separating authorization identity from policy enforcement identity | |
US11640480B2 (en) | Data message sharing | |
Porkodi et al. | Secure data provenance in Internet of Things using hybrid attribute based crypt technique | |
US7966460B2 (en) | Information usage control system, information usage control device and method, and computer readable medium | |
Shivanna et al. | Privacy preservation in cloud computing with double encryption method | |
Reddy et al. | Enterprise Digital Rights Management for Document Protection | |
WO2021073383A1 (en) | User registration method, user login method and corresponding device | |
KR100652990B1 (en) | Framework preventing unauthorized use of documents | |
Pearson et al. | Securing information transfer in distributed computing environments | |
Trias et al. | Enterprise level security | |
CN117294465B (en) | Attribute encryption system and method based on cross-domain communication | |
US20230353362A1 (en) | Access policy token | |
TW202433319A (en) | Attribute based encryption key based third party data access authorization | |
Gupta et al. | Data Security Threats Arising Between a Cloud and Its Users | |
Hasan et al. | Privacy in the Cloud | |
Kounga et al. | Enforcing sticky policies with TPM and virtualization |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: HEWLETT PACKARD ENTERPRISE DEVELOPMENT LP, TEXAS Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:HEWLETT-PACKARD DEVELOPMENT COMPANY, L.P.;REEL/FRAME:037079/0001 Effective date: 20151027 |
|
AS | Assignment |
Owner name: HEWLETT-PACKARD DEVELOPMENT COMPANY, L.P., TEXAS Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:HEWLETT-PACKARD LIMITED;REEL/FRAME:037456/0099 Effective date: 20060130 |
|
STCB | Information on status: application discontinuation |
Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION |