|Publication number||US7194759 B1|
|Application number||US 09/663,664|
|Publication date||Mar 20, 2007|
|Filing date||Sep 15, 2000|
|Priority date||Sep 15, 2000|
|Publication number||09663664, 663664, US 7194759 B1, US 7194759B1, US-B1-7194759, US7194759 B1, US7194759B1|
|Inventors||David M. Chess, Joan Dyer, Naomaru Itoi, Jeff Kravitz, Elaine Rivette Palmer, Ronald Perez, Sean William Smith|
|Original Assignee||International Business Machines Corporation|
|Export Citation||BiBTeX, EndNote, RefMan|
|Patent Citations (31), Non-Patent Citations (22), Referenced by (30), Classifications (22), Legal Events (4)|
|External Links: USPTO, USPTO Assignment, Espacenet|
This invention generally relates to transactions using the World Wide Web; and more specifically, the invention relates to improving the security of such transactions.
The World Wide Web is the grounds where, on a broad scale, our society's business, government, and personal services are migrating and growing. As a basic model, a large population of clients with browsers obtain services from a smaller population of service providers operating Web servers. However, for each critical service that takes root in the Web (and arguably for many purely recreational services as well), the financial and personal interests of the clients force them to trust the integrity and privacy of the computation and data storage at the service providers.
Distributed computation (and even centralized computation, with multiple parties) introduces a fundamental problem: distribution dissociates dependency from control. Consider a basic scenario outlined in
In the above example, dependency on remote computation went one way. However, the scenario can be more complex, as
If Alice can break into her wallet, she can break PA; similarly, Bob can break PB. Alice's interests IA depend on PB holding; but Bob's interests IB motivate him to break PB. Symmetrically, Bob's interests depend on PA, which Alice is motivated to break.
All parties in this distributed e-cash system must trust all other parties; in a sense, the least-trusted user has the ability and the motivation to subvert the entire system.
Previous research had long speculated that programmable, trusted secure coprocessors could enable systematic solutions to problems such as
As the popularity of the Web—and the recognition of its potential for applications with real security issues—spread, many proposals and ideas surfaced to add security to the basic http protocol. At one point, three primary contenders emerged:
Primarily because Netscape's SSL protocol was the first to be widely deployed, SSL became the de facto standard for securing Web transactions.
As practiced, SSL permits the client to establish a shared symmetric key with a specific authenticated server. The server has a private-public keypair, and a certificate from some CA attesting to certain properties about the entity owning this public key. The client browser has some notion of which CA root keys it recognizes as valid. When a client opens an SSL connection, it verifies that the certificate from the server is correctly signed by a CA root that the client's browser currently recognizes as legitimate. The client and server then carry out a key generation/exchange protocol that ensures that the client, and a party which knows the private key matching the server's public key, share a symmetric key—that is (theoretically) shared by no one else, not even an adversary observing the messages between the client and server.
The remainder of the SSL session is then encrypted with this session key. Encryption with a key obtained this way provides several properties. Both parties can trust the privacy of data from the client to the server. Both parties can trust the privacy of data from the server back to the client. Both parties can trust that an adversary cannot alter or manipulate data in either direction without detection (since SSL provides integrity checking and sequence numbering). The client can trust the authenticity of the server (since the server entity must know the private key matching the public key in the certificate). The server can trust that, throughout the session, the entity claiming to be the client is the same entity that started the session.
Even with the current state of deployed technology (i.e., SSL), however, all the client can know for sure is the identity of the entity who originally possessed the public key in that server's certificate.
At best, this identity establishes good intentions—if the alleged service provider has a pre-existing reputation that makes this hypothesis plausible. On the other hand, a service provider with an unknown reputation might be downright malicious. Also, any service provider may have good intentions, but may be careless with general site security. Moreover, the entity with which the client is currently interacting may not even be this original service provider, but rather an imposter who has learned the private key.
This situation—that participants are forced to trust server integrity, but have no basis for this trust—is a fundamental problem threatening a wide variety of Web applications. Several of these applications are discussed below. These applications are shown herein to represent examples having missing security and/or privacy properties.
Authentication of Clients
The current Web infrastructure prevents a server from being able to prove anything to a third party about the identity of an alleged client. Without a public-key infrastructure for citizens, clients are forced to use human-usable authenticators, such as user ids and passwords. However, in the current infrastructure, these are exposed to the server of unknown integrity. As a consequence of this exposure, an adversary who compromises the server (or a malicious server operator) can impersonate this user at that site and any others where the client has used that password. This exposure also prevents legitimate server operators from being able to argue it really was a particular client who opened a particular a session. In this application, “user” and “client” are used interchangeably.
Nonrepudiation of Client Activity
The current Web infrastructure prevents a server from being able to prove anything to a third party about the activity of an alleged client. For example, how can an insurance company taking an application over the Web turn around and prove that a particular individual really answered that question that way?
Nonrepudiation of Server Activity
The current Web infrastructure prevents a server from being able to prove anything to a third party about the activity of the server—including the questions that generated the answers a client provided.
Credit Card Transaction Security
The current Web infrastructure provides secure transmission of a client's credit-card information and transaction amount to a server, where they are then exposed. An adversary who compromises this server (or a malicious server operator) can change the amount of the transaction, retain the amount but repeat the transaction many times, or use the credit card information to forge additional transactions. This situation may significantly reduce the potential market for new e-merchants without a pre-established reputation.
Taxes on E-Commerce Activity.
The current Web infrastructure provides no acceptable means for a third party with legitimate interests (such as a government's tax collection service) to accurately learn certain information about individual or collective Web interactions (such as how much sales tax an e-merchant owes them for last month). Reporting all transactions to the government would be unacceptable to the merchant and customer for privacy concerns; while reporting only a total amount owed would be unacceptable to the government, since the figure would be unverifiable, and the merchant reporting this unverifiable figure would be motivated to understate it.
Re-Selling of Intellectual Property
The current Web infrastructure provides no acceptable means for a third party who participates in an interaction indirectly, by licensing proprietary information to the server, to protect their legitimate interests. For example, a publisher who owns a large copyrighted image database might wish to make this available to a university library—but might worry that compromise of the university server will compromise the database.
Privacy of Sensitive or Proprietary Web Activity
The current Web infrastructure provides no means for a server operator to plausibly deny that they (or an adversary who has compromised their machine) is not monitoring all client interactions. How can companies that are accessing a competitor's server, know for sure that said competitor is not data-mining their queries? What about people who wish to purchase sensitive literature (about health topics, or currently unfashionable politics)? If an auction server provides a bulletin board service where customers can post “anonymous, confidential” comments, how do the customers know their identity is being kept secret? What about a server who is participating in an anonymous re-rerouting service?
Correctness of Web Activity
The current Web infrastructure provides no means for a server operator to establish that they (or an adversary who has compromised their machine) has not otherwise altered or corrupted important correctness properties of the service. In the auction bulletin board service described above, how can customers know that the anonymous posts came from bona fide customers, and that the timestamps are correct?
Enforcement of Logo/“Seal of Approval” Licenses
The current Web infrastructure provides no effective means for a party to ensure that logos or endorsements appear only on the appropriate server pages. For example, a company could establish an “inspected” logo to endorse servers who have withstood inspection by the ethical hackers of IBM Global Services. However, any client who visits these pages can capture the logo, and put it on any page.
Safety of Downloadable Content
The current Web infrastructure provides no means for the client to ensure that executable content downloaded from a server is indeed safe, short of the client themselves actually running the latest anti-virus software. Since most consumers do not do this, this leaves them at risk. Moving this computation (and the anti-virus update problem) to the server is more efficient—but how can clients know the server really carried this out?
Authenticity of Downloadable Content
The current web infrastructure provides no easy means for the client to authenticate the origin of downloadable content. Posters of content can provide digital signatures, but then the client needs to explicitly obtain and verify the trust chain on each item. Moving this computation (and the latest certificate revocation lists) to the server is more efficient—but how can clients know the server really carried this out?
Integrity of Server Machine
The current Web infrastructure provides no means for the client to recognize those servers whose hosts do run more secure operating systems or have more secure administrative practices. How can a consumer know for sure that a site really ran a particular network security analyzer or used a particular new secure boot system?
An object of this invention is to provide a way for parties in a Web interaction to have confidence in the server integrity.
Another object of the present invention is to add a secure coprocessor to an existing service provider infrastructure.
A further object of this invention is to provide a set of programs for a coprocessor for an existing service provider, that address the fundamental web security problem by raising the trust level of the computation and data storage at the server.
Another object is to provide these properties without substantial changes to the client infrastructure.
Another one: that a server operator can enhance his service to have these properties, by adding hardware and software to his own site (instead of, for example, moving computation to a literal third party somewhere else in the net).
These and other objects are attained with, and with a method of using, a trusted co-server for a service provider. The co-server executes a program such that:
for multiple parties P0–Pn (where Po is said co-server)
each party Pi may (optionally) provide input Ii,
and then said co-server carries out N+1 functions: Fi (Io . . . In) describes what the co-server returns to party Pi.
The preferred embodiment of the invention, as described below in detail, raises the trust level of the computation and data storage at the sever. For instance, this invention may be witness to authenticity of certain data coming back to the client. This data can include assertions from the trusted guardian about the server content and configuration. We use the term “guardian” to refer to the trusted co-server. The invention, also, can provide privacy of data going back to the server, by keeping it encrypted between the client and the guardian, and then re-encrypting it before inserting it into the server.
With this invention, the user can trust the integrity of the computation occurring at the guardian—even if the server operator might be motivated to subvert it. The guardian also provides a trusted haven for computation relevant to third parties who may also have an interest in the client-server interaction.
As used herein a co-server is another computer participating in the service. A co-server is trusted (referred to as a trusted co-server) when the client and/or server operator can trust that this co-server operates securely. A secure coprocessor is a computer with sufficient physical and logical security protections so that it can be trusted to carry out its computation despite attack by an adversary with direct physical access. The IBM 4758 (further discussed in “building a high-performance, programmable secure coprocessor,” by Smith and Weingart, Computer Networks 31 (1999) 831–860) is an exemplary secure coprocessor; withstanding Level 4 validation against the FIPS 140-1 standard is an exemplary way of establishing that a coprocessor has sufficient physical and logical security protections.
Other methods may discuss using secure coprocessors as accelerators of SSL connections in the Web sites, but not using these as a trusted third party participating in the interaction in accordance with the present invention. For example, in the other methods the symmetric key guarding the client session is known by the server. Thus any communication sent back and forth is known by the server, thus forfeiting the security and privacy advantages provided by the present invention.
An aspect of the present invention is to provide an advantageous, (and most often relatively painless) way for clients to establish an authenticated and private channel to a trusted co-server. This is advantageously performed with minimal change to the current client infrastructure.
As example of a useful embodiment is when the service is a Web service, and a relatively “painless way” is SSL. Those familiar with the art will realize the many varying ways to use this trusted third party for various types of sessions and applications.
As used herein the term operator includes any of the many different types of operators. For example an “operator of service” may rent space on someone else's server. In this case, the “operator” may refer to said service operator, or said server operator.
The present invention is adaptable to a service and more particularly to a computational service. As used herein, a computational service is a service whose provision involves a computer. Examples include any information—and/or data—provider such as received and/or exchanged with a Web site, and especially an information/data-only Web site, and also a Web or other site through which a user purchases a physical object, etc.
One embodiment of the invention is a method for enhancing a service to provide security and privacy to each client of a plurality of clients. Said service includes computation. An exemplary service might be a Web site, with the clients being the remote users of this site accessing it via browsers. The invention moves a selected portion of the computation from a server into a trusted co-server executing to interact with the server through the co-server. In some embodiments the portion is the entire computation.
In another embodiment of this invention, the step of moving and enabling include providing a trusted third party at the server. That is, the client and/or server can trust the co-server to operate securely despite potential efforts by the client and/or server to compromise this security.
In another embodiment of this invention, the step of allowing includes enabling the client to have an authenticated, private channel to the co-server.
In another embodiment of this invention, the service is a Web service and the clients are remote users operating browsers.
In another embodiment of this invention, the step of enabling includes the client using the co-server's certified keypair to establish a shared symmetric key.
In another embodiment, the step of enabling includes using the Secure Sockets Layer (SSL) protocol.
Further benefits and advantages of the invention will become apparent from a consideration of the following detailed description, given with reference to the accompanying drawings, which specify and show preferred embodiments of the invention.
i) Continuously active tamper-detection circuitry (501) monitors tamper detectors (513) and, in case of physical attack, destroys sensitive secrets in secure memory (503, 504) before an adversary can access them; and
ii) Hardware locks (506) protect crucial code and secrets from possibly malicious or faulty application code, preserving the ability of each device to properly authenticate its configuration, and preventing a device with a rogue application from impersonating other devices and applications.
The application developer (602) then signs his application code with his private key, and gives this signed code, along with the vendor-provided commands, to the user (603). The user (603) provides these items to the security configuration software (605) within the secure coprocessor (604). This software validates the commands against the vendor's public key and other parameters in the parameters store (606). If things validate, the security configuration software takes these steps:
i) it updates the parameter store (606) to record that the application developer (602) now owns the application space within this device, and records the developer's idea and public key,
ii) it installs the application as the device's application software (607),
iii) it generates a keypair (609) for this application installation on this device; uses the devices's own keypair (608) to certify that this new keypair belongs to that application, for that owner, in that device; and leaves this application keypair (609) in a place where the application software (607) can access it at run-time.
We note that
The SSL Certificate Authority then issues an SSL-compatible certificate attesting to the public key of this keypair (709) and the entity (co-server application inside secure coprocessor at server operator) to which it belongs. The co-server application stores this certificate, and is then ready to participate as a trusted co-server to server operator's web application (711) on his web server (710).
This application ensures:
i) that client's private information remains private even from the server operator, and
ii) the client's credit card is only charged once, and for the agreed-on amount, even if the server operator (or a hacker who has compromised the server) attempts to cheat.
The co-server then decrypts this page (1204), and returns the plaintext to the user through the encrypted SSL channel (1205). This ensures that the client can obtain information such as potentially embarrassing medical data without revealing the data to a malicious server operator or compromised server. This would also ensure that a server operator could not be forced to reveal which data which clients are examining.
This invention can address each of the example problems discussed above: by enhancing a service to provide one or more desirable levels of security and/or privacy properties. This includes properties described herein and other properties known to those skilled in the art. A desirable level includes a level desired by a client, a service, a third party (e.g. a bank, a library, a data provider, a web site, a seller, a trusted authority, an operator, a manager, etc.) and any combination of these. Thus in an example embodiment the present invention provides methods and apparatus for a service to provide a client with a desired security level. This is advantageous particularly in applications missing security and/or privacy properties. As used herein the term security uses a broad definition to include, but not be limited to, correctness, non-disruption, overcoming and/or reacting to real and/or potential adversarial actions, maintaining all facets of privacy, etc.
Authentication of Clients
The program at the co-server can trap the password, authenticate the client, then issue a signed receipt that that client properly authenticated for that session.
Nonrepudiation of Client Activity
Besides issuing a receipt for client identity, the program at the co-server can issue a signed receipt for the entire transaction.
Nonrepudiation of Server Activity
The co-server can issue a receipt for the entire transaction, including the prompts the server provided, which generated the answers the client provided.
Credit Card Transaction Security
The program at the co-server can trap the credit card and transaction information, and inject it directly into the acquirer's system. The credit card number data never appears in plaintext at the server site; the server operator or a penetrator has no opportunity to inflate the transaction amount; and (unlike SET) the client need not change the way they operate. (This co-server application could be included as part of an entry-level e-merchant start-up package.)
Taxes on E-Commerce Activity
The program at the co-server can monitor the total tax owed by that merchant for the transactions that went through that co-server (e.g., because of some other co-server application there), and report that authenticated total back to the governmental entity.
Re-Selling of Intellectual Property
The owner of the property could provide it in ciphertext to the server; the co-server would decrypt the particular items being used, and ensure that appropriate licensing/royalty/watermarking requirements were being enforced.
Privacy of Sensitive or Proprietary Web Activity
With the proper private information retrieval scheme on the back-end, the co-server can fetch and provide the content to the client, without the server operator being aware of the content being fetched.
Correctness of Web Activity
The computation critical to the appropriate correctness properties can be moved into the co-server—whose application program would need to advertise that it was performing these computations.
Enforcement of Logo/“Seal of Approval” Licenses
The logo information could be provided, when appropriate, by the trusted co-server; logos that did not appear on an authenticated co-server-to-client channel are not legitimate.
Safety of Downloadable Content
An application at the co-server could run the latest anti-virus software either dynamically, as the data was being downloaded, or off-line (but then cryptographically verifying that the data being downloaded had indeed been scanned earlier). Clients can trust that content downloaded via this SSL-authenticated channel from the trusted co-server has been scanned.
Authenticity of Downloadable Content
An application at the co-server can verify the signatures of the posted content. Clients can trust that content downloaded via this SSL-authenticated channel from the trusted co-server has been authenticated. (Indeed, the client only need download the identity of the poster, not his public key, signature, and appropriate certificates.)
Integrity of Server Machine
If the trusted co-server can witness that the appropriate computational security tool (such as a network security analyzer or secure booting technique) was applied to the host—perhaps because this tool was applied from the co-server itself, or from a companion trusted machine—then it can include this data in the SSL-authenticated communication channel from the co-server to the client.
It should be noted that the above-discussed examples are exemplary embodiments, built around technology currently available commercially. Those skilled in the art would be able to develop alternate embodiments—particularly as new secure co-processing technology becomes available, and as continued experimentation and prototyping suggests modifications and improvements.
While it is apparent that the invention herein disclosed is well calculated to fulfill the objects stated above, it will be appreciated that numerous modifications and embodiments may be devised by those skilled in the art, and it is intended that the appended claims cover all such modifications and embodiments as fall within the true spirit and scope of the present invention.
|Cited Patent||Filing date||Publication date||Applicant||Title|
|US4817140||Nov 5, 1986||Mar 28, 1989||International Business Machines Corp.||Software protection system using a single-key cryptosystem, a hardware-based authorization system and a secure coprocessor|
|US4916738||Nov 5, 1986||Apr 10, 1990||International Business Machines Corp.||Remote access terminal security|
|US5109413||Nov 28, 1989||Apr 28, 1992||International Business Machines Corporation||Manipulating rights-to-execute in connection with a software copy protection mechanism|
|US5146575||Nov 5, 1986||Sep 8, 1992||International Business Machines Corp.||Implementing privilege on microprocessor systems for use in software asset protection|
|US5148534||Apr 3, 1991||Sep 15, 1992||International Business Machines Corp.||Hardware cartridge representing verifiable, use-once authorization|
|US5473692 *||Sep 7, 1994||Dec 5, 1995||Intel Corporation||Roving software license for a hardware agent|
|US5557518||Apr 28, 1994||Sep 17, 1996||Citibank, N.A.||Trusted agents for open electronic commerce|
|US5590197||Apr 4, 1995||Dec 31, 1996||V-One Corporation||Electronic payment system and method|
|US5590199 *||Oct 12, 1993||Dec 31, 1996||The Mitre Corporation||Electronic information network user authentication and authorization system|
|US5629980||Nov 23, 1994||May 13, 1997||Xerox Corporation||System for controlling the distribution and use of digital works|
|US5677955||Apr 7, 1995||Oct 14, 1997||Financial Services Technology Consortium||Electronic funds transfer instruments|
|US5696827||Jan 30, 1997||Dec 9, 1997||Brands; Stefanus Alfonsus||Secure cryptographic methods for electronic transfer of information|
|US5742756||Feb 12, 1996||Apr 21, 1998||Microsoft Corporation||System and method of using smart cards to perform security-critical operations requiring user authorization|
|US5768382||Nov 22, 1995||Jun 16, 1998||Walker Asset Management Limited Partnership||Remote-auditing of computer generated outcomes and authenticated biling and access control system using cryptographic and other protocols|
|US5768389||Jun 20, 1996||Jun 16, 1998||Nippon Telegraph And Telephone Corporation||Method and system for generation and management of secret key of public key cryptosystem|
|US5796840 *||Oct 4, 1995||Aug 18, 1998||Intel Corporation||Apparatus and method for providing secured communications|
|US5835595||Sep 4, 1996||Nov 10, 1998||At&T Corp||Method and apparatus for crytographically protecting data|
|US5848161 *||May 16, 1996||Dec 8, 1998||Luneau; Greg||Method for providing secured commerical transactions via a networked communications system|
|US5850442||Mar 26, 1996||Dec 15, 1998||Entegrity Solutions Corporation||Secure world wide electronic commerce over an open network|
|US5864620 *||Apr 24, 1996||Jan 26, 1999||Cybersource Corporation||Method and system for controlling distribution of software in a multitiered distribution chain|
|US5903882||Dec 13, 1996||May 11, 1999||Certco, Llc||Reliance server for electronic transaction system|
|US5917912||Jan 8, 1997||Jun 29, 1999||Intertrust Technologies Corporation||System and methods for secure transaction management and electronic rights protection|
|US5933498||Nov 5, 1997||Aug 3, 1999||Mrj, Inc.||System for controlling access and distribution of digital property|
|US5943424||Jun 17, 1996||Aug 24, 1999||Hewlett-Packard Company||System, method and article of manufacture for processing a plurality of transactions from a single initiation point on a multichannel, extensible, flexible architecture|
|US5956699||Nov 17, 1997||Sep 21, 1999||Jaesent Inc.||System for secured credit card transactions on the internet|
|US6385723 *||May 11, 1998||May 7, 2002||Mondex International Limited||Key transformation unit for an IC card|
|US6453296 *||Jan 31, 1997||Sep 17, 2002||Canon Kabushiki Kaisha||Electronic credit system and communication apparatus|
|US6643701 *||Nov 17, 1999||Nov 4, 2003||Sun Microsystems, Inc.||Method and apparatus for providing secure communication with a relay in a network|
|US6714982 *||Jan 19, 2000||Mar 30, 2004||Fmr Corp.||Message passing over secure connections using a network server|
|US6748528 *||Aug 30, 1999||Jun 8, 2004||International Business Machines Corporation||Methods, systems, and computer program products for establishing secured SSL communication sessions|
|US20020111997 *||Apr 26, 2001||Aug 15, 2002||Maurice Herlihy||Methods and systems for securing computer software|
|1||"IBM 4758 Models 1 and 13 PCI Cryptographic Coprocessor", IBM Product Brochure G221-9091, (1999).|
|2||"IBM Coprocessor First to Earn Highest Security Validation", Press release, IBM Corporation, Dec. 1998.|
|3||"Security Requirements For Cryptographic Modules", http://www.itl.nist.gov/fipspubs/fip140-1.htp, Federal Information Processing Standards Publication 140-1, (Jan. 1994).|
|4||*||Bruce Schneier, "Applied Cryptography", 1996; John Wiley & Sons; Second edition; pp. 566-571.|
|5||Dyer, J., et al., "Application Support Architecture for a High-Performance, Programmable Secure Coprocessor", IBM T.J. Watson Research Center, Yorktown Heights, New York 10598-0704.|
|6||Gobioff, H., et al., "Smart Cards in Hostile Environments", Proceedings of the Second USENIX Workshop on Electronic Commerce, Oakland, California, (Nov. 1996).|
|7||Havener, W., et al., "Derived Test Requirements for FIPS PUB 140-1, Security Requirements for Cryptographic Modules", http://csrc.nist.gov/cryptval/140-1/140test1.htr, (Mar. 1995).|
|8||Palmer, E., "An Introduction to Citade-A Secure Cryto Coprocessor for Workstations", Research Report, RC 18373, IBM T.J. Watson Research Center, 1992.|
|9||Smith, S., "Secure Coprocessing Applications and Research Issues",Los Alamos National Laboratory, Los Alamos Unclassified Release LA-UR-96-2805, (Aug. 1, 1996).|
|10||Smith, S., "Validating a High-Performance, Programmable Secure Coprocessor", IBM T.J. Watson Research Center, Yorktown Heights, New York 10598-0704.|
|11||Smith, S., et al., "Building a high-performance, programmable secure coprocesser," Reprinted from Computer Networks, The International Journal of Computer and Telecommunications Networking, Secure Systems and Smart Cards, IBM T.J. Watson Research Center, Computer Networks 31, (1999), pp. 831-860.|
|12||Smith, S., et al., "Practical Private Information Retrieval with Secure Coprocessors", IBM Research Report, RC 21806 (Log#98098), (Jul. 27, 2000).|
|13||Smith, S., et al., "Practical Private Information Retrieval with Secure Coprocessors", IBM T.J. Watson Research Center May 23, 2000, pp. 1-11.|
|14||Smith, S., et al., "Trusting Trusted Hardware: Towards a Formal Model for Programmable Secure Coprocessors", Proceedings of the 3rd USENIX Workshop on Electronic Commerce, Boston, Mass., (Aug. 31-Sep. 3, 1998).|
|15||Smith, S., et al., "Using a High-Performance, Programmable Secure Coprocessor", IBM T.J. Watson Research Center, Yorktown Heights, New York 10598, pp. 73-89.|
|16||Weingart, S.H., "Physical Security for the ABYSS System", IEEE Security and Privacy, Oakland, 1987.|
|17||White, S.R., et al., "ABYSS: A Trusted Architecture for Software Protection", IEEE Security and Privacy, Oakland, 1987.|
|18||White, S.R., et al., "Introduction to the Citadel Architecture: Security in Physically Exposed Environments", Research Report RC 16672, IBM T.J. Watson Research Center, 1991.|
|19||Wilhelm, U., et al., "Introducing Trusted Third Parties to the Mobile Agent Paradigm", Laboratoire de Systemes d'Exploitation, Institut pour les Communications Informatiques et leurs Applications Ecole Polytechnique Federale de Lausanne, 1015 Lausanne, Switzerland.|
|20||Wilhelm, U., et al., "Introducing Tusted Tird Parties to the Mobile Agent Paradigm", Institut pour les Communications informatiques et leurs Applications Ecole Polytechnique Federale de Lausanne, 1015 Lausanne, Switzerland.|
|21||*||Wilhelml, U., et al. "Introducing Trusted Third Parties to the Mobile Agent Paradigm" Institute pour les Communications informatiques et leurs Applications, Ecole Polytechnique Fédérale de Lausanne, 1015 Lausanne, Switzerland, pp. 1-21.|
|22||Yee, B., "Using Secure Coprocessors", School of Computer Science Carnegie Mellon University, Pittsburgh, PA 15213, (1994).|
|Citing Patent||Filing date||Publication date||Applicant||Title|
|US7548889 *||Jan 24, 2005||Jun 16, 2009||Microsoft Corporation||Payment information security for multi-merchant purchasing environment for downloadable products|
|US7725404 *||Nov 23, 2005||May 25, 2010||Imagineer Software, Inc.||Secure electronic commerce using mutating identifiers|
|US7742605 *||Aug 6, 2001||Jun 22, 2010||Nokia Corporation||Method and system for authentification of a mobile user via a gateway|
|US8099365||Jun 23, 2006||Jan 17, 2012||Microsoft Corporation||Extended data collection for multi-merchant purchasing environment for downloadable products|
|US8200968 *||Dec 20, 2007||Jun 12, 2012||The Directv Group, Inc.||Method and apparatus for communicating between a requestor and a user receiving device using a user device locating module|
|US8327441 *||Feb 17, 2012||Dec 4, 2012||Taasera, Inc.||System and method for application attestation|
|US8621641||Feb 29, 2008||Dec 31, 2013||Vicki L. James||Systems and methods for authorization of information access|
|US8682800 *||Jan 30, 2007||Mar 25, 2014||Microsoft Corporation||Controlling access to technology based upon authorization|
|US8745654||Feb 9, 2012||Jun 3, 2014||The Directv Group, Inc.||Method and system for managing digital rights for content|
|US8776180||Jul 27, 2012||Jul 8, 2014||Taasera, Inc.||Systems and methods for using reputation scores in network services and transactions to calculate security risks to computer systems and platforms|
|US8789149||Dec 20, 2007||Jul 22, 2014||The Directv Group, Inc.||Method and apparatus for communicating between a user device and a user device locating module to allow a partner service to be provided to a user device|
|US8850588||Jul 27, 2012||Sep 30, 2014||Taasera, Inc.||Systems and methods for providing mobile security based on dynamic attestation|
|US8990948||Jul 27, 2012||Mar 24, 2015||Taasera, Inc.||Systems and methods for orchestrating runtime operational integrity|
|US9027125||Jul 27, 2012||May 5, 2015||Taasera, Inc.||Systems and methods for network flow remediation based on risk correlation|
|US9083700||Nov 26, 2013||Jul 14, 2015||Vicki L. James||Systems and methods for authorization of information access|
|US9092616||Jul 27, 2012||Jul 28, 2015||Taasera, Inc.||Systems and methods for threat identification and remediation|
|US9143493 *||Dec 20, 2007||Sep 22, 2015||The Directv Group, Inc.||Method and apparatus for communicating between a user device and a gateway device to form a system to allow a partner service to be provided to the user device|
|US20040103283 *||Aug 6, 2001||May 27, 2004||Zoltan Hornak||Method and system for authentification of a mobile user via a gateway|
|US20060167810 *||Jan 24, 2005||Jul 27, 2006||Microsoft Corporation||Multi-merchant purchasing environment for downloadable products|
|US20060167819 *||Jan 24, 2005||Jul 27, 2006||Microsoft Corporation||Payment information security for multi-merchant purchasing environment for downloadable products|
|US20060173794 *||Nov 23, 2005||Aug 3, 2006||Imagineer Software, Inc.||Secure electronic commerce using mutating identifiers|
|US20070011602 *||Sep 14, 2006||Jan 11, 2007||E.Digital Corporation||System and method for securely transmitting data to a multimedia device|
|US20070027779 *||Jun 23, 2006||Feb 1, 2007||Microsoft Corporation||Add License Anonymously To Product Locker For Multi-Merchant Purchasing Environment|
|US20080183625 *||Jan 30, 2007||Jul 31, 2008||Microsoft Corporation||Controlling access to technology based upon authorization|
|US20090164579 *||Dec 20, 2007||Jun 25, 2009||Kapil Chaudhry||Method and apparatus for communicating between a user device and a gateway device to form a system to allow a partner service to be provided to the user device|
|US20090164778 *||Dec 20, 2007||Jun 25, 2009||Kapil Chaudhry||Method and apparatus for communicating between a requestor and a user receiving device using a user device locating module|
|US20090165105 *||Dec 20, 2007||Jun 25, 2009||Kapil Chaudhry||Method and apparatus for communicating between a user device and a user device locating module to allow a partner service to be provided to a user device|
|US20120216244 *||Aug 23, 2012||Taasera, Inc.||System and method for application attestation|
|CN102082787A *||Dec 10, 2010||Jun 1, 2011||江苏省电力公司||Application frame for intelligent power information interaction of large users|
|CN102082787B||Dec 10, 2010||Jul 24, 2013||江苏省电力公司||Application frame for intelligent power information interaction of large users|
|U.S. Classification||726/2, 713/156, 705/53, 709/227, 713/173, 713/155, 709/203, 705/1.1|
|Cooperative Classification||H04L63/062, H04L63/166, H04L9/3263, H04L2463/102, H04L9/321, H04L2209/56, H04L2209/608, H04L63/0823, H04L9/3247|
|European Classification||H04L9/32N, H04L9/32Q, H04L63/08C, H04L9/32D|
|Dec 27, 2000||AS||Assignment|
Owner name: INTERNATIONAL BUSINESS MACHINES CORPORATION, NEW Y
Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:CHESS, DAVID M.;DYER, JOAN;ITOI, NAOMARU;AND OTHERS;REEL/FRAME:011386/0421;SIGNING DATES FROM 20001212 TO 20001220
|Oct 25, 2010||REMI||Maintenance fee reminder mailed|
|Mar 20, 2011||LAPS||Lapse for failure to pay maintenance fees|
|May 10, 2011||FP||Expired due to failure to pay maintenance fee|
Effective date: 20110320