Patents by Inventor Raghavendran HANUMANTHARAU

Raghavendran HANUMANTHARAU has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).

  • Patent number: 11841967
    Abstract: System and methods of the disclosed subject matter provide segregating, at a memory storage coupled to a multitenant database system, first tenant data of a first tenant from at least second tenant data of a second tenant, based on a first tenant identifier. A first encryption key associated with the first tenant may be retrieved from a key cache memory based on the first tenant identifier, to encrypt one or more fragments of the first tenant data. The fragments of the first tenant data may be encrypted based on the retrieved encryption key. Non-encrypted header information may be generated for each of the encrypted fragments of the first tenant data, where the header information may have metadata including the first tenant identifier. The encrypted fragments of the first tenant data and the corresponding non-encrypted header information may be stored in the immutable storage.
    Type: Grant
    Filed: December 27, 2021
    Date of Patent: December 12, 2023
    Assignee: Salesforce, Inc.
    Inventors: Terry Chong, Jameison Bear Martin, Thomas Fanghaenel, Andrew Tucker, Nathaniel Wyatt, Raghavendran Hanumantharau, Assaf Ben Gur, William Charles Mortimore, Jr.
  • Publication number: 20230110698
    Abstract: Disclosed are some implementations of systems, apparatus, methods and computer program products for implementing a shim driver configurable to provide a database driver. A shim driver class is loaded from a class path and instantiated such that a shim driver is generated. A directory path and database driver class name are obtained from a configuration file. An application transmits a request for a database driver via an application programming interface (API) of the shim driver, where the request includes the directory path and database driver class name. The shim driver loads a database driver class identified by the database driver class name using the directory path, instantiates the database driver class such that a first database driver is generated, and provides the first database driver responsive to the request.
    Type: Application
    Filed: October 5, 2021
    Publication date: April 13, 2023
    Applicant: Salesforce.com, Inc.
    Inventors: Vadim YAROVOY, Raghavendran HANUMANTHARAU, Olga TIKHONOVA, Da ZHAO, Arundhati TAMBE, Shruti SHARMA, Jason WOODS
  • Patent number: 11483150
    Abstract: Disclosed techniques relate to storing a key cache within a secure enclave. In some embodiments, a computing system receives, from an application, a request to access a database, where the request is associated with a particular account. The computing system then accesses, using an identifier associated with the particular account, a key cache stored in a secure enclave of a memory of the computing system to determine at least one private key associated with the request, where the key cache stores private keys of a key management system (KMS) for a plurality of accounts. The computing system performs a cryptographic operation for accessing the database within the secure enclave using the at least one private key. In various embodiments, disclosed techniques may improve the security of cryptographic private keys cached for a plurality of tenants.
    Type: Grant
    Filed: June 1, 2020
    Date of Patent: October 25, 2022
    Assignee: salesforce.com, inc.
    Inventors: Dhanashree Kashid, Raghavendran Hanumantharau, Terry Chong, Andrew Stewart Tucker, Vadiraj Govardhan Hosur
  • Patent number: 11374748
    Abstract: Disclosed techniques relate to caching tenant encryption keys for a multi-tenant database. In some embodiments, a computing system encrypts data for a database in a multi-tenant database system using encryption keys assigned to respective tenants that are using the database. The computing system may store the encryption keys in a cache and, in response to a key rotation request for a first tenant, invalidate an entry in the cache for the first encryption key of the first tenant. The computing system may block writes for the first tenant until a new key is cached (e.g., based on retrieval from a key management system). In various embodiments, disclosed techniques may reduce encryption latency.
    Type: Grant
    Filed: April 15, 2020
    Date of Patent: June 28, 2022
    Assignee: salesforce.com, inc.
    Inventors: Vadiraj Govardhan Hosur, Andrew Tucker, Terry Chong, Raghavendran Hanumantharau, Dhanashree Kashid, Scott Daniel Wisniewski, Prithviraj Vasanth, Pranesh Radhakrishnan
  • Publication number: 20220121766
    Abstract: System and methods of the disclosed subject matter provide segregating, at a memory storage coupled to a multitenant database system, first tenant data of a first tenant from at least second tenant data of a second tenant, based on a first tenant identifier. A first encryption key associated with the first tenant may be retrieved from a key cache memory based on the first tenant identifier, to encrypt one or more fragments of the first tenant data. The fragments of the first tenant data may be encrypted based on the retrieved encryption key. Non-encrypted header information may be generated for each of the encrypted fragments of the first tenant data, where the header information may have metadata including the first tenant identifier. The encrypted fragments of the first tenant data and the corresponding non-encrypted header information may be stored in the immutable storage.
    Type: Application
    Filed: December 27, 2021
    Publication date: April 21, 2022
    Inventors: Terry Chong, Jameison Bear Martin, Thomas Fanghaenel, Andrew Tucker, Nathaniel Wyatt, Raghavendran Hanumantharau, Assaf Ben Gur, William Charles Mortimore, JR.
  • Patent number: 11238174
    Abstract: System and methods of the disclosed subject matter provide segregating, at a memory storage coupled to a multitenant database system, first tenant data of a first tenant from at least second tenant data of a second tenant, based on a first tenant identifier. A first encryption key associated with the first tenant may be retrieved from a key cache memory based on the first tenant identifier, to encrypt one or more fragments of the first tenant data. The fragments of the first tenant data may be encrypted based on the retrieved encryption key. Non-encrypted header information may be generated for each of the encrypted fragments of the first tenant data, where the header information may have metadata including the first tenant identifier. The encrypted fragments of the first tenant data and the corresponding non-encrypted header information may be stored in the immutable storage.
    Type: Grant
    Filed: January 31, 2019
    Date of Patent: February 1, 2022
    Assignee: salesforce.com, inc.
    Inventors: Terry Chong, Jameison Bear Martin, Thomas Fanghaenel, Andrew Tucker, Nathaniel Wyatt, Raghavendran Hanumantharau, Assaf Ben-Gur, William Charles Mortimore, Jr.
  • Publication number: 20210377020
    Abstract: Disclosed techniques relate to storing a key cache within a secure enclave. In some embodiments, a computing system receives, from an application, a request to access a database, where the request is associated with a particular account. The computing system then accesses, using an identifier associated with the particular account, a key cache stored in a secure enclave of a memory of the computing system to determine at least one private key associated with the request, where the key cache stores private keys of a key management system (KMS) for a plurality of accounts. The computing system performs a cryptographic operation for accessing the database within the secure enclave using the at least one private key. In various embodiments, disclosed techniques may improve the security of cryptographic private keys cached for a plurality of tenants.
    Type: Application
    Filed: June 1, 2020
    Publication date: December 2, 2021
    Inventors: Dhanashree Kashid, Raghavendran Hanumantharau, Terry Chong, Andrew Stewart Tucker, Vadiraj Govardhan Hosur
  • Publication number: 20210328789
    Abstract: Disclosed techniques relate to caching tenant encryption keys for a multi-tenant database. In some embodiments, a computing system encrypts data for a database in a multi-tenant database system using encryption keys assigned to respective tenants that are using the database. The computing system may store the encryption keys in a cache and, in response to a key rotation request for a first tenant, invalidate an entry in the cache for the first encryption key of the first tenant. The computing system may block writes for the first tenant until a new key is cached (e.g., based on retrieval from a key management system). In various embodiments, disclosed techniques may reduce encryption latency.
    Type: Application
    Filed: April 15, 2020
    Publication date: October 21, 2021
    Inventors: Vadiraj Govardhan Hosur, Andrew Tucker, Terry Chong, Raghavendran Hanumantharau, Dhanashree Kashid, Scott Daniel Wisniewski, Prithviraj Vasanth, Pranesh Radhakrishnan
  • Publication number: 20200250325
    Abstract: System and methods of the disclosed subject matter provide segregating, at a memory storage coupled to a multitenant database system, first tenant data of a first tenant from at least second tenant data of a second tenant, based on a first tenant identifier. A first encryption key associated with the first tenant may be retrieved from a key cache memory based on the first tenant identifier, to encrypt one or more fragments of the first tenant data. The fragments of the first tenant data may be encrypted based on the retrieved encryption key. Non-encrypted header information may be generated for each of the encrypted fragments of the first tenant data, where the header information may have metadata including the first tenant identifier. The encrypted fragments of the first tenant data and the corresponding non-encrypted header information may be stored in the immutable storage.
    Type: Application
    Filed: January 31, 2019
    Publication date: August 6, 2020
    Inventors: Terry Chong, Jameison Bear Martin, Thomas Fanghaenel, Andrew Tucker, Nathaniel Wyatt, Raghavendran Hanumantharau, Assaf Ben-Gur, William Charles Mortimore, JR.
  • Patent number: 10523425
    Abstract: Systems and methods for changing database passwords are described. A first server computing system receives an indication to perform a password change process for an administrative account of an associated database. The server generates a vault configured to store a password change status and a password secret associated with the account. The server sets the password change status to a first value to indicate that the server is performing the password change process and then performs the password change process for the account. The server then sets the password change status to a second value to enable a second server computing system to perform a second password change process for a second administrative account of a database associated with the second server system. The database associated with the second server computing system is a standby database of the database associated with the first server system.
    Type: Grant
    Filed: June 22, 2017
    Date of Patent: December 31, 2019
    Assignee: salesforce.com, inc.
    Inventors: Raghavendran Hanumantharau, Yoram Tal, Amit Das, Edward F. Gulakowski, Jr.
  • Patent number: 10353723
    Abstract: In some database systems, a user device may query for data records using a procedural language extension to structured query language (PL/SQL) call. However, some databases may not be configured to process PL/SQL code. In these cases, a virtual machine may intercept the PL/SQL call, and may transform the call to a format usable by the database. For example, the virtual machine may deconstruct the PL/SQL call to determine the procedural and query functions that comprise the PL/SQL call. The virtual machine may then search a database for non-PL/SQL code snippets that correspond to these determined functions, and may generate non-PL/SQL code (e.g., Java code) that may perform the same functions as the PL/SQL call. The virtual machine, the database, or a combination of the two may execute the non-PL/SQL code to retrieve the data records from the database, and may return the records to the user device.
    Type: Grant
    Filed: January 30, 2018
    Date of Patent: July 16, 2019
    Assignee: salesforce.com, inc.
    Inventors: Raghavendran Hanumantharau, Yoram Tal
  • Publication number: 20190042288
    Abstract: In some database systems, a user device may query for data records using a procedural language extension to structured query language (PL/SQL) call. However, some databases may not be configured to process PL/SQL code. In these cases, a virtual machine may intercept the PL/SQL call, and may transform the call to a format usable by the database. For example, the virtual machine may deconstruct the PL/SQL call to determine the procedural and query functions that comprise the PL/SQL call. The virtual machine may then search a database for non-PL/SQL code snippets that correspond to these determined functions, and may generate non-PL/SQL code (e.g., Java code) that may perform the same functions as the PL/SQL call. The virtual machine, the database, or a combination of the two may execute the non-PL/SQL code to retrieve the data records from the database, and may return the records to the user device.
    Type: Application
    Filed: January 30, 2018
    Publication date: February 7, 2019
    Inventors: Raghavendran Hanumantharau, Yoram Tal
  • Publication number: 20180375645
    Abstract: Systems and methods for changing database passwords are described. A first server computing system receives an indication to perform a password change process for an administrative account of an associated database. The server generates a vault configured to store a password change status and a password secret associated with the account. The server sets the password change status to a first value to indicate that the server is performing the password change process and then performs the password change process for the account. The server then sets the password change status to a second value to enable a second server computing system to perform a second password change process for a second administrative account of a database associated with the second server system. The database associated with the second server computing system is a standby database of the database associated with the first server system.
    Type: Application
    Filed: June 22, 2017
    Publication date: December 27, 2018
    Inventors: Raghavendran HANUMANTHARAU, Yoram TAL, Amit DAS, Edward F. GULAKOWSKI, JR.