Abstract: The present disclosure relates systems and methods for executing an encrypted code section in a shieldable CPU memory cache. Functional characteristics of the software product of a vendor, such as gaming or video, may be partially encrypted to allow for protected and functional operability and avoid hacking and malicious usage of non-licensed user. The encrypted instructions may be written to the CPU memory cache and decrypted only once the CPU memory cache is switched into a shielded state. The decrypted code instructions may be executed from a designated cache-line of said CPU memory cache still in the shielded state.
Type:
Grant
Filed:
September 12, 2016
Date of Patent:
September 5, 2017
Assignee:
TRULY PROTECT OY
Inventors:
Michael Kiperberg, Amit Resh, Nezer Zaidenberg
Abstract: The present disclosure relates to systems and methods for enabling execution of encrypted managed programs in common managed execution environments. In particular the disclosure relates to method of loading and associating an extension module to the managed execution environment configured to receive execution event notifications. The events corresponding to the execution of encrypted methods are intercepted and passed on to a decryption module operable to execute within an hypervisor environment, such that the managed encrypted program is decrypted, executed in a secured location, preventing access of untrusted party. The decryption module is further configured to discard decrypted instruction if cooperation of the extension module is required, or upon program termination.
Type:
Grant
Filed:
November 11, 2015
Date of Patent:
September 5, 2017
Assignee:
TRULY PROTECT OY
Inventors:
Michael Kiperberg, Amit Resh, Nezer Zaidenberg
Abstract: Various embodiments for enabling and protecting execution of encrypted electronic content in a client system. In various embodiments, there is a method for managing the state of the cache memory of the client system. In various embodiments, there is a method for protocol stack validation to confirm readiness of the client system to execute encrypted electronic content. In various embodiments, there is a method for protocol stack execution.