Device certificate individualization

Information

  • Patent Grant
  • 8347078
  • Patent Number
    8,347,078
  • Date Filed
    Monday, December 20, 2004
    19 years ago
  • Date Issued
    Tuesday, January 1, 2013
    11 years ago
Abstract
A method of generating a device certificate. A method of generating a device certificate comprising, constructing a device certificate challenge at a device, sending information to a device certificate individualization server in response to the device certificate challenge, validating the device certificate challenge by the device certificate individualization server, and validating the device certificate response by the device.
Description
BACKGROUND

This application relates generally to the use of consumer electronic devices and more specifically to the creation of device certificates for verifying access rights.


Electronics may be designed to play or process content that is regulated. Such content may be controlled or owned by a third party that allows access to the content on a limited basis. Examples are allowing information to be accessed a predetermined number of times, or for a given time period. A common way of controlling access to content is through controlling access to a content key, and hence the content. Usage of the content must be consistent with a policy specified in the license in order for the DRM to access the license's key and enable access to the content. Control of access is typically provided at manufacture by security features that can prevent unauthorized access to the information at a later time.


SUMMARY

The following presents a simplified summary of the disclosure in order to provide a basic understanding to the reader. This summary is not an extensive overview of the disclosure and it does not identify key/critical elements of the invention or delineate the scope of the invention. Its sole purpose is to present some concepts disclosed herein in a simplified form as a prelude to the more detailed description that is presented later.


The present invention provides a method of creating a device certificate through an individualization process. The device certificate may be used for verifying access rights to consumer electronic devices through the use of device certificates. By building a consumer electronics devices with a template a unique device certificate can be generated at a later time and used to verify access rights. The device certificate is unique to the consumer electronics device and typically allows a person using the consumer electronics device to access protected content desired to be played on the device.


Security or encryption systems to protect against the unauthorized play of content or media files typically utilize a plurality of identifications, verifications, keys and the like to allow access to the content. Such security systems typically utilize a device certificate that contains a plurality of verifiers and the like, and is unique to the device seeking to play the content. By making it possible to delay the generation of a device certificate the manufacturing process tends so be simplified. The template contains information that tends to be common to all devices in a manufacturer's product line, and allows the device to self-generate a device certificate, utilizing a self individualization process, after the manufacturing process has been completed.


Many of the attendant features of this invention will be more readily appreciated as the same becomes better understood by reference to the following detailed description considered in connection with the accompanying drawings.





DESCRIPTION OF THE DRAWINGS

These and other features and advantages of the present invention will be better understood from the following detailed description read in light of the accompanying drawings, wherein:



FIG. 1 is a diagram of a digital rights management system.



FIG. 2 illustrates the conventional method of manufacturing consumer electronics devices with complete device certificates.



FIG. 3 illustrates a method of manufacturing consumer electronics devices with device templates that will enable the generation of complete device certificates at a later time.



FIG. 4 is a block diagram of the device certificate individualization or initialization process that transforms the device certificate template into a unique device certificate prior to allowing access to DRM applications.



FIG. 5 illustrates the sections that make up a first exemplary device certificate template.



FIG. 6 is an exemplary XML device certificate template.



FIG. 7 is a block diagram showing the process of device certificate individualization to create an exemplary device certificate.



FIG. 8 illustrates the sections that make up an exemplary device certificate challenge used in the process of device certificate individualization.



FIG. 9 is an exemplary XML device certificate challenge.



FIG. 10 is an exemplary XML device certificate response.



FIG. 11 illustrates an exemplary computing environment in which the systems and methods described in this application, may be implemented.



FIG. 12 is an illustration of a chain of trust structure present in an embodiment of a device certificate template.





Like reference numerals are used to designate like parts in the accompanying drawings.


DETAILED DESCRIPTION

The detailed description provided below in connection with the appended drawings is intended as a description of the present examples of the invention and is not intended to represent the only forms in which the present invention may be constructed or utilized. The description sets forth the functions of the invention and the sequence of steps for constructing and operating the invention in connection with the examples illustrated. However, the same or equivalent functions and sequences may be accomplished by different examples of the invention.


Although the present invention is described and illustrated herein as being implemented in a consumer electronics (“CE”) system, the system described is provided as an example and not a limitation. CE devices may include pocket PCs, set top boxes, portable media centers, cell phones, music players, PCs, software constructed media players, and the like. As those skilled in the art will appreciate, the present invention is suitable for application in a variety of different types of systems that utilize licenses to regulate the playback of content. A typical system is a digital rights management (“DRM”) system. The use of a device certificate template may be useful in the individualization process typically used in these types of systems.


Most current DRM solutions rely on unique identification of user devices. Each license is typically bound to a unique playback device (or consumer electronics device), so the license stored in one device cannot be transferred or used by another device. To illustrate how this works, we use the example of a typical individualization process.


An individualized media player is one whose DRM component has been individualized, which is like receiving a security upgrade. Content providers may require their digital content to be played only on the player that has been individualized. During individualization process, the certificate authority's individualization service generates a unique dynamic link library (“DLL”) that is bound to the client computer using its hardware ID. Once the player has been individualized, a public/private key pair is generated. The private key is stored in the DLL file that is generated in the individualization process. The corresponding public key is used as the player's identifier when requesting a license and a clearinghouse will encrypt the license using this key. If the player is moved to another host, it may require another individualization, because there is no corresponding DLL file binding to the new host. The license granted by the clearinghouse is not transferable or usable on another computer.


In the context of DRM, individualization can reduce the damage caused by system cracking, because if the DRM module on a user's computer is compromised, only that terminal is affected. However, it introduces another problem concerning the portability of rights: When the user wants to watch the movie at his friend's place or listen to the music on his portable devices (PDAs, mobile phones, portable players, etc.), he has to acquire new licenses for every device to enable content consumption. To reduce the impact of digital licensing process on the user experience, some DRM solutions allow users to back up their licenses and restore to another computer. To prevent abuse, users can typically only do this a fixed number of times.



FIG. 1 is a diagram of a digital rights management system 100. Digital rights management (DRM) provides a system for defining, incorporating, and enforcing rights to digital media 110. A DRM system 100 provides secure distribution of multimedia content 110 from a service provider 107 over insecure channels such as the Internet 105. The system 100 can enforce usage rules and protect the multimedia content 110 from being used illegally. Usage rules can include expiration dates, the number of times a user can play an audio or video file, and the number of times a user can copy an audio or video file and the like. An example of a Digital Rights Management system is provided in U.S. patent application Ser. No. 09/290,363, filed Apr. 12, 1999, U.S. patent application Ser. Nos. 10/185,527, 10/185,278, and 10/185,511, each filed on Jun. 28, 2002 which are hereby incorporated by reference in its entirety.


A personal computer 103 may be used to connect to the internet 105 and transfer content from the service provider 107 to a consumer electronics device 101. Protocols for transferring information to the PC 103, and to the CE device 101 over paths 102 and 104 may be achieved by conventional connections such as USB, infrared, Blue Tooth, MTP and the like. In alternative embodiments a consumer electronics device may be coupled to a service provider without using the personal computer 103. The personal computer and the CE devices may operate utilizing any number of suitable operating systems known to those skilled in the art. The instructions for implementing the functions described in this application may exist as software, hardware (for example instructions burned into an ASIC), or a combination of both.


In typical use, DRM 100 protects contents 110 by providing encrypted data files 109. Since files 109 are encrypted, the data itself is protected. Thus, the files 109 may be moved, archived, copied, or distributed without restriction. There is no need to hide files or make them inaccessible, or to put special protection in place when files are transmitted from system to system. However, copying a file and giving it to a friend will not enable that friend to use the file. In order to be able to use an encrypted file, users must obtain a license 108. This license 108 is a way of exercising control over the encrypted file 110. A license 108 is typically granted to a single machine 101, and even if copied, it will not tend to function on other machines.


Each license 108 contains rights and restrictions, defining how the data in a file may be used, and under what conditions. For example, a music file license may contain a “right to play” but not a “right to burn to CD”, and it might enable these rights for the period between Oct. 1, 2005 and Nov. 1, 2005. It is also possible that there will be multiple licenses for a file. As long as one of those licenses grants the needed right, the user will be able to access and use their data. Access may refer to cryptographically decrypting a file, gaining access to a file by password, and the like so that the consumer electronics device can use, view, play and otherwise use the content of the file.


In the embodiments of the invention described the license 108 works in conjunction with a device certificate 111 that allows the encrypted content 109 to be played on a consumer electronics device 101. The file can also be viewed if the CE device provides video, or picture capabilities. Files for viewing or playback would typically include music files, picture files, video files, documents, and the like. In short anything that a service provider wishes to transmit securely over an unsecured channel. The system identifies itself through a device certificate. This exemplary XML structure, or its equivalent, describes the CE device, lists supported features, and also contains the system's public key. The device certificate 111 is unique to an individual consumer electronics device. In the embodiments the unique device certificate 111 is generated from a device certificate template 112 that is packaged 113 with the consumer electronics device 101. The device certificate template may be considered a special pattern, guide or the like that aids in the creation of the device certificate.


