Prosecution Insights
Last updated: October 02, 2026
Application No. 18/095,374

INTERCEPTING AND SECURING BACKUP TRAFFIC

Final Rejection §103
Filed
Jan 10, 2023
Examiner
MAYE, AYUB A
Art Unit
2436
Tech Center
2400 — Computer Networks
Assignee
Rubrik Inc.
OA Round
4 (Final)
58%
Grant Probability
Moderate
5-6
OA Rounds
9m
Est. Remaining
99%
With Interview

Examiner Intelligence

Grants 58% of resolved cases
58%
Career Allowance Rate
384 granted / 664 resolved
At TC average
Strong +41% interview lift
Without
With
+41.4%
Interview Lift
resolved cases with interview
Typical timeline
4y 6m
Avg Prosecution
22 currently pending
Career history
696
Total Applications
across all art units

Statute-Specific Performance

§101
3.0%
-37.0% vs TC avg
§103
59.5%
+19.5% vs TC avg
§102
16.3%
-23.7% vs TC avg
§112
14.3%
-25.7% vs TC avg
Black line = Tech Center average estimate • Based on career data from 664 resolved cases

Office Action

§103
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 In the event the determination of the status of the application as subject to AIA 35 U.S.C. 102 and 103 (or as subject to pre-AIA 35 U.S.C. 102 and 103) is incorrect, any correction of the statutory basis (i.e., changing from AIA to pre-AIA ) for the rejection will not be considered a new ground of rejection if the prior art relied upon, and the rationale supporting the rejection, would be the same under either status. 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. The factual inquiries for establishing a background for determining obviousness under 35 U.S.C. 103 are summarized as follows: 1. Determining the scope and contents of the prior art. 2. Ascertaining the differences between the prior art and the claims at issue. 3. Resolving the level of ordinary skill in the pertinent art. 4. Considering objective evidence present in the application indicating obviousness or nonobviousness. Claims 1-3, 5-6, 8-10, 12, 16-17, 19 and 21 are rejected under 35 U.S.C. 103 as being unpatentable over Havemose (11099950) in views of Larkin et al (2022/0156172), Persaud et al (2013/0042106) and Paulzagade et al (2022/0283905). For claim 1, Havemose’950 teaches a method for data management (abstract), comprising: receiving, at a host environment from a backup system, a request to execute a backup procedure for backing up a host data store of the host environment (Havemose’950 teaches that a system for providing replica consistency between a primary application and one or more backup applications, the system including one or more memory locations configured to store the primary application executing for a host with a host operating system as Havemose’950 teaches on col.7, lines 58-65); executing, in response to receiving the request, the backup procedure for backing up the host data store using a database backup utility (Havemose’950 teaches an interception layer for the primary application intercepting calls to the host operating system and to shared libraries and generating replication messages based on said intercepted calls, a messaging engine for the primary application sending said replication messages to the one or more backup applications, and one or more additional memory locations are configured to store the one or more backup applications executing for one or more hosts each with a corresponding host operating system as Havemose’950 teaches in col.7, lines 60-68 to col.8, lines 1-5); and communicating, using the Havemose’950 teaches that one or more additional messaging engines for each backup application receiving said replication messages from the primary application, and backup interception layers corresponding to each backup intercepting call to the operating system and shared libraries. The ordering information is retrieved from the one or more additional messaging engines for each backup application, and each replication message contains at least the process ID, thread ID and a sequence number, and replica consistency is provided by imposing the same call ordering on backup applications as on the primary application as Havemose’950 teaches in col.8, lines 5-18). Havemose’950 fails to teach wherein the request comprises a script operable to perform the backup procedure, preloading, in response to receiving the request and in accordance with executing the script using a preload facility of the host environment, a library configured to intercept backup communication traffic at the host environment, wherein the preload facility of the host environment preloads the library prior to loading one or more other libraries, intercepting, using the preloaded library, input/output operations performed by the database backup utility during execution of the backup procedure; and communicating, using preloading library and via a cryptographic security protocol, backup data from the intercepted input/output operations. Larkin teaches, similar system, preloading, in response to receiving the request and in accordance with executing the script using a preload facility of the host environment (Larkin teaches One way to ensure that interception library is accessed first is to set a pre-loader (e.g., preloader 441) to interception library 430. The pre-loader is commonly referred to as LD_PRELAOD. For example, LD_PRELOAD is set to Interception Library. This results in pre-loader instructing loader 440 to access interception library 430 first before accessing any other libraries such as native library as Larkin teaches in par.114-115), a library configured to intercept backup communication traffic at the host environment (Larkin teaches that execution of the TIAP runtime can include intercepting a call by the application using one of an interception library or a loader having the interception library integrated therein; collecting parameters of the call as a telemetry event; trampolining the call to the native library after collecting the telemetry event to enable the application to perform the call as originally intended; and transmitting the telemetry event to a TIAP portal as Larkin teaches in par.5), wherein the preload facility of the host environment preloads the library prior to loading one or more other libraries (Larkin teaches This results in pre-loader instructing loader 440 to access interception library 430 first before accessing any other libraries such as native library as Larkin teaches in par.114-115), intercepting, using the preloaded library, input/output operations performed by the database backup utility during execution of the backup procedure (Larkin teaches wherein the user interface communicates with the TIAP; registering the plurality of components with the TIAP to correlate each component with a corresponding one of a plurality of interception codes; receiving the plurality of interception codes from the TIAP; receiving TIAP runtime code from the TIAP; storing the interception codes in an interception library, and where each interception code comprises at least one telemetry grammar and a trampoline function; and generating a sealed output file comprising the interception library and the TIAP runtime code as Larkin teaches in par.16), communicating, using preloading library and Larkin teaches that Executing the TIAP runtime can include intercepting a call by the application using one of an interception library or a loader having the interception library integrated therein; collecting parameters of the call as a telemetry event; trampolining the call to the native library after collecting the telemetry event to enable the application to perform the call as originally intended; and transmitting the telemetry event to a TIAP portal as Larkin teaches in par.15-16) . It would have been obvious to one ordinary skill in the art before effective filling date to modify Havemose’950 to include preloading as taught and suggested by Larkin for the purpose of collecting parameters of the call as a telemetry event; trampolining the call to the native library after collecting the telemetry event to enable the application to perform the call as originally intended; and transmitting the telemetry event to a TIAP portal (Larkin, par.15). The combination of Havemose’950 and Larkin teaches communicating using preloaded library but fails to explicitly teach communicating via a cryptographic security protocol, with backup data, however Persaud teaches communicating, using files and via a cryptographic security protocol, with backup data (Persaud teaches of communicating secure router 15(1) use cryptographic algorithms to convert data file 50 into an encrypted object 55 that, as described further below, includes the encrypted data and other information and Data at rest may include archived data or reference files, data files stored on hard drives, files on backup medium, files stored in a storage area network (SAN). Further teaches data in motion (i.e., data that is traversing a network) is secured using the Transport Layer Security (TLS) protocol, the Secure Sockets Layer (SSL) protocol, etc as Persaud teaches in par.16 and 17). It would have been obvious to one ordinary skill in the art before effective filling date to modify Havemose’950, as modified by Havemose’399, to include cryptographic security protocol as taught and suggested by Persaud for the purpose of securing data file while at rest in cloud storage, and generating a unique random key per data file, and secures the file using this key (Persaud, par.17). Havemose’950, as modified by Larkin and Persaud, does not explicitly teach of wherein the request comprises a script operable to perform the backup procedure, intercepting, using the preloaded library, input/output operations performed by the database backup utility during execution of the backup procedure; and communicating, using preloading library and via a cryptographic security protocol, backup data from the intercepted input/output operations. Although the combination teaches the storage procedure but fails to explicitly teach a script operable to perform the backup procedure, however Paulzagade teaches, similar system, wherein the request comprises a script operable to perform the backup procedure (Paulzagade teaches processor is configured to execute the one or more processor-executable routines to generate a unique file name for an underlying file of each backup stream of the plurality of backup streams based on one or more data blocks in each backup stream. The processor is further configured to execute the one or more processor-executable routines to create a data file corresponding to each backup stream of the plurality of backup streams in a local cache of a client database server, wherein each data file has a file name corresponding to the unique file name, and computer programs may include: (i) descriptive text to be parsed, such as HTML (hypertext markup language) or XML (extensible markup language) as Paulzagade teaches in par.8 and 73-74). It would have been obvious to one ordinary skill in the art before effective filling date to modify Havemose’950, as modified by Larkin and Persaud, to include a script operable to perform the backup procedure as taught and suggested by Paulzagade for the purpose of generating a unique file name for an underlying file of each backup stream of the plurality of backup streams based on one or more data blocks in each backup stream and creating a data file corresponding to each backup stream of the plurality of backup streams in a local cache of a client database server, wherein each data file has a file name corresponding to the unique file name generated by the stream handler (Paulzagade, abstract). For claims 2, 9, and 16, Havemose’950, as modified by Larkin Persaud and Paulzagade, teaches all the limitation as previously set forth except for wherein communicating the backup data comprises: transmitting, using a router service of the host environment that receives the backup data from a file system facility that preloads the library, the backup data to the backup system using the cryptographic security protocol that encrypts the backup data. Persaud teaches, similar system, wherein communicating the backup data comprises: transmitting, using a router service of the host environment that receives the backup data from a file system facility that preloads the library, the backup data to the backup system using the cryptographic security protocol that encrypts the backup data (Persaud, par.16 and 17). It would have been obvious to one ordinary skill in the art before effective filling date to modify Havemose’950, as modified by Larkin and Paulzagade, to include router service and cryptographic security protocol as taught and suggested by Persaud for the purpose of securing data file while at rest in cloud storage, and generating a unique random key per data file, and secures the file using this key (Persaud, par.17). For claims 3, 10, and 17, Havemose’950, as modified by Larkin Persaud and Paulzagade, teaches all the limitation as previously set forth except for wherein the cryptographic security protocol is transport layer security. Persaud further teaches wherein the cryptographic security protocol is transport layer security (Persaud, par.16 and 17). It would have been obvious to one ordinary skill in the art before effective filling date to modify Havemose’950, as modified by Larkin and Paulzagade, to include router service and cryptographic security protocol as taught and suggested by Persaud for the purpose of securing data file while at rest in cloud storage, and generating a unique random key per data file, and secures the file using this key (Persaud, par.17). For claims 5, 12 and 19, Havemose’950, as modified by Larkin, Persaud and Paulzagade, fails to teach wherein communicating the backup data comprise: identifying the backup data from the intercepted input/output operations, wherein the identified backup data is communicated to the backup system. Paulzagade further teaches wherein communicating the backup data comprise: identifying the backup data from the intercepted input/output operations, wherein the identified backup data is communicated to the backup system (Paulzagade teaches the stream handler 130 includes a block reader 132, a dictionary block reader 134, and a file name generator 136. The stream handler 130 is configured to generate the unique file name for an underlying file of a backup stream of the plurality of backup streams based on a database name, a database ID, and an inode number corresponding to the backup stream and block reader 132 is configured to read a first block of a backup stream to identify a stream block size, database ID, and a number of meta blocks in the backup stream as Paulzagade teaches in par.32). It would have been obvious to one ordinary skill in the art before effective filling date to modify Havemose’950, as modified by Larkin and Persaud, to include identifying the backup data from the intercepted input/output operations as taught and suggested by Paulzagade for the purpose of generating a unique file name for an underlying file of each backup stream of the plurality of backup streams based on one or more data blocks in each backup stream and creating a data file corresponding to each backup stream of the plurality of backup streams in a local cache of a client database server, wherein each data file has a file name corresponding to the unique file name generated by the stream handler (Paulzagade, abstract). For claims 6, and 13, Havemose’950, as modified by Larkin, Persaud and Paulzagade, teaches all the limitation as previously set forth except for cataloging, based at least in part on using library, metadata associated with the backup procedure in the host data store of the host environment. Larkin teaches, similar system, cataloging, based at least in part on using library, metadata associated with the backup procedure in the host data store of the host environment (Larkin teaches host software catalogue is a list of software packages and constituent files on the machine running the component, indexed by hostname and IP address. This information is periodically gathered and uploaded to the TIAP portal to assist with analytics (specifically a common vulnerabilities and exposures (CVE) service). This catalogue is periodically updated, and the TIAP portal will report back out of date if the catalogue does not exist at all, or if the component sealing date is later than the last catalogue update time, or if a set age threshold is exceeded (typically set to 1 week by default). If the TIAP portal requests a new catalogue to be uploaded, the runtime will compile the catalogue in a background thread and upload it to the portal when complete (asynchronously, low priority thread as Larkin teaches in par.127-129). It would have been obvious to one ordinary skill in the art before effective filling date to modify Havemose’950, as modified by Paulzagade and Persaud, to include cataloging metadata associated as taught and suggested by Larkin for the purpose of collecting parameters of the call as a telemetry event; trampolining the call to the native library after collecting the telemetry event to enable the application to perform the call as originally intended; and transmitting the telemetry event to a TIAP portal (Larkin, par.15). For claim 8, Havemose’950 teaches An apparatus for data management (abstract), comprising: a processor; memory coupled with the processor (col.5, lines 9-13); and instructions stored in the memory and executable by the processor to cause the apparatus (col.7, lines 58-60) to: receive, at a host environment from a backup system, a request to execute a backup procedure for backing up a host data store of the host environment (Havemose’950 teaches that a system for providing replica consistency between a primary application and one or more backup applications, the system including one or more memory locations configured to store the primary application executing for a host with a host operating system as Havemose’950 teaches on col.7, lines 58-65); execute, in response to receiving the request, the backup procedure for backing up the host data store using a database backup utility (Havemose’950 teaches an interception layer for the primary application intercepting calls to the host operating system and to shared libraries and generating replication messages based on said intercepted calls, a messaging engine for the primary application sending said replication messages to the one or more backup applications, and one or more additional memory locations are configured to store the one or more backup applications executing for one or more hosts each with a corresponding host operating system as Havemose’950 teaches in col.7, lines 60-68 to col.8, lines 1-5); and communicate, using the library, backup data, wherein the backup data is communicated between the host environment and the backup system (Havemose’950 teaches that one or more additional messaging engines for each backup application receiving said replication messages from the primary application, and backup interception layers corresponding to each backup intercepting call to the operating system and shared libraries. The ordering information is retrieved from the one or more additional messaging engines for each backup application, and each replication message contains at least the process ID, thread ID and a sequence number, and replica consistency is provided by imposing the same call ordering on backup applications as on the primary application as Havemose’950 teaches in col.8, lines 5-18). Havemose’950 fails to teach wherein the request comprises a script operable to perform the backup procedure, preload, in response to receiving the request and in accordance with executing the script using a preload facility of the host environment, a library configured to intercept backup communication traffic at the host environment, wherein the preload facility of the host environment preloads the library prior to loading one or more other libraries, intercept, using the preloaded library, input/output operations performed by the database backup utility during execution of the backup procedure; and communicate, using preloading library and via a cryptographic security protocol, backup data from the intercepted input/output operations. Larkin teaches, similar system, preload, in response to receiving the request and in accordance with executing the script using a preload facility of the host environment (Larkin teaches One way to ensure that interception library is accessed first is to set a pre-loader (e.g., preloader 441) to interception library 430. The pre-loader is commonly referred to as LD_PRELAOD. For example, LD_PRELOAD is set to Interception Library. This results in pre-loader instructing loader 440 to access interception library 430 first before accessing any other libraries such as native library as Larkin teaches in par.114-115), a library configured to intercept backup communication traffic at the host environment (Larkin teaches that execution of the TIAP runtime can include intercepting a call by the application using one of an interception library or a loader having the interception library integrated therein; collecting parameters of the call as a telemetry event; trampolining the call to the native library after collecting the telemetry event to enable the application to perform the call as originally intended; and transmitting the telemetry event to a TIAP portal as Larkin teaches in par.5), wherein the preload facility of the host environment preloads the library prior to loading one or more other libraries (Larkin teaches This results in pre-loader instructing loader 440 to access interception library 430 first before accessing any other libraries such as native library as Larkin teaches in par.114-115), intercept, using the preloaded library, input/output operations performed by the database backup utility during execution of the backup procedure (Larkin teaches the wherein the user interface communicates with the TIAP; registering the plurality of components with the TIAP to correlate each component with a corresponding one of a plurality of interception codes; receiving the plurality of interception codes from the TIAP; receiving TIAP runtime code from the TIAP; storing the interception codes in an interception library, and where each interception code comprises at least one telemetry grammar and a trampoline function; and generating a sealed output file comprising the interception library and the TIAP runtime code as Larkin teaches in par.16), communicat, using preloading library and Larkin teaches that Executing the TIAP runtime can include intercepting a call by the application using one of an interception library or a loader having the interception library integrated therein; collecting parameters of the call as a telemetry event; trampolining the call to the native library after collecting the telemetry event to enable the application to perform the call as originally intended; and transmitting the telemetry event to a TIAP portal as Larkin teaches in par.15-16) . It would have been obvious to one ordinary skill in the art before effective filling date to modify Havemose’950 to include preloading as taught and suggested by Larkin for the purpose of collecting parameters of the call as a telemetry event; trampolining the call to the native library after collecting the telemetry event to enable the application to perform the call as originally intended; and transmitting the telemetry event to a TIAP portal (Larkin, par.15). Persaud teaches communicate, using files and via a cryptographic security protocol, with backup data (Persaud teaches of communicating secure router 15(1) use cryptographic algorithms to convert data file 50 into an encrypted object 55 that, as described further below, includes the encrypted data and other information and Data at rest may include archived data or reference files, data files stored on hard drives, files on backup medium, files stored in a storage area network (SAN). Further teaches data in motion (i.e., data that is traversing a network) is secured using the Transport Layer Security (TLS) protocol, the Secure Sockets Layer (SSL) protocol, etc as Persaud teaches in par.16 and 17). It would have been obvious to one ordinary skill in the art before effective filling date to modify Havemose’950, as modified by Havemose’399, to include cryptographic security protocol as taught and suggested by Persaud for the purpose of securing data file while at rest in cloud storage, and generating a unique random key per data file, and secures the file using this key (Persaud, par.17). Paulzagade teaches, similar system, wherein the request comprises a script operable to perform the backup procedure (Paulzagade teaches processor is configured to execute the one or more processor-executable routines to generate a unique file name for an underlying file of each backup stream of the plurality of backup streams based on one or more data blocks in each backup stream. The processor is further configured to execute the one or more processor-executable routines to create a data file corresponding to each backup stream of the plurality of backup streams in a local cache of a client database server, wherein each data file has a file name corresponding to the unique file name, and computer programs may include: (i) descriptive text to be parsed, such as HTML (hypertext markup language) or XML (extensible markup language) as Paulzagade teaches in par.8 and 73-74). It would have been obvious to one ordinary skill in the art before effective filling date to modify Havemose’950, as modified by Larkin and Persaud, to include a script operable to perform the backup procedure as taught and suggested by Paulzagade for the purpose of generating a unique file name for an underlying file of each backup stream of the plurality of backup streams based on one or more data blocks in each backup stream and creating a data file corresponding to each backup stream of the plurality of backup streams in a local cache of a client database server, wherein each data file has a file name corresponding to the unique file name generated by the stream handler (Paulzagade, abstract). For claim 15, Havemose’950 teaches A non-transitory computer-readable medium storing code for data management (abstract), the code comprising instructions executable by a processor to: receive, at a host environment from a backup system, a request to execute a backup procedure for backing up a host data store of the host environment (Havemose’950 teaches that a system for providing replica consistency between a primary application and one or more backup applications, the system including one or more memory locations configured to store the primary application executing for a host with a host operating system as Havemose’950 teaches on col.7, lines 58-65); execute, in response to receiving the request, the backup procedure for backing up the host data store using a database backup utility (Havemose’950 teaches an interception layer for the primary application intercepting calls to the host operating system and to shared libraries and generating replication messages based on said intercepted calls, a messaging engine for the primary application sending said replication messages to the one or more backup applications, and one or more additional memory locations are configured to store the one or more backup applications executing for one or more hosts each with a corresponding host operating system as Havemose’950 teaches in col.7, lines 60-68 to col.8, lines 1-5); and communicate, using the library, backup data, wherein the backup data is communicated between the host environment and the backup system (Havemose’950 teaches that one or more additional messaging engines for each backup application receiving said replication messages from the primary application, and backup interception layers corresponding to each backup intercepting call to the operating system and shared libraries. The ordering information is retrieved from the one or more additional messaging engines for each backup application, and each replication message contains at least the process ID, thread ID and a sequence number, and replica consistency is provided by imposing the same call ordering on backup applications as on the primary application as Havemose’950 teaches in col.8, lines 5-18). Havemose’950 fails to teach wherein the request comprises a script operable to perform the backup procedure, preload, in response to receiving the request and in accordance with executing the script using a preload facility of the host environment, a library configured to intercept backup communication traffic at the host environment, wherein the preload facility of the host environment preloads the library prior to loading one or more other libraries, intercept, using the preloaded library, input/output operations performed by the database backup utility during execution of the backup procedure; and communicate, using preloading library and via a cryptographic security protocol, backup data from the intercepted input/output operations. Larkin teaches, similar system, preload, in response to receiving the request and in accordance with executing the script using a preload facility of the host environment (Larkin teaches One way to ensure that interception library is accessed first is to set a pre-loader (e.g., preloader 441) to interception library 430. The pre-loader is commonly referred to as LD_PRELAOD. For example, LD_PRELOAD is set to Interception Library. This results in pre-loader instructing loader 440 to access interception library 430 first before accessing any other libraries such as native library as Larkin teaches in par.114-115), a library configured to intercept backup communication traffic at the host environment (Larkin teaches that execution of the TIAP runtime can include intercepting a call by the application using one of an interception library or a loader having the interception library integrated therein; collecting parameters of the call as a telemetry event; trampolining the call to the native library after collecting the telemetry event to enable the application to perform the call as originally intended; and transmitting the telemetry event to a TIAP portal as Larkin teaches in par.5),wherein the preload facility of the host environment preloads the library prior to loading one or more other libraries (Larkin teaches This results in pre-loader instructing loader 440 to access interception library 430 first before accessing any other libraries such as native library as Larkin teaches in par.114-115), intercept, using the preloaded library, input/output operations performed by the database backup utility during execution of the backup procedure (Larkin teaches the wherein the user interface communicates with the TIAP; registering the plurality of components with the TIAP to correlate each component with a corresponding one of a plurality of interception codes; receiving the plurality of interception codes from the TIAP; receiving TIAP runtime code from the TIAP; storing the interception codes in an interception library, and where each interception code comprises at least one telemetry grammar and a trampoline function; and generating a sealed output file comprising the interception library and the TIAP runtime code as Larkin teaches in par.16), communicate, using preloading library and Larkin teaches that Executing the TIAP runtime can include intercepting a call by the application using one of an interception library or a loader having the interception library integrated therein; collecting parameters of the call as a telemetry event; trampolining the call to the native library after collecting the telemetry event to enable the application to perform the call as originally intended; and transmitting the telemetry event to a TIAP portal as Larkin teaches in par.15-16) . It would have been obvious to one ordinary skill in the art before effective filling date to modify Havemose’950 to include preloading as taught and suggested by Larkin for the purpose of collecting parameters of the call as a telemetry event; trampolining the call to the native library after collecting the telemetry event to enable the application to perform the call as originally intended; and transmitting the telemetry event to a TIAP portal (Larkin, par.15). Havemose’950, as modified by Larkin, does not explicitly teach of wherein the request comprises a script operable to perform the backup procedure, a library configured to intercept backup communication traffic at the host environment, input/output operations performed by the database backup utility during execution of the backup procedure, and communicate, using files and via a cryptographic security protocol, with backup data. Persaud teaches communicate, using files and via a cryptographic security protocol, with backup data (Persaud teaches of communicating secure router 15(1) use cryptographic algorithms to convert data file 50 into an encrypted object 55 that, as described further below, includes the encrypted data and other information and Data at rest may include archived data or reference files, data files stored on hard drives, files on backup medium, files stored in a storage area network (SAN). Further teaches data in motion (i.e., data that is traversing a network) is secured using the Transport Layer Security (TLS) protocol, the Secure Sockets Layer (SSL) protocol, etc as Persaud teaches in par.16 and 17). It would have been obvious to one ordinary skill in the art before effective filling date to modify Havemose’950, as modified by Havemose’399, to include cryptographic security protocol as taught and suggested by Persaud for the purpose of securing data file while at rest in cloud storage, and generating a unique random key per data file, and secures the file using this key (Persaud, par.17). Havemose’950, as modified by Larkin and Persaud, does not explicitly teach of wherein the request comprises a script operable to perform the backup procedure, a library configured to intercept backup communication traffic at the host environment, input/output operations performed by the database backup utility during execution of the backup procedure. Paulzagade teaches, similar system, wherein the request comprises a script operable to perform the backup procedure (Paulzagade teaches processor is configured to execute the one or more processor-executable routines to generate a unique file name for an underlying file of each backup stream of the plurality of backup streams based on one or more data blocks in each backup stream. The processor is further configured to execute the one or more processor-executable routines to create a data file corresponding to each backup stream of the plurality of backup streams in a local cache of a client database server, wherein each data file has a file name corresponding to the unique file name, and computer programs may include: (i) descriptive text to be parsed, such as HTML (hypertext markup language) or XML (extensible markup language) as Paulzagade teaches in par.8 and 73-74). It would have been obvious to one ordinary skill in the art before effective filling date to modify Havemose’950, as modified by Larkin and Persaud, to include a script operable to perform the backup procedure as taught and suggested by Paulzagade for the purpose of generating a unique file name for an underlying file of each backup stream of the plurality of backup streams based on one or more data blocks in each backup stream and creating a data file corresponding to each backup stream of the plurality of backup streams in a local cache of a client database server, wherein each data file has a file name corresponding to the unique file name generated by the stream handler (Paulzagade, abstract). For claim 21, Havemose’950, as modified by Larkin, Persaud and Paulzagade, fails to teach wherein the library is preloaded using the preload facility of the host environment by setting a parameter of the operating system to a path for the library, and wherein the library receives input/output operations before the backup data in communicated to the one or more libraries. Larkin further teaches that wherein the library is preloaded using the preload facility of the host environment by setting a parameter of the operating system to a path for the library, and wherein the library receives input/output operations before the backup data in communicated to the one or more libraries (Larkin teaches Executing the TIAP runtime can include intercepting a call by the application using one of an interception library or a loader having the interception library integrated therein; collecting parameters of the call as a telemetry event; trampolining the call to the native library after collecting the telemetry event to enable the application to perform the call as originally intended; and transmitting the telemetry event to a TIAP portal and wherein the user interface communicates with the TIAP; registering the plurality of components with the TIAP to correlate each component with a corresponding one of a plurality of interception codes as Larkin teachers in par.15-16 and 114-116)). It would have been obvious to one ordinary skill in the art before effective filling date to modify Havemose’950, as modified by Paulzagade and Persaud, to include preload facility as taught and suggested by Larkin for the purpose of collecting parameters of the call as a telemetry event; trampolining the call to the native library after collecting the telemetry event to enable the application to perform the call as originally intended; and transmitting the telemetry event to a TIAP portal (Larkin, par.15). Claim(s) 4, 11 and 18 is/are rejected under 35 U.S.C. 103 as being unpatentable over Havemose (11099950) in views of Larkin et al (2022/0156172), Persaud et al (2013/0042106) and Paulzagade et al (2022/0283905), as applied to claims above, and further in view of Havemose (9996399). For claims 4, 11 and 18, Havemose’950, as modified by Larkin, Persaud and Paulzagade, teaches all the limitation as previously set forth except for wherein preloading the library comprises: executing, in response to receiving the request, a backup script using a preload facility of the host environment that preloads the library configured to intercept the backup communication traffic. Havemose’399 teaches that wherein preloading the library comprises: executing, in response to receiving the request, a backup script using a preload facility of the host environment that preloads the library configured to intercept the backup communication traffic (Havemose’399, col.13, lines 35-50). It would have been obvious to one ordinary skill in the art before effective filling date to modify Havemose’950, as modified by Larkin, Persaud and Paulzagade, to include preloading as taught and suggested by Havemose’399 for the purpose of achieving application isolation and application live migration for single and multi-process applications and their associated resources (Havemose’399, col.4, lines 10-12). Claim(s) 7 and 14 is/are rejected under 35 U.S.C. 103 as being unpatentable over Havemose (11099950) in views of Larkin et al (2022/0156172), Persaud et al (2013/0042106) and Paulzagade et al (2022/0283905) as applied to claims above, and further in view of Rangapuram et al (2019/0034288). For claims 7 and 14, Havemose’950, as modified by Larkin, Persaud and Paulzagade, teaches all the limitation as previously set forth except for identifying, using the preloaded library, the backup data and unused data blocks of the host data store; and determining to refrain from communicating the unused data blocks based at least in part on identifying the backup data and the unused data blocks using the preloaded library, wherein the backup data is communicated between the host environment and the backup system based at least in part on identifying the backup data using the preloaded library. Rangapuram teaches, similar system, identifying, using the library, the backup data and unused data blocks of the host data store (Rangapuram teaches backup operation can identify blocks that have changed since a most recent backup operation. The blocks that have changed since the most recent backup operation are compared with the blocks that are being used. Only the blocks that are both used and have changed are backed up. This can reduce the size of the backup be excluding blocks that may have changed but are no longer used as Rangapuram teaches in abstract); determining to refrain from communicating the unused data blocks based at least in part on identifying the backup data and the unused data blocks using the preloaded library and wherein the backup data is communicated between the host environment and the backup system based at least in part on identifying the backup data using the preloaded library (Rangapuram teaches that The number of blocks to be backed up can be reduced by filtering or comparing the blocks identified by the change block tracker with a bitmap or other data structure of the file system that identifies used blocks. This allows blocks that have changed but do not need to be backed up (e.g., deleted blocks) to be excluded from the incremental backup operation and thus excluded from the incremental backup. The remaining blocks are backed up in the backup operation. Because some of the blocks have been excluded from the backup operation, the size of the incremental backup is reduced if not minimized as Rangapuram teaches in par.12-13 and 22-23). It would have been obvious to one ordinary skill in the art before effective filling date to modify Havemose’950, as modified by Larkin, Persaud and Paulzagade, to include refrain from backing up the unused data blocks as taught and suggested by Rangapuram in order to reduce the size of the backup be excluding blocks that may have changed but are no longer used (Rangapuram, abstract). Response to Amendments/Arguments Applicant’s arguments with respect to claim(s) 1-19 and 21 have been considered but are moot because the new ground of rejection does not rely on any reference applied in the prior rejection of record for any teaching or matter specifically challenged in the argument. The applicant’s arguments regarding new amendment limitations in claims 1, 8 and 15, has been considered but is moot, because the examiner applied new art, Larkin et al (2022/0156172), and Paulzagade et al (2022/0283905), that covers newly claimed limitation. The applicant’s arguments regarding new amendment limitations in claims 7 and 14, has been considered but is moot, because the examiner applied new art, Rangapuram et al (2019/0034288), that covers newly claimed limitation. Regarding dependent claims arguments, said arguments are moot because the applied references are not considered to have alleged differences, and therefore are considered to properly show that for which they were cited. Conclusion Applicant's amendment necessitated the new ground(s) of rejection presented in this Office action. Accordingly, THIS ACTION IS MADE FINAL. See MPEP § 706.07(a). Applicant is reminded of the extension of time policy as set forth in 37 CFR 1.136(a). A shortened statutory period for reply to this final action is set to expire THREE MONTHS from the mailing date of this action. In the event a first reply is filed within TWO MONTHS of the mailing date of this final action and the advisory action is not mailed until after the end of the THREE-MONTH shortened statutory period, then the shortened statutory period will expire on the date the advisory action is mailed, and any nonprovisional extension fee (37 CFR 1.17(a)) pursuant to 37 CFR 1.136(a) will be calculated from the mailing date of the advisory action. In no event, however, will the statutory period for reply expire later than SIX MONTHS from the mailing date of this final action. Any inquiry concerning this communication or earlier communications from the examiner should be directed to AYUB A MAYE whose telephone number is (571)270-5037. The examiner can normally be reached Monday-Friday 9AM-5PM. 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, SHEWAYE GELAGAY can be reached at 571-272-4219. 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. /AYUB A MAYE/Examiner, Art Unit 2436 /MOEEN KHAN/Primary Examiner, Art Unit 2436
Read full office action

