Research Article

Efficient Searchable Symmetric Encryption Supporting Dynamic Multikeyword Ranked Search

Algorithm 2

SearchIndexTree (QueryVector , Dictionary D TreeNode u RList).
Input: A vector of query Q, a semantic dictionary D generated by applying “Word2Vec” to F, a root node u of IndexTree and RList.
Output: RList.
(1)Split into and according to the method M3;
(2)if u is an internal node then:
(3)if Score (u, Q) > k-th score then:
(4)  SearchIndexTree (, D, u.Pl, RList);
(5)  SearchIndexTree (, D, u.Pr, RList);
(6)else:
(7)  return
(8)end if
(9)else
(10)if Score (u, Q) > k-th score then: \\Update RList.
(11)  Delete the element holding the smallest relevance score in RList;
(12)  Insert a new element <Score (u, Q), u.FID> in the Rlist, and sort the elements in RList;
(13)end if
(14)return
(15)end if