Consumer electronic devices 101 that regulate playback may be referred to as digital rights management (“DRM”) devices. Such devices may be part of a DRM system 100 that controls the distribution of protected content 109 and access to that content 110. DRM-enabled devices 101 may contain an XML (or the equivalent of XML) object called a “Device Certificate” (“Dev Cert”) 111 which is used to help ensure the security of DRM operations. Typically a device certificate can be provided in any format or data structure, besides XML. The device certificate 111 is unique to each CE device 101 and is typically harder for a manufacturer to provide in the CE device 101 than a simple serial number.


Device certificates 111 are security devices that may be used in consumer electronics devices 101 to provide security by authenticating that a device 101 is allowed to access protected content 109. Device certificates are the credentials that are trusted and relied upon by an outside entity that may cause the entity provide content to the CE device. Such automated device authentication may be used in systems 100 designed for secure playback or use of protected media content and where digitally signed certificates 111, or the like, are used as the way of providing authentication of rights to access media content. Protected media content 109 may include music, video, text, or any content that is subject to management by conventional license agreements or the like.


The exemplary device certificate 111 may be an XML object that gathers together device identification, device capabilities claims, vital info, public key info, and the like and present the information in a single digitally signed device certificate. A device certificate typically utilizes as a minimum the public key and a signature, other information included in the device certificate is optional The device certificate 111 may be signed by an OEM signing certificate (not shown), which may be a certification by the OEM that the device certificate 111 is an accurate reflection of the device 101 accompanying it, and by a third party content regulator certificate (not shown) which certifies that the OEM is authorized to create and certify DRM systems.


The embodiments of the invention tend to solve manufacturing problems associated with generating unique and verifiable device certificates 111 for each consumer electronics device 101 in an OEMs product line. The embodiments tend to allow the manufacturer to ship an entire product line using a device certificate template 112 which is typically identical for all devices in the product line. Using the template 112, a device 101 may automatically and securely self-individualize after manufacturing. In other words, the device creates a unique device certificate 111 based on the templates 12 built into the device. The device 101 may then access the encrypted content 109, when the proper license 108 is present.


The device certificate template 112 may have the sections of a typical device certificate, but device specific sections are empty. The template 112 is signed by the OEM or manufacturer and includes the third party content provider's own device authorization certificate. To create the device certificate 111 from the device certificate template 112 a process of device certificate individualization is initiated. Once the device certificate has been created, protected content may be loaded onto the CE device.



FIG. 2 illustrates the conventional method of manufacturing consumer electronics devices 101, 102, 103 with complete device certificates 104, 105, 106. A manufacture will typically produce a product line of consumer electronic devices 201, 202, 203 shown. Each consumer electronics device 201, 202, 203 is built with a corresponding unique device certificate 204, 205, 206. Each device certificate is unique to the consumer electronics device that was shipped with it. Providing a device certificate is typically an additional step that is needed in the manufacture of consumer electronics devices that tends to increase the cost and complexity of consumer electronics devices.



FIG. 3 illustrates a method of manufacturing consumer electronics devices 101, 302, 303 with common device templates 112 that will enable the later generation of complete device certificates 304, 305, 306 at a later time. In the example shown any number of consumer electronics devices may be built in a production run or lot of devices produced, with typically the same device certificate template 112. Loading each device with the same template may aid the manufacturing process by allowing the device certificate to be created at a later time by filling in the template so that the device certificate is generated from the template. As an example an entire production run of devices having ROMs may be built using the same ROM, flash, hard drive or equivalent image on each device. There tends not to be individualized programming for each device built because of the use of a device certificate template.



FIG. 4 is a block diagram of the device certificate individualization or initialization process that transforms the device certificate template into a unique device certificate. Device certificate individualization may occur after the CE device has been shipped, and typically creates the device certificate before DRM content is accessed. Non-DRM content typically will not initiate the self individualization process, since a device certificate is typically not needed to access non-DRM content. If the CE device is compromised, device certificate individualization may be repeated after wiping out old device certificate. However the device may also need to get an updated template from the manufacturer, because the device certificate is based on template. If the device certificate is revoked, a new device certificate from the old template will also be revoked.


At block 401 the CE device is powered up. Power up or in alternative embodiments an attempt to access DRM protected content may initiate the individualization process. At block 402 DRM is initialized. At block 403 if the device certificate is available the process skips to block 405. If the device certificate is not available at block 403 the process continues to block 404.


At block 404 a unique device certificate is created. And finally at block 405 the DRM content is accessed.



FIG. 5 illustrates the sections that make up the device certificate template 112. A template as described would typically be stored in a memory of the consumer electronic device. Equivalently the template may be stored on other types of memories such as flash RAM ASICS, one or more floppy disks, optical disks, hard disks and the like. The sections of the device certificate template work together to establish a route of trust so that the content provider has a reasonable expectation that the data being transmitted over the insecure channels will reach an authorized user. For backwards compatibility, or other purposes more than one route of trust may be provided in the device certificate template.


In establishing a route of trust, that is reflected in the device certificate template, an OEM typically generates a public and private key pair. This device authorization certificate (“DAC”) generated by the OEM includes a private key that is stored in a secure location by the OEM. Also included is a public key that is typically sent to a certificate authority. The certificate authority verifies the OEM's DAC and returns the Authorization Root certificate and Authorization Certificate which are sent back to the OEM.


The OEM is equipped with a software tool from the certificate authority to generate a Group Certificate. The group certificate may include features of the device, limits, meta data (manufacturer name, model number and the like). The OEM then signs this Group Certificate with the DAC private key. Putting the AUTHORIZATION_ROOT Certificate 501, AUTHORIZATION Certificate 502 and the Group Certificate on the unsigned template allows the template to be generated and put onto the device plus the group certification private key. After manufacture, a trigger, such as powering the device up, or attempting to access a file, will cause the Device Certificate to be generated by filling out any needed information called for in the template and signing with the group certification private key. The trigger may be thought of as an initiating event, or a start command that starts the self individualization process or device certificate generation.


In establishing the route of trust each of the individual certificates in the device certificate establishes a route of trust that can be traced back to the OEM. If need be individual certificates can be revoked, breaking the chain.


The AUTHORIZATION_ROOT Certificate 501 is a section contained in the device certificate template. This section contains the certificate authority's root certificate information. The certificate authority's root certificate is typically the highest level of authorization, and is issued by the certificate authority. Other certificates that make up the chain of trust to allow content access may be based upon the authorization root certificate. In general, the root certificate contains an ID (Identifying whom are you certifying) and a public key which is being certified. This certificate is signed by certificate authority's private key. The private key is typically stored in a secure vault controlled by the certificate authority. A corresponding public key is hard coded in the security system's code of the CE device to verify the signature.


AUTHORIZATION Certificate: This section contains Authorization to an OEM by the certificate authority to produce Device certificates. The data section contains an Authorization ID of OEM, Max security level of the device, and a Public key to sign Group certificate. This data section is signed using the certificate authority's private key. The corresponding Public key is in the Authorization Root Certificate.


GROUP Certificate: This Data section contains device features which are identical for entire product line such as name of device, manufacturer etc. It contains a GROUP Certificate Public key which is in turn a basis of verifying the DEVICE certificate section. The corresponding private key is hidden on the device. The device certificate section is signed using this private key.



FIG. 6 is an exemplary XML device certificate template. The device certificate template may be written in XML or its equivalent. An example of XML code implementing the authorization root certificate 501 is as shown. The authorization root certificate includes calling the public key. Also included in the device certificate template is the XML code that makes up the authorization certificate 502. And above that, the XML code that makes up the group certificate 503 is shown. Lastly the section of the XML encoded template that will be filled in to create the device certificate 504 is shown at the top of the page. Provisions for backwards compatibility or legacy licensing 601 are included in the XML code.


The various sections that make up the device certificate template may appear in any order in the template, with the shown order being but one example. Also the device certificate template may be coded in a variety of languages such as html, binary format and the like. In alternative embodiments it is also possible to load the template from a server, rather than having the manufacturer preload the template on the CE device.



FIG. 7 is a block diagram showing the process of device certificate individualization to create an exemplary device certificate. The process utilizes a challenge and response exchange between the device and the service provider. During this exchange security tends to be maintained by providing an exchange of keys having an intermediate security level. The keys having the intermediate security level are used to initiate the process, and “bootstrap” the verification process up to a higher security level.


In order to provide the unique device certificate or “Unique Dev-cert”, to each device, a device certificate individualization process is followed to create a unique device certificate 404 (of FIG. 4). At block 703 the device constructs a device certificate challenge to initiate the process by gathering device specific info at block 702 and a signed device certificate template at block 701. The device certificate template 112 provided to this block may be as previously described and include an authorization certificate from the service provider, device information (manufacturer, model, version and the like), template field confirming a template is provided, a URL to which the device certificate challenge should be sent, a public key used to encrypt device private data in the device certificate challenge, and a digital signature for the data portion of the template. The device specific information may in general include information that is unique to the device that is seeking to have its device certificate formed. Specifically device specific information includes an identification string based on device serial number.