Prosecution Timeline

Show 6 earlier events
Dec 31, 2025
Response after Non-Final Action
Jan 26, 2026
Request for Continued Examination
Jan 31, 2026
Response after Non-Final Action
Feb 20, 2026
Non-Final Rejection mailed — §103
May 11, 2026
Applicant Interview (Telephonic)
May 11, 2026
Examiner Interview Summary
May 20, 2026
Response Filed
Sep 08, 2026
Final Rejection mailed — §103 (current)

Precedent Cases

Applications granted by this same examiner with similar technology

Patent 12665876
System and method for server monitoring and problem resolution for electronic mail messages
3y 8m to grant Granted Jun 23, 2026
Patent 12625987
METHOD AND SYSTEM FOR EXECUTING A SECURE FILE-LEVEL RESTORE FROM A BLOCK-BASED BACKUP
3y 9m to grant Granted May 12, 2026
Patent 12574211
PERSONAL PRIVATE KEY ENCRYPTION DEVICE
3y 10m to grant Granted Mar 10, 2026
Patent 12574247
DEVICE FOR COMPUTING SOLUTIONS OF LINEAR SYSTEMS AND ITS APPLICATION TO DIGITAL SIGNATURE GENERATIONS
3y 4m to grant Granted Mar 10, 2026
Patent 12547740
INFORMATION PROCESSING DEVICES AND INFORMATION PROCESSING METHODS
3y 2m to grant Granted Feb 10, 2026
Study what changed to get past this examiner. Based on 5 most recent grants.

Strategy Recommendation AI-generated — please review before filing

Get a prosecution strategy drawn from examiner precedents, rejection analysis, and claim mapping.
Typically takes 5-10 seconds — AI-generated, attorney review required before filing

Prosecution Projections

5-6
Expected OA Rounds
58%
Grant Probability
99%
With Interview (+41.4%)
4y 6m (~9m remaining)
Median Time to Grant
High
PTA Risk
Based on 664 resolved cases by this examiner. Grant probability derived from career allowance rate.

Sign in with your work email

Enter your email to receive a magic link. No password needed.

Personal email addresses (Gmail, Yahoo, etc.) are not accepted.

Free tier: 3 strategy analyses per month