Patents by Inventor Ittai Abraham

Ittai Abraham 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: 10795871
    Abstract: An example computer system includes a memory storing program code and a storage system storing at least a portion of a fragmented log-structured merge (FLSM) tree implementing a key-value store. The FLSM tree includes H levels, where H is an integer greater than one. The computer system further includes a central processing unit (CPU) configured to execute the program code stored in the memory to store a plurality of key-value pairs in the FLSM tree, the key value pairs having keys defined within a key space, the key space divided by a plurality of guards for each of the H levels of the FLSM tree, each of the key-value pairs being stored a maximum of H times in the FLSM tree.
    Type: Grant
    Filed: September 26, 2016
    Date of Patent: October 6, 2020
    Assignee: VMware, Inc.
    Inventors: Vijaychidambaram Velayudhan Pillai, Ittai Abraham
  • Publication number: 20200301794
    Abstract: Techniques for implementing linear view-change in a Byzantine Fault Tolerant (BFT) protocol running on a distributed system comprising n replicas are provided. According to one set of embodiments, at a time of performing a view-change from a current view number v to a new view number v+1, a replica in the n replicas corresponding to a new proposer for new view number v+1 can generate a PREPARE message comprising a single COMMIT certificate, where the single COMMIT certificate is the highest COMMIT certificate the new proposer is aware of. The new proposer can then transmit the PREPARE message with the single COMMIT certificate to all other replicas in the n replicas.
    Type: Application
    Filed: June 10, 2020
    Publication date: September 24, 2020
    Inventors: Ittai Abraham, Dahlia Malkhi, Guy Golan Gueta
  • Patent number: 10747629
    Abstract: Techniques for implementing linear view-change with optimistic responsiveness in a BFT protocol running on a distributed system comprising n replicas are provided. According to one set of embodiments, the replicas can execute, during a view v of the BFT protocol, a first voting round comprising communicating instances of a first type of COMMIT certificate among the replicas. Further, when 2f+1 instances of the first type of COMMIT certificate associated with view v have been received by the replicas, the replicas can execute a second voting round comprising communicating instances of a second type of COMMIT certificate among the replicas. If 2f+1 instances of the second type of COMMIT certificate associated with view v are not received by the replicas within a predetermined timeout period, a view change can be initiated from view v to a view v+1.
    Type: Grant
    Filed: December 27, 2018
    Date of Patent: August 18, 2020
    Assignee: VMware, Inc.
    Inventors: Ittai Abraham, Dahlia Malkhi, Guy Golan Gueta, Maofan Yin, Michael Reiter
  • Patent number: 10713133
    Abstract: Techniques for implementing linear view-change in a Byzantine Fault Tolerant (BFT) protocol running on a distributed system comprising n replicas are provided. According to one set of embodiments, at a time of performing a view-change from a current view number v to a new view number v+1, a replica in the n replicas corresponding to a new proposer for new view number v+1 can generate a PREPARE message comprising a single COMMIT certificate, where the single COMMIT certificate is the highest COMMIT certificate the new proposer is aware of. The new proposer can then transmit the PREPARE message with the single COMMIT certificate to all other replicas in the n replicas.
    Type: Grant
    Filed: June 11, 2018
    Date of Patent: July 14, 2020
    Assignee: VMware, Inc.
    Inventors: Ittai Abraham, Dahlia Malkhi, Guy Golan Gueta
  • Publication number: 20200151066
    Abstract: Techniques for implementing Byzantine fault tolerance with verifiable secret sharing at constant overhead are provided. In one set of embodiments, a client can determine a secret value s to be shared with N replicas in a distributed system, s being input data for a service operation provided by the N replicas. The client can further encode s into an f-degree polynomial P(x) where f corresponds to a maximum number of faulty replicas in the distributed system, evaluate P(x) at i for i=1 to N resulting in N evaluations P(i), generate at least one f-degree recovery polynomial R(x) based on a distributed pseudo-random function (DPRF) f?(x), and evaluate R(x) at i for i=1 to N resulting in at least N evaluations R(i). The client can then invoke the service operation, the invoking comprising transmitting a message including P(i) and R(i) to each respective replica i.
    Type: Application
    Filed: January 10, 2020
    Publication date: May 14, 2020
    Inventors: Soumya Basu, Alin Tomescu, Dahlia Malkhi, Michael Reiter, Adrian Seredinschi, Ittai Abraham, Guy Golan Gueta
  • Publication number: 20200151268
    Abstract: A buffer tree structure includes, at each internal node, a buffer having a compacted portion and an uncompacted portion. Insertion of data elements to the buffer tree can occur units called packets. A packet is initially stored in the uncompacted portion of a receiving node's buffer. When a compaction trigger condition exists, packet compaction is performed including a data element compaction operation. A buffer-emptying (flush) operation pushes the compacted packets to children nodes.
    Type: Application
    Filed: November 8, 2018
    Publication date: May 14, 2020
    Inventors: Robert T. Johnson, Abhishek Gupta, Jorge Guerra Delgado, Ittai Abraham, Richard P. Spillane, Srinath Premachandran, Sandeep Rangaswamy, Kapil Chowksey
  • Publication number: 20200089788
    Abstract: A buffer tree structure includes, at each internal node, a buffer having a compacted portion and an uncompacted portion. Insertion of data elements to the buffer tree can occur units called packets. A packet is initially stored in the uncompacted portion of a receiving node's buffer. When a compaction trigger condition exists, packet compaction is performed including a data element compaction operation. A buffer-emptying (flush) operation pushes the compacted packets to children nodes.
    Type: Application
    Filed: September 18, 2018
    Publication date: March 19, 2020
    Inventors: Robert T. Johnson, Ittai Abraham, Abhishek Gupta, Richard P. Spillane, Srinath Premachandran, Jorge Guerra Delgado, Sandeep Rangaswamy, Kapil Chowksey
  • Publication number: 20200081805
    Abstract: The disclosure describes a failure-free execution agreement that includes n=3F+1 parties acting as replicas, and a number of parties acting as clients. One replica is designated as a primary. At most F replicas are presumed Byzantine faulty. The basic agreement protocol proceeds in three rounds: (1) client sends a request to the primary, who sends to all replicas; (2) each replica sends a threshold-part signature on hash to a first collector; (3) the collector combines the threshold-parts into a single signature and sends to all 3F+1 replicas which then commit and send to a second collector. The client proceeds when a signed block of requests arrives from the second collector.
    Type: Application
    Filed: November 11, 2019
    Publication date: March 12, 2020
    Inventors: Ittai Abraham, Dahlia Malkhi, Alexander Spiegelman, Guy Golan Gueta
  • Patent number: 10572352
    Abstract: Techniques for implementing Byzantine fault tolerance with verifiable secret sharing at constant overhead are provided. In one set of embodiments, a client can determine a secret value s to be shared with N replicas in a distributed system, s being input data for a service operation provided by the N replicas. The client can further encode s into an f-degree polynomial P(x) where f corresponds to a maximum number of faulty replicas in the distributed system, evaluate P(x) at i for i=1 to N resulting in N evaluations P(i), generate at least one f-degree recovery polynomial R(x) based on a distributed pseudo-random function (DPRF) f?(x), and evaluate R(x) at i for i=1 to N resulting in at least N evaluations R(i). The client can then invoke the service operation, the invoking comprising transmitting a message including P(i) and R(i) to each respective replica i.
    Type: Grant
    Filed: November 1, 2017
    Date of Patent: February 25, 2020
    Assignee: VMWARE, INC.
    Inventors: Soumya Basu, Alin Tomescu, Dahlia Malkhi, Michael Reiter, Adrian Seredinschi, Ittai Abraham, Guy Golan Gueta
  • Publication number: 20200012735
    Abstract: A buffer tree structure includes, at each internal node, a buffer having a compacted portion and an uncompacted portion. Insertion of data elements to the buffer tree can occur units called packets. A packet is initially stored in the uncompacted portion of a receiving node's buffer. After a time, packets in the uncompacted portion of a buffer are combined into compacted packets in the compacted portion of the buffer. A buffer-emptying (flush) operation pushes the compacted packets to children nodes.
    Type: Application
    Filed: July 6, 2018
    Publication date: January 9, 2020
    Inventors: Robert T Johnson, Ittai Abraham, Abhishek Gupta, Richard P Spillane, Sandeep Rangaswamy, Jorge Guerra Delgado, Srinath Premachandran, Kapil Chowksey
  • Publication number: 20190377645
    Abstract: Techniques for implementing linear view-change with optimistic responsiveness in a BFT protocol running on a distributed system comprising n replicas are provided. According to one set of embodiments, the replicas can execute, during a view v of the BFT protocol, a first voting round comprising communicating instances of a first type of COMMIT certificate among the replicas. Further, when 2f+1 instances of the first type of COMMIT certificate associated with view v have been received by the replicas, the replicas can execute a second voting round comprising communicating instances of a second type of COMMIT certificate among the replicas. If 2f+1 instances of the second type of COMMIT certificate associated with view v are not received by the replicas within a predetermined timeout period, a view change can be initiated from view v to a view v+1.
    Type: Application
    Filed: December 27, 2018
    Publication date: December 12, 2019
    Applicant: VMware, Inc.
    Inventors: Ittai Abraham, Dahlia Malkhi, Guy Golan Gueta, Maofan Yin, Michael Reiter
  • Publication number: 20190377648
    Abstract: Techniques for implementing linear view-change in a Byzantine Fault Tolerant (BFT) protocol running on a distributed system comprising n replicas are provided. According to one set of embodiments, at a time of performing a view-change from a current view number v to a new view number v+1, a replica in the n replicas corresponding to a new proposer for new view number v+1 can generate a PREPARE message comprising a single COMMIT certificate, where the single COMMIT certificate is the highest COMMIT certificate the new proposer is aware of. The new proposer can then transmit the PREPARE message with the single COMMIT certificate to all other replicas in the n replicas.
    Type: Application
    Filed: June 11, 2018
    Publication date: December 12, 2019
    Inventors: Ittai Abraham, Dahlia Malkhi, Guy Golan Gueta
  • Patent number: 10503614
    Abstract: The disclosure describes a failure-free execution agreement that includes n=3F+1 parties acting as replicas, and a number of parties acting as clients. One replica is designated as a primary. At most F replicas are presumed Byzantine faulty. The basic agreement protocol proceeds in three rounds: (1) client sends a request to the primary, who sends to all replicas; (2) each replica sends a threshold-part signature on hash to a first collector; (3) the collector combines the threshold-parts into a single signature and sends to all 3F+1 replicas which then commit and send to a second collector. The client proceeds when a signed block of requests arrives from the second collector.
    Type: Grant
    Filed: July 18, 2017
    Date of Patent: December 10, 2019
    Assignee: VMware, Inc.
    Inventors: Ittai Abraham, Dahlia Malkhi, Alexander Spiegelman, Guy Golan Gueta
  • Publication number: 20190268149
    Abstract: The current document is directed to distributed-secure-storage systems, and processes carried out within the distributed-secure-storage systems, that provide for secure storage and retrieval of secrets within distributed computer systems, including private encryption keys used for client authentication during establishment of secure communications channels. The secret-storage systems partition an input secret into multiple secret shares and distribute the secret shares among multiple secret-share-storing node subsystems, without persistently storing the secret itself. An agent within a client device subsequently requests a secret share corresponding to a secret, or a share of data derived from the secret share, from each of the multiple secret-share-storing nodes.
    Type: Application
    Filed: February 28, 2018
    Publication date: August 29, 2019
    Applicant: VMware, Inc.
    Inventors: Asaf Kariv, Ittai Abraham, Yotam Harchol
  • Publication number: 20190129809
    Abstract: Techniques for implementing Byzantine fault tolerance with verifiable secret sharing at constant overhead are provided. In one set of embodiments, a client can determine a secret value s to be shared with N replicas in a distributed system, s being input data for a service operation provided by the N replicas. The client can further encode s into an f-degree polynomial P(x) where f corresponds to a maximum number of faulty replicas in the distributed system, evaluate P(x) at i for i=1 to N resulting in N evaluations P(i), generate at least one f-degree recovery polynomial R(x) based on a distributed pseudo-random function (DPRF) f?(x), and evaluate R(x) at i for i=1 to N resulting in at least N evaluations R(i). The client can then invoke the service operation, the invoking comprising transmitting a message including P(i) and R(i) to each respective replica i.
    Type: Application
    Filed: November 1, 2017
    Publication date: May 2, 2019
    Inventors: Soumya Basu, Alin Tomescu, Dahlia Malkhi, Michael Reiter, Adrian Seredinschi, Ittai Abraham, Guy Golan Gueta
  • Publication number: 20180307573
    Abstract: The disclosure describes a failure-free execution agreement that includes n=3F+1 parties acting as replicas, and a number of parties acting as clients. One replica is designated as a primary. At most F replicas are presumed Byzantine faulty. The basic agreement protocol proceeds in three rounds: (1) client sends a request to the primary, who sends to all replicas; (2) each replica sends a threshold-part signature on hash to a first collector; (3) the collector combines the threshold-parts into a single signature and sends to all 3F+1 replicas which then commit and send to a second collector. The client proceeds when a signed block of requests arrives from the second collector.
    Type: Application
    Filed: July 18, 2017
    Publication date: October 25, 2018
    Inventors: Ittai Abraham, Dahlia Malkhi, Alexander Spiegelman, Guy Golan Gueta
  • Publication number: 20180308091
    Abstract: A technique is disclosed for building agreement among a plurality of servers who receive a transaction from clients. The technique includes each server broadcasting its received transaction to all other servers. Each server uses the set of transactions that it received from all servers (including its own transaction) to produce an echo that represents the set of transactions, and broadcasts the echo. Each will commit its transaction to a log if its echo matches each echo received from the other servers. The present disclosure can detect byzantine failures and punishes deviating participating servers by reconfiguring the plurality of servers that participate in the protocol.
    Type: Application
    Filed: July 18, 2017
    Publication date: October 25, 2018
    Inventors: Dahlia Malkhi, Ittai Abraham, Alexander Spiegelman, Guy Golan Gueta
  • Publication number: 20180089244
    Abstract: An example computer system includes a memory storing program code and a storage system storing at least a portion of a fragmented log-structured merge (FLSM) tree implementing a key-value store. The FLSM tree includes H levels, where H is an integer greater than one. The computer system further includes a central processing unit (CPU) configured to execute the program code stored in the memory to store a plurality of key-value pairs in the FLSM tree, the key value pairs having keys defined within a key space, the key space divided by a plurality of guards for each of the H levels of the FLSM tree, each of the key-value pairs being stored a maximum of H times in the FLSM tree.
    Type: Application
    Filed: September 26, 2016
    Publication date: March 29, 2018
    Inventors: Vijaychidambaram VELAYUDHAN PILLAI, Ittai ABRAHAM
  • Patent number: 9792827
    Abstract: Entities that answer questions are organized into entity groups. An interface determines an answer to a question from one of the entity groups with a confidence that is greater than a second confidence threshold. To determine the answer, the interface performs an exploration phase where the interface asks the question to each of the entity groups. Entity groups that provide answers with a confidence that is greater than a first confidence threshold are selected for a subset. The interface enters an exploitation phase where the question is asked of the entity groups in the subset. If an answer is determined with a confidence that is greater than the second confidence threshold, then the answer is provided. If no answer is determined before a duration of time expires, then the interface enters a rollback phase where all of the entity groups are considered.
    Type: Grant
    Filed: April 2, 2012
    Date of Patent: October 17, 2017
    Assignee: MICROSOFT TECHNOLOGY LICENSING, LLC
    Inventors: Ittai Abraham, Omar Alonso, Vasilis Kandylas, Aleksandrs Slivkins
  • Patent number: 9439053
    Abstract: A graph of a social network is received. The graph may include a node for each user account and an edge between nodes that represent social networking relationships such as messages between the user accounts or a friend relationship. The graph is transformed into a transformed graph where nodes have direct edges depending on a local test among its neighbors in the original graph. Small subsets of the transformed graph are categorized. The categories are used to identify subgraphs in the transformed graph. Each subgraph is grown by adding an edge from the transformed graph to the subgraph depending on local tests among nodes associated with the edge that have at least one edge that is already in the subgraph. The categorized subgraphs are used to provide targeted advertising, suggest new connections, identify different personalities and interests of users, or to provide other services.
    Type: Grant
    Filed: January 30, 2013
    Date of Patent: September 6, 2016
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Ittai Abraham, Joseph K. Bradley, Shiri Chechik, Moises Goldszmidt, Aleksandrs Slivkins, David Kempe