At block 704 this unique information from the challenge is sent to a server (or “Dev-cert indiv server”) that may be ran by the OEM of the device. The data sent to the server is typically private and protected. The server validates the incoming challenge and creates the unique device certificate “Unique Dev-cert” at block 705 based on the challenge. A response including the device certificate that has been created is returned to the device (“Dev-cert response”) at block 706. At block 707 the device validates the received response. At block 708 the device stores the device certificate that has been created.



FIG. 8 illustrates the sections that make up an exemplary device certificate challenge used in the process of device certificate individualization. The arrangement of sections in the device certificate may be varied, and the language or protocol used to encode the information in the various sections may vary as well. The Data section includes URL (804), DEVCERT_TEMPLATE (805), BOOTSTRAPID (806) and DEVINFO (807). The DEVINFO may contain DEVICE_UNIQUEID (808), DEVICE_PUBKEY (809), DEVICE_PRIVKEY (810) and DEVCERT_OLD (811).


The DATA section is shown at 802. This data section or tag contains the data presented by the device certificate challenge. This tag is typically mandatory. Typically this data may include URL (804), DEVCERT_TEMPLATE (805), BOOTSTRAPID (806) and DEVINFO (807). The DEVINFO may contain DEVICE_UNIQUEID (808), DEVICE_PUBKEY (809), DEVICE_PRIVKEY (810) and DEVCERT_OLD (811).


The SIGNATURE section is shown at 803. Typically the contents of the DATA section, including the strings <DATA> and </DATA> of dev-cert challenge are digitally signed by a BOOTSTRAP private key which is provided by OEM. This section also contains a digital signature that is typically mandatory.


The URL section is shown at 804. In this section the URL that the device certificate challenge is sent to is recorded. It is in clear (it is non encrypted). This URL may be taken from the device certificate template, so that the application does not need to separately parse the device certificate template to get the URL. This tag may be mandatory. In an alternative embodiment the URL may be parsed from the device certificate template.


The DEVCERT_TEMPLATE section of the device certificate challenge is shown at 805. A valid device certificate template provided in this section is typically signed by the OEM private key. This node may also be in clear. This tag is typically mandatory.


The BOOTSTRAPID section of the device certificate challenge is shown at 806. The Bootstrap ID is also provided by OEM. The bootstrap ID is typically provided to help the server to find the right key for verifying the dev-cert challenge signature. This node is in clear. This tag may be mandatory.


The DEVINFO section of the device certificate challenge is shown at 807. This section contains device specific private info which must be protected. The contents under this tag are encrypted using Indiv server public key which is present in dev-cert template. This information is then Base64 encoded. This tag is typically mandatory. This node may contain DEVICE_UNIQUEID (808), DEVICE_PUBKEY (809), DEVICE_PRIVKEY (810) and DEVCERT_OLD (811).


The DEVICE_UNIQUEID section of the device certificate challenge is shown at 808. This section contains the unique device id. This unique device id is typically inserted in actual device unique device certificate by the server. This tag is typically mandatory.


The DEVICE_PUBKEY section of the device certificate challenge is shown at 809. In the process of constructing the challenge, the device generates a public private key pair, and hides the private key in the device as previously described. This section typically contains a Base 64 encoded device public key. Those skilled in the art will realize that other equivalent encodings may be provided. The public key is inserted, by the server, into the actual device unique device certificate. This public key may also be used by the server to encrypt the response returned to the device. This tag is typically mandatory.


The DEVICE_PRIVKEY section of the device certificate challenge is shown at 810. This section may contain a base 64 encoded device private key. The device private key may be used by the server to encrypt an escrow key generated by the server. An escrow key typically encrypts any old keys present from the client. This tag is typically mandatory.


The DEVCERT_OLD section of the device certificate challenge is shown at 811. This section contains an old “device unique dev-cert”. This section is typically an optional tag. It may be included in case of re-individualization of the device so that the server can extract the old key pairs from this device certificate and include them in a new device certificate.



FIG. 9 illustrates an exemplary XML device certificate challenge previously constructed at block 703 (of FIG. 7). In the example shown the device certificate shown in XML (or its equivalent) may be base 64 encoded. Alternatively other types of encoding may be performed to facilitate transmission of the device certificate challenge to the server. In further alternative embodiments encoding is not performed.


When server receives the challenge 901, the server, identified by the supplied URL 904, verifies the authenticity of the challenge by verifying the device challenge's digital signature 902. The BOOTSTRAP ID 903 allows the server to find the proper key for signature verification. The server also verifies the signature of the device certificate template 905 that is included in the challenge. The server then decodes and decrypts the DEVINFO section 906 to get the device specific information.


After gathering the information, the device certificate challenge creates the actual device unique device certificate and includes this device certificate in the response 907. To protect privacy, the device certificate response may be encrypted by the device public key. This encryption ensures that the response can only be decrypted by the device, from which device certificate challenge was received.



FIG. 10 is an exemplary XML device certificate response. The device response is shown in HTML format. However, any suitable format may be used for the device certificate response.


The device certificate response may include the following fields. The error field (“ERROR”) 1001 may be an optional field. Presence of the error field indicates that the challenge sent to the server had some errors in it that have been indicated by an error code.


The field DEVCERT_NEW 1002 contains the actual device unique device certificate produced by the exchanges made between the device and the service coupled to the device. As previously described a PC may be present between the device and the service provider.


When a device receives the device certificate response, it decodes and decrypts it. If an error field 1001 is present, the device returns the error code to the application. If the error tag is not present, it extracts the device certificate, verifies its signature, service provider authorization certificate, device unique id, device public key and all other sections of the device certificate. Then the device certificate is stored in the device.



FIG. 11 illustrates an exemplary computing environment 1100 in which the systems and methods described in this application, may be implemented. Exemplary computing environment 1100 is only one example of a computing system and is not intended to limit the examples described in this application to this particular computing environment.


The computing environment 1100 can be implemented with numerous other general purpose or special purpose computing system configurations. Examples of well known computing systems, may include, but are not limited to, personal computers, hand-held or laptop devices, microprocessor-based systems, multiprocessor systems, set top boxes, programmable consumer electronics, gaming consoles, Consumer electronics, cellular telephones, PDAs, and the like.


The computer 1100 includes a general-purpose computing system in the form of a computing device 1101. The components of computing device 1101 can include one or more processors (including CPUs, GPUs, microprocessors and the like) 1107, a system memory 1109, and a system bus 1108 that couples the various system components. Processor 1107 processes various computer executable instructions to control the operation of computing device 1101 and to communicate with other electronic and computing devices (not shown). The system bus 1108 represents any number of several types of bus structures, including a memory bus or memory controller, a peripheral bus, an accelerated graphics port, and a processor or local bus using any of a variety of bus architectures.


The system memory 1109 includes computer-readable media in the form of volatile memory, such as random access memory (RAM), and/or non-volatile memory, such as read only memory (ROM). A basic input/output system (BIOS) is stored in ROM. RAM typically contains data and/or program modules that are immediately accessible to and/or presently operated on by one or more of the processors 1107.


Mass storage devices 1104 may be coupled to the computing device 1101 or incorporated into the computing device by coupling to the buss. Such mass storage devices 1104 may include a magnetic disk drive which reads from and writes to a removable, non volatile magnetic disk (e.g., a “floppy disk”) 1105, or an optical disk drive that reads from and/or writes to a removable, non-volatile optical disk such as a CD ROM or the like 1106. Computer readable media 1105, 1106 typically embody computer readable instructions, data structures, program modules and the like supplied on floppy disks, CDs, portable memory sticks and the like.


Any number of program modules can be stored on the hard disk 1110, Mass storage device 1104, ROM and/or RAM 1109, including by way of example, an operating system, one or more application programs, other program modules, and program data. Each of such operating system, application programs, other program modules and program data (or some combination thereof) may include an embodiment of the systems and methods described herein.


A display device 1102 can be connected to the system bus 1108 via an interface, such as a video adapter 1111. A user can interface with computing device 702 via any number of different input devices 1103 such as a keyboard, pointing device, joystick, game pad, serial port, and/or the like. These and other input devices are connected to the processors 1107 via input/output interfaces 1112 that are coupled to the system bus 1108, but may be connected by other interface and bus structures, such as a parallel port, game port, and/or a universal serial bus (USB).


Computing device 1100 can operate in a networked environment using connections to one or more remote computers through one or more local area networks (LANs), wide area networks (WANs) and the like. The computing device 1101 is connected to a network 1114 via a network adapter 1113 or alternatively by a modem, DSL, ISDN interface or the like.


Those skilled in the art will realize that storage devices utilized to store program instructions can be distributed across a network. For example a remote computer may store a tool such as the adaptive instrumentation runtime monitoring and analysis software. A local or terminal computer may access the remote computer and download a part or all of the software to run the program. Alternatively the local computer may download pieces of the software as needed, or distributively process by executing some software instructions at the local terminal and some at the remote computer (or computer network). Those skilled in the art will also realize that by utilizing conventional techniques known to those skilled in the art that all, or a portion of the software instructions may be carried out by a dedicated circuit, such as a DSP, programmable logic array, or the like.



