Abstract:
PROBLEM TO BE SOLVED: To reduce the number of trusted operating system identities without limiting the choices of software components available to a user. SOLUTION: The boot roles determine the validity of a software component based on the contents of the component and a boot certificate. A client computer transmits the identity and boot certificate of a verified operating system to a server computer, such as a content provider, and the content provider determines whether to trust the verified operating system with its content. Downloaded data is secured on a permanent storage through a key derived from the identifier of the verified operating system. The boot certificate, component certificate, and secured content define a boot domain. COPYRIGHT: (C)2009,JPO&INPIT
Abstract:
PROBLEM TO BE SOLVED: To prevent rogue components from being loaded together with an operating system, to prevent divulgence of a system key under inappropriate circumstances. SOLUTION: After a portion of a machine startup procedure has occurred, an operating system loader is run, and the loader is validated, and a correct machine state is either verified to exist and/or to be created. Once the loader has been verified to be a legitimate loader and the machine state under which the loader is running is verified to be correct, a loader's future behavior is known to protect against the loading of rogue components that can cause divulgence of the system key. When the loader's behavior is known to be safe for the system key, a validator unseals the system key and provides it to the loader. COPYRIGHT: (C)2006,JPO&NCIPI
Abstract:
PROBLEM TO BE SOLVED: To supply authentication information to be used for a resource provider who supplies a resource to authenticate a resource recipient to the resource recipient. SOLUTION: A resource 12 is acquired from a resource provider (RP) 10 for a resource requester (RR) 14 operating on a computing device 18. The RR 14 is provided with an identify descriptor(id) 20 including security relevance information to designate an environment where the RR 14 is operating. A code identity code(code ID) 22 is calculated based on the loaded RR14 and id 20. The RP 10 verifies that the code ID calculated in the request of the resource 12 is matched with one of one or more valid codes ID 22 for the identified RR 14, and concludes that the RR 14 and id 20 are reliable, and the RP 10 supplies the requested resource 12 to the RR 14, and responds to the transferred request. COPYRIGHT: (C)2005,JPO&NCIPI
Abstract:
PROBLEM TO BE SOLVED: To provide a multiplexed secure counter in which a plurality of slave secure counters are secured by a master secure counter. SOLUTION: Slave counters are stored with a master counter value and a signature. The signature is verified before reading the slave counters and the stored value is inspected by comparing it with the current value of the master secure counter. When verification is successful, the slave secure counters can be used. In order to carry out increment of the slave counters, the signature is verified and the stored value is inspected to the current value of the master secure counter. When verification is successful, increment of the master counter and the slave counters is carried out and data is signed again. COPYRIGHT: (C)2004,JPO
Abstract:
PROBLEM TO BE SOLVED: To provide software application protection which uses a digital rights management (DRM) system. SOLUTION: All of the digital rights management (DRM) system, an application and a DRM digital license on the application exists on a calculation device. The application is intended for the execution of an function, and on the basis of a license, the application includes a code which makes a request of the DRM system for making a determination on whether or not the application is permitted to execute the function. The application includes a code for making a determination on whether the application is to be executed on one of the calculation devices or in association with the DRM system. COPYRIGHT: (C)2004,JPO
Abstract:
PROBLEM TO BE SOLVED: To provide a method and a system for protecting secure contents in cipher in connection with a graphics sub-system of a computing device. SOLUTION: Contents in a video memory are ciphered to result in that a not permitted software cannot obtain a significant access thereto, thereby executing a technique for keeping secrecy. A tamper detecting mechanism is provided to result in that the time when data are changed in a form is known to keep perfectness. In various embodiments, contents on overlay surface and/or command buffer are ciphered and/or a GPU can operate the ciphered contents by avoiding availability to a distrustful user, device or software. COPYRIGHT: (C)2004,JPO
Abstract:
Various technologies and techniques are disclosed for virtualizing threads. An operating system thread is virtualized by intercepting accesses of the operating system thread state and emulating a normal operating system behavior. A kernel mode thread state is virtualized by intercepting kernel accesses of the kernel mode thread state and emulating a normal kernel mode behavior. A user mode thread state is virtualized by intercepting user mode accesses of the user mode thread state and emulating a normal user mode behavior. If the access is a write access, then the write access is applied to a virtual thread structure. If the access is a read access, then the read access is applied to the virtual thread structure.
Abstract:
A computer may be secured from attack by including a trusted environment used to verify a known monitor. The monitor may be used to determine a state of the computer for compliance to a set of conditions. The conditions may relate to terms of use, such as credits available for pay-per-use, or that the computer is running certain software, such as virus protection, or that unauthorized peripherals are not attached, or that a required token is present. The monitor may send a signal directly or through the trusted environment to a watchdog circuit. The watchdog circuit disrupts the use of the computer when the signal is not received in a given timeout period.
Abstract:
Various technologies and techniques are disclosed for allowing a user mode stack to be shared by multiple contexts. A user mode stack can be shared between execution contexts that are guaranteed to not need the user mode stack at the same time. For example, each user mode portion of a kernel thread is provided with a dedicated backing thread. When a respective dedicated backing thread is sleeping and not using a respective user mode stack, the user mode stack is allowed to float with a respective user mode portion to other kernel threads. The user mode stack is disassociated from the kernel portion of the thread. The kernel is notified of an address of a user mode thread context. The kernel mode portion of the converted thread becomes a backing thread that waits. The user mode portion of the converted thread can be switched without entering the kernel.
Abstract:
Systems and methods for validating integrity of an executable file are described. In one aspect, the systems and methods determine that an executable file is being introduced into a path of execution. The executable file is then automatically evaluated in view of multiple malware checks to detect if the executable file represents a type of malware. If the executable file represents a type of malware, a protection path is implemented.