Leuvenshtein: セルごとに単一のブートストラップを伴う効率的なFHEベースの編集距離計算
Leuvenshtein: Efficient FHE-based Edit Distance Computation with Single Bootstrap per Cell
August 20, 2025
著者: Wouter Legiest, Jan-Pieter D'Anvers, Bojan Spasic, Nam-Luc Tran, Ingrid Verbauwhede
cs.AI
要旨
本論文は、完全準同型暗号(FHE)、特にTFHEなどの第三世代スキームの枠組み内でレーベンシュタイン(編集)距離を計算するための新規アプローチを提示する。編集距離の計算は、DNA配列アラインメントなど、金融やゲノミクス分野のアプリケーションにおいて不可欠である。我々は、編集距離計算のコストを大幅に削減する最適化アルゴリズム「Leuvenshtein」を提案する。このアルゴリズムは、計算セルごとに必要なプログラム可能なブートストラップ(PBS)の数を、従来のWagner-Fisherアルゴリズムで必要とされる約94回からわずか1回に削減する。さらに、文字の等価性チェックを効率的に行う方法を提案し、ASCII文字比較をわずか2回のPBS操作に削減する。最後に、入力文字列の1つが暗号化されていない場合に前処理を活用することで、さらなる性能向上の可能性を探る。我々のLeuvenshteinは、利用可能な最良のTFHE実装と比較して最大278倍、最適化されたWagner-Fisherアルゴリズムの実装と比較して最大39倍の高速化を達成する。さらに、サーバー側で1つの入力が暗号化されていない場合にオフライン前処理が可能であれば、さらに3倍の高速化が実現できる。
English
This paper presents a novel approach to calculating the Levenshtein (edit)
distance within the framework of Fully Homomorphic Encryption (FHE),
specifically targeting third-generation schemes like TFHE. Edit distance
computations are essential in applications across finance and genomics, such as
DNA sequence alignment. We introduce an optimised algorithm that significantly
reduces the cost of edit distance calculations called Leuvenshtein. This
algorithm specifically reduces the number of programmable bootstraps (PBS)
needed per cell of the calculation, lowering it from approximately 94
operations -- required by the conventional Wagner-Fisher algorithm -- to just
1. Additionally, we propose an efficient method for performing equality checks
on characters, reducing ASCII character comparisons to only 2 PBS operations.
Finally, we explore the potential for further performance improvements by
utilising preprocessing when one of the input strings is unencrypted. Our
Leuvenshtein achieves up to 278times faster performance compared to the best
available TFHE implementation and up to 39times faster than an optimised
implementation of the Wagner-Fisher algorithm. Moreover, when offline
preprocessing is possible due to the presence of one unencrypted input on the
server side, an additional 3times speedup can be achieved.