Source: http://www.google.com/patents/US7761916?ie=ISO-8859-1&dq=6,240,376
Timestamp: 2014-03-11 06:11:50
Document Index: 338305049

Matched Legal Cases: ['Application No. 57835', 'Application No. 57835', 'art 1', 'Application No. 2004240210', 'Application No. 2003203649', 'Application No. 36815', 'Application No. 57835', 'Application No. 57835']

Patent US7761916 - Systems and methods using cryptography to protect secure computing environments - Google PatentsSearch Images Maps Play YouTube News Gmail Drive More »Sign inAdvanced Patent SearchPatentsSecure computation environments are protected from bogus or rogue load modules, executables and other data elements through use of digital signatures, seals and certificates issued by a verifying authority. A verifying authority�which may be a trusted independent third party�tests the load modules...http://www.google.com/patents/US7761916?utm_source=gb-gplus-sharePatent US7761916 - Systems and methods using cryptography to protect secure computing environmentsAdvanced Patent SearchPublication numberUS7761916 B2Publication typeGrantApplication numberUS 11/841,600Publication dateJul 20, 2010Filing dateAug 20, 2007Priority dateAug 12, 1996Fee statusPaidAlso published asUS6157721, US6292569, US7120802, US7581092, US7734553, US7904707, US7925898, US20020023214, US20030041239, US20060248353, US20070288764, US20080031457, US20080031461, US20080033884, US20080034214, US20080034229, US20080077531, US20080114698, US20100023761, US20110131422Publication number11841600, 841600, US 7761916 B2, US 7761916B2, US-B2-7761916, US7761916 B2, US7761916B2InventorsVictor H. Shear, W. Olin Sibert, David M. Van WieOriginal AssigneeIntertrust Technologies CorporationExport CitationBiBTeX, EndNote, RefManPatent Citations (42), Non-Patent Citations (54), Referenced by (1), Classifications (66), Legal Events (2) External Links: USPTO, USPTO Assignment, EspacenetSystems and methods using cryptography to protect secure computing environmentsUS 7761916 B2Abstract Secure computation environments are protected from bogus or rogue load modules, executables and other data elements through use of digital signatures, seals and certificates issued by a verifying authority. A verifying authority�which may be a trusted independent third party�tests the load modules or other executables to verify that their corresponding specifications are accurate and complete, and then digitally signs the load module or other executable based on tamper resistance work factor classification. Secure computation environments with different tamper resistance work factors use different verification digital signature authentication techniques (e.g., different signature algorithms and/or signature verification keys)�allowing one tamper resistance work factor environment to protect itself against load modules from another, different tamper resistance work factor environment. Several dissimilar digital signature algorithms may be used to reduce vulnerability from algorithm compromise, and subsets of multiple digital signatures may be used to reduce the scope of any specific compromise.
1. A method utilizing a system comprising a processor and a memory encoded with program instructions that, when executed by the processor, cause the processor to perform the method, the method comprising:
receiving a load module and an associated specification;
verifying that the load module performs as specified by the specification;
determining that the load module does not include harmful functionality;
conditionally digitally signing the load module based at least in part on results of the verifying and determining steps; and
distributing, to a remote protected processing environment, a digital signature generated by the step of digitally signing the load module, the remote protected processing environment being operable to perform an authentication step on the digital signature using a public key, and to conditionally execute the load module based at least in part on a result of the authentication step,
wherein the remote protected processing environment is resistant to tampering by an owner of an electronic appliance upon which the remote protected processing environment is running and is operable to maintain the public key as a secret from the owner of the electronic appliance.
securely distributing the public key to the remote protected processing environment.
3. The method of claim 1, in which the load module, when executed by the electronic appliance, is configured to enable the electronic appliance to play a piece of electronic content.
4. The method of claim 1, in which the load module, when executed by the electronic appliance, is configured to cause the electronic appliance to charge a user a fee for viewing a piece of electronic content.
5. The method of claim 1, in which the load module, when executed by the electronic appliance, is configured to cause the electronic appliance to enable the electronic appliance to perform a financial transaction.
6. The method of claim 1, in which the load module, when executed by the electronic appliance, is configured to cause the electronic appliance to prevent a user from making a copy of a piece of electronic content.
7. The method of claim 1, in which the load module, when executed by the electronic appliance, is configured to cause the electronic appliance to record an aspect of usage of a piece of electronic content.
8. A non-transitory computer-readable medium comprising program code, the program code being operable, when executed by a computer system, to cause the computer system to perform steps comprising:
verifying that a load module performs as specified by a specification associated with the load module;
determining that the load module does not include harmful functionality; and
conditionally digitally signing the load module based at least in part on results of the verifying and determining steps
distributing, to a remote protected processing environment, a digital signature generated by the step of digitally singing the load module; and
securely distributing a cryptographic key to the remote protected processing environment, the cryptographic key being configured for use in authenticating the digital signature.
9. The non-transitory computer-readable medium of claim 8, in which the cryptographic key comprises a public key.
10. A system comprising a processor and a non-transitory computer-readable medium encoded with program instructions that, when executed by the processor,
cause the processor to perform a method comprising:
conditionally digitally signing the load module based at least in part on a result of the verifying and determining steps;
distributing, to a remote protected processing environment, a digital signature generated by the digital signing step; and
11. The system of claim 10, in which the cryptographic key comprises a public key.
A web of trust may stand behind a verifying authority. For example, a verifying authority may be an independent organization that can be trusted by all electronic value chain participants not to collaborate with any particular participant to the disadvantage of other participants. A given load module or other executable may be independently certified by any number of authorized verifying authority participants. If a load module or other executable is signed, for example, by five different verifying authority participants, a user will have (potentially) a higher likelihood of finding one that they trust General commercial users may insist on several different certifiers, and government users, large corporations, and international trading partners may each have their own unique �web of trust� requirements. This �web of trust� prevents value chain participants from conspiring to defraud other value chain participants.
In accordance with another aspect provided by the present invention, an execution environment protects itself by deciding�based on digital signatures, for example�which load modules or other executables it is willing to execute A digital signature allows the execution environment to test both the authenticity and the integrity of the load module or other executables, as well permitting a user of such executables to determine their correctness with respect to their associated specifications or other description of their behavior, if such descriptions are included in the verification process.
Verifying authority 100 uses an analyzing tool(s) 112 to analyze and test load module 54 and determine whether it performs as specified by its associated specifications 110�that is, whether the specifications are both accurate and complete. FIG. 4 illustrates an analysis tool 112 as a magnifying glass; verifying authority 100 may not rely on visual inspection only, but instead preferably uses one or more computer-based software testing techniques and/or tools to verify that the load module performs as expected, matches specifications 110, is not a �virus,� and includes no significant detectable �bugs� or other harmful functionality. See for example Pressman, Software Engineering: A Practitioners Approach (3d Ed., McGraw-Hill 1992) at chapters 18 and 19 (�Software Testing Techniques�) (pages 595-661) and the various books and papers referenced there. Although it has been said that �testing can show only the presence of bugs, not their absence,� such testing (in addition to ensuring that the load module 54 satisfies its specifications 110) can provide added degrees of assurance that the load module isn't harmful and will work as it is supposed to.
Once verifying authority 100 is satisfied with load module 54′ it affixes its digital �seal of approval� 106 to the load module. FIG. 4 illustrates the digital sealing process as being performed by a stamp 114�but in the preferred embodiment the digital sealing process is actually performed by creating a �digital signature� using a well known process. See Schneier, Applied Cryptography (2d Ed. John Wiley & Sons 1996) at Chapter 20 (pages 483-502). This digital signature, certificate or seal creation process is illustrated in FIG. 5.
In one example, verifying authority 100 may digitally sign identical copies of load module 54 for use by different classes or �/assurance levels� of electronic appliances 61. If the sharing of a load module 54 between different electronic appliances is regarded as an open communications channel between the protected processing environments 108 of the two appliances, it becomes apparent that there is a high degree of risk in permitting such sharing to occur. In particular, the extra security assurances and precautions of the more trusted environment are collapsed into the those of the less trusted environment because an attacker who compromises a load module within a less trusted environment is then be able to launch the same load module to attack the more trusted environment. Hence, although compartmentalization based on encryption and key management can be used to restrict certain kinds of load modules 54 to execute only on certain types of electronic appliances 61, a significant application in this context is to compartmentalize the different types of electronic appliances and thereby allow an electronic appliance to protect itself against load modules 54 of different assurance levels.
Personal computer 60(1) providing a software-only protected processing environment 108 may be at assurance level I; Media player 400(1) providing a software-only based protected processing environment may be at assurance level II; Server 402(1) providing a software-only based protected processing environment may be at assurance level III; Support service 404(1) providing a software-only based protected processing environment may be at assurance level IV; Personal computer 60(2) providing a hybrid software and hardware protected processing environment 108 may be at assurance level V; Media player 400(2) providing a hybrid software and hardware protected processing environment may be at assurance level VI; Server 402(2) providing a software and hardware hybrid protected processing environment may be at assurance level VII; Support service 404(2) providing a software and hardware hybrid protected processing environment may be at assurance level VIII; and Personal computer 60(3) providing a hardware-only protected processing environment 108 may be at assurance level IX; Media player 400(3) providing a hardware-only protected processing environment may be at assurance level X; Server 402(3) providing a hardware-only based protected processing environment may be at assurance level XI; Support service 404(3) providing a hardware-only based protected processing environment may be at assurance level XI. In accordance with this feature of the invention, verifying authority 100 supports all of these various categories of digital signatures, and system 50 uses key management to distribute the appropriate verification keys to different assurance level devices. For example, verifying authority 100 may digitally sign a particular load module 54 such that only hardware-only based server(s) 402(3) at assurance level XI may authenticate it. This compartmentalization prevents any load module executable on hardware-only servers 402(3) from executing on any other assurance level appliance (for example, software-only protected processing environment based support service 404(1)).
FIG. 14 shows an example sequence of steps that may be performed in an overall process provided by these inventions, To begin the overall process, a load module provider 52 may manufacture a load module and associated specifications (FIG. 14, block 502). Provider 52 may then submit the load module and associated specifications to verifying authority 100 for verification (FIG. 14, block 504). Verifying authority 100 may analyze, test, and/or otherwise validate the load module against the specifications (FIG. 14, block 506), and determine whether the load module satisfies the specifications.
Patent CitationsCited PatentFiling datePublication dateApplicantTitleUS4672572May 21, 1984Jun 9, 1987Gould Inc.Protector system for computer access and useUS4799156Oct 1, 1986Jan 17, 1989Strategic Processing CorporationInteractive market management systemUS4823264May 27, 1986Apr 18, 1989Deming Gilbert RElectronic funds transfer systemUS4930073Jun 26, 1987May 29, 1990International Business Machines CorporationMethod to prevent use of incorrect program version in a computer systemUS5103476Nov 7, 1990Apr 7, 1992Waite David PSecure system for activating personal computer software at remote locationsUS5111390Aug 22, 1988May 5, 1992Unisys CorporationSoftware security system for maintaining integrity of compiled object code by restricting users ability to define compilersUS5224163Sep 28, 1990Jun 29, 1993Digital Equipment CorporationMethod for delegating authorization from one entity to another through the use of session encryption keysUS5253297Apr 27, 1992Oct 12, 1993International Computers LimitedData processing system with cryptographic facilityUS5319705Oct 21, 1992Jun 7, 1994International Business Machines CorporationMethod and system for multimedia access control enablementUS5343527Oct 27, 1993Aug 30, 1994International Business Machines CorporationHybrid encryption method and system for protecting reusable software componentsUS5421006Apr 20, 1994May 30, 1995Compaq Computer Corp.Method and apparatus for assessing integrity of computer system softwareUS5479509Apr 6, 1994Dec 26, 1995Bull Cp8Method for signature of an information processing file, and apparatus for implementing itUS5559884Jun 30, 1994Sep 24, 1996Microsoft CorporationMethod and system for generating and auditing a signature for a computer programUS5692047Dec 8, 1995Nov 25, 1997Sun Microsystems, Inc.System and method for executing verifiable programs with facility for using non-verifiable programs from trusted sourcesUS5696827 *Jan 30, 1997Dec 9, 1997Brands; Stefanus AlfonsusSecure cryptographic methods for electronic transfer of informationUS5757914Oct 26, 1995May 26, 1998Sun Microsystems, Inc.System and method for protecting use of dynamically linked executable modulesUS5757915Aug 25, 1995May 26, 1998Intel CorporationParameterized hash functions for access controlUS5982891 *Nov 4, 1997Nov 9, 1999Intertrust Technologies Corp.Systems and methods for secure transaction management and electronic rights protectionUS6141753Feb 10, 1998Oct 31, 2000Fraunhofer GesellschaftSecure distribution of digital representationsUS6157721Aug 12, 1996Dec 5, 2000Intertrust Technologies Corp.Systems and methods using cryptography to protect secure computing environmentsUS6292569Oct 4, 2000Sep 18, 2001Intertrust Technologies Corp.Systems and methods using cryptography to protect secure computing environmentsUS6330670Jan 8, 1999Dec 11, 2001Microsoft CorporationDigital rights management operating systemUS6701433Mar 23, 1999Mar 2, 2004Novell, Inc.Method and apparatus for escrowing properties used for accessing executable modulesUS6983371Nov 13, 2000Jan 3, 2006International Business Machines CorporationSuper-distribution of protected digital contentUS7120802 *Aug 6, 2001Oct 10, 2006Intertrust Technologies Corp.Systems and methods for using cryptography to protect secure computing environmentsUS7133846Sep 17, 1999Nov 7, 2006Intertrust Technologies Corp.Digital certificate support system, methods and techniques for secure electronic commerce transaction and rights managementUS7152045Sep 10, 2002Dec 19, 2006Indivos CorporationTokenless identification system for authorization of electronic transactions and electronic transmissionsUS7165174Dec 17, 1999Jan 16, 2007Intertrust Technologies Corp.Trusted infrastructure support systems, methods and techniques for secure electronic commerce transaction and rights managementUS7405724May 6, 2005Jul 29, 2008Diebold, IncorporatedAutomated banking machine and methodUS7581092Aug 20, 2007Aug 25, 2009Intertrust Technologies CorporationSystems and methods using cryptography to protect secure computing environmentsUS20060248016Apr 13, 2006Nov 2, 2006Intertrust Technologies Corp.Trusted infrastructure support systems, methods and techniques for secure electronic commerce, electronic transactions, commerce process control and automation, distributed computing, and rights managementUS20080077531Aug 20, 2007Mar 27, 2008Intertrust Technologies CorpSystems and methods using cryptography to protect secure computing environmentsEP0128672A1May 14, 1984Dec 19, 1984Ira Dennis GaleData security deviceEP0399822A2May 24, 1990Nov 28, 1990Hewlett-Packard CompanyMethod and apparatus for computer program encapsulationEP0421409A2Oct 4, 1990Apr 10, 1991International Business Machines CorporationTransaction system security method and apparatusEP0565314A2Apr 1, 1993Oct 13, 1993Addison M. FischerMethod and apparatus for creating, supporting, and using travelling programsGB2264796A Title not availableWO1990002382A1Aug 14, 1989Mar 8, 1990Indata CorpInformation distribution systemWO1992022870A1Jun 12, 1992Dec 23, 1992Icl Data AbMethod and system for revising data in a distributed data communication systemWO1994003859A1Jul 31, 1992Feb 17, 1994Int Standard Electric CorpApparatus and method for providing network securityWO1994006103A1Sep 7, 1993Mar 17, 1994Hnc IncFraud detection using predictive modelingWO1996027155A2Feb 13, 1996Sep 6, 1996Electronic Publishing ResourceSystems and methods for secure transaction management and electronic rights protection* Cited by examinerNon-Patent CitationsReference1"Multimedia Mixed Object Envelopes Supporting a Graduated Fee Scheme Via Encryption", IBM Technical Disclosure Bulletin, vol. 37, No. 3, Mar. 1, 1994, pp. 413-17.2"Transformer Rules Strategy for Software Distribution Mechanism-Support Products", IBM Technical Disclosure Bulletin, vol. 37, No. 48, Apr. 1994, pp. 523-25.3Advisory Action dated Jun. 1, 2006 issued in related U.S. Appl. No. 09/925,072, filed Aug. 6, 2001, Shear et al.4Comments Filed by Opponent dated Aug. 21, 2003 in related Australian Application No. 57835/01.5Decision of a Delagate of the Commistion of Patents dated Apr. 20, 2004 in related Australian Application No. 57835/01.6Denning, D.E.R., "Cryptography and Data Security," Addison-Wesley Publishing Company, 1982, Reprinted with corrections, Jan. 1983.7Department of Defense Standard, "Department of Defense Trusted Computer System Evaluation Criteria," Dec. 1985, pp. 1-72.8Everett, D.B., "Smart Card Tutorial-Part 1," publisehd in sections between Sep. 1992 and Sep. 1994 at http://www.smartcard.co.uk/resources/tutorial.9Examination Report dated Feb. 28, 2007 issued in related Australian Application No. 2004240210.10Examination Report dated Nov. 29, 2004 issued in related Australian Application No. 2003203649.11Examination Report dated Nov. 30, 1999 issued in related Australian Application No. 36815/97.12Examiners First Report on Voluntary Request to Amend dated Sep. 15, 2003 in related Australian Application No. 57835/01.13Final Office Action dated Apr. 19, 2006 issued in related U.S. Appl. No. 09/925,072, filed Aug. 6, 2001, Shear et al.14Final Office Action dated Jan. 4, 2000 issued in related U.S. Appl. No. 08/689,754, filed Aug. 12, 1996, Shear et al.15Final Office Action dated Jan. 5, 2009 issued in related U.S. Appl. No. 11/894,502, filed Aug. 20, 2007, Shear et al.16Fuchsberger et al., "Public-key Cryptography on Smart Cards," Lecture Notes in Computer Science, p. 250-269, 1995.17Gasser, M. et al., "The Digital Distributed System Security Architecture," Reprint from the Proceedings of 1989 National Computer Security Conference, 1989, pp. 1-13.18Herzberg, A. et al., "Public Protection of Software," ACM Transactions on Computer Systems, vol. 5, No. 4, Nov. 1987, pp. 371-393.19Microsoft and Verisign Provide First Technology for Secure Downloading of Software over the Internet, 20 Software Vendors Lead Industry in Adopting Microsoft Authenticode, Verisign Press Release, Technology, Aug. 7, 1996.20Mori, R. et al., "Superdistribution: The Concept and the Architecture," The Transactons of the EIEICE, V, E73, No. 7, Tokyo, Japan, Jul. 1990, pp. 1133-1146.21Non-Final Office Action dated Aug. 1, 2005 issued in related U.S. Appl. No. 09/925,072, filed Aug. 6, 2001, Shear et al.22Non-Final Office Action dated Feb. 20, 2009 issued in related U.S. Appl. No. 11/842,138, filed Aug. 21, 2007, Shear et al.23Non-Final Office Action dated Feb. 20, 2009 issued in related U.S. Appl. No. 11/894,327, filed Aug. 20, 2007, Shear et al.24Non-Final Office Action dated Jan. 5, 2001 issued in related U.S. Appl. No. 09/678,830, filed Oct. 4, 2000, Shear et al.25Non-Final Office Action dated Jul. 24, 2008 issued in related U.S. Appl. No. 11/894,502, filed Aug. 20, 2007, Shear et al.26Non-Final Office Action dated Jul. 9, 1999 issued in related U.S. Appl. No. 08/689,754, filed Aug. 12, 1996, Shear et al.27Non-Final Office Action dated Nov. 25, 2008 issued in related U.S. Appl. No. 11/894,339, filed Aug. 20, 2007, Shear et al.28Non-Final Office Action dated Oct. 15, 1998 issued in related U.S. Appl. No. 08/689,754, filed Aug. 12, 1996, Shear et al.29Notice of Allowance and Interview Summary dated Apr. 3, 2009 issued in related U.S. Appl. No. 11/894,502, filed Aug. 20, 2007, Shear et al.30Notice of Allowance dated Jan. 11, 2010 issued in related U.S. Appl. No. 11/894,327, filed Aug. 20, 2007, Shear et al.31Notice of Allowance dated Jul. 3, 2000 issued in related U.S. Appl. No. 08/689,754, filed Aug. 12, 1996, Shear et al.32Notice of Allowance dated Jun. 20, 2006 issued in related U.S. Appl. No. 09/925,072, filed Aug. 6, 2001, Shear et al.33Notice of Allowance dated Mar. 13, 2009 issued in related U.S. Appl. No. 11/894,339, filed Aug. 20, 2007, Shear et al.34Notice of Allowance dated May 29, 2009 issued in related U.S. Appl. No. 11/894,339, filed Aug. 20, 2007, Shear et al.35Notice of Allowance dated May 29, 2009 issued in related U.S. Appl. No. 11/894,502, filed Aug. 20, 2007, Shear et al.36Notice of Allowance dated May 8, 2001 issued in related U.S. Appl. No. 09/678,830, filed Oct. 4, 2000, Shear et al.37Office Action dated Dec. 1, 2009 issued in related U.S. Appl. No. 11/842,138, filed Aug. 21, 2007, Shear et al.38Office Action dated Dec. 15, 2009 issued in related U.S. Appl. No. 11/781,062, filed Jul. 20, 2007, Shear et al.39Office Action dated Dec. 9, 2009 issued in related U.S. Appl. No. 11/894,327, filed Aug. 20, 2007, Shear et al.40Office Action dated Oct. 1, 2009 issued in related U.S. Appl. No. 11/978,962, filed Oct. 29, 2007, Shear et al.41Office Action dated Oct. 26, 2009 issued in related U.S. Appl. No. 11/841,518, filed Aug. 20, 2007, Shear et al.42Office Action dated Oct. 29, 2009 issued in related U.S. Appl. No. 11/841,555, filed Aug. 20, 2007, Shear et al.43Office Action dated Sep. 14, 2009 issued in related U.S. Appl. No. 11/454,072, filed Jun. 14, 2006, Shear et al.44Office Action mailed Oct. 26, 2009 issued in related U.S. Appl. No. 11/841,446, filed Aug. 20, 2007, Shear et al.45Press, J. et al., "A New Approach to Crytographic Facility Design", ICL Technical Journal 8(3):429-505, May 1993.46Rouaix, "A Web Navigator with Applets in Caml," INRIA, May 8, 1996.47Schneier, B., "Applied Cryptography: Protocols, Algorithms, and Source Code in C," John Wiley & Sons, Inc., 1994.48Siuda, K., "Security Services in Telecommunications Networks," Seminar: Mapping New Applications Onto New Technologies, edited by B. Plattner and P. Gunzburger; Zurich, Mar. 8-10, 1988, pp. 45-52.49Statement of Grounds and Particulars in Support of Opposition dated Jul. 16, 2003 in related Australian Application No. 57835/01.50Tardo, "An Introduction to Safety and Security in Telescript," General Magic, Inc., 1995.51Tardo, "Mobile Agent Security and Telescript," Compcon Spring '96, 41st IEEE International Computer Conference, Feb. 25-28, 1996.52Tygar, J.D. et al., "Dyad: A System for Using Physically Secure Coprocessors," School of Computer Science, Carnegie Mellon University, Pittsburgh, PA, May 1991, p. 121-152.53Yee, B. et al., "Secure Coprocessors in Electronic Commerce Applications," Proceedings of the First Usenix Workshop on Electronic Commerce, New York, New York, Jul. 1995, 16 pages.54Zimmerman, Philip, Pretty Good Privacy: PGP User's Guide, revised Oct. 11, 1994. [See, for example, vol. 1, pp. 2, 4, 5, 7 ("Encrypting a Message to Multiple Recipients"), 10, 11, 14 and 16 and vol. 2, pp. 3, 6, 7, 8 and 21-29].Referenced byCiting PatentFiling datePublication dateApplicantTitleUS20130086376 *Sep 29, 2011Apr 4, 2013Stephen Ricky HaynesSecure integrated cyberspace security and situational awareness system* Cited by examinerClassifications U.S. Classification726/22, 713/175, 717/178, 713/156International ClassificationG06Q20/00, G11B20/00, G11B27/031, H04L9/32, G06F21/00, H04L12/64, H04L9/30, G06F1/00, H04L12/40, G11B27/32, G06F12/14, G06F11/30Cooperative ClassificationG11B20/00688, G11B2220/2562, G11B27/031, G06Q20/401, G11B2220/216, G06Q20/02, G06Q20/382, G11B2220/2575, G11B20/00543, G11B20/00557, G06Q20/12, G11B20/00195, G06Q20/085, G11B27/329, H04L12/40117, G11B20/0071, G11B20/00768, G06F21/10, G06Q20/3674, G06F2211/007, G11B2220/218, G11B20/0021, G11B20/00173, G11B20/00188, G06F21/51, G06Q20/24, H04L12/40104, G11B20/00086, G06F12/1483, G11B20/00159European ClassificationG06F21/51, G11B20/00P5, G06Q20/401, H04L12/40F8, G11B20/00P, G11B27/031, G11B20/00P2C, G06Q20/382, H04L12/40F10, G06Q20/02, G11B20/00P10, G11B20/00P5G5, G11B20/00P11B1B, G11B20/00P4, G06Q20/24, G06F21/10, G11B27/32D2, G06Q20/12, G06Q20/3674, G06Q20/085Legal EventsDateCodeEventDescriptionJan 20, 2014FPAYFee paymentYear of fee payment: 4Oct 12, 2010CCCertificate of correctionRotateOriginal ImageGoogle Home - Sitemap - USPTO Bulk Downloads - Privacy Policy - Terms of Service - About Google Patents - Send FeedbackData provided by IFI CLAIMS Patent Services©2012 Google