TY - JOUR
T1 - History-Independent Dynamic Partitioning
T2 - Operation-Order Privacy in Ordered Data Structures
AU - Bender, Michael A.
AU - Farach-Colton, Martín
AU - Goodrich, Michael T.
AU - Komlós, Hanna
N1 - Publisher Copyright:
© 2024 Copyright held by the owner/author(s)
PY - 2025/4/28
Y1 - 2025/4/28
N2 - A data structure is history independent if its internal representation reveals nothing about the history of operations beyond what can be determined from the current contents of the data structure. History independence is typically viewed as a security or privacy guarantee, with the intent being to minimize risks incurred by a security breach or audit. Despite widespread advances in history independence, there is an important data-structural primitive that previous work has been unable to replace with an equivalent history-independent alternative—dynamic partitioning. In dynamic partitioning, we are given a dynamic set S of ordered elements and a size-parameter B, and the objective is to maintain a partition of S into ordered groups, each of size Θ(B). Dynamic partitioning is important throughout computer science, with applications to B-tree rebalancing, write-optimized dictionaries, log-structured merge trees, other external-memory indexes, geometric and spatial data structures, cache-oblivious data structures, and order-maintenance data structures. The lack of a history-independent dynamic-partitioning primitive has meant that designers of history-independent data structures have had to resort to complex alternatives. In this paper, we achieve history-independent dynamic partitioning. Our algorithm runs asymptotically optimally against an oblivious adversary, processing each insert/delete with O(1) operations in expectation and O(B log N/loglog N) with high probability in set size N.
AB - A data structure is history independent if its internal representation reveals nothing about the history of operations beyond what can be determined from the current contents of the data structure. History independence is typically viewed as a security or privacy guarantee, with the intent being to minimize risks incurred by a security breach or audit. Despite widespread advances in history independence, there is an important data-structural primitive that previous work has been unable to replace with an equivalent history-independent alternative—dynamic partitioning. In dynamic partitioning, we are given a dynamic set S of ordered elements and a size-parameter B, and the objective is to maintain a partition of S into ordered groups, each of size Θ(B). Dynamic partitioning is important throughout computer science, with applications to B-tree rebalancing, write-optimized dictionaries, log-structured merge trees, other external-memory indexes, geometric and spatial data structures, cache-oblivious data structures, and order-maintenance data structures. The lack of a history-independent dynamic-partitioning primitive has meant that designers of history-independent data structures have had to resort to complex alternatives. In this paper, we achieve history-independent dynamic partitioning. Our algorithm runs asymptotically optimally against an oblivious adversary, processing each insert/delete with O(1) operations in expectation and O(B log N/loglog N) with high probability in set size N.
UR - http://www.scopus.com/inward/record.url?scp=105004263805&partnerID=8YFLogxK
UR - http://www.scopus.com/inward/citedby.url?scp=105004263805&partnerID=8YFLogxK
U2 - 10.1145/3733620.3733625
DO - 10.1145/3733620.3733625
M3 - Article
AN - SCOPUS:105004263805
SN - 0163-5808
VL - 54
SP - 17
EP - 26
JO - SIGMOD Record
JF - SIGMOD Record
IS - 1
M1 - 108
ER -