Abstract:
Disclosed is an apparatus and method to determine usage rules for video content by buffer tracking. A computing device may include a secure processor configured to: store digital rights management (DRM) rules associated with a DRM key and usage rules for a session; command a cryptoprocessor to decrypt video content with the DRM key and to log an output buffer designation of the command to decrypt the video content. The secure processor may command a buffer tracking table to store the output buffer designation of the cryptoprocessor of the command to decrypt and the associated usage rules and a plurality of input and output buffer designations from a plurality of video content drivers, such that, based upon a buffer designation from an output driver to display video content received by the secure processor, the secure processor may determine usage rules to be applied to the decrypted video content for display.
Abstract:
Disclosed is an apparatus and method to set the speed of a clock. A computing device may include a processor and a scheduler of the processor, the scheduler may be configured to: receive a plurality of votes for requested bandwidths from a plurality of different execution environments; sum the requested bandwidths; and set the clock speed based upon the sum of the requested bandwidths.
Abstract:
Techniques for managing certificates on a computing device are provided. An example method according to these techniques includes receiving an image file comprising a hash value of a certificate on which a certificate action is to be performed, the certificate action being a revocation action or an activation action, the image file having been signed by a signing certificate, determining whether the image file has been signed by a valid certificate by comparing a hash value of the signing certificate to a plurality of hash values associated with certificates stored in a one-time programmable memory of the computing device, and performing the certificate action, responsive to the image file having been signed by the valid certificate and the certificate on which the certificate action is to be performed having been found in the memory, by setting a value of an indicator associated with the certificate in the memory.
Abstract:
Disclosed is a method and apparatus to decrypt file segments in parallel. In one embodiment, an integrated circuit may be used with a storage device of a computing device that comprises: a hardware interface to communicate with the storage device; a crypto-engine to encrypt file segments to be stored on the storage device and to decrypt file segments read from the storage device; and a processor. The processor may be configured to: read a plurality of decrypted file segments from the storage device through the crypto-engine in parallel; and to store the plurality of decrypted file segments.
Abstract:
System and method for providing adaptive access to a hardware block on a computer system. In one embodiment, a method includes receiving a first access request and a second access request with an access controller, wherein the second access request is received sequentially after the first access request, and the first access request includes a first master identification and the second access request includes a second master identification, determining if the second master identification is equal to the first master identification, providing access to the second access request if the second master identification is equal to the first master identification, wherein the first master identification is associated with one or more hardware block interface values, invalidating the one or more hardware block interface values associated with the first master identification if the second master identification is not equal to the first master identification, and associating the one or more hardware block interface values with the second master identification and a corresponding privilege.
Abstract:
A secure boot method includes: obtaining a certificate digest at a digest processor from a write-once, always-on memory; calculating a flash digest using the digest processor by cryptographically processing a sensitive information image; and comparing, using the digest processor, the flash digest with the certificate digest.
Abstract:
Methods, apparatus, and computer program products for securely writing patch code to a memory of a system-on-chip (SoC) are described. An example of a method for securely writing patch code to the memory of the SoC includes determining an authentication status of a patch code image, if the authentication status of the patch code image is authenticated, then writing the patch code from the patch code image into a one-time programmable (OTP) memory and generating a system reset signal, and if the authentication status of the patch code image is unauthenticated, then booting the SoC without writing the patch code from the patch code image into the OTP memory.
Abstract:
A method includes: decrypting, in a device, a first subset of encrypted data using a cryptographic device key associated with the device to produce first plain text, where a set of encrypted data comprises the first subset of encrypted data and a second subset of encrypted data, and where the first subset of encrypted data and the second subset of encrypted data each contain less encrypted data than the set of encrypted data and are different from each other; decrypting, in the device, the second subset of encrypted data using the cryptographic device key to produce second plain text; encrypting, in the device, the first plain text using a first ephemeral key to produce first re-encrypted data; and encrypting, in the device, the second plain text using a second ephemeral key to produce second re-encrypted data, the second ephemeral key being different from the first ephemeral key.
Abstract:
Techniques for preventing circumvention of digital rights management protections on electronic content are provided. A method according to these techniques includes receiving a content stream, obtaining samples from the content stream, generating a histogram based on the samples from the content stream, classifying the content stream as including audio content or non-audio content based on the histogram, and modifying portions of the content stream responsive to classifying the content stream as including non-audio content. The content stream can be modified such that any video content included in the content stream would be rendered unplayable, while audio content included in the content stream remains playable.
Abstract:
System and method for providing adaptive access to a hardware block on a computer system. In one embodiment, a method includes receiving a first access request and a second access request with an access controller, wherein the second access request is received sequentially after the first access request, and the first access request includes a first master identification and the second access request includes a second master identification, determining if the second master identification is equal to the first master identification, providing access to the second access request if the second master identification is equal to the first master identification, wherein the first master identification is associated with one or more hardware block interface values, invalidating the one or more hardware block interface values associated with the first master identification if the second master identification is not equal to the first master identification, and associating the one or more hardware block interface values with the second master identification and a corresponding privilege.