PKES
Public Key Encryption with keyword Search
基于pairing构造trapdoor。
KeyGen
\[ \begin{align}\begin{aligned}random α ∈ Z∗\\generator g of G_1\\A_{pub} = [g, h = g^α]\\A_{priv} = α\end{aligned}\end{align} \]
PKES
W 为关键字,输出关键字密文 S
\[ \begin{align}\begin{aligned}PEKS(A_{pub}, W):\\ random r ∈ Z∗\\ t = e(H_{1}(W), h^r) ∈ G_2\\ S = [ g^r , H_{2}(t) ]\\ return S\end{aligned}\end{align} \]
Trapdoor
W 为待查的关键字
\[ \begin{align}\begin{aligned}Trapdoor(A_{priv} , W ):\\ T_W = H_{1}(W)^α ∈ G1.\end{aligned}\end{align} \]
针对关键字密文执行查询
关键字密文为 S
待查的关键字陷门为 T_W
\[ \begin{align}\begin{aligned}Test(A_{pub}, S, T_W ):\\ [A, B] = S\\ if H_{2}(e(T_W , A)) == B :\\ return yes\\ return no\end{aligned}\end{align} \]