FIG. 12 is an illustration of a chain of trust structure 1200 present in an embodiment of a device certificate template. In the chain of trust structure an authorization root certificate 1201 generates numerous Authorization certificates or DACs 1202, 1203, 1204 for individual OEMs. The DACS also may include a security level. Each horizontal level may be thought of as a link in the chain of trust as a path is traversed from top to bottom. Each link typically has a certificate associated with it to establish the validity of the link, and couple it to the previous and following link. For example blocks 1201, 1202, 1205, and 1208 may be thought of as links going from the authorization root link 1201 to the device certificate 1208. A device certificate template is typically formed by incorporating each link in the chain of trust in a section of fields that form the template.


From each DAC given to an OEM, that OEM can generate multiple group certificates 1205, 1206, 1207 for each model of device produced by the OEM. Device certificates 1208, 1209, 1210 are generated each device built and are based upon the group certificates. It is possible to change the levels of security by adding or removing levels of group certificates. For example a level of device certificates can be added to differentiate production runs of a particular model of consumer electronics device.


Alternatively the initialization of a device could be performed at manufacture off of the consumer electronic device, and then imaged onto the consumer electronic device. The initialization could be performed on a manufacturer's PC, and imaged onto the CE device.

Claims
  • 1. A method of generating a device certificate, the method comprising: initiating a trigger originating at a device without connecting the device to a second device;constructing, in response to the trigger, a device certificate challenge at the device based at least in part on device specific information and a device certificate template disposed on the device at a time of manufacture;sending the device certificate challenge to a device certificate individualization server in response to the construction of the device certificate challenge;receiving a device certificate response at the device from the device certificate individualization server, the device certificate response indicative of a validation of the device certificate challenge by the device certificate individualization server; andvalidating the device certificate response by the device.
  • 2. The method of claim 1, the device certificate challenge comprising the device certificate template.
  • 3. The method of claim 2, the device certificate template comprised in the device certificate challenge being signed and the device certificate template comprising an authorization certificate.
  • 4. The method of claim 1, the device certificate challenge comprising the device specific information.
  • 5. The method of claim 1, the device certificate challenge comprising a URL of the device certificate individualization server.
  • 6. The method of claim 1, validating the device certificate response comprising imparting the device certificate on the device, the device certificate configured to allow an encrypted file to be accessed by the device.
  • 7. A system for generating a device certificate, the system comprising: one or more processors; andmemory comprising instructions that when executed via at least some of the one or more processors perform actions, comprising: initiating a trigger originating at a device without connecting the device to a second device;constructing, in response to the trigger, a device certificate challenge at the device based at least in part on device specific information and a device certificate template disposed on the device at a time of manufacture;sending the device certificate challenge to a device certificate individualization server in response to the construction of the device certificate challenge;receiving a device certificate response at the device from the device certificate individualization server, the device certificate response indicative of a validation of the device certificate challenge by the device certificate individualization server; andvalidating the device certificate response by the device.
  • 8. The system of claim 7, wherein the device certificate template includes information that is common to a product line of devices that includes the device and one or more other devices, and the device certificate response received from the device certificate individualization server is unique to the device.
  • 9. The system of claim 7, wherein the device certificate template includes information that is common to a product line of devices that includes the device and one or more other devices.
  • 10. The system of claim 7, the device certificate response comprising the device certificate.
  • 11. The system of claim 7, validating the device certificate response comprising an action of imparting the device certificate on the device.
  • 12. A computer readable storage device comprising computer executable instructions that when executed via a processor perform a method for generating a device certificate, the method comprising: initiating a trigger originating at a device without connecting the device to a second device;constructing, in response to the trigger, a device certificate challenge at the device based at least in part on device specific information and a device certificate template disposed on the device at a time of manufacture;sending the device certificate challenge to a device certificate individualization server in response to the construction of the device certificate challenge;receiving a device certificate response at the device from the device certificate individualization server, the device certificate response indicative of a validation of the device certificate challenge by the device certificate individualization server; andvalidating the device certificate response by the device.
  • 13. The computer readable storage device of claim 12, wherein the device certificate template includes information that is common to a product line of devices that includes the device and one or more other devices, and the device certificate response received from the device certificate individualization server is unique to the device.
  • 14. The computer readable storage device of claim 12, wherein the device certificate template includes information that is common to a product line of devices that includes the device and one or more other devices.
  • 15. The computer readable storage device of claim 12, the device certificate response comprising the device certificate.
  • 16. The computer readable storage device of claim 12, device specific portions of the device certificate template being completed based upon the device certificate response, yielding the device certificate unique to the device.
  • 17. The computer readable storage device of claim 12, no device certificate comprised on the device at the time of manufacture.
  • 18. The computer readable storage device of claim 12, the device certificate configured to allow an encrypted file to be accessed by the device.
  • 19. The computer readable storage device of claim 18, the encrypted file comprising at least one of a music file that is played after access by the device and a video file that is viewed after access by the device.
  • 20. The computer readable storage device of claim 12, the device certificate operating under a DRM system to cause playback of an encrypted file.
CROSS-REFERENCE TO RELATED APPLICATION

This application is a continuation-in-part of application Ser. No. 10/968,462 filed Oct. 18, 2004, now U.S. Pat. No. 7,441,121, and entitled “Device Certificate Self-Individualization”.

