US20040025010A1 - Computing platform certificate - Google Patents
Computing platform certificate Download PDFInfo
- Publication number
- US20040025010A1 US20040025010A1 US10/618,859 US61885903A US2004025010A1 US 20040025010 A1 US20040025010 A1 US 20040025010A1 US 61885903 A US61885903 A US 61885903A US 2004025010 A1 US2004025010 A1 US 2004025010A1
- Authority
- US
- United States
- Prior art keywords
- certificate
- electronic file
- computing device
- manufacturer
- key
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Abandoned
Links
- 238000000034 method Methods 0.000 claims description 29
- 238000012545 processing Methods 0.000 claims description 19
- 238000012360 testing method Methods 0.000 description 23
- 230000008569 process Effects 0.000 description 15
- 238000004519 manufacturing process Methods 0.000 description 10
- 238000012986 modification Methods 0.000 description 10
- 230000004048 modification Effects 0.000 description 10
- 230000008859 change Effects 0.000 description 9
- 230000004224 protection Effects 0.000 description 8
- 230000008901 benefit Effects 0.000 description 5
- 238000013461 design Methods 0.000 description 5
- 230000006870 function Effects 0.000 description 5
- 230000004075 alteration Effects 0.000 description 4
- 238000010586 diagram Methods 0.000 description 4
- 230000007246 mechanism Effects 0.000 description 4
- 238000012795 verification Methods 0.000 description 4
- 238000013478 data encryption standard Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000006467 substitution reaction Methods 0.000 description 2
- 241000700605 Viruses Species 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000010367 cloning Methods 0.000 description 1
- 230000006378 damage Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 230000007334 memory performance Effects 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- ZRHANBBTXQZFSP-UHFFFAOYSA-M potassium;4-amino-3,5,6-trichloropyridine-2-carboxylate Chemical compound [K+].NC1=C(Cl)C(Cl)=NC(C([O-])=O)=C1Cl ZRHANBBTXQZFSP-UHFFFAOYSA-M 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/10—Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/14—Protection against unauthorised use of memory or access to memory
- G06F12/1408—Protection against unauthorised use of memory or access to memory by using cryptography
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/57—Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/57—Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
- G06F21/575—Secure boot
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/0819—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
- H04L9/0822—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) using key encryption key
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3226—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using a predetermined code, e.g. password, passphrase or PIN
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3263—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/10—Providing a specific technical effect
- G06F2212/1052—Security improvement
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/2153—Using hardware token as a secondary aspect
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/60—Digital content management, e.g. content distribution
- H04L2209/603—Digital right managament [DRM]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/80—Wireless
Definitions
- This invention relates in general to processing devices and, more particularly, to a secure computing system.
- Not all unauthorized modifications of a computing device are caused by third parties. Some modifications of the intended operation of a computing device are caused by the user. For example, a user may change a device's intended settings, sometimes with the aid of unauthorized software, to “improve” the operation of a device. In some cases, such as the modification of firmware on an automobile controller, such changes could be extremely dangerous.
- a user may want to transfer data or programs from a first device to a second device. This may be improper due to copyright restrictions or may involve moving software to a platform where it is not stable.
- a computing device comprises a processing system with an externally-accessible memory coupled to the processing system.
- An electronic file is stored in the externally-accessible memory with a digital certificate containing information associating the electronic file and an identifier linked to the computing device.
- the processing system determines whether there is a valid association between a current state of the electronic file and the identifier prior to accessing the electronic file.
- the present invention provides significant advantages over the prior art.
- Application software and data files may be maintained securely to prevent modification to important files or to prevent the transferring of program or data files between devices.
- a unique identification number for the computing device such as an IMEI number
- IMEI number is stored in the externally accessible memory in a data file and protected with the digital certificate to prevent either changing of the identification number or transferring the electronic file containing the identification number to another device. Storage of the identification number in externally-accessible memory greatly simplifies the production of the computing device.
- FIG. 1 illustrates a basic block diagram showing various protection mechanisms used to protect firmware, application software, and data in a mobile computing environment
- FIG. 2 illustrates a preferred embodiment for a manufacturer certificate shown in FIG. 1;
- FIG. 3 is a flow chart showing the use of the manufacturer certificate in a secure boot loader and a secure boot checker program
- FIG. 4 illustrates a flow chart describing the authentication of the manufacturer's public key as stored in the manufacturer certificate
- FIG. 5 illustrates a flow chart describing authentication of the certificate signature field in a manufacturer certificate
- FIG. 6 illustrates a flow chart describing authentication of the originator's public key field in a manufacturer certificate
- FIG. 7 illustrates a flow chart authenticating the firmware bound to a manufacturer certificate
- FIG. 8 is a flow chart describing die identification code verification in a manufacturer certificate
- FIG. 9 is a flow chart describing the operation of a secure run-time platform data checker and a secure run-time checker
- FIG. 10 illustrates the binding of an application file or data file to a computing platform through a platform certificate
- FIG. 11 illustrates the unbinding of an application or data file from the platform certificate necessary to execute the application or use the data file within an application
- FIG. 12 describes a particular use of the manufacturer and/or platform certificate to securely store a IMEI (International Mobile Equipment Identity) number in external memory;
- IMEI International Mobile Equipment Identity
- FIG. 13 illustrates a block diagram of using fields in the manufacture certificate to control the operation of the device
- FIG. 14 illustrates a variation on FIG. 13 where configuration data is stored in a data file protected by a platform certificate
- FIG. 15 illustrates an alternative design for accessing the device 10 is a certain mode, such as a test mode.
- FIGS. 1 - 15 of the drawings like numerals being used for like elements of the various drawings.
- FIG. 1 illustrates a basic block diagram showing various protection mechanisms used to protect firmware, application software, and data in a mobile computing environment. While the invention is discussed herein with regard to a mobile computing device, such as a mobile phone or PDA, it is applicable to other computing devices as well.
- the circuitry of mobile computing device 10 of FIG. 1 is divided into three major blocks.
- a baseband processing system 12 an external non-volatile memory system 14 , and a RF (radio frequency) system 16 .
- the baseband processing system is responsible for processing data prior to RF modulation.
- the baseband processing system 12 embeds an internal memory subsystem 18 , including SRAM (static random access memory) 20 , ROM (read-only memory) 22 and a fused memory array (eFuse) 24 .
- One or more processing devices 26 such as general purpose processors, digital signal processors, and coprocessors, are coupled to the internal memory subsystem 18 .
- Input/Output (I/O) circuitry 28 is coupled to the processor(s) 26 and internal memory subsystem 18 .
- Firmware 30 , application software 32 and data files 34 are stored in the external non-volatile memory system 14 .
- Firmware 30 is the basic system code stored on the device by the manufacturer prior to sale.
- the firmware 30 is permanently resident on the platform, although it may be updated by the manufacturer to add functionality or to correct errors.
- security is an extremely important issue with regard to firmware 30 .
- application software 32 and data files 34 it is often important to ensure the integrity of these files; for example, it may be desirable to ensure that the files are not modified, deleted or replaced by other “virus” software. Also, it is often important to prevent the copying of application software 32 and data files 34 (such as music and video files) to protect the copyrights of the owner of the underlying work.
- a “manufacturer” certificate 36 binds the firmware to the particular computing device 10 (multiple manufacturer certificates may be bound to respective firmware tasks).
- application software 32 and data files 34 are bound to the particular computing device 10 by respective “platform” certificates 38 .
- These certificates described in detail below, can be used to prevent modification of (and optionally to preserve the confidentiality of) the firmware, application software and data, and further prevent copying the firmware, application software and data to another device.
- symmetric-key or “secret key”
- secret key An example of a symmetric-key cryptosystem is DES (Data Encryption Standard).
- asymmetric or “public-key” cryptography
- a key generation algorithm produces the matched pair of keys, such that information may be encrypted using the public key (which may be published to prospective senders) and decrypted using the private key (which is maintained in secret by the recipient) and, conversely, information encrypted with the private key can be decrypted with the public key. Deducing the private key from the public key is not computationally feasible.
- parties with no prior security arrangement can exchange information, since the private key need not be sent through a secure channel.
- RSA encryption developed by RSA Security, Inc.
- a one-way hash function takes a variable-length input and produces a fixed-length output, known as a “message digest” or “hash”.
- the hash function ensures that, if the information is changed in any way, an entirely different output value is produced.
- Hash algorithms are typically used in verifying the integrity of data. SHA-1 (160 bit hash) and MD5 (128 bit hash) are examples of one-way hash functions.
- a digital signature enables the recipient of information to verify the authenticity of the information's origin, and also verify that the information is intact.
- the sender signs a message by computing its hash and encrypting the hash with the sender's private key.
- the recipient verifies the signature on the message by decrypting it with sender's public key (thus obtaining the transmitted hash), computing the hash of the received message, and comparing the two.
- public key digital signatures provide authentication and data integrity.
- a digital signature also provides non-repudiation, which means that it prevents the sender from disclaiming the origin of the information.
- DSA Digital Signature Algorithm
- DSA Digital Signature Algorithm
- a digital certificate is a form of digital passport or credential that simplifies the task of establishing whether a public key truly belongs to the purported owner.
- a certificate is the user's public key that has been digitally signed by someone trusted, such as a certificate authority.
- a certificate can also contain additional information such as version number, user ID number, expiration date, and so on.
- Certain code and keys are maintained internally on the baseband processing system 12 in support of other security features.
- Several system programs are located in ROM 22 , in order to prevent any malicious tampering.
- the programs include the Secure Boot Loader (described in detail in connection with FIG. 3), the Secure Reset Boot Checker (described in detail in connection with FIG. 3), the Secure Run-Time Platform Data Checker (described in detail in connection with FIG. 9), the Secure Run-Time Checker (described in detail in connection with FIG. 9), the Secure Run-Time Loader (described in detail in connection with FIGS. 10 and 11), and various cryptographic software to support data encryption and hashing. Some or all of the cryptographic techniques may be performed in conjunction with a dedicated crypto-processor.
- certain system data is maintained on the eFuse Array 24 (or other permanent memory internal to the baseband processing system 12 ). After the data is written to the array, further writing to the particular location is disabled, such that the data cannot be overwritten.
- a die identification number is a unique number associated with each individual device. In the preferred embodiment, this number is stored as DIE_ID_FUSE in the eFuse array 24 at the time of manufacture. This identification code is not considered secret and may be read by non-secure software.
- the manufacturer's public key (the “manufacturer” being the manufacture of device 10 ) is also stored in the eFuse array 24 after hashing as H_Man_Pub_Key.
- the location storing H_Man_Pub_Key does not need to be protected from external access, since the manufacturer's public key is not secret; however, it should be protected from modification after writing.
- Use of H_Man_Pub_Key is discussed in greater detail in connection with FIG. 4. It should be noted that the hashing of the manufacturer's public key is optional; hashing is used to compact long keys to reduce the amount of memory needed to store the key.
- a test ID may also be hashed and stored in the eFuse array 24 .
- the hashed test ID (H_Test_ID) may be used to prevent unauthorized access to the device in test mode, where certain protections are disabled. This aspect is discussed in greater detail in connection with FIG. 15.
- a Key Encryption Key is a secret key preferably generated by a random number generator internal to the baseband processor at the time of production of the device.
- the KEK is stored in the eFuse array 24 and is not modifiable or externally accessible. The KEK for a particular device, therefore, cannot be determined even by the manufacturer.
- the KEK is used to dynamically provide additional encrypted keys for the platform certificates 38 , as described in greater detail in connection with FIGS. 10 and 11.
- FIG. 2 illustrates a preferred embodiment for a manufacturer certificate 36 . It should be understood that a manufacture certificate 36 for a particular device could contain more or less fields than the embodiment shown in FIG. 2. A summary of the fields of the for the manufacturer certificate 36 of FIG. 2 are described in Table 1.
- the certificate size (CERT_SIZE) and certificate type (CERT_TYPE) fields indicate the size and the type (i.e., “manufacturer”) of the manufacturer certificate 36 .
- the debug request (DEBUG_REQ) may be set by the manufacturer to enable or disable emulation on the device. As described below, only the manufacturer can set the value of this field.
- the code address (CODE_ADDR) field indicates the starting address of the code in the external memory 14 .
- the code size field (CODE_SIZE) indicates the size (in bytes) of the firmware.
- the code starting address (CODE_START_ADDR) indicates the entry point of the firmware at execution.
- the manufacturer certificate 36 further includes the manufacturer's public key (MAN_PUB_KEY) and the software originator's public key (ORIG_PUB_KEY); this assumes that the firmware is generated by a third party with its own signature. If the firmware is generated by the manufacturer, a second public key for the manufacturer can be optionally be used.
- a signature for the originator's public key is generated by hashing ORIG_PUB_KEY and encrypting the hashed ORIG_PUB_KEY using the manufacturer's private key (MAN_PRI_KEY).
- a software signature is generated by hashing the code of firmware 30 and encrypting the resulting hashed code using the originator's private key (ORIG_PRI_KEY). Since ORIG_PRI_KEY is private to the originator, the SW_SIG must be provided to the manufacturer by the originator.
- the DIE_ID of the particular device 10 is added to the manufacturer certificate 36 . This couples the code to a single device, preventing copying of the firmware to a different device.
- Configuration parameters are set in the CONF_PARAM field of the manufacturer certificate 36 . As described in connection with FIGS. 13 and 14, information in this field can be used to set functionality in the device 10 .
- parameters in the CONF_PARAM field could be used to set DPLL (digital phase lock loop) frequencies, memory access wait states, filter and gain values in the RF circuitry 16 , and battery management parameters (such as charging curves).
- DPLL digital phase lock loop
- Data unique to the particular device can be stored in the PLATFORM_DATA field.
- an IMEI number can be stored in this field. This aspect is described in greater detail in connection with FIG. 12.
- a manufacturer certificate signature prevents tampering with any of the fields of the manufacturer certificate 36 .
- the SIG_CERT is generated by hashing the other fields of the manufacturer certificate and encrypting the hashed code with the MAN_PRI_KEY.
- FIG. 3 is a flow chart showing the use of the manufacturer certificate 36 in a secure boot loader 50 and a secure boot checker program 52 , preferably stored ROM 22 to protect the programs from alteration of program flows.
- the secure boot loader determines whether boot system firmware is available for uploading at power-up. If so, the secure boot loader first loads a flash programmer. The flash programmer is used to load the system boot firmware. The flash programmer must also have a manufacturer certificate 36 and the secure boot loader is responsible for ensuring the authenticity and integrity of the flash programmer's manufacturer certificate and the code of the flash programmer program prior to any execution of the flash programmer. The flash programmer then uploads the system boot firmware.
- the secure reset boot checker 52 checks the authenticity and integrity of the certificate of the system boot firmware (and any other firmware) stored in external memory 14 before its execution. Upon execution of the secure boot loader 50 or secure reset boot checker 52 , the device 10 is configured to disallow any interruption or other bypassing of their execution prior to completion.
- step 54 the secure boot loader 50 and secure reset boot checker 52 await a power-on or system reset.
- step 56 upon a power-on or system reset, the secure boot loader 50 checks a chosen interface, such as the UART (universal asynchronous receiver/transmitter), for a synchronization signal on the interface's physical bus. If no activity is detected on the physical bus after a time-out or a watchdog reset (step 58 ), then it is assumed that no system firmware download is forthcoming and control switches to the secure reset boot checker 52 .
- UART universal asynchronous receiver/transmitter
- steps 60 through 70 check the manufacturer certificate 36 of the flash programmer prior to any execution of the flash programmer.
- the manufacturer's public key (MAN_PUB_KEY) from the manufacturer certificate of the flash programmer is authenticated. Authentication of MAN_PUB_KEY is illustrated in FIG. 4.
- FIG. 4 illustrates a flow chart describing the authentication of the manufacturer's public key as stored in the manufacturer certificate 36 .
- MAN_PUB_KEY from the manufacturer certificate of the firmware (in this case, the flash programmer) is hashed and, in step 102 , the resulting hash is compared to H_MAN_PUB_KEY from the eFuse memory array 24 . If there is a match in step 104 , then the authentication returns a “pass”; otherwise a fail is returned.
- a hashed value for the manufacturer's public key is stored in manufacturer certificate 36 ; in this case, hashing step 100 can be eliminated. Also, only a predetermined number of least significant bits of the hashed manufacturer's public key can be stored in the eFuse memory 14 ; in this case, only corresponding bits would be compared in step 104 .
- step 62 if the authentication of the manufacturer's public key results in a “fail” in step 62 , then the process is aborted in step 64 , and the loading of the flash programmer ceases. The device 10 is reset and the downloading of the flash programmer can be re-attempted.
- step 62 If the authentication of the manufacturer's public key results in a “pass” in step 62 , then the certificate signature (SIG_CERT) is authenticated in step 66 .
- FIG. 5 illustrates a flow chart describing the SIG_CERT authentication.
- step 110 the fields of the manufacturer certificate 36 , other than the SIG_CERT field, are hashed.
- step 112 the SIG_CERT field of the manufacturer certificate 36 is decrypted using the MAN_PUB_KEY. It should be noted that the authentication of the manufacturer certificate is performed after the authentication of MAN_PUB_KEY; therefore, the SIG_CERT can only be decrypted properly if it was originally encrypted using the manufacturer's private key.
- the hash of the certificate from step 110 is compared with the decrypted SIG_CERT in step 114 . If there is a match in step 116 , then the authentication is passed; otherwise, it is failed. A failed authentication indicates that one or more of the fields of the manufacturer certificate 36 for the firmware have been altered.
- step 68 if the authentication of the manufacturer certificate signature results in a “fail” in step 68 , then the process is aborted in step 64 , and the loading of the flash programmer ceases. The device 10 is reset and the downloading of the flash programmer can be re-attempted.
- step 70 authenticates the originator's public key field of the manufacturer certificate (ORIG_PUB_KEY) and authenticates the actual firmware code, with respect to the originator's public key and the software signature (SW_SIG).
- FIG. 6 illustrates a flow chart describing the authentication of ORIG_PUB_KEY.
- ORIG_PUB_KEY_SIG is decrypted using MAN_PUB_KEY.
- the ORIG_PUB_KEY field of the manufacturer certificate 36 is hashed in step 122 and compared to the decrypted signature in step 124 . If there is a match in decision block 126 , the authentication passes; otherwise it fails, indicating that either the ORIG_PUB_KEY or the ORIG_PUB_KEY_SIG has been modified.
- FIG. 7 illustrates a flow chart authenticating the firmware bound to the manufacturer certificate 36 .
- the SW_SIG field of the manufacturer certificate 36 is decrypted using the ORIG_PUB_KEY, which has previously been authenticated.
- the firmware 30 is hashed. The resultant hash is compared to the decrypted signature in block 134 . If there is a match in decision block 136 , the authentication passes; otherwise it fails, indicating that the firmware has been modified.
- step 72 if the authentication of either the originator's public key or of the firmware (in this case the flash programmer) fails in step 72 , then the process is aborted in step 64 , and the loading of the flash programmer ceases. The device 10 is reset and the downloading of the flash programmer can be re-attempted.
- the flash programmer executes in block 74 .
- the flash programmer loads the system boot software and forces a reset in step 76 .
- the flash programmer is erased from memory prior to the reset.
- the secure reset boot checker 52 will run after a timeout in decision block 58 . This will normally happen after completion of a flash programmer execution (unless there is another firmware download) or after a power-on or reset when there is no firmware download pending.
- the secure reset boot checker authenticates fields in the system boot software, as opposed to the manufacturer certificate of the flash programmer, as discussed in connection with the operation of the secure boot loader.
- step 78 manufacturer's public key of the manufacturer certificate 36 associated with the system boot software is authenticated using the authentication process shown in FIG. 4. If the authentication fails in decision block 80 , then the process is aborted in block 64 .
- the originator's public key (ORIG_PUB_KEY) is authenticated in block 86 . Authentication of the originator's public key is shown in FIG. 6. If the authentication fails in decision block 88 , then the process is aborted in block 64 .
- FIG. 8 is a flow chart describing die identification code verification.
- step 140 if the DIE_ID field of the manufacturer certificate 36 is set to “0”, then a “0” is returned. Otherwise, the DIE_ID field is compared to the DIE_ID_FUSE value stored in the eFuse memory 14 . A value is returned indicating whether or not the two fields matched.
- DIE_ID field is not set to “0”, and the die ID in the manufacturer certificate 36 does not match the DIE_ID_FUSE in the eFuse memory 24 , then certain features may be disabled; however, some features may remain available, such as the ability to make emergency calls.
- the secure boot loader and secure reset boot checker ensure that only valid firmware is loaded onto the device 10 , either at the time of manufactures or for upgrades. User or third party modification or replacement of the stored firmware is prevented, since no system firmware can be loaded without encryption using the manufacturer's private key.
- the secure run-time platform data checker and the secure run-time checker ensure that the system software is not modified and ensures that settings provided in the PLATFORM_DATA field of the manufacturer certificate 36 of the system software.
- FIG. 9 is a flow chart describing the operation of the secure run-time platform data checker and the secure run-time checker.
- the secure run-time platform data checker 200 prevents alteration of specific data associated with the device 10 that is stored in the PLATFORM_DATA field of the manufacturer certificate 36 .
- the secure run-time checker 202 prevents alteration or swapping of firmware.
- a secure service call is initiated.
- the secure service call is initiated upon detection of a period of inactivity of the processor(s) 26 , such that the checkers 200 and 202 cause minimal interference with other applications.
- the secure service call may also be initiated from an on-chip hardware timer which ensures that the service call is performed within a pre-set time, regardless of available periods of inactivity.
- the pre-set time can be configured at boot time according the a configuration parameter stored in the CONFIG_PARAM field of the manufacturer certificate 36 .
- a secure service call can be initiated upon a request from a software application. Once the secure service call is initiated, all interrupts are disabled such that the processor executing the secure run-time platform data checker 200 and secure run-time checker 202 cannot be interrupted nor deviated from execution of the checker tasks until completion.
- step 206 the manufacturer's public key (MAN_PUB_KEY) stored in the manufacturer certificate 36 is authenticated, as previously described in connection with FIG. 4. Authenticating MAN_PUB_KEY prevents substitution of false public key/private key combination for later authentication steps.
- step 208 If the manufacturer's public key authentication fails in step 208 , then the secure run-time platform data checker process 200 is aborted and the device is reset in step 210 .
- step 208 Assuming the manufacturer's public key authentication passes in step 208 , then the system boot firmware certificate is authenticated in step 212 . Authentication of the system boot firmware certificate is performed as previously described in connection with FIG. 5. This step ensures that no changes have been made to the data in the manufacturer certificate 36 , particularly to the values stored in the PLATFORM_DATA field.
- step 214 If the system boot firmware certificate authentication fails in step 214 , then the secure run-time platform data checker process 200 is aborted and the device is reset in step 210 .
- the DIE_ID of the manufacturer certificate is not set to zero, then the DIE_ID field is compared to DIE_ID_FUSE stored in the eFuse memory 24 . A successful comparison guarantees that the platform related data in the manufacturer certificate belong to the platform. If the DIE_ID of the manufacturer certificate is set to zero, a successful comparison of the PLATFORM_DATA field read from the manufacturer certificate 36 with the PLATFORM_DATA field associated with the platform certificate 38 guarantees that the platform related data in the manufacturer certificate belongs to the platform.
- the validity status of the platform data is returned to the calling software (if any) in step 218 . If the platform data does not match the expected platform data, certain features of the device may be disabled; however, some features may remain available, such as the ability to make emergency calls.
- Steps 220 through 240 describe the operation of the secure run-time checker 202 . These steps can be run on each firmware task.
- the manufacturer's public key (MAN_PUB_KEY) stored in the manufacturer certificate 36 of the firmware under test is authenticated, as previously described in connection with FIG. 4. Authenticating MAN_PUB_KEY prevents substitution of false public key/private key combination for later authentication steps.
- step 224 the secure run-time checker process 202 is aborted and the device is reset in step 210 . If the firmware under test is other than the system boot firmware, then execution is aborted in step 226 .
- step 222 Assuming the manufacturer's public key authentication passes in step 222 , then the firmware certificate (SIG_CERT) of the firmware under test is authenticated in step 228 . Authentication of the firmware certificate is performed as previously described in connection with FIG. 5.
- step 230 If the firmware certificate authentication fails in step 230 , then, if the firmware under test is the system boot firmware (step 224 ), the secure run-time checker process 202 is aborted and the device is reset in step 210 . If the firmware under test is other than the system boot firmware, then execution is aborted in step 226 .
- step 230 the originator's public key (ORIG_PUB_KEY) is authenticated in step 232 .
- Authentication of the ORIG_PUB_KEY of the manufacturer certificate of the firmware under test is performed as described in connection with FIG. 6.
- step 224 the secure run-time checker process 202 is aborted and the device is reset in step 210 . If the firmware under test is other than the system boot firmware, then execution is aborted in step 226 .
- step 234 If the originator's public key authentication passes in step 234 , then the firmware is authenticated in step 236 . Firmware authentication is performed as described in connection with FIG. 7.
- step 224 the secure run-time checker process 202 is aborted and the device is reset in step 210 . If the firmware under test is other than the system boot firmware, then execution is aborted in step 226 .
- step 240 Verification of the Die ID is performed as previously described in connection with FIG. 8.
- the validity status of the Die ID is returned to the calling software (if any) in step 242 . If the DIE_ID field is not set to “0”, and the die ID in the manufacturer certificate 36 does not match the DIE_ID_FUSE in the eFuse memory 24 , then certain features may be disabled; however, some features may remain available, such as the ability to make emergency calls.
- firmware replacement after initiation can be detected and thwarted.
- the tasks can be executed without re-initialization of the system.
- FIG. 10 illustrates the binding of a platform certificate 38 to an application file 32 or data file 34 .
- Table 2 lists the fields for a preferred embodiment of a platform certificate.
- TABLE 2 Platform Certificate Field Name Function Security CERT_SIZE Certificate's size (in bytes) CERT_TYPE Certificate's type: Platform CONFID_REQ Confidentiality request (S/W encryption) APPLI_ID Identifier of the application proprietary of the code and/or data certified by this certificate CODE_ADDR Address where are stored the code and/or data to verify CODE_SIZE Size of the certified code and/or data (in bytes) IV
- Initial Vector value for bulk encryption/ decryption in CBC mode ENC_SW_KEY Encrypted SW symmetrical key Random number encrypted using KEK SW_SIG Code and/or data signature by the SW Application code hash symmetrical key encrypted by random number key (SW_KEY) SIG_CERT Certificate signature by the SW symmetrical Manufacturer certificate fields key hashed and encrypted by random number key
- the platform certificate 38 makes use of the KEK stored in eFuse memory 14 .
- the KEK is a random number generated on-chip during production, such that the value of the KEK is not known to anyone.
- the KEK in the eFuse memory 14 such that it is not accessible through I/O ports or to application software. It is desirable that each chip's KEK be used in a manner that it cannot be externally determined or intercepted by other programs. While storage of the KEK in the eFuse memory 14 allows determination through physical observation of the fuses in the fused memory, such observation can only upon destruction of the chip itself; since each chip generates its own KEK, knowledge of one chip's KEK will not compromise the security of other chips.
- the KEK is used to encrypt other software keys that are randomly generated during operation of the device.
- a random number generator 250 (which could be either a hardware or software implementation) generates a random software key (SW_KEY) as necessary.
- SW_KEY is encrypted using the KEK in step 252 and stored in the platform certificate 38 as ENC_SW_KEY. Since ENC_SW_KEY can only be decrypted using the KEK, and since the KEK is secret and internal to the chip, ENC_SW_KEY can only be decrypted to applications that have access to the KEK. Thus, only the system software in ROM should have access to the KEK.
- SW_KEY Other secured values in the platform certificate 38 are encrypted using SW_KEY.
- the application file 32 or data file 34 may be optionally encrypted by SW_KEY responsive to a confidentiality request as shown in encryption step 254 and 256 . Whether or not the application file 32 or data file 34 is encrypted will also affect the software signature (SW_SIG) or signature certificate (SIG_CERT).
- SW_SIG software signature
- SIG_CERT signature certificate
- the software file 32 or data file (optionally encrypted) is hashed in step 258 and encrypted by SW_KEY in step 260 . This value is stored as SW_SIG.
- the certificate fields are hashed in step 262 and encrypted by SW_KEY in step 264 . This value is store as SIG_CERT.
- the platform certificate associates an application or data file with the device 10 upon which it is loaded. Once associated, the application or data file cannot be transferred to another device, since the platform certificate will be invalid. Further, the APPLI_ID field can be used to associate an application file 32 or data file 34 with a particular program. This could be used, for example, to allow access to an audio or video file only in connection with a specific media player application, even if the format of the audio or video file was a standard format capable of being played by various applications.
- FIG. 11 illustrates the unbinding of an application or data file from the platform certificate necessary to execute the application or use the data file within an application.
- SW_KEY is derived from the ENC_SW_KEY of the platform certificate 38 using the KEK from eFuse memory 14 .
- SW_KEY is used to decrypt the SIG_CERT field of platform certificate 38 in step 272 and to decrypt the SW_SIG field in step 274 .
- step 276 The fields of the platform certificate 38 , other then the SIG_CERT field are hashed in step 276 .
- the hash is compared to the decrypted SW_CERT field in step 278 .
- the stored application or data file is hashed in step 280 and the hash is compared to the decrypted SW_SIG field from step 274 in step 282 . If either the comparison in step 278 or the comparison in step 300 indicates a mismatch, a system error occurs in step 302 . Otherwise, the application is executed (or the data file is used by an application) after optional decryption in steps 304 and 306 .
- the platform certificate provides significant advantages over the prior art.
- the binding of a software or data file to a device 10 helps to uncover any modification of the original software module and prevents any copy of the source from running on another similar platform, offering an efficient protection against cloning attacks, specifically important for copyright management and media protection.
- the solution offers a high level of security since it is based on strong cryptographic techniques, such as one-way hash and bulk encryption, for platform signature and verification.
- the solution can easily be adapted to any computing hardware platform.
- the use of the KEK and a software key randomly-generated at the time of binding allows for external storage of the encrypted key in external memory.
- An unlimited number of different software keys can be used for the application and data files.
- the use of symmetric bulk encryption techniques for the calculation of the signatures significantly reduces processor computing loads relative to asymmetric techniques.
- FIG. 12 describes a particular use of the manufacturer and/or platform certificate to securely store a IMEI (International Mobile Equipment Identity) number in external memory.
- the IMEI number is specified in the UMTS (Universal Mobile Telephone Service) standard, release 5 , to protect both the phone manufacturer and the operator against clones and obsolete or non-conforming user equipment.
- the IMEI number must be stored somewhere in the mobile phone and sent to the serving network on demand.
- the protection of the IMEI number against tampering by any means has significantly increased the required security level of mobile devices.
- many manufacturers have stored the IMEI number, which is unique for each phone, on the chip late in the production process. Storing the number on-chip in a manner which is tamper-proof, however, is an expensive proposition.
- the IMEI can be stored in external memory in the manufacturer certificate (specifically, the PLATFORM_DATA field), which is customized for each phone, and/or in external memory bound to a platform certificate.
- the baseband processing system 12 can access the IMEI in external memory either from the manufacturer certificate 36 of the system boot firmware or from a memory location bound to a platform certificate 38 .
- the IMEI number is changed in the PLATFORM_DATA field of the manufacturer certificate 36 , it will be detected by the secure reset boot checker prior to execution of the system boot software. If changed after the system boot software is loaded, a change in the IMEI number will be detected by the secure run-time platform data checker.
- any change in the IMEI will be detected as an invalid SW_SIG.
- the IMEI can be stored in any location in the external memory.
- the device 10 can be programmed to allow emergency calls even if the IMEI results in an invalid manufacturer certificate 36 or invalid platform certificate 38 .
- FIG. 13 illustrates a block diagram for using fields in the manufacture certificate 36 to control the operation of the device 10 .
- the DEBUG_REQ field of the manufacturer certificate 36 is used to control test access and emulation circuitry 320 .
- Parameters set forth in the CONF_PARAM field of the manufacturer certificate 36 can be used to control any aspect of the operation of device 10 , by configuring hardware or software appropriately, as shown in blocks 322 and 324 .
- the system boot software accesses the configuration parameters from the manufacturer's certificate to configure the hardware and software resources. Placing the configuration parameters in the manufacturer's certificate 36 allows the manufacturer to design a device that has flexible hardware and/or software configurations and safely and securely configure the device as appropriate.
- One use of securely storing configuration parameters in a manufacturer's certificate 36 would be to allow the device 10 to enter configurations in controlled situations, where the configuration would leave the device 10 vulnerable to attack. For example, during a test mode, the device 10 could be placed in a configuration where certain normally hidden memory locations would be accessible to reading and/or writing. Also, certain hardware parameters, such as memory performance settings, bus speeds, processing speeds, and so on, may be changed during a test mode for analyzing system operations.
- a second use of securing storing configuration parameters in a manufacturer's certificate would be to control the performance of a device 10 .
- some users reconfigure hardware and/or software parameters to push a device to its limits. For example, many user's “overclock” a personal computers processor speed by changing the system clock speed or the multiple of the system clock at which the processor operates.
- memory settings can be changed to improve memory access and throughput. While overclocking can improve the performance of a computing device, it can also reduce hardware lifetimes by operating hardware at temperatures beyond their specification. Further, computing devices may operate erratically at the overclocked settings. Overclocked settings can thus be costly to manufacturers in terms of warranty and support.
- a third use of securing storing configuration parameters in a manufacturer's certificate would be to provide a single device that has different performance capabilities and/or different functionality settings.
- the device could be sold according to its configuration settings, which are stored in the manufacturer certificate 36 , such that the configurations could not be modified by the user or a third party.
- the device 10 could be easily upgraded by the manufacturer.
- a mobile computing device platform could be designed to run at multiple processor speeds and have different optional functionalities, such as wireless networking, audio and video capabilities.
- the device could be sold at a desired configuration that could be upgraded at a later date without expensive hardware upgrades, such as PC cards or memory port enhancements.
- FIG. 14 illustrates a variation on FIG. 13 where configuration data is stored in a data file 34 protected by a platform certificate. Any attempt to change the data file 34 storing the configuration parameters would be detected by the system firmware.
- the secure run-time platform data checker 200 could be modified to check the contents of the data file during operation of the device.
- FIG. 15 illustrates an alternative design for accessing the device 10 is a certain mode, such as a test mode shown in FIG. 15.
- This design stores the hash of an access code (H_Test_ID). This code could be stored the eFuse memory 24 .
- the party would need to enter an access code (Input_Test_ID). Input_Test_ID is hashed in block 330 and compared to H_Test_ID in block 332 . If the hashed access code from block 330 matches the stored hashed access code, then entry to the mode is enabled.
- the H_Test_ID will normally be significantly smaller in size than Input_Test_ID, reducing the storage space needed to store the access code. To gain entry to the desired mode, however, a party will need to supply a much larger number. While it is possible multiple inputs may hash to match H_Test_ID, it is statistically improbable that an improper input access code will result in a match using present day hashing algorithms such as SHA-1 or ND5.
- FIG. 15 provides an additional security benefit. Even if the stored hash, H_Test_ID, becomes known, determination of an input code which would hash to H_Test_ID would be computationally difficult.
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Multimedia (AREA)
- Technology Law (AREA)
- Storage Device Security (AREA)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/618,859 US20040025010A1 (en) | 2002-07-30 | 2003-07-14 | Computing platform certificate |
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US39959202P | 2002-07-30 | 2002-07-30 | |
EP02293057A EP1429224A1 (fr) | 2002-12-10 | 2002-12-10 | Autentification du firmware en temps d'exécution |
EP02293057 | 2002-12-10 | ||
US10/618,859 US20040025010A1 (en) | 2002-07-30 | 2003-07-14 | Computing platform certificate |
Publications (1)
Publication Number | Publication Date |
---|---|
US20040025010A1 true US20040025010A1 (en) | 2004-02-05 |
Family
ID=32319688
Family Applications (4)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US10/618,873 Active 2026-01-04 US8122244B2 (en) | 2002-07-30 | 2003-07-14 | Secure management of configuration parameters in a computing platform |
US10/618,862 Active 2025-02-08 US7539868B2 (en) | 2002-07-30 | 2003-07-14 | Run-time firmware authentication |
US10/618,859 Abandoned US20040025010A1 (en) | 2002-07-30 | 2003-07-14 | Computing platform certificate |
US10/619,031 Active 2025-08-14 US7299358B2 (en) | 2002-07-30 | 2003-07-14 | Indirect data protection using random key encryption |
Family Applications Before (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US10/618,873 Active 2026-01-04 US8122244B2 (en) | 2002-07-30 | 2003-07-14 | Secure management of configuration parameters in a computing platform |
US10/618,862 Active 2025-02-08 US7539868B2 (en) | 2002-07-30 | 2003-07-14 | Run-time firmware authentication |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US10/619,031 Active 2025-08-14 US7299358B2 (en) | 2002-07-30 | 2003-07-14 | Indirect data protection using random key encryption |
Country Status (2)
Country | Link |
---|---|
US (4) | US8122244B2 (fr) |
EP (2) | EP1429224A1 (fr) |
Cited By (52)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050041803A1 (en) * | 2003-01-02 | 2005-02-24 | Alain Chateau | On-device random number generator |
US20050228980A1 (en) * | 2004-04-08 | 2005-10-13 | Brokish Charles W | Less-secure processors, integrated circuits, wireless communications apparatus, methods and processes of making |
EP1645931A1 (fr) * | 2004-10-11 | 2006-04-12 | Telefonaktiebolaget LM Ericsson (publ) | Chargement et stockage sécurisé de données dans une unité de traitement de données |
WO2006039967A1 (fr) * | 2004-10-11 | 2006-04-20 | Telefonaktiebolaget Lm Ericsson (Publ) | Chargement et stockage securises de donnees dans un dispositif de traitement des donnees |
US20060129848A1 (en) * | 2004-04-08 | 2006-06-15 | Texas Instruments Incorporated | Methods, apparatus, and systems for securing SIM (subscriber identity module) personalization and other data on a first processor and secure communication of the SIM data to a second processor |
US20070055859A1 (en) * | 2005-09-02 | 2007-03-08 | Mediatek Inc. | Boot systems and methods |
US20070061897A1 (en) * | 2005-09-14 | 2007-03-15 | Michael Holtzman | Hardware driver integrity check of memory card controller firmware |
US20070061581A1 (en) * | 2005-09-14 | 2007-03-15 | Micky Holtzman | Methods used in a secure yet flexible system architecture for secure devices with flash mass storage memory |
WO2007113787A2 (fr) * | 2006-03-31 | 2007-10-11 | Nds Limited | Système de mise en oeuvre de certificat |
US20070294496A1 (en) * | 2006-06-19 | 2007-12-20 | Texas Instruments Incorporated | Methods, apparatus, and systems for secure demand paging and other paging operations for processor devices |
US20070294494A1 (en) * | 2006-06-16 | 2007-12-20 | Texas Instruments Incorporated | Page processing circuits, devices, methods and systems for secure demand paging and other operations |
US20080114993A1 (en) * | 2006-11-14 | 2008-05-15 | Texas Instruments Incorporated | Electronic devices, information products, processes of manufacture and apparatus for enabling code decryption in a secure mode using decryption wrappers and key programming applications, and other structures |
US20080133929A1 (en) * | 2004-10-11 | 2008-06-05 | Christian Gehrmann | Secure Loading And Storing Of Data In A Data Processing Device |
US20080240057A1 (en) * | 2007-03-29 | 2008-10-02 | Texas Instruments Incorporated | Accessing hardware initialization data of WLAN module using die identifier |
US20090013192A1 (en) * | 2007-07-03 | 2009-01-08 | Ping-Sheng Chen | Integrity check method applied to electronic device, and related circuit |
US20090019275A1 (en) * | 2007-07-13 | 2009-01-15 | Park Dong-Jin | Secure Boot Method and Semiconductor Memory System Using the Method |
US20090063865A1 (en) * | 2007-08-31 | 2009-03-05 | Berenbaum Alan D | Configurable Signature for Authenticating Data or Program Code |
US7743409B2 (en) | 2005-07-08 | 2010-06-22 | Sandisk Corporation | Methods used in a mass storage device with automated credentials loading |
US20100260066A1 (en) * | 2009-04-14 | 2010-10-14 | August Jared P | Network discovery and data transfer using snmp in an electric power transmission or distribution system |
US20110066835A1 (en) * | 2009-09-14 | 2011-03-17 | Love Kothari | Method and system for securely protecting a semiconductor chip without compromising test and debug capabilities |
US20110066787A1 (en) * | 2009-09-14 | 2011-03-17 | John Markey | Method and system for securely programming otp memory |
US20110088096A1 (en) * | 2009-10-14 | 2011-04-14 | Andrew Hilton | Systems and methods for license entitlement key distribution |
US20110085468A1 (en) * | 2009-10-14 | 2011-04-14 | Andrew Hilton | Systems and methods for a configurable communication device |
WO2011119985A2 (fr) * | 2010-03-26 | 2011-09-29 | Maxlinear, Inc. | Authentification et déchiffrage de micrologiciel pour un récepteur tv sécurisé |
US20110271330A1 (en) * | 2008-12-31 | 2011-11-03 | Nokia (China) Investment Co. Ltd. | Solutions for identifying legal user equipments in a communication network |
EP2402879A1 (fr) * | 2010-07-01 | 2012-01-04 | Rockwell Automation Technologies, Inc. | Procédés de signature de micrologiciel |
US20140033305A1 (en) * | 2012-07-30 | 2014-01-30 | Marvin D. Nelson | Code validation |
US20140122857A1 (en) * | 2012-10-25 | 2014-05-01 | Lenovo (Singapore) Pte, Ltd. | Apparatus, system and method for motherboard personalization |
US8892855B2 (en) | 2010-08-10 | 2014-11-18 | Maxlinear, Inc. | Encryption keys distribution for conditional access software in TV receiver SOC |
US8935520B2 (en) | 2010-03-30 | 2015-01-13 | Maxlinear, Inc. | Control word obfuscation in secure TV receiver |
US20150149783A1 (en) * | 2013-11-26 | 2015-05-28 | Rockwell Automation Technologies, Inc. | Method and Apparatus for Secure Distribution of Embedded Firmware |
US9219936B2 (en) | 2010-02-05 | 2015-12-22 | Maxlinear, Inc. | Conditional access integration in a SOC for mobile TV applications |
US20160232356A1 (en) * | 2015-02-09 | 2016-08-11 | Dell Products L.P. | Information Handling System Boot Pre-Validation |
US9436844B2 (en) | 2013-08-29 | 2016-09-06 | Microsoft Technology Licensing, Llc | Access enablement security circuit |
US9479340B1 (en) | 2015-03-30 | 2016-10-25 | Amazon Technologies, Inc. | Controlling use of encryption keys |
US20170093586A1 (en) * | 2015-09-25 | 2017-03-30 | Qualcomm Incorporated | Techniques for managing certificates on a computing device |
US9626513B1 (en) * | 2007-04-24 | 2017-04-18 | Marvell International Ltd. | Trusted modular firmware update using digital certificate |
CN106656502A (zh) * | 2016-09-26 | 2017-05-10 | 上海兆芯集成电路有限公司 | 计算机***及安全执行的方法 |
US20170132433A1 (en) * | 2006-11-09 | 2017-05-11 | Acer Cloud Technology, Inc. | Programming on-chip non-volatile memory in a secure processor using a sequence number |
US9674162B1 (en) | 2015-03-13 | 2017-06-06 | Amazon Technologies, Inc. | Updating encrypted cryptographic key pair |
US9716708B2 (en) | 2013-09-13 | 2017-07-25 | Microsoft Technology Licensing, Llc | Security certificates for system-on-chip security |
US20170230185A1 (en) * | 2016-02-10 | 2017-08-10 | Cisco Technology, Inc. | Dual-signed executable images for customer-provided integrity |
US9893885B1 (en) | 2015-03-13 | 2018-02-13 | Amazon Technologies, Inc. | Updating cryptographic key pair |
US9967135B2 (en) | 2016-03-29 | 2018-05-08 | Schweitzer Engineering Laboratories, Inc. | Communication link monitoring and failover |
US10003467B1 (en) * | 2015-03-30 | 2018-06-19 | Amazon Technologies, Inc. | Controlling digital certificate use |
US10009350B2 (en) * | 2016-04-12 | 2018-06-26 | Guardknox Cyber Technologies Ltd. | Hardware components configured for secure physical separation of communication networks in a vehicle and methods of use thereof |
US20180288035A1 (en) * | 2017-03-30 | 2018-10-04 | Avaya Inc. | Device enrollment service system and method |
US10110380B2 (en) * | 2011-03-28 | 2018-10-23 | Nxp B.V. | Secure dynamic on chip key programming |
US20190132123A1 (en) * | 2017-10-26 | 2019-05-02 | Robert Bosch Gmbh | Systems and methods for confirming a cryptographic key |
US11068600B2 (en) * | 2018-05-21 | 2021-07-20 | Kct Holdings, Llc | Apparatus and method for secure router with layered encryption |
WO2022006535A1 (fr) * | 2020-07-02 | 2022-01-06 | SDG Logic Inc. | Système et procédés de calcul confidentiel |
US20230011005A1 (en) * | 2021-07-12 | 2023-01-12 | Dell Products, L.P. | Systems and methods for authenticating configurations of an information handling system |
Families Citing this family (223)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1429224A1 (fr) * | 2002-12-10 | 2004-06-16 | Texas Instruments Incorporated | Autentification du firmware en temps d'exécution |
US7305668B2 (en) * | 2002-07-31 | 2007-12-04 | Intel Corporation | Secure method to perform computer system firmware updates |
FR2849226B1 (fr) * | 2002-12-20 | 2005-12-02 | Oberthur Card Syst Sa | Procede et dispositif de securisation de l'execution d'un programme informatique. |
TW200502959A (en) * | 2003-01-14 | 2005-01-16 | Koninkl Philips Electronics Nv | Tamper-resistant packaging and approach using magnetically-set data |
US7370212B2 (en) | 2003-02-25 | 2008-05-06 | Microsoft Corporation | Issuing a publisher use license off-line in a digital rights management (DRM) system |
DE10326665A1 (de) * | 2003-06-11 | 2005-01-20 | Endress + Hauser Process Solutions Ag | Verfahren zum Überwachen eines Feldgerätes |
US7681046B1 (en) * | 2003-09-26 | 2010-03-16 | Andrew Morgan | System with secure cryptographic capabilities using a hardware specific digital secret |
US7100205B2 (en) * | 2003-10-22 | 2006-08-29 | The United States Of America As Represented By The Secretary Of The Navy | Secure attention instruction central processing unit and system architecture |
US20050132177A1 (en) * | 2003-12-12 | 2005-06-16 | International Business Machines Corporation | Detecting modifications made to code placed in memory by the POST BIOS |
US7502942B1 (en) * | 2003-12-19 | 2009-03-10 | Adaptec, Inc. | System and method for authentication of embedded raid on a motherboard having input/output processor |
US7600132B1 (en) * | 2003-12-19 | 2009-10-06 | Adaptec, Inc. | System and method for authentication of embedded RAID on a motherboard |
KR100604828B1 (ko) * | 2004-01-09 | 2006-07-28 | 삼성전자주식회사 | 펌웨어 암호화 방법 및 해독 방법과 그 처리 장치 |
FR2867929B1 (fr) * | 2004-03-19 | 2007-03-02 | Gemplus Card Int | Procede d'authentification dynamique de programmes par un objet portable electronique |
US20060242406A1 (en) * | 2005-04-22 | 2006-10-26 | Microsoft Corporation | Protected computing environment |
US7627764B2 (en) * | 2004-06-25 | 2009-12-01 | Intel Corporation | Apparatus and method for performing MD5 digesting |
US8347078B2 (en) | 2004-10-18 | 2013-01-01 | Microsoft Corporation | Device certificate individualization |
US8332653B2 (en) * | 2004-10-22 | 2012-12-11 | Broadcom Corporation | Secure processing environment |
US8176564B2 (en) | 2004-11-15 | 2012-05-08 | Microsoft Corporation | Special PC mode entered upon detection of undesired state |
US8336085B2 (en) | 2004-11-15 | 2012-12-18 | Microsoft Corporation | Tuning product policy using observed evidence of customer behavior |
US8667580B2 (en) | 2004-11-15 | 2014-03-04 | Intel Corporation | Secure boot scheme from external memory using internal memory |
US8464348B2 (en) | 2004-11-15 | 2013-06-11 | Microsoft Corporation | Isolated computing environment anchored into CPU and motherboard |
EP1659472A1 (fr) * | 2004-11-22 | 2006-05-24 | Research In Motion Limited | Procédé et dispositif d'authentication d'un logiciel |
US7442583B2 (en) * | 2004-12-17 | 2008-10-28 | International Business Machines Corporation | Using electrically programmable fuses to hide architecture, prevent reverse engineering, and make a device inoperable |
US20060133607A1 (en) * | 2004-12-22 | 2006-06-22 | Seagate Technology Llc | Apparatus and method for generating a secret key |
US7360253B2 (en) * | 2004-12-23 | 2008-04-15 | Microsoft Corporation | System and method to lock TPM always ‘on’ using a monitor |
US7770205B2 (en) * | 2005-01-19 | 2010-08-03 | Microsoft Corporation | Binding a device to a computer |
US8423788B2 (en) | 2005-02-07 | 2013-04-16 | Sandisk Technologies Inc. | Secure memory card with life cycle phases |
US8321686B2 (en) | 2005-02-07 | 2012-11-27 | Sandisk Technologies Inc. | Secure memory card with life cycle phases |
US8108691B2 (en) | 2005-02-07 | 2012-01-31 | Sandisk Technologies Inc. | Methods used in a secure memory card with life cycle phases |
US20060218649A1 (en) * | 2005-03-22 | 2006-09-28 | Brickell Ernie F | Method for conditional disclosure of identity information |
US8438645B2 (en) | 2005-04-27 | 2013-05-07 | Microsoft Corporation | Secure clock with grace periods |
US8725646B2 (en) | 2005-04-15 | 2014-05-13 | Microsoft Corporation | Output protection levels |
US9363481B2 (en) | 2005-04-22 | 2016-06-07 | Microsoft Technology Licensing, Llc | Protected media pipeline |
US9436804B2 (en) | 2005-04-22 | 2016-09-06 | Microsoft Technology Licensing, Llc | Establishing a unique session key using a hardware functionality scan |
US20060265758A1 (en) | 2005-05-20 | 2006-11-23 | Microsoft Corporation | Extensible media rights |
US8353046B2 (en) | 2005-06-08 | 2013-01-08 | Microsoft Corporation | System and method for delivery of a modular operating system |
US7907531B2 (en) | 2005-06-13 | 2011-03-15 | Qualcomm Incorporated | Apparatus and methods for managing firmware verification on a wireless device |
US8474031B2 (en) * | 2005-06-28 | 2013-06-25 | Hewlett-Packard Development Company, L.P. | Access control method and apparatus |
US7827400B2 (en) * | 2005-07-28 | 2010-11-02 | The Boeing Company | Security certificate management |
WO2007023448A2 (fr) * | 2005-08-24 | 2007-03-01 | Nxp B.V. | Appareil et logiciel de processeur |
JP2007066021A (ja) * | 2005-08-31 | 2007-03-15 | Nec Electronics Corp | 外部データ改ざん検出装置、および外部データ改ざん検出方法 |
JP4891324B2 (ja) * | 2005-09-14 | 2012-03-07 | サンディスク コーポレイション | 大容量フラッシュメモリを備える高信頼性デバイスのための、セキュアでありながらフレキシブルなシステムアーキテクチャ |
KR100660641B1 (ko) * | 2005-10-11 | 2006-12-21 | 삼성전자주식회사 | 휴대 단말기의 부팅 보안 방법 및 그 휴대 단말기 |
JP4848734B2 (ja) * | 2005-10-18 | 2011-12-28 | セイコーエプソン株式会社 | 電子機器 |
WO2007059429A2 (fr) * | 2005-11-10 | 2007-05-24 | Halliburton Energy Services, Inc. | Amplificateur d’electrode deplacee |
US8195945B2 (en) | 2005-12-01 | 2012-06-05 | Sony Mobile Communications Ab | Secure digital certificate storing scheme for flash memory and electronic apparatus |
US8438658B2 (en) * | 2006-02-02 | 2013-05-07 | International Business Machines Corporation | Providing sealed storage in a data processing device |
US20070180271A1 (en) * | 2006-02-02 | 2007-08-02 | Ibm Corporation | Apparatus and method for providing key security in a secure processor |
WO2007100267A2 (fr) * | 2006-03-02 | 2007-09-07 | Mariusz Gawruk | Procédé, support, clé et système pour sécuriser des données et lire des données sécurisées |
JP4769608B2 (ja) * | 2006-03-22 | 2011-09-07 | 富士通株式会社 | 起動検証機能を有する情報処理装置 |
WO2007121911A1 (fr) * | 2006-04-21 | 2007-11-01 | Tac Ab | Produit, dispositif et systeme de commande |
EP1850256B1 (fr) * | 2006-04-24 | 2010-06-09 | Telefonaktiebolaget LM Ericsson (publ) | Contrôle de versions pour autoriser l'installation de logiciels |
US7730302B2 (en) * | 2006-05-05 | 2010-06-01 | Microsoft Corporation | Secure and modifiable configuration files used for remote sessions |
FR2901038A1 (fr) * | 2006-05-15 | 2007-11-16 | France Telecom | Procede et dispositif de configuration securisee d'un terminal au moyen d'un dispositif de stockage de donnees de demarrage |
US7849315B2 (en) * | 2006-05-22 | 2010-12-07 | General Dynamics C4 Systems, Inc. | Method for managing operability of on-chip debug capability |
US8099629B2 (en) * | 2006-07-14 | 2012-01-17 | Marvell World Trade Ltd. | System-on-a-chip (SoC) test interface security |
US8732279B2 (en) * | 2006-08-18 | 2014-05-20 | Cisco Technology, Inc. | Secure network deployment |
JP4048382B1 (ja) * | 2006-09-01 | 2008-02-20 | 富士ゼロックス株式会社 | 情報処理システムおよびプログラム |
DE102006046456B4 (de) * | 2006-09-29 | 2009-11-05 | Infineon Technologies Ag | Schaltkreis-Anordnung, Verfahren zum Hochfahren einer Schaltkreis-Anordnung, Verfahren zum Betreiben einer Schaltkreis-Anordnung und Computerprogrammprodukte |
US8452987B2 (en) * | 2006-10-06 | 2013-05-28 | Broadcom Corporation | Method and system for disaster recovery in a secure reprogrammable system |
JP2008102618A (ja) * | 2006-10-17 | 2008-05-01 | Toshiba Corp | 電子機器およびファームウェア保護方法 |
US20080098214A1 (en) * | 2006-10-24 | 2008-04-24 | Antonio Rodriguez Martinez | Encryption/decryption method, method for safe data transfer across a network, computer program products and computer readable media |
US20080101613A1 (en) * | 2006-10-27 | 2008-05-01 | Brunts Randall T | Autonomous Field Reprogramming |
US8694982B2 (en) * | 2006-10-30 | 2014-04-08 | Bosch Automotive Service Solutions Llc | Dynamic software configuration |
JP4227641B2 (ja) * | 2006-11-20 | 2009-02-18 | キヤノン株式会社 | 情報処理装置及び情報処理装置の制御方法 |
US8423794B2 (en) | 2006-12-28 | 2013-04-16 | Sandisk Technologies Inc. | Method and apparatus for upgrading a memory card that has security mechanisms for preventing copying of secure content and applications |
US8375458B2 (en) * | 2007-01-05 | 2013-02-12 | Apple Inc. | System and method for authenticating code executing on computer system |
US8239688B2 (en) * | 2007-01-07 | 2012-08-07 | Apple Inc. | Securely recovering a computing device |
CN101226569A (zh) * | 2007-01-19 | 2008-07-23 | 国际商业机器公司 | 在虚拟机中验证代码模块的方法及装置 |
JP4940967B2 (ja) * | 2007-01-30 | 2012-05-30 | 富士通株式会社 | ストレージシステム、ストレージ装置、ファームウェアの活***換方法、ファームウェアの活***換プログラム |
US20080222428A1 (en) * | 2007-03-07 | 2008-09-11 | Andrew Dellow | Method for Securing Authenticity of Data in a Digital Processing System |
US7778074B2 (en) * | 2007-03-23 | 2010-08-17 | Sigmatel, Inc. | System and method to control one time programmable memory |
KR101427646B1 (ko) * | 2007-05-14 | 2014-09-23 | 삼성전자주식회사 | 펌웨어의 무결성 검사 방법 및 장치 |
US20090024784A1 (en) * | 2007-07-20 | 2009-01-22 | Wang Liang-Yun | Method for writing data into storage on chip and system thereof |
US20090094455A1 (en) * | 2007-10-09 | 2009-04-09 | Microsoft Corporation | Frequency Managed Performance |
US20090119744A1 (en) * | 2007-11-01 | 2009-05-07 | Microsoft Corporation | Device component roll back protection scheme |
US8380993B2 (en) * | 2007-12-07 | 2013-02-19 | Broadcom Corporation | Method and system for robust watermark insertion and extraction for digital set-top boxes |
US9071436B2 (en) * | 2007-12-21 | 2015-06-30 | The Invention Science Fund I, Llc | Security-activated robotic system |
US8752166B2 (en) * | 2007-12-21 | 2014-06-10 | The Invention Science Fund I, Llc | Security-activated operational components |
US8286236B2 (en) * | 2007-12-21 | 2012-10-09 | The Invention Science Fund I, Llc | Manufacturing control system |
US20110178619A1 (en) * | 2007-12-21 | 2011-07-21 | Searete Llc, A Limited Liability Corporation Of The State Of Delaware | Security-activated robotic tasks |
US9128476B2 (en) * | 2007-12-21 | 2015-09-08 | The Invention Science Fund I, Llc | Secure robotic operational system |
US8429754B2 (en) * | 2007-12-21 | 2013-04-23 | The Invention Science Fund I, Llc | Control technique for object production rights |
US9818071B2 (en) * | 2007-12-21 | 2017-11-14 | Invention Science Fund I, Llc | Authorization rights for operational components |
US9626487B2 (en) * | 2007-12-21 | 2017-04-18 | Invention Science Fund I, Llc | Security-activated production device |
US20090164379A1 (en) * | 2007-12-21 | 2009-06-25 | Searete Llc, A Limited Liability Corporation Of The State Of Delaware | Conditional authorization for security-activated device |
US20090172639A1 (en) * | 2007-12-27 | 2009-07-02 | Mahesh Natu | Firmware integrity verification |
US8479013B2 (en) * | 2008-01-18 | 2013-07-02 | Photonic Data Security, Llc | Secure portable data transport and storage system |
US20090193491A1 (en) * | 2008-01-24 | 2009-07-30 | Bindu Rao | Secure element manager |
US20090193261A1 (en) * | 2008-01-25 | 2009-07-30 | Mediatek Inc. | Apparatus and method for authenticating a flash program |
WO2010023683A2 (fr) * | 2008-07-24 | 2010-03-04 | Mchek India Payment Systems Pvt. Ltd. | Procédé et système pour assurer une sécurité des données de client |
US9069965B2 (en) * | 2008-08-26 | 2015-06-30 | Dell Products L.P. | System and method for secure information handling system flash memory access |
EP2330533B1 (fr) * | 2008-09-24 | 2021-02-17 | Panasonic Intellectual Property Management Co., Ltd. | Système d' enregistrement et de reproduction, dispositif de support d' enregistrement et dispositif d' enregistrement et de reproduction |
US20100083002A1 (en) * | 2008-09-30 | 2010-04-01 | Liang Cui | Method and System for Secure Booting Unified Extensible Firmware Interface Executables |
US8694761B2 (en) * | 2008-12-31 | 2014-04-08 | Vincent Zimmer | System and method to secure boot both UEFI and legacy option ROM's with common policy engine |
US9058491B1 (en) * | 2009-03-26 | 2015-06-16 | Micron Technology, Inc. | Enabling a secure boot from non-volatile memory |
US9032476B2 (en) * | 2009-05-12 | 2015-05-12 | Empire Technology Development Llc | Secure authentication |
US8850281B2 (en) * | 2009-05-12 | 2014-09-30 | Empire Technology Development Llc | Digital signatures |
US8379856B2 (en) * | 2009-06-17 | 2013-02-19 | Empire Technology Development Llc | Hardware based cryptography |
US8713705B2 (en) * | 2009-08-03 | 2014-04-29 | Eisst Ltd. | Application authentication system and method |
US10177934B1 (en) | 2009-09-04 | 2019-01-08 | Amazon Technologies, Inc. | Firmware updates inaccessible to guests |
US8887144B1 (en) | 2009-09-04 | 2014-11-11 | Amazon Technologies, Inc. | Firmware updates during limited time period |
US9565207B1 (en) | 2009-09-04 | 2017-02-07 | Amazon Technologies, Inc. | Firmware updates from an external channel |
US8214653B1 (en) * | 2009-09-04 | 2012-07-03 | Amazon Technologies, Inc. | Secured firmware updates |
US8102881B1 (en) | 2009-09-08 | 2012-01-24 | Amazon Technologies, Inc. | Streamlined guest networking in a virtualized environment |
US8601170B1 (en) | 2009-09-08 | 2013-12-03 | Amazon Technologies, Inc. | Managing firmware update attempts |
US8971538B1 (en) | 2009-09-08 | 2015-03-03 | Amazon Technologies, Inc. | Firmware validation from an external channel |
US8959611B1 (en) | 2009-09-09 | 2015-02-17 | Amazon Technologies, Inc. | Secure packet management for bare metal access |
US8640220B1 (en) | 2009-09-09 | 2014-01-28 | Amazon Technologies, Inc. | Co-operative secure packet management |
US8300641B1 (en) | 2009-09-09 | 2012-10-30 | Amazon Technologies, Inc. | Leveraging physical network interface functionality for packet processing |
US8381264B1 (en) | 2009-09-10 | 2013-02-19 | Amazon Technologies, Inc. | Managing hardware reboot and reset in shared environments |
JP4702861B2 (ja) * | 2009-09-30 | 2011-06-15 | 株式会社ソニー・コンピュータエンタテインメント | コンテンツ起動方法、コンテンツ再生装置 |
US8869282B1 (en) * | 2009-10-15 | 2014-10-21 | American Megatrends, Inc. | Anti-malware support for firmware |
FR2955189B1 (fr) * | 2009-11-12 | 2012-03-09 | St Microelectronics Rousset | Procede securise de traitement d'un contenu memorise au sein d'un composant, et composant correspondant |
EP2507708B1 (fr) * | 2009-12-04 | 2019-03-27 | Cryptography Research, Inc. | Chiffrement et déchiffrement vérifiables résistant aux fuites |
US9336410B2 (en) | 2009-12-15 | 2016-05-10 | Micron Technology, Inc. | Nonvolatile memory internal signature generation |
EP2348447B1 (fr) * | 2009-12-18 | 2014-07-16 | CompuGroup Medical AG | Procédé implémenté informatique pour générer un pseudonyme, support de stockage lisible sur ordinateur et système informatique |
EP2348452B1 (fr) * | 2009-12-18 | 2014-07-02 | CompuGroup Medical AG | Procédé implémenté par ordinateur pour générer un pseudonyme, support de stockage lisible sur ordinateur et système informatique |
EP2348450B1 (fr) | 2009-12-18 | 2013-11-06 | CompuGroup Medical AG | Procédé implémenté informatique pour générer un pseudonyme, support de stockage lisible sur ordinateur et système informatique |
KR101706117B1 (ko) * | 2010-01-15 | 2017-02-14 | 삼성전자주식회사 | 휴대용 단말기에서 다른 휴대용 단말기를 인증하는 장치 및 방법 |
EP2365456B1 (fr) * | 2010-03-11 | 2016-07-20 | CompuGroup Medical SE | Procédé implémenté informatique pour générer un pseudonyme, support de stockage lisible sur ordinateur et système informatique |
US8484451B2 (en) * | 2010-03-11 | 2013-07-09 | St-Ericsson Sa | Method and apparatus for software boot revocation |
US9141831B2 (en) | 2010-07-08 | 2015-09-22 | Texas Instruments Incorporated | Scheduler, security context cache, packet processor, and authentication, encryption modules |
US9037895B2 (en) * | 2010-10-13 | 2015-05-19 | The Trustees Of Columbia University In The City Of New York | System and methods for silencing hardware backdoors |
US8694548B2 (en) * | 2011-01-02 | 2014-04-08 | Cisco Technology, Inc. | Defense-in-depth security for bytecode executables |
WO2012116180A1 (fr) * | 2011-02-23 | 2012-08-30 | Cavium, Inc. | Authentification de microcode |
EP2503459B1 (fr) * | 2011-03-23 | 2021-01-20 | Volvo Car Corporation | Fonction complète et compatible |
KR20130008939A (ko) * | 2011-07-13 | 2013-01-23 | 삼성전자주식회사 | 휴대 단말기에서 단말 고유 정보의 복제를 방지하는 장치 및 방법 |
US8924737B2 (en) | 2011-08-25 | 2014-12-30 | Microsoft Corporation | Digital signing authority dependent platform secret |
DE102011081804B4 (de) * | 2011-08-30 | 2015-02-12 | Siemens Aktiengesellschaft | Verfahren und System zum Bereitstellen von gerätespezifischen Betreiberdaten, welche an ein Authentisierungs-Credential gebunden werden, für ein Automatisierungsgerät einer Automatisierungsanlage |
US20130061328A1 (en) * | 2011-09-06 | 2013-03-07 | Broadcom Corporation | Integrity checking system |
US9286241B2 (en) | 2012-02-21 | 2016-03-15 | Microchip Technology Incorporated | Cryptographic transmission system |
US9621403B1 (en) * | 2012-03-05 | 2017-04-11 | Google Inc. | Installing network certificates on a client computing device |
US8954732B1 (en) | 2012-06-27 | 2015-02-10 | Juniper Networks, Inc. | Authenticating third-party programs for platforms |
US9141613B2 (en) * | 2012-10-30 | 2015-09-22 | Appsense Limited | Systems and methods for determining an address for a private function |
DE102012220767A1 (de) * | 2012-11-14 | 2014-05-28 | Siemens Aktiengesellschaft | Verfahren und Vorrichtungen zum Installieren von Gebäudesteuerungssoftware |
CN103886246B (zh) * | 2012-12-22 | 2018-08-31 | 三星电子株式会社 | 支持认证装置安全引导的动态改变的方法和设备 |
WO2014175867A1 (fr) | 2013-04-23 | 2014-10-30 | Hewlett-Packard Development Company, L.P. | Vérification de code de dispositif de commande et code de démarrage de système |
US9906372B2 (en) * | 2013-06-03 | 2018-02-27 | Intel Deutschland Gmbh | Authentication devices, key generator devices, methods for controlling an authentication device, and methods for controlling a key generator |
US9852290B1 (en) * | 2013-07-12 | 2017-12-26 | The Boeing Company | Systems and methods of analyzing a software component |
US9479521B2 (en) | 2013-09-30 | 2016-10-25 | The Boeing Company | Software network behavior analysis and identification system |
US9225530B2 (en) * | 2013-10-21 | 2015-12-29 | Microsoft Technology Licensing, Llc | Secure crypto-processor certification |
US20150135338A1 (en) * | 2013-11-13 | 2015-05-14 | Fenwal, Inc. | Digital certificate with software enabling indicator |
US9450947B2 (en) | 2014-05-20 | 2016-09-20 | Motorola Solutions, Inc. | Apparatus and method for securing a debugging session |
FR3023028B1 (fr) * | 2014-06-26 | 2017-07-28 | Olivier Robert Gerard Joffray | Procede pour proteger des biens utilises par des dispositifs communiquant certifies connectes en reseaux, et pour garantir les comportements operationnels desdits dispositifs |
US9390258B2 (en) | 2014-07-16 | 2016-07-12 | General Electric Company | Systems and methods for verifying the authenticity of an application during execution |
US10193775B2 (en) * | 2014-10-09 | 2019-01-29 | Splunk Inc. | Automatic event group action interface |
US11087263B2 (en) | 2014-10-09 | 2021-08-10 | Splunk Inc. | System monitoring with key performance indicators from shared base search of machine data |
US10417108B2 (en) | 2015-09-18 | 2019-09-17 | Splunk Inc. | Portable control modules in a machine data driven service monitoring system |
US11755559B1 (en) | 2014-10-09 | 2023-09-12 | Splunk Inc. | Automatic entity control in a machine data driven service monitoring system |
US11200130B2 (en) | 2015-09-18 | 2021-12-14 | Splunk Inc. | Automatic entity control in a machine data driven service monitoring system |
US10536353B2 (en) | 2014-10-09 | 2020-01-14 | Splunk Inc. | Control interface for dynamic substitution of service monitoring dashboard source data |
US10305758B1 (en) | 2014-10-09 | 2019-05-28 | Splunk Inc. | Service monitoring interface reflecting by-service mode |
US10474680B2 (en) | 2014-10-09 | 2019-11-12 | Splunk Inc. | Automatic entity definitions |
US11296955B1 (en) | 2014-10-09 | 2022-04-05 | Splunk Inc. | Aggregate key performance indicator spanning multiple services and based on a priority value |
US10505825B1 (en) * | 2014-10-09 | 2019-12-10 | Splunk Inc. | Automatic creation of related event groups for IT service monitoring |
US9760240B2 (en) | 2014-10-09 | 2017-09-12 | Splunk Inc. | Graphical user interface for static and adaptive thresholds |
US9146954B1 (en) | 2014-10-09 | 2015-09-29 | Splunk, Inc. | Creating entity definition from a search result set |
US10209956B2 (en) * | 2014-10-09 | 2019-02-19 | Splunk Inc. | Automatic event group actions |
US9158811B1 (en) | 2014-10-09 | 2015-10-13 | Splunk, Inc. | Incident review interface |
US10447555B2 (en) | 2014-10-09 | 2019-10-15 | Splunk Inc. | Aggregate key performance indicator spanning multiple services |
US9864797B2 (en) | 2014-10-09 | 2018-01-09 | Splunk Inc. | Defining a new search based on displayed graph lanes |
US10417225B2 (en) | 2015-09-18 | 2019-09-17 | Splunk Inc. | Entity detail monitoring console |
US9130832B1 (en) | 2014-10-09 | 2015-09-08 | Splunk, Inc. | Creating entity definition from a file |
US9491059B2 (en) | 2014-10-09 | 2016-11-08 | Splunk Inc. | Topology navigator for IT services |
US10235638B2 (en) | 2014-10-09 | 2019-03-19 | Splunk Inc. | Adaptive key performance indicator thresholds |
US11455590B2 (en) | 2014-10-09 | 2022-09-27 | Splunk Inc. | Service monitoring adaptation for maintenance downtime |
US11275775B2 (en) | 2014-10-09 | 2022-03-15 | Splunk Inc. | Performing search queries for key performance indicators using an optimized common information model |
US11671312B2 (en) | 2014-10-09 | 2023-06-06 | Splunk Inc. | Service detail monitoring console |
US9210056B1 (en) * | 2014-10-09 | 2015-12-08 | Splunk Inc. | Service monitoring interface |
US11501238B2 (en) | 2014-10-09 | 2022-11-15 | Splunk Inc. | Per-entity breakdown of key performance indicators |
US10592093B2 (en) | 2014-10-09 | 2020-03-17 | Splunk Inc. | Anomaly detection |
US9146962B1 (en) | 2014-10-09 | 2015-09-29 | Splunk, Inc. | Identifying events using informational fields |
US9584374B2 (en) | 2014-10-09 | 2017-02-28 | Splunk Inc. | Monitoring overall service-level performance using an aggregate key performance indicator derived from machine data |
US10268822B2 (en) | 2014-12-01 | 2019-04-23 | Hewlett-Packard Development Company, L.P. | Firmware module execution privilege |
WO2016112338A1 (fr) * | 2015-01-08 | 2016-07-14 | Intertrust Technologies Corporation | Systèmes et procédés cryptographiques |
EP3051469B1 (fr) | 2015-01-28 | 2024-05-22 | Inexto Sa | Procédé et appareil pour l'identification et le suivi d'une unité et d'un récipient |
US9967351B2 (en) | 2015-01-31 | 2018-05-08 | Splunk Inc. | Automated service discovery in I.T. environments |
EP3051372B1 (fr) | 2015-01-31 | 2019-03-06 | Inexto Sa | Identification et vérification de produits sécurisés |
US10198155B2 (en) * | 2015-01-31 | 2019-02-05 | Splunk Inc. | Interface for automated service discovery in I.T. environments |
WO2017014731A1 (fr) | 2015-07-17 | 2017-01-26 | Hewlett Packard Enterprise Development Lp | Détermination d'une fréquence de fonctionnement |
US10129035B2 (en) | 2015-08-10 | 2018-11-13 | Data I/O Corporation | Device birth certificate |
CN108140076B (zh) | 2015-08-25 | 2022-04-05 | 英艾克斯图股份有限公司 | 用于安全产品标识符的具有容错的验证 |
WO2017032860A1 (fr) | 2015-08-25 | 2017-03-02 | Inexto Sa | Modules multiples d'autorisation pour production sécurisée et validation |
US9742568B2 (en) | 2015-09-23 | 2017-08-22 | Dell Products, L.P. | Trusted support processor authentication of host BIOS/UEFI |
US9749141B2 (en) | 2015-09-25 | 2017-08-29 | Qualcomm Incorporated | Secure boot devices, systems, and methods |
US9928367B2 (en) | 2015-12-03 | 2018-03-27 | Hewlett-Packard Development Company, L.P. | Runtime verification |
US10181956B2 (en) | 2015-12-21 | 2019-01-15 | Hewlett-Packard Development Company, L.P. | Key revocation |
US10942960B2 (en) | 2016-09-26 | 2021-03-09 | Splunk Inc. | Automatic triage model execution in machine data driven monitoring automation apparatus with visualization |
US10942946B2 (en) | 2016-09-26 | 2021-03-09 | Splunk, Inc. | Automatic triage model execution in machine data driven monitoring automation apparatus |
DE102017106042A1 (de) | 2016-12-22 | 2018-06-28 | Fujitsu Technology Solutions Intellectual Property Gmbh | Verfahren zum abgesicherten Hochfahren eines Computersystems, sowie Anordnung, umfassend ein Computersystem und ein an das Computersystem angeschlossenes externes Speichermedium |
CN108259424B (zh) * | 2016-12-29 | 2020-07-14 | 北京博瑞彤芸文化传播股份有限公司 | 终端设备的授权验证方法 |
US10581808B2 (en) | 2017-03-23 | 2020-03-03 | Microsoft Technology Licensing, Llc | Keyed hash contact table |
US10540501B2 (en) * | 2017-06-02 | 2020-01-21 | Dell Products, L.P. | Recovering an information handling system from a secure boot authentication failure |
TWI644554B (zh) * | 2017-06-07 | 2018-12-11 | 中華電信股份有限公司 | Probabilistic multiple software encryption communication system and method |
AU2018321586B2 (en) | 2017-08-22 | 2023-03-09 | Absolute Software Corporation | Firmware integrity check using silver measurements |
US11093518B1 (en) | 2017-09-23 | 2021-08-17 | Splunk Inc. | Information technology networked entity monitoring with dynamic metric and threshold selection |
US11106442B1 (en) | 2017-09-23 | 2021-08-31 | Splunk Inc. | Information technology networked entity monitoring with metric selection prior to deployment |
US11159397B2 (en) | 2017-09-25 | 2021-10-26 | Splunk Inc. | Lower-tier application deployment for higher-tier system data monitoring |
US10860238B2 (en) * | 2017-12-27 | 2020-12-08 | Intel Corporation | Method and apparatus for improving firmware loading |
US10977367B1 (en) * | 2018-02-06 | 2021-04-13 | Facebook, Inc. | Detecting malicious firmware modification |
US10719606B2 (en) | 2018-02-23 | 2020-07-21 | Infineon Technologies Ag | Security processor for an embedded system |
US10356620B1 (en) * | 2018-05-07 | 2019-07-16 | T-Mobile Usa, Inc. | Enhanced security for electronic devices |
CN108650255A (zh) * | 2018-05-08 | 2018-10-12 | 山东渔翁信息技术股份有限公司 | 一种车辆信息的安全通讯方法及*** |
US11030280B2 (en) * | 2018-08-01 | 2021-06-08 | Microsoft Technology Licensing, Llc | Hardware based identities for software modules |
CN109766215B (zh) * | 2018-12-06 | 2022-03-25 | 合肥联宝信息技术有限公司 | 一种数据处理方法及装置 |
US20200220865A1 (en) * | 2019-01-04 | 2020-07-09 | T-Mobile Usa, Inc. | Holistic module authentication with a device |
US11163896B2 (en) * | 2019-03-25 | 2021-11-02 | Micron Technology, Inc. | Secure communications amongst connected dice |
CN113544672A (zh) * | 2019-04-01 | 2021-10-22 | 英特尔公司 | 隐私保护的自主证实 |
US11436315B2 (en) * | 2019-08-15 | 2022-09-06 | Nuvoton Technology Corporation | Forced self authentication |
WO2021077504A1 (fr) * | 2019-10-24 | 2021-04-29 | 华为技术有限公司 | Procédé permettant de protéger l'intégrité d'un logiciel dans un appareil pour un scénario de continuité |
US11481484B2 (en) | 2020-04-16 | 2022-10-25 | Bank Of America Corporation | Virtual environment system for secure execution of program code using cryptographic hashes |
US11423160B2 (en) * | 2020-04-16 | 2022-08-23 | Bank Of America Corporation | System for analysis and authorization for use of executable environment data in a computing system using hash outputs |
US11528276B2 (en) | 2020-04-16 | 2022-12-13 | Bank Of America Corporation | System for prevention of unauthorized access using authorized environment hash outputs |
US11263109B2 (en) | 2020-04-16 | 2022-03-01 | Bank Of America Corporation | Virtual environment system for validating executable data using accelerated time-based process execution |
US20210334380A1 (en) * | 2020-04-24 | 2021-10-28 | Vmware, Inc. | Trusted firmware verification |
US11372982B2 (en) | 2020-07-02 | 2022-06-28 | Bank Of America Corporation | Centralized network environment for processing validated executable data based on authorized hash outputs |
CN111966970B (zh) * | 2020-07-31 | 2021-05-07 | 深圳比特微电子科技有限公司 | 防止数字货币矿机固件回退的方法、装置和数字货币矿机 |
US11676072B1 (en) | 2021-01-29 | 2023-06-13 | Splunk Inc. | Interface for incorporating user feedback into training of clustering model |
FR3122745B1 (fr) | 2021-05-10 | 2024-03-15 | Trusted Objects | procédé pour l’exécution d’un programme chargé dans la mémoire non volatile d’un microcontrôleur en circuit intégré |
US11863691B2 (en) * | 2021-10-22 | 2024-01-02 | Dell Products, L.P. | Lockable device validation for information handling systems |
CN113901485B (zh) * | 2021-12-07 | 2022-05-10 | 展讯通信(天津)有限公司 | 应用程序加载方法、电子设备及存储介质 |
CN115080998A (zh) * | 2022-06-02 | 2022-09-20 | 深圳市立创普电源技术有限公司 | 防止固件被非法复制的方法、***、电子设备和存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4238854A (en) * | 1977-12-05 | 1980-12-09 | International Business Machines Corporation | Cryptographic file security for single domain networks |
US5421006A (en) * | 1992-05-07 | 1995-05-30 | Compaq Computer Corp. | Method and apparatus for assessing integrity of computer system software |
US5944821A (en) * | 1996-07-11 | 1999-08-31 | Compaq Computer Corporation | Secure software registration and integrity assessment in a computer system |
US6389537B1 (en) * | 1999-04-23 | 2002-05-14 | Intel Corporation | Platform and method for assuring integrity of trusted agent communications |
US20040054907A1 (en) * | 2002-07-30 | 2004-03-18 | Alain Chateau | Indirect data protection using random key encryption |
Family Cites Families (81)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4866769A (en) * | 1987-08-05 | 1989-09-12 | Ibm Corporation | Hardware assist for protecting PC software |
US5225366A (en) * | 1990-06-22 | 1993-07-06 | The United States Of America As Represented By The Secretary Of The Navy | Apparatus for and a method of growing thin films of elemental semiconductors |
US5416840A (en) * | 1993-07-06 | 1995-05-16 | Phoenix Technologies, Ltd. | Software catalog encoding method and system |
SE502424C2 (sv) * | 1994-02-17 | 1995-10-16 | Telia Ab | Metod och anordning vid certifikathanteringssystem |
US5473692A (en) * | 1994-09-07 | 1995-12-05 | Intel Corporation | Roving software license for a hardware agent |
US5734819A (en) * | 1994-10-12 | 1998-03-31 | International Business Machines Corporation | Method and apparatus for validating system operation |
US5671439A (en) * | 1995-01-10 | 1997-09-23 | Micron Electronics, Inc. | Multi-drive virtual mass storage device and method of operating same |
US5652793A (en) * | 1995-05-08 | 1997-07-29 | Nvidia Corporation | Method and apparatus for authenticating the use of software |
US5742823A (en) * | 1996-01-17 | 1998-04-21 | Nathen P. Edwards | Total object processing system and method with assembly line features and certification of results |
US5952060A (en) * | 1996-06-14 | 1999-09-14 | Applied Materials, Inc. | Use of carbon-based films in extending the lifetime of substrate processing system components |
US6138236A (en) * | 1996-07-01 | 2000-10-24 | Sun Microsystems, Inc. | Method and apparatus for firmware authentication |
US5844986A (en) * | 1996-09-30 | 1998-12-01 | Intel Corporation | Secure BIOS |
US5841870A (en) * | 1996-11-12 | 1998-11-24 | Cheyenne Property Trust | Dynamic classes of service for an international cryptography framework |
US5958051A (en) * | 1996-11-27 | 1999-09-28 | Sun Microsystems, Inc. | Implementing digital signatures for data streams and data archives |
GB9626241D0 (en) * | 1996-12-18 | 1997-02-05 | Ncr Int Inc | Secure data processing method and system |
US6542610B2 (en) * | 1997-01-30 | 2003-04-01 | Intel Corporation | Content protection for digital transmission systems |
BR9808737A (pt) * | 1997-05-09 | 2001-01-16 | Gte Cyber Trust Solutions Inc | Certificados biométricos |
US7039802B1 (en) * | 1997-06-06 | 2006-05-02 | Thomson Licensing | Conditional access system for set-top boxes |
US6161499A (en) * | 1997-07-07 | 2000-12-19 | Cvd Diamond Corporation | Apparatus and method for nucleation and deposition of diamond using hot-filament DC plasma |
US6014745A (en) * | 1997-07-17 | 2000-01-11 | Silicon Systems Design Ltd. | Protection for customer programs (EPROM) |
US6212635B1 (en) * | 1997-07-18 | 2001-04-03 | David C. Reardon | Network security system allowing access and modification to a security subsystem after initial installation when a master token is in place |
US6185678B1 (en) * | 1997-10-02 | 2001-02-06 | Trustees Of The University Of Pennsylvania | Secure and reliable bootstrap architecture |
US6314521B1 (en) * | 1997-11-26 | 2001-11-06 | International Business Machines Corporation | Secure configuration of a digital certificate for a printer or other network device |
US6170058B1 (en) * | 1997-12-23 | 2001-01-02 | Arcot Systems, Inc. | Method and apparatus for cryptographically camouflaged cryptographic key storage, certification and use |
US6134659A (en) * | 1998-01-07 | 2000-10-17 | Sprong; Katherine A. | Controlled usage software |
US6044471A (en) * | 1998-06-04 | 2000-03-28 | Z4 Technologies, Inc. | Method and apparatus for securing software to reduce unauthorized use |
US6751729B1 (en) * | 1998-07-24 | 2004-06-15 | Spatial Adventures, Inc. | Automated operation and security system for virtual private networks |
US6735696B1 (en) * | 1998-08-14 | 2004-05-11 | Intel Corporation | Digital content protection using a secure booting method and apparatus |
US6463535B1 (en) * | 1998-10-05 | 2002-10-08 | Intel Corporation | System and method for verifying the integrity and authorization of software before execution in a local platform |
US6820063B1 (en) * | 1998-10-26 | 2004-11-16 | Microsoft Corporation | Controlling access to content based on certificates and access predicates |
US7174457B1 (en) * | 1999-03-10 | 2007-02-06 | Microsoft Corporation | System and method for authenticating an operating system to a central processing unit, providing the CPU/OS with secure storage, and authenticating the CPU/OS to a third party |
US6263431B1 (en) * | 1998-12-31 | 2001-07-17 | Intle Corporation | Operating system bootstrap security mechanism |
WO2000048061A1 (fr) * | 1999-02-15 | 2000-08-17 | Hewlett-Packard Company | Protection de la configuration de modules d'une plate-forme informatique |
US6463534B1 (en) * | 1999-03-26 | 2002-10-08 | Motorola, Inc. | Secure wireless electronic-commerce system with wireless network domain |
US6857076B1 (en) * | 1999-03-26 | 2005-02-15 | Micron Technology, Inc. | Data security for digital data storage |
US6223291B1 (en) * | 1999-03-26 | 2001-04-24 | Motorola, Inc. | Secure wireless electronic-commerce system with digital product certificates and digital license certificates |
US7055040B2 (en) * | 1999-04-02 | 2006-05-30 | Hewlett-Packard Development Company, L.P. | Method and apparatus for uniquely and securely loading software to an individual computer |
US6892323B2 (en) * | 1999-05-05 | 2005-05-10 | Giga-Byte Technology Co., Ltd. | Dual basic input/output system for a computer |
AU5334500A (en) * | 1999-06-07 | 2000-12-28 | Firepad, Inc. | Method and system for preventing the unauthorized use of software |
US6647494B1 (en) * | 1999-06-14 | 2003-11-11 | Intel Corporation | System and method for checking authorization of remote configuration operations |
US6389370B1 (en) * | 1999-09-14 | 2002-05-14 | Hewlett-Packard Company | System and method for determining which objects in a set of objects should be processed |
US6665778B1 (en) * | 1999-09-23 | 2003-12-16 | Gateway, Inc. | System and method for storage of device performance data |
AUPQ321699A0 (en) * | 1999-09-30 | 1999-10-28 | Aristocrat Leisure Industries Pty Ltd | Gaming security system |
AU1544500A (en) * | 1999-10-01 | 2001-05-10 | Swisscom Mobile Ag | Method for authenticating electronic certificates, issued by a certification authority in a mobile device and corresponding identification module |
US6519698B1 (en) * | 1999-10-06 | 2003-02-11 | Micron Technology, Inc. | Method for saving system configuration information to shorten computer system initialization time by checking the state of a chassis intrusion detection circuit |
US6826690B1 (en) * | 1999-11-08 | 2004-11-30 | International Business Machines Corporation | Using device certificates for automated authentication of communicating devices |
US6636975B1 (en) * | 1999-12-15 | 2003-10-21 | Identix Incorporated | Accessing a secure resource using certificates bound with authentication information |
US6775770B1 (en) * | 1999-12-30 | 2004-08-10 | Intel Corporation | Platform and method for securing data provided through a user input device |
US7055175B1 (en) * | 2000-01-06 | 2006-05-30 | International Business Machines Corporation | Method and system for generating and using a virus free file certificate integrated within a file |
US7270193B2 (en) * | 2000-02-14 | 2007-09-18 | Kabushiki Kaisha Toshiba | Method and system for distributing programs using tamper resistant processor |
US7043641B1 (en) * | 2000-03-08 | 2006-05-09 | Igt | Encryption in a secure computerized gaming system |
US7111176B1 (en) * | 2000-03-31 | 2006-09-19 | Intel Corporation | Generating isolated bus cycles for isolated execution |
US7082615B1 (en) * | 2000-03-31 | 2006-07-25 | Intel Corporation | Protecting software environment in isolated execution |
JP2001344537A (ja) * | 2000-05-31 | 2001-12-14 | Ntt Docomo Inc | 電子バリューシステム、通信端末及びサーバ |
US7017189B1 (en) * | 2000-06-27 | 2006-03-21 | Microsoft Corporation | System and method for activating a rendering device in a multi-level rights-management architecture |
US6976163B1 (en) * | 2000-07-12 | 2005-12-13 | International Business Machines Corporation | Methods, systems and computer program products for rule based firmware updates utilizing certificate extensions and certificates for use therein |
US6807577B1 (en) * | 2000-09-14 | 2004-10-19 | International Business Machines Corporation | System and method for network log-on by associating legacy profiles with user certificates |
US6854056B1 (en) * | 2000-09-21 | 2005-02-08 | International Business Machines Corporation | Method and system for coupling an X.509 digital certificate with a host identity |
US6672505B1 (en) * | 2000-09-27 | 2004-01-06 | Diebold, Incorporated | Automated banking machine configuration system and method |
US6853731B1 (en) * | 2000-09-30 | 2005-02-08 | Keen Personal Technologies, Inc. | Digital video recorder employing a unique ID to interlock with encrypted video programs stored on a storage device |
US7362868B2 (en) * | 2000-10-20 | 2008-04-22 | Eruces, Inc. | Hidden link dynamic key manager for use in computer systems with database structure for storage of encrypted data and method for storage and retrieval of encrypted data |
US20020078380A1 (en) * | 2000-12-20 | 2002-06-20 | Jyh-Han Lin | Method for permitting debugging and testing of software on a mobile communication device in a secure environment |
US6572384B1 (en) * | 2001-02-08 | 2003-06-03 | 3Com Corporation | Method and apparatus for interconnecting circuit cards |
SE0100474D0 (sv) * | 2001-02-14 | 2001-02-14 | Ericsson Telefon Ab L M | A security architecture |
US7203841B2 (en) * | 2001-03-08 | 2007-04-10 | Igt | Encryption in a secure computerized gaming system |
FI20010596A0 (fi) * | 2001-03-22 | 2001-03-22 | Ssh Comm Security Oyj | Turvallisuusjärjestelmä tietoliikenneverkkoa varten |
GB2373604B (en) * | 2001-03-23 | 2004-10-27 | Ibm | A method and system for controlling use of software programs |
US20030035547A1 (en) * | 2001-03-27 | 2003-02-20 | John Newton | Server with multiple encryption libraries |
US7254711B2 (en) * | 2001-04-05 | 2007-08-07 | Nippon Telegraph And Telephone Corporation | Network authentication system, method, and program, service providing apparatus, certificate authority, and user terminal |
US7159114B1 (en) * | 2001-04-23 | 2007-01-02 | Diebold, Incorporated | System and method of securely installing a terminal master key on an automated banking machine |
US20020160111A1 (en) * | 2001-04-25 | 2002-10-31 | Yi Sun | Method for fabrication of field emission devices using carbon nanotube film as a cathode |
AU2002305490B2 (en) * | 2001-05-09 | 2008-11-06 | Sca Ipla Holdings, Inc. | Systems and methods for the prevention of unauthorized use and manipulation of digital content |
US7203966B2 (en) * | 2001-06-27 | 2007-04-10 | Microsoft Corporation | Enforcement architecture and method for digital rights management system for roaming a license to a plurality of user devices |
US6638839B2 (en) * | 2001-07-26 | 2003-10-28 | The University Of Toledo | Hot-filament chemical vapor deposition chamber and process with multiple gas inlets |
US7050589B2 (en) * | 2001-08-17 | 2006-05-23 | Sun Microsystems, Inc. | Client controlled data recovery management |
US6978018B2 (en) * | 2001-09-28 | 2005-12-20 | Intel Corporation | Technique to support co-location and certification of executable content from a pre-boot space into an operating system runtime environment |
US7139890B2 (en) * | 2002-04-30 | 2006-11-21 | Intel Corporation | Methods and arrangements to interface memory |
US7007159B2 (en) * | 2002-05-10 | 2006-02-28 | Intel Corporation | System and method for loading and integrating a firmware extension onto executable base system firmware during initialization |
US7127611B2 (en) * | 2002-06-28 | 2006-10-24 | Motorola, Inc. | Method and system for vehicle authentication of a component class |
US6931530B2 (en) * | 2002-07-22 | 2005-08-16 | Vormetric, Inc. | Secure network file access controller implementing access control and auditing |
US7441114B2 (en) * | 2002-09-10 | 2008-10-21 | Ge Fanuc Automation North America, Inc. | Methods and systems for management and control of an automation control module |
-
2002
- 2002-12-10 EP EP02293057A patent/EP1429224A1/fr not_active Withdrawn
-
2003
- 2003-07-14 US US10/618,873 patent/US8122244B2/en active Active
- 2003-07-14 US US10/618,862 patent/US7539868B2/en active Active
- 2003-07-14 US US10/618,859 patent/US20040025010A1/en not_active Abandoned
- 2003-07-14 US US10/619,031 patent/US7299358B2/en active Active
- 2003-07-30 EP EP03102351A patent/EP1387237A3/fr not_active Withdrawn
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4238854A (en) * | 1977-12-05 | 1980-12-09 | International Business Machines Corporation | Cryptographic file security for single domain networks |
US5421006A (en) * | 1992-05-07 | 1995-05-30 | Compaq Computer Corp. | Method and apparatus for assessing integrity of computer system software |
US5944821A (en) * | 1996-07-11 | 1999-08-31 | Compaq Computer Corporation | Secure software registration and integrity assessment in a computer system |
US6389537B1 (en) * | 1999-04-23 | 2002-05-14 | Intel Corporation | Platform and method for assuring integrity of trusted agent communications |
US20040054907A1 (en) * | 2002-07-30 | 2004-03-18 | Alain Chateau | Indirect data protection using random key encryption |
Cited By (108)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050041803A1 (en) * | 2003-01-02 | 2005-02-24 | Alain Chateau | On-device random number generator |
US8254578B2 (en) | 2004-04-08 | 2012-08-28 | Texas Instruments Incorporated | Process of manufacturing a handheld device, involving keys |
US20110161650A1 (en) * | 2004-04-08 | 2011-06-30 | Texas Instruments Incoporated | Processor system |
US11494310B2 (en) | 2004-04-08 | 2022-11-08 | Texas Instruments Incorporated | Less-secure processors, integrated circuits, wireless communications apparatus, methods for operation thereof, and methods for manufacturing thereof |
US20060129848A1 (en) * | 2004-04-08 | 2006-06-15 | Texas Instruments Incorporated | Methods, apparatus, and systems for securing SIM (subscriber identity module) personalization and other data on a first processor and secure communication of the SIM data to a second processor |
US8978146B2 (en) | 2004-04-08 | 2015-03-10 | Texas Instruments Incorporated | Wireless communications system communicating secyre SIM and IMEI between processors |
US20110162082A1 (en) * | 2004-04-08 | 2011-06-30 | Texas Instruments Incoporated | Methods and apparatus for providing data security |
US7940932B2 (en) | 2004-04-08 | 2011-05-10 | Texas Instruments Incorporated | Methods, apparatus, and systems for securing SIM (subscriber identity module) personalization and other data on a first processor and secure communication of the SIM data to a second processor |
US8391489B2 (en) | 2004-04-08 | 2013-03-05 | Texas Instruments Incorporated | Processor system |
US9747220B2 (en) | 2004-04-08 | 2017-08-29 | Texas Instruments Incorporated | Methods, apparatus, and systems for secure demand paging and other paging operations for processor devices |
US9667425B2 (en) | 2004-04-08 | 2017-05-30 | Texas Instruments Incorporated | Methods, apparatus, and systems for secure demand paging and other paging operations for processor devices |
US20050228980A1 (en) * | 2004-04-08 | 2005-10-13 | Brokish Charles W | Less-secure processors, integrated circuits, wireless communications apparatus, methods and processes of making |
US20110158407A1 (en) * | 2004-04-08 | 2011-06-30 | Texas Instruments Incoporated | Process of manufacturing a handheld device, involving keys |
US9438424B2 (en) | 2004-04-08 | 2016-09-06 | Texas Instruments Incorporated | Methods, apparatus, and systems for secure demand paging and other paging operations for processor devices |
US8112618B2 (en) | 2004-04-08 | 2012-02-07 | Texas Instruments Incorporated | Less-secure processors, integrated circuits, wireless communications apparatus, methods and processes of making |
US10135619B2 (en) | 2004-06-23 | 2018-11-20 | Texas Instruments Incorporated | Methods, apparatus, and systems for secure demand paging and other paging operations for processor devices |
US10853269B2 (en) | 2004-06-23 | 2020-12-01 | Texas Instruments Incorporated | Methods, apparatus, and systems for secure demand paging and other paging operations for processor devices |
US8627086B2 (en) * | 2004-10-11 | 2014-01-07 | Telefonaktiebolaget Lm Ericsson (Publ) | Secure loading and storing of data in a data processing device |
US20080133929A1 (en) * | 2004-10-11 | 2008-06-05 | Christian Gehrmann | Secure Loading And Storing Of Data In A Data Processing Device |
WO2006039967A1 (fr) * | 2004-10-11 | 2006-04-20 | Telefonaktiebolaget Lm Ericsson (Publ) | Chargement et stockage securises de donnees dans un dispositif de traitement des donnees |
EP1645931A1 (fr) * | 2004-10-11 | 2006-04-12 | Telefonaktiebolaget LM Ericsson (publ) | Chargement et stockage sécurisé de données dans une unité de traitement de données |
JP4856080B2 (ja) * | 2004-10-11 | 2012-01-18 | テレフオンアクチーボラゲット エル エム エリクソン(パブル) | データ処理装置へのデータのセキュリティ上安全なロード及び格納 |
US8220039B2 (en) | 2005-07-08 | 2012-07-10 | Sandisk Technologies Inc. | Mass storage device with automated credentials loading |
US7743409B2 (en) | 2005-07-08 | 2010-06-22 | Sandisk Corporation | Methods used in a mass storage device with automated credentials loading |
US7748031B2 (en) | 2005-07-08 | 2010-06-29 | Sandisk Corporation | Mass storage device with automated credentials loading |
US20070055859A1 (en) * | 2005-09-02 | 2007-03-08 | Mediatek Inc. | Boot systems and methods |
US8966284B2 (en) | 2005-09-14 | 2015-02-24 | Sandisk Technologies Inc. | Hardware driver integrity check of memory card controller firmware |
US20070061570A1 (en) * | 2005-09-14 | 2007-03-15 | Michael Holtzman | Method of hardware driver integrity check of memory card controller firmware |
US7934049B2 (en) * | 2005-09-14 | 2011-04-26 | Sandisk Corporation | Methods used in a secure yet flexible system architecture for secure devices with flash mass storage memory |
US20070061581A1 (en) * | 2005-09-14 | 2007-03-15 | Micky Holtzman | Methods used in a secure yet flexible system architecture for secure devices with flash mass storage memory |
US20070061897A1 (en) * | 2005-09-14 | 2007-03-15 | Michael Holtzman | Hardware driver integrity check of memory card controller firmware |
US20080215847A1 (en) * | 2005-09-14 | 2008-09-04 | Sandisk Corporation And Discretix Technologies Ltd. | Secure yet flexible system architecture for secure devices with flash mass storage memory |
WO2007113787A2 (fr) * | 2006-03-31 | 2007-10-11 | Nds Limited | Système de mise en oeuvre de certificat |
WO2007113787A3 (fr) * | 2006-03-31 | 2009-05-22 | Nds Ltd | Système de mise en oeuvre de certificat |
US20070294494A1 (en) * | 2006-06-16 | 2007-12-20 | Texas Instruments Incorporated | Page processing circuits, devices, methods and systems for secure demand paging and other operations |
US12066954B2 (en) | 2006-06-19 | 2024-08-20 | Texas Instruments Incorporated | Methods, apparatus, and systems for secure demand paging and paging operations for processor devices |
US9432196B2 (en) | 2006-06-19 | 2016-08-30 | Texas Instruments Incorporated | Methods, apparatus, and systems for secure demand paging and other paging operations for processor devices |
US8108641B2 (en) | 2006-06-19 | 2012-01-31 | Texas Instruments Incorporated | Methods, apparatus, and systems for secure demand paging and other paging operations for processor devices |
US20070294496A1 (en) * | 2006-06-19 | 2007-12-20 | Texas Instruments Incorporated | Methods, apparatus, and systems for secure demand paging and other paging operations for processor devices |
US9881182B2 (en) * | 2006-11-09 | 2018-01-30 | Acer Cloud Technology, Inc. | Programming on-chip non-volatile memory in a secure processor using a sequence number |
US20170132433A1 (en) * | 2006-11-09 | 2017-05-11 | Acer Cloud Technology, Inc. | Programming on-chip non-volatile memory in a secure processor using a sequence number |
US8032764B2 (en) | 2006-11-14 | 2011-10-04 | Texas Instruments Incorporated | Electronic devices, information products, processes of manufacture and apparatus for enabling code decryption in a secure mode using decryption wrappers and key programming applications, and other structures |
US20080114993A1 (en) * | 2006-11-14 | 2008-05-15 | Texas Instruments Incorporated | Electronic devices, information products, processes of manufacture and apparatus for enabling code decryption in a secure mode using decryption wrappers and key programming applications, and other structures |
US20080240057A1 (en) * | 2007-03-29 | 2008-10-02 | Texas Instruments Incorporated | Accessing hardware initialization data of WLAN module using die identifier |
US9626513B1 (en) * | 2007-04-24 | 2017-04-18 | Marvell International Ltd. | Trusted modular firmware update using digital certificate |
US20090013192A1 (en) * | 2007-07-03 | 2009-01-08 | Ping-Sheng Chen | Integrity check method applied to electronic device, and related circuit |
US8443203B2 (en) * | 2007-07-13 | 2013-05-14 | Samsung Electronics Co., Ltd. | Secure boot method and semiconductor memory system using the method |
US20090019275A1 (en) * | 2007-07-13 | 2009-01-15 | Park Dong-Jin | Secure Boot Method and Semiconductor Memory System Using the Method |
US8006095B2 (en) * | 2007-08-31 | 2011-08-23 | Standard Microsystems Corporation | Configurable signature for authenticating data or program code |
US20090063865A1 (en) * | 2007-08-31 | 2009-03-05 | Berenbaum Alan D | Configurable Signature for Authenticating Data or Program Code |
US20110271330A1 (en) * | 2008-12-31 | 2011-11-03 | Nokia (China) Investment Co. Ltd. | Solutions for identifying legal user equipments in a communication network |
CN102273239A (zh) * | 2008-12-31 | 2011-12-07 | 诺基亚(中国)投资有限公司 | 用于在通信网络中标识合法用户设备的解决方案 |
US8565119B2 (en) | 2009-04-14 | 2013-10-22 | Schweitzer Engineering Laboratories Inc | Network discovery and data transfer using SNMP in an electric power transmission or distribution system |
US20100260066A1 (en) * | 2009-04-14 | 2010-10-14 | August Jared P | Network discovery and data transfer using snmp in an electric power transmission or distribution system |
US8918575B2 (en) | 2009-09-14 | 2014-12-23 | Broadcom Corporation | Method and system for securely programming OTP memory |
US8644499B2 (en) * | 2009-09-14 | 2014-02-04 | Broadcom Corporation | Method and system for securely protecting a semiconductor chip without compromising test and debug capabilities |
US20110066787A1 (en) * | 2009-09-14 | 2011-03-17 | John Markey | Method and system for securely programming otp memory |
US20110066835A1 (en) * | 2009-09-14 | 2011-03-17 | Love Kothari | Method and system for securely protecting a semiconductor chip without compromising test and debug capabilities |
US8261357B2 (en) | 2009-10-14 | 2012-09-04 | Schweitzer Engineering Laboratories, Inc. | Systems and methods for license entitlement key distribution |
US20110088096A1 (en) * | 2009-10-14 | 2011-04-14 | Andrew Hilton | Systems and methods for license entitlement key distribution |
US20110085468A1 (en) * | 2009-10-14 | 2011-04-14 | Andrew Hilton | Systems and methods for a configurable communication device |
US8509101B2 (en) | 2009-10-14 | 2013-08-13 | Schweitzer Engineering Laboratories Inc | Systems and methods for a configurable communication device |
WO2011046752A1 (fr) * | 2009-10-14 | 2011-04-21 | Schweitzer Engineering Laboratories, Inc. | Systèmes et procédés pour distribution de clé de droit de licence |
US9219936B2 (en) | 2010-02-05 | 2015-12-22 | Maxlinear, Inc. | Conditional access integration in a SOC for mobile TV applications |
WO2011119985A3 (fr) * | 2010-03-26 | 2011-12-29 | Maxlinear, Inc. | Authentification et déchiffrage de micrologiciel pour un récepteur tv sécurisé |
US9177152B2 (en) | 2010-03-26 | 2015-11-03 | Maxlinear, Inc. | Firmware authentication and deciphering for secure TV receiver |
WO2011119985A2 (fr) * | 2010-03-26 | 2011-09-29 | Maxlinear, Inc. | Authentification et déchiffrage de micrologiciel pour un récepteur tv sécurisé |
US8935520B2 (en) | 2010-03-30 | 2015-01-13 | Maxlinear, Inc. | Control word obfuscation in secure TV receiver |
US20150324587A1 (en) * | 2010-07-01 | 2015-11-12 | Rockwell Automation Technologies, Inc. | Methods for firmware signature |
US9122876B2 (en) * | 2010-07-01 | 2015-09-01 | Rockwell Automation Technologies, Inc. | Methods for firmware signature |
US8738894B2 (en) * | 2010-07-01 | 2014-05-27 | Rockwell Automation Technologies, Inc. | Methods for firmware signature |
US8484474B2 (en) * | 2010-07-01 | 2013-07-09 | Rockwell Automation Technologies, Inc. | Methods for firmware signature |
US9881160B2 (en) * | 2010-07-01 | 2018-01-30 | Rockwell Automation Technologies, Inc. | Methods for firmware signature |
US20120005480A1 (en) * | 2010-07-01 | 2012-01-05 | Rockwell Automation Technologies, Inc. | Methods for firmware signature |
EP2402879A1 (fr) * | 2010-07-01 | 2012-01-04 | Rockwell Automation Technologies, Inc. | Procédés de signature de micrologiciel |
US8892855B2 (en) | 2010-08-10 | 2014-11-18 | Maxlinear, Inc. | Encryption keys distribution for conditional access software in TV receiver SOC |
US10110380B2 (en) * | 2011-03-28 | 2018-10-23 | Nxp B.V. | Secure dynamic on chip key programming |
US20140033305A1 (en) * | 2012-07-30 | 2014-01-30 | Marvin D. Nelson | Code validation |
US9940462B2 (en) | 2012-07-30 | 2018-04-10 | Hewlett-Packard Development Company, L.P. | Code validation |
US9715591B2 (en) * | 2012-07-30 | 2017-07-25 | Hewlett-Packard Development Company, L.P. | Code validation |
US20140122857A1 (en) * | 2012-10-25 | 2014-05-01 | Lenovo (Singapore) Pte, Ltd. | Apparatus, system and method for motherboard personalization |
US9436844B2 (en) | 2013-08-29 | 2016-09-06 | Microsoft Technology Licensing, Llc | Access enablement security circuit |
US9716708B2 (en) | 2013-09-13 | 2017-07-25 | Microsoft Technology Licensing, Llc | Security certificates for system-on-chip security |
US20150149783A1 (en) * | 2013-11-26 | 2015-05-28 | Rockwell Automation Technologies, Inc. | Method and Apparatus for Secure Distribution of Embedded Firmware |
US9548867B2 (en) * | 2013-11-26 | 2017-01-17 | Rockwell Automation Technologies, Inc. | Method and apparatus for secure distribution of embedded firmware |
US9916451B2 (en) * | 2015-02-09 | 2018-03-13 | Dell Products L.P. | Information handling system boot pre-validation |
US20160232356A1 (en) * | 2015-02-09 | 2016-08-11 | Dell Products L.P. | Information Handling System Boot Pre-Validation |
US9893885B1 (en) | 2015-03-13 | 2018-02-13 | Amazon Technologies, Inc. | Updating cryptographic key pair |
US9674162B1 (en) | 2015-03-13 | 2017-06-06 | Amazon Technologies, Inc. | Updating encrypted cryptographic key pair |
US10154013B1 (en) | 2015-03-13 | 2018-12-11 | Amazon Technologies, Inc. | Updating encrypted cryptographic key |
US10116645B1 (en) | 2015-03-30 | 2018-10-30 | Amazon Technologies, Inc. | Controlling use of encryption keys |
US10003467B1 (en) * | 2015-03-30 | 2018-06-19 | Amazon Technologies, Inc. | Controlling digital certificate use |
US9479340B1 (en) | 2015-03-30 | 2016-10-25 | Amazon Technologies, Inc. | Controlling use of encryption keys |
US20170093586A1 (en) * | 2015-09-25 | 2017-03-30 | Qualcomm Incorporated | Techniques for managing certificates on a computing device |
US10659234B2 (en) * | 2016-02-10 | 2020-05-19 | Cisco Technology, Inc. | Dual-signed executable images for customer-provided integrity |
US20170230185A1 (en) * | 2016-02-10 | 2017-08-10 | Cisco Technology, Inc. | Dual-signed executable images for customer-provided integrity |
US9967135B2 (en) | 2016-03-29 | 2018-05-08 | Schweitzer Engineering Laboratories, Inc. | Communication link monitoring and failover |
US10009350B2 (en) * | 2016-04-12 | 2018-06-26 | Guardknox Cyber Technologies Ltd. | Hardware components configured for secure physical separation of communication networks in a vehicle and methods of use thereof |
CN106656502A (zh) * | 2016-09-26 | 2017-05-10 | 上海兆芯集成电路有限公司 | 计算机***及安全执行的方法 |
US20180091314A1 (en) * | 2016-09-26 | 2018-03-29 | Via Alliance Semiconductor Co., Ltd. | Apparatuses and methods for trusted module execution |
US11038697B2 (en) * | 2016-09-26 | 2021-06-15 | Via Alliance Semiconductor Co., Ltd. | Apparatuses and methods for trusted module execution |
US20180288035A1 (en) * | 2017-03-30 | 2018-10-04 | Avaya Inc. | Device enrollment service system and method |
US10638313B2 (en) * | 2017-10-26 | 2020-04-28 | Robert Bosch Gmbh | Systems and methods for confirming a cryptographic key |
US20190132123A1 (en) * | 2017-10-26 | 2019-05-02 | Robert Bosch Gmbh | Systems and methods for confirming a cryptographic key |
US11068600B2 (en) * | 2018-05-21 | 2021-07-20 | Kct Holdings, Llc | Apparatus and method for secure router with layered encryption |
WO2022006535A1 (fr) * | 2020-07-02 | 2022-01-06 | SDG Logic Inc. | Système et procédés de calcul confidentiel |
US20230011005A1 (en) * | 2021-07-12 | 2023-01-12 | Dell Products, L.P. | Systems and methods for authenticating configurations of an information handling system |
US11822668B2 (en) * | 2021-07-12 | 2023-11-21 | Dell Products, L.P. | Systems and methods for authenticating configurations of an information handling system |
Also Published As
Publication number | Publication date |
---|---|
US20040025036A1 (en) | 2004-02-05 |
US8122244B2 (en) | 2012-02-21 |
US20040054907A1 (en) | 2004-03-18 |
EP1387237A3 (fr) | 2010-12-29 |
EP1387237A2 (fr) | 2004-02-04 |
US7299358B2 (en) | 2007-11-20 |
EP1429224A1 (fr) | 2004-06-16 |
US20040025011A1 (en) | 2004-02-05 |
US7539868B2 (en) | 2009-05-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7299358B2 (en) | Indirect data protection using random key encryption | |
US20040025027A1 (en) | Secure protection method for access to protected resources in a processor | |
CA2450844C (fr) | Procede servant a securiser un dispositif electronique, systeme de securite et dispositif electronique | |
AU734212B2 (en) | System for preventing electronic memory tampering | |
KR101795457B1 (ko) | 보안 기능이 강화된 디바이스의 초기화 방법 및 디바이스의 펌웨어 업데이트 방법 | |
US8225110B2 (en) | Cryptographic protection of usage restrictions in electronic devices | |
US6615350B1 (en) | Module authentication and binding library extensions | |
US6539480B1 (en) | Secure transfer of trust in a computing system | |
US20080082828A1 (en) | Circuit arrangement and method for starting up a circuit arrangement | |
Eisenbarth et al. | Reconfigurable trusted computing in hardware | |
US20150186679A1 (en) | Secure processor system without need for manufacturer and user to know encryption information of each other | |
JP2007512787A (ja) | トラステッド・モバイル・プラットフォーム・アーキテクチャ | |
WO2007053212A1 (fr) | Procedes et systemes d'association d'une puce securisee integree a un ordinateur | |
JP2004280284A (ja) | 制御プロセッサ、電子機器及び電子機器のプログラム起動方法、並びに電子機器のシステムモジュール更新方法 | |
CN111651740B (zh) | 一种面向分布式智能嵌入式***的可信平台共享*** | |
KR20070017455A (ko) | 프로세서 내에서의 보호된 리소스들로의 억세스에 대한안전한 보호 방법 | |
JP2006072414A (ja) | ソフトウェア無線システム | |
KR100749868B1 (ko) | 장치 키 | |
Bin et al. | Research and design of Bootrom supporting secure boot mode | |
Device et al. | COMMON CRITERIA SECURITY TARGET | |
AU5418201A (en) | System for preventing electronic memory tampering |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: TEXAS INSTRUMENTS INCORPORATED, TEXAS Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:PAKSOY, ERDAL;LECLERCQ, MAXIME;REEL/FRAME:014299/0552;SIGNING DATES FROM 20030708 TO 20030711 |
|
AS | Assignment |
Owner name: TEXAS INSTRUMENTS INCORPORATED, TEXAS Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:AZEMA, JEROME L.;BALARD, ERIC J-L;CHATEAU, ALAIN;REEL/FRAME:014526/0518 Effective date: 20030826 |
|
STCB | Information on status: application discontinuation |
Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION |