Detailed Action
Notice of Pre-AIA or AIA Status
The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA .
Claim Rejections - 35 USC § 103
The following is a quotation of 35 U.S.C. 103 which forms the basis for all obviousness rejections set forth in this Office action:
A patent for a claimed invention may not be obtained, notwithstanding that the claimed invention is not identically disclosed as set forth in section 102, if the differences between the claimed invention and the prior art are such that the claimed invention as a whole would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to which the claimed invention pertains. Patentability shall not be negated by the manner in which the invention was made.
Claim(s) 1, 2, 4-5, 11-12, 14-15 is/are rejected under 35 U.S.C. 103 as being unpatentable over Smith et al [20190155636], in view of Ruiz et al [ 20200004974]
As to claim 1,
Smith et al [20190155636] teaches A computing device that performs device management, comprising:
a memory; a processor, the processor configured for: executing an application launcher for applications stored on the computing device, wherein the application launcher executes in a runtime of the computing device;
executing a virtual container within the application launcher;
determining whether to launch a selected application within the virtual container or outside of the virtual container from the application launcher [ Examiner note: claim limitation has claim contingency, it can only happen whether launched within or outside of VM:0028: “Enforcing the container- enclave policy 212 may include determining whether the application enclave 204 is launched within a VMM 206 or within a VM 202.”];
launching the selected application from the application launcher based on the determination[0028: “. Enforcing the container- enclave policy 212 may include determining whether the application enclave 204 is launched within a VMM 206 or within a VM 202. ” [0023: “Each application enclave 204 may be embodied as an SGX secure enclave or other trusted execution environment that may be executed by the computing device 102. Each application enclave 204 executes within a user process or other application process executed by the computing device 102. As shown, certain application enclaves 204 may execute within a VM 202, and certain application enclaves 204 may execute outside of a VM 202 (e.g., without virtualization). ” an d0035: “In block 322, the attestation report may include an attributes field having flags that indicate the VM/VMM virtualization context of the application enclave 204. For example, the attributes may include a VM flag that is set if the application enclave 204 is executing within a VM 202 and that is cleared if the application enclave 204 is not executing within a VM 202. Similarly, the attributes may include a VMM flag that is set if the application enclave 204 is executing within a VMM 206 and that is cleared if the application enclave 204 is not executing within a VMM 206. One potential embodiment of an attributes field that may be included in the report is shown below in Table 2 ”]] and
wherein, when the selected application is launched outside of the virtual container, the behavior of the selected application is not modified during operation[contingent claim limitation: claim selected application launched at VM, then it does not launched outside of VM]. But does not explicitly teach wherein, when the selected application is launched within the virtual container, the behavior of the selected application is modified during operation by intercepting an API call for the selected application,
However Ruiz teaches [Ruiz et al : 20200004974] teaches wherein, when the selected application is launched within the virtual container, the behavior of the selected application is modified during operation by intercepting an API call for the selected application,[ 0046: “the application management service and associated drivers may be responsible for managing which applications are allowed to open particular protected documents, seamlessly decrypting the corresponding files for the applications, and communicating this information to the DLP client. In order to implement a secure clipboard, the DLP client employ the concepts of DLL (dynamic-link library) injection and API (application programming interface) hooking. DLL injection is a process by which an application can cause a DLL to be loaded into the memory space of a target managed application. Once a DLL is successfully loaded, it is possible for the DLP client to interact with the target managed application. API hooking is a technique used to intercept function calls made by the managed application into the operating system or another component to modify the behavior resulting from the function call. In some embodiments, the use of API hooking allows the DLP client to add functionality to or change the behavior of a managed application without the managed application being aware of the additional functionally or changed behavior ”- operation happens at runtime if not mentioned otherwise]
It would have been obvious to person of ordinary skill in the art before the effective filing date of the claimed invention. Furthermore, Ruiz improves upon smith such that the applications launched behavior can be changed accordance to interception such that application can run as desired.
As to claim 2,
Smith teaches the computing device of claim 1, wherein the determination of whether to launch
the selected application within the virtual container or outside of the virtual container from the application launcher is based on a user configuration setting or a user selection made when launching the selected application from the application launcher [0023: “Each application enclave 204 executes within a user process or other application process executed by the computing device 102.”]
As to claim 4,
Smith teaches the computing device of claim 1, wherein the determination of whether to launch the application within the virtual container or outside of the virtual container from the application launcher is based on a predefined rule or the identity of the selected application [0015: “Additionally, code and data included in the secure enclave may be encrypted or otherwise protected from being accessed by code executing outside of the secure enclave. For example, code and data included in the secure enclave may be protected by hardware protection mechanisms of the compute engine 120 while being executed or while being stored in certain protected cache memory of the compute engine 120.”].
As to claim 5,
Ruiz et al teaches the determination of whether to launch the selected application within the virtual container or outside of the virtual container from the application launcher is based on whether the selected application uses a predetermined ad-display mechanism or a predetermined API [0047: “By combining DLL injection and API hooking, the DLP client may be able to intercept all clipboard related function calls made by a managed application into the operating system, including various copy type operations (which may include cut type operations) and various paste type operations. When a function call for a copy type operation on a protected document in a managed application is detected, the DLP client may intercept the function call through API hooking and extract the protected data that is copied (which would otherwise be directed to the system clipboard), while preventing other applications (or unprotected documents thereof) from accessing the protected data.”].
As to claim 11,
Combination of Smith and Ruiz teach this claim according to the reasoning set forth in claim 1-2 supra.
As to claim 14-15,
Combination of Smith and Ruiz teach this claim according to the reasoning set forth in claim 4-5 supra.
Allowable Subject Matter
Claim 3, 6-10, 13, 16-20 objected to as being dependent upon a rejected base claim, but would be allowable if rewritten in independent form including all of the limitations of the base claim and any intervening claims.
Conclusion
Any inquiry concerning this communication or earlier communications from the examiner should be directed to KESHAB R PANDEY whose telephone number is (571)270-0176. The examiner can normally be reached Monday-Friday 9:00-5:00(ET).
Examiner interviews are available via telephone, in-person, and video conferencing using a USPTO supplied web-based collaboration tool. To schedule an interview, applicant is encouraged to use the USPTO Automated Interview Request (AIR) at http://www.uspto.gov/interviewpractice.
If attempts to reach the examiner by telephone are unsuccessful, the examiner’s supervisor, Jaweed Abbaszadeh can be reached at (571) 270-1640. The fax phone number for the organization where this application or proceeding is assigned is 571-273-8300.
Information regarding the status of published or unpublished applications may be obtained from Patent Center. Unpublished application information in Patent Center is available to registered users. To file and manage patent submissions in Patent Center, visit: https://patentcenter.uspto.gov. Visit https://www.uspto.gov/patents/apply/patent-center for more information about Patent Center and https://www.uspto.gov/patents/docx for information about filing in DOCX format. For additional questions, contact the Electronic Business Center (EBC) at 866-217-9197 (toll-free). If you would like assistance from a USPTO Customer Service Representative, call 800-786-9199 (IN USA OR CANADA) or 571-272-1000.
/KESHAB R PANDEY/ Primary Examiner, Art Unit 2176