秘匿リストマッチングプロトコルとその
応用
菊池浩明 ◎香川大介
東海大学大学院 工学研究科
背景:個人情報の保護と共有
• 疫病が発生した際,互いの持つ個人情報を出すこ
となく感染潜伏者を探し出したい
従来研究
• 秘匿共通集合暗号計算プロトコル
Freedman et al. ,Eurocrypt2004
– お互いの要素を秘密にしたまま共通集合要素を見つ
け出す
Client
散歩
読書
ネットサーフィン
Server
料理
ネットサーフィン
写真
ネットサーフィン
高速化:ハッシングによる分割
分割前
X {3, 6, 7, 11
, 14
,16}
k=6
O (6 2 )
ハッシング
X1 {6,14,16}
O(32 )
X 2 {3,7,11}
2
O(3 )
分割後
2O(3 )
2
問題:どちらの分割がよいか?
B=2
不均一
によるオーバヘッド
B=3
本研究の目的
• それをするためには実装に基づく評価が必要
• 目的→最適な分割 B* を求める
平衡化ハッシュ割当
• Azar et al. , “Balanced allocations”,SIAM,1999
• 最大割当数
kc
B
M ln ln
( )
ln 2
B
にするアルゴリズム
我々のアプローチ:ランダム割当
p
k
1
B の二項分布
M
X
k2
k1
k3
M max( k1 , k 2 , k3 )
k3
k 3
*平衡化に比べて
どのくらいの効果か?
秘匿共通集合暗号計算プロトコル[1]
Client
X={2,3}
E ( P( x)) E ( x 2 5 x 6)
復号
D( Z1 ) (r * 0 2)
2
D( Z 2 ) (r * 2 4)
4
Server
Y={2,4}
E (1)
E ( 5)
E ( 6)
代入
Z1 E (rP (2) 2)
Z 2 E (rP (4) 4)
解析
1. 分割サイズの最大値 M
2. 最適分割 B*
3. 処理時間 T
4. 通信コスト C
解析1:分割時のリスト最大値
• 単純なハッシングによる偏り
1
1
(1 )kc
B
B
2
• 最大値Mがzσを超える期待値が1となる
Pr[ M z ] kc 1
1%
z
z
解析1:分割リスト長
リ
ス
ト
の
最
大
値
60>100/2
M
40>100/4
リストの分割数B
解析2:最適な分割
• ランダムハッシングによる割り当てのリスト最大長
kc
kc
M z
B
B
• 実測値に基づいた, 計算時間をT(k)について
kc
kc
F ( B) T (
) B
B
B
• ここで
d
*
F (B ) 0
dB
を満たす B*
解析2:評価値
k=100
処
理
時
間
B* 3.94
[ms]
リストの分割数B
パフォーマンス評価
処
理
時
間
[ms]
9700
7000
リストのサイズk
通信コスト
2(kC 1)
2k S
[bit]
通
信
コ
ス
ト
リストのサイズk
実装
測定環境
WindowsXP
Pentium4 3.6GHz
• Java JDK1.5.0を用いて,クライアントサーバ
モデルで実装した
• 変形ElGamal暗号
実験
• 被験者9人に50項目2択のアンケートに答えても
らい,重なりを調べた
結論
• お互いに持つ集合を秘匿したまま,重なり合う要
素を求める方法について実装し
• 単純ハッシング時における最適な分割数をもと
めた
課題
• 多ユーザへの対応
• ハッシュ平衡化の効果の計測
• ほかに利用できる応用例
© Copyright 2026 ExpyDoc