Patents by Inventor Xiongjian Fu
Xiongjian Fu 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: 11228615Abstract: Methods, systems, and devices for transparent data encryption are described. A transparent proxy may enforce a specific encryption policy for a data transmission from a source host to a target host, where the transparent proxy determines if the data transmission is encrypted according to a specific encryption policy prior to forwarding the data transmission to the target host. As such, if the data transmission is not encrypted according to the specific encryption policy, the transparent proxy may encrypt the data transmission and then forward it to the target host. Alternatively, if the transparent proxy determines that the data transmission is encrypted according to the specific encryption policy, then the transparent proxy may refrain from further encrypting the data transmission and forward the data transmission to the target host without the additional encryption.Type: GrantFiled: July 31, 2018Date of Patent: January 18, 2022Assignee: salesforce.com, inc.Inventors: Scott Wisniewski, David Lucey, David Murray, Xiongjian Fu
-
Patent number: 11057359Abstract: A set of hardware security modules (HSMs) in a database system may implement a key management system with a database storing encryption keys or other secrets. The set of HSMs may identify a first key encryption key (KEK) and a second KEK stored in the set of HSMs. The set of HSMs may retrieve, from the database, a set of encryption keys encrypted by the first KEK and decrypt each encryption key of the set of encryption keys using the first KEK. The set of HSMs may re-encrypt each encryption key of the set of encryption keys with the second KEK and transmit, to the database, the set of encrypted encryption keys encrypted by the second KEK for storage. Then, the set of HSMs may delete the first KEK from the set of HSMs.Type: GrantFiled: August 13, 2018Date of Patent: July 6, 2021Assignee: salesforce.com, inc.Inventors: Scott Wisniewski, David Murray, Xiongjian Fu, Harish Krishnamurthy
-
Patent number: 10956600Abstract: A system is provided for data object encryption. The system includes an encryption framework available across a plurality of runtime environments. The system is configured to receive a data object in one of the plurality of runtime environments, wherein the data object is capable of being encrypted using a content encryption key and determine an encryption module implemented in the encryption framework that is compatible with the one of the plurality of runtime environment, wherein the encryption module comprises a key service provider that provides a master key and a key wrapping algorithm for the content encryption key in the runtime environment. The system is further configured to encrypt the data object using the content encryption key, encrypt the content encryption key using the master key and key wrapping algorithm, and write the encrypted data object to networked database storage.Type: GrantFiled: October 31, 2018Date of Patent: March 23, 2021Assignee: salesforce.com, inc.Inventors: Lei Ye, David Baiyor Murray, Vineet Deokaran Chaudhary, Xiongjian Fu
-
Publication number: 20200134223Abstract: A system is provided for data object encryption. The system includes an encryption framework available across a plurality of runtime environments. The system is configured to receive a data object in one of the plurality of runtime environments, wherein the data object is capable of being encrypted using a content encryption key and determine an encryption module implemented in the encryption framework that is compatible with the one of the plurality of runtime environment, wherein the encryption module comprises a key service provider that provides a master key and a key wrapping algorithm for the content encryption key in the runtime environment. The system is further configured to encrypt the data object using the content encryption key, encrypt the content encryption key using the master key and key wrapping algorithm, and write the encrypted data object to networked database storage.Type: ApplicationFiled: October 31, 2018Publication date: April 30, 2020Inventors: Lei YE, David Baiyor MURRAY, Vineet Deokaran CHAUDHARY, Xiongjian FU
-
Publication number: 20200053065Abstract: A set of hardware security modules (HSMs) in a database system may implement a key management system with a database storing encryption keys or other secrets. The set of HSMs may identify a first key encryption key (KEK) and a second KEK stored in the set of HSMs. The set of HSMs may retrieve, from the database, a set of encryption keys encrypted by the first KEK and decrypt each encryption key of the set of encryption keys using the first KEK. The set of HSMs may re-encrypt each encryption key of the set of encryption keys with the second KEK and transmit, to the database, the set of encrypted encryption keys encrypted by the second KEK for storage. Then, the set of HSMs may delete the first KEK from the set of HSMs.Type: ApplicationFiled: August 13, 2018Publication date: February 13, 2020Inventors: Scott Wisniewski, David Murray, Xiongjian Fu, Harish Krishnamurthy
-
Publication number: 20200045080Abstract: Methods, systems, and devices for transparent data encryption are described. A transparent proxy may enforce a specific encryption policy for a data transmission from a source host to a target host, where the transparent proxy determines if the data transmission is encrypted according to a specific encryption policy prior to forwarding the data transmission to the target host. As such, if the data transmission is not encrypted according to the specific encryption policy, the transparent proxy may encrypt the data transmission and then forward it to the target host. Alternatively, if the transparent proxy determines that the data transmission is encrypted according to the specific encryption policy, then the transparent proxy may refrain from further encrypting the data transmission and forward the data transmission to the target host without the additional encryption.Type: ApplicationFiled: July 31, 2018Publication date: February 6, 2020Inventors: Scott Wisniewski, David Lucey, David Murray, Xiongjian Fu
-
Patent number: 8984244Abstract: Various mechanisms are disclosed herein for the saving and restoring of virtual machine environment state. For example, virtual machine state can be either be saved or (multiple) snapshots can be taken of the virtual machine state. In the latter case, virtual processors can be allowed to run while the memory of the virtual machine state is being saved. In either case, virtual devices associated with the virtual machine environment can be quiesced such that these devices can prepare themselves to be saved. Once such virtual devices and memory are saved, they can also be restored. For example, restoration of memory can occur while virtual processors are running at the same time. And, moreover, restoration can occur in batches of pages, thus optimizing the response time for restoring saved data.Type: GrantFiled: November 13, 2013Date of Patent: March 17, 2015Assignee: Microsoft Technology Licensing, LLCInventors: Andrew Ernest Nicholas, Aaron S. Giles, Eric P. Traut, Idan Avraham, Xiongjian Fu, Osama M. Salem
-
Publication number: 20140075141Abstract: Various mechanisms are disclosed herein for the saving and restoring of virtual machine environment state. For example, virtual machine state can be either be saved or (multiple) snapshots can be taken of the virtual machine state. In the latter case, virtual processors can be allowed to run while the memory of the virtual machine state is being saved. In either case, virtual devices associated with the virtual machine environment can be quiesced such that these devices can prepare themselves to be saved. Once such virtual devices and memory are saved, they can also be restored. For example, restoration of memory can occur while virtual processors are running at the same time. And, moreover, restoration can occur in batches of pages, thus optimizing the response time for restoring saved data.Type: ApplicationFiled: November 13, 2013Publication date: March 13, 2014Applicant: MICROSOFT CORPORATIONInventors: Andrew Ernest Nicholas, Aaron S. Giles, Eric P. Traut, Idan Avraham, Xiongjian Fu, Osama M. Salem
-
Patent number: 8607009Abstract: Various mechanisms are disclosed herein for the saving and restoring of virtual machine environment state. For example, virtual machine state can be either be saved or (multiple) snapshots can be taken of the virtual machine state. In the latter case, virtual processors can be allowed to run while the memory of the virtual machine state is being saved. In either case, virtual devices associated with the virtual machine environment can be quiesced such that these devices can prepare themselves to be saved. Once such virtual devices and memory are saved, they can also be restored. For example, restoration of memory can occur while virtual processors are running at the same time. And, moreover, restoration can occur in batches of pages, thus optimizing the response time for restoring saved data.Type: GrantFiled: July 13, 2006Date of Patent: December 10, 2013Assignee: Microsoft CorporationInventors: Andrew Ernest Nicholas, Aaron S. Giles, Eric P. Traut, Idan Avraham, Xiongjian Fu, Osama M. Salem
-
Patent number: 8191115Abstract: A method and apparatus for providing an extensible grouping mechanism for security applications for use in a computer system. Groups may be established and maintained by non-system administrators and used to control actions that are taken with respect to objects, such as files and other resources. The groups and associated security functions may be implemented across a plurality of different software products and optionally integrated into an existing security mechanism maintained by system administrators. Software products used in the system may be arranged to request authorization to perform requested actions with respect to objects access to which is not controlled by a systems administrator.Type: GrantFiled: January 10, 2005Date of Patent: May 29, 2012Assignee: Microsoft CorporationInventors: Dennis W. Minium, Bulat Y. Shelepov, Xiongjian Fu
-
Patent number: 7827565Abstract: Architecture that facilitates interfacing non-integrated applications. The disclosed architecture comprises a set of APIs and conventions used to enable integration between tools that were not previously architected to be integrated. This provides the basis for server-based partner integration and client integration of tools, and can facilitate the foundation for building a third-party ecosystem. In support thereof, an artifact provider API exposes artifacts of a first application, and an artifact consumer API exposes a reference of a second application, which reference is associated with a link to one at least one of the artifacts of the artifact provider.Type: GrantFiled: March 12, 2004Date of Patent: November 2, 2010Assignee: Microsoft CorporationInventors: Dennis W. Minium, Jr., Ozan Hafizogullari, Xiongjian Fu
-
Publication number: 20080022032Abstract: Various mechanisms are disclosed herein for the saving and restoring of virtual machine environment state. For example, virtual machine state can be either be saved or (multiple) snapshots can be taken of the virtual machine state. In the latter case, virtual processors can be allowed to run while the memory of the virtual machine state is being saved. In either case, virtual devices associated with the virtual machine environment can be quiesced such that these devices can prepare themselves to be saved. Once such virtual devices and memory are saved, they can also be restored. For example, restoration of memory can occur while virtual processors are running at the same time. And, moreover, restoration can occur in batches of pages, thus optimizing the response time for restoring saved data.Type: ApplicationFiled: July 13, 2006Publication date: January 24, 2008Applicant: Microsoft CorporationInventors: Andrew Ernest Nicholas, Aaron S. Giles, Eric P. Traut, Idan Avraham, Xiongjian Fu, Osama M. Salem
-
Patent number: 7302425Abstract: Query results are pre-cached for a substantial portion of or all queries that are likely to be issued by users. One query can be entirely different from another query, yet because corresponding query results are pre-cached, the database need not be accessed, improving response performance. Pre-cached queries are also distributed into multiple partitions to apportion work among multiple computing machines to further enhance performance and provide redundancy in case of the failure of any particular partition. Pre-cached query results are selectively refreshed so that users may enjoy up-to-date information by focusing on queries that are popular as well as queries that are old.Type: GrantFiled: June 9, 2003Date of Patent: November 27, 2007Assignee: Microsoft CorporationInventors: Simon D. Bernstein, Xiongjian Fu, Nishant Dani
-
Publication number: 20060195492Abstract: In one embodiment, a method an apparatus for managing a system comprising at least one operational data store and a data warehouse that is associated with at least some of the data in the operational data set, comprising automatically updating the schema of the data warehouse to reflect a change to the schema of the at least one operational data store. In a further embodiment, a method and apparatus for requiring that a designer of a database system provide metadata that defines changes to be made to a data warehouse in response to a modification of an area in an operational store. In another embodiment, a method and apparatus for detecting schema changes to an operational store, so that appropriate action may be taken in a data warehouse. In a further embodiment, a method and apparatus for implementing changes to a data warehouse schema, comprising the execution of one or more lower level calls to appropriate APIs to modify the schemas of both a relational database and an OLAP database.Type: ApplicationFiled: February 25, 2005Publication date: August 31, 2006Applicant: Microsoft CorporationInventors: Allen Clark, Bryan MacFarlane, Xiongjian Fu
-
Publication number: 20060156020Abstract: A method and apparatus for providing an extensible grouping mechanism for security applications for use in a computer system. Groups may be established and maintained by non-system administrators and used to control actions that are taken with respect to objects, such as files and other resources. The groups and associated security functions may be implemented across a plurality of different software products and optionally integrated into an existing security mechanism maintained by system administrators. Software products used in the system may be arranged to request authorization to perform requested actions with respect to objects access to which is not controlled by a systems administrator. Permission information used to determine the authorization for a user to perform a requested action may be stored for a plurality of software products in a common location.Type: ApplicationFiled: January 10, 2005Publication date: July 13, 2006Applicant: Microsoft CorporationInventors: Dennis Minium, Bulat Shelepov, Xiongjian Fu
-
Publication number: 20060156021Abstract: A method and apparatus for providing an extensible grouping mechanism for security applications for use in a computer system. Groups may be established and maintained by non-system administrators and used to control actions that are taken with respect to objects, such as files and other resources. The groups and associated security functions may be implemented across a plurality of different software products and optionally integrated into an existing security mechanism maintained by system administrators. Software products used in the system may be arranged to request authorization to perform requested actions with respect to objects access to which is not controlled by a systems administrator, and/or provide information specifying an object or object type and actions that are performable with respect to the object or object type by the respective software product.Type: ApplicationFiled: January 10, 2005Publication date: July 13, 2006Applicant: Microsoft CorporationInventors: Dennis Minium, Bulat Shelepov, Xiongjian Fu
-
Publication number: 20060156384Abstract: A method and apparatus for providing an extensible grouping mechanism for security applications for use in a computer system. Groups may be established and maintained by non-system administrators and used to control actions that are taken with respect to objects, such as files and other resources. The groups and associated security functions may be implemented across a plurality of different software products and optionally integrated into an existing security mechanism maintained by system administrators. Software products used in the system may be arranged to request authorization to perform requested actions with respect to objects access to which is not controlled by a systems administrator.Type: ApplicationFiled: January 10, 2005Publication date: July 13, 2006Applicant: Microsoft CorporationInventors: Dennis Minium, Bulat Shelepov, Xiongjian Fu
-
Publication number: 20050235011Abstract: The present invention provides a system and method for unrelated tools to categorized elements they control according to a common centrally managed classification scheme. The invention also provides a mechanism for storing, retrieving, and modifying classifying information. Users of unrelated tools that employ the subject invention see a single and consisted user interface.Type: ApplicationFiled: April 15, 2004Publication date: October 20, 2005Applicant: Microsoft CorporationInventors: Dennis Minium, Bill Essary, Xiongjian Fu
-
Publication number: 20050204367Abstract: Architecture that facilitates interfacing non-integrated applications. The disclosed architecture comprises a set of APIs and conventions used to enable integration between tools that were not previously architected to be integrated. This provides the basis for server-based partner integration and client integration of tools, and can facilitate the foundation for building a third-party ecosystem. In support thereof, an artifact provider API exposes artifacts of a first application, and an artifact consumer API exposes a reference of a second application, which reference is associated with a link to one at least one of the artifacts of the artifact provider.Type: ApplicationFiled: March 12, 2004Publication date: September 15, 2005Inventors: Dennis Minium, Ozan Hafizogullari, Xiongjian Fu
-
Patent number: 6665819Abstract: Data capture and analysis for debugging embedded systems is disclosed. On a target, there is at least one data collector, each of which publishes predetermined data of the target, and a collection manager for managing the data collectors. On a host, there is at least one viewer, each of subscribes to the predetermined data of a data collector, for processing thereof, and a viewer manager for managing the viewers. Data collectors and viewers can be added, such that an extensible data capture and analysis embedded system architecture is provided.Type: GrantFiled: April 24, 2000Date of Patent: December 16, 2003Assignee: Microsoft CorporationInventors: Yadhu N. Gopalan, Xiongjian Fu, David M. Sauntry, James A. Stulz