US Referenced Citations (692)
Number Name Date Kind
3718906 Lightner Feb 1973 A
4183085 Roberts et al. Jan 1980 A
4323921 Guillou Apr 1982 A
4405829 Rivest et al. Sep 1983 A
4528643 Freeny, Jr. Jul 1985 A
4529870 Chaum Jul 1985 A
4558176 Arnold et al. Dec 1985 A
4620150 Germer et al. Oct 1986 A
4658093 Hellman Apr 1987 A
4683553 Mollier Jul 1987 A
4750034 Lem Jun 1988 A
4817094 Lebizay et al. Mar 1989 A
4827508 Shear May 1989 A
4855730 Venners et al. Aug 1989 A
4855922 Huddleston et al. Aug 1989 A
4857999 Welsh Aug 1989 A
4910692 Outram Mar 1990 A
4916738 Chandra et al. Apr 1990 A
4926479 Goldwasser et al. May 1990 A
4953209 Ryder, Sr. et al. Aug 1990 A
4959774 Davis Sep 1990 A
4967273 Greenberg Oct 1990 A
4977594 Shear Dec 1990 A
5001752 Fischer Mar 1991 A
5012514 Renton Apr 1991 A
5047928 Wiedemer Sep 1991 A
5050213 Shear Sep 1991 A
5103392 Mori Apr 1992 A
5103476 Waite et al. Apr 1992 A
5109413 Comerford et al. Apr 1992 A
5117457 Comerford et al. May 1992 A
5193573 Chronister Mar 1993 A
5204897 Wyman Apr 1993 A
5222134 Waite et al. Jun 1993 A
5249184 Woest et al. Sep 1993 A
5261002 Perlman et al. Nov 1993 A
5269019 Peterson et al. Dec 1993 A
5274368 Breeden et al. Dec 1993 A
5301268 Takeda Apr 1994 A
5303370 Brosh et al. Apr 1994 A
5319705 Halter et al. Jun 1994 A
5355161 Bird et al. Oct 1994 A
5369262 Dvorkis et al. Nov 1994 A
5406630 Piosenka et al. Apr 1995 A
5410598 Shear et al. Apr 1995 A
5414861 Horning May 1995 A
5437040 Campbell Jul 1995 A
5442704 Holtey Aug 1995 A
5444780 Hartman, Jr. Aug 1995 A
5448045 Clark Sep 1995 A
5457699 Bode et al. Oct 1995 A
5459867 Adams et al. Oct 1995 A
5469506 Berson et al. Nov 1995 A
5473692 Davis Dec 1995 A
5490216 Richardson, III Feb 1996 A
5500897 Hartman, Jr. Mar 1996 A
5509070 Schull Apr 1996 A
5513319 Finch et al. Apr 1996 A
5522040 Hofsass et al. May 1996 A
5530846 Strong Jun 1996 A
5535276 Ganesan Jul 1996 A
5552776 Wade et al. Sep 1996 A
5553143 Ross et al. Sep 1996 A
5557765 Lipner et al. Sep 1996 A
5563799 Brehmer et al. Oct 1996 A
5568552 Davis Oct 1996 A
5586291 Lasker et al. Dec 1996 A
5629980 Stefik et al. May 1997 A
5634012 Stefik et al. May 1997 A
5636292 Rhoads Jun 1997 A
5638443 Stefik et al. Jun 1997 A
5638513 Ananda Jun 1997 A
5671412 Christiano Sep 1997 A
5673316 Auerbach et al. Sep 1997 A
5708709 Rose Jan 1998 A
5710706 Markl et al. Jan 1998 A
5710887 Chelliah et al. Jan 1998 A
5715403 Stefik Feb 1998 A
5721788 Powell et al. Feb 1998 A
5724425 Chang et al. Mar 1998 A
5745573 Lipner et al. Apr 1998 A
5745879 Wyman Apr 1998 A
5754657 Schipper et al. May 1998 A
5754763 Bereiter May 1998 A
5757908 Cooper et al. May 1998 A
5758068 Brandt et al. May 1998 A
5763832 Anselm Jun 1998 A
5765152 Erickson Jun 1998 A
5768382 Schneier et al. Jun 1998 A
5771354 Crawford Jun 1998 A
5774870 Storey Jun 1998 A
5790664 Coley et al. Aug 1998 A
5793839 Farris et al. Aug 1998 A
5799088 Raike Aug 1998 A
5802592 Chess Sep 1998 A
5809144 Sirbu et al. Sep 1998 A
5825876 Peterson, Jr. Oct 1998 A
5825877 Dan et al. Oct 1998 A
5825883 Archibald et al. Oct 1998 A
5841865 Sudia Nov 1998 A
5844986 Davis Dec 1998 A
5845065 Conte et al. Dec 1998 A
5845281 Benson et al. Dec 1998 A
5864620 Pettitt Jan 1999 A
5872846 Ichikawa Feb 1999 A
5875236 Jankowitz et al. Feb 1999 A
5883670 Sporer et al. Mar 1999 A
5883958 Ishiguro et al. Mar 1999 A
5892900 Ginter et al. Apr 1999 A
5892906 Chou et al. Apr 1999 A
5893086 Schmuck et al. Apr 1999 A
5905799 Ganesan May 1999 A
5917912 Ginter et al. Jun 1999 A
5925127 Ahmad Jul 1999 A
5943248 Clapp Aug 1999 A
5943422 Van Wie et al. Aug 1999 A
5948061 Merriman Sep 1999 A
5949877 Traw et al. Sep 1999 A
5951642 Onoe et al. Sep 1999 A
5953502 Helbig et al. Sep 1999 A
5956408 Arnold Sep 1999 A
5982891 Ginter et al. Nov 1999 A
5983238 Becker et al. Nov 1999 A
5991406 Lipner et al. Nov 1999 A
5994710 Knee et al. Nov 1999 A
5995625 Sudia et al. Nov 1999 A
6005945 Whitehouse Dec 1999 A
6009177 Sudia Dec 1999 A
6021438 Duvvoori Feb 2000 A
6023510 Epstein Feb 2000 A
6026293 Osborn Feb 2000 A
6049789 Frison et al. Apr 2000 A
6049878 Caronni et al. Apr 2000 A
6058188 Chandersekaran et al. May 2000 A
6058476 Matsuzaki et al. May 2000 A
6061794 Angelo et al. May 2000 A
6072874 Shin et al. Jun 2000 A
6073124 Krishnan et al. Jun 2000 A
6078909 Knutson Jun 2000 A
6085976 Sehr Jul 2000 A
6101606 Diersch et al. Aug 2000 A
6105069 Franklin et al. Aug 2000 A
6112181 Shear et al. Aug 2000 A
6119229 Martinez et al. Sep 2000 A
6122741 Patterson et al. Sep 2000 A
6131162 Yoshiura et al. Oct 2000 A
6141754 Choy Oct 2000 A
6147773 Taylor Nov 2000 A
6148417 Da Silva Nov 2000 A
6151676 Cuccia et al. Nov 2000 A
6158657 Hall, III et al. Dec 2000 A
6175825 Fruechtel Jan 2001 B1
6185678 Arbaugh et al. Feb 2001 B1
6188995 Garst et al. Feb 2001 B1
6189146 Misra et al. Feb 2001 B1
6192392 Ginter Feb 2001 B1
6199068 Carpenter Mar 2001 B1
6212634 Geer, Jr. et al. Apr 2001 B1
6219652 Carter et al. Apr 2001 B1
6219788 Flavin et al. Apr 2001 B1
6223291 Puhl Apr 2001 B1
6226618 Downs et al. May 2001 B1
6226747 Larsson et al. May 2001 B1
6230185 Salas et al. May 2001 B1
6233600 Salas et al. May 2001 B1
6233685 Smith May 2001 B1
6243439 Arai et al. Jun 2001 B1
6243470 Coppersmith et al. Jun 2001 B1
6243692 Floyd et al. Jun 2001 B1
6253224 Brice, Jr. et al. Jun 2001 B1
6260141 Park Jul 2001 B1
6263313 Milsted et al. Jul 2001 B1
6263431 Lovelace et al. Jul 2001 B1
6272469 Koritzinsky et al. Aug 2001 B1
6279111 Jensenworth et al. Aug 2001 B1
6279156 Amberg et al. Aug 2001 B1
6286051 Becker et al. Sep 2001 B1
6289319 Lockwood et al. Sep 2001 B1
6289452 Arnold et al. Sep 2001 B1
6295577 Anderson et al. Sep 2001 B1
6298446 Schreiber et al. Oct 2001 B1
6303924 Adan et al. Oct 2001 B1
6304915 Nguyen et al. Oct 2001 B1
6314408 Salas et al. Nov 2001 B1
6314409 Schneck et al. Nov 2001 B2
6321335 Chu Nov 2001 B1
6327652 England et al. Dec 2001 B1
6330670 England et al. Dec 2001 B1
6334189 Granger et al. Dec 2001 B1
6335972 Chandersekaran et al. Jan 2002 B1
6343280 Clark Jan 2002 B2
6345256 Milsted et al. Feb 2002 B1
6345294 O'Toole et al. Feb 2002 B1
6363488 Ginter et al. Mar 2002 B1
6367017 Gray Apr 2002 B1
6373047 Adan et al. Apr 2002 B1
6374357 Mohammed et al. Apr 2002 B1
6385596 Wiser et al. May 2002 B1
6385727 Cassagnol et al. May 2002 B1
6389535 Thomlinson et al. May 2002 B1
6389537 Davis et al. May 2002 B1
6389538 Gruse et al. May 2002 B1
6389541 Patterson May 2002 B1
6393427 Vu et al. May 2002 B1
6397259 Lincke et al. May 2002 B1
6398245 Gruse et al. Jun 2002 B1
6405923 Seyson Jun 2002 B1
6408170 Schmidt et al. Jun 2002 B1
6409089 Eskicioglu Jun 2002 B1
6411941 Mullor et al. Jun 2002 B1
6418421 Hurtado et al. Jul 2002 B1
6424714 Wasilewski et al. Jul 2002 B1
6438690 Patel et al. Aug 2002 B1
6441813 Ishibashi Aug 2002 B1
6442529 Krishan et al. Aug 2002 B1
6442690 Howard et al. Aug 2002 B1
6446207 Vanstone et al. Sep 2002 B1
6449719 Baker Sep 2002 B1
6460140 Schoch et al. Oct 2002 B1
6463534 Geiger et al. Oct 2002 B1
6490680 Scheidt et al. Dec 2002 B1
6496858 Frailong et al. Dec 2002 B1
6502079 Ball et al. Dec 2002 B1
6532451 Schell et al. Mar 2003 B1
6539364 Moribatake et al. Mar 2003 B2
6549626 Al-Salqan Apr 2003 B1
6550011 Sims, III Apr 2003 B1
6557105 Tardo et al. Apr 2003 B1
6567793 Hicks et al. May 2003 B1
6571216 Garg et al. May 2003 B1
6574609 Downs et al. Jun 2003 B1
6574611 Matsuyama et al. Jun 2003 B1
6574612 Baratti et al. Jun 2003 B1
6581331 Kral Jun 2003 B1
6585158 Norskog Jul 2003 B2
6587684 Hsu et al. Jul 2003 B1
6587837 Spagna et al. Jul 2003 B1
6609201 Folmsbee Aug 2003 B1
6615350 Schell et al. Sep 2003 B1
6625729 Angelo Sep 2003 B1
6631478 Wang et al. Oct 2003 B1
6646244 Aas et al. Nov 2003 B2
6664948 Crane et al. Dec 2003 B2
6665303 Saito et al. Dec 2003 B1
6671737 Snowdon et al. Dec 2003 B1
6671803 Pasieka Dec 2003 B1
6678828 Pham et al. Jan 2004 B1
6684198 Shimizu et al. Jan 2004 B1
6690556 Smola et al. Feb 2004 B2
6694000 Ung et al. Feb 2004 B2
6701433 Schell et al. Mar 2004 B1
6704873 Underwood Mar 2004 B1
6708176 Strunk et al. Mar 2004 B2
6714921 Stefik et al. Mar 2004 B2
6716652 Ortlieb Apr 2004 B1
6738810 Kramer et al. May 2004 B1
6763458 Watanabe Jul 2004 B1
6775655 Peinado et al. Aug 2004 B1
6781956 Cheung Aug 2004 B1
6791157 Casto et al. Sep 2004 B1
6792531 Heiden et al. Sep 2004 B2
6816809 Circenis Nov 2004 B2
6816900 Vogel et al. Nov 2004 B1
6826606 Freeman et al. Nov 2004 B2
6826690 Hind et al. Nov 2004 B1
6834352 Shin Dec 2004 B2
6839841 Medvinsky et al. Jan 2005 B1
6844871 Hinckley et al. Jan 2005 B1
6847942 Land et al. Jan 2005 B1
6850252 Hofberg Feb 2005 B1
6851051 Bolle et al. Feb 2005 B1
6859790 Nonaka et al. Feb 2005 B1
6868433 Philyaw Mar 2005 B1
6871283 Zurko et al. Mar 2005 B1
6895504 Zhang et al. May 2005 B1
6898286 Murray May 2005 B2
6920567 Doherty et al. Jul 2005 B1
6922724 Frreman et al. Jul 2005 B1
6934840 Rich et al. Aug 2005 B2
6934942 Chilimbi Aug 2005 B1
6954728 Kusumoto et al. Oct 2005 B1
6957186 Guheen et al. Oct 2005 B1
6959288 Medina et al. Oct 2005 B1
6959290 Stefik Oct 2005 B2
6959291 Armstrong et al. Oct 2005 B1
6961858 Fransdonk Nov 2005 B2
6973444 Blinn et al. Dec 2005 B1
6976162 Ellison et al. Dec 2005 B1
6976163 Hind et al. Dec 2005 B1
6983050 Yacobi et al. Jan 2006 B1
6986042 Griffin Jan 2006 B2
6990174 Eskelinen Jan 2006 B2
6993648 Goodman et al. Jan 2006 B2
7000100 Lacombe et al. Feb 2006 B2
7000829 Harris et al. Feb 2006 B1
7010808 Leung et al. Mar 2006 B1
7013384 Challener et al. Mar 2006 B2
7017188 Schmeidler et al. Mar 2006 B1
7020704 Lipscomb et al. Mar 2006 B1
7024393 Peinado et al. Apr 2006 B1
7028149 Grawrock Apr 2006 B2
7028180 Aull et al. Apr 2006 B1
7043633 Fink et al. May 2006 B1
7051005 Peinado et al. May 2006 B1
7052530 Edlund et al. May 2006 B2
7054468 Yang May 2006 B2
7055169 Delpuch et al. May 2006 B2
7058819 Okane Jun 2006 B2
7069442 Sutton, II Jun 2006 B2
7069595 Cognigni et al. Jun 2006 B2
7073056 Kocher Jul 2006 B2
7073063 Peinado Jul 2006 B2
7076652 Ginter et al. Jul 2006 B2
7080039 Marsh Jul 2006 B1
7089594 Lai et al. Aug 2006 B2
7095852 Wack et al. Aug 2006 B2
7096469 Kubala et al. Aug 2006 B1
7097357 Johnson et al. Aug 2006 B2
7103574 Peinado et al. Sep 2006 B1
7113912 Stefik Sep 2006 B2
7116969 Park Oct 2006 B2
7117183 Blair et al. Oct 2006 B2
7121460 Parsons et al. Oct 2006 B1
7123608 Scott et al. Oct 2006 B1
7124938 Marsh Oct 2006 B1
7127579 Zimmer Oct 2006 B2
7130951 Christie et al. Oct 2006 B1
7133846 Ginter et al. Nov 2006 B1
7136838 Peinado et al. Nov 2006 B1
7143066 Shear et al. Nov 2006 B2
7143297 Buchheit et al. Nov 2006 B2
7146504 Parks et al. Dec 2006 B2
7162645 Iguchi et al. Jan 2007 B2
7171539 Mansell et al. Jan 2007 B2
7174457 England et al. Feb 2007 B1
7203966 Abburi et al. Apr 2007 B2
7207039 Komarla et al. Apr 2007 B2
7213005 Mourad et al. May 2007 B2
7213266 Maher et al. May 2007 B1
7216363 Serkowski et al. May 2007 B2
7216368 Ishiguro May 2007 B2
7222062 Goud et al. May 2007 B2
7224805 Hurst et al. May 2007 B2
7233948 Shamoon et al. Jun 2007 B1
7234144 Wilt et al. Jun 2007 B2
7236455 Proudler et al. Jun 2007 B1
7254836 Alkove et al. Aug 2007 B2
7260721 Tanaka et al. Aug 2007 B2
7266569 Cutter et al. Sep 2007 B2
7266714 Davies et al. Sep 2007 B2
7296154 Evans et al. Nov 2007 B2
7296296 Dunbar et al. Nov 2007 B2
7299292 Morten et al. Nov 2007 B2
7299358 Chateau et al. Nov 2007 B2
7310732 Matsuyama et al. Dec 2007 B2
7315941 Ramzan et al. Jan 2008 B2
7336791 Ishiguro Feb 2008 B2
7343496 Hsiang et al. Mar 2008 B1
7353209 Peinado et al. Apr 2008 B1
7353402 Bourne et al. Apr 2008 B2
7356709 Gunyakti et al. Apr 2008 B2
7359807 Frank et al. Apr 2008 B2
7360253 Frank et al. Apr 2008 B2
7376976 Fierstein et al. May 2008 B2
7382883 Cross et al. Jun 2008 B2
7383205 Peinado et al. Jun 2008 B1
7392429 Westerinen et al. Jun 2008 B2
7395245 Okamoto et al. Jul 2008 B2
7395452 Nicholson et al. Jul 2008 B2
7406446 Frank et al. Jul 2008 B2
7421413 Frank et al. Sep 2008 B2
7426752 Agrawal et al. Sep 2008 B2
7441121 Cutter, Jr. et al. Oct 2008 B2
7441246 Auerbach et al. Oct 2008 B2
7451202 Nakahara et al. Nov 2008 B2
7461249 Pearson et al. Dec 2008 B1
7464103 Siu Dec 2008 B2
7490356 Lieblich et al. Feb 2009 B2
7493487 Phillips et al. Feb 2009 B2
7494277 Setala Feb 2009 B2
7500267 McKune et al. Mar 2009 B2
7502945 Bourne Mar 2009 B2
7519816 Phillips et al. Apr 2009 B2
7526649 Wiseman Apr 2009 B2
7539863 Phillips et al. May 2009 B2
7540024 Phillips et al. May 2009 B2
7549060 Bourne et al. Jun 2009 B2
7552331 Evans et al. Jun 2009 B2
7558463 Jain et al. Jul 2009 B2
7562220 Frank et al. Jul 2009 B2
7565325 Lenard Jul 2009 B2
7568096 Evans Jul 2009 B2
7584502 Alkove et al. Sep 2009 B2
7590841 Sherwani et al. Sep 2009 B2
7596784 Abrams Sep 2009 B2
7610631 Frank et al. Oct 2009 B2
7617401 Marsh et al. Nov 2009 B2
7644239 Westerinen et al. Jan 2010 B2
7653943 Evans et al. Jan 2010 B2
7665143 Havens et al. Feb 2010 B2
7669056 Frank et al. Feb 2010 B2
7680744 Blinn et al. Mar 2010 B2
7694153 Ahdout Apr 2010 B2
7703141 Alkove et al. Apr 2010 B2
7739505 Reneris et al. Jun 2010 B2
7752674 Evans et al. Jul 2010 B2
7770205 Frank Aug 2010 B2
7810163 Evans et al. Oct 2010 B2
7814532 Cromer et al. Oct 2010 B2
7877607 Circenis Jan 2011 B2
7891007 Waxman et al. Feb 2011 B2
7900140 Mohammed et al. Mar 2011 B2
7903117 Howell et al. Mar 2011 B2
7958029 Bobich et al. Jun 2011 B1
7979721 Westerinen et al. Jul 2011 B2
8060923 Cutter et al. Nov 2011 B2
8074287 Barde et al. Dec 2011 B2
20010010076 Wray Jul 2001 A1
20010021252 Carter et al. Sep 2001 A1
20010034711 Tashenberg Oct 2001 A1
20010044782 Hughes Nov 2001 A1
20010049667 Moribatake et al. Dec 2001 A1
20010051996 Cooper et al. Dec 2001 A1
20010052077 Fung et al. Dec 2001 A1
20010053223 Ishibashi et al. Dec 2001 A1
20010056413 Suzuki et al. Dec 2001 A1
20010056539 Pavlin et al. Dec 2001 A1
20020002597 Morrell, Jr. Jan 2002 A1
20020007310 Long Jan 2002 A1
20020013772 Peinado Jan 2002 A1
20020019814 Ganesan Feb 2002 A1
20020023212 Proudler Feb 2002 A1
20020026574 Watanabe et al. Feb 2002 A1
20020044654 Maeda et al. Apr 2002 A1
20020046098 Maggio Apr 2002 A1
20020049679 Russell et al. Apr 2002 A1
20020055906 Katz et al. May 2002 A1
20020063933 Maeda et al. May 2002 A1
20020065781 Hillegass et al. May 2002 A1
20020073068 Guha Jun 2002 A1
20020091569 Kitaura et al. Jul 2002 A1
20020095603 Godwin et al. Jul 2002 A1
20020107701 Batty et al. Aug 2002 A1
20020111916 Coronna et al. Aug 2002 A1
20020112171 Ginter et al. Aug 2002 A1
20020118835 Uemura Aug 2002 A1
20020123964 Kramer et al. Sep 2002 A1
20020124212 Nitschke et al. Sep 2002 A1
20020129359 Lichner Sep 2002 A1
20020138549 Urien Sep 2002 A1
20020141451 Gates et al. Oct 2002 A1
20020144131 Spacey Oct 2002 A1
20020147601 Fagan Oct 2002 A1
20020147782 Dimitrova et al. Oct 2002 A1
20020147912 Shmueli et al. Oct 2002 A1
20020169974 McKune Nov 2002 A1
20020178071 Walker et al. Nov 2002 A1
20020184482 Lacombe et al. Dec 2002 A1
20020184508 Bialick et al. Dec 2002 A1
20020186843 Weinstein et al. Dec 2002 A1
20020193101 McAlinden Dec 2002 A1
20020194132 Pearson et al. Dec 2002 A1
20020198845 Lao et al. Dec 2002 A1
20020198846 Lao Dec 2002 A1
20030005135 Inoue et al. Jan 2003 A1
20030005335 Watanabe Jan 2003 A1
20030014323 Scheer Jan 2003 A1
20030014496 Spencer et al. Jan 2003 A1
20030021416 Brown et al. Jan 2003 A1
20030023564 Padhye et al. Jan 2003 A1
20030027549 Kiel et al. Feb 2003 A1
20030028454 Ooho et al. Feb 2003 A1
20030035409 Wang et al. Feb 2003 A1
20030037246 Goodman et al. Feb 2003 A1
20030040960 Eckmann Feb 2003 A1
20030041008 Grey et al. Feb 2003 A1
20030046026 Levy et al. Mar 2003 A1
20030046238 Nonaka et al. Mar 2003 A1
20030048473 Rosen Mar 2003 A1
20030056107 Cammack et al. Mar 2003 A1
20030065918 Willey Apr 2003 A1
20030069854 Hsu et al. Apr 2003 A1
20030069981 Trovato Apr 2003 A1
20030078853 Peinado et al. Apr 2003 A1
20030084278 Cromer et al. May 2003 A1
20030084285 Cromer et al. May 2003 A1
20030084337 Simionescu et al. May 2003 A1
20030084352 Schwartz et al. May 2003 A1
20030088500 Shinohara et al. May 2003 A1
20030093694 Medvinsky et al. May 2003 A1
20030097596 Muratov et al. May 2003 A1
20030110388 Pavlin et al. Jun 2003 A1
20030115458 Song Jun 2003 A1
20030120935 Teal et al. Jun 2003 A1
20030126519 Odorcic Jul 2003 A1
20030131252 Barton et al. Jul 2003 A1
20030133576 Grumiaux Jul 2003 A1
20030135380 Lehr et al. Jul 2003 A1
20030149670 Cronee Aug 2003 A1
20030149671 Yamamoto et al. Aug 2003 A1
20030156572 Hui et al. Aug 2003 A1
20030156719 Cronce Aug 2003 A1
20030163383 Engelhart Aug 2003 A1
20030163712 LaMothe et al. Aug 2003 A1
20030172376 Coffin, III et al. Sep 2003 A1
20030185395 Lee et al. Oct 2003 A1
20030188165 Sutton et al. Oct 2003 A1
20030188179 Challener et al. Oct 2003 A1
20030194094 Lampson Oct 2003 A1
20030196102 McCarroll Oct 2003 A1
20030196106 Erfani et al. Oct 2003 A1
20030198350 Foster et al. Oct 2003 A1
20030200336 Pal et al. Oct 2003 A1
20030208338 Challener et al. Nov 2003 A1
20030208573 Harrison et al. Nov 2003 A1
20030229702 Hensbergen et al. Dec 2003 A1
20030233553 Parks et al. Dec 2003 A1
20040001088 Stancil et al. Jan 2004 A1
20040001594 Krishnaswamy et al. Jan 2004 A1
20040003190 Childs et al. Jan 2004 A1
20040003268 Bourne et al. Jan 2004 A1
20040003269 Waxman et al. Jan 2004 A1
20040003270 Bourne et al. Jan 2004 A1
20040003288 Wiseman et al. Jan 2004 A1
20040010440 Lenard et al. Jan 2004 A1
20040019456 Cirenis Jan 2004 A1
20040023636 Gurel et al. Feb 2004 A1
20040030912 Merkle, Jr. et al. Feb 2004 A1
20040034816 Richard Feb 2004 A1
20040039916 Aldis et al. Feb 2004 A1
20040039924 Baldwin et al. Feb 2004 A1
20040039960 Kassayan Feb 2004 A1
20040044629 Rhodes et al. Mar 2004 A1
20040054678 Okamoto et al. Mar 2004 A1
20040054907 Chateau et al. Mar 2004 A1
20040054908 Circenis et al. Mar 2004 A1
20040054909 Serkowski et al. Mar 2004 A1
20040059937 Nakano Mar 2004 A1
20040064351 Mikurak Apr 2004 A1
20040064707 McCann et al. Apr 2004 A1
20040067746 Johnson Apr 2004 A1
20040073670 Chack et al. Apr 2004 A1
20040088548 Smetters et al. May 2004 A1
20040093371 Burrows et al. May 2004 A1
20040093508 Foerstner et al. May 2004 A1
20040107125 Guheen et al. Jun 2004 A1
20040107356 Shamoon et al. Jun 2004 A1
20040107359 Kawano et al. Jun 2004 A1
20040107368 Colvin Jun 2004 A1
20040111615 Nyang et al. Jun 2004 A1
20040123127 Teicher et al. Jun 2004 A1
20040125755 Roberts Jul 2004 A1
20040128251 Adam et al. Jul 2004 A1
20040133794 Kocher et al. Jul 2004 A1
20040139027 Molaro Jul 2004 A1
20040139312 Medvinsky Jul 2004 A1
20040146015 Cross et al. Jul 2004 A1
20040158742 Srinivasan et al. Aug 2004 A1
20040184605 Soliman Sep 2004 A1
20040193919 Dabbish et al. Sep 2004 A1
20040199769 Proudler Oct 2004 A1
20040205028 Verosub et al. Oct 2004 A1
20040205510 Rising Oct 2004 A1
20040220858 Maggio Nov 2004 A1
20040225894 Colvin Nov 2004 A1
20040255000 Simionescu et al. Dec 2004 A1
20040268120 Mirtal et al. Dec 2004 A1
20050015343 Nagai et al. Jan 2005 A1
20050021944 Craft et al. Jan 2005 A1
20050021992 Aida Jan 2005 A1
20050028000 Bulusu et al. Feb 2005 A1
20050033747 Wittkotter Feb 2005 A1
20050039013 Bajikar et al. Feb 2005 A1
20050044197 Lai Feb 2005 A1
20050044397 Bjorkengren Feb 2005 A1
20050050355 Graunke Mar 2005 A1
20050060388 Tatsumi et al. Mar 2005 A1
20050065880 Amato et al. Mar 2005 A1
20050080701 Tunney et al. Apr 2005 A1
20050086174 Eng Apr 2005 A1
20050091104 Abraham Apr 2005 A1
20050097204 Horowitz et al. May 2005 A1
20050102181 Scroggie et al. May 2005 A1
20050108547 Sakai May 2005 A1
20050108564 Freeman et al. May 2005 A1
20050120125 Morten et al. Jun 2005 A1
20050120251 Fukumori Jun 2005 A1
20050125673 Cheng et al. Jun 2005 A1
20050129296 Setala Jun 2005 A1
20050132150 Jewell et al. Jun 2005 A1
20050138338 Sodani et al. Jun 2005 A1
20050138370 Goud et al. Jun 2005 A1
20050138389 Catherman et al. Jun 2005 A1
20050138406 Cox Jun 2005 A1
20050138423 Ranganathan Jun 2005 A1
20050141717 Cromer et al. Jun 2005 A1
20050144099 Deb et al. Jun 2005 A1
20050149722 Wiseman Jul 2005 A1
20050149729 Zimmer et al. Jul 2005 A1
20050166051 Buer Jul 2005 A1
20050172121 Risan et al. Aug 2005 A1
20050182921 Duncan Aug 2005 A1
20050182940 Sutton Aug 2005 A1
20050188843 Edlund et al. Sep 2005 A1
20050198510 Robert et al. Sep 2005 A1
20050203801 Morgenstern et al. Sep 2005 A1
20050210252 Freeman et al. Sep 2005 A1
20050213761 Walmsley et al. Sep 2005 A1
20050216577 Durham et al. Sep 2005 A1
20050221766 Brizek et al. Oct 2005 A1
20050226170 Relan et al. Oct 2005 A1
20050235141 Ibrahim et al. Oct 2005 A1
20050240533 Cutter et al. Oct 2005 A1
20050246521 Bade et al. Nov 2005 A1
20050246525 Bade et al. Nov 2005 A1
20050246552 Bade et al. Nov 2005 A1
20050257073 Bade Nov 2005 A1
20050268115 Barde et al. Dec 2005 A1
20050268174 Kumagai Dec 2005 A1
20050275866 Corlett Dec 2005 A1
20050278519 Luebke et al. Dec 2005 A1
20050279827 Mascavage et al. Dec 2005 A1
20050283601 Tahan Dec 2005 A1
20050286476 Crosswy et al. Dec 2005 A1
20050289177 Hohmann, II Dec 2005 A1
20050289343 Tahan Dec 2005 A1
20060010076 Cutter et al. Jan 2006 A1
20060010326 Bade et al. Jan 2006 A1
20060015717 Liu et al. Jan 2006 A1
20060015718 Liu et al. Jan 2006 A1
20060015732 Liu Jan 2006 A1
20060020784 Jonker et al. Jan 2006 A1
20060020821 Waltermann et al. Jan 2006 A1
20060020860 Tardif et al. Jan 2006 A1
20060026418 Bade Feb 2006 A1
20060026419 Arndt et al. Feb 2006 A1
20060026422 Bade et al. Feb 2006 A1
20060045267 Moore et al. Mar 2006 A1
20060053112 Chitkara et al. Mar 2006 A1
20060055506 Nicolas Mar 2006 A1
20060072748 Buer Apr 2006 A1
20060072762 Buer Apr 2006 A1
20060074600 Sastry et al. Apr 2006 A1
20060075014 Tharappel et al. Apr 2006 A1
20060075223 Bade et al. Apr 2006 A1
20060085637 Pinkas Apr 2006 A1
20060085844 Buer et al. Apr 2006 A1
20060089917 Strom et al. Apr 2006 A1
20060090084 Buer Apr 2006 A1
20060100010 Gatto et al. May 2006 A1
20060106845 Frank et al. May 2006 A1
20060106920 Steeb et al. May 2006 A1
20060107306 Thirumalai et al. May 2006 A1
20060107328 Frank et al. May 2006 A1
20060107335 Frank et al. May 2006 A1
20060112267 Zimmer et al. May 2006 A1
20060117177 Buer Jun 2006 A1
20060129496 Chow et al. Jun 2006 A1
20060129824 Hoff et al. Jun 2006 A1
20060130130 Kablotsky Jun 2006 A1
20060143431 Rothman Jun 2006 A1
20060149966 Buskey et al. Jul 2006 A1
20060156416 Huotari et al. Jul 2006 A1
20060165005 Frank et al. Jul 2006 A1
20060167814 Peinado et al. Jul 2006 A1
20060167815 Peinado et al. Jul 2006 A1
20060168664 Frank et al. Jul 2006 A1
20060173787 Weber et al. Aug 2006 A1
20060174110 Storm et al. Aug 2006 A1
20060206618 Zimmer et al. Sep 2006 A1
20060212363 Peinado et al. Sep 2006 A1
20060212945 Donlin et al. Sep 2006 A1
20060213997 Frank et al. Sep 2006 A1
20060229990 Shimoji et al. Oct 2006 A1
20060235798 Alkove et al. Oct 2006 A1
20060235799 Evans et al. Oct 2006 A1
20060235801 Storm et al. Oct 2006 A1
20060242406 Barde et al. Oct 2006 A1
20060248594 Grigorovich et al. Nov 2006 A1
20060248596 Jain et al. Nov 2006 A1
20060265758 Khandelwal et al. Nov 2006 A1
20060282319 Maggio Dec 2006 A1
20060282899 Raciborski Dec 2006 A1
20070033102 Frank et al. Feb 2007 A1
20070058807 Marsh Mar 2007 A1
20070280422 Setala Dec 2007 A1
20090070454 McKinnon, III et al. Mar 2009 A1
20090132815 Ginter et al. May 2009 A1
20090158036 Barde et al. Jun 2009 A1
20100177891 Keidar Jul 2010 A1
20110128290 Howell et al. Jun 2011 A1
20120137127 Jain May 2012 A1
Foreign Referenced Citations (122)
Number Date Country
1531673 Sep 2004 CN
0613073 Aug 1994 EP
0635790 Jan 1995 EP
0665486 Aug 1995 EP
709760 May 1996 EP
0715245 Jun 1996 EP
0715246 Jun 1996 EP
0715247 Jun 1996 EP
725512 Aug 1996 EP
752663 Jan 1997 EP
778512 Jun 1997 EP
798892 Oct 1997 EP
0843449 May 1998 EP
843449 May 1998 EP
849658 Jun 1998 EP
0874300 Oct 1998 EP
0887723 Dec 1998 EP
1061465 Dec 2000 EP
1085396 Mar 2001 EP
1120967 Aug 2001 EP
1287636 Mar 2003 EP
1292065 Mar 2003 EP
1363424 Nov 2003 EP
1378811 Jan 2004 EP
1387237 Feb 2004 EP
1429224 Jun 2004 EP
1223722 Aug 2004 EP
1460514 Sep 2004 EP
1233337 Aug 2005 EP
2359969 Sep 2001 GB
2378780 Feb 2003 GB
2291043 Nov 1990 JP
H0535461 Feb 1993 JP
H0635718 Feb 1994 JP
H07036559 Feb 1995 JP
H07141153 Jun 1995 JP
H086729 Jan 1996 JP
9006880 Jan 1997 JP
2001526550 May 1997 JP
H09185504 Jul 1997 JP
H9251494 Sep 1997 JP
09069044 Nov 1997 JP
2000293369 Oct 2000 JP
2001051742 Feb 2001 JP
2003510684 Mar 2001 JP
2001101033 Apr 2001 JP
2003510713 Apr 2001 JP
2001175605 Jun 2001 JP
2001184472 Jul 2001 JP
2001312325 Nov 2001 JP
2001331229 Nov 2001 JP
2001338233 Dec 2001 JP
2002108478 Apr 2002 JP
2002108870 Apr 2002 JP
2002374327 Dec 2002 JP
2003507785 Feb 2003 JP
2003140761 May 2003 JP
2003140762 May 2003 JP
2003157335 May 2003 JP
2003208314 Jul 2003 JP
2003248522 Sep 2003 JP
2003296487 Oct 2003 JP
2002182562 Jan 2004 JP
2004062561 Feb 2004 JP
2004118327 Apr 2004 JP
2004164491 Jun 2004 JP
2004295846 Oct 2004 JP
2004304755 Oct 2004 JP
2007525774 Sep 2007 JP
H08-054952 Feb 2011 JP
20010000805 Jan 2001 KR
20020037453 May 2002 KR
20050008439 Jan 2005 KR
20050021782 Mar 2005 KR
WO-9301550 Jan 1993 WO
WO-9613013 May 1996 WO
WO-9624092 Aug 1996 WO
WO-9627155 Sep 1996 WO
WO-9721162 Jun 1997 WO
WO-9725798 Jul 1997 WO
WO-9743761 Nov 1997 WO
WO-9810381 Mar 1998 WO
WO-9811478 Mar 1998 WO
WO-9821679 May 1998 WO
WO-9824037 Jun 1998 WO
WO-9837481 Aug 1998 WO
WO-9809209 Sep 1998 WO
WO-9842098 Sep 1998 WO
WO-9858306 Dec 1998 WO
WO-9915970 Apr 1999 WO
WO-9953689 Oct 1999 WO
WO-0008909 Feb 2000 WO
WO-0054126 Sep 2000 WO
WO-0057684 Oct 2000 WO
WO-0058810 Oct 2000 WO
WO-0058811 Oct 2000 WO
WO-0058859 Oct 2000 WO
WO-0059150 Oct 2000 WO
WO-0059152 Oct 2000 WO
WO-0135293 May 2001 WO
WO-0144908 Jun 2001 WO
WO-0145012 Jun 2001 WO
WO-0152020 Jul 2001 WO
WO-0152021 Jul 2001 WO
WO-0163512 Aug 2001 WO
WO-0177795 Oct 2001 WO
WO-0193461 Dec 2001 WO
WO-0208969 Jan 2002 WO
WO-0219598 Mar 2002 WO
WO-0237371 May 2002 WO
WO-02056155 Jul 2002 WO
WO-02103495 Dec 2002 WO
WO-03009115 Jan 2003 WO
WO-03030434 Apr 2003 WO
WO03073688 Sep 2003 WO
WO-03073688 Sep 2003 WO
WO-03107585 Dec 2003 WO
WO03107588 Dec 2003 WO
WO-03107588 Dec 2003 WO
WO-2004092886 Oct 2004 WO
WO-2006065012 Jun 2006 WO
WO-2007032974 Mar 2007 WO
Related Publications (1)
Number Date Country
20060085634 A1 Apr 2006 US
Continuation in Parts (1)
Number Date Country
Parent 10968462 Oct 2004 US
Child 11